فهرست منبع

Merge branch 'master' of http://192.168.2.4:3000/chengqiang/sg_audit

chengqiang 5 سال پیش
والد
کامیت
f92aae4d8a
19فایلهای تغییر یافته به همراه344 افزوده شده و 101 حذف شده
  1. 43 0
      src/main/java/com/jeeplus/modules/sg/audit/information/entity/Information.java
  2. 1 1
      src/main/java/com/jeeplus/modules/sg/audit/information/mapper/InformationMapper.java
  3. 3 3
      src/main/java/com/jeeplus/modules/sg/audit/information/mapper/xml/InformationMapper.xml
  4. 2 2
      src/main/java/com/jeeplus/modules/sg/audit/information/service/InformationService.java
  5. 34 0
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/entity/MCompletionProject.java
  6. 1 1
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditChild1Mapper.java
  7. 1 1
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditChild2Mapper.java
  8. 1 1
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditMapper.java
  9. 2 2
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditChild1Mapper.xml
  10. 2 2
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditChild2Mapper.xml
  11. 2 2
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditMapper.xml
  12. 77 14
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/service/ErpCreditService.java
  13. 2 0
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ErpInfo.java
  14. 61 0
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtil1.java
  15. 100 66
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtil2.java
  16. 9 3
      src/main/java/com/jeeplus/modules/sg/financial/erpcredit/web/ErpCreditController.java
  17. 1 1
      src/main/java/com/jeeplus/modules/sg/financial/settlement/mapper/DataMaintenanceMapper.java
  18. 2 2
      src/main/java/com/jeeplus/modules/sg/financial/settlement/mapper/xml/DataMaintenanceMapper.xml
  19. BIN
      src/main/resources/freemarker/excelmodel/竣工决算模板.xlsx

+ 43 - 0
src/main/java/com/jeeplus/modules/sg/audit/information/entity/Information.java

@@ -3,6 +3,7 @@
  */
 package com.jeeplus.modules.sg.audit.information.entity;
 
+import java.util.Arrays;
 import java.util.Date;
 import java.util.List;
 
@@ -426,4 +427,46 @@ public class Information extends DataEntity<Information>  {
 	public void setSettlement(String settlement) {
 		this.settlement = settlement;
 	}
+
+	@Override
+	public String toString() {
+		return "Information{" +
+				"projectId='" + projectId + '\'' +
+				", projectName='" + projectName + '\'' +
+				", projectType='" + projectType + '\'' +
+				", projectGrade='" + projectGrade + '\'' +
+				", projectYear='" + projectYear + '\'' +
+				", projectTotal='" + projectTotal + '\'' +
+				", projectStart=" + projectStart +
+				", projectStop=" + projectStop +
+				", department='" + department + '\'' +
+				", projectFirm='" + projectFirm + '\'' +
+				", subDate=" + subDate +
+				", releaseDate=" + releaseDate +
+				", endDate=" + endDate +
+				", resultDate=" + resultDate +
+				", approvalDate=" + approvalDate +
+				", secondUnits='" + secondUnits + '\'' +
+				", firstUnits='" + firstUnits + '\'' +
+				", firstFinish='" + firstFinish + '\'' +
+				", firstFinishDate=" + firstFinishDate +
+				", secondFinish='" + secondFinish + '\'' +
+				", secondFinishDate=" + secondFinishDate +
+				", overdue='" + overdue + '\'' +
+				", trial='" + trial + '\'' +
+				", construction='" + construction + '\'' +
+				", outConstruction='" + outConstruction + '\'' +
+				", settlement='" + settlement + '\'' +
+				", complete='" + complete + '\'' +
+				", finishDate='" + finishDate + '\'' +
+				", noFinishDate='" + noFinishDate + '\'' +
+				", underCentralized='" + underCentralized + '\'' +
+				", attrs=" + Arrays.toString(attrs) +
+				", fileList=" + fileList +
+				", extendedStatus='" + extendedStatus + '\'' +
+				", extendedTime='" + extendedTime + '\'' +
+				", appendStatus='" + appendStatus + '\'' +
+				", hiddenSign='" + hiddenSign + '\'' +
+				'}';
+	}
 }

+ 1 - 1
src/main/java/com/jeeplus/modules/sg/audit/information/mapper/InformationMapper.java

@@ -67,5 +67,5 @@ public interface InformationMapper extends BaseMapper<Information> {
     List<Information> findListWord(Information entity);
 
     //通过查询条件,查询所有未完成领退料的信息
-    List<Information> findNoFinishList(List<Information> list);
+    List<Information> findNoFinishList(List<String> strings);
 }

+ 3 - 3
src/main/java/com/jeeplus/modules/sg/audit/information/mapper/xml/InformationMapper.xml

@@ -628,9 +628,9 @@
 
 	<select id="findNoFinishList" resultType="com.jeeplus.modules.sg.audit.information.entity.Information">
 		select * from sj_project_information where(firstFinish ='否' or secondFinish = '否')
-		and project_Id in(
-		<foreach collection="list" item="items" index="index"  separator=",">
-			#{items.projectId}
+		and project_id in(
+		<foreach collection="list" item="item" index="index"  separator=",">
+			#{item}
 		</foreach>
 		)
 	</select>

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/audit/information/service/InformationService.java

@@ -98,8 +98,8 @@ public class InformationService extends CrudService<InformationMapper, Informati
 		return super.findAllList(entity);
 	}
 
-	public List<Information> findNoFinishList(List<Information> list) {
-		return informationMapper.findNoFinishList(list);
+	public List<Information> findNoFinishList(List<String> strings) {
+		return informationMapper.findNoFinishList(strings);
 	}
 
 	public Page<Information> findPage(Page<Information> page, Information entity) {

+ 34 - 0
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/entity/MCompletionProject.java

@@ -0,0 +1,34 @@
+package com.jeeplus.modules.sg.financial.erpcredit.entity;
+
+/**
+ * 竣 工 工 程 财 务 决 算 表
+ */
+public class MCompletionProject {
+    private String appropriatedFunds;//上级拨入资金
+    private String vatDeduction;//、抵扣增值税
+    private String fixedAssets;//交付使用固定资产
+
+    public String getAppropriatedFunds() {
+        return appropriatedFunds;
+    }
+
+    public void setAppropriatedFunds(String appropriatedFunds) {
+        this.appropriatedFunds = appropriatedFunds;
+    }
+
+    public String getVatDeduction() {
+        return vatDeduction;
+    }
+
+    public void setVatDeduction(String vatDeduction) {
+        this.vatDeduction = vatDeduction;
+    }
+
+    public String getFixedAssets() {
+        return fixedAssets;
+    }
+
+    public void setFixedAssets(String fixedAssets) {
+        this.fixedAssets = fixedAssets;
+    }
+}

+ 1 - 1
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditChild1Mapper.java

@@ -11,5 +11,5 @@ import java.util.List;
 @MyBatisMapper
 public interface ErpCreditChild1Mapper extends BaseMapper<ErpCreditChild1> {
 
-    public List<ErpCreditChild1> findErpCreditChild1List(String[] ids);
+    public List<ErpCreditChild1> findErpCreditChild1List(List<String> strings);
 }

+ 1 - 1
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditChild2Mapper.java

@@ -15,5 +15,5 @@ import java.util.List;
 @MyBatisMapper
 public interface ErpCreditChild2Mapper extends BaseMapper<ErpCreditChild2> {
 
-    public List<ErpCreditChild2> findErpCreditChild2List(String[] ids);
+    public List<ErpCreditChild2> findErpCreditChild2List(List<String> strings);
 }

+ 1 - 1
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/ErpCreditMapper.java

@@ -13,5 +13,5 @@ import java.util.List;
 @MyBatisMapper
 public interface ErpCreditMapper extends BaseMapper<ErpCredit> {
     //查询
-    public List<ErpCredit> findErpCreditList(String[] ids);
+    public List<ErpCredit> findErpCreditList(List<String> strings);
 }

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditChild1Mapper.xml

@@ -154,8 +154,8 @@
 		FROM js_erp_credit_child1 a
 		WHERE a.del_flag = '0'
 		and a.erp_credit_id in
-		<if test="array !=null and array.length > 0">
-			<foreach collection="array" index="index" item="item" open="("
+		<if test="list != null">
+			<foreach collection="list" index="index" item="item" open="("
 					 separator="," close=")">
 				#{item}
 			</foreach>

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditChild2Mapper.xml

@@ -144,8 +144,8 @@
 		FROM js_erp_credit_child2 a
 		WHERE a.del_flag = '0'
 		and a.erp_credit_id in
-		<if test="array !=null and array.length > 0">
-			<foreach collection="array" index="index" item="item" open="("
+		<if test="list !=null">
+			<foreach collection="list" index="index" item="item" open="("
 					 separator="," close=")">
 				#{item}
 			</foreach>

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/mapper/xml/ErpCreditMapper.xml

@@ -201,8 +201,8 @@
 		FROM js_erp_credit a
 		WHERE a.del_flag = '0'
 		and a.id in
-		<if test="array !=null and array.length > 0">
-			<foreach collection="array" index="index" item="item" open="("
+		<if test="list !=null">
+			<foreach collection="list" index="index" item="item" open="("
 					 separator="," close=")">
 				#{item}
 			</foreach>

+ 77 - 14
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/service/ErpCreditService.java

@@ -7,6 +7,8 @@ import com.jeeplus.common.json.AjaxJson;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.service.CrudService;
+import com.jeeplus.modules.sg.audit.information.entity.Information;
+import com.jeeplus.modules.sg.audit.information.service.InformationService;
 import com.jeeplus.modules.sg.financial.erpcredit.entity.*;
 import com.jeeplus.modules.sg.financial.erpcredit.mapper.ErpCreditChild1Mapper;
 import com.jeeplus.modules.sg.financial.erpcredit.mapper.ErpCreditChild2Mapper;
@@ -15,6 +17,8 @@ import com.jeeplus.modules.sg.financial.erpcredit.util.ExportTemplate;
 import com.jeeplus.modules.sg.financial.erpcredit.util.ExportUtil2;
 import com.jeeplus.modules.sg.financial.settlement.entity.MaintainData;
 import com.jeeplus.modules.sg.financial.settlement.mapper.DataMaintenanceMapper;
+import org.apache.poi.hssf.usermodel.HSSFFont;
+import org.apache.poi.xssf.usermodel.XSSFFont;
 import org.apache.poi.xssf.usermodel.XSSFSheet;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -24,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
 import javax.servlet.http.HttpServletResponse;
 import java.io.*;
 import java.net.URLEncoder;
+import java.util.ArrayList;
 import java.util.List;
 
 
@@ -39,10 +44,13 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
     @Autowired
     private DataMaintenanceMapper dataMaintenanceMapper;
 
-    public List<ErpCredit> getListErpCredit(String[] ids){
-        List<ErpCredit> erpCreditList = erpCreditMapper.findErpCreditList(ids);
-        List<ErpCreditChild1> erpCreditChild1List = erpCreditChild1Mapper.findErpCreditChild1List(ids);
-        List<ErpCreditChild2> erpCreditChild2List = erpCreditChild2Mapper.findErpCreditChild2List(ids);
+    @Autowired
+    private InformationService informationService;
+
+    public List<ErpCredit> getListErpCredit(List<String> strings){
+        List<ErpCredit> erpCreditList = erpCreditMapper.findErpCreditList(strings);
+        List<ErpCreditChild1> erpCreditChild1List = erpCreditChild1Mapper.findErpCreditChild1List(strings);
+        List<ErpCreditChild2> erpCreditChild2List = erpCreditChild2Mapper.findErpCreditChild2List(strings);
         if (null!=erpCreditList&&erpCreditList.size()>0){
             for (ErpCredit erpCredit:erpCreditList){
                 if (null!=erpCreditChild1List&&erpCreditChild1List.size()>0){
@@ -135,19 +143,20 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
     }
 
     //维护表
-    public List<MaintainData> getFindListMain(String[] ids){
-        return dataMaintenanceMapper.getFindListMain(ids);
+    public List<MaintainData> getFindListMain(List<String> strings){
+        return dataMaintenanceMapper.getFindListMain(strings);
     }
 
     //导出
-    public void getExport(String[] ids, HttpServletResponse response){
-        List<ErpCredit> erpCreditList = getListErpCredit(ids);
-        List<MaintainData> maintainDatas = getFindListMain(ids);
+    public void getExport(List<String> strings, HttpServletResponse response){
+        List<ErpCredit> erpCreditList = getListErpCredit(strings);
+        List<MaintainData> maintainDatas = getFindListMain(strings);
         ExportTemplate exportTemplate = new ExportTemplate();
         File newFile = exportTemplate.createNewFile();
         // 新文件写入数据,并下载
         InputStream inputStream = null;
         XSSFWorkbook workbook = null;
+        XSSFFont font=null;
         XSSFSheet sheet1 = null;
         XSSFSheet sheet2 = null;
         XSSFSheet sheet3 = null;
@@ -155,11 +164,13 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
         XSSFSheet sheet4 = null;
         XSSFSheet sheet6=null;
         XSSFSheet sheet7=null;
+        XSSFSheet sheet8=null;
         XSSFSheet sheet10=null;
         XSSFSheet sheet11=null;
         try {
             inputStream = new FileInputStream(newFile);// 将excel文件转为输入流
             workbook = new XSSFWorkbook(inputStream);// 创建个workbook,
+            font = workbook.createFont();
             sheet1 =workbook.getSheetAt(1);
             sheet2 = workbook.getSheetAt(2);
             sheet3 = workbook.getSheetAt(3);
@@ -167,6 +178,7 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
             sheet5=workbook.getSheetAt(5);
             sheet6=workbook.getSheetAt(6);
             sheet7=workbook.getSheetAt(7);
+            sheet8=workbook.getSheetAt(8);
             sheet10=workbook.getSheetAt(10);
             sheet11=workbook.getSheetAt(11);
         } catch (Exception e1) {
@@ -178,12 +190,13 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
             ExportUtil2.getSheet1(sheet1,erpCreditList,maintainDatas);
             ExportUtil2.getSheet2(sheet2,erpCreditList,maintainDatas);
             ExportUtil2.getSheet3(sheet3,erpCreditList,maintainDatas);
-            ExportUtil2.getSheet5(sheet5,erpCreditList);
-            ExportUtil2.getSheet6(sheet6,erpCreditList);
-            ExportUtil2.getSheet7(sheet7,erpCreditList);
-            ExportUtil2.getSheet10(sheet10,erpCreditList);
-            ExportUtil2.getSheet11(sheet11,erpCreditList);
             ExportUtil2.getSheet4(sheet4,erpCreditList);
+            ExportUtil2.getSheet5(sheet5,erpCreditList,workbook);
+            ExportUtil2.getSheet6(sheet6,erpCreditList,workbook);
+            ExportUtil2.getSheet7(sheet7,erpCreditList);
+            ExportUtil2.getSheet8(sheet8,erpCreditList,maintainDatas);
+            ExportUtil2.getSheet10(sheet10,erpCreditList,workbook);
+            ExportUtil2.getSheet11(sheet11,erpCreditList,workbook);
             workbook.write(fos);
             fos.flush();
             fos.close();
@@ -215,4 +228,54 @@ public class ErpCreditService extends CrudService<ErpCreditMapper,ErpCredit> {
         // 删除创建的新文件
         // this.deleteFile(newFile);
     }
+
+    /**
+     * 判断
+     * @return
+     */
+    public List getCheck(String ids){
+        List<String> lists = new ArrayList<String>();
+        boolean flag = true;
+        String[] idArray =ids.split(",");
+        for (String str:idArray){
+            lists.add(str);
+        }
+//        List<MaintainData> maintainDatas = getFindListMain(lists);
+        List<Information> informationList = informationService.findNoFinishList(lists);
+//        if (null!=informationList&&informationList.size()>0){
+//            for (int k = 0; k < lists.size(); k++) {
+//                flag = true;
+//                for(Information information:informationList){
+//                    if (information.getProjectId().equals(lists.get(k))){
+//                        flag=false;
+//                        break;
+//                    }
+//                }
+//                if (flag){
+//                    lists.remove(k);
+//                    k--;
+//                }
+//            }
+//        }else {
+//            lists=new ArrayList<String>();
+//        }
+//        if (null!=maintainDatas&&maintainDatas.size()>0){
+//             for (int i = 0; i < lists.size(); i++) {
+//                flag=true;
+//                for (MaintainData maintainData:maintainDatas){
+//                    if (maintainData.getProjectId().equals(lists.get(i))){
+//                        flag=false;
+//                        break;
+//                    }
+//                }
+//                if (flag){
+//                    lists.remove(i);
+//                    i--;
+//                }
+//             }
+//        }else {
+//            lists=null;
+//        }
+        return lists;
+    }
 }

+ 2 - 0
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ErpInfo.java

@@ -335,6 +335,7 @@ public  class ErpInfo {
             if (erpAccount.getSubjectName().contains(ErpInfo.CON_PROJECT)){
                 //添加行项目金额 到 ErpCredit对象中的实际投资金额
                 erpCredit.setActualInvestment(actualInvestment);
+                erpCredit.setTransferAssets(actualInvestment);
             }
             //施工费:合计:入账金额 判断物料描述是否为空
             if (erpAccount.getMaterialDetails().isEmpty()) {
@@ -359,6 +360,7 @@ public  class ErpInfo {
             }
             //替换 实际投资金额
             erpCredit.setActualInvestment(actualInvestment);
+            erpCredit.setTransferAssets(actualInvestment);
         }
         //施工费:合计:入账金额 判断物料描述是否为空
         if (erpAccount.getMaterialDetails().isEmpty()) {

+ 61 - 0
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtil1.java

@@ -18,6 +18,7 @@ public class ExportUtil1 {
     public static String POWER_BOXCOUNT="160200002";
     public static String POWER_HGWCOUNT="160200003";
     public static String POWER_KGGCOUNT="160200010";
+    public static String POWER_HJ="合计";
 
     public static List<Schedule> getScheduleList(List<ErpCredit> erpCreditList,List<MaintainData> maintainDataList){
         List<Schedule> schedules = new ArrayList<Schedule>();
@@ -310,6 +311,12 @@ public class ExportUtil1 {
         Double eqmValue = 0.0;//相同项目定义号合计
         Double standInFee=0.0;//摊入费用
         Double powerDeliveredAssets=0.0;//交付知产使用价值
+        //合计
+        Double powerTenKvLineLengthAll=0.0;//10kv线路长度
+        Double buildFeeAll=0.0;//建筑费用合计
+        Double installFeeAll=0.0;//安装费用合计
+        Double standInFeeAll=0.0;//摊入费用合计
+        Double powerDeliveredAssetsAll=0.0;//交付知产使用价值合计
         for (ErpCredit erpCredit:erpCredits){
             erpCreditChild1s = erpCredit.getErpCreditChild1s();//获取集合
             if (null!=erpCreditChild1s&&erpCreditChild1s.size()>=0){
@@ -335,6 +342,7 @@ public class ExportUtil1 {
             transferOfPower1.setPowerDepartment(ExportUtil1.POWER_DEPARTMENT);//添加保管
             if (null!=erpCredit.getTenKvItsLine()) {//其中 10kv线路 10kv线路长度
                 transferOfPower1.setPowerTenKvLineLength(String.valueOf(erpCredit.getTenKvItsLine()));
+                powerTenKvLineLengthAll+=erpCredit.getTenKvItsLine();
             }
             if (null!=erpCredit.getTenKvModel()){//10kv电缆架空导线型号
                 transferOfPower1.setPowerTenKvCableType(erpCredit.getTenKvModel());
@@ -344,10 +352,12 @@ public class ExportUtil1 {
             if (null!=erpCredit.getConsBuildingFee()){//建筑费
                 transferOfPower1.setPowerBuildFee(String.valueOf(erpCredit.getConsBuildingFee()));
                 powerDeliveredAssets+=erpCredit.getConsBuildingFee();
+                buildFeeAll+=erpCredit.getConsBuildingFee();//建筑费用合计
             }
             if (null!=erpCredit.getConsInstallFee()){//安装费
                 transferOfPower1.setPowerInstallFee(String.valueOf(erpCredit.getConsInstallFee()));
                 powerDeliveredAssets+=erpCredit.getConsInstallFee();
+                installFeeAll+=erpCredit.getConsInstallFee();//建筑费用合计
             }else {
                 transferOfPower1.setPowerInstallFee("0");
             }
@@ -357,11 +367,21 @@ public class ExportUtil1 {
                 standInFee = Double.valueOf(transferOfPower1.getPowerInstallFee())/(Double.valueOf(transferOfPower1.getPowerInstallFee())+eqmNumbers);
                 transferOfPower1.setPowerStandInFee(decimalFormat.format(standInFee));
                 powerDeliveredAssets+=standInFee;
+                standInFeeAll+=standInFee;
             }
             //添加交付使用资产价值
             transferOfPower1.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssets));
+            powerDeliveredAssetsAll+=powerDeliveredAssets;//交付费用合计
             transferOfPower1s.add(transferOfPower1);//添加到集合中
         }
+        transferOfPower1 = new TransferOfPower1();
+        transferOfPower1.setPowerName(POWER_HJ);
+        transferOfPower1.setPowerTenKvLineLength(decimalFormat.format(powerTenKvLineLengthAll));
+        transferOfPower1.setPowerBuildFee(decimalFormat.format(buildFeeAll));
+        transferOfPower1.setPowerInstallFee(decimalFormat.format(installFeeAll));
+        transferOfPower1.setPowerStandInFee(decimalFormat.format(standInFeeAll));
+        transferOfPower1.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssetsAll));
+        transferOfPower1s.add(transferOfPower1);
         return transferOfPower1s;
     }
 
@@ -381,6 +401,11 @@ public class ExportUtil1 {
         Double powerInstallFee = 0.0;//安装费用(线路)
         Double powerStandInFee = 0.0;//摊入费用
         Double powerDeliveredAssets=0.0;//交付使用资产价值
+        //合计
+        Double eqmNumbersAll = 0.0;//数量合计
+        Double powerValueAll=0.0;//价值合计
+        Double powerStandInFeeAll=0.0;//摊入费用
+        Double powerDeliveredAssetsAll=0.0;//交付使用资产价值
         for (ErpCredit erpCredit:erpCredits){
             erpCreditChild1s = erpCredit.getErpCreditChild1s();//得到集合
             //得到安装费用
@@ -405,6 +430,7 @@ public class ExportUtil1 {
                     transferOfPower2.setPowerDepartment(ExportUtil1.POWER_DEPARTMENT);//添加保管
                     if (null!=erpCreditChild1.getEqmNumbers()){//得到配变数量
                         transferOfPower2.setPowerNumber(decimalFormat1.format(erpCreditChild1.getEqmNumbers()));
+                        eqmNumbersAll+=erpCreditChild1.getEqmNumbers();
                     }
                     if (null!=erpCreditChild1.getEqmUnit()){//计量单位
                         transferOfPower2.setPowerUnit(erpCreditChild1.getEqmUnit());
@@ -416,16 +442,19 @@ public class ExportUtil1 {
                         powerValue=erpCreditChild1.getEqmBookedFee1()+eqmNumbers;
                         transferOfPower2.setPowerValue(decimalFormat.format(powerValue));
                         powerDeliveredAssets +=powerValue;
+                        powerValueAll+=powerValue;//合计
                     }else {
                         powerValue=erpCreditChild1.getEqmBookedFee1();
                         transferOfPower2.setPowerValue(decimalFormat.format(powerValue));
                         powerDeliveredAssets+=powerValue;
+                        powerValueAll+=powerValue;//合计
                     }
                     //计算摊入费用
                     if (erpCredit.getConsBuildingFee()!=null&&erpCredit.getConsBuildingFee()!=0){
                         powerStandInFee=Double.parseDouble(transferOfPower2.getPowerValue())/(Double.parseDouble(transferOfPower2.getPowerValue())+powerInstallFee)*erpCredit.getConsBuildingFee();
                         transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFee));
                         powerDeliveredAssets+=powerStandInFee;
+                        powerStandInFeeAll+=powerStandInFee;
                     }else {
                         transferOfPower2.setPowerStandInFee("0");
                     }
@@ -443,10 +472,18 @@ public class ExportUtil1 {
                         transferOfPower2.setPowerAssetClass(POWER_KGGCOUNT);
                     }
                     transferOfPower2.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssets));//交付使用资产价值
+                    powerDeliveredAssetsAll+=powerDeliveredAssets;
                     transferOfPower2s.add(transferOfPower2);
                 }
             }
         }
+        transferOfPower2 = new TransferOfPower2();
+        transferOfPower2.setPowerName(POWER_HJ);
+        transferOfPower2.setPowerNumber(decimalFormat1.format(eqmNumbersAll));//配电数量
+        transferOfPower2.setPowerValue(decimalFormat.format(powerValueAll));//计量价值
+        transferOfPower2.setPowerStandInFee(decimalFormat.format(powerStandInFeeAll));//摊入费用
+        transferOfPower2.setPowerDeliveredAssets(decimalFormat.format(powerDeliveredAssetsAll));//交付使用资产价值
+        transferOfPower2s.add(transferOfPower2);
         return transferOfPower2s;
     }
     //概况表
@@ -579,4 +616,28 @@ public class ExportUtil1 {
         theAssetsTotals.add(theAssetsTotal2);
         return theAssetsTotals;
     }
+    //竣 工 工 程 财 务 决 算 表
+    public static MCompletionProject getMCompletionProject(List<ErpCredit> erpCredits,List<MaintainData> maintainDataList){
+        DecimalFormat decimalFormat   = new DecimalFormat("#0.00");
+        MCompletionProject mCompletionProject = new MCompletionProject();
+        Double appropriatedFunds=0.0;//上级拨入资金
+        Double vatDeduction=0.0;//、抵扣增值税
+        Double fixedAssets=0.0;//交付使用固定资产
+        for (ErpCredit erpCredit:erpCredits){
+            if (null!=erpCredit.getActualInvestment()){
+                appropriatedFunds+=erpCredit.getActualInvestment();
+            }
+            if (null!=erpCredit.getTheInputTax()){
+                vatDeduction+=erpCredit.getTheInputTax();
+            }
+        }
+        for (MaintainData maintainData:maintainDataList){
+            fixedAssets+=maintainData.getDesignFee()+maintainData.getSupervisionFee()+maintainData.getPreliminaryWorkFee()
+                    +maintainData.getDamages()+maintainData.getManagementFee();
+        }
+        mCompletionProject.setAppropriatedFunds(decimalFormat.format(appropriatedFunds));
+        mCompletionProject.setFixedAssets(decimalFormat.format(fixedAssets));
+        mCompletionProject.setVatDeduction(decimalFormat.format(vatDeduction));
+        return mCompletionProject;
+    }
 }

+ 100 - 66
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/util/ExportUtil2.java

@@ -2,10 +2,14 @@ package com.jeeplus.modules.sg.financial.erpcredit.util;
 
 import com.jeeplus.modules.sg.financial.erpcredit.entity.*;
 import com.jeeplus.modules.sg.financial.settlement.entity.MaintainData;
+import org.apache.poi.hssf.usermodel.HSSFFont;
 import org.apache.poi.hssf.util.HSSFColor;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.xssf.usermodel.XSSFCell;
+import org.apache.poi.xssf.usermodel.XSSFFont;
 import org.apache.poi.xssf.usermodel.XSSFRow;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -20,11 +24,11 @@ public class ExportUtil2 {
             XSSFRow row = (XSSFRow) sheet.getRow(0);
             XSSFCell cell = row.getCell(3);
             List<Schedule> scheduleList = ExportUtil1.getScheduleList(erpCredits, maintainDataList);
-            for (int i = 1; i <=scheduleList.size(); i++) {
+            for (int i = 0; i <scheduleList.size(); i++) {
                 schedule = scheduleList.get(i);
-                row=(XSSFRow)sheet.getRow(i+5);
+                row=(XSSFRow)sheet.getRow(i+6);
                 cell=row.getCell(0);
-                cell.setCellValue(i);
+                cell.setCellValue(i+1);
                 cell=row.getCell(1);
                 cell.setCellValue(schedule.getItemId());
                 cell=row.getCell(2);
@@ -93,8 +97,9 @@ public class ExportUtil2 {
        }
    }
    //移交资产—配电网资产一览表(线路)
-   public static void getSheet5(Sheet sheet,List<ErpCredit> erpCredits){
+   public static void getSheet5(Sheet sheet, List<ErpCredit> erpCredits, XSSFWorkbook workbook){
        if (null!=sheet){
+           CellStyle style=getCellStyle(workbook);
            XSSFRow row = (XSSFRow) sheet.getRow(0);
            XSSFCell cell = row.getCell(0);
            TransferOfPower1 transferOfPower1 = null;
@@ -104,32 +109,61 @@ public class ExportUtil2 {
                row = (XSSFRow) sheet.getRow((int)i+5);
                cell=row.getCell(0);
                cell.setCellValue(transferOfPower1.getPowerId());
+               if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                cell=row.getCell(1);
                cell.setCellValue(transferOfPower1.getPowerName());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(2);
                cell.setCellValue(transferOfPower1.getPowerArea());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(3);
                cell.setCellValue(transferOfPower1.getPowerDepartment());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(4);
                cell.setCellValue(transferOfPower1.getPowerTenKvLineLength());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(5);
                cell.setCellValue(transferOfPower1.getPowerTenKvCableType());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(6);
                cell.setCellValue(transferOfPower1.getPowerBuildFee());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(7);
                cell.setCellValue(transferOfPower1.getPowerInstallFee());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(8);
                cell.setCellValue(transferOfPower1.getPowerStandInFee());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(9);
                cell.setCellValue(transferOfPower1.getPowerDeliveredAssets());
+               if (i == transferOfPower1s.size() - 1){
+                   cell.setCellStyle(style);
+               }
                cell=row.getCell(10);
                cell.setCellValue(transferOfPower1.getPoweRequipmentFee());
            }
        }
    }
    //移交资产—配电网资产一览表(设备)
-   public static void getSheet6(Sheet sheet,List<ErpCredit> erpCredits){
+   public static void getSheet6(Sheet sheet,List<ErpCredit> erpCredits,Workbook workbook){
       if (sheet!=null){
+          CellStyle style=getCellStyle(workbook);
           XSSFRow row = (XSSFRow) sheet.getRow(0);
           XSSFCell cell = row.getCell(0);
           TransferOfPower2 transferOfPower2 = null;
@@ -139,26 +173,37 @@ public class ExportUtil2 {
               row = (XSSFRow) sheet.getRow((int)i+5);
               cell=row.getCell(0);
               cell.setCellValue(transferOfPower2.getPowerId());//项目定义编号
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(1);
               cell.setCellValue(transferOfPower2.getPowerName());//配电网资产名称
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(2);
               cell.setCellValue(transferOfPower2.getPowerArea());////线路起止地点或配变所在滴
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(3);
               cell.setCellValue(transferOfPower2.getPowerDepartment());//保管部门
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(4);
               cell.setCellValue(transferOfPower2.getPowerNumber());//配变数量
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(5);
               cell.setCellValue(transferOfPower2.getPowerUnit());//计量单位
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(6);
               cell.setCellValue(transferOfPower2.getPowerCapacity());//配变容量
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(7);
               cell.setCellValue(transferOfPower2.getPowerValue());//设备价值
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(8);
               cell.setCellValue(transferOfPower2.getPowerStandInFee());//摊入费用
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(9);
               cell.setCellValue(transferOfPower2.getPowerDeliveredAssets());//交付使用资产价值
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
               cell=row.getCell(10);
               cell.setCellValue(transferOfPower2.getPoweRequipmentFee());//其中:附属设备价值
+              if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
           }
       }
    }
@@ -193,8 +238,9 @@ public class ExportUtil2 {
     }
 
     //移交资产—配电网资产一览表(线路)1
-    public static void getSheet10(Sheet sheet,List<ErpCredit> erpCredits){
+    public static void getSheet10(Sheet sheet,List<ErpCredit> erpCredits,Workbook workbook){
         if (null!=sheet){
+            CellStyle style=getCellStyle(workbook);
             XSSFRow row = (XSSFRow) sheet.getRow(0);
             XSSFCell cell = row.getCell(0);
             TransferOfPower1 transferOfPower1 = null;
@@ -206,34 +252,47 @@ public class ExportUtil2 {
                 cell.setCellValue(transferOfPower1.getPowerId());
                 cell=row.getCell(1);
                 cell.setCellValue(transferOfPower1.getPowerName());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(2);
                 cell.setCellValue(transferOfPower1.getPowerNumberBars());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(3);
                 cell.setCellValue(transferOfPower1.getPowerAssetClass());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(4);
                 cell.setCellValue(transferOfPower1.getPowerArea());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(5);
                 cell.setCellValue(transferOfPower1.getPowerDepartment());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(6);
                 cell.setCellValue(transferOfPower1.getPowerTenKvLineLength());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(7);
                 cell.setCellValue(transferOfPower1.getPowerTenKvCableType());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(8);
                 cell.setCellValue(transferOfPower1.getPowerBuildFee());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(9);
                 cell.setCellValue(transferOfPower1.getPowerInstallFee());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(10);
                 cell.setCellValue(transferOfPower1.getPowerStandInFee());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(11);
                 cell.setCellValue(transferOfPower1.getPowerDeliveredAssets());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
                 cell=row.getCell(12);
                 cell.setCellValue(transferOfPower1.getPoweRequipmentFee());
+                if (i == transferOfPower1s.size() - 1){ cell.setCellStyle(style); }
             }
         }
     }
     //移交资产—配电网资产一览表(设备)2
-    public static void getSheet11(Sheet sheet,List<ErpCredit> erpCredits){
+    public static void getSheet11(Sheet sheet,List<ErpCredit> erpCredits,Workbook workbook){
         if (sheet!=null){
+            CellStyle style=getCellStyle(workbook);
             XSSFRow row = (XSSFRow) sheet.getRow(0);
             XSSFCell cell = row.getCell(0);
             TransferOfPower2 transferOfPower2 = null;
@@ -248,26 +307,37 @@ public class ExportUtil2 {
                 cell.setCellValue(transferOfPower2.getPowerId());//项目定义编号
                 cell=row.getCell(1);
                 cell.setCellValue(transferOfPower2.getPowerName());//配电网资产名称
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(2);
                 cell.setCellValue(transferOfPower2.getPowerAssetClass());
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(3);
                 cell.setCellValue(transferOfPower2.getPowerArea());////线路起止地点或配变所在滴
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(4);
                 cell.setCellValue(transferOfPower2.getPowerDepartment());//保管部门
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(5);
                 cell.setCellValue(transferOfPower2.getPowerNumber());//配变数量
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(6);
                 cell.setCellValue(transferOfPower2.getPowerUnit());//计量单位
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(7);
                 cell.setCellValue(transferOfPower2.getPowerCapacity());//配变容量
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(8);
                 cell.setCellValue(transferOfPower2.getPowerValue());//设备价值
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(9);
                 cell.setCellValue(transferOfPower2.getPowerStandInFee());//摊入费用
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(10);
                 cell.setCellValue(transferOfPower2.getPowerDeliveredAssets());//交付使用资产价值
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
                 cell=row.getCell(11);
                 cell.setCellValue(transferOfPower2.getPoweRequipmentFee());//其中:附属设备价值
+                if (i == transferOfPower2s.size() - 1){ cell.setCellStyle(style);}
             }
         }
     }
@@ -336,65 +406,29 @@ public class ExportUtil2 {
            }
        }
     }
-    private static Map<String, CellStyle> createStyles(Workbook wb) {
-        Map<String, CellStyle> styles = new HashMap<String, CellStyle>();
-
-        CellStyle style = wb.createCellStyle();
-        style.setAlignment(CellStyle.ALIGN_CENTER);
-        style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);
-        Font titleFont = wb.createFont();
-        titleFont.setFontName("Arial");
-        titleFont.setFontHeightInPoints((short) 16);
-        titleFont.setBoldweight(Font.BOLDWEIGHT_BOLD);
-        style.setFont(titleFont);
-        styles.put("title", style);
-
-        style = wb.createCellStyle();
-        style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);
-        style.setBorderRight(CellStyle.BORDER_THIN);
-        style.setRightBorderColor(IndexedColors.GREY_50_PERCENT.getIndex());
-        style.setBorderLeft(CellStyle.BORDER_THIN);
-        style.setLeftBorderColor(IndexedColors.GREY_50_PERCENT.getIndex());
-        style.setBorderTop(CellStyle.BORDER_THIN);
-        style.setTopBorderColor(IndexedColors.GREY_50_PERCENT.getIndex());
-        style.setBorderBottom(CellStyle.BORDER_THIN);
-        style.setBottomBorderColor(IndexedColors.GREY_50_PERCENT.getIndex());
-        Font dataFont = wb.createFont();
-        dataFont.setFontName("Arial");
-        dataFont.setFontHeightInPoints((short) 10);
-        style.setFont(dataFont);
-        styles.put("data", style);
-
-        style = wb.createCellStyle();
-        style.cloneStyleFrom(styles.get("data"));
-        style.setAlignment(CellStyle.ALIGN_LEFT);
-        styles.put("data1", style);
-
-        style = wb.createCellStyle();
-        style.cloneStyleFrom(styles.get("data"));
-        style.setAlignment(CellStyle.ALIGN_CENTER);
-        styles.put("data2", style);
-
-        style = wb.createCellStyle();
-        style.cloneStyleFrom(styles.get("data"));
-        style.setAlignment(CellStyle.ALIGN_RIGHT);
-        styles.put("data3", style);
-
-        style = wb.createCellStyle();
-        style.cloneStyleFrom(styles.get("data"));
-//		style.setWrapText(true);
-        style.setAlignment(CellStyle.ALIGN_CENTER);
-        style.setFillForegroundColor(IndexedColors.GREY_50_PERCENT.getIndex());
-        style.setFillPattern(CellStyle.SOLID_FOREGROUND);
-        Font headerFont = wb.createFont();
-        headerFont.setFontName("Arial");
-        headerFont.setFontHeightInPoints((short) 10);
-        headerFont.setBoldweight(Font.BOLDWEIGHT_BOLD);
-        headerFont.setColor(IndexedColors.BLACK.getIndex());
-        style.setFont(headerFont);
-        style.setFillForegroundColor(HSSFColor.WHITE.index);
-        styles.put("header", style);
+    public static void getSheet8(Sheet sheet,List<ErpCredit> erpCredits,List<MaintainData> maintainDataList){
+        if (null!=sheet){
+            XSSFRow row = (XSSFRow) sheet.getRow(0);
+            XSSFCell cell = row.getCell(0);
+            MCompletionProject mCompletionProject = ExportUtil1.getMCompletionProject(erpCredits,maintainDataList);
+            row = (XSSFRow) sheet.getRow(6);
+            cell=row.getCell(5);
+            cell.setCellValue(mCompletionProject.getFixedAssets());
+            row = (XSSFRow) sheet.getRow(11);
+            cell=row.getCell(5);
+            cell.setCellValue(mCompletionProject.getVatDeduction());
 
-        return styles;
+            row = (XSSFRow) sheet.getRow(15);
+            cell=row.getCell(2);
+            cell.setCellValue(mCompletionProject.getAppropriatedFunds());
+        }
+    }
+    public static CellStyle getCellStyle(Workbook workbook){
+        XSSFFont font = (XSSFFont) workbook.createFont();
+        font.setFontHeightInPoints((short) 12);//设置字体大小
+        font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
+        CellStyle style=workbook.createCellStyle();
+        style.setFont(font);
+        return style;
     }
 }

+ 9 - 3
src/main/java/com/jeeplus/modules/sg/financial/erpcredit/web/ErpCreditController.java

@@ -9,6 +9,8 @@ import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.common.utils.excel.ExportExcel;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.web.BaseController;
+import com.jeeplus.modules.sg.audit.information.entity.Information;
+import com.jeeplus.modules.sg.audit.information.service.InformationService;
 import com.jeeplus.modules.sg.financial.erpcredit.entity.*;
 import com.jeeplus.modules.sg.financial.erpcredit.service.ErpCreditService;
 import com.jeeplus.modules.sg.financial.erpcredit.util.ErpInfo;
@@ -50,7 +52,6 @@ public class ErpCreditController extends BaseController {
 	@Autowired
 	private ErpCreditService erpCreditService;
 
-
 	@ModelAttribute
 	public ErpCredit get(@RequestParam(required=false) String id) {
 		ErpCredit entity = null;
@@ -155,9 +156,14 @@ public class ErpCreditController extends BaseController {
 	@RequestMapping(value = "export")
 	public AjaxJson exportFile(String ids, HttpServletRequest request, HttpServletResponse response){
 		AjaxJson j = new AjaxJson();
-		String idArray[] =ids.split(",");
+		List<String> strings = erpCreditService.getCheck(ids);
+		if (null==strings&&strings.size()<=0){
+			j.setSuccess(false);
+			j.setMsg("导出失败!失败信:"+"不符合条件");
+			return j;
+		}
 		try {
-			erpCreditService.getExport(idArray,response);
+			erpCreditService.getExport(strings,response);
 			j.setSuccess(true);
 			j.setMsg("导出成功!");
 		}catch (Exception e){

+ 1 - 1
src/main/java/com/jeeplus/modules/sg/financial/settlement/mapper/DataMaintenanceMapper.java

@@ -15,5 +15,5 @@ import java.util.List;
 public interface DataMaintenanceMapper extends BaseMapper<MaintainData> {
 	int insertList(@Param("list") List<MaintainData> list);
 	void deleteData(String projectId);
-	List<MaintainData> getFindListMain(String[] ids);
+	List<MaintainData> getFindListMain(List<String> strings);
 }

+ 2 - 2
src/main/java/com/jeeplus/modules/sg/financial/settlement/mapper/xml/DataMaintenanceMapper.xml

@@ -254,8 +254,8 @@
 		FROM js_maintain_data a
 		WHERE a.del_flag = '0'
 		and a.project_id in
-		<if test="array !=null and array.length > 0">
-			<foreach collection="array" index="index" item="item" open="("
+		<if test="list!=null">
+			<foreach collection="list" index="index" item="item" open="("
 					 separator="," close=")">
 				#{item}
 			</foreach>

BIN
src/main/resources/freemarker/excelmodel/竣工决算模板.xlsx