Parcourir la source

Merge remote-tracking branch 'origin/master'

xs il y a 5 ans
Parent
commit
f64cdb4b9c

+ 18 - 9
src/main/java/com/jeeplus/modules/sg/overheadline/service/OverheadLineService.java

@@ -422,6 +422,9 @@ public List<JkxlDetailFee> findList(String id,String type){
        double[] aqwmFees = ExcelUtil.getDoubleArray(csqd,BashInfo.CS_AQWM,1, new int[]{3, 4});  //安全文明施工费
        double zg = zjgcTotal-(aqwmFees[1]/(aqwmFees[0]/100));
        double jxsl = zg/(fbrFee-zg); //进项税率
+        if(texRate<0.05){
+            jxsl = 0.00;
+        }
        boolean flag = BashInfo.getFlag(originalTotalFees,zjgcFees);
        //结算汇总
         List<Settlement> settlements=SettementUtil.getComparison(settlementList,builtTotal,divisiontotal,wordtotal1,wordtotal2,otherTotal,feescount,cbperson,flag);
@@ -611,6 +614,9 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double zgJz = zjgcJzTotal-(aqwmJzFees[1]/(aqwmJzFees[0]/100));
                 jxslJz = zgJz/(fbrJzFee-zgJz); //建筑进项税率
             }
+            if(texRate<0.05){
+                jxslJz = 0.00;
+            }
             boolean flag = BashInfo.getFlag(originalTotalJzFees,zjgcJzFees);
             //电缆结算汇总
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson,flag);
@@ -619,8 +625,6 @@ public List<JkxlDetailFee> findList(String id,String type){
             for(int i=0;i<originalTotalJzFees.length;i++){
                 JkxlDetailFee jkxlDetailFee = new JkxlDetailFee();
                 double originalTotalCost = originalTotalJzFees[i]; //原合计
-//            double otherRate = originalTotalCost/totalFee;   //其他费用分摊比例
-//            double orRate = new BigDecimal(otherRate).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); //四舍五入
                 double otherFee = qtFees[2]/fbfxFee*originalTotalCost;  //其他费用
                 double zjgcJzFee = zjgcJzFees[i];//直接工程费
                 double originalRgCost = originalJzFees[i][0];// 原人工费
@@ -688,6 +692,9 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double zgAz = zjgcAzTotal-(aqwmAzFees[1]/(aqwmAzFees[0]/100));
                 jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
             }
+            if(texRate<0.05){
+                jxslAz = 0.00;
+            }
             boolean flag = BashInfo.getFlag(originalTotalAzFees,zjgcAzFees);
             //结算汇总
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson,flag);
@@ -771,13 +778,15 @@ public List<JkxlDetailFee> findList(String id,String type){
             double[] aqwmAzFees = BashInfo.getAqwfAzFee(csqd);  //安装安全文明施工费
             double jxslJz = 0.00;
             double jxslAz = 0.00;
-            if(fbrJzFee != 0.00){
-                double zgJz = zjgcJzTotal-(aqwmJzFees[1]/(aqwmJzFees[0]/100));
-                jxslJz = zgJz/(fbrJzFee-zgJz); //建筑进项税率
-            }
-            if(fbrAzFee != 0.00){
-                double zgAz = zjgcAzTotal-(aqwmAzFees[1]/(aqwmAzFees[0]/100));
-                jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
+            if(texRate>0.05) {
+                if (fbrJzFee != 0.00) {
+                    double zgJz = zjgcJzTotal - (aqwmJzFees[1] / (aqwmJzFees[0] / 100));
+                    jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
+                }
+                if (fbrAzFee != 0.00) {
+                    double zgAz = zjgcAzTotal - (aqwmAzFees[1] / (aqwmAzFees[0] / 100));
+                    jxslAz = zgAz / (fbrAzFee - zgAz); //安装进项税率
+                }
             }
             boolean flagJz = BashInfo.getFlag(originalTotalJzFees,zjgcJzFees);
             boolean flagAz = BashInfo.getFlag(originalTotalAzFees,zjgcAzFees);

+ 2 - 0
src/main/java/com/jeeplus/modules/sg/overheadline/util/BashInfo.java

@@ -463,6 +463,7 @@ public class BashInfo {
             String type = importExcel.getValue(i + 1, 1);
             if (type.contains(JS_SJ)) {
                 row = i+1;
+                break;
             }
 //            if(index.length()==1 && !type.contains(JS_FBFX) && !type.contains(JS_CSXM) && !type.contains(JS_QTXM)  && !type.contains(JS_GF)
 //                    && !type.contains(JS_SJ) && !type.contains(JS_FBRF) && !type.contains(JS_CBRF) && !type.contains(JS_JGJS)){
@@ -498,6 +499,7 @@ public class BashInfo {
             String type = importExcel.getValue(i + 1, 1);
             if (type.contains(JS_SJ)) {
                 row = i+1;
+                break;
             }
         }
         for (int j = row; j < lastRow; j++) {

+ 22 - 34
src/main/java/com/jeeplus/modules/sg/substation/service/SubstationService.java

@@ -148,13 +148,15 @@ public class SubstationService {
             double fbrAzFee = ExcelUtil.getDouble(azqd,SubstationInfo.AZMX_BDZAZ,2,15);
             double jxslJz = 0.00;
             double jxslAz = 0.00;
-            if(fbrJzFee != 0.00){
-                double zgJz = zjgcJzTotal-aqwmJzFees[1]/aqwmJzFees[0]*100;
-                 jxslJz = zgJz/(fbrJzFee-zgJz); //建筑进项税率
-            }
-            if(fbrAzFee != 0.00){
-                double zgAz = zjgcAzTotal-aqwmAzFees[1]/aqwmAzFees[0]*100;
-                jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
+            if(texRate>0.05) {
+                if (fbrJzFee != 0.00) {
+                    double zgJz = zjgcJzTotal - aqwmJzFees[1] / aqwmJzFees[0] * 100;
+                    jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
+                }
+                if (fbrAzFee != 0.00) {
+                    double zgAz = zjgcAzTotal - aqwmAzFees[1] / aqwmAzFees[0] * 100;
+                    jxslAz = zgAz / (fbrAzFee - zgAz); //安装进项税率
+                }
             }
 //            double zgJz = zjgcJzTotal-aqwmJzFees[1]/aqwmJzFees[0]*100;
 //            double zgAz = zjgcAzTotal-aqwmAzFees[1]/aqwmAzFees[0]*100;
@@ -247,8 +249,6 @@ public class SubstationService {
                     tax = (originalTotalCost + measuresFee1 + measuresFee2 + measuresFee3 + fees + otherFee) * texRate; //税金
                     totalfee = originalTotalCost+measuresFee1+measuresFee2+measuresFee3+fees+otherFee+tax; //合计
                 }
-//                 double tax = (originalTotalCost+measuresFee1+measuresFee2+fees+otherFee-originalFbrCost)*texRate; //税金
-//                 double totalfee = originalTotalCost+measuresFee1+measuresFee2+fees+otherFee+tax-originalFbrCost; //合计
                  jkxlDetailFee.setMeasuresFee1(measuresFee1);
                  jkxlDetailFee.setMeasuresFee2(measuresFee2);
                  jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -307,16 +307,7 @@ public class SubstationService {
 
             //补税
             if(btex != 0.00){
-            double jztexTotal = 0.00;
-            double aztexTotal = 0.00;
-            double texTotal = jztexTotal+aztexTotal; //税合计金额
-            for(JkxlDetailFee jkxlDetailFee : jzTotal){
-                jztexTotal += jkxlDetailFee.getTex();
-            }
-            for(JkxlDetailFee jkxlDetailFee : azTotal){
-                aztexTotal += jkxlDetailFee.getTex();
-            }
-
+            double texTotal = jzTotal.get(0).getTex()+azTotal.get(0).getTex();//税合计金额
             for(JkxlDetailFee jkxlDetailFee : jzTotal){
                     double tex = jkxlDetailFee.getTex();
                     double total1 = jkxlDetailFee.getTotalFee();
@@ -378,9 +369,11 @@ public class SubstationService {
             double[] aqwmJzFees = ExcelUtil.getDoubleArray(csqd1,SubstationInfo.CS_AQWM,1, new int[]{3, 4});  //建筑安全文明施工费
             double fbrJzFee = ExcelUtil.getDouble(jzqd,SubstationInfo.JZMX_BJZ,2,15);
             double jxslJz = 0.00;
-            if(fbrJzFee != 0.00) {
-                double zgJz = zjgcJzTotal - aqwmJzFees[1] / aqwmJzFees[0] * 100;
-                jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
+            if(texRate>0.05) {
+                if (fbrJzFee != 0.00) {
+                    double zgJz = zjgcJzTotal - aqwmJzFees[1] / aqwmJzFees[0] * 100;
+                    jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
+                }
             }
             //建筑部分基础数据
             JkxlDetailFee jz = SubstationInfo.getTolalInfo(jzqd,jzhz,"21000000",SubstationInfo.JZMX_BJZ);  //建筑合计
@@ -455,10 +448,7 @@ public class SubstationService {
 
             //补税
             if(btex != 0.00){
-                double jztexTotal = 0.00;
-                for(JkxlDetailFee jkxlDetailFee : jzTotal){
-                    jztexTotal += jkxlDetailFee.getTex();
-                }
+                double jztexTotal = jzTotal.get(0).getTex();
                 for(JkxlDetailFee jkxlDetailFee : jzTotal){
                     double tex = jkxlDetailFee.getTex();
                     double total1 = jkxlDetailFee.getTotalFee();
@@ -512,11 +502,12 @@ public class SubstationService {
             double[] aqwmAzFees = BashInfo.getAqwfAzFee(csqd1);  //安装安全文明施工费
             double fbrAzFee = ExcelUtil.getDouble(azqd,SubstationInfo.AZMX_BDZAZ,2,15);
             double jxslAz = 0.00;
-            if(fbrAzFee != 0.00){
-                double zgAz = zjgcAzTotal-aqwmAzFees[1]/aqwmAzFees[0]*100;
-                 jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
+            if(texRate>0.05) {
+                if (fbrAzFee != 0.00) {
+                    double zgAz = zjgcAzTotal - aqwmAzFees[1] / aqwmAzFees[0] * 100;
+                    jxslAz = zgAz / (fbrAzFee - zgAz); //安装进项税率
+                }
             }
-
             //安装部分基础数据
             JkxlDetailFee az = SubstationInfo.getTolalInfo(azqd,azhz,"23000000",SubstationInfo.AZMX_BDZAZ);  //安装合计
             JkxlDetailFee azsc = SubstationInfo.getBashInfo(azqd,azhz,"23100000",SubstationInfo.AZMX_ZYSCGC);  //主要生产工程
@@ -592,10 +583,7 @@ public class SubstationService {
 
             //补税
             if(btex != 0.00){
-                double aztexTotal = 0.00;
-                for(JkxlDetailFee jkxlDetailFee : azTotal){
-                    aztexTotal += jkxlDetailFee.getTex();
-                }
+                double aztexTotal = azTotal.get(0).getTex();
                 for(JkxlDetailFee jkxlDetailFee : azTotal){
                     double tex = jkxlDetailFee.getTex();
                     double total1 = jkxlDetailFee.getTotalFee();