蔡德晨 5 tahun lalu
induk
melakukan
8ad0be8748

+ 9 - 0
src/main/java/com/jeeplus/modules/sg/entity/JkxlData.java

@@ -32,6 +32,7 @@ public class JkxlData {
     private Double cbrFtFee;
     private Double fbrFtFee;
     private Double jxFtFee;
+    private Double gxFee;
 
     private String wbsId;
     private String projectId;
@@ -43,6 +44,14 @@ public class JkxlData {
     private String state;
 
 
+    public Double getGxFee() {
+        return gxFee;
+    }
+
+    public void setGxFee(Double gxFee) {
+        this.gxFee = gxFee;
+    }
+
     public String getSubjectAllocate() {
         return subjectAllocate;
     }

+ 8 - 4
src/main/java/com/jeeplus/modules/sg/mapper/xml/JkxlMapper.xml

@@ -37,7 +37,8 @@
       b.rg_fee_ft      as rgFtFee,
        b.cbr_fee_ft    as cbrFtFee,
        b.fbr_fee_ft    as fbrFtFee,
-       b.jx_fee_ft   as jxFtFee
+       b.jx_fee_ft   as jxFtFee,
+       b.gx_fee as gxFee
          FROM sg_wbs_elements_data a LEFT JOIN sg_wbs_fee b on a.short_id = b.wbs_code
          and b.id = #{id}
 	</select>
@@ -72,7 +73,8 @@
       b.rg_fee_ft      as rgFtFee,
        b.cbr_fee_ft    as cbrFtFee,
        b.fbr_fee_ft    as fbrFtFee,
-       b.jx_fee_ft   as jxFtFee
+       b.jx_fee_ft   as jxFtFee,
+       b,gx_fee as gxFee
          FROM sg_wbs_elements_data a LEFT JOIN sg_wbs_fee b on a.short_id = b.wbs_code
          <where>
          b.id = #{id}  and a.short_id = #{wbsCode}
@@ -123,7 +125,8 @@
 		 rg_fee_ft,
 		 cbr_fee_ft,
 		 fbr_fee_ft,
-		 jx_fee_ft
+		 jx_fee_ft,
+		 gx_fee
 		) values (
 		 #{id},
 		 #{wbsCode},
@@ -150,7 +153,8 @@
 		 #{rgFtFee},
 		 #{cbrFtFee},
 		 #{fbrFtFee},
-		 #{jxFtFee}
+		 #{jxFtFee},
+		 #{gxFee}
 		)
 	</insert>
 

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

@@ -28,6 +28,7 @@ public class BashInfo {
     public static final String QT_HJ = "合计";
     public static final String BZZSSL = "补增值税税率调整差额";
     public static final String KJJGCC = "扣减甲供材超供材料费";
+    public static final String GCJS = "工程结算价";
     public static final String HZ_JCGC = "基础工程";
     public static final String HZ_GTGC = "杆塔工程";
     public static final String HZ_JDGC = "接地工程";

+ 29 - 4
src/main/java/com/jeeplus/modules/sg/web/JkxlController.java

@@ -523,6 +523,22 @@ public class JkxlController extends BaseController {
       jkxlData.setId(id);
       list.add(jkxlData);
     }
+    double tz = 0.00;
+    for(JkxlData jkxlData : list){
+      tz += jkxlData.getTotalFee();
+    }
+//    double gxFee = wsbFees[2]-tz-qtFees[0]-qtFees[1]-wsbFees[0]-wsbFees[1];
+    double gxFee = wsbFees[2]-tz;
+    double rate1 = 0.00;
+    double gxFee1 = 0.00;
+    double totalF = 0.00;
+    for(JkxlData jkxlData: list){
+       rate1 = jkxlData.getTotalFee()/tz;
+       gxFee1 = gxFee*rate1;
+       totalF = gxFee1 + jkxlData.getTotalFee();
+       jkxlData.setGxFee(gxFee1);
+       jkxlData.setTotalFee(totalF);
+    }
     JkxlData jkxlData1 = new JkxlData();
     JkxlData jkxlData2 = new JkxlData();
     jkxlData1.setId(id);
@@ -533,6 +549,7 @@ public class JkxlController extends BaseController {
     jkxlData2.setId(id);
     list.add(jkxlData1);
     list.add(jkxlData2);
+
     return list;
 
   }
@@ -653,6 +670,7 @@ public class JkxlController extends BaseController {
     int lastRow = importExcel.getLastDataRowNum();
     double bzFree = 0.00;
     double kcFree = 0.00;
+    double gcjs = 0.00;
     for(int i=0;i<lastRow;i++){
       String type = importExcel.getValue(i+1,1);
       if(type.equals(BashInfo.BZZSSL)){
@@ -661,12 +679,17 @@ public class JkxlController extends BaseController {
       }
       if(type.equals(BashInfo.KJJGCC)){
         kcFree = importExcel.getDouble(i+1,2);
+        continue;
+      }
+      if(type.equals(BashInfo.GCJS)){
+        gcjs = importExcel.getDouble(i+1,2);
         break;
       }
     }
-    double[] wsb = new double[2];
+    double[] wsb = new double[3];
     wsb[0] = bzFree;
     wsb[1] = kcFree;
+    wsb[2] = gcjs;
     return  wsb;
 
   }
@@ -747,7 +770,7 @@ public class JkxlController extends BaseController {
     for (JkxlData jkxlData :list2){
       total1 += jkxlData.getTotalFee();
     }
-    double [] zFee = new double[21];
+    double [] zFee = new double[22];
     for(JkxlData jkxlData:list1){
       zFee[0] += jkxlData.getOriginalTotalCost();
       zFee[1] += jkxlData.getZjgcFee();
@@ -769,7 +792,8 @@ public class JkxlController extends BaseController {
       zFee[17] += jkxlData.getOtherCost();
       zFee[18] += jkxlData.getFees();
       zFee[19] += jkxlData.getTex();
-      zFee[20] += jkxlData.getTotalFee();
+      zFee[20] += jkxlData.getGxFee();
+      zFee[21] += jkxlData.getTotalFee();
     }
     JkxlData jkxlData = new JkxlData();
     JkxlData jkxlData1 = new JkxlData();
@@ -793,7 +817,8 @@ public class JkxlController extends BaseController {
     jkxlData.setOtherCost(new BigDecimal(zFee[17]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlData.setFees(new BigDecimal(zFee[18]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlData.setTex(new BigDecimal(zFee[19]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
-    jkxlData.setTotalFee(new BigDecimal(zFee[20]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+    jkxlData.setGxFee(new BigDecimal(zFee[20]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
+    jkxlData.setTotalFee(new BigDecimal(zFee[21]).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
     jkxlData.setWbsCode("合计");
     jkxlData.setParentNode("30000000");
     jkxlData.setState("1");

+ 2 - 0
src/main/webapp/webpage/modules/sg/free/wbslist.jsp

@@ -104,6 +104,7 @@
                     {field:'fbfxysj', align:'center', title: '分部分项(原数据)',colspan:'6'},
                     {field:'fbfxtch',align:'center',title:'分部分项(调差后)',colspan:'4'},
                     {field:'fbfxtch',align:'center',title:'共性分摊费用',colspan:'10'},
+                    {field:'gxfy',align:'center',width:120,title: '共性费用',rowspan:'2',totalRow: true},
                     {field:'hj',align:'center',width:120,title:'合计',rowspan:'2',totalRow: true}
 //                  {templet: '#oper-col', title: 'oper'}
                 ],[
@@ -165,6 +166,7 @@
                     "gf":"${data.fees}",
                     "sf":"${data.tex}",
                     "hj": "${data.totalFee}",
+                    "gxfy": "${data.gxFee}",
                     "pid": "${data.parentNode}"
                 },
                     </c:if>