소스 검색

Merge remote-tracking branch 'origin/master'

xs 5 년 전
부모
커밋
65719d5d37

+ 4 - 2
src/main/java/com/jeeplus/common/utils/sg/ExcelUtil.java

@@ -135,16 +135,18 @@ public class ExcelUtil {
         int len = sts.length;
         int len1 = column2.length;
         double[][] d = new double[len][len1];
-        for(int i=0;i<lastRow;i++){
+        for(int j=0;j<len;j++){
+          for(int i=0;i<lastRow;i++){
             String type = importExcel.getValue(i+1,column1);
             if(type.equals("")){
                 continue;
             }
-            for(int j=0;j<len;j++){
+
                 if(type.contains(sts[j])){
                     for(int k=0;k<column2.length;k++) {
                         d[j][k] = importExcel.getDouble(i + 1, column2[k]);
                     }
+                    break;
                 }
             }
         }

+ 1 - 2
src/main/java/com/jeeplus/modules/sg/project/web/ProjectTemController.java

@@ -64,7 +64,7 @@ public class ProjectTemController extends BaseController {
      */
     @ResponseBody
     @RequestMapping("/import")
-    public HashMap importFile(@RequestParam(value = "file")MultipartFile[] file,String projectName,String[] itemNames,String[] itemTypes)  {
+    public HashMap importFile(@RequestParam(value = "file")MultipartFile[] file,String projectName,String[] itemNames,String[] itemTypes) throws IOException, InvalidFormatException {
         HashMap map = new HashMap();
         WbsProject wbsProject = new WbsProject();
         wbsProject.setProjectName(projectName);
@@ -72,7 +72,6 @@ public class ProjectTemController extends BaseController {
 //        List<WbsProject> wbsProjects = projectService.findByName(projectName);
 //        WbsProject wbsProject1 = wbsProjects.get(0);
         String projectId = wbsProject.getId();
-
         try {
             for(int i = 0;i<itemTypes.length;i++) {
 //            保存数据到数据库

+ 5 - 23
src/main/java/com/jeeplus/modules/sg/substation/service/SubstationService.java

@@ -115,22 +115,6 @@ public class SubstationService {
        return overheadLineMapper.getData(id,wbsCode);
    }
 
-   public List<JkxlDetailFee> getAdjust(String id){
-       return overheadLineMapper.getAdjust(id);
-   }
-
-
-    @Transactional(readOnly = false)
-    public void updataDate(JkxlDetailFee jkxlDetailFee){
-        overheadLineMapper.updateDate(jkxlDetailFee);
-    }
-
-    @Transactional(readOnly = false)
-   public void saveProject(WbsProject wbsProject){
-       overheadLineMapper.saveProject(wbsProject);
-   }
-
-
 
 
     public void save(MultipartFile file,String name,String id,String projectId,String type) throws IOException, InvalidFormatException {
@@ -214,8 +198,10 @@ public class SubstationService {
             double fbrAzFee = ExcelUtil.getDouble(azqd,SubstationInfo.AZMX_BDZAZ,2,15);
             double zgJz = zjgcJzTotal-aqwmJzFees[1]/aqwmJzFees[0]*100;
             double zgAz = zjgcAzTotal-aqwmAzFees[1]/aqwmAzFees[0]*100;
-            double jxslJz = new BigDecimal(zgJz/(fbrJzFee-zgJz)).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); //建筑进项税率
-            double jxslAz = new BigDecimal(zgAz/(fbrAzFee-zgAz)).setScale(4, BigDecimal.ROUND_HALF_UP).doubleValue(); //安装进项税率
+//            double jxslJz = new BigDecimal(zgJz/(fbrJzFee-zgJz)).setScale(10, BigDecimal.ROUND_HALF_UP).doubleValue(); //建筑进项税率
+            double jxslJz = zgJz/(fbrJzFee-zgJz); //建筑进项税率
+//            double jxslAz = new BigDecimal(zgAz/(fbrAzFee-zgAz)).setScale(10, BigDecimal.ROUND_HALF_UP).doubleValue(); //安装进项税率
+            double jxslAz = zgAz/(fbrAzFee-zgAz); //安装进项税率
             //建筑部分基础数据
             JkxlDetailFee jz = SubstationInfo.getTolalInfo(jzqd,jzhz,"21000000",SubstationInfo.JZMX_BJZ);  //建筑合计
             JkxlDetailFee jzsc = SubstationInfo.getBashInfo(jzqd,jzhz,"21100000",SubstationInfo.JZMX_ZYGC);  //主要生产工程
@@ -277,8 +263,7 @@ public class SubstationService {
             List<JkxlDetailFee> zbyq  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.ZBYQWBS,SubstationInfo.ZBYQSTR); //主变压器系统
             List<JkxlDetailFee> pdzzs  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.PDZZWBS,SubstationInfo.PDZZSTR); //配电装置
             List<JkxlDetailFee> wgbc  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.WGBCWBS,SubstationInfo.WGBCSTR); //无功补偿
-//            List<JkxlDetailFee> kzzl  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.KZZLWBS,SubstationInfo.KZZLSTR); //控制及直流系统
-            List<JkxlDetailFee> kzzl = SubstationInfo.getKzzl(azqd,azhz);
+            List<JkxlDetailFee> kzzl = SubstationInfo.getKzzl(azqd,azhz);   //控制直流
             List<JkxlDetailFee> zyd  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.ZYDWBS,SubstationInfo.ZYDSTR); //站用电系统
             List<JkxlDetailFee> dljd = SubstationInfo.getDljd(azqd,azhz);    //电缆接地
             List<JkxlDetailFee> txyd  = SubstationInfo.getBashInfos(azqd,azhz,SubstationInfo.TXYDWBS,SubstationInfo.TXYDSTR); //通信及远动系统
@@ -358,9 +343,6 @@ public class SubstationService {
             jkxlAdjustFee.setType(BashInfo.CE);
             jkxlAdjustFee.setFee(gxFee);
             feeAdjustService.save(jkxlAdjustFee);
-
-
-
         }
 
 

+ 21 - 17
src/main/java/com/jeeplus/modules/sg/substation/util/SubstationInfo.java

@@ -100,7 +100,7 @@ public class SubstationInfo {
 //    public static final String JZMX_FHQ= "防火墙";
     public static final String JZMX_BLZT= "避雷针塔";
     public static final String JZMX_DLGD= "电缆沟道";
-    public static final String JZMX_LGJDP= "栅及地坪";
+    public static final String JZMX_LGJDP= "栅及地坪";
     public static final String JZMX_PDZZQY= "配电装置区域地面封闭";
 
     public static final String JZMX_GSXTJZ= "供水系统建筑";
@@ -272,8 +272,8 @@ public class SubstationInfo {
     //主要生产建筑
     public static String[] ZYSCWBS = {"21110000","21111000","21112000","21113000","21114000","21115000","21116000","21117000","21118000","21119000"
             ,"2111A000","2111B000","2111C000","2111D000","2111F000","2111G000","2111H000","2111J000","2111K000", "2111L000","2111M000",
-            "2111N000","211P000","211Q000","211R000"};
-    public static String[] ZYSCJZSTR = {JZMX_ZYSCJZ,JZMX_ZKTXL,JZMX_1000JDS,JZMX_750JDS,JZMX_500JDS,JZMX_330JDS,JZMX_220JDS,JZMX_110JDS,JZMX_66JDS,JZMX_35JDS,JZMX_ZYPDZZS,JZMX_1000PDZZS,JZMX_750PDZZS,
+            "2111N000","2111P000","2111Q000","2111R000"};
+    public static String[] ZYSCJZSTR = {JZMX_ZYSCJZ,JZMX_ZKTXL,JZMX_1000JDS,JZMX_750JDS,JZMX_500JDS,JZMX_330JDS,JZMX_220JDS,JZMX_110JDS,JZMX_66JDS,JZMX_35JDS,JZMX_10JDS,JZMX_ZYPDZZS,JZMX_1000PDZZS,JZMX_750PDZZS,
             JZMX_500PDZZS,JZMX_330PDZZS,JZMX_220PDZZS,JZMX_110PDZZS,JZMX_66PDZZS,JZMX_35PDZZS,JZMX_10PDZZS,JZMX_GDCLBC,JZMX_KKGYDKQ,JZMX_KKCLBCZZ,JZMX_JZWGBCZZ};
 
     //配电装置
@@ -300,7 +300,7 @@ public class SubstationInfo {
     public static String[] XFXTSTR = {JZMX_XFXT,JZMX_XFSBF,JZMX_YLFS,JZMX_ZQXFGD,JZMX_XFQC,JZMX_TSXFXT,JZMX_XFSC};
 
     //辅助生产建筑
-    public static String[] FZSCWBS = {"21210000","21211000","21212000","1213000"};
+    public static String[] FZSCWBS = {"21210000","21211000","21212000","21213000"};
     public static String[] FZSCSTR = {JZMX_FZSCJZ,JZMX_ZHL,JZMX_JWS,JZMX_YSBF};
 
 
@@ -464,7 +464,7 @@ public class SubstationInfo {
         List<JkxlDetailFee> kvjg = getBashInfo(importExcel,importExcel1,KFJGSBWBS,KFJGSBSTR);//构架及设备基础无3级表头
         List<JkxlDetailFee> kvtotal = new ArrayList<>(); //构架及设备基础
         for(int i=0;i<kvjg.size()/2;i++){
-            String wbs = kvjg.get(i*2).getWbsCode().substring(0,6);
+            String wbs = kvjg.get(i*2).getWbsCode().substring(0,5);
             double t1 = kvjg.get(i*2).getOriginalTotalCost();
             double r1 = kvjg.get(i*2).getOriginalRgCost();
             double c1 = kvjg.get(i*2).getOriginalCbrCost();
@@ -487,8 +487,8 @@ public class SubstationInfo {
         total1.addAll(kvtotal); //合并
         for(JkxlDetailFee jkxlDetailFee:total1){
             double rate = 0.00;
-            if(total.getOriginalRgCost() != 0.00) {
-                rate = jkxlDetailFee.getOriginalRgCost() / total.getOriginalRgCost();
+            if(total.getOriginalTotalCost() != 0.00) {
+                rate = jkxlDetailFee.getOriginalTotalCost() / total.getOriginalTotalCost();
             }
             double zjgc = total.getZjgcFee()*rate;
             jkxlDetailFee.setZjgcFee(zjgc);
@@ -598,8 +598,11 @@ public class SubstationInfo {
                 }
             }
             if(type.contains(JZMX_SBZJJJC)){
-                for(int j=0;j<arr.length;j++){
-                    d[13][j] = importExcel.getDouble(i+1,arr[j]);
+                String st = type.substring(0,3);
+                if(st.equals(index[2])) {
+                    for (int j = 0; j < arr.length; j++) {
+                        d[13][j] = importExcel.getDouble(i + 1, arr[j]);
+                    }
                 }
             }
             if(type.contains(JZMX_JZWGBCJC)){
@@ -646,8 +649,8 @@ public class SubstationInfo {
         List<JkxlDetailFee> jzwss = ftFee(jzw,jzws);
         //站用变压器系统
         JkxlDetailFee zyb= total1.get(6);
-        JkxlDetailFee zyba = kvjg.get(16);
-        JkxlDetailFee zybb = kvjg.get(17);
+        JkxlDetailFee zyba = detailFees.get(16);
+        JkxlDetailFee zybb = detailFees.get(17);
         List<JkxlDetailFee> zybs = new ArrayList<>();
         zybs.add(zyba);
         zybs.add(zybb);
@@ -721,7 +724,7 @@ public class SubstationInfo {
         for(JkxlDetailFee jkxlDetailFee1:list){
             double rate = 0.00;
             if(d != 0.00){
-                 rate = jkxlDetailFee1.getOriginalRgCost()/d;
+                 rate = jkxlDetailFee1.getOriginalTotalCost()/d;
             }
             double d1 = gc*rate;
             jkxlDetailFee1.setZjgcFee(d1);
@@ -736,6 +739,7 @@ public class SubstationInfo {
     public static List<JkxlDetailFee> getKzzl(ImportExcel importExcel,ImportExcel importExcel1){
         String[] str = KZZLSTR;
         String[] wbs = KZZLWBS;
+//        double[][] doubles = new double[5][];
         double[][] doubles = ExcelUtil.getBashArray(importExcel,str,2,new int[]{12,13, 14, 15, 17});
         double d = ExcelUtil.getDouble(importExcel1,str[0],1,3);  //直接工程费
         double total = doubles[0][0];
@@ -793,11 +797,11 @@ public class SubstationInfo {
         }
         JkxlDetailFee dl = new JkxlDetailFee();
         dl.setWbsCode("23161000");
-        dl.setOriginalTotalCost(qzjd[0]);
-        dl.setOriginalRgCost(qzjd[1]);
-        dl.setOriginalFbrCost(qzjd[3]);
-        dl.setOriginalCbrCost(qzjd[2]);
-        dl.setOriginalJxCost(qzjd[4]);
+        dl.setOriginalTotalCost(qzdl[0]);
+        dl.setOriginalRgCost(qzdl[1]);
+        dl.setOriginalFbrCost(qzdl[3]);
+        dl.setOriginalCbrCost(qzdl[2]);
+        dl.setOriginalJxCost(qzdl[4]);
         dl.setZjgcFee(qzZjgc);
         JkxlDetailFee jd = new JkxlDetailFee();
         jd.setWbsCode("23162000");