guoxu 2 年之前
父節點
當前提交
42344067fb

+ 12 - 0
src/main/java/com/jeeplus/modules/sealApplyFor/entity/SealApplyForInfo.java

@@ -2,9 +2,11 @@ package com.jeeplus.modules.sealApplyFor.entity;
 
 import com.jeeplus.common.persistence.ActEntity;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoImport;
 import com.jeeplus.modules.sys.entity.Office;
 
 import java.util.Date;
+import java.util.List;
 
 /**
  * 盖章申请实体类
@@ -24,6 +26,8 @@ public class SealApplyForInfo extends ActEntity<SealApplyForInfo> {
     private Date endDate;  //结束时间
     private String home;
 
+    private List<SealMaterialInfoImport> sealMaterialInfoList;
+
     public RuralProjectRecords getProjectRecords() {
         return projectRecords;
     }
@@ -103,4 +107,12 @@ public class SealApplyForInfo extends ActEntity<SealApplyForInfo> {
     public void setHome(String home) {
         this.home = home;
     }
+
+    public List<SealMaterialInfoImport> getSealMaterialInfoList() {
+        return sealMaterialInfoList;
+    }
+
+    public void setSealMaterialInfoList(List<SealMaterialInfoImport> sealMaterialInfoList) {
+        this.sealMaterialInfoList = sealMaterialInfoList;
+    }
 }

+ 9 - 1
src/main/java/com/jeeplus/modules/sealApplyFor/service/SealApplyForService.java

@@ -15,6 +15,8 @@ import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectContactPerson
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
 import com.jeeplus.modules.sealApplyFor.dao.SealApplyForDao;
 import com.jeeplus.modules.sealApplyFor.entity.SealApplyForInfo;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo;
+import com.jeeplus.modules.sealMaterial.service.SealMaterialService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
@@ -77,6 +79,8 @@ public class SealApplyForService extends CrudService<SealApplyForDao, SealApplyF
     private RuralProjectRecordsService projectRecordsService;
     @Autowired
     private WorkActivityProcessDao workActivityProcessDao;
+    @Autowired
+    private SealMaterialService sealMaterialService;
 
     public SealApplyForInfo get(String id) {
         SealApplyForInfo sealApplyForInfo = super.get(id);
@@ -264,7 +268,7 @@ public class SealApplyForService extends CrudService<SealApplyForDao, SealApplyF
                 userIds.add(u.getId());
                 workProjectNotify.setUser(u);
                 workProjectNotify.setId("");
-                workProjectNotify.setNotifyRole("部门负责人审批");
+                workProjectNotify.setNotifyRole("盖章审核人审批");
                 workProjectNotifyService.save(workProjectNotify);
                 Map<String,Object> extras = new HashMap<>();
                 extras.put("type","7003");
@@ -481,6 +485,10 @@ public class SealApplyForService extends CrudService<SealApplyForDao, SealApplyF
         if (!state) {
             String titleStr =  "盖章申请:项目【"+sealApplyFor.getProjectRecords().getProjectName()+"】已完成";
             String content = "盖章申请:项目【"+ sealApplyFor.getProjectRecords().getProjectName()+"】已完成";
+//            进行批量更新
+            SealMaterialInfo sealMaterialInfo = new SealMaterialInfo();
+            sealMaterialInfo.setProjectId(sealApplyFor.getProjectId());
+            sealMaterialService.batchUpdateTime(sealMaterialInfo);
             users.add(sealApplyFor.getCreateBy());
             if ("yes".equals(flag)) {
                 sealApplyFor.setStatus(5);

+ 54 - 4
src/main/java/com/jeeplus/modules/sealApplyFor/web/SealApplyForController.java

@@ -16,6 +16,10 @@ import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectContactPerson
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
 import com.jeeplus.modules.sealApplyFor.entity.SealApplyForInfo;
 import com.jeeplus.modules.sealApplyFor.service.SealApplyForService;
+import com.jeeplus.modules.sealMaterial.dao.SealMaterialDao;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoImport;
+import com.jeeplus.modules.sealMaterial.service.SealMaterialService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.utils.DictUtils;
@@ -25,6 +29,7 @@ import com.jeeplus.modules.workclientinfo.entity.WorkClientLinkman;
 import org.activiti.engine.HistoryService;
 import org.activiti.engine.runtime.ProcessInstance;
 import org.activiti.engine.task.Task;
+import org.apache.poi.ss.formula.functions.Now;
 import org.apache.shiro.authz.annotation.Logical;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -40,10 +45,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
+import java.util.*;
 
 /**
  * 盖章申请Controller
@@ -64,6 +66,8 @@ public class SealApplyForController extends BaseController {
     protected HistoryService historyService;
     @Autowired
     private ActTaskService actTaskService;
+    @Autowired
+    private SealMaterialService sealMaterialService;
 
     @ModelAttribute
     public SealApplyForInfo get(@RequestParam(required=false) String id) {
@@ -191,6 +195,10 @@ public class SealApplyForController extends BaseController {
             sealApplyForInfo.setSealCompany("1");
         }
 
+        User user = UserUtils.getUser();
+        SealMaterialInfo sealMaterialInfo = new SealMaterialInfo();
+        sealMaterialInfo.setAgent(user);
+        model.addAttribute("sealMaterialInfo",sealMaterialInfo);
         model.addAttribute("sealApplyForInfo", sealApplyForInfo);
         return "modules/sealApplyFor/sealApplyForForm";
     }
@@ -204,6 +212,13 @@ public class SealApplyForController extends BaseController {
     @RequestMapping(value = "view")
     public String view(SealApplyForInfo sealApplyForInfo, Model model) {
         model.addAttribute("sealApplyForInfo", sealApplyForInfo);
+        List<SealMaterialInfo> sealMaterialInfos = sealMaterialService.getSealMaterialByProjectId(sealApplyForInfo.getProjectId());
+        if(sealMaterialInfos.size()<=0){
+//            addMessage(redirectAttributes, "盖章申请已送审,无法暂存");
+//            return "redirect:"+ Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
+            logger.error("盖章材料获取失败");
+        }
+        model.addAttribute("sealMaterialInfos",sealMaterialInfos);
         return "modules/sealApplyFor/sealApplyForView";
     }
 
@@ -250,6 +265,11 @@ public class SealApplyForController extends BaseController {
     @RequiresPermissions(value={"sealApplyFor:sealApplyFor:add","sealApplyFor:sealApplyFor:edit"},logical=Logical.OR)
     @RequestMapping(value = "save")
     public String save(SealApplyForInfo sealApplyForInfo, Model model, RedirectAttributes redirectAttributes) {
+        List<SealMaterialInfoImport> sealMaterialInfoImportList = sealApplyForInfo.getSealMaterialInfoList();
+        if(sealMaterialInfoImportList.size()<=0){
+            addMessage(redirectAttributes, "用印材料名称、数量、主要内容简述等获取失败,请重试");
+            return "redirect:"+Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
+        }
         if (!beanValidator(model, sealApplyForInfo)){
             return form(sealApplyForInfo, model);
         }
@@ -282,6 +302,36 @@ public class SealApplyForController extends BaseController {
             logger.error("保存盖章申请异常:",e);
             addMessage(redirectAttributes, "保存盖章申请异常:"+e.getMessage());
         }
+
+
+//        Iterator<SealMaterialInfoImport> iterator = sealMaterialInfoImportList.iterator();
+//        while (iterator.hasNext()){
+//            SealMaterialInfoImport sealMaterialInfoImport = iterator.next();
+//            if(sealMaterialInfoImport.getSealMaterialName() == null || sealMaterialInfoImport.getAmount() == null){
+//                iterator.remove();
+//            }else {
+//                sealMaterialInfoImportList.add(sealMaterialInfoImport);
+//            }
+//        }
+//        这块做塞值处理的
+        for(int k=0;k<sealMaterialInfoImportList.size();k++){
+            sealMaterialInfoImportList.get(k).setProjectId(sealApplyForInfo.getProjectId());
+            if(sealMaterialInfoImportList.get(k).getSealMaterialImportRemarks()== null){
+                sealMaterialInfoImportList.get(k).setSealMaterialImportRemarks(" ");
+//                sealMaterialInfoImportList.get(k).setUseSealTime();
+            }
+            //       判断项目名称、材料名称、价格是否为空
+            if(sealMaterialInfoImportList.get(k).getSealMaterialName()==null || sealMaterialInfoImportList.get(k).getAmount() ==null){
+                addMessage(redirectAttributes, "项目名称、材料名称、价格等获取失败,请重试");
+                return "redirect:"+Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
+            }
+        }
+        Map map = sealMaterialService.qureyCountAboutSealMaterial(sealMaterialInfoImportList);
+        if((map.containsKey("failure"))){
+            addMessage(redirectAttributes, map.get("failure").toString());
+            return "redirect:"+Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
+        }
+        sealMaterialService.batchSave(sealMaterialInfoImportList);
         return "redirect:"+Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
     }
 

+ 35 - 0
src/main/java/com/jeeplus/modules/sealMaterial/dao/SealMaterialDao.java

@@ -0,0 +1,35 @@
+package com.jeeplus.modules.sealMaterial.dao;
+
+import com.jeeplus.common.persistence.CrudDao;
+import com.jeeplus.common.persistence.annotation.MyBatisDao;
+
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoImport;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@MyBatisDao
+public interface SealMaterialDao extends CrudDao<SealMaterialInfoImport> {
+
+
+    /**
+     * 查询同项目名称、价格、材料名称的数量
+     */
+    public Integer selectCountAboutSealMaterial(SealMaterialInfoImport sealMaterialInfoImport);
+
+    /**
+     * 材料库处理的批量插入
+     */
+    public Integer batchInsert(@Param("sealMaterialInfoImportList") List<SealMaterialInfoImport> sealMaterialInfoImportList);
+
+    /**
+     * 审批完成后的时间更新
+     */
+    public Integer batchUpdateTime( SealMaterialInfo sealMaterialInfo);
+
+    /**
+     * 根据项目id获取印章材料
+     */
+    public List<SealMaterialInfo> getSealMaterialByProjectId(String projectId);
+}

+ 206 - 0
src/main/java/com/jeeplus/modules/sealMaterial/entity/SealMaterialInfo.java

@@ -0,0 +1,206 @@
+package com.jeeplus.modules.sealMaterial.entity;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.jeeplus.common.persistence.ActEntity;
+import com.jeeplus.modules.sys.entity.User;
+
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 材料用印实体类
+ */
+public class SealMaterialInfo extends ActEntity<SealMaterialInfo> {
+
+    //用印材料名称
+    private String sealMaterialName;
+
+//    数量
+    private Integer amount;
+
+//    主要内容简述
+    private String mainContents;
+
+//    经办人
+    private User agent;
+
+    //    用印时间
+    private Date useSealTime;
+
+    private String sealMaterialImportRemarks; //备注
+
+//    项目id
+    private String projectId;
+
+    private String projectName; //项目名称
+
+    private String reportId; //报告号
+
+    private String area; //地点
+
+    private String reviewPerson; //项目审核人
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date startDate; //项目开始时间
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+    private Date endingDate;//项目结束时间
+
+    private String porjectCreatePerson;//项目创建人
+
+    private String projectMasterId; //项目负责人
+
+    private List<SealMaterialInfo> sealMaterialInfoList;
+
+    public String getSealMaterialName() {
+        return sealMaterialName;
+    }
+
+    public void setSealMaterialName(String sealMaterialName) {
+        this.sealMaterialName = sealMaterialName;
+    }
+
+    public Integer getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Integer amount) {
+        this.amount = amount;
+    }
+
+    public String getMainContents() {
+        return mainContents;
+    }
+
+    public void setMainContents(String mainContents) {
+        this.mainContents = mainContents;
+    }
+
+    public User getAgent() {
+        return agent;
+    }
+
+    public void setAgent(User agent) {
+        this.agent = agent;
+    }
+
+    public Date getUseSealTime() {
+        return useSealTime;
+    }
+
+    public void setUseSealTime(Date useSealTime) {
+        this.useSealTime = useSealTime;
+    }
+
+    public List<com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo> getSealMaterialInfoList() {
+        return sealMaterialInfoList;
+    }
+
+    public void setSealMaterialInfoList(List<com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo> sealMaterialInfoList) {
+        this.sealMaterialInfoList = sealMaterialInfoList;
+    }
+
+    public String getSealMaterialImportRemarks() {
+        return sealMaterialImportRemarks;
+    }
+
+    public void setSealMaterialImportRemarks(String sealMaterialImportRemarks) {
+        this.sealMaterialImportRemarks = sealMaterialImportRemarks;
+    }
+
+    public SealMaterialInfo(String sealMaterialName, Integer amount, String mainContents, User agent, Date useSealTime, String sealMaterialImportRemarks, List<SealMaterialInfo> sealMaterialInfoList) {
+        this.sealMaterialName = sealMaterialName;
+        this.amount = amount;
+        this.mainContents = mainContents;
+        this.agent = agent;
+        this.useSealTime = useSealTime;
+        this.sealMaterialImportRemarks = sealMaterialImportRemarks;
+        this.sealMaterialInfoList = sealMaterialInfoList;
+    }
+
+    public SealMaterialInfo(String id, String sealMaterialName, Integer amount, String mainContents, User agent, Date useSealTime, String sealMaterialImportRemarks, List<SealMaterialInfo> sealMaterialInfoList) {
+        super(id);
+        this.sealMaterialName = sealMaterialName;
+        this.amount = amount;
+        this.mainContents = mainContents;
+        this.agent = agent;
+        this.useSealTime = useSealTime;
+        this.sealMaterialImportRemarks = sealMaterialImportRemarks;
+        this.sealMaterialInfoList = sealMaterialInfoList;
+    }
+
+    public SealMaterialInfo(){
+
+    }
+
+    public String getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(String projectId) {
+        this.projectId = projectId;
+    }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public String getReportId() {
+        return reportId;
+    }
+
+    public void setReportId(String reportId) {
+        this.reportId = reportId;
+    }
+
+    public String getArea() {
+        return area;
+    }
+
+    public void setArea(String area) {
+        this.area = area;
+    }
+
+    public String getReviewPerson() {
+        return reviewPerson;
+    }
+
+    public void setReviewPerson(String reviewPerson) {
+        this.reviewPerson = reviewPerson;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+    public Date getEndingDate() {
+        return endingDate;
+    }
+
+    public void setEndingDate(Date endingDate) {
+        this.endingDate = endingDate;
+    }
+
+    public String getPorjectCreatePerson() {
+        return porjectCreatePerson;
+    }
+
+    public void setPorjectCreatePerson(String porjectCreatePerson) {
+        this.porjectCreatePerson = porjectCreatePerson;
+    }
+
+    public String getProjectMasterId() {
+        return projectMasterId;
+    }
+
+    public void setProjectMasterId(String projectMasterId) {
+        this.projectMasterId = projectMasterId;
+    }
+}

+ 75 - 0
src/main/java/com/jeeplus/modules/sealMaterial/entity/SealMaterialInfoExport.java

@@ -0,0 +1,75 @@
+package com.jeeplus.modules.sealMaterial.entity;
+
+import com.jeeplus.common.persistence.ActEntity;
+import com.jeeplus.modules.sys.entity.User;
+
+import java.util.Date;
+import java.util.List;
+
+public class SealMaterialInfoExport extends ActEntity<SealMaterialInfoExport> {
+
+    //用印材料名称
+    private String sealMaterialName;
+
+    //    数量
+    private Integer amount;
+
+    //    主要内容简述
+    private String mainContents;
+
+    //    经办人
+    private User agent;
+
+    //    用印时间
+    private Date useSealTime;
+
+    private List<SealMaterialInfoExport> sealMaterialInfoExportList;
+
+    public String getSealMaterialName() {
+        return sealMaterialName;
+    }
+
+    public void setSealMaterialName(String sealMaterialName) {
+        this.sealMaterialName = sealMaterialName;
+    }
+
+    public Integer getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Integer amount) {
+        this.amount = amount;
+    }
+
+    public String getMainContents() {
+        return mainContents;
+    }
+
+    public void setMainContents(String mainContents) {
+        this.mainContents = mainContents;
+    }
+
+    public User getAgent() {
+        return agent;
+    }
+
+    public void setAgent(User agent) {
+        this.agent = agent;
+    }
+
+    public Date getUseSealTime() {
+        return useSealTime;
+    }
+
+    public void setUseSealTime(Date useSealTime) {
+        this.useSealTime = useSealTime;
+    }
+
+    public List<SealMaterialInfoExport> getSealMaterialInfoExportList() {
+        return sealMaterialInfoExportList;
+    }
+
+    public void setSealMaterialInfoExportList(List<SealMaterialInfoExport> sealMaterialInfoExportList) {
+        this.sealMaterialInfoExportList = sealMaterialInfoExportList;
+    }
+}

+ 101 - 0
src/main/java/com/jeeplus/modules/sealMaterial/entity/SealMaterialInfoImport.java

@@ -0,0 +1,101 @@
+package com.jeeplus.modules.sealMaterial.entity;
+
+import com.jeeplus.common.persistence.ActEntity;
+import com.jeeplus.common.utils.excel.annotation.ExcelField;
+import com.jeeplus.modules.sys.entity.User;
+
+import java.util.Date;
+import java.util.List;
+
+public class SealMaterialInfoImport extends ActEntity<SealMaterialInfoImport> {
+
+    //用印材料名称
+    @ExcelField(title="用印材料名称", align=2, sort=1)
+    private String sealMaterialName;
+
+    //    数量
+    @ExcelField(title="数量", align=2, sort=2)
+    private Integer amount;
+
+    //    主要内容简述
+    @ExcelField(title="主要内容简述", align=2, sort=3)
+    private String mainContents;
+
+    //    经办人
+    private User agent;
+
+    private String projectId; //项目id
+
+    @ExcelField(title="备注", align=2, sort=4)
+    private String sealMaterialImportRemarks;
+
+//    用印时间
+    private Date useSealTime;
+
+
+    private List<SealMaterialInfoImport> sealMaterialInfoImportList;
+
+    public String getSealMaterialName() {
+        return sealMaterialName;
+    }
+
+    public void setSealMaterialName(String sealMaterialName) {
+        this.sealMaterialName = sealMaterialName;
+    }
+
+    public Integer getAmount() {
+        return amount;
+    }
+
+    public void setAmount(Integer amount) {
+        this.amount = amount;
+    }
+
+    public String getMainContents() {
+        return mainContents;
+    }
+
+    public void setMainContents(String mainContents) {
+        this.mainContents = mainContents;
+    }
+
+    public User getAgent() {
+        return agent;
+    }
+
+    public void setAgent(User agent) {
+        this.agent = agent;
+    }
+
+    public List<SealMaterialInfoImport> getSealMaterialInfoImportList() {
+        return sealMaterialInfoImportList;
+    }
+
+    public void setSealMaterialInfoImportList(List<SealMaterialInfoImport> sealMaterialInfoImportList) {
+        this.sealMaterialInfoImportList = sealMaterialInfoImportList;
+    }
+
+    public String getSealMaterialImportRemarks() {
+        return sealMaterialImportRemarks;
+    }
+
+    public void setSealMaterialImportRemarks(String sealMaterialImportRemarks) {
+        this.sealMaterialImportRemarks = sealMaterialImportRemarks;
+    }
+
+    public String getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(String projectId) {
+        this.projectId = projectId;
+    }
+
+    public Date getUseSealTime() {
+        return useSealTime;
+    }
+
+    public void setUseSealTime(Date useSealTime) {
+        this.useSealTime = useSealTime;
+    }
+}

+ 99 - 0
src/main/java/com/jeeplus/modules/sealMaterial/service/SealMaterialService.java

@@ -0,0 +1,99 @@
+package com.jeeplus.modules.sealMaterial.service;
+
+import com.google.common.collect.Lists;
+import com.jeeplus.common.service.CrudService;
+import com.jeeplus.common.utils.IdGen;
+import com.jeeplus.common.utils.StringUtils;
+import com.jeeplus.modules.sealMaterial.dao.SealMaterialDao;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoImport;
+import org.apache.regexp.RE;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.*;
+
+@Service
+@Transactional(readOnly = true)
+public class SealMaterialService extends CrudService<SealMaterialDao,SealMaterialInfoImport> {
+
+    @Autowired
+    private SealMaterialDao sealMaterialDao;
+
+    /**
+     * 查询同项目名称、数量、是否只有一个
+     */
+    public Map qureyCountAboutSealMaterial(List<SealMaterialInfoImport> sealMaterialInfoImportList){
+        int i =0;
+        HashMap map = new HashMap();
+        StringBuilder stringBuilder = new StringBuilder();
+        List<String> list = new ArrayList();
+        Set set = new HashSet();
+        Boolean flag = false;
+        //材料列表自身重复判断
+        for (SealMaterialInfoImport sealMaterialInfoImport: sealMaterialInfoImportList){
+            StringBuilder stringBuilder2 = new StringBuilder();
+            String str = new String();
+            str = sealMaterialInfoImport.getSealMaterialName()+sealMaterialInfoImport.getAmount();
+            list.add(str);
+            stringBuilder2.append(sealMaterialInfoImport.getSealMaterialName()).append(sealMaterialInfoImport.getAmount());
+            set.add(str);
+            i++;
+        }
+//        如果列表长度和set长度不符合,代表有不符合条件的参数
+        if(sealMaterialInfoImportList.size() != set.size()){
+            stringBuilder.append(" 数据中存在重复材料,无法进行添加");
+            map.put("failure",stringBuilder);
+            return map;
+        }
+//        数据库判断
+        List<String> materialNameList = Lists.newArrayList();
+        for(int j=0;j<sealMaterialInfoImportList.size();j++){
+            if(sealMaterialDao.selectCountAboutSealMaterial(sealMaterialInfoImportList.get(j))!=0){
+                materialNameList.add(sealMaterialInfoImportList.get(j).getSealMaterialName());
+                flag = true;
+            }
+        }
+        if(!flag){
+            //如果重复,重复的材料名称以String形式抛出到前端  join方法
+            map.put("successful",stringBuilder);
+            return  map;
+        }else {
+            String join = StringUtils.join(materialNameList, ",");
+            stringBuilder.append("材料 " + join + " 已存在,请勿重复添加");
+            map.put("failure",stringBuilder);
+            return map;
+        }
+    }
+
+
+    /**
+     * 批量保存
+     * @param
+     */
+    @Transactional(readOnly = false)
+    public void batchSave(List<SealMaterialInfoImport> sealMaterialInfoImportList) {
+        for(SealMaterialInfoImport sealMaterialInfoImport:sealMaterialInfoImportList){
+            sealMaterialInfoImport.setId(IdGen.uuid());
+            sealMaterialInfoImport.preInsert();
+        }
+        sealMaterialDao.batchInsert(sealMaterialInfoImportList);
+    }
+
+    /**
+     * 批量更新
+     */
+    @Transactional(readOnly = false)
+    public void batchUpdateTime(SealMaterialInfo sealMaterialInfo) {
+        sealMaterialInfo.preUpdate();
+        sealMaterialDao.batchUpdateTime(sealMaterialInfo);
+    }
+
+    /**
+     * 根据项目id获取盖章材料
+     */
+    public List<SealMaterialInfo> getSealMaterialByProjectId(String projectId){
+        return sealMaterialDao.getSealMaterialByProjectId(projectId);
+    }
+}

+ 86 - 0
src/main/java/com/jeeplus/modules/sealMaterial/web/SealMaterialController.java

@@ -0,0 +1,86 @@
+package com.jeeplus.modules.sealMaterial.web;
+
+import com.jeeplus.common.config.Global;
+import com.jeeplus.common.utils.DateUtils;
+import com.jeeplus.common.utils.StringUtils;
+import com.jeeplus.common.utils.ThisLocalityDownloadUtil;
+import com.jeeplus.common.utils.excel.ImportExcel;
+import com.jeeplus.common.web.BaseController;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoExport;
+import com.jeeplus.modules.sealMaterial.entity.SealMaterialInfoImport;
+import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.workreceiptsregister.entity.ResponseEntity;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+
+@Controller
+@RequestMapping(value = "${adminPath}/seal/sealMaterial")
+public class SealMaterialController extends BaseController{
+
+
+    /**
+     * 导入Excel数据
+     */
+    @ResponseBody
+    @RequestMapping(value = "import", method= RequestMethod.POST)
+    public Object importFile(MultipartFile file, RedirectAttributes redirectAttributes) {
+        ResponseEntity<SealMaterialInfoImport> responseEntity = new ResponseEntity<>();
+        try {
+            ImportExcel ei = new ImportExcel(file, 1, 0);
+            List<SealMaterialInfoImport> list = ei.getDataList(SealMaterialInfoImport.class);
+            List<SealMaterialInfoImport> listAll = new ArrayList<>();
+
+            for (SealMaterialInfoImport sealMaterialInfoImport : list) {
+                sealMaterialInfoImport.setAgent(UserUtils.getUser());
+                if(StringUtils.isNotBlank(sealMaterialInfoImport.getSealMaterialName()) && null != sealMaterialInfoImport.getSealMaterialImportRemarks()  && null != sealMaterialInfoImport.getAgent() ){
+                    listAll.add(sealMaterialInfoImport);
+                }
+            }
+            responseEntity.setData(listAll);
+        } catch (Exception e) {
+            logger.error("导入印章登记表失败!",e);
+            responseEntity.setCode(400);
+            responseEntity.setMessage("导入印章登记表失败!"+e.getMessage());
+        }
+        return responseEntity;
+    }
+
+    @RequestMapping(value = "import/template")
+    public String importFileTemplate(HttpServletResponse response, HttpServletRequest request, RedirectAttributes redirectAttributes) {
+        try {
+            ThisLocalityDownloadUtil download = new ThisLocalityDownloadUtil();
+            download.download("印章登记表模板.xlsx",request,response);
+        } catch (Exception e) {
+            logger.error("印章登记表模板下载失败!",e);
+        }
+        return "redirect:"+ Global.getAdminPath()+"/sealApplyFor/sealApplyFor/?repage";
+    }
+
+    /**
+     * 导出excel文件
+     */
+//    @RequestMapping(value = "export", method= RequestMethod.POST)
+//    public String exportFile(SealMaterialInfo sealMaterialInfo, HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
+//        try {
+//            //添加查询类型(造价审核)
+//            String fileName = "盖章材料表"+ DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
+//            List<SealMaterialInfoExport> list = projectRecordsService.findPageExport(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
+//            new ExportExcel("项目", RuralProjectRecordsExport.class).setDataList(list).write(response, fileName).dispose();
+//            return null;
+//        } catch (Exception e) {
+//            addMessage(redirectAttributes, "导出项目记录失败!失败信息:"+e.getMessage());
+//            logger.error("Exception e:"+e);
+//        }
+//        return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectRecords/?repage";
+//    }
+}

+ 44 - 0
src/main/resources/mappings/modules/sealMaterial/sealMaterialDao.xml

@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.jeeplus.modules.sealMaterial.dao.SealMaterialDao">
+
+
+	<select id="selectCountAboutSealMaterial" resultType="integer">
+		select count(1)
+		from seal_material_info
+		where seal_material_name = #{sealMaterialName}
+		and amount = #{amount}
+		and project_id = #{projectId}
+	</select>
+
+	<!--物理删除-->
+	<delete id="delete">
+		delete from seal_material_info
+		WHERE id = #{id}
+	</delete>
+
+<!--	批量保存-->
+	<insert id="batchInsert">
+		insert into seal_material_info
+		(id,create_by,create_date,update_by,update_date,remarks,del_flag,seal_material_name,amount,main_contents,agent,seal_contents_remarks,project_id)
+		values
+		<foreach collection="sealMaterialInfoImportList" item="data" separator=",">
+			(#{data.id},#{data.createBy.id},#{data.createDate},#{data.updateBy.id},#{data.updateDate},' ',#{data.delFlag},#{data.sealMaterialName},#{data.amount},#{data.mainContents},#{data.agent.name},#{data.sealMaterialImportRemarks},#{data.projectId})
+		</foreach>
+	</insert>
+
+<!--批量更新时间-->
+	<update id="batchUpdateTime">
+		update seal_material_info set
+		use_seal_time = NOW()
+		where project_id =#{projectId}
+	</update>
+
+	<select id="getSealMaterialByProjectId" resultType="com.jeeplus.modules.sealMaterial.entity.SealMaterialInfo">
+		select r.project_name as "projectName",r.project_id as "reportId",s.seal_material_name as "sealMaterialName",s.amount as "amount",s.main_contents as "mainContents",r.area_name as "area",r.reviewer_person as "reviewPerson",(select s.name from rural_project_records r,sys_user s where r.create_by = s.id and r.id = #{projectId}) as "porjectCreatePerson",u.name as "projectMasterId",r.start_date as "startDate",r.ending_date as "endingDate"
+		from seal_material_info s
+		left join rural_project_records r on s.project_id = r.id
+		left join sys_user u on r.project_master_id = u.id
+		where s.project_id =#{projectId}
+	</select>
+</mapper>

+ 70 - 0
src/main/webapp/WEB-INF/tags/table/importExcelA.tag

@@ -0,0 +1,70 @@
+<%@ tag language="java" pageEncoding="UTF-8"%>
+<%@ include file="/webpage/include/taglib.jsp"%>
+<%@ attribute name="url" type="java.lang.String" required="true"%>
+<%-- 使用方法: 1.将本tag写在查询的form之前;2.传入controller的url --%>
+<a id="btnImport" class="nav-btn nav-btn-import" data-toggle="tooltip" data-placement="left" title="导入"><i class="fa fa-folder-open-o"></i> 导入</a>
+<div id="importBox" class="hide">
+	<form id="importForm2" action="${url}" method="post" enctype="multipart/form-data" onsubmit="loading('正在导入,请稍等...');">
+		<br/>
+		<input id="uploadFile" name="file" type="file" style="width:330px"/>导入文件不能超过5M,仅允许导入“xls”或“xlsx”格式文件!<br/>  
+
+	</form>
+</div>
+<script type="text/javascript">
+	$(document).ready(function() {
+		$("#btnImport").click(function(){
+			top.layer.open({
+				type: 1,
+				area: [500, 300],
+				title:"导入数据",
+				content:$("#importBox").html() ,
+				btn: ['下载模板','确定', '关闭'],
+				btn1: function(index, layero){
+					window.location.href='${url}/template';
+				},
+				btn2: function(index, layero){
+					/*$('#importForm2').ajaxSubmit({
+                        dataType: "json",
+                        success: function (result) {
+                            console.log(result);
+                            if(result.code == 0){
+                                genRow(result.data);
+                            }else {
+                                top.layer.msg("导入文件异常:"+result.message);
+                            }
+                        },
+                        error: function () {
+                            top.layer.msg("导入文件失败!");
+                        }
+                    });*/
+
+					var formData = new FormData();
+					formData.append("file",top.$("#uploadFile")[0].files[0]);
+					$.ajax({
+						type: 'post',
+						url: "${url}",
+						data: formData,
+						dataType: "json",
+						cache: false,
+						processData: false,
+						contentType: false,
+					}).success(function (result) {
+						if(result.code == 0){
+							genRow(result.data);
+						}else {
+							top.layer.msg("导入文件异常:"+result.message);
+						}
+					}).error(function () {
+						top.layer.msg("导入文件失败!");
+					});
+					top.layer.close(index);
+				},
+				btn3: function(index){
+					top.layer.close(index);
+				}
+			});
+		});
+
+	});
+
+</script>

二進制
src/main/webapp/dot/印章登记表模板.xlsx


+ 333 - 201
src/main/webapp/webpage/modules/sealApplyFor/sealApplyForForm.jsp

@@ -98,6 +98,74 @@
                 $("#upTable").load(location.href+"?projectId="+obj + " #upTable");
             }
         }
+
+        function genRow(data) {
+            console.log(data)
+            for (var i = 0; i < data.length; i++) {
+                addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl, data[i])
+            }
+        }
+
+        function addRow1(list, idx, tpl, row){
+            var idx1 = $("#sealMaterialInfoList tr").length;
+            console.log(idx1)
+            if(list == '#sealMaterialInfoList'){
+                bornTemplete1(list, idx, tpl, row, idx1);
+                sealMaterialInfoListRowIdx+=1;
+            }
+        }
+
+        function bornTemplete1(list, idx, tpl, row, idx1){
+            $(list).append(Mustache.render(tpl, {
+                idx: idx, delBtn: true, row: row,
+                order:idx1 + 1
+            }));
+            $(list+idx).find("select").each(function(){
+                $(this).val($(this).attr("data-value"));
+            });
+            $(list+idx).find("input[type='checkbox'], input[type='radio']").each(function(){
+                var ss = $(this).attr("data-value").split(',');
+                for (var i=0; i<ss.length; i++){
+                    if($(this).val() == ss[i]){
+                        $(this).attr("checked","checked");
+                    }
+                }
+            });
+        }
+
+        function delRow(obj, prefix) {
+            var id = $(prefix + "_invoiceId");
+            var delFlag = $(prefix + "_delFlag");
+            if (id.val() == "") {
+                $(obj).parent().parent().remove();
+            } else if (delFlag.val() == "0") {
+                delFlag.val("1");
+                $(obj).html("&divide;").attr("title", "撤回删除");
+                $(obj).parent().parent().addClass("error");
+                $(obj).parent().parent().addClass("hide");
+            } else if (delFlag.val() == "1") {
+                delFlag.val("0");
+                $(obj).html("&times;").attr("title", "删除");
+                $(obj).parent().parent().removeClass("error");
+            }
+            var length=$("#projectMaterialStorageList tr").length;
+            var count=length;
+            for (var i=1;i<=length;i++) {
+                var delFlag = $("#projectMaterialStorageList").find("tr").eq(i-1).find("input").eq(1).val();
+                if (delFlag == "1") {
+                    count =count-1;
+                }
+            }
+            if(count==1){
+                $("#chargeType").val("2")
+                layui.form.render();
+            }else if (count>1){
+                $("#chargeType").val("1")
+                layui.form.render();
+            }else if(count == 0){
+                $("#projectFlag").val("");
+            }
+        }
     </script>
 </head>
 <body>
@@ -108,228 +176,291 @@
             <form:hidden path="id"/>
             <input type="hidden" id="flagFile" value="">
 
-            <div class="form-group layui-row first">
-                <div class="form-group-label"><h2>盖章信息</h2></div>
-                <div class="layui-item layui-col-sm6">
-                    <label class="layui-form-label"><span class="require-item">*</span>单位:</label>
-                    <div class="layui-input-block">
-                        <input type="radio" name="sealCompany" value="0" title="东兴" <c:if test="${sealApplyForInfo.sealCompany=='0'}">checked</c:if>>
-                        <input type="radio" name="sealCompany" value="1" title="赣能" <c:if test="${sealApplyForInfo.sealCompany=='1'}">checked</c:if> >
+            <div  id="upTable" class="form-group layui-row first">
+                <div class="form-group layui-row first">
+                    <div class="form-group-label"><h2>项目基础信息</h2></div>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label"><span class="require-item">*</span>项目名称:</label>
+                        <div class="layui-input-block with-icon">
+                            <sys:gridselectcallproject url="${ctx}/sealApplyFor/sealApplyFor/selectprojectOnList" id="projectRecords" name="projectRecords.id"  value="${sealApplyForInfo.projectRecords.id}"  title="选择所属项目" labelName="projectRecords.projectName" cssStyle="background-color:#fff"
+                                                       labelValue="${sealApplyForInfo.projectRecords.projectName}" cssClass="form-control required layui-input"  fieldLabels="项目" fieldKeys="projectName" searchLabel="项目名称" searchKey="projectName" ></sys:gridselectcallproject>
+                        </div>
                     </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6 with-textarea">
-                    <label class="layui-form-label ">盖章说明:</label>
-                    <div class="layui-input-block">
-                        <form:textarea path="remarks" placeholder="请输入盖章说明信息" id="remarks" htmlEscape="false" rows="4"  maxlength="255"  class="form-control "/>
-                    </div>
-                </div>
-            </div>
-
-            <div id="upTable">
-            <div class="form-group layui-row first">
-                <div class="form-group-label"><h2>项目基础信息</h2></div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label"><span class="require-item">*</span>项目名称:</label>
-                    <div class="layui-input-block with-icon">
-                        <sys:gridselectcallproject url="${ctx}/sealApplyFor/sealApplyFor/selectprojectOnList" id="projectRecords" name="projectRecords.id"  value="${sealApplyForInfo.projectRecords.id}"  title="选择所属项目" labelName="projectRecords.projectName" cssStyle="background-color:#fff"
-                                                    labelValue="${sealApplyForInfo.projectRecords.projectName}" cssClass="form-control required layui-input"  fieldLabels="项目" fieldKeys="projectName" searchLabel="项目名称" searchKey="projectName" ></sys:gridselectcallproject>
-                    </div>
-                </div>
 
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">报告号:</label>
-                    <div class="layui-input-block">
-                        <input id="projectReportDataNumber" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectReportNumber}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">项目编号:</label>
-                    <div class="layui-input-block">
-                        <input id="projectId" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectId}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">项目所在地:</label>
-                    <div class="layui-input-block">
-                        <input id="area" htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.province}-${sealApplyForInfo.projectRecords.city}-${sealApplyForInfo.projectRecords.county}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">投资性质:</label>
-                    <div class="layui-input-block">
-                        <c:if test="${sealApplyForInfo.projectRecords.projectProperties==null}">
-                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input"/>
-                        </c:if>
-                        <c:forEach  items="${fns:getMainDictList('project_properties')}" var="v">
-                            <c:if test="${v.value==sealApplyForInfo.projectRecords.projectProperties}">
-                                <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${v.label}"/>
-                            </c:if>
-                        </c:forEach>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">建设地点:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1"  readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectSite}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">创建人:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.createBy.name}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">审核人:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.reviewerPerson}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">所属部门:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="officeName" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.officeName}"/>
-                    </div>
-                </div>
-                <%--<div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label double-line">项目归属部门:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="belongingDepartmentName" class="form-control layui-input" value="${sealApplyForInfo.belongingDepartmentName}"/>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">报告号:</label>
+                        <div class="layui-input-block">
+                            <input id="projectReportDataNumber" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectReportNumber}"/>
+                        </div>
                     </div>
-                </div>--%>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">项目负责人:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectMasterName}"/>
+<%--                    <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                        <label class="layui-form-label">项目编号:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <input id="projectId" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectId}"/>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">项目所在地:</label>
+                        <div class="layui-input-block">
+                            <input id="area" htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.province}-${sealApplyForInfo.projectRecords.city}-${sealApplyForInfo.projectRecords.county}"/>
+                        </div>
                     </div>
-                </div>
-                <%--<div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">工程类型:</label>
-                    <div class="layui-input-block">
-                        <form:select path="engineeringType" disabled="true" style="background-color: #f1f1f1"  class="form-control simple-select">
-                            <form:options items="${engineeringInfo}" itemLabel="engineeringName" itemValue="id" htmlEscape="false"/>
-                        </form:select>
+<%--                    <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                        <label class="layui-form-label">投资性质:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <c:if test="${sealApplyForInfo.projectRecords.projectProperties==null}">--%>
+<%--                                <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input"/>--%>
+<%--                            </c:if>--%>
+<%--                            <c:forEach  items="${fns:getMainDictList('project_properties')}" var="v">--%>
+<%--                                <c:if test="${v.value==sealApplyForInfo.projectRecords.projectProperties}">--%>
+<%--                                    <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${v.label}"/>--%>
+<%--                                </c:if>--%>
+<%--                            </c:forEach>--%>
+<%--                        </div>--%>
+<%--                    </div>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">建设地点:</label>
+                        <div class="layui-input-block">
+                            <input htmlEscape="false" style="background-color: #f1f1f1"  readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectSite}"/>
+                        </div>
+                    </div>--%>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">创建人:</label>
+                        <div class="layui-input-block">
+                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.createBy.name}"/>
+                        </div>
                     </div>
-                </div>--%>
-                <%--<div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label double-line">送审规模(万元):</label>
-                    <div class="layui-input-block">
-                        <form:input path="submitScale" readonly="true" style="background-color: #f1f1f1" id="submitScale" maxlength="12" htmlEscape="false" placeholder="请输入送审规模" class="form-control layui-input number"/>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">审核人:</label>
+                        <div class="layui-input-block">
+                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.reviewerPerson}"/>
+                        </div>
                     </div>
-                </div>--%>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label double-line">工作开始日期:</label>
-                    <div class="layui-input-block">
-                        <input class="laydate-icondate form-control layui-input layer-date ash"  style="background-color: #f1f1f1" readonly="true" id="startDate" name="startDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.startDate}" pattern="yyyy-MM-dd"/>">
+<%--                    <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                        <label class="layui-form-label">所属部门:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="officeName" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.officeName}"/>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+                        <%--<div class="layui-item layui-col-sm6 lw6">
+                            <label class="layui-form-label double-line">项目归属部门:</label>
+                            <div class="layui-input-block">
+                                <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="belongingDepartmentName" class="form-control layui-input" value="${sealApplyForInfo.belongingDepartmentName}"/>
+                            </div>
+                        </div>--%>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label">项目负责人:</label>
+                        <div class="layui-input-block">
+                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectMasterName}"/>
+                        </div>
                     </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label double-line">工作结束日期:</label>
-                    <div class="layui-input-block">
-                        <input class="laydate-icondate form-control layui-input layer-date "  style="background-color: #f1f1f1" readonly="true" id="endingDate" name="endingDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.endingDate}" pattern="yyyy-MM-dd"/>">
+                        <%--<div class="layui-item layui-col-sm6 lw6">
+                            <label class="layui-form-label">工程类型:</label>
+                            <div class="layui-input-block">
+                                <form:select path="engineeringType" disabled="true" style="background-color: #f1f1f1"  class="form-control simple-select">
+                                    <form:options items="${engineeringInfo}" itemLabel="engineeringName" itemValue="id" htmlEscape="false"/>
+                                </form:select>
+                            </div>
+                        </div>--%>
+                        <%--<div class="layui-item layui-col-sm6 lw6">
+                            <label class="layui-form-label double-line">送审规模(万元):</label>
+                            <div class="layui-input-block">
+                                <form:input path="submitScale" readonly="true" style="background-color: #f1f1f1" id="submitScale" maxlength="12" htmlEscape="false" placeholder="请输入送审规模" class="form-control layui-input number"/>
+                            </div>
+                        </div>--%>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label double-line">工作开始日期:</label>
+                        <div class="layui-input-block">
+                            <input class="laydate-icondate form-control layui-input layer-date ash"  style="background-color: #f1f1f1" readonly="true" id="startDate" name="startDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.startDate}" pattern="yyyy-MM-dd"/>">
+                        </div>
                     </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">创建日期:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false"  style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.createDate}" pattern="yyyy-MM-dd"/>"/>
+                    <div class="layui-item layui-col-sm6 lw6">
+                        <label class="layui-form-label double-line">工作结束日期:</label>
+                        <div class="layui-input-block">
+                            <input class="laydate-icondate form-control layui-input layer-date "  style="background-color: #f1f1f1" readonly="true" id="endingDate" name="endingDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.endingDate}" pattern="yyyy-MM-dd"/>">
+                        </div>
                     </div>
+<%--                    <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                        <label class="layui-form-label">创建日期:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <input htmlEscape="false"  style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.createDate}" pattern="yyyy-MM-dd"/>"/>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+<%--                    <div class="layui-item layui-col-sm6 lw7">--%>
+<%--                        <label class="layui-form-label">项目类别:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.attachmentProjectSort}"/>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+<%--                    <div class="layui-item layui-col-sm6 lw7">--%>
+<%--                        <label class="layui-form-label">盖章数量:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.contractsNum}"/>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+<%--                    <div class="layui-item layui-col-sm12 lw6 with-textarea">--%>
+<%--                        <label class="layui-form-label">工程概况:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <textarea htmlEscape="false" rows="4" readonly="true"  style="background-color: #f1f1f1" maxlength="1000" class="form-control" >${sealApplyForInfo.projectRecords.projectDesc}</textarea>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
+<%--                    <div class="layui-item layui-col-sm12 lw6 with-textarea">--%>
+<%--                        <label class="layui-form-label">备注:</label>--%>
+<%--                        <div class="layui-input-block">--%>
+<%--                            <textarea htmlEscape="false" rows="4" readonly="true" maxlength="1000"  style="background-color: #f1f1f1" class="form-control" >${sealApplyForInfo.projectRecords.remarks}</textarea>--%>
+<%--                        </div>--%>
+<%--                    </div>--%>
                 </div>
-                <div class="layui-item layui-col-sm6 lw7">
-                    <label class="layui-form-label">项目类别:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.attachmentProjectSort}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw7">
-                    <label class="layui-form-label">盖章数量:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.contractsNum}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm12 lw6 with-textarea">
-                    <label class="layui-form-label">工程概况:</label>
+            </div>
+
+        <div   class="form-group layui-row first">
+        <div class="form-group layui-row first">
+                <div class="form-group-label"><h2>盖章信息</h2></div>
+                <div class="layui-item layui-col-sm6">
+                    <label class="layui-form-label"><span class="require-item">*</span>单位:</label>
                     <div class="layui-input-block">
-                        <textarea htmlEscape="false" rows="4" readonly="true"  style="background-color: #f1f1f1" maxlength="1000" class="form-control" >${sealApplyForInfo.projectRecords.projectDesc}</textarea>
+                        <input type="radio" name="sealCompany" value="0" title="东兴" <c:if test="${sealApplyForInfo.sealCompany=='0'}">checked</c:if>>
+                        <input type="radio" name="sealCompany" value="1" title="赣能" <c:if test="${sealApplyForInfo.sealCompany=='1'}">checked</c:if> >
                     </div>
                 </div>
-                <div class="layui-item layui-col-sm12 lw6 with-textarea">
-                    <label class="layui-form-label">备注:</label>
+                <div class="layui-item layui-col-sm6 lw6 with-textarea">
+                    <label class="layui-form-label ">盖章说明:</label>
                     <div class="layui-input-block">
-                        <textarea htmlEscape="false" rows="4" readonly="true" maxlength="1000"  style="background-color: #f1f1f1" class="form-control" >${sealApplyForInfo.projectRecords.remarks}</textarea>
+                        <form:textarea path="remarks" placeholder="请输入盖章说明信息" id="remarks" htmlEscape="false" rows="4"  maxlength="255"  class="form-control "/>
                     </div>
                 </div>
-            </div>
 
-            <div class="form-group layui-row">
-                <div class="form-group-label"><h2>委托方联系人信息</h2></div>
-                <div class="layui-item layui-col-xs12 form-table-container" >
-                    <table id="contentTable" class="table table-bordered table-condensed no-bottom-margin details">
-                        <thead>
-                        <tr>
-                            <th class="hide"></th>
-                            <th width="25%">委托方</th>
-                            <th width="25%">联系人姓名</th>
-                            <th width="25%">联系方式1</th>
-                            <th width="25%">联系方式2</th>
-                        </tr>
-                        </thead>
-                        <tbody id="workClientLinkmanList">
-                        <c:forEach items="${sealApplyForInfo.projectRecords.workClientLinkmanList}" var="info" varStatus="index">
-                            <tr>
-                                <td >
-                                        ${info.clientId.name}
-                                </td>
-                                <td>
-                                        ${info.name}
-                                </td>
-                                <td>
-                                        ${info.linkPhone}
-                                </td>
-                                <td>
-                                        ${info.linkMobile}
-                                </td>
-                            </tr>
-                        </c:forEach>
-                        </tbody>
-                    </table>
+                <div class="form-group layui-row">
+                    <div class="layui-item nav-btns">
+                    <a class="nav-btn nav-btn-add" onclick="addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl);sealMaterialInfoListRowIdx = sealMaterialInfoListRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
+                    <table:importExcelA url="${ctx}/seal/sealMaterial/import"></table:importExcelA><!-- 导入按钮 -->
                 </div>
-            </div>
-
-            <div class="form-group layui-row">
-                <div class="form-group-label"><h2>施工方信息</h2></div>
-                <div class="layui-item layui-col-xs12 form-table-container" >
-                    <table id="contentTable1" class="table table-bordered table-condensed no-bottom-margin details">
-                        <thead>
-                        <tr>
-                            <th class="hide"></th>
-                            <th width="25%">施工方单位名称</th>
-                            <th width="25%">联系人姓名</th>
-                            <th width="25%">联系方式1</th>
-                            <th width="25%">联系方式2</th>
-                        </tr>
-                        </thead>
-                        <tbody id="workConstructionLinkmanList">
-                        <c:forEach items="${sealApplyForInfo.projectRecords.workConstructionLinkmanList}" var="info" varStatus="index">
+                    <div class="layui-table-body layui-item layui-col-xs12 form-table-container"  style="padding:0px">
+                        <table id="contentTables" class="table table-bordered table-condensed can-edit no-bottom-margin details">
+                            <thead>
                             <tr>
-                                <td >
-                                        ${info.clientId.name}
-                                </td>
-                                <td>
-                                        ${info.name}
-                                </td>
-                                <td>
-                                        ${info.linkPhone}
-                                </td>
-                                <td>
-                                        ${info.linkMobile}
-                                </td>
+                                <th width="20%"><font color="red">*</font>用印材料名称</th>
+                                <th width="10%"><font color="red">*</font>数量</th>
+                                <th width="40%">主要内容简述</th>
+                                <th width="10%">经办人</th>
+                                <th width="10%">备注</th>
+                                <th width="10%">操作</th>
                             </tr>
-                        </c:forEach>
-                        </tbody>
-                    </table>
+                            </thead>
+                            <tbody id="sealMaterialInfoList">
+                            </tbody>
+                        </table>
+                        <script type="text/template" id="sealMaterialInfoListTpl">//<!--
+                    <tr id="sealMaterialInfoList{{idx}}">
+                      <td class="hide">
+							<input id="sealMaterialInfoList{{idx}}_projectId" name="sealMaterialInfoList[{{idx}}].projectId" type="hidden" value="{{row.projectId}}"/>
+							<input id="sealMaterialInfoList{{idx}}_delFlag" name="sealMaterialInfoList[{{idx}}].delFlag" type="hidden" value="0"/>
+                        </td>
+                        <td>
+							<input id="sealMaterialInfoList{{idx}}_sealMaterialName" name = "sealMaterialInfoList[{{idx}}].sealMaterialName"  type="text" value="{{row.sealMaterialName}}"  class="form-control"/>
+                        </td>
+                        <td>
+							<input id="sealMaterialInfoList{{idx}}_amount" name = "sealMaterialInfoList[{{idx}}].amount"   type="text" value="{{row.amount}}"   onkeyup="num(this)" class="form-control"/>
+                        </td>
+                        <td>
+							<input id="sealMaterialInfoList{{idx}}_mainContents" name = "sealMaterialInfoList[{{idx}}].mainContents"  type="text" value="{{row.mainContents}}"  class="form-control"/>
+                        </td>
+                        <td>
+							<input id="sealMaterialInfoList{{idx}}_agent" name = "sealMaterialInfoList[{{idx}}].agent.name"  type="text" value="{{row.agent.name}}"  class="form-control"/>
+                        </td>
+                         <td>
+							<input id="sealMaterialInfoList{{idx}}_remarks" name = "sealMaterialInfoList[{{idx}}].sealMaterialImportRemarks"  type="text" value="{{row.sealMaterialImportRemarks}}"  class="form-control"/>
+                        </td>
+                         <td class="text-center op-td" >
+                            {{#delBtn}}<span class="op-btn op-btn-delete" onclick="delRow(this, '#sealMaterialInfoList{{idx}}')" title="删除"><i class="glyphicon glyphicon-remove"></i>&nbsp;删除</span>{{/delBtn}}
+                        </td>
+                    </tr>//-->
+                        </script>
+                        <script type="text/javascript">
+                            var sealMaterialInfoListRowIdx = 0, sealMaterialInfoListTpl = $("#sealMaterialInfoListTpl").html().replace(/(\/\/\<!\-\-)|(\/\/\-\->)/g,"");
+                            /*if($("#id").val()){
+                                workInvoiceProjectRelationListRowIdx = ${fn:length(workInvoice.workInvoiceProjectRelationList)};
+						}*/
+                            $(document).ready(function() {
+                                <%--var data = ${fns:toJson(projectMaterialStorage.sealMaterialInfoList)};--%>
+                                for (var i=0; i<data.length; i++){
+                                    addRow1('#sealMaterialInfoList', sealMaterialInfoListRowIdx, sealMaterialInfoListTpl, data[i])
+                                    sealMaterialInfoListRowIdx = sealMaterialInfoListRowIdx + 1;
+                                }
+                            });
+                        </script>
+                    </div>
                 </div>
-            </div></div>
+
+<%--            <div class="form-group layui-row">--%>
+<%--                <div class="form-group-label"><h2>委托方联系人信息</h2></div>--%>
+<%--                <div class="layui-item layui-col-xs12 form-table-container" >--%>
+<%--                    <table id="contentTable" class="table table-bordered table-condensed no-bottom-margin details">--%>
+<%--                        <thead>--%>
+<%--                        <tr>--%>
+<%--                            <th class="hide"></th>--%>
+<%--                            <th width="25%">委托方</th>--%>
+<%--                            <th width="25%">联系人姓名</th>--%>
+<%--                            <th width="25%">联系方式1</th>--%>
+<%--                            <th width="25%">联系方式2</th>--%>
+<%--                        </tr>--%>
+<%--                        </thead>--%>
+<%--                        <tbody id="workClientLinkmanList">--%>
+<%--                        <c:forEach items="${sealApplyForInfo.projectRecords.workClientLinkmanList}" var="info" varStatus="index">--%>
+<%--                            <tr>--%>
+<%--                                <td >--%>
+<%--                                        ${info.clientId.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkPhone}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkMobile}--%>
+<%--                                </td>--%>
+<%--                            </tr>--%>
+<%--                        </c:forEach>--%>
+<%--                        </tbody>--%>
+<%--                    </table>--%>
+<%--                </div>--%>
+<%--            </div>--%>
+
+<%--            <div class="form-group layui-row">--%>
+<%--                <div class="form-group-label"><h2>施工方信息</h2></div>--%>
+<%--                <div class="layui-item layui-col-xs12 form-table-container" >--%>
+<%--                    <table id="contentTable1" class="table table-bordered table-condensed no-bottom-margin details">--%>
+<%--                        <thead>--%>
+<%--                        <tr>--%>
+<%--                            <th class="hide"></th>--%>
+<%--                            <th width="25%">施工方单位名称</th>--%>
+<%--                            <th width="25%">联系人姓名</th>--%>
+<%--                            <th width="25%">联系方式1</th>--%>
+<%--                            <th width="25%">联系方式2</th>--%>
+<%--                        </tr>--%>
+<%--                        </thead>--%>
+<%--                        <tbody id="workConstructionLinkmanList">--%>
+<%--                        <c:forEach items="${sealApplyForInfo.projectRecords.workConstructionLinkmanList}" var="info" varStatus="index">--%>
+<%--                            <tr>--%>
+<%--                                <td >--%>
+<%--                                        ${info.clientId.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkPhone}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkMobile}--%>
+<%--                                </td>--%>
+<%--                            </tr>--%>
+<%--                        </c:forEach>--%>
+<%--                        </tbody>--%>
+<%--                    </table>--%>
+<%--                </div>--%>
+<%--            </div></div>--%>
 
 
 
@@ -338,6 +469,7 @@
             <div class="form-group layui-row page-end"></div>
         </form:form>
     </div>
+    </div>
 </div>
 <script>
     function openBill3(title,url,width,height,target,formId){

+ 130 - 101
src/main/webapp/webpage/modules/sealApplyFor/sealApplyForView.jsp

@@ -116,37 +116,37 @@
                         <input id="projectReportDataNumber" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectReportNumber}"/>
                     </div>
                 </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">项目编号:</label>
-                    <div class="layui-input-block">
-                        <input id="projectId" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectId}"/>
-                    </div>
-                </div>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">项目编号:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input id="projectId" htmlEscape="false"  readonly="true" class="form-control layui-input" style="background-color: #f1f1f1" value="${sealApplyForInfo.projectRecords.projectId}"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
                 <div class="layui-item layui-col-sm6 lw6">
                     <label class="layui-form-label">项目所在地:</label>
                     <div class="layui-input-block">
                         <input id="area" htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.province}-${sealApplyForInfo.projectRecords.city}-${sealApplyForInfo.projectRecords.county}"/>
                     </div>
                 </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">投资性质:</label>
-                    <div class="layui-input-block">
-                        <c:if test="${sealApplyForInfo.projectRecords.projectProperties==null}">
-                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input"/>
-                        </c:if>
-                        <c:forEach  items="${fns:getMainDictList('project_properties')}" var="v">
-                            <c:if test="${v.value==sealApplyForInfo.projectRecords.projectProperties}">
-                                <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${v.label}"/>
-                            </c:if>
-                        </c:forEach>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">建设地点:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1"  readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectSite}"/>
-                    </div>
-                </div>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">投资性质:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <c:if test="${sealApplyForInfo.projectRecords.projectProperties==null}">--%>
+<%--                            <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input"/>--%>
+<%--                        </c:if>--%>
+<%--                        <c:forEach  items="${fns:getMainDictList('project_properties')}" var="v">--%>
+<%--                            <c:if test="${v.value==sealApplyForInfo.projectRecords.projectProperties}">--%>
+<%--                                <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${v.label}"/>--%>
+<%--                            </c:if>--%>
+<%--                        </c:forEach>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">建设地点:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input htmlEscape="false" style="background-color: #f1f1f1"  readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.projectSite}"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
                 <div class="layui-item layui-col-sm6 lw6">
                     <label class="layui-form-label">创建人:</label>
                     <div class="layui-input-block">
@@ -159,12 +159,12 @@
                         <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.reviewerPerson}"/>
                     </div>
                 </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">所属部门:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="officeName" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.officeName}"/>
-                    </div>
-                </div>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">所属部门:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input htmlEscape="false" style="background-color: #f1f1f1" readonly="true" id="officeName" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.officeName}"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
                 <div class="layui-item layui-col-sm6 lw6">
                     <label class="layui-form-label">项目负责人:</label>
                     <div class="layui-input-block">
@@ -183,100 +183,129 @@
                         <input class="laydate-icondate form-control layui-input layer-date "  style="background-color: #f1f1f1" readonly="true" id="endingDate" name="endingDate" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.endingDate}" pattern="yyyy-MM-dd"/>">
                     </div>
                 </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">创建日期:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false"  style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.createDate}" pattern="yyyy-MM-dd"/>"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">项目类别:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.attachmentProjectSort}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm6 lw6">
-                    <label class="layui-form-label">盖章数量:</label>
-                    <div class="layui-input-block">
-                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.contractsNum}"/>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm12 lw6 with-textarea">
-                    <label class="layui-form-label">工程概况:</label>
-                    <div class="layui-input-block">
-                        <textarea htmlEscape="false" rows="4" readonly="true"  style="background-color: #f1f1f1" maxlength="1000" class="form-control" >${sealApplyForInfo.projectRecords.projectDesc}</textarea>
-                    </div>
-                </div>
-                <div class="layui-item layui-col-sm12 lw6 with-textarea">
-                    <label class="layui-form-label">备注:</label>
-                    <div class="layui-input-block">
-                        <textarea htmlEscape="false" rows="4" readonly="true" maxlength="1000"  style="background-color: #f1f1f1" class="form-control" >${sealApplyForInfo.projectRecords.remarks}</textarea>
-                    </div>
-                </div>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">创建日期:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input htmlEscape="false"  style="background-color: #f1f1f1" readonly="true" class="form-control layui-input" value="<fmt:formatDate value="${sealApplyForInfo.projectRecords.createDate}" pattern="yyyy-MM-dd"/>"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">项目类别:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.attachmentProjectSort}"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
+<%--                <div class="layui-item layui-col-sm6 lw6">--%>
+<%--                    <label class="layui-form-label">盖章数量:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <input htmlEscape="false" readonly="true"  style="background-color: #f1f1f1" class="form-control layui-input" value="${sealApplyForInfo.projectRecords.contractsNum}"/>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
+<%--                <div class="layui-item layui-col-sm12 lw6 with-textarea">--%>
+<%--                    <label class="layui-form-label">工程概况:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <textarea htmlEscape="false" rows="4" readonly="true"  style="background-color: #f1f1f1" maxlength="1000" class="form-control" >${sealApplyForInfo.projectRecords.projectDesc}</textarea>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
+<%--                <div class="layui-item layui-col-sm12 lw6 with-textarea">--%>
+<%--                    <label class="layui-form-label">备注:</label>--%>
+<%--                    <div class="layui-input-block">--%>
+<%--                        <textarea htmlEscape="false" rows="4" readonly="true" maxlength="1000"  style="background-color: #f1f1f1" class="form-control" >${sealApplyForInfo.projectRecords.remarks}</textarea>--%>
+<%--                    </div>--%>
+<%--                </div>--%>
             </div>
 
+<%--            <div class="form-group layui-row">--%>
+<%--                <div class="form-group-label"><h2>委托方联系人信息</h2></div>--%>
+<%--                <div class="layui-item layui-col-xs12 form-table-container" >--%>
+<%--                    <table id="contentTable" class="table table-bordered table-condensed no-bottom-margin details">--%>
+<%--                        <thead>--%>
+<%--                        <tr>--%>
+<%--                            <th class="hide"></th>--%>
+<%--                            <th width="25%">委托方</th>--%>
+<%--                            <th width="25%">联系人姓名</th>--%>
+<%--                            <th width="25%">联系方式1</th>--%>
+<%--                            <th width="25%">联系方式2</th>--%>
+<%--                        </tr>--%>
+<%--                        </thead>--%>
+<%--                        <tbody id="workClientLinkmanList">--%>
+<%--                        <c:forEach items="${sealApplyForInfo.projectRecords.workClientLinkmanList}" var="info" varStatus="index">--%>
+<%--                            <tr>--%>
+<%--                                <td >--%>
+<%--                                        ${info.clientId.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.name}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkPhone}--%>
+<%--                                </td>--%>
+<%--                                <td>--%>
+<%--                                        ${info.linkMobile}--%>
+<%--                                </td>--%>
+<%--                            </tr>--%>
+<%--                        </c:forEach>--%>
+<%--                        </tbody>--%>
+<%--                    </table>--%>
+<%--                </div>--%>
+<%--            </div>--%>
+
             <div class="form-group layui-row">
-                <div class="form-group-label"><h2>委托方联系人信息</h2></div>
+                <div class="form-group-label"><h2>盖章材料信息列表</h2></div>
                 <div class="layui-item layui-col-xs12 form-table-container" >
-                    <table id="contentTable" class="table table-bordered table-condensed no-bottom-margin details">
+                    <table:exportExcel url="${ctx}/ruralProject/ruralProjectRecords/export"></table:exportExcel>
+                    <table id="contentTable1" class="table table-bordered table-condensed no-bottom-margin details">
                         <thead>
                         <tr>
                             <th class="hide"></th>
-                            <th width="25%">委托方</th>
-                            <th width="25%">联系人姓名</th>
-                            <th width="25%">联系方式1</th>
-                            <th width="25%">联系方式2</th>
+                            <th >项目名称</th>
+                            <th >报告号</th>
+                            <th >盖章材料名称</th>
+                            <th >数量</th>
+                            <th >主要内容简述</th>
+                            <th >地点</th>
+                            <th >审核人</th>
+                            <th >创建人</th>
+                            <th >项目负责人</th>
+                            <th >开始时间</th>
+                            <th >结束时间</th>
                         </tr>
                         </thead>
-                        <tbody id="workClientLinkmanList">
-                        <c:forEach items="${sealApplyForInfo.projectRecords.workClientLinkmanList}" var="info" varStatus="index">
+                        <tbody id="workConstructionLinkmanList">
+                        <c:forEach items="${sealMaterialInfos}" var="info" varStatus="index">
                             <tr>
                                 <td >
-                                        ${info.clientId.name}
+                                        ${info.projectName}
                                 </td>
                                 <td>
-                                        ${info.name}
+                                        ${info.reportId}
                                 </td>
                                 <td>
-                                        ${info.linkPhone}
+                                        ${info.sealMaterialName}
                                 </td>
                                 <td>
-                                        ${info.linkMobile}
+                                        ${info.amount}
                                 </td>
-                            </tr>
-                        </c:forEach>
-                        </tbody>
-                    </table>
-                </div>
-            </div>
-
-            <div class="form-group layui-row">
-                <div class="form-group-label"><h2>施工方信息</h2></div>
-                <div class="layui-item layui-col-xs12 form-table-container" >
-                    <table id="contentTable1" class="table table-bordered table-condensed no-bottom-margin details">
-                        <thead>
-                        <tr>
-                            <th class="hide"></th>
-                            <th width="25%">施工方单位名称</th>
-                            <th width="25%">联系人姓名</th>
-                            <th width="25%">联系方式1</th>
-                            <th width="25%">联系方式2</th>
-                        </tr>
-                        </thead>
-                        <tbody id="workConstructionLinkmanList">
-                        <c:forEach items="${sealApplyForInfo.projectRecords.workConstructionLinkmanList}" var="info" varStatus="index">
-                            <tr>
-                                <td >
-                                        ${info.clientId.name}
+                                <td>
+                                        ${info.mainContents}
+                                </td>
+                                <td>
+                                        ${info.area}
+                                </td>
+                                <td>
+                                        ${info.reviewPerson}
+                                </td>
+                                <td>
+                                        ${info.porjectCreatePerson}
                                 </td>
                                 <td>
-                                        ${info.name}
+                                        ${info.projectMasterId}
                                 </td>
                                 <td>
-                                        ${info.linkPhone}
+                                        ${info.startDate}
                                 </td>
                                 <td>
-                                        ${info.linkMobile}
+                                        ${info.endingDate}
                                 </td>
                             </tr>
                         </c:forEach>