Forráskód Böngészése

储备流程修改

wangqiang 1 éve
szülő
commit
74073375a3
16 módosított fájl, 979 hozzáadás és 247 törlés
  1. 1 1
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/distribution/web/DistributionNetworkController.java
  2. 37 0
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/entity/ReserveSummary.java
  3. 11 2
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/mapper/xml/SummaryStatisticMapper.xml
  4. 11 1
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/service/ReserveSummaryProcessService.java
  5. 42 33
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/utils/ReserveProcessProjectExportUtil.java
  6. 14 12
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/utils/ReserveProcessProjectProUtil.java
  7. 19 3
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/web/ProcessController.java
  8. 299 97
      src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/web/SummaryStatisticController.java
  9. 143 4
      src/main/java/com/jeeplus/modules/sg/picking/activiti/web/ShowListController.java
  10. BIN
      src/main/resources/freemarker/excelmodel/summaryStatistics.xlsx
  11. 0 4
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/distribution/process/designUnitFile.jsp
  12. 4 6
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/designUnit.jsp
  13. 234 0
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/importProcessTest.jsp
  14. 7 1
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementInformation.js
  15. 87 41
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementModifyByzz.jsp
  16. 70 42
      src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementView.jsp

+ 1 - 1
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/distribution/web/DistributionNetworkController.java

@@ -226,7 +226,7 @@ public class DistributionNetworkController extends BaseController {
             j.setMsg(errMsg);
             return j;
         }
-        if (StringUtils.isBlank(reserveManagement.getReserStatus()) || !reserveManagement.getReserStatus().equals("2")){
+        if (StringUtils.isBlank(reserveManagement.getReserStatus()) || reserveManagement.getReserStatus().equals("2")){
             j.setSuccess(false);
             j.setMsg("该项目储备流程未结束,无法发起问题发起流程!");
             return j;

+ 37 - 0
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/entity/ReserveSummary.java

@@ -31,11 +31,16 @@ public class ReserveSummary extends DataEntity<ReserveSummary> {
     private String projectType;              //项目类型
     private String costEstimate;             //费用估算
 
+    private String requester;                //需求提报人
+    private String ownerReserveProjectManagre; //业主储备项目经理
+    private String designer;                 //设计人员
+
     private String reserveProgress;          //储备进度
     private String includeReserve;           //是否纳入储备
     private String reasonForCancel;          //取消原因说明
     private String startDesignOrNot;         //是否启动设计
 
+    private String disclosureMethod;        //交底方式
     private String completeDisclose;        //是否完成交底
     private String completeDiscloseTime;    //交底完成时间
     private String comprehensiveProject;     //项目综合可实施性
@@ -222,6 +227,30 @@ public class ReserveSummary extends DataEntity<ReserveSummary> {
         this.costEstimate = costEstimate;
     }
 
+    public String getRequester() {
+        return requester;
+    }
+
+    public void setRequester(String requester) {
+        this.requester = requester;
+    }
+
+    public String getOwnerReserveProjectManagre() {
+        return ownerReserveProjectManagre;
+    }
+
+    public void setOwnerReserveProjectManagre(String ownerReserveProjectManagre) {
+        this.ownerReserveProjectManagre = ownerReserveProjectManagre;
+    }
+
+    public String getDesigner() {
+        return designer;
+    }
+
+    public void setDesigner(String designer) {
+        this.designer = designer;
+    }
+
     public String getReserveProgress() {
         return reserveProgress;
     }
@@ -254,6 +283,14 @@ public class ReserveSummary extends DataEntity<ReserveSummary> {
         this.startDesignOrNot = startDesignOrNot;
     }
 
+    public String getDisclosureMethod() {
+        return disclosureMethod;
+    }
+
+    public void setDisclosureMethod(String disclosureMethod) {
+        this.disclosureMethod = disclosureMethod;
+    }
+
     public String getCompleteDisclose() {
         return completeDisclose;
     }

+ 11 - 2
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/mapper/xml/SummaryStatisticMapper.xml

@@ -26,7 +26,11 @@
 		a.requirementType,
 		a.costEstimate,
 		a.basicRemarks,
+		a.requester,
+		a.ownerReserveProjectManagre,
+		a.designer,
 		b.startDesignOrNot as startDesignOrNot,
+		b.disclosureMethod as disclosureMethod,
 		b.completeDisclose as completeDisclose,
 		b.completeDiscloseTime as completeDiscloseTime,
 		IFNULL(b.includeReserve,"") as includeReserve,
@@ -58,6 +62,7 @@
 		includeReserve,
 		reasonForCancel,
 		startDesignOrNot,
+		disclosureMethod,
 		completeDisclose,
 		completeDiscloseTime,
 		comprehensiveProject,
@@ -81,6 +86,7 @@
             #{includeReserve},
             #{reasonForCancel},
             #{startDesignOrNot},
+            #{disclosureMethod},
             #{completeDisclose},
 		    #{completeDiscloseTime},
             #{comprehensiveProject},
@@ -106,6 +112,7 @@
         includeReserve,
         reasonForCancel,
         startDesignOrNot,
+        disclosureMethod,
         completeDisclose,
         completeDiscloseTime,
         comprehensiveProject,
@@ -130,6 +137,7 @@
             #{item.includeReserve},
             #{item.reasonForCancel},
             #{item.startDesignOrNot},
+            #{item.disclosureMethod},
             #{item.completeDisclose},
             #{item.completeDiscloseTime},
             #{item.comprehensiveProject},
@@ -153,6 +161,7 @@
         includeReserve = #{includeReserve},
         reasonForCancel = #{reasonForCancel},
         startDesignOrNot = #{startDesignOrNot},
+        disclosureMethod = #{disclosureMethod},
         completeDisclose = #{completeDisclose},
         completeDiscloseTime = #{completeDiscloseTime},
         comprehensiveProject = #{comprehensiveProject},
@@ -267,7 +276,7 @@
     </select>
     <select id="getAllCode"
             resultType="com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.entity.ReserveSummary">
-        select a.projectReserveId,includeReserve,processStatus,startDesignOrNot from cg_reserve_summary_statistics a
+        select a.projectReserveId,includeReserve,processStatus,startDesignOrNot,disclosureMethod, from cg_reserve_summary_statistics a
         left join cg_reserve_process b on a.projectReserveId = b.projectReserveId
     </select>
     <select id="getByProId"
@@ -276,7 +285,7 @@
     </select>
     <select id="getCodeByProId"
             resultType="com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.entity.ReserveSummary">
-        select a.projectReserveId,includeReserve,processStatus,startDesignOrNot from cg_reserve_summary_statistics a
+        select a.projectReserveId,includeReserve,processStatus,startDesignOrNot,disclosureMethod from cg_reserve_summary_statistics a
         left join cg_reserve_process b on a.projectReserveId = b.projectReserveId
         where b.projectReserveId = #{projectReserveId}
     </select>

+ 11 - 1
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/service/ReserveSummaryProcessService.java

@@ -11,6 +11,7 @@ import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.entity.*;
 import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.mapper.FeedBackBudgetMapper;
 import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.mapper.ReserveProcessProjectMapper;
 import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.mapper.ReserveSummaryProcessMapper;
+import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.utils.ReserveRedisUtils;
 import com.jeeplus.modules.sg.managementcenter.activiti.utils.MyActiviUtils;
 import com.jeeplus.modules.sg.managementcenter.materialinfo.entity.MaterialInfo;
 import com.jeeplus.modules.sg.managementcenter.materialinfo.util.MaterialInfoUtil;
@@ -24,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
+import redis.clients.jedis.Jedis;
 
 import java.io.IOException;
 import java.text.DateFormat;
@@ -143,16 +145,24 @@ public class ReserveSummaryProcessService extends CrudService<ReserveSummaryProc
      *在年度物资上报统计表中保存项目信息,在年度上报明细表中保存物资信息
      */
     @Transactional(readOnly = false)
-    public void saveData(MultipartFile file,String projectReserveId) throws IOException, InvalidFormatException {
+    public void saveData(MultipartFile file,String projectReserveId,String proName) throws IOException, InvalidFormatException {
         ImportExcel module = new ImportExcel(file,1,"模块表");
         Row row = module.getRow(0);
         Object obj = module.getCellValue(row, 1);
         if(obj==null){
             throw new RuntimeException("找不到项目名称!");
         }
+
         String projectName = ((String) obj).trim();
+        if (!proName.equals(projectName)){
+            throw new RuntimeException("上传文件的项目名称与改流程的项目名称不匹配!");
+        }
         //删除对应项目名称的甲供材信息
         mapper.deleteMaterial(projectName);
+        //清空redis中的在线开甲供材信息
+        Jedis jedis = ReserveRedisUtils.getJedis();
+        jedis.del(projectReserveId);
+
         ImportExcel pick = new ImportExcel(file,7,"领料清单");
         List<MaterialInfo> materialInfos = MaterialInfoUtil.getCbData(pick,projectName);   //获取领料清单数据
         List<MaterialInfo> materialInfoList = new ArrayList<>();

+ 42 - 33
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/utils/ReserveProcessProjectExportUtil.java

@@ -760,23 +760,28 @@ public class ReserveProcessProjectExportUtil {
                 Cell cell20 = crateCell(workbook,row,20); //项目类型
                 Cell cell21 = crateCell(workbook,row,21); //费用估算
 
-                Cell cell22 = crateCell(workbook,row,22); //储备进度
-                Cell cell23 = crateCell(workbook,row,23); //是否纳入储备
-                Cell cell24 = crateCell(workbook,row,24); //取消原因说明
-                Cell cell25 = crateCell(workbook,row,25); //是否启动设计
-
-                Cell cell26 = crateCell(workbook,row,26); //是否完成交底
-                Cell cell27 = crateCell(workbook,row,27); //交底完成时间
-                Cell cell28 = crateCell(workbook,row,28); //项目综合可实施性
-                Cell cell29 = crateCell(workbook,row,29); //政处难度
-                Cell cell30 = crateCell(workbook,row,30); //政处描述
-                Cell cell31 = crateCell(workbook,row,31); //停电难度
-                Cell cell32 = crateCell(workbook,row,32); //停电描述
-                Cell cell33 = crateCell(workbook,row,33); //其他问题难度
-                Cell cell34 = crateCell(workbook,row,34); //其他问题描述
-                Cell cell35 = crateCell(workbook,row,35); //是否需重跑方案
-                Cell cell36 = crateCell(workbook,row,36); //方案变更说明
-                Cell cell37 = crateCell(workbook,row,37); //储备项目交底信息-备注
+                Cell cell22 = crateCell(workbook,row,22); //需求提报人
+                Cell cell23 = crateCell(workbook,row,23); //业主储备项目经理
+                Cell cell24 = crateCell(workbook,row,24); //设计人员
+
+                Cell cell25 = crateCell(workbook,row,25); //储备进度
+                Cell cell26 = crateCell(workbook,row,26); //是否纳入储备
+                Cell cell27 = crateCell(workbook,row,27); //取消原因说明
+                Cell cell28 = crateCell(workbook,row,28); //是否启动设计
+
+                Cell cell29 = crateCell(workbook,row,29); //交底方式
+                Cell cell30 = crateCell(workbook,row,30); //是否完成交底
+                Cell cell31 = crateCell(workbook,row,31); //交底完成时间
+                Cell cell32 = crateCell(workbook,row,32); //项目综合可实施性
+                Cell cell33 = crateCell(workbook,row,33); //政处难度
+                Cell cell34 = crateCell(workbook,row,34); //政处描述
+                Cell cell35 = crateCell(workbook,row,35); //停电难度
+                Cell cell36 = crateCell(workbook,row,36); //停电描述
+                Cell cell37 = crateCell(workbook,row,37); //其他问题难度
+                Cell cell38 = crateCell(workbook,row,38); //其他问题描述
+                Cell cell39 = crateCell(workbook,row,39); //是否需重跑方案
+                Cell cell40 = crateCell(workbook,row,40); //方案变更说明
+                Cell cell41 = crateCell(workbook,row,41); //储备项目交底信息-备注
 
                 ReserveSummary reserveManagement = list.get(i);
 
@@ -806,22 +811,26 @@ public class ReserveProcessProjectExportUtil {
                 if(StringUtils.isNotBlank(costEstimateStr)){
                     cell21.setCellValue(Double.parseDouble(costEstimateStr));
                 }
-                cell22.setCellValue(reserveManagement.getReserveProgress());
-                cell23.setCellValue(reserveManagement.getIncludeReserve());
-                cell24.setCellValue(reserveManagement.getReasonForCancel());
-                cell25.setCellValue(reserveManagement.getStartDesignOrNot());
-                cell26.setCellValue(reserveManagement.getCompleteDisclose());
-                cell27.setCellValue(reserveManagement.getCompleteDiscloseTime());
-                cell28.setCellValue(reserveManagement.getComprehensiveProject());
-                cell29.setCellValue(reserveManagement.getOfficeDifficulty());
-                cell30.setCellValue(reserveManagement.getOfficeProgress());
-                cell31.setCellValue(reserveManagement.getPowerFailureDifficulty());
-                cell32.setCellValue(reserveManagement.getPowerFailureDescribe());
-                cell33.setCellValue(reserveManagement.getOtherProblemDifficulty());
-                cell34.setCellValue(reserveManagement.getOtherProblemDescribe());
-                cell35.setCellValue(reserveManagement.getRunPlanRequire());
-                cell36.setCellValue(reserveManagement.getProgramChangeDescription());
-                cell37.setCellValue(reserveManagement.getDiscloseRemarks());
+                cell22.setCellValue(reserveManagement.getRequester());
+                cell23.setCellValue(reserveManagement.getOwnerReserveProjectManagre());
+                cell24.setCellValue(reserveManagement.getDesigner());
+                cell25.setCellValue(reserveManagement.getReserveProgress());
+                cell26.setCellValue(reserveManagement.getIncludeReserve());
+                cell27.setCellValue(reserveManagement.getReasonForCancel());
+                cell28.setCellValue(reserveManagement.getStartDesignOrNot());
+                cell29.setCellValue(reserveManagement.getDisclosureMethod());
+                cell30.setCellValue(reserveManagement.getCompleteDisclose());
+                cell31.setCellValue(reserveManagement.getCompleteDiscloseTime());
+                cell32.setCellValue(reserveManagement.getComprehensiveProject());
+                cell33.setCellValue(reserveManagement.getOfficeDifficulty());
+                cell34.setCellValue(reserveManagement.getOfficeProgress());
+                cell35.setCellValue(reserveManagement.getPowerFailureDifficulty());
+                cell36.setCellValue(reserveManagement.getPowerFailureDescribe());
+                cell37.setCellValue(reserveManagement.getOtherProblemDifficulty());
+                cell38.setCellValue(reserveManagement.getOtherProblemDescribe());
+                cell39.setCellValue(reserveManagement.getRunPlanRequire());
+                cell40.setCellValue(reserveManagement.getProgramChangeDescription());
+                cell41.setCellValue(reserveManagement.getDiscloseRemarks());
             }
 
             String str = URLEncoder.encode("储备项目交底信息统计表.xlsx", "UTF8");

+ 14 - 12
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/utils/ReserveProcessProjectProUtil.java

@@ -561,19 +561,21 @@ public class ReserveProcessProjectProUtil {
                 //和基本信息表对比      是否无对应数据
                 getBmList2(proIdList2,reserveManagement.getProjectReserveId());
 
-                reserveManagement.setIncludeReserve((String) importUtil.getCellValue(row,23));
-                reserveManagement.setReasonForCancel((String) importUtil.getCellValue(row,24));
-                reserveManagement.setStartDesignOrNot((String) importUtil.getCellValue(row,25));
-                reserveManagement.setCompleteDisclose((String) importUtil.getCellValue(row,26));
-                reserveManagement.setCompleteDiscloseTime((String) importUtil.getCellValue(row,27));
+                reserveManagement.setIncludeReserve((String) importUtil.getCellValue(row,26));
+                reserveManagement.setReasonForCancel((String) importUtil.getCellValue(row,27));
+                reserveManagement.setStartDesignOrNot((String) importUtil.getCellValue(row,28));
+
+                reserveManagement.setDisclosureMethod((String) importUtil.getCellValue(row,29));
+                reserveManagement.setCompleteDisclose((String) importUtil.getCellValue(row,30));
+                reserveManagement.setCompleteDiscloseTime((String) importUtil.getCellValue(row,31));
                 reserveManagement.setComprehensiveProject("");
-                reserveManagement.setPowerFailureDifficulty((String) importUtil.getCellValue(row,31));
-                reserveManagement.setPowerFailureDescribe((String) importUtil.getCellValue(row,32));
-                reserveManagement.setOtherProblemDifficulty((String) importUtil.getCellValue(row,33));
-                reserveManagement.setOtherProblemDescribe((String) importUtil.getCellValue(row,34));
-                reserveManagement.setRunPlanRequire((String) importUtil.getCellValue(row,35));
-                reserveManagement.setProgramChangeDescription((String) importUtil.getCellValue(row,36));
-                reserveManagement.setDiscloseRemarks((String) importUtil.getCellValue(row,37));
+                reserveManagement.setPowerFailureDifficulty((String) importUtil.getCellValue(row,35));
+                reserveManagement.setPowerFailureDescribe((String) importUtil.getCellValue(row,36));
+                reserveManagement.setOtherProblemDifficulty((String) importUtil.getCellValue(row,37));
+                reserveManagement.setOtherProblemDescribe((String) importUtil.getCellValue(row,38));
+                reserveManagement.setRunPlanRequire((String) importUtil.getCellValue(row,39));
+                reserveManagement.setProgramChangeDescription((String) importUtil.getCellValue(row,40));
+                reserveManagement.setDiscloseRemarks((String) importUtil.getCellValue(row,41));
 
 
                 if (list.size() == 0){

+ 19 - 3
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/web/ProcessController.java

@@ -6,6 +6,7 @@ import com.jeeplus.common.utils.DateUtils;
 import com.jeeplus.common.utils.PropertiesLoader;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.common.utils.excel.ExportExcel;
+import com.jeeplus.common.utils.excel.ImportExcel;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.web.BaseController;
 import com.jeeplus.core.web.Servlets;
@@ -19,10 +20,12 @@ import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.utils.Reserv
 import com.jeeplus.modules.cg.reservemanagementcenter.statisticalTable.service.CableService;
 import com.jeeplus.modules.cg.reservemanagementcenter.statisticalTable.service.EnginnerQueryService;
 import com.jeeplus.modules.sg.managementcenter.materialinfo.entity.MaterialInfo;
+import com.jeeplus.modules.sg.managementcenter.materialproject.entity.MaterialProject;
 import com.jeeplus.modules.sg.managementcenter.materialproject.util.ImportUtil;
 import com.jeeplus.modules.sg.managementcenter.reserveManagement.entity.ReserveProcess;
 import com.jeeplus.modules.sg.picking.activiti.entity.ShowList;
 import com.jeeplus.modules.sg.raiseCapitalDesign.service.RaiseCapitalDesignService;
+import org.apache.poi.ss.usermodel.Row;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.stereotype.Controller;
@@ -177,23 +180,34 @@ public class ProcessController extends BaseController {
      */
     @ResponseBody
     @RequestMapping(value = "importCGValidations")
-    public AjaxJson importCGValidations(@RequestParam("file") MultipartFile[] file,String projectReserveId) {
+    public AjaxJson importCGValidations(@RequestParam("file") MultipartFile[] file,String projectReserveId,String proName) {
         AjaxJson j = new AjaxJson();
 
         try {
+            if (StringUtils.isBlank(projectReserveId)){
+                throw new RuntimeException("项目名称不匹配");
+            }
             for (int k = 0; k < file.length; k++) {
-                reserveProcessService.saveData(file[k],projectReserveId);
+                reserveProcessService.saveData(file[k],projectReserveId,proName);
             }
             j.setSuccess(true);
             j.setErrorCode("0");
             j.setMsg("导入成功");
         } catch (Exception e) {
             j.setSuccess(true);
+            if (StringUtils.isBlank(projectReserveId)){
+                j.setSuccess(false);
+            }
             j.setMsg("导入失败!失败信息:" + e.getMessage());
         }
         return j;
     }
 
+    @RequestMapping(value = "/importMore/Process")
+    public String importProcess(Model model){
+        return "modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/importProcessTest";
+    }
+
     /***
      * 设计单位审核  新
      * */
@@ -242,6 +256,8 @@ public class ProcessController extends BaseController {
             List<Demolite> reserveManagementList = ReserveProcessProjectProUtil.getDemoliteUtil(importUtil, projectReserveId);
             //将数据存入数据库
             demoliteService.insertList(reserveManagementList);
+            //根据项目储备编号查甲供材信息
+            Integer count = reserveProcessService.findMaterialData(projectReserveId);
 
             String flag = act.getFlag();
             try {
@@ -258,7 +274,7 @@ public class ProcessController extends BaseController {
                         j.setMsg("该项目没有甲供材清册");
                         j.setSuccess(false);
                         return j;
-                    }else if ("".equals(drjgc) & !"".equals(material)){
+                    }else if (count == 0 & !"".equals(material)){
                         //将redis中的数据存入数据库   cg_material_data
                         for (int i=0;i<list.size();i++){
                             showList = (ShowList) list.get(i);

+ 299 - 97
src/main/java/com/jeeplus/modules/cg/reservemanagementcenter/reserveManage/web/SummaryStatisticController.java

@@ -293,25 +293,13 @@ public class SummaryStatisticController extends BaseController {
             proId.setProgramChangeDescription(reserveManagement.getProgramChangeDescription());
             proId.setDiscloseRemarks(reserveManagement.getDiscloseRemarks());
             proId.setStartDesignOrNot(reserveManagement.getStartDesignOrNot());
+            proId.setDisclosureMethod(reserveManagement.getDisclosureMethod());
             proId.setCompleteDisclose(reserveManagement.getCompleteDisclose());
             proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
             statisticService.save(proId);
         }else {
 //            BeanUtils.copyProperties(reserveManagement,proId);
-            proId.setIncludeReserve(reserveManagement.getIncludeReserve());
-            proId.setReasonForCancel(reserveManagement.getReasonForCancel());
-            proId.setComprehensiveProject(reserveManagement.getComprehensiveProject());
-            proId.setPowerFailureDifficulty(reserveManagement.getPowerFailureDifficulty());
-            proId.setPowerFailureDescribe(reserveManagement.getPowerFailureDescribe());
-            proId.setOtherProblemDifficulty(reserveManagement.getOtherProblemDifficulty());
-            proId.setOtherProblemDescribe(reserveManagement.getOtherProblemDescribe());
-            proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
-            proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
-            proId.setProgramChangeDescription(reserveManagement.getProgramChangeDescription());
-            proId.setDiscloseRemarks(reserveManagement.getDiscloseRemarks());
-            proId.setStartDesignOrNot(reserveManagement.getStartDesignOrNot());
-            proId.setCompleteDisclose(reserveManagement.getCompleteDisclose());
-            proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
+
             //修改时需要从  省公司评审表中查看是否可以发起流程
             CompanyReview review = new CompanyReview();
             review.setProjectReserveId(reserveManagement.getProjectReserveId());
@@ -320,37 +308,92 @@ public class SummaryStatisticController extends BaseController {
                 //如果 流程状态是 进行中 还是 完成
                 int status = projectService.getProcessStatus(reserveManagement.getProjectReserveId());
                 if (status == 1 || status == 2){
-                    j.setSuccess(false);
-                    j.setMsg(reserveManagement.getProjectReserveId() + "项目流程正在进行中或已完成,无法修改!");
-                    return j;
+                    if (!proId.getCompleteDiscloseTime().equals(reserveManagement.getCompleteDiscloseTime())){
+                        //根据项目储备编号修改交底完成时间
+                        proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
+                        statisticService.update(proId);
+                        j.setSuccess(true);
+                        j.setMsg("修改成功!");
+                        return j;
+                    } else {
+                        j.setSuccess(false);
+                        j.setMsg(reserveManagement.getProjectReserveId() + "项目流程正在进行中或已完成,无法修改!");
+                        return j;
+                    }
+
                 }
-                //去掉之前的流程,重新开始流程
-                reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
 
 //                if (reserveManagement.getIncludeReserve().equals("是")){
                 if (reserveManagement.getStartDesignOrNot().equals("是")){
-                    //发起流程
-                    ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
-                    reserveProcess.preInsert();
-                    reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
-                    //更新
-                    reserveProcessService.insert(reserveProcess);
-                    //发送流程,更改项目状态
-                    Map<String, Object> vars = Maps.newHashMap();
-
-                    ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
-                    //审核代理人
-                    vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+                    if (reserveManagement.getDisclosureMethod().equals("项目管理中心交底")){
+                        if (StringUtils.isNotBlank(reserveManagement.getCompleteDisclose()) && StringUtils.isNotBlank(reserveManagement.getCompleteDiscloseTime())){
+                            startProcess(reserveManagement);
+                            /*//去掉之前的流程,重新开始流程
+                            reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
+                            //发起流程
+                            ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                            reserveProcess.preInsert();
+                            reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                            //更新
+                            reserveProcessService.insert(reserveProcess);
+                            //发送流程,更改项目状态
+                            Map<String, Object> vars = Maps.newHashMap();
+
+                            ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                            //审核代理人
+                            vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                String procDefId = projectService.findDefId("cblc");
+                            String procDefId = projectService.findDefId("cblcNew");
+                            ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                            String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                            actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);*/
+                            //删除之前的甲供材数据
+//                reserveProcessService.deleteMaterial(processProject.getProjectName());
+                            //修改基本信息表的 流程状态
+                            projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                        }
+                    } else {
+                        startProcess(reserveManagement);
+                        /*//去掉之前的流程,重新开始流程
+                        reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
+                        //发起流程
+                        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                        reserveProcess.preInsert();
+                        reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                        //更新
+                        reserveProcessService.insert(reserveProcess);
+                        //发送流程,更改项目状态
+                        Map<String, Object> vars = Maps.newHashMap();
+
+                        ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                        //审核代理人
+                        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
 //                String procDefId = projectService.findDefId("cblc");
-                    String procDefId = projectService.findDefId("cblcNew");
-                    ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
-                    String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
-                    actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
-                    //删除之前的甲供材数据
+                        String procDefId = projectService.findDefId("cblcNew");
+                        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                        String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                        actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);*/
+                        //删除之前的甲供材数据
 //                reserveProcessService.deleteMaterial(processProject.getProjectName());
-                    //修改基本信息表的 流程状态
-                    projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                        //修改基本信息表的 流程状态
+                        projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                    }
                 }
+                proId.setIncludeReserve(reserveManagement.getIncludeReserve());
+                proId.setReasonForCancel(reserveManagement.getReasonForCancel());
+                proId.setComprehensiveProject(reserveManagement.getComprehensiveProject());
+                proId.setPowerFailureDifficulty(reserveManagement.getPowerFailureDifficulty());
+                proId.setPowerFailureDescribe(reserveManagement.getPowerFailureDescribe());
+                proId.setOtherProblemDifficulty(reserveManagement.getOtherProblemDifficulty());
+                proId.setOtherProblemDescribe(reserveManagement.getOtherProblemDescribe());
+                proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
+                proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
+                proId.setProgramChangeDescription(reserveManagement.getProgramChangeDescription());
+                proId.setDiscloseRemarks(reserveManagement.getDiscloseRemarks());
+                proId.setStartDesignOrNot(reserveManagement.getStartDesignOrNot());
+                proId.setDisclosureMethod(reserveManagement.getDisclosureMethod());
+                proId.setCompleteDisclose(reserveManagement.getCompleteDisclose());
+                proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
                 //新增或编辑表单保存
                 statisticService.update(proId);
 //            }else if (companyReview.getPassProvincialCompanyReview().equals("取消") & reserveManagement.getIncludeReserve().equals("是")){
@@ -358,43 +401,97 @@ public class SummaryStatisticController extends BaseController {
                 j.setSuccess(false);
                 j.setMsg(reserveManagement.getProjectReserveId() + "项目未通过省公司评审,无法发起流程!");
                 return j;
-            }else {
+            }else if (companyReview.getPassProvincialCompanyReview().equals("通过") & reserveManagement.getStartDesignOrNot().equals("是")){
                 //如果 流程状态是 进行中 还是 完成
                 int status = projectService.getProcessStatus(reserveManagement.getProjectReserveId());
                 if (status == 1 || status == 2){
-                    j.setSuccess(false);
-                    j.setMsg(reserveManagement.getProjectReserveId() + "项目流程正在进行中或已完成,无法修改!");
-                    return j;
+                    if (!proId.getCompleteDiscloseTime().equals(reserveManagement.getCompleteDiscloseTime())){
+                        //根据项目储备编号修改交底完成时间
+                        proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
+                        statisticService.update(proId);
+                        j.setSuccess(true);
+                        j.setMsg("修改成功!");
+                        return j;
+                    } else {
+                        j.setSuccess(false);
+                        j.setMsg(reserveManagement.getProjectReserveId() + "项目流程正在进行中或已完成,无法修改!");
+                        return j;
+                    }
                 }
-                //去掉之前的流程,重新开始流程
-                reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
 
 //                if (reserveManagement.getIncludeReserve().equals("是")){
                 if (reserveManagement.getStartDesignOrNot().equals("是")){
-                    //发起流程
-                    ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
-                    reserveProcess.preInsert();
-                    reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
-                    //更新
-                    reserveProcessService.insert(reserveProcess);
-                    //发送流程,更改项目状态
-                    Map<String, Object> vars = Maps.newHashMap();
-
-                    ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
-                    //审核代理人
-                    vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+                    if (reserveManagement.getDisclosureMethod().equals("项目管理中心交底")){
+                        if (StringUtils.isNotBlank(reserveManagement.getCompleteDisclose()) && StringUtils.isNotBlank(reserveManagement.getCompleteDiscloseTime())){
+                            startProcess(reserveManagement);
+                            /*//去掉之前的流程,重新开始流程
+                            reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
+                            //发起流程
+                            ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                            reserveProcess.preInsert();
+                            reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                            //更新
+                            reserveProcessService.insert(reserveProcess);
+                            //发送流程,更改项目状态
+                            Map<String, Object> vars = Maps.newHashMap();
+
+                            ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                            //审核代理人
+                            vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
 //                String procDefId = projectService.findDefId("cblc");
-                    String procDefId = projectService.findDefId("cblcNew");
-                    ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
-                    String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
-                    actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
-                    //删除之前的甲供材数据
+                            String procDefId = projectService.findDefId("cblcNew");
+                            ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                            String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                            actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);*/
+                            //删除之前的甲供材数据
 //                reserveProcessService.deleteMaterial(processProject.getProjectName());
-                    //修改基本信息表的 流程状态
-                    projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                            //修改基本信息表的 流程状态
+                            projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                        }
+                    } else {
+                        startProcess(reserveManagement);
+                        /*//去掉之前的流程,重新开始流程
+                        reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
+                        //发起流程
+                        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                        reserveProcess.preInsert();
+                        reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                        //更新
+                        reserveProcessService.insert(reserveProcess);
+                        //发送流程,更改项目状态
+                        Map<String, Object> vars = Maps.newHashMap();
+
+                        ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                        //审核代理人
+                        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                String procDefId = projectService.findDefId("cblc");
+                        String procDefId = projectService.findDefId("cblcNew");
+                        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                        String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                        actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);*/
+                        //删除之前的甲供材数据
+//                reserveProcessService.deleteMaterial(processProject.getProjectName());
+                        //修改基本信息表的 流程状态
+                        projectService.updateProcessStatus(reserveManagement.getProjectReserveId(),1);
+                    }
                 }
             }
             //新增或编辑表单保存
+            proId.setIncludeReserve(reserveManagement.getIncludeReserve());
+            proId.setReasonForCancel(reserveManagement.getReasonForCancel());
+            proId.setComprehensiveProject(reserveManagement.getComprehensiveProject());
+            proId.setPowerFailureDifficulty(reserveManagement.getPowerFailureDifficulty());
+            proId.setPowerFailureDescribe(reserveManagement.getPowerFailureDescribe());
+            proId.setOtherProblemDifficulty(reserveManagement.getOtherProblemDifficulty());
+            proId.setOtherProblemDescribe(reserveManagement.getOtherProblemDescribe());
+            proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
+            proId.setRunPlanRequire(reserveManagement.getRunPlanRequire());
+            proId.setProgramChangeDescription(reserveManagement.getProgramChangeDescription());
+            proId.setDiscloseRemarks(reserveManagement.getDiscloseRemarks());
+            proId.setStartDesignOrNot(reserveManagement.getStartDesignOrNot());
+            proId.setDisclosureMethod(reserveManagement.getDisclosureMethod());
+            proId.setCompleteDiscloseTime(reserveManagement.getCompleteDiscloseTime());
+            proId.setCompleteDisclose(reserveManagement.getCompleteDisclose());
             statisticService.update(proId);
         }
         j.setSuccess(true);
@@ -465,7 +562,7 @@ public class SummaryStatisticController extends BaseController {
             List<ReserveSummary> withoutList = (List<ReserveSummary>) map.get("without");
             //已存在数据
             List<ReserveSummary> existList = (List<ReserveSummary>) map.get("exist");
-
+            //未存在数据处理
             if (withoutList.size()>0){
                 for (ReserveSummary s : withoutList){
                     /*s.setOpenProcessStatus("1");
@@ -474,28 +571,61 @@ public class SummaryStatisticController extends BaseController {
 
 //                    if (s.getIncludeReserve().equals("是")){
                     if (s.getStartDesignOrNot().equals("是")){
+                        //判断省公司评审是否通过
+                        CompanyReview review = new CompanyReview();
+                        review.setProjectReserveId(s.getProjectReserveId());
+                        CompanyReview companyReview = reviewService.queryByProjectReserveId(review);
+                        if ( null == companyReview || !companyReview.getPassProvincialCompanyReview().equals("取消")){
+                            if (s.getDisclosureMethod().equals("项目管理中心交底")){
+                                if (StringUtils.isNotBlank(s.getCompleteDisclose()) && StringUtils.isNotBlank(s.getCompleteDiscloseTime())){
+                                    startProcess2(s);
+                                    /*ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                                    reserveProcess.preInsert();
+                                    reserveProcess.setProjectReserveId(s.getProjectReserveId());
+                                    //更新
+                                    reserveProcessService.insert(reserveProcess);
+                                    //发送流程,更改项目状态
+                                    Map<String, Object> vars = Maps.newHashMap();
+
+                                    ReserveProcessProject processProject = projectService.queryByProjectId(s.getProjectReserveId());
+                                    //审核代理人
+                                    vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                        String procDefId = projectService.findDefId("cblc");
+                                    String procDefId = projectService.findDefId("cblcNew");
+                                    ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                                    String title = s.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                                    actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);*/
+                                    //删除之前的甲供材数据
+//                        reserveProcessService.deleteMaterial(processProject.getProjectName());
 
-                        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
-                        reserveProcess.preInsert();
-                        reserveProcess.setProjectReserveId(s.getProjectReserveId());
-                        //更新
-                        reserveProcessService.insert(reserveProcess);
-                        //发送流程,更改项目状态
-                        Map<String, Object> vars = Maps.newHashMap();
-
-                        ReserveProcessProject processProject = projectService.queryByProjectId(s.getProjectReserveId());
-                        //审核代理人
-                        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+                                    //将历史的问题清空
+                                    statisticService.save(s);
+                                }
+
+                            } else {
+                                ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                                reserveProcess.preInsert();
+                                reserveProcess.setProjectReserveId(s.getProjectReserveId());
+                                //更新
+                                reserveProcessService.insert(reserveProcess);
+                                //发送流程,更改项目状态
+                                Map<String, Object> vars = Maps.newHashMap();
+
+                                ReserveProcessProject processProject = projectService.queryByProjectId(s.getProjectReserveId());
+                                //审核代理人
+                                vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
 //                        String procDefId = projectService.findDefId("cblc");
-                        String procDefId = projectService.findDefId("cblcNew");
-                        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
-                        String title = s.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
-                        actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
-                        //删除之前的甲供材数据
+                                String procDefId = projectService.findDefId("cblcNew");
+                                ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                                String title = s.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                                actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
+                                //删除之前的甲供材数据
 //                        reserveProcessService.deleteMaterial(processProject.getProjectName());
 
-                        //将历史的问题清空
-                        statisticService.save(s);
+                                //将历史的问题清空
+                                statisticService.save(s);
+                            }
+                        }
                     }
                 }
             }
@@ -508,23 +638,54 @@ public class SummaryStatisticController extends BaseController {
                     statisticService.update(reserveManagement);
 //                    if (reserveManagement.getIncludeReserve().equals("是")){
                     if (reserveManagement.getStartDesignOrNot().equals("是")){
-                        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
-                        reserveProcess.preInsert();
-                        reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
-                        //更新
-                        reserveProcessService.insert(reserveProcess);
-                        //发送流程,更改项目状态
-                        Map<String, Object> vars = Maps.newHashMap();
-
-                        ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
-                        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+                        //判断省公司评审是否通过
+                        CompanyReview review = new CompanyReview();
+                        review.setProjectReserveId(reserveManagement.getProjectReserveId());
+                        CompanyReview companyReview = reviewService.queryByProjectReserveId(review);
+
+                        if ( null == companyReview || !companyReview.getPassProvincialCompanyReview().equals("取消")){
+                            if (reserveManagement.getDisclosureMethod().equals("项目管理中心交底")){
+                                if (StringUtils.isNotBlank(reserveManagement.getCompleteDisclose()) && StringUtils.isNotBlank(reserveManagement.getCompleteDiscloseTime())){
+                                    startProcess2(reserveManagement);
+                                    /*ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                                    reserveProcess.preInsert();
+                                    reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                                    //更新
+                                    reserveProcessService.insert(reserveProcess);
+                                    //发送流程,更改项目状态
+                                    Map<String, Object> vars = Maps.newHashMap();
+
+                                    ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                                    vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
 //                        String procDefId = projectService.findDefId("cblc");
-                        String procDefId = projectService.findDefId("cblcNew");
-                        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
-                        String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
-                        actTaskService.startProcessNew(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
-                        //删除之前的甲供材数据
+                                    String procDefId = projectService.findDefId("cblcNew");
+                                    ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                                    String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                                    actTaskService.startProcessNew(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars)*/;
+                                    //删除之前的甲供材数据
 //                        reserveProcessService.deleteMaterial(processProject.getProjectName());
+                                }
+                            } else {
+                                ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+                                reserveProcess.preInsert();
+                                reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+                                //更新
+                                reserveProcessService.insert(reserveProcess);
+                                //发送流程,更改项目状态
+                                Map<String, Object> vars = Maps.newHashMap();
+
+                                ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+                                vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                        String procDefId = projectService.findDefId("cblc");
+                                String procDefId = projectService.findDefId("cblcNew");
+                                ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+                                String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+                                actTaskService.startProcessNew(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
+                                //删除之前的甲供材数据
+//                        reserveProcessService.deleteMaterial(processProject.getProjectName());
+                            }
+
+                        }
                     }
                 }
             }
@@ -760,4 +921,45 @@ public class SummaryStatisticController extends BaseController {
         model.addAttribute("uuid", uuid);
         return "modules/cg/reservemanagementcenter/raiseCapital/aerialConductorForm2";
     }
+
+    public void startProcess(ReserveSummary reserveManagement){
+        //去掉之前的流程,重新开始流程
+        reserveProcessService.deleteAct(reserveManagement.getProjectReserveId());
+        //发起流程
+        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+        reserveProcess.preInsert();
+        reserveProcess.setProjectReserveId(reserveManagement.getProjectReserveId());
+        //更新
+        reserveProcessService.insert(reserveProcess);
+        //发送流程,更改项目状态
+        Map<String, Object> vars = Maps.newHashMap();
+
+        ReserveProcessProject processProject = projectService.queryByProjectId(reserveManagement.getProjectReserveId());
+        //审核代理人
+        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                String procDefId = projectService.findDefId("cblc");
+        String procDefId = projectService.findDefId("cblcNew");
+        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+        String title = reserveManagement.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+        actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
+    }
+
+    public void startProcess2(ReserveSummary s){
+        ReserveSummaryProcess reserveProcess = new ReserveSummaryProcess();
+        reserveProcess.preInsert();
+        reserveProcess.setProjectReserveId(s.getProjectReserveId());
+        //更新
+        reserveProcessService.insert(reserveProcess);
+        //发送流程,更改项目状态
+        Map<String, Object> vars = Maps.newHashMap();
+
+        ReserveProcessProject processProject = projectService.queryByProjectId(s.getProjectReserveId());
+        //审核代理人
+        vars.put("manager", UserUtils.getByUserName(processProject.getDesigner()).getLoginName());
+//                        String procDefId = projectService.findDefId("cblc");
+        String procDefId = projectService.findDefId("cblcNew");
+        ProcessDefinition p = actProcessService.getProcessDefinition(procDefId);
+        String title = s.getCurrentUser().getName() + "在" + DateUtils.getDateTime() + "发起" + p.getName();
+        actTaskService.startProcess(p.getKey(), "cg_personnel_activiti", reserveProcess.getId(), title, vars);
+    }
 }

+ 143 - 4
src/main/java/com/jeeplus/modules/sg/picking/activiti/web/ShowListController.java

@@ -3,22 +3,23 @@ package com.jeeplus.modules.sg.picking.activiti.web;
 import com.jeeplus.common.json.AjaxJson;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.web.BaseController;
+import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.service.ReserveSummaryProcessService;
 import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.utils.DataList;
+import com.jeeplus.modules.cg.reservemanagementcenter.reserveManage.utils.ReserveRedisUtils;
 import com.jeeplus.modules.sg.picking.activiti.entity.ShowList;
 import com.jeeplus.modules.sg.picking.activiti.service.ShowListService;
+import net.oschina.j2cache.redis.RedisUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
+import redis.clients.jedis.Jedis;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Controller
 @RequestMapping(value = "${adminPath}/picking/showlist")
@@ -26,6 +27,9 @@ public class ShowListController extends BaseController {
     @Autowired
     private ShowListService showListService;
 
+    @Autowired
+    private ReserveSummaryProcessService summaryProcessService;
+
     /**
      * 物料清单显示
      */
@@ -257,6 +261,13 @@ public class ShowListController extends BaseController {
         ArrayList<String> objects = new ArrayList<>();
         ArrayList<String> findList = new ArrayList<>();
         AjaxJson j = new AjaxJson();
+
+        //删除redis信息
+        Jedis jedis = ReserveRedisUtils.getJedis();
+        Set<String> keys = jedis.keys(projectReserveId+"*");
+        for (String key : keys){
+            jedis.del(key);
+        }
         //返回给页面的list
         List<ShowList> myList = new ArrayList<>();
         if (item != null && !"".equals(item)) {
@@ -357,6 +368,9 @@ public class ShowListController extends BaseController {
             if (projectReserveId != null){
                 DataList.setList(projectReserveId,finalList);
             }
+            //根据  项目名称与项目储备编号删除甲供材信息
+            summaryProcessService.deleteMaterial(projectName);
+
 
         }
         j.setSuccess(true);
@@ -364,6 +378,131 @@ public class ShowListController extends BaseController {
     }
 
 
+    /**
+     * 配网  将模块清单的数据获取计算,保存入库
+     */
+    /*@ResponseBody
+    @RequestMapping(value = "savePwJgcData")
+    public AjaxJson savePwJgcData(ShowList showList, String item,String projectName,String projectReserveId, Model model) throws Exception {
+        ArrayList<String> objects = new ArrayList<>();
+        ArrayList<String> findList = new ArrayList<>();
+        AjaxJson j = new AjaxJson();
+
+        //删除redis信息
+        Jedis jedis = ReserveRedisUtils.getJedis();
+        Set<String> keys = jedis.keys(projectReserveId + "pw" +"*");
+        for (String key : keys){
+            jedis.del(key);
+        }
+        //返回给页面的list
+        List<ShowList> myList = new ArrayList<>();
+        if (item != null && !"".equals(item)) {
+            String[] split = item.split(";");
+            //回显list
+            List<ShowList> returnList = new ArrayList<>();
+            for (int i = 0; i < split.length; i++) {
+                objects.add(split[i]);
+            }
+            for (String s : objects) {
+                String[] split1 = s.split(":");
+                ShowList myShow = new ShowList();
+                myShow.setId(split1[0]);
+                String s1 = split1[1];
+                myShow.setNumber(Double.parseDouble(s1));
+                findList.add(split1[0]);
+                myList.add(myShow);
+            }
+            showList.setFindList(findList);
+            //查询出来所有的模块清单数据
+            List<ShowList> list = showListService.findList(showList);
+            //前端传来选择的模块与数量
+            for (ShowList my : myList) {
+                //循环遍历
+                for (ShowList showList1 : list) {
+                    //选择的模块与查出来的一致
+                    if (my.getId().equals(showList1.getBlockId())) {
+                        Double mdSingleWeight = showList1.getMdSingleWeight();
+                        Double number = my.getNumber();
+                        Double mdCount = showList1.getMdCount();
+                        Double i = mdSingleWeight * number;
+                        BigDecimal b1 = new BigDecimal(Double.toString(number));
+                        BigDecimal b2 = new BigDecimal(Double.toString(mdCount));
+                        double v = b1.multiply(b2).doubleValue();
+                        ShowList newShowList = new ShowList();
+                        newShowList.setMaterialCode(showList1.getMaterialCode());
+                        newShowList.setMaterialDescription(showList1.getMaterialDescription());
+                        newShowList.setExtensionDescription(showList1.getExtensionDescription());
+                        newShowList.setMdUnits(showList1.getMdUnits());
+                        newShowList.setMdTheParty(showList1.getMdTheParty());
+                        newShowList.setMdText(showList1.getMdText());
+                        newShowList.setMdTotalAmount(v);
+                        newShowList.setMdSingleWeight(showList1.getMdSingleWeight());
+                        BigDecimal b = new BigDecimal(i);
+                        BigDecimal a = new BigDecimal(1000);
+                        BigDecimal divide = b.divide(a, 4, BigDecimal.ROUND_HALF_UP);
+                        newShowList.setMdTotalWeight(Double.valueOf(divide.toString()));
+                        newShowList.setBlockId(showList1.getBlockId());
+                        returnList.add(newShowList);
+                    }
+                }
+            }
+            List<ShowList> finalList = new ArrayList<>();
+            boolean flag;
+            for (ShowList turn : returnList) {
+                flag = true;
+                for (ShowList list1 : finalList) {
+                    if (turn.getMaterialCode().equals(list1.getMaterialCode()) && turn.getMaterialDescription().equals(list1.getMaterialDescription()) && turn.getExtensionDescription().equals(list1.getExtensionDescription())) {
+                        Double mdTotalAmount = list1.getMdTotalAmount();
+                        Double mdTotalAmount1 = turn.getMdTotalAmount();
+                        BigDecimal b1 = new BigDecimal(Double.toString(mdTotalAmount));
+                        BigDecimal b2 = new BigDecimal(Double.toString(mdTotalAmount1));
+                        double v = b1.add(b2).doubleValue();
+                        Double mdTotalWeight = list1.getMdTotalWeight();
+                        Double mdTotalWeight1 = turn.getMdTotalWeight();
+                        BigDecimal a1 = new BigDecimal(Double.toString(mdTotalWeight));
+                        BigDecimal a2 = new BigDecimal(Double.toString(mdTotalWeight1));
+                        double b = a1.add(a2).doubleValue();
+                        list1.setMdTotalAmount(v);
+                        list1.setMdTotalWeight(b);
+                        flag = false;
+                        break;
+                    }
+                }
+                if (flag) {
+                    showList = new ShowList();
+                    showList.setMaterialCode(turn.getMaterialCode());
+                    showList.setMaterialDescription(turn.getMaterialDescription());
+                    showList.setExtensionDescription(turn.getExtensionDescription());
+                    showList.setMdUnits(turn.getMdUnits());
+                    showList.setMdTheParty(turn.getMdTheParty());
+                    showList.setMdText(turn.getMdText());
+                    showList.setMdTotalAmount(turn.getMdTotalAmount());
+                    showList.setMdSingleWeight(turn.getMdSingleWeight());
+                    showList.setMdTotalWeight(turn.getMdTotalWeight());
+                    showList.setBlockId(turn.getBlockId());
+                    finalList.add(showList);
+                }
+            }
+            for (ShowList l :
+                    finalList) {
+                l.setProjectName(projectName);
+            }
+            showListService.trunCate(projectName);
+            //将数据存入提资领料表
+            showListService.replaceData(finalList);
+            //将数据放入redis
+            if (projectReserveId != null){
+                DataList.setList(projectReserveId + "pw",finalList);
+            }
+            //根据  项目名称与项目储备编号删除甲供材信息
+            summaryProcessService.deleteMaterial(projectName);
+
+
+        }
+        j.setSuccess(true);
+        return j;
+    }*/
+
     @ResponseBody
     @RequestMapping(value = "raiseData")
     public Map<String, Object> raiseData(ShowList showList, HttpServletRequest request, HttpServletResponse response, Model model) {

BIN
src/main/resources/freemarker/excelmodel/summaryStatistics.xlsx


+ 0 - 4
src/main/webapp/webpage/modules/cg/reservemanagementcenter/distribution/process/designUnitFile.jsp

@@ -116,10 +116,6 @@
 							|| demolition == undefined
 							|| demolition == 'undefined') {
 						jp.error("拆旧清册不能为空");
-					}else if (approvalForm == ""
-							|| approvalForm == undefined
-							|| approvalForm == 'undefined') {
-						jp.error("土建现浇审批单不能为空");
 					}else if (material == "" & drjgc =="" ){
 						jp.error("甲供材信息不能为空");
 					} else {

+ 4 - 6
src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/designUnit.jsp

@@ -116,10 +116,6 @@
 							|| demolition == undefined
 							|| demolition == 'undefined') {
 						jp.error("拆旧清册不能为空");
-					}else if (approvalForm == ""
-							|| approvalForm == undefined
-							|| approvalForm == 'undefined') {
-						jp.error("土建现浇审批单不能为空");
 					}else if (material == "" & drjgc =="" ){
 						jp.error("甲供材信息不能为空");
 					} else {
@@ -161,16 +157,18 @@
 
 			$("#moreImport").click(function(){
 				var projectReserveId = $("#projectReserveId").val();
+				var proName = $("#projectName").val();
+				console.log('proname', proName)
 				jp.open({
 					type: 2,
 					area: [800, 400],
 					auto: true,
 					title:"导入数据",
-					content: "${ctx}/managementcenter/materialinfo/importMore/Process",
+					content: "${ctx}/cg/reservemanagementcenter/process/importMore/Process",
 					btn: ['确定', '关闭'],
 					btn1: function(index, layero){
 						var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
-						iframeWin.contentWindow.importExcel('${ctx}/cg/reservemanagementcenter/process/importCGValidations?projectReserveId=' + projectReserveId, function (data) {
+						iframeWin.contentWindow.importExcel('${ctx}/cg/reservemanagementcenter/process/importCGValidations?projectReserveId=' + projectReserveId + '&proName=' + proName, function (data) {
 							if(data.success){
 								jp.success(data.msg);
 								jp.close(index);

+ 234 - 0
src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/importProcessTest.jsp

@@ -0,0 +1,234 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<%@ include file="/webpage/include/taglib.jsp"%>
+<link rel="stylesheet" href="${ctxStatic}/plugin/layui/dist/css/layui.css">
+<script src="${pageContext.request.contextPath}/act/rest/js/common/jquery-1.8.3.js"></script>
+<script src="${ctxStatic}/plugin/layui/dist/layui.js"></script>
+<script src="${ctxStatic}/common/js/jeeplus.js"></script>
+
+<html>
+<head>
+    <title>添加</title>
+    <meta http-equiv=Content-Type content=“text/html;charset=utf-8″>
+    <meta http-equiv=X-UA-Compatible content=IE=EmulateIE7>
+    <meta name="renderer" content="webkit">
+    <style>
+        .layui-input{ height: 28px;margin-top: 6px;line-height: 28px}
+        .layui-table-view .layui-table {width:100%}
+        .myselect{border: none;padding: 5px 7px;min-height: 20px;color: #666666;line-height: 20px}
+        .mydiv{padding: 5px 7px;min-height: 20px;border: whitesmoke;line-height: 20px}
+        .mydiv:empty:before{content: attr(placeholder);color:#999999;}
+        .mydiv:focus:before{content:none}
+        .layui-table-tips-main{display:none}
+        .layui-table-tips-c{display:none}
+    </style>
+</head>
+<body style="height: 100%;line-height: 100%">
+<div style="padding: 10px;">
+    <div class="layui-main-bgc">
+        <div class="layui-row layui-col-space15">
+            <div class="layui-col-md12">
+                <div class="layui-card">
+                        <div class="layui-card-body" style="margin-top: 2px;">
+                            <div class="layui-upload">
+                                <button type="button" class="layui-btn layui-btn-normal" id="add_List">添加文件</button>
+                                <div class="layui-upload-list">
+                                        <table class="layui-table" id="mytable">
+                                        <thead>
+                                        <tr>
+                                            <th width="45%">*文件名称</th>
+                                            <th width="22%" style="text-align: center">操作</th>
+                                        </tr></thead>
+                                        <tbody id="tbody_List">
+
+                                        </tbody>
+                                    </table>
+                                </div>
+                        </div>
+                    </div>
+                </div>
+             </div>
+        </div>
+    </div>
+</div>
+</body>
+<script type="text/javascript">
+    /*//定义存放文件数组*/
+    var arrayFile=[];
+    /*加载layui文件上传*/
+    layui.use('upload', function(){
+        var $ = layui.jquery
+            ,upload = layui.upload;
+        //多文件列表示例
+        var tbodyListView = $('#tbody_List')
+            ,uploadListIns = upload.render({
+            elem: '#add_List'
+            ,accept: 'file'
+            ,exts:'xls|xlsx'
+            ,multiple: true
+            ,auto: false
+            ,choose: function(obj){
+                // var files = this.files = obj.pushFile(); //将每次选择的文件追加到文件队列
+                //读取本地文件
+                obj.preview(function(index, file, result){
+                    //添加 id 到数组
+                    arrayFile.push(index);
+                    //添加文件到数组
+                    arrayFile.push(file);
+                    //拼接生成表格
+                    var tr = $(['<tr id='+index+'>'
+                        ,'<td hidden><div class="td_id">'+index+'</div></td>'
+                        ,'<td><div contenteditable="true" readonly="true" class="mydiv1 mydiv" placeholder="请输入项目名称">'+file.name.split(".")[0]+'</div></td>'
+                        // ,'<td>'
+                        // ,' <select name="type" class="myselect"><option value="">请选择项目类型</option><option value="1">架空线路工程</option><option value="2">电缆工程</option><option value="3">变电站工程</option></select>'
+                        // ,'<td><div contenteditable="true" class="mydiv2 mydiv" placeholder="请输入项目编号"></div></td>'
+                        // ,'<td><div contenteditable="true" class="mydiv3 mydiv" placeholder="请输入供应商"></div></td>'
+                        ,'<td style="text-align: center">'
+                        ,'<button class="layui-btn layui-btn-xs layui-btn-danger demo-delete">删除</button>'
+                        ,'</td>'
+                        ,'</tr>'].join(''));
+                    //删除
+                    tr.find('.demo-delete').on('click', function(){
+                        // delete files[index]; //删除对应的文件
+                        tr.remove();//删除tr
+                        //清空input file当中已经存在文件
+                        uploadListIns.config.elem.next()[0].value = '';
+                    });
+
+                    tbodyListView.append(tr);
+                    //清空input file当中已经存在文件
+                    uploadListIns.config.elem.next()[0].value = '';
+                });
+            }
+        });
+    });
+
+    function importExcel(url, fn) {
+        var formdata = new FormData();
+
+        // 获取表格id的值
+        var itemBatch = $("#myinput").val();
+        var suppliesBatch = $("#suppliesBatch").val();
+        var file = $(":file").val;
+
+
+        //获取输入的项目名称
+        var div1 =  $(".mydiv1");
+
+        //判断列表中项目名称是否为空
+        if (div1.length<=0){
+            layer.msg("请选择文件",{icon: 3,offset:['40%','40%']});
+            return false;
+        }
+        //存储列表中 输入项目名称的值
+        var divvalue=[];
+        //存储列表中 输入项目名称的值
+        var div_val=[];
+        //循环获取当前项目列表的项目名称
+
+        for (var i = 0; i < div1.length; i++) {
+            //存放到集合当中
+            divvalue[i]=div1[i].innerHTML;
+            div_val[i]=div1[i].innerHTML;
+        }
+        //判断项目名称是否重复
+        for (var i = 0; i < divvalue.length; i++) {
+            if (divvalue[i] === ""||divvalue[i]==null){
+                layer.msg("请选择文件",{icon: 3,offset:['40%','40%']});
+                throw SyntaxError;
+            }
+            if(div_val[i] === divvalue[i+1]){
+                layer.msg("选择文件重复",{icon: 5,offset:['40%','40%']});
+                throw SyntaxError;
+            }
+        }
+        var td_id=document.getElementsByClassName("td_id");
+        //存放id的数组
+        var array_id = [];
+        //循环遍历id
+        for (var i = 0; i < td_id.length; i++) {
+            array_id[i]=td_id[i].innerHTML;
+        }
+        //根据id获取对象文件传入后台
+        for (var i = 0; i < array_id.length; i++) {
+            for (var j = 0; j < arrayFile.length; j++) {
+                if (array_id[i]==arrayFile[j]){
+                    //追加文件到表单当中
+                    formdata.append("file",arrayFile[j+1]);
+                }
+            }
+        }
+        formdata.append("itemBatch",itemBatch);
+        formdata.append("batch",suppliesBatch);
+
+        jp.loading('  正在导入,请稍等...');
+        $.ajax({
+            type: "POST",
+            enctype: 'multipart/form-data',
+            url: url,
+            data: formdata,
+            processData: false, //prevent jQuery from automatically transforming the data into a query string
+            contentType: false,
+            cache: false,
+            timeout: 600000,
+            success: function (result) {
+                if(result.success && result.errorCode === '-1'){
+                    jp.confirm('项目'+result.msg, function(){
+                        jp.loading('  正在导入,请稍等...');
+                        $.ajax({
+                            type: "POST",
+                            enctype: 'multipart/form-data',
+                            url: '${ctx}/cg/reservemanagementcenter/process/importCGValidations',
+                            data: formdata,
+                            processData: false, //prevent jQuery from automatically transforming the data into a query string
+                            contentType: false,
+                            cache: false,
+                            timeout: 600000,
+                            success: function (result) {
+                                fn(result);
+                            }
+                        })
+                    });
+                }else if((result.success && result.errorCode === '0')){
+                    fn(result)
+                }
+                // fn(result);
+            },
+            error:function(xhr, textStatus){
+                if(xhr.status == 0){
+                    jp.info("连接失败,请检查网络!")
+                }else if(xhr.status == 404){
+                    var errDetail ="<font color='red'>404,请求地址不存在!</font>";
+                    top.layer.alert(errDetail , {
+                        icon: 2,
+                        area:['auto','auto'],
+                        title:"请求出错"
+                    })
+                }else if(xhr.status && xhr.responseText){
+                    var errDetail ="<font color='red'>"+ xhr.responseText.replace(/[\r\n]/g,"<br>").replace(/[\r]/g,"<br>").replace(/[\n]/g,"<br>")+"</font>";
+                    top.layer.alert(errDetail , {
+                        icon: 2,
+                        area:['80%','70%'],
+                        title:xhr.status+"错误"
+                    })
+                }else{
+                    var errDetail =xhr.responseText=="<font color='red'>未知错误!</font>";
+                    top.layer.alert(errDetail , {
+                        icon: 2,
+                        area:['auto','auto'],
+                        title:"真悲剧,后台抛出异常了"
+                    })
+                }
+
+            }
+        })
+
+    }
+
+</script>
+<script>
+    layui.use('form',function () {
+        var  form = layui.form;
+        form.render();
+    })
+</script>
+</html>

+ 7 - 1
src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementInformation.js

@@ -82,8 +82,9 @@ $(document).ready(function () {
                 [
                     {checkbox:true,width: 36},
                     {"title":"储备项目基本信息","colspan":21,"halign":"center","align": "center",width: "4200px"},
+                    {"title":"储备人员","colspan":3,"halign":"center","align": "center",width: "600px"},
                     {"title":"设计筛选","colspan":4,"halign":"center","align": "center",width: "800px"},
-                    {"title":"储备项目交底信息统计","colspan":12,"halign":"center","align": "center",width: "2400px"},
+                    {"title":"储备项目交底信息统计","colspan":13,"halign":"center","align": "center",width: "2600px"},
                 ],
                     [
                     {checkbox:true,width: 36},
@@ -123,11 +124,16 @@ $(document).ready(function () {
                         { field: 'projectType', title: "项目类型", valign:"middle", align:"center", colspan: 1 },
                         { field: 'costEstimate', title: "费用估算", valign:"middle", align:"center", colspan: 1 },
 
+                        { field: 'requester', title: "需求提报人", valign:"middle", align:"center", colspan: 1 },
+                        { field: 'ownerReserveProjectManagre', title: "业主储备项目经理", valign:"middle", align:"center", colspan: 1 },
+                        { field: 'designer', title: "设计人员", valign:"middle", align:"center", colspan: 1 },
+
                         { field: 'reserveProgress', title: "储备进度", valign:"middle", align:"center", colspan: 1 },
                         { field: 'includeReserve', title: "是否纳入储备", valign:"middle", align:"center", colspan: 1 },
                         { field: 'reasonForCancel', title: "取消原因说明", valign:"middle", align:"center", colspan: 1 ,formatter:paramsMatter},
                         { field: 'startDesignOrNot', title: "是否启动设计", valign:"middle", align:"center", colspan: 1 },
 
+                        { field: 'disclosureMethod', title: "交底方式", valign:"middle", align:"center", colspan: 1 },
                         { field: 'completeDisclose', title: "是否完成交底", valign:"middle", align:"center", colspan: 1 },
                         { field: 'completeDiscloseTime', title: "交底完成时间", valign:"middle", align:"center", colspan: 1 },
                         { field: 'comprehensiveProject', title: "项目综合可实施性", valign:"middle", align:"center", colspan: 1 },

+ 87 - 41
src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementModifyByzz.jsp

@@ -16,41 +16,58 @@
 		    });
 		});
 		function save() {
-			var projectReserveId = $("#projectReserveId").val();
-			var projectName = $("#projectName").val();
-			var construct = $("#constructionNecessityAndContent").val();
-			var faPlan = $("#changePlan").val();
-			var faChange = $("#programChangeDescription").val();
+			// var projectReserveId = $("#projectReserveId").val();
+			// var projectName = $("#projectName").val();
+			// var construct = $("#constructionNecessityAndContent").val();
+			// var faPlan = $("#changePlan").val();
+			// var faChange = $("#programChangeDescription").val();
+			//
+			// if (null==projectReserveId||""==projectReserveId){
+			// 	jp.error("请填写项目储备编号!");
+			// }else if(null==projectName||""==projectName){
+			// 	jp.error("请填写项目名称!");
+			// }else if (null==construct||""==construct){
+			// 	jp.error("请填写建设必要性及内容!")
+			// }else if (faPlan=='是'&(faChange==null||faChange=='')){
+			// 	jp.error("请填写方案变更说明!")
+			// }
 
-			if (null==projectReserveId||""==projectReserveId){
-				jp.error("请填写项目储备编号!");
-			}else if(null==projectName||""==projectName){
-				jp.error("请填写项目名称!");
-			}else if (null==construct||""==construct){
-				jp.error("请填写建设必要性及内容!")
-			}else if (faPlan=='是'&(faChange==null||faChange=='')){
-				jp.error("请填写方案变更说明!")
-			}
 
+		    <%--else {--%>
+            <%--    var isValidate = jp.validateForm('#inputForm');//校验表单--%>
+            <%--    if(!isValidate){--%>
+            <%--        return false;--%>
+            <%--    }else{--%>
+            <%--        jp.loading();--%>
+            <%--        jp.post("${ctx}/cg/reservemanagementcenter/summaryStatistics/update",$('#inputForm').serialize(),function(data){--%>
+            <%--            if(data.success){--%>
+            <%--                jp.getParent().refresh();--%>
+            <%--                var dialogIndex = parent.layer.getFrameIndex(window.name); // 获取窗口索引--%>
+            <%--                parent.layer.close(dialogIndex);--%>
+            <%--                jp.success(data.msg)--%>
 
-		    else {
-                var isValidate = jp.validateForm('#inputForm');//校验表单
-                if(!isValidate){
-                    return false;
-                }else{
-                    jp.loading();
-                    jp.post("${ctx}/cg/reservemanagementcenter/summaryStatistics/update",$('#inputForm').serialize(),function(data){
-                        if(data.success){
-                            jp.getParent().refresh();
-                            var dialogIndex = parent.layer.getFrameIndex(window.name); // 获取窗口索引
-                            parent.layer.close(dialogIndex);
-                            jp.success(data.msg)
+            <%--            }else{--%>
+            <%--                jp.error(data.msg);--%>
+            <%--            }--%>
+            <%--        })--%>
+            <%--    }--%>
+			<%--}--%>
+			var isValidate = jp.validateForm('#inputForm');//校验表单
+			if(!isValidate){
+				return false;
+			}else{
+				jp.loading();
+				jp.post("${ctx}/cg/reservemanagementcenter/summaryStatistics/update",$('#inputForm').serialize(),function(data){
+					if(data.success){
+						jp.getParent().refresh();
+						var dialogIndex = parent.layer.getFrameIndex(window.name); // 获取窗口索引
+						parent.layer.close(dialogIndex);
+						jp.success(data.msg)
 
-                        }else{
-                            jp.error(data.msg);
-                        }
-                    })
-                }
+					}else{
+						jp.error(data.msg);
+					}
+				})
 			}
         }
 	</script>
@@ -171,6 +188,25 @@
 			</td>
 		</tr>
 		<tr>
+			<td colspan="4" class="width-15 active"><label class="">储备人员:</label></td>
+		</tr>
+		<tr>
+			<td class="width-15 active"><label class="">需求提报人:</label></td>
+			<td class="width-35">
+				<form:input path="requester" htmlEscape="false" class="form-control" readonly="true"/>
+			</td>
+			<td class="width-15 active"><label class="">业主储备项目经理:</label></td>
+			<td class="width-35">
+				<form:input path="ownerReserveProjectManagre" htmlEscape="false" class="form-control" readonly="true"/>
+			</td>
+		</tr>
+		<tr>
+			<td class="width-15 active"><label class="">设计人员:</label></td>
+			<td class="width-35">
+				<form:input path="designer" htmlEscape="false" class="form-control" readonly="true"/>
+			</td>
+		</tr>
+		<tr>
 			<td colspan="4" class="width-15 active"><label class="">设计筛选:</label></td>
 		</tr>
 		<tr>
@@ -208,60 +244,70 @@
 			<td colspan="4" class="width-15 active"><label class="">储备项目交底信息统计:</label></td>
 		</tr>
 		<tr>
+			<td class="width-15 active"><label class="">交底方式:</label></td>
+			<td class="width-35">
+				<select id="disclosureMethod" name="disclosureMethod"  class="form-control">
+					<option value="">请选择</option>
+					<option value="项目管理中心交底" <c:if test="${reserveManagement.disclosureMethod=='项目管理中心交底'}">selected</c:if>>项目管理中心交底</option>
+					<option value="设计单位自行查勘" <c:if test="${reserveManagement.disclosureMethod=='设计单位自行查勘'}">selected</c:if>>设计单位自行查勘</option>
+				</select>
+			</td>
 			<td class="width-15 active"><label class="">是否完成交底:</label></td>
 			<td class="width-35">
 				<form:input path="completeDisclose" htmlEscape="false" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">交底完成时间:</label></td>
 			<td class="width-35">
 				<form:input path="completeDiscloseTime" htmlEscape="false" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">项目综合可实施性:</label></td>
 			<td class="width-35">
 				<form:input path="comprehensiveProject" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">政处难度:</label></td>
 			<td class="width-35">
 				<form:input path="officeDifficulty" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">政处描述:</label></td>
 			<td class="width-35">
 				<form:input path="officeProgress" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">停电难度:</label></td>
 			<td class="width-35">
 				<form:input path="powerFailureDifficulty" htmlEscape="false" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">停电描述:</label></td>
 			<td class="width-35">
 				<form:input path="powerFailureDescribe" htmlEscape="false" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">其他问题难度:</label></td>
 			<td class="width-35">
 				<form:input path="otherProblemDifficulty" htmlEscape="false" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">其他问题描述:</label></td>
 			<td class="width-35">
 				<form:input path="otherProblemDescribe" htmlEscape="false" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">是否需重跑方案:</label></td>
 			<td class="width-35">
 				<form:input path="runPlanRequire" htmlEscape="false" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">方案变更说明:</label></td>
 			<td class="width-35">
 				<form:input path="programChangeDescription" htmlEscape="false" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">备注:</label></td>
 			<td class="width-35">
 				<form:input path="discloseRemarks" htmlEscape="false" class="form-control"/>

+ 70 - 42
src/main/webapp/webpage/modules/cg/reservemanagementcenter/reserveManage/summaryStatistics/reserveManagementView.jsp

@@ -43,27 +43,28 @@
 		<tr>
 			<td class="width-15 active"><label class="">项目年份:</label></td>
 			<td class="width-35">
-				<form:input path="projectYear" htmlEscape="false" readonly="true" class="form-control"/>
+				<form:input path="projectYear" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">项目性质:</label></td>
 			<td class="width-35">
-				<form:input path="projectNature" htmlEscape="false" readonly="true" class="form-control"/>
+				<form:input path="projectNature" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
+
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class="">需求单位:</label></td>
 			<td class="width-35">
-				<form:input path="demandUnit" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="demandUnit" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">区域:</label></td>
 			<td class="width-35">
-				<form:input path="district" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="district" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class="">项目分组:</label></td>
 			<td class="width-35">
-				<form:input path="projectGroup" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="projectGroup" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">项目经理:</label></td>
 			<td class="width-35">
@@ -73,21 +74,21 @@
 		<tr>
 			<td class="width-15 active"><label class="">储备批次:</label></td>
 			<td class="width-35">
-				<form:input path="reserveBatches" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="reserveBatches" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">供电区域:</label></td>
 			<td class="width-35">
-				<form:input path="blockSupply" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="blockSupply" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class=""><font color="red">*</font>网格编号:</label></td>
 			<td class="width-35">
-				<form:input path="gridNumber" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="gridNumber" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class=""><font color="red">*</font>单元格编号:</label></td>
 			<td class="width-35">
-				<form:input path="cellNumber" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="cellNumber" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
@@ -95,9 +96,9 @@
 			<td class="width-35">
 				<form:input path="projectReserveId" htmlEscape="false"  readonly="true"  class="form-control required"/>
 			</td>
-			<td class="width-15 active"><label class=""><font color="red">*</font>储备项目名称:</label></td>
+			<td class="width-15 active"><label class=""><font color="red">*</font>项目名称:</label></td>
 			<td class="width-35">
-				<form:input path="projectName" htmlEscape="false"  readonly="true"  class="form-control required"/>
+				<form:input path="projectName" htmlEscape="false"    class="form-control required" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
@@ -110,41 +111,59 @@
 				<form:input path="stateGridProjectName" htmlEscape="false"  readonly="true"  class="form-control"/>
 			</td>
 		</tr>
-
 		<tr>
 			<td class="width-15 active"><label class=""><font color="red">*</font>建设必要性及内容:</label></td>
 			<td class="width-35">
-				<form:input path="constructionNecessityAndContent" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="constructionNecessityAndContent" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">变电站名称:</label></td>
 			<td class="width-35">
-				<form:input path="substationName" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="substationName" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class="">线路名称:</label></td>
 			<td class="width-35">
-				<form:input path="circuitName" htmlEscape="false" readonly="true" class="form-control"/>
+				<form:input path="circuitName" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">网架项目划分:</label></td>
 			<td class="width-35">
-				<form:input path="netRackProjectDivide" htmlEscape="false"  readonly="true"  class="form-control"/>
+				<form:input path="netRackProjectDivide" htmlEscape="false"    class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class="">需求类型:</label></td>
 			<td class="width-35">
-				<form:input path="requirementType" htmlEscape="false" readonly="true" class="form-control"/>
+				<form:input path="requirementType" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
 			<td class="width-15 active"><label class="">项目类型:</label></td>
 			<td class="width-35">
-				<form:input path="projectType" htmlEscape="false" readonly="true" class="form-control"/>
+				<form:input path="projectType" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
 			<td class="width-15 active"><label class="">费用估算:</label></td>
 			<td class="width-35">
-				<form:input path="costEstimate" htmlEscape="false" readonly="true" class="form-control number money"/>
+				<form:input path="costEstimate" htmlEscape="false" class="form-control number money" readonly="true"/>
+			</td>
+		</tr>
+		<tr>
+			<td colspan="4" class="width-15 active"><label class="">储备人员:</label></td>
+		</tr>
+		<tr>
+			<td class="width-15 active"><label class="">需求提报人:</label></td>
+			<td class="width-35">
+				<form:input path="requester" htmlEscape="false" class="form-control" readonly="true"/>
+			</td>
+			<td class="width-15 active"><label class="">业主储备项目经理:</label></td>
+			<td class="width-35">
+				<form:input path="ownerReserveProjectManagre" htmlEscape="false" class="form-control" readonly="true"/>
+			</td>
+		</tr>
+		<tr>
+			<td class="width-15 active"><label class="">设计人员:</label></td>
+			<td class="width-35">
+				<form:input path="designer" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
 		</tr>
 		<tr>
@@ -157,7 +176,7 @@
 			</td>
 			<td class="width-15 active"><label class="">是否纳入储备:</label></td>
 			<td class="width-35">
-				<select id="includeReserve" name="includeReserve" readonly="true" disabled  class="form-control">
+				<select id="includeReserve" name="includeReserve" disabled class="form-control">
 					<option value="">请选择</option>
 					<option value="是" <c:if test="${reserveManagement.includeReserve=='是'}">selected</c:if>>是</option>
 					<option value="待定" <c:if test="${reserveManagement.includeReserve=='待定'}">selected</c:if>>待定</option>
@@ -173,11 +192,11 @@
 			</td>
 			<td class="width-15 active"><label class="">是否启动设计:</label></td>
 			<td class="width-35">
-<%--				<form:input path="startDesignOrNot" htmlEscape="false"  readonly="true" class="form-control"/>--%>
-				<select id="startDesignOrNot" name="startDesignOrNot" readonly="true" disabled  class="form-control">
+					<%--				<form:input path="startDesignOrNot" htmlEscape="false" class="form-control"/>--%>
+				<select id="startDesignOrNot" name="startDesignOrNot" disabled class="form-control">
 					<option value="">请选择</option>
 					<option value="是" <c:if test="${reserveManagement.startDesignOrNot=='是'}">selected</c:if>>是</option>
-					<option value="否" <c:if test="${reserveManagement.startDesignOrNot=='取消'}">selected</c:if>>取消</option>
+					<option value="否" <c:if test="${reserveManagement.startDesignOrNot=='否'}">selected</c:if>>否</option>
 				</select>
 			</td>
 		</tr>
@@ -185,67 +204,76 @@
 			<td colspan="4" class="width-15 active"><label class="">储备项目交底信息统计:</label></td>
 		</tr>
 		<tr>
-			<td class="width-15 active"><label class="">是否完成交底:</label></td>
+			<td class="width-15 active"><label class="">交底方式:</label></td>
 			<td class="width-35">
-				<form:input path="completeDisclose" htmlEscape="false" class="form-control" readonly="true"/>
+				<select id="disclosureMethod" name="disclosureMethod" disabled class="form-control">
+					<option value="">请选择</option>
+					<option value="项目管理中心交底" <c:if test="${reserveManagement.disclosureMethod=='项目管理中心交底'}">selected</c:if>>项目管理中心交底</option>
+					<option value="设计单位自行查勘" <c:if test="${reserveManagement.disclosureMethod=='设计单位自行查勘'}">selected</c:if>>设计单位自行查勘</option>
+				</select>
 			</td>
-			<td class="width-15 active"><label class="">交底完成时间:</label></td>
+			<td class="width-15 active"><label class="">是否完成交底:</label></td>
 			<td class="width-35">
-				<form:input path="completeDiscloseTime" htmlEscape="false" class="form-control" readonly="true"/>
+				<form:input path="completeDisclose" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
 		</tr>
 		<tr>
+			<td class="width-15 active"><label class="">交底完成时间:</label></td>
+			<td class="width-35">
+				<form:input path="completeDiscloseTime" htmlEscape="false" readonly="true" class="form-control"/>
+			</td>
 			<td class="width-15 active"><label class="">项目综合可实施性:</label></td>
 			<td class="width-35">
 				<form:input path="comprehensiveProject" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">政处难度:</label></td>
 			<td class="width-35">
 				<form:input path="officeDifficulty" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">政处描述:</label></td>
 			<td class="width-35">
 				<form:input path="officeProgress" htmlEscape="false" class="form-control" readonly="true"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">停电难度:</label></td>
 			<td class="width-35">
-				<form:input path="powerFailureDifficulty" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="powerFailureDifficulty" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">停电描述:</label></td>
 			<td class="width-35">
-				<form:input path="powerFailureDescribe" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="powerFailureDescribe" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">其他问题难度:</label></td>
 			<td class="width-35">
-				<form:input path="otherProblemDifficulty" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="otherProblemDifficulty" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">其他问题描述:</label></td>
 			<td class="width-35">
-				<form:input path="otherProblemDescribe" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="otherProblemDescribe" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">是否需重跑方案:</label></td>
 			<td class="width-35">
-				<form:input path="runPlanRequire" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="runPlanRequire" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
-		</tr>
-		<tr>
 			<td class="width-15 active"><label class="">方案变更说明:</label></td>
 			<td class="width-35">
-				<form:input path="programChangeDescription" htmlEscape="false"  readonly="true" class="form-control"/>
+				<form:input path="programChangeDescription" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
+		</tr>
+		<tr>
 			<td class="width-15 active"><label class="">备注:</label></td>
 			<td class="width-35">
 				<form:input path="discloseRemarks" htmlEscape="false" readonly="true" class="form-control"/>
 			</td>
 		</tr>
 
-
 		</tbody>
 	</table>
 </form:form>