Browse Source

Merge remote-tracking branch 'origin/master'

xs 5 years ago
parent
commit
79cb9e8697

+ 72 - 164
src/main/java/com/jeeplus/modules/sg/overheadline/service/OverheadLineService.java

@@ -183,9 +183,6 @@ public List<JkxlDetailFee> findList(String id,String type){
             }
         }
     }
-//    for (int i=0;i<list.size();i++){
-//        list.get(i).setIndex(i+1);
-//    }
     return list;
 
 }
@@ -225,17 +222,15 @@ public List<JkxlDetailFee> findList(String id,String type){
            //保存项目
            itemService.save(wbsItem);
        }
-       List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
-       if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
-           overheadLineMapper.delete(id);
-           feeAdjustService.delete(id);
-           settlementService.delete(id);
-       }
+//       List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
+//       if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
+//           overheadLineMapper.delete(id);
+//           feeAdjustService.delete(id);
+//           settlementService.delete(id);
+//       }
        //获取调差系数
-       double[] tcRate = new double[3];
-       tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
-       tcRate[1] = ruleRatioService.getValueByName(BashInfo.RATIO_CLTC).getValue()/100;
-       tcRate[2] = ruleRatioService.getValueByName(BashInfo.RATIO_JXTC).getValue()/100;
+//       double[] tcRate = new double[3];
+//       tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
        //读取表格
        ImportExcel importExcel = new ImportExcel(file,1,BashInfo.SHEET_FBFXJJ,true);  //分部分项工程量清单计价表
        ImportExcel csqd = new ImportExcel(file,1,new String[]{BashInfo.SHEET_CSB,BashInfo.SHEET_CSB1},true);  // 措施项目清单计价表(一)
@@ -244,9 +239,9 @@ public List<JkxlDetailFee> findList(String id,String type){
        ImportExcel qt = new ImportExcel(file,1,BashInfo.SHEET_QTFY,true);  //其他项目清单计价表
        ImportExcel total = new ImportExcel(file,1,new String[]{BashInfo.SHEET_HZB,BashInfo.SHEET_HZB1,BashInfo.SHEET_HZB2},true );  //工程项目竣工结算汇总表
        ImportExcel gzhz = new ImportExcel(file,1,new String[]{BashInfo.SHEET_GCHZ,BashInfo.SHEET_GCHZ1},true );   //架空线路工程费用汇总
-       ImportExcel fbrcg = new ImportExcel(file,1,new String[]{BashInfo.SHEET_FBRCG,BashInfo.SHEET_FBRCG1,BashInfo.SHEET_FBRCG2,BashInfo.SHEET_ZBRCG,BashInfo.SHEET_ZBRCG1},true);   //发包人采购材料设备计价表
+//       ImportExcel fbrcg = new ImportExcel(file,1,new String[]{BashInfo.SHEET_FBRCG,BashInfo.SHEET_FBRCG1,BashInfo.SHEET_FBRCG2,BashInfo.SHEET_ZBRCG,BashInfo.SHEET_ZBRCG1},true);   //发包人采购材料设备计价表
         ImportExcel cbrsb = new ImportExcel(file,1,new String[]{BashInfo.SHEET_TBRCG,BashInfo.SHEET_CBRCG},false);//承包人采购设备计价表
-        ImportExcel zyrg = new ImportExcel(file,1,BashInfo.SHEET_ZYRG,true); //主要日工价格表
+//        ImportExcel zyrg = new ImportExcel(file,1,BashInfo.SHEET_ZYRG,true); //主要日工价格表
         //数据核验数据
         List<Settlement> settlementList =  SettementUtil.getComparison(total);
        double builtTotal = ExcelUtil.getDouble(gzhz,BashInfo.QT_HJ,0,2);//获取架空线路工程费用汇总表 分部分项 合计
@@ -276,11 +271,11 @@ public List<JkxlDetailFee> findList(String id,String type){
        double[] zjgcFees = ExcelUtil.getDoubleArray(gzhz,BashInfo.HZ_ALL,1,3);  //获取直接工程费
        double[][] originalFees = ExcelUtil.getDoubleArrays(importExcel,BashInfo.MX_ALL,2, new int[]{13, 14, 15, 17}); //获取原始费用
        double texRate = ExcelUtil.getTexRate(total); //获取税率
-        double rgRate = ExcelUtil.getRgRate(zyrg);   //获取人工调差系数
+//        double rgRate = ExcelUtil.getRgRate(zyrg);   //获取人工调差系数
        double totalFee = ExcelUtil.getDouble(importExcel,BashInfo.PROJECTNAME,2,12);  //获取架空线路合计金额
        double totalRgFee = ExcelUtil.getDouble(importExcel,BashInfo.PROJECTNAME,2,13);  //获取人工费合计金额
        double[] csRate = BashInfo.getCsRate(csqd); //获取措施费率
-       double[] gfRate = BashInfo.getGfRate(gf);  //获取规费率
+//       double[] gfRate = BashInfo.getGfRate(gf);  //获取规费率
        double[] qtFees = BashInfo.getQtFees(qt);  //获取其他费用
        double gcjsFee = BashInfo.getGcjsFee(total);  //获取工程结算价
 //       double fbrFee = ExcelUtil.getDouble(fbrcg,BashInfo.QT_HJ,0,6); //发包人采购计价表合计金额
@@ -289,10 +284,6 @@ 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);
        double csFees = BashInfo.getCsFee(csqd); //安装措施费
        double gfFees = ExcelUtil.getDouble(gf,BashInfo.QT_HJ,0,4); //规费
        //结算汇总
@@ -302,7 +293,6 @@ public List<JkxlDetailFee> findList(String id,String type){
         //获取结算表中基础数据
         double jsCs = ExcelUtil.getDouble(total,BashInfo.JS_CSXM,1,2);
         double jsGf = ExcelUtil.getDouble(total,BashInfo.JS_GF,1,2);
-        double jsTex = ExcelUtil.getTex(total);
        //将本体工程费用明细存入集合
        List<JkxlDetailFee> list = new ArrayList<>();
        for(int i=0;i<originalTotalFees.length;i++){
@@ -316,13 +306,11 @@ public List<JkxlDetailFee> findList(String id,String type){
            double zjgcFee = zjgcFees[i];//直接工程费
            double originalRgCost = originalFees[i][0];// 原人工费
            double rgfRate = originalRgCost/totalRgFee; //人工费比例
-           double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//           double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
            double originalCbrCost = originalFees[i][1];  //原承包人采购
-           double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
            double originalFbrCost = originalFees[i][2];  //原发包人采购
            double fbrCost = originalFbrCost/(1+jxsl); //后发包人采购
            double originalJxrCost = originalFees[i][3];   //原机械费
-           double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
            double measuresFee1 = (zjgcFee-fbrCost*jxsl)*csRate[0]; //措施费一(1)
 //           double measuresFee2 = rgCost*csRate[1];   //措施费一(2)
            double measuresFee2 = csFees*rgfRate;
@@ -340,13 +328,11 @@ public List<JkxlDetailFee> findList(String id,String type){
            jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
            jkxlDetailFee.setOriginalRate(orRate);
            jkxlDetailFee.setOriginalRgCost(originalRgCost);
-           jkxlDetailFee.setRgCost(rgCost);
+//           jkxlDetailFee.setRgCost(rgCost);
            jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-           jkxlDetailFee.setCbrCost(cbrCost);
            jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
            jkxlDetailFee.setFbrCost(fbrCost);
            jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-           jkxlDetailFee.setJxCost(jxCost);
            jkxlDetailFee.setMeasuresFee1(measuresFee1);
            jkxlDetailFee.setMeasuresFee2(measuresFee2);
            jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -361,11 +347,11 @@ public List<JkxlDetailFee> findList(String id,String type){
        }
         double tz = 0.00; //总合计金额
         double texTotal = 0.00; //税合计金额
-        for(JkxlDetailFee jkxlDetailFee : list){
-           texTotal += jkxlDetailFee.getTex();
-        }
         //其他费用补税
         if(qtFees[0]+qtFees[1] != 0.00) {
+            for(JkxlDetailFee jkxlDetailFee : list){
+                texTotal += jkxlDetailFee.getTex();
+            }
             for (JkxlDetailFee jkxlDetailFee : list) {
                 double tex = jkxlDetailFee.getTex();
                 double total1 = jkxlDetailFee.getTotalFee();
@@ -377,20 +363,20 @@ public List<JkxlDetailFee> findList(String id,String type){
         }
         //补税
         if(btex != 0.00){
-            double tex1 = 0.00;
+            double texTotal1 = 0.00;
             for(JkxlDetailFee jkxlDetailFee : list){
-                tex1 += jkxlDetailFee.getTex();
+                texTotal1 += jkxlDetailFee.getTex();
             }
             for(JkxlDetailFee jkxlDetailFee : list){
                 double tex = jkxlDetailFee.getTex();
                 double total1 = jkxlDetailFee.getTotalFee();
-                double rate = tex/tex1;
+                double rate = tex/texTotal1;
                 double tztex = btex*rate;
                 jkxlDetailFee.setTex(tex+tztex);
                 jkxlDetailFee.setTotalFee(total1+tztex);
             }
         }
-        //承包人采购设备费
+        //承包人采购设备费分摊
         if(cbrfee != 0.00){
             for(JkxlDetailFee jkxlDetailFee : list){
                 if(jkxlDetailFee.getWbsCode().equals("39400000")){
@@ -475,24 +461,22 @@ public List<JkxlDetailFee> findList(String id,String type){
             //保存项目
             itemService.save(wbsItem);
         }
-        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
-        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
-            overheadLineMapper.delete(id);
-            feeAdjustService.delete(id);
-            settlementService.delete(id);
-        }
+//        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
+//        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
+//            overheadLineMapper.delete(id);
+//            feeAdjustService.delete(id);
+//            settlementService.delete(id);
+//        }
         //获取调差系数
-        double[] tcRate = new double[3];
-        tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
-        tcRate[1] = ruleRatioService.getValueByName(BashInfo.RATIO_CLTC).getValue()/100;
-        tcRate[2] = ruleRatioService.getValueByName(BashInfo.RATIO_JXTC).getValue()/100;
+//        double[] tcRate = new double[3];
+//        tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
         //读取表格
         ImportExcel total = new ImportExcel(file,1,new String[]{BashInfo.SHEET_HZB,BashInfo.SHEET_HZB1,BashInfo.SHEET_HZB2},true );  //工程项目竣工结算汇总表
         ImportExcel csqd = new ImportExcel(file,1,new String[]{BashInfo.SHEET_CSB,BashInfo.SHEET_CSB1},true);  // 措施项目清单计价表(一)
         ImportExcel csqd2 = new ImportExcel(file,1,BashInfo.SHEET_CSB2,false);  // 措施项目清单计价表(二)
         ImportExcel gf = new ImportExcel(file,1,BashInfo.SHEET_GFQD,true);  //规费项目清单计价表
         ImportExcel qt = new ImportExcel(file,1,BashInfo.SHEET_QTFY,true);  //其他项目清单计价表
-        ImportExcel fbrcg = new ImportExcel(file,1,new String[]{BashInfo.SHEET_FBRCG,BashInfo.SHEET_FBRCG1,BashInfo.SHEET_FBRCG2,BashInfo.SHEET_ZBRCG,BashInfo.SHEET_ZBRCG1},true);   //发包人采购材料设备计价表
+//        ImportExcel fbrcg = new ImportExcel(file,1,new String[]{BashInfo.SHEET_FBRCG,BashInfo.SHEET_FBRCG1,BashInfo.SHEET_FBRCG2,BashInfo.SHEET_ZBRCG,BashInfo.SHEET_ZBRCG1},true);   //发包人采购材料设备计价表
         ImportExcel cbrsb = new ImportExcel(file,1,new String[]{BashInfo.SHEET_TBRCG,BashInfo.SHEET_CBRCG},false);//承包人采购设备计价表
         List<Settlement> settlementList =  SettementUtil.getComparison(total);
         double cbperson = 0.0;
@@ -508,10 +492,10 @@ public List<JkxlDetailFee> findList(String id,String type){
         double azgc = ExcelUtil.getDouble(total,BashInfo.HZ_AZGC,1,2);//汇总表安装金额
         double texRate = ExcelUtil.getTexRate(total); //获取税率
         double fbfxFee = ExcelUtil.getDouble(total,BashInfo.JS_FBFX,1,2);  //分部分项工程费
-        double jzcsRate = BashInfo.getJzRate(csqd); //获取建筑措施费率
+//        double jzcsRate = BashInfo.getJzRate(csqd); //获取建筑措施费率
         double[] azcsRate = BashInfo.getAzRate(csqd); //获取安装措施费率
         double[] jzgfRate = BashInfo.getJzGfRate(gf);  //获取建筑规费率
-        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
+//        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
         double[] qtFees = BashInfo.getQtFees(qt);  //获取其他费用
         double gcjsFee = BashInfo.getGcjsFee(total);  //获取工程结算价
         double tax = 0.00; //税金
@@ -531,7 +515,6 @@ public List<JkxlDetailFee> findList(String id,String type){
         //获取结算表中基础数据
         double jsCs = ExcelUtil.getDouble(total,BashInfo.JS_CSXM,1,2);
         double jsGf = ExcelUtil.getDouble(total,BashInfo.JS_GF,1,2);
-        double jsTex = ExcelUtil.getTex(total);
         List<JkxlDetailFee> list = new ArrayList<>();
         if(jzgc !=0.00 && azgc == 0.00){
             ImportExcel jzqd = new ImportExcel(file,1,BashInfo.SHEET_JZFBFXJJ,true);  //建筑分部分项工程量清单计价表
@@ -553,10 +536,6 @@ 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);
             Boolean f = SettementUtil.getFlag;
@@ -568,13 +547,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double otherFee = qtFees[2]/fbfxFee*originalTotalCost;  //其他费用
                 double zjgcJzFee = zjgcJzFees[i];//直接工程费
                 double originalRgCost = originalJzFees[i][0];// 原人工费
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalJzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalJzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslJz); //后发包人采购
                 double originalJxrCost = originalJzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
                 double rate = (zjgcJzFee-originalFbrCost)/(zjgcJzTotal-fbrJzFee); //比例
                 double measuresFee1 = (zjgcJzFee-originalFbrCost/(1+jxslJz)*jxslJz)*csJzFee[0]+csJzFee[1]*rate; //措施费一(1)
 //                double measuresFee1 = (zjgcJzFee-(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(2)
@@ -589,15 +565,11 @@ public List<JkxlDetailFee> findList(String id,String type){
                     totalfee = originalTotalCost+measuresFee1+measuresFee2+measuresFee3+fees+otherFee+tax; //合计
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
-//            jkxlDetailFee.setOriginalRate(orRate);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -633,10 +605,6 @@ 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);
             Boolean f = SettementUtil.getFlag;
@@ -650,13 +618,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double rgAzFee = rgFees[i];//人工费
                 double originalRgCost = originalAzFees[i][0];// 原人工费
                 double rgRate = originalRgCost/rgAzTotal; //比例
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalAzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalAzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslAz); //后发包人采购
                 double originalJxrCost = originalAzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(1)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rgRate; //措施费一(1)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -672,13 +637,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -722,22 +684,15 @@ public List<JkxlDetailFee> findList(String id,String type){
             double[] aqwmAzFees = BashInfo.getAqwfAzFee(csqd);  //安装安全文明施工费
             double jxslJz = 0.00;
             double jxslAz = 0.00;
-            if(texRate>0.05) {
-                if (fbrJzFee != 0.00) {
+            if (fbrJzFee != 0.00) {
                     double zgJz = zjgcJzTotal - (aqwmJzFees[1] / (aqwmJzFees[0] / 100));
                     jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
-                }
-                if (fbrAzFee != 0.00) {
+            }
+            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);
-            boolean flag = false;
-            if(flagJz && flagAz){
-                flag = true;
             }
+
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson);
             Boolean f = SettementUtil.getFlag;
             //数据核验并保存数据库
@@ -749,13 +704,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double otherFee = qtFees[2]/fbfxFee*originalTotalCost;  //其他费用
                 double zjgcJzFee = zjgcJzFees[i];//直接工程费
                 double originalRgCost = originalJzFees[i][0];// 原人工费
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalJzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalJzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslJz); //后发包人采购
                 double originalJxrCost = originalJzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
                 double rate = (zjgcJzFee-originalFbrCost)/(zjgcJzTotal-fbrJzFee); //比例
 //                double measuresFee1 = (zjgcJzFee-(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(2)
                 double measuresFee1 = (zjgcJzFee-originalFbrCost/(1+jxslJz)*jxslJz)*csJzFee[0]+csJzFee[1]*rate; //措施费一(1)
@@ -771,13 +723,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -798,13 +747,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double rgAzFee = rgAzFees[i];//人工费
                 double originalRgCost = originalAzFees[i][0];// 原人工费
                 double rgRate = originalRgCost/rgAzTotal; //比例
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalAzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalAzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslAz); //后发包人采购
                 double originalJxrCost = originalAzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(1)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rgRate; //措施费一(1)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -820,13 +766,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -842,11 +785,12 @@ public List<JkxlDetailFee> findList(String id,String type){
         }
         double tz = 0.00; //总合计金额
         double texTotal = 0.00; //税合计金额
-        for(JkxlDetailFee jkxlDetailFee : list){
-            texTotal += jkxlDetailFee.getTex();
-        }
+
         //其他费用补税
         if(qtFees[0]+qtFees[1] != 0.00) {
+            for(JkxlDetailFee jkxlDetailFee : list){
+                texTotal += jkxlDetailFee.getTex();
+            }
             for (JkxlDetailFee jkxlDetailFee : list) {
                 double tex = jkxlDetailFee.getTex();
                 double total1 = jkxlDetailFee.getTotalFee();
@@ -858,14 +802,14 @@ public List<JkxlDetailFee> findList(String id,String type){
         }
         //补税
         if(btex != 0.00){
-            double tex1 = 0.00;
+            double texTotal1 = 0.00;
             for(JkxlDetailFee jkxlDetailFee : list){
-                tex1 += jkxlDetailFee.getTex();
+                texTotal1 += jkxlDetailFee.getTex();
             }
             for(JkxlDetailFee jkxlDetailFee : list){
                 double tex = jkxlDetailFee.getTex();
                 double total1 = jkxlDetailFee.getTotalFee();
-                double rate = tex/tex1;
+                double rate = tex/texTotal1;
                 jkxlDetailFee.setTex(tex+btex*rate);
                 jkxlDetailFee.setTotalFee(total1+btex*rate);
             }
@@ -952,17 +896,15 @@ public List<JkxlDetailFee> findList(String id,String type){
             //保存项目
             itemService.save(wbsItem);
         }
-        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
-        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
-            overheadLineMapper.delete(id);
-            feeAdjustService.delete(id);
-            settlementService.delete(id);
-        }
+//        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
+//        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
+//            overheadLineMapper.delete(id);
+//            feeAdjustService.delete(id);
+//            settlementService.delete(id);
+//        }
         //获取调差系数
-        double[] tcRate = new double[3];
-        tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
-        tcRate[1] = ruleRatioService.getValueByName(BashInfo.RATIO_CLTC).getValue()/100;
-        tcRate[2] = ruleRatioService.getValueByName(BashInfo.RATIO_JXTC).getValue()/100;
+//        double[] tcRate = new double[3];
+//        tcRate[0] = ruleRatioService.getValueByName(BashInfo.RATIO_RGTC).getValue()/100;
         //读取表格
         ImportExcel total = new ImportExcel(file,1,new String[]{BashInfo.SHEET_HZB,BashInfo.SHEET_HZB1,BashInfo.SHEET_HZB2},true );  //工程项目竣工结算汇总表
         ImportExcel csqd = new ImportExcel(file,1,new String[]{BashInfo.SHEET_CSB,BashInfo.SHEET_CSB1},true);  // 措施项目清单计价表(一)
@@ -985,10 +927,10 @@ public List<JkxlDetailFee> findList(String id,String type){
         double azgc = ExcelUtil.getDouble(total,BashInfo.HZ_AZGC,1,2);//汇总表安装金额
         double texRate = ExcelUtil.getTexRate(total); //获取税率
         double fbfxFee = ExcelUtil.getDouble(total,BashInfo.JS_FBFX,1,2);  //分部分项工程费
-        double jzcsRate = BashInfo.getJzRate(csqd); //获取建筑措施费率
+//        double jzcsRate = BashInfo.getJzRate(csqd); //获取建筑措施费率
         double[] azcsRate = BashInfo.getAzRate(csqd); //获取安装措施费率
         double[] jzgfRate = BashInfo.getJzGfRate(gf);  //获取建筑规费率
-        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
+//        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
         double[] qtFees = BashInfo.getQtFees(qt);  //获取其他费用
         double gcjsFee = BashInfo.getGcjsFee(total);  //获取工程结算价
         double tax = 0.00; //税金
@@ -1030,7 +972,6 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double zgJz = zjgcJzTotal-(aqwmJzFees[1]/(aqwmJzFees[0]/100));
                 jxslJz = zgJz/(fbrJzFee-zgJz); //建筑进项税率
             }
-            boolean flag = BashInfo.getFlag(originalTotalJzFees,zjgcJzFees);
             //电缆结算汇总
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson);
             Boolean f = SettementUtil.getFlag;
@@ -1042,13 +983,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double otherFee = qtFees[2]/fbfxFee*originalTotalCost;  //其他费用
                 double zjgcJzFee = zjgcJzFees[i];//直接工程费
                 double originalRgCost = originalJzFees[i][0];// 原人工费
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalJzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalJzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslJz); //后发包人采购
                 double originalJxrCost = originalJzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
                 double rate = (zjgcJzFee-originalFbrCost)/(zjgcJzTotal-fbrJzFee); //比例
                 double measuresFee1 = (zjgcJzFee-originalFbrCost/(1+jxslJz)*jxslJz)*csJzFee[0]+csJzFee[1]*rate; //措施费一(1)
 //                double measuresFee1 = (zjgcJzFee-(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(2)
@@ -1065,13 +1003,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
 //            jkxlDetailFee.setOriginalRate(orRate);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -1107,7 +1042,6 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double zgAz = zjgcAzTotal-(aqwmAzFees[1]/(aqwmAzFees[0]/100));
                 jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
             }
-            boolean flag = BashInfo.getFlag(originalTotalAzFees,zjgcAzFees);
             //结算汇总
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson);
             Boolean f = SettementUtil.getFlag;
@@ -1121,13 +1055,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double rgAzFee = rgFees[i];//人工费
                 double originalRgCost = originalAzFees[i][0];// 原人工费
                 double rgRate = originalRgCost/rgAzTotal; //比例
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalAzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalAzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslAz); //后发包人采购
                 double originalJxrCost = originalAzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(1)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rgRate; //措施费一(1)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -1143,13 +1074,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -1193,21 +1121,13 @@ public List<JkxlDetailFee> findList(String id,String type){
             double[] aqwmAzFees = BashInfo.getAqwfAzFee(csqd);  //安装安全文明施工费
             double jxslJz = 0.00;
             double jxslAz = 0.00;
-            if(texRate>0.05) {
-                if (fbrJzFee != 0.00) {
+            if (fbrJzFee != 0.00) {
                     double zgJz = zjgcJzTotal - (aqwmJzFees[1] / (aqwmJzFees[0] / 100));
                     jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
-                }
-                if (fbrAzFee != 0.00) {
+            }
+            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);
-            boolean flag = false;
-            if(flagJz && flagAz){
-                flag = true;
             }
             List<Settlement> dlSettlements = SettementUtil.getDLComparison(settlementList,builtTotal,division,word1total,word2total,otherDlTotal,feesDlCount,cbperson);
             Boolean f = SettementUtil.getFlag;
@@ -1220,13 +1140,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double otherFee = qtFees[2]/fbfxFee*originalTotalCost;  //其他费用
                 double zjgcJzFee = zjgcJzFees[i];//直接工程费
                 double originalRgCost = originalJzFees[i][0];// 原人工费
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalJzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalJzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslJz); //后发包人采购
                 double originalJxrCost = originalJzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
                 double rate = (zjgcJzFee-originalFbrCost)/(zjgcJzTotal-fbrJzFee); //比例
 //                double measuresFee1 = (zjgcJzFee-(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(2)
                 double measuresFee1 = (zjgcJzFee-originalFbrCost/(1+jxslJz)*jxslJz)*csJzFee[0]+csJzFee[1]*rate; //措施费一(1)
@@ -1242,13 +1159,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);
@@ -1269,13 +1183,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 double rgAzFee = rgAzFees[i];//人工费
                 double originalRgCost = originalAzFees[i][0];// 原人工费
                 double rgRate = originalRgCost/rgAzTotal; //比例
-                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
+//                double rgCost = originalRgCost/(1+tcRate[0]);  //后人工费
                 double originalCbrCost = originalAzFees[i][1];  //原承包人采购
-                double cbrCost = originalCbrCost/(1+tcRate[1]);  //后承包人采购
                 double originalFbrCost = originalAzFees[i][2];  //原发包人采购
-                double fbrCost = originalFbrCost/(1+jxslAz); //后发包人采购
                 double originalJxrCost = originalAzFees[i][3];   //原机械费
-                double jxCost = originalJxrCost/(1+tcRate[2]); //后机械费
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(1)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rgRate; //措施费一(1)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -1291,13 +1202,10 @@ public List<JkxlDetailFee> findList(String id,String type){
                 }
                 jkxlDetailFee.setOriginalTotalCost(originalTotalCost);
                 jkxlDetailFee.setOriginalRgCost(originalRgCost);
-                jkxlDetailFee.setRgCost(rgCost);
+//                jkxlDetailFee.setRgCost(rgCost);
                 jkxlDetailFee.setOriginalCbrCost(originalCbrCost);
-                jkxlDetailFee.setCbrCost(cbrCost);
                 jkxlDetailFee.setOriginalFbrCost(originalFbrCost);
-                jkxlDetailFee.setFbrCost(fbrCost);
                 jkxlDetailFee.setOriginalJxCost(originalJxrCost);
-                jkxlDetailFee.setJxCost(jxCost);
                 jkxlDetailFee.setMeasuresFee1(measuresFee1);
                 jkxlDetailFee.setMeasuresFee2(measuresFee2);
                 jkxlDetailFee.setMeasuresFee3(measuresFee3);

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

@@ -632,7 +632,7 @@ public class BashInfo {
             if(type.equals("")){
                 continue;
             }
-            if (!type.contains("投标") && !type.contains("结算") && !type.contains("合计") && !type.contains("发包人") && !type.contains("竣工") && !type.contains("招标人") && !type.contains("税金")&& !type.contains("税额")) {
+            if (!type.contains("投标") && !type.contains("结算") && !type.contains("合计") && !type.contains("发包人") && !type.contains("竣工") && !type.contains("招标人") && !type.contains("税金")&& !type.contains("税额") && !type.contains("工程造价")) {
                  jkxlAdjustFee = new JkxlAdjustFee();
                  double fee = Math.abs(importExcel.getDouble(j+1,2));
                  jkxlAdjustFee.setType(type);

+ 5 - 40
src/main/java/com/jeeplus/modules/sg/overheadline/web/OverheadLineController.java

@@ -803,14 +803,7 @@ public class OverheadLineController extends BaseController {
             zFees[3][0] = jkxlDetailFee.getOriginalCbrCost()!=null? jkxlDetailFee.getOriginalCbrCost():0.00;
             zFees[4][0] = jkxlDetailFee.getOriginalFbrCost()!=null? jkxlDetailFee.getOriginalFbrCost():0.00;
             zFees[5][0] = jkxlDetailFee.getOriginalJxCost()!=null? jkxlDetailFee.getOriginalJxCost():0.00;
-            zFees[6][0] = jkxlDetailFee.getRgCost()!=null? jkxlDetailFee.getRgCost():0.00;
-            zFees[7][0] = jkxlDetailFee.getCbrCost()!=null? jkxlDetailFee.getCbrCost():0.00;
-            zFees[8][0] = jkxlDetailFee.getFbrCost()!=null? jkxlDetailFee.getFbrCost():0.00;
-            zFees[9][0] = jkxlDetailFee.getJxCost()!=null? jkxlDetailFee.getJxCost():0.00;
-            zFees[10][0] = jkxlDetailFee.getRgFtFee()!=null? jkxlDetailFee.getRgFtFee():0.00;
-            zFees[11][0] = jkxlDetailFee.getCbrFtFee()!=null? jkxlDetailFee.getCbrFtFee():0.00;
-            zFees[12][0] = jkxlDetailFee.getFbrFtFee()!=null? jkxlDetailFee.getFbrFtFee():0.00;
-            zFees[13][0] = jkxlDetailFee.getJxFtFee()!=null? jkxlDetailFee.getJxFtFee():0.00;
+//            zFees[6][0] = jkxlDetailFee.getRgCost()!=null? jkxlDetailFee.getRgCost():0.00;
             zFees[14][0] = jkxlDetailFee.getMeasuresFee1()!=null? jkxlDetailFee.getMeasuresFee1():0.00;
             zFees[15][0] = jkxlDetailFee.getMeasuresFee2()!=null? jkxlDetailFee.getMeasuresFee2():0.00;
             zFees[16][0] = jkxlDetailFee.getMeasuresFee3()!=null? jkxlDetailFee.getMeasuresFee3():0.00;
@@ -826,14 +819,7 @@ public class OverheadLineController extends BaseController {
            zFees[3][1] = jkxlDetailFee.getOriginalCbrCost()!=null? jkxlDetailFee.getOriginalCbrCost():0.00;
            zFees[4][1] = jkxlDetailFee.getOriginalFbrCost()!=null? jkxlDetailFee.getOriginalFbrCost():0.00;
            zFees[5][1] = jkxlDetailFee.getOriginalJxCost()!=null? jkxlDetailFee.getOriginalJxCost():0.00;
-           zFees[6][1] = jkxlDetailFee.getRgCost()!=null? jkxlDetailFee.getRgCost():0.00;
-           zFees[7][1] = jkxlDetailFee.getCbrCost()!=null? jkxlDetailFee.getCbrCost():0.00;
-           zFees[8][1] = jkxlDetailFee.getFbrCost()!=null? jkxlDetailFee.getFbrCost():0.00;
-           zFees[9][1] = jkxlDetailFee.getJxCost()!=null? jkxlDetailFee.getJxCost():0.00;
-           zFees[10][1] = jkxlDetailFee.getRgFtFee()!=null? jkxlDetailFee.getRgFtFee():0.00;
-           zFees[11][1] = jkxlDetailFee.getCbrFtFee()!=null? jkxlDetailFee.getCbrFtFee():0.00;
-           zFees[12][1] = jkxlDetailFee.getFbrFtFee()!=null? jkxlDetailFee.getFbrFtFee():0.00;
-           zFees[13][1] = jkxlDetailFee.getJxFtFee()!=null? jkxlDetailFee.getJxFtFee():0.00;
+//           zFees[6][1] = jkxlDetailFee.getRgCost()!=null? jkxlDetailFee.getRgCost():0.00;
            zFees[14][1] = jkxlDetailFee.getMeasuresFee1()!=null? jkxlDetailFee.getMeasuresFee1():0.00;
            zFees[15][1] = jkxlDetailFee.getMeasuresFee2()!=null? jkxlDetailFee.getMeasuresFee2():0.00;
            zFees[16][1] = jkxlDetailFee.getMeasuresFee3()!=null? jkxlDetailFee.getMeasuresFee3():0.00;
@@ -850,14 +836,7 @@ public class OverheadLineController extends BaseController {
       jkxlDetailFee.setOriginalCbrCost(new BigDecimal(zFees[3][0]+zFees[3][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
       jkxlDetailFee.setOriginalFbrCost(new BigDecimal(zFees[4][0]+zFees[4][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
       jkxlDetailFee.setOriginalJxCost(new BigDecimal(zFees[5][0]+zFees[5][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setRgCost(new BigDecimal(zFees[6][0]+zFees[6][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setCbrCost(new BigDecimal(zFees[7][0]+zFees[7][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setFbrCost(new BigDecimal(zFees[8][0]+zFees[8][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setJxCost(new BigDecimal(zFees[9][0]+zFees[9][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setRgFtFee(new BigDecimal(zFees[10][0]+zFees[10][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setCbrFtFee(new BigDecimal(zFees[11][0]+zFees[11][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setFbrFtFee(new BigDecimal(zFees[12][0]+zFees[12][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-      jkxlDetailFee.setJxFtFee(new BigDecimal(zFees[13][0]+zFees[13][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+//      jkxlDetailFee.setRgCost(new BigDecimal(zFees[6][0]+zFees[6][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
       jkxlDetailFee.setMeasuresFee1(new BigDecimal(zFees[14][0]+zFees[14][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
       jkxlDetailFee.setMeasuresFee2(new BigDecimal(zFees[15][0]+zFees[15][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
       jkxlDetailFee.setMeasuresFee3(new BigDecimal(zFees[16][0]+zFees[16][1]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
@@ -896,14 +875,7 @@ public class OverheadLineController extends BaseController {
       zFee[3] += jkxlDetailFee.getOriginalCbrCost();
       zFee[4] += jkxlDetailFee.getOriginalFbrCost();
       zFee[5] += jkxlDetailFee.getOriginalJxCost();
-      zFee[6] += jkxlDetailFee.getRgCost();
-      zFee[7] += jkxlDetailFee.getCbrCost();
-      zFee[8] += jkxlDetailFee.getFbrCost();
-      zFee[9] += jkxlDetailFee.getJxCost();
-      zFee[10] += jkxlDetailFee.getRgFtFee()!=null? jkxlDetailFee.getRgFtFee():0.00;
-      zFee[11] += jkxlDetailFee.getCbrFtFee()!=null? jkxlDetailFee.getCbrFtFee():0.00;
-      zFee[12] += jkxlDetailFee.getFbrFtFee()!=null? jkxlDetailFee.getFbrFtFee():0.00;
-      zFee[13] += jkxlDetailFee.getJxFtFee()!=null? jkxlDetailFee.getJxFtFee():0.00;
+//      zFee[6] += jkxlDetailFee.getRgCost();
       zFee[14] += jkxlDetailFee.getMeasuresFee1();
       zFee[15] += jkxlDetailFee.getMeasuresFee2();
       zFee[16] += jkxlDetailFee.getMeasuresFee3()!=null? jkxlDetailFee.getMeasuresFee3():0.00;
@@ -924,14 +896,7 @@ public class OverheadLineController extends BaseController {
     jkxlDetailFee.setOriginalCbrCost(new BigDecimal(zFee[3]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlDetailFee.setOriginalFbrCost(new BigDecimal(zFee[4]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlDetailFee.setOriginalJxCost(new BigDecimal(zFee[5]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setRgCost(new BigDecimal(zFee[6]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setCbrCost(new BigDecimal(zFee[7]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setFbrCost(new BigDecimal(zFee[8]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setJxCost(new BigDecimal(zFee[9]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setRgFtFee(new BigDecimal(zFee[10]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setCbrFtFee(new BigDecimal(zFee[11]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setFbrFtFee(new BigDecimal(zFee[12]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlDetailFee.setJxFtFee(new BigDecimal(zFee[13]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+//    jkxlDetailFee.setRgCost(new BigDecimal(zFee[6]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlDetailFee.setMeasuresFee1(new BigDecimal(zFee[14]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlDetailFee.setMeasuresFee2(new BigDecimal(zFee[15]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlDetailFee.setMeasuresFee3(new BigDecimal(zFee[16]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());

+ 21 - 41
src/main/java/com/jeeplus/modules/sg/substation/service/SubstationService.java

@@ -61,17 +61,16 @@ public class SubstationService {
             //保存项目
             itemService.save(wbsItem);
         }
-        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
-        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
-            overheadLineMapper.delete(id);
-            feeAdjustService.delete(id);
-            settlementService.delete(id);
-        }
+//        List<JkxlDetailFee> jkxlDetailFees = overheadLineMapper.findList(id,type);
+//        if(jkxlDetailFees != null && jkxlDetailFees.size()>0){
+//            overheadLineMapper.delete(id);
+//            feeAdjustService.delete(id);
+//            settlementService.delete(id);
+//        }
         //获取调差系数
-        double[] tcRate = new double[3];
-        tcRate[0] = ruleRatioService.getValueByName(SubstationInfo.RATIO_RGTC).getValue()/100;
-        tcRate[1] = ruleRatioService.getValueByName(SubstationInfo.RATIO_CLTC).getValue()/100;
-        tcRate[2] = ruleRatioService.getValueByName(SubstationInfo.RATIO_JXTC).getValue()/100;
+//        double[] tcRate = new double[3];
+//        tcRate[0] = ruleRatioService.getValueByName(SubstationInfo.RATIO_RGTC).getValue()/100;
+
 
         //读取表格
         ImportExcel total = new ImportExcel(file,1,new String[]{SubstationInfo.SHEET_HZB,SubstationInfo.SHEET_HZB1,BashInfo.SHEET_HZB2},true );  //工程项目竣工结算汇总表
@@ -100,11 +99,11 @@ public class SubstationService {
             tbrAzFee = BashInfo.getFbrAzFee(tbrsb); //投标人安装费
             cbperson = ExcelUtil.getDouble(tbrsb,BashInfo.QT_HJ,0,6);//投标人合计
        }
-        double fbfxFee = ExcelUtil.getDouble(total,SubstationInfo.JS_FBFX,1,2);  //分部分项工程费
+//        double fbfxFee = ExcelUtil.getDouble(total,SubstationInfo.JS_FBFX,1,2);  //分部分项工程费
         double jzcsRate = BashInfo.getJzRate(csqd1); //获取建筑措施费率
         double[] azcsRate = BashInfo.getAzRate(csqd1); //获取安装措施费率
         double[] jzgfRate = BashInfo.getJzGfRate(gf);  //获取建筑规费率
-        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
+//        double[] azgfRate = BashInfo.getAzGfRate(gf);  //获取安装规费率
         double[] qtFees = BashInfo.getQtFees(qt);  //获取其他费用
         double gcjsFee = BashInfo.getGcjsFee(total);  //获取工程结算价
        //获取未识别费用
@@ -129,7 +128,7 @@ public class SubstationService {
        //获取结算表中基础数据
        double jsCs = ExcelUtil.getDouble(total,BashInfo.JS_CSXM,1,2);
        double jsGf = ExcelUtil.getDouble(total,BashInfo.JS_GF,1,2);
-       double jsTex = ExcelUtil.getTex(total);
+//       double jsTex = ExcelUtil.getTex(total);
         if(jzgc !=0.00 && azgc != 0.00){
             ImportExcel jzqd = new ImportExcel(file, 1, SubstationInfo.SHEET_JZFBFXJJ,true);  //建筑分部分项工程量清单计价表
             ImportExcel azqd = new ImportExcel(file, 1, SubstationInfo.SHEET_AZFBFXJJ,true);  //安装分部分项工程量清单计价表
@@ -158,16 +157,15 @@ public class SubstationService {
             double fbrAzFee = ExcelUtil.getDouble(azqd,SubstationInfo.AZMX_BDZAZ,2,15);
             double jxslJz = 0.00;
             double jxslAz = 0.00;
-            if(texRate>0.05) {
-                if (fbrJzFee != 0.00) {
+            if (fbrJzFee != 0.00) {
                     double zgJz = zjgcJzTotal - aqwmJzFees[1] / (aqwmJzFees[0]/100);
                     jxslJz = zgJz / (fbrJzFee - zgJz); //建筑进项税率
-                }
-                if (fbrAzFee != 0.00) {
+            }
+            if (fbrAzFee != 0.00) {
                     double zgAz = zjgcAzTotal - aqwmAzFees[1] / (aqwmAzFees[0]/100);
                     jxslAz = zgAz / (fbrAzFee - zgAz); //安装进项税率
-                }
             }
+
             //建筑部分基础数据
             JkxlDetailFee jz = SubstationInfo.getTolalInfo(jzqd,jzhz,"21000000",SubstationInfo.JZMX_BJZ);  //建筑合计
             JkxlDetailFee jzsc = SubstationInfo.getBashInfo(jzqd,jzhz,"21100000",SubstationInfo.JZMX_ZYGC);  //主要生产工程
@@ -224,12 +222,6 @@ public class SubstationService {
             azTotal.add(azdx);
             azTotal.addAll(zwdy);
             azTotal.addAll(zwtx);
-            boolean flagJz = SubstationInfo.getFlag(jzTotal);
-            boolean flagAz = SubstationInfo.getFlag(azTotal);
-            boolean flag = false;
-            if(flagJz && flagAz){
-                flag = true;
-            }
             //结算汇总
             List<Settlement> settlementBdzs = SettementUtil.getDLComparison(settlementsBdz,builtTotal,division,word1total,word2total,otherBdzTotal,feesBdzCount,cbperson);
             Boolean f = SettementUtil.getFlag;
@@ -240,10 +232,7 @@ public class SubstationService {
                  double zjgcJzFee = jkxlDetailFee.getZjgcFee();
                  double rateCs = zjgcJzFee/zjgcJzTotal;  //措施费分摊比例
                  double rateQt = zjgcJzFee/zjgcTotal;    //其他费用分摊比例
-                 jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
-                 jkxlDetailFee.setCbrCost(jkxlDetailFee.getOriginalCbrCost()/(1+tcRate[1]));
-                 jkxlDetailFee.setFbrCost(originalFbrCost/(1+jxslJz));
-                 jkxlDetailFee.setJxCost(jkxlDetailFee.getOriginalJxCost()/(1+tcRate[2]));
+//                 jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
                  double measuresFee1 = (zjgcJzFee -(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(1)
                  double measuresFee2 = 0.00;   //措施费一(2)
                  double measuresFee3 = csJzFee*rateCs; //措施费二
@@ -281,10 +270,7 @@ public class SubstationService {
                 double rateCs = zjgcAzFee/zjgcAzTotal;  //措施费分摊比例
                 double rateQt = zjgcAzFee/zjgcTotal;    //其他费用分摊比例
                 double rateRg = rgAzFee/rgAzTotal;  //人工费比例
-                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
-                jkxlDetailFee.setCbrCost(jkxlDetailFee.getOriginalCbrCost()/(1+tcRate[1]));
-                jkxlDetailFee.setFbrCost(originalFbrCost/(1+jxslAz));
-                jkxlDetailFee.setJxCost(jkxlDetailFee.getOriginalJxCost()/(1+tcRate[2]));
+//                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(2)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rateRg; //措施费一(2)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -472,10 +458,7 @@ public class SubstationService {
                 double zjgcJzFee = jkxlDetailFee.getZjgcFee();
                 double rateCs = zjgcJzFee/zjgcJzTotal;  //措施费分摊比例
                 double rateQt = zjgcJzFee/zjgcJzTotal;    //其他费用分摊比例
-                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
-                jkxlDetailFee.setCbrCost(jkxlDetailFee.getOriginalCbrCost()/(1+tcRate[1]));
-                jkxlDetailFee.setFbrCost(originalFbrCost/(1+jxslJz));
-                jkxlDetailFee.setJxCost(jkxlDetailFee.getOriginalJxCost()/(1+tcRate[2]));
+//                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
                 double measuresFee1 = (zjgcJzFee -(originalFbrCost/(1+jxslJz)*jxslJz))*jzcsRate; //措施费一(1)
                 double measuresFee2 = csJzFee*rateCs;   //措施费一(2)
                 double measuresFee3 = 0.00; //措施费二
@@ -644,10 +627,7 @@ public class SubstationService {
                 double rateCs = zjgcAzFee/zjgcAzTotal;  //措施费分摊比例
                 double rateQt = zjgcAzFee/zjgcAzTotal;    //其他费用分摊比例
                 double rateRg = rgAzFee/rgAzTotal;   //人工费比例
-                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
-                jkxlDetailFee.setCbrCost(jkxlDetailFee.getOriginalCbrCost()/(1+tcRate[1]));
-                jkxlDetailFee.setFbrCost(originalFbrCost/(1+jxslAz));
-                jkxlDetailFee.setJxCost(jkxlDetailFee.getOriginalJxCost()/(1+tcRate[2]));
+//                jkxlDetailFee.setRgCost(jkxlDetailFee.getOriginalRgCost()/(1+tcRate[0]));
 //                double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+(rgAzFee/(1+tcRate[0])*azcsRate[1]); //措施费一(2)
                 double measuresFee1 = (zjgcAzFee-originalFbrCost/(1+jxslAz)*jxslAz)*azcsRate[0]+azCsFee*rateRg; //措施费一(1)
                 double measuresFee2 = 0.00;   //措施费一(2)
@@ -698,7 +678,7 @@ public class SubstationService {
                 for(JkxlDetailFee jkxlDetailFee : azTotal){
                     double tex = jkxlDetailFee.getTex();
                     double total1 = jkxlDetailFee.getTotalFee();
-                    double rate = tex/aztexTotal;
+                    double rate = tex/tex1;
                     jkxlDetailFee.setTex(tex+btex*rate);
                     jkxlDetailFee.setTotalFee(total1+btex*rate);
                 }