diff --git a/src/main/java/com/zcloud/controller/accident/AccidentRecordsController.java b/src/main/java/com/zcloud/controller/accident/AccidentRecordsController.java index 2e9beef3..eb60f044 100644 --- a/src/main/java/com/zcloud/controller/accident/AccidentRecordsController.java +++ b/src/main/java/com/zcloud/controller/accident/AccidentRecordsController.java @@ -1,11 +1,11 @@ package com.zcloud.controller.accident; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; +import com.zcloud.entity.accident.AccidentRecords; import com.zcloud.service.accident.AccidentRecordsService; import com.zcloud.util.ObjectExcelView; import lombok.RequiredArgsConstructor; @@ -74,8 +74,7 @@ public class AccidentRecordsController extends BaseController { @ResponseBody @RequestMapping("/save") public Map save(HttpServletRequest request) { - AccidentRecords accidentRecords = BeanUtil.mapToBean(new PageData(request), AccidentRecords.class, true); - accidentRecordsService.save(accidentRecords); + accidentRecordsService.save(new AccidentRecords(new PageData(request))); Map result = new HashMap<>(); result.put("result", "success"); return result; @@ -90,9 +89,10 @@ public class AccidentRecordsController extends BaseController { @ResponseBody @RequestMapping("/update") public Map update(HttpServletRequest request) { - PageData pageData = new PageData(request); - AccidentRecords accidentRecords = BeanUtil.mapToBean(pageData, AccidentRecords.class, true); - accidentRecords.setId(Optional.of(accidentRecords.getId()).orElseThrow(() -> new RuntimeException("id不能为空"))); + AccidentRecords accidentRecords = new AccidentRecords(new PageData(request)); + if (StrUtil.isEmpty(accidentRecords.getId())) { + throw new RuntimeException("id不能为空"); + } accidentRecordsService.update(accidentRecords); Map result = new HashMap<>(); result.put("result", "success"); diff --git a/src/main/java/com/zcloud/controller/app/inspection/AppSafetyEnvironmentalController.java b/src/main/java/com/zcloud/controller/app/inspection/AppSafetyEnvironmentalController.java index 5ad5002c..d3b5b997 100644 --- a/src/main/java/com/zcloud/controller/app/inspection/AppSafetyEnvironmentalController.java +++ b/src/main/java/com/zcloud/controller/app/inspection/AppSafetyEnvironmentalController.java @@ -3,7 +3,6 @@ package com.zcloud.controller.app.inspection; import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; -import com.zcloud.entity.hotWorkApplication.Node; import com.zcloud.entity.hotWorkApplication.NodeApp; import com.zcloud.entity.hotWorkApplication.Overseer; import com.zcloud.service.bus.HiddenService; @@ -14,7 +13,6 @@ import com.zcloud.service.inspection.SafetyEnvironmentalInspectorService; import com.zcloud.service.inspection.SafetyEnvironmentalService; import com.zcloud.service.system.DepartmentService; import com.zcloud.util.*; -import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; @@ -26,9 +24,7 @@ import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; -import java.io.File; import java.util.*; -import java.util.stream.Collectors; /** * 说明:安全环保检查 @@ -40,484 +36,511 @@ import java.util.stream.Collectors; @RequestMapping("/app/safetyenvironmental") public class AppSafetyEnvironmentalController extends BaseController { - @Autowired - private SafetyEnvironmentalService safetyenvironmentalService; - @Autowired - private SafetyEnvironmentalInspectorService safetyEnvironmentalInspectorService; - @Autowired - private SafetyEnvironmentalExplainService explainService; - @Autowired - private HiddenService hiddenService; - @Autowired - private DepartmentService departmentService; - @Resource - private SafetyEnvironmentalInspectorService inspectorService; - @Resource - private SafetyEnvironmentalAssessService assessService; - @Autowired - private NoticeCorpUtil noticeCorpUtil; + @Autowired + private SafetyEnvironmentalService safetyenvironmentalService; + @Autowired + private SafetyEnvironmentalInspectorService safetyEnvironmentalInspectorService; + @Autowired + private SafetyEnvironmentalExplainService explainService; + @Autowired + private HiddenService hiddenService; + @Autowired + private DepartmentService departmentService; + @Resource + private SafetyEnvironmentalInspectorService inspectorService; + @Resource + private SafetyEnvironmentalAssessService assessService; + @Autowired + private NoticeCorpUtil noticeCorpUtil; - /**列表 - * @param page - * @throws Exception - */ - @RequestMapping(value="/list") - @ResponseBody - public Object list(Page page) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 - if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); - page.setPd(pd); - List varList = safetyenvironmentalService.list(page); //列出SafetyEnvironmental列表 - map.put("varList", varList); - map.put("page", page); - map.put("result", errInfo); - return map; - } + /** + * 列表 + * + * @param page + * @throws Exception + */ + @RequestMapping(value = "/list") + @ResponseBody + public Object list(Page page) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = safetyenvironmentalService.list(page); //列出SafetyEnvironmental列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } - /**新增 - * @param - * @throws Exception - */ - @RequestMapping(value="/add") - @ResponseBody - public Object add(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("INSPECTION_ID", this.get32UUID()); //主键 - pd.put("INSPECTION_ORIGINATOR_ID", pd.getString("CREATOR")); //检查发起人 - pd.put("ISDELETE", "0"); //是否删除(0:有效 1:删除) - pd.put("CREATOR", pd.getString("CREATOR")); //添加人 - pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 - pd.put("OPERATOR", pd.getString("CREATOR")); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - pd.put("CORPINFO_ID", pd.getString("CORPINFO_ID")); //企业ID - pd.put("ACTION_USER", pd.getString("ACTION_USER")); //操作人 - String ffile = DateUtil.getDays(); - if (file != null && StringUtils.isNotBlank(pd.getString("INSPECTION_USER_OPINION"))){ - String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); - if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { - errInfo = "fail"; - map.put("result", errInfo); - map.put("msg", "文件格式不正确!"); - return map; - } - String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); - Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); - pd.put("CONFIRM_MESSAGE_SIGN_ROUTE", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); - pd.put("CONFIRM_MESSAGE",pd.getString("INSPECTION_USER_OPINION")); - pd.put("CONFIRM_MESSAGE_TIME",DateUtil.date2Str(new Date())); - } - List hiddenList = safetyenvironmentalService.save(pd); - pd.put("hiddenList", hiddenList); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + /** + * 新增 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add(@RequestParam(value = "FFILE", required = false) MultipartFile file) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("INSPECTION_ID", this.get32UUID()); //主键 + pd.put("INSPECTION_ORIGINATOR_ID", pd.getString("CREATOR")); //检查发起人 + pd.put("ISDELETE", "0"); //是否删除(0:有效 1:删除) + pd.put("CREATOR", pd.getString("CREATOR")); //添加人 + pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 + pd.put("OPERATOR", pd.getString("CREATOR")); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("CORPINFO_ID", pd.getString("CORPINFO_ID")); //企业ID + pd.put("ACTION_USER", pd.getString("ACTION_USER")); //操作人 + String ffile = DateUtil.getDays(); + if (file != null && StringUtils.isNotBlank(pd.getString("INSPECTION_USER_OPINION"))) { + String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + errInfo = "fail"; + map.put("result", errInfo); + map.put("msg", "文件格式不正确!"); + return map; + } + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); + pd.put("CONFIRM_MESSAGE_SIGN_ROUTE", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); + pd.put("CONFIRM_MESSAGE", pd.getString("INSPECTION_USER_OPINION")); + pd.put("CONFIRM_MESSAGE_TIME", DateUtil.date2Str(new Date())); + } + List hiddenList = safetyenvironmentalService.save(pd); + pd.put("hiddenList", hiddenList); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } - /**去修改页面获取数据 - * @param - * @throws Exception - */ - @RequestMapping(value="/goShow") - @ResponseBody - public Object goShow() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd = safetyenvironmentalService.findShowById(pd); //根据ID读取 - safetyenvironmentalService.departmentUtil(pd); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + /** + * 去修改页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/goShow") + @ResponseBody + public Object goShow() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = safetyenvironmentalService.findShowById(pd); //根据ID读取 + safetyenvironmentalService.departmentUtil(pd); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } - /**去修改页面获取数据 - * @param - * @throws Exception - */ - @RequestMapping(value="/goEdit") - @ResponseBody - public Object goEdit() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd = safetyenvironmentalService.findFormById(pd); //根据ID读取 - safetyenvironmentalService.departmentUtil(pd); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + /** + * 去修改页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/goEdit") + @ResponseBody + public Object goEdit() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = safetyenvironmentalService.findFormById(pd); //根据ID读取 + safetyenvironmentalService.departmentUtil(pd); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } - /**修改 - * @param - * @throws Exception - */ - @RequestMapping(value="/edit") - @ResponseBody - public Object edit(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("INSPECTION_STATUS", "0"); //状态(0.待检查人核实 1.检查人核实中、2.待被检查人确认、3.已归档 -1.检查人核实打回 -2被检查人申辩) - pd.put("OPERATOR", pd.getString("OPERATOR")); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - pd.put("ACTION_USER", pd.getString("ACTION_USER")); //操作人 - String ffile = DateUtil.getDays(); - if (file != null && StringUtils.isNotBlank(pd.getString("INSPECTION_USER_OPINION"))){ - String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); - if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { - errInfo = "fail"; - map.put("result", errInfo); - map.put("msg", "文件格式不正确!"); - return map; - } - String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); - Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); - pd.put("CONFIRM_MESSAGE_SIGN_ROUTE", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); - pd.put("CONFIRM_MESSAGE",pd.getString("INSPECTION_USER_OPINION")); - pd.put("CONFIRM_MESSAGE_TIME",DateUtil.date2Str(new Date())); - } - List hiddenList = safetyenvironmentalService.edit(pd); - pd.put("hiddenList", hiddenList); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + /** + * 修改 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/edit") + @ResponseBody + public Object edit(@RequestParam(value = "FFILE", required = false) MultipartFile file) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("INSPECTION_STATUS", "0"); //状态(0.待检查人核实 1.检查人核实中、2.待被检查人确认、3.已归档 -1.检查人核实打回 -2被检查人申辩) + pd.put("OPERATOR", pd.getString("OPERATOR")); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("ACTION_USER", pd.getString("ACTION_USER")); //操作人 + String ffile = DateUtil.getDays(); + if (file != null && StringUtils.isNotBlank(pd.getString("INSPECTION_USER_OPINION"))) { + String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + errInfo = "fail"; + map.put("result", errInfo); + map.put("msg", "文件格式不正确!"); + return map; + } + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); + pd.put("CONFIRM_MESSAGE_SIGN_ROUTE", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); + pd.put("CONFIRM_MESSAGE", pd.getString("INSPECTION_USER_OPINION")); + pd.put("CONFIRM_MESSAGE_TIME", DateUtil.date2Str(new Date())); + } + List hiddenList = safetyenvironmentalService.edit(pd); + pd.put("hiddenList", hiddenList); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } - /**修改 - * @param - * @throws Exception - */ - @RequestMapping(value="/explain") - //@RequiresPermissions("safetyenvironmental:edit") - @ResponseBody - public Object explain(@RequestParam(value="FFILE",required=false) MultipartFile[] files) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - if (files != null && files.length > 0) { - MultipartFile file = files[0]; - String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); - if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { - errInfo = "fail"; - map.put("result", errInfo); - map.put("msg", "文件格式不正确!"); - return map; - } + /** + * 修改 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/explain") + //@RequiresPermissions("safetyenvironmental:edit") + @ResponseBody + public Object explain(@RequestParam(value = "FFILE", required = false) MultipartFile[] files) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + if (files != null && files.length > 0) { + MultipartFile file = files[0]; + String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + errInfo = "fail"; + map.put("result", errInfo); + map.put("msg", "文件格式不正确!"); + return map; + } - String ffile = DateUtil.getDays(); - String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); - Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); + String ffile = DateUtil.getDays(); + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); - pd.put("INSPECTION_ORIGINATOR_SIGN_IMG", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); - } - safetyenvironmentalService.explain(pd); - pd.put("inspector",pd.getString("OPERATOR")); - noticeCorpUtil.FailPleadind(pd); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + pd.put("INSPECTION_ORIGINATOR_SIGN_IMG", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); + } + safetyenvironmentalService.explain(pd); + pd.put("inspector", pd.getString("OPERATOR")); + noticeCorpUtil.FailPleadind(pd); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } - /**删除 - * @param - * @throws Exception - */ - @RequestMapping(value="/delete") - @RequiresPermissions("safetyenvironmental:del") - @ResponseBody - public Object delete() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - safetyenvironmentalService.delete(pd); - map.put("result", errInfo); //返回结果 - return map; - } + /** + * 删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/delete") + @RequiresPermissions("safetyenvironmental:del") + @ResponseBody + public Object delete() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + safetyenvironmentalService.delete(pd); + map.put("result", errInfo); //返回结果 + return map; + } - /**批量删除 - * @param - * @throws Exception - */ - @RequestMapping(value="/deleteAll") - @RequiresPermissions("safetyenvironmental:del") - @ResponseBody - public Object deleteAll() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - String DATA_IDS = pd.getString("DATA_IDS"); - if(Tools.notEmpty(DATA_IDS)){ - String[] ArrayDATA_IDS = DATA_IDS.split(","); - pd.put("ArrayDATA_IDS", ArrayDATA_IDS); //待删除ids - safetyenvironmentalService.deleteAll(pd); - errInfo = "success"; - }else{ - errInfo = "fail"; - } - map.put("result", errInfo); //返回结果 - return map; - } + /** + * 批量删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/deleteAll") + @RequiresPermissions("safetyenvironmental:del") + @ResponseBody + public Object deleteAll() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + String DATA_IDS = pd.getString("DATA_IDS"); + if (Tools.notEmpty(DATA_IDS)) { + String[] ArrayDATA_IDS = DATA_IDS.split(","); + pd.put("ArrayDATA_IDS", ArrayDATA_IDS); //待删除ids + safetyenvironmentalService.deleteAll(pd); + errInfo = "success"; + } else { + errInfo = "fail"; + } + map.put("result", errInfo); //返回结果 + return map; + } - /**导出到excel - * @param - * @throws Exception - */ - @RequestMapping(value="/excel") - @RequiresPermissions("toExcel") - public ModelAndView exportExcel() throws Exception{ - ModelAndView mv = new ModelAndView(); - PageData pd = new PageData(); - pd = this.getPageData(); - Map dataMap = new HashMap(); - List titles = new ArrayList(); - titles.add("检查发起人"); //1 - titles.add("被检查单位"); //2 - titles.add("被检查单位现场负责人"); //3 - titles.add("申辩内容"); //4 - titles.add("被检查单位现场负责人签字"); //5 - titles.add("被检查单位现场负责人签字时间"); //6 - titles.add("检查类型"); //7 - titles.add("检查场所"); //8 - titles.add("检查开始时间"); //9 - titles.add("检查结束时间"); //10 - titles.add("状态(0.暂存 1.检查人待确认、2.被检查人待确认、3.归档 -1.检查人异议打回 -2被检查人申辩)"); //11 - titles.add("是否删除(0:有效 1:删除)"); //12 - titles.add("添加人"); //13 - titles.add("添加时间"); //14 - titles.add("修改人"); //15 - titles.add("修改时间"); //16 - titles.add("企业ID"); //17 - dataMap.put("titles", titles); - pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID - List varOList = safetyenvironmentalService.listAll(pd); - List varList = new ArrayList(); - for(int i=0;i dataMap = new HashMap(); + List titles = new ArrayList(); + titles.add("检查发起人"); //1 + titles.add("被检查单位"); //2 + titles.add("被检查单位现场负责人"); //3 + titles.add("申辩内容"); //4 + titles.add("被检查单位现场负责人签字"); //5 + titles.add("被检查单位现场负责人签字时间"); //6 + titles.add("检查类型"); //7 + titles.add("检查场所"); //8 + titles.add("检查开始时间"); //9 + titles.add("检查结束时间"); //10 + titles.add("状态(0.暂存 1.检查人待确认、2.被检查人待确认、3.归档 -1.检查人异议打回 -2被检查人申辩)"); //11 + titles.add("是否删除(0:有效 1:删除)"); //12 + titles.add("添加人"); //13 + titles.add("添加时间"); //14 + titles.add("修改人"); //15 + titles.add("修改时间"); //16 + titles.add("企业ID"); //17 + dataMap.put("titles", titles); + pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID + List varOList = safetyenvironmentalService.listAll(pd); + List varList = new ArrayList(); + for (int i = 0; i < varOList.size(); i++) { + PageData vpd = new PageData(); + vpd.put("var1", varOList.get(i).getString("INSPECTION_ORIGINATOR_ID")); //1 + vpd.put("var2", varOList.get(i).getString("INSPECTED_DEPARTMENT_ID")); //2 + vpd.put("var3", varOList.get(i).getString("INSPECTED_SITEUSER_ID")); //3 + vpd.put("var4", varOList.get(i).getString("INSPECTED_EXPLAIN")); //4 + vpd.put("var5", varOList.get(i).getString("INSPECTED_SITEUSER_SIGN_IMG")); //5 + vpd.put("var6", varOList.get(i).getString("INSPECTED_SITEUSER_SIGN_TIME")); //6 + vpd.put("var7", varOList.get(i).getString("INSPECTION_TYPE")); //7 + vpd.put("var8", varOList.get(i).getString("INSPECTION_PLACE")); //8 + vpd.put("var9", varOList.get(i).getString("INSPECTION_TIME_START")); //9 + vpd.put("var10", varOList.get(i).getString("INSPECTION_TIME_END")); //10 + vpd.put("var11", varOList.get(i).getString("INSPECTION_STATUS")); //11 + vpd.put("var12", varOList.get(i).getString("ISDELETE")); //12 + vpd.put("var13", varOList.get(i).getString("CREATOR")); //13 + vpd.put("var14", varOList.get(i).getString("CREATTIME")); //14 + vpd.put("var15", varOList.get(i).getString("OPERATOR")); //15 + vpd.put("var16", varOList.get(i).getString("OPERATTIME")); //16 + vpd.put("var17", varOList.get(i).getString("CORPINFO_ID")); //17 + varList.add(vpd); + } + dataMap.put("varList", varList); + ObjectExcelView erv = new ObjectExcelView(); + mv = new ModelAndView(erv, dataMap); + return mv; + } - /**安全环保检查待办作业数统计 - * @param - * @throws Exception - */ - @RequestMapping(value="/countCheck") - @ResponseBody - public Object countCheck() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - PageData confirmCount = safetyEnvironmentalInspectorService.confirmCount(pd); //检查人确认数 - PageData checkedCount = safetyenvironmentalService.checkedCount(pd); //被检查人签字数 - PageData repulseCount = safetyenvironmentalService.repulseCount(pd); //打回数 - PageData repulseAndCheckCount = safetyenvironmentalService.repulseAndCheckCountCount(pd); //指派+验收数 + /** + * 安全环保检查待办作业数统计 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/countCheck") + @ResponseBody + public Object countCheck() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + PageData confirmCount = safetyEnvironmentalInspectorService.confirmCount(pd); //检查人确认数 + PageData checkedCount = safetyenvironmentalService.checkedCount(pd); //被检查人签字数 + PageData repulseCount = safetyenvironmentalService.repulseCount(pd); //打回数 + PageData repulseAndCheckCount = safetyenvironmentalService.repulseAndCheckCountCount(pd); //指派+验收数 - map.put("result", errInfo); - map.put("confirmCount", confirmCount); - map.put("checkedCount",checkedCount); - map.put("repulseCount",repulseCount); - map.put("repulseAndCheckCount",repulseAndCheckCount); - return map; - } + map.put("result", errInfo); + map.put("confirmCount", confirmCount); + map.put("checkedCount", checkedCount); + map.put("repulseCount", repulseCount); + map.put("repulseAndCheckCount", repulseAndCheckCount); + return map; + } - @RequestMapping(value="/getExplain") - @ResponseBody - public Object getExplain() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = this.getPageData(); - List list = explainService.findExplainById(pd); - map.put("list",list); - map.put("result", errInfo); - return map; - } + @RequestMapping(value = "/getExplain") + @ResponseBody + public Object getExplain() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = this.getPageData(); + List list = explainService.findExplainById(pd); + map.put("list", list); + map.put("result", errInfo); + return map; + } - /**一公司app首页安全环保检查统计 - * @param - * @throws Exception - */ - @RequestMapping(value="/countHome") - @ResponseBody - public Object countHome() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - PageData count = safetyEnvironmentalInspectorService.countHome(pd); //一公司app首页安全环保检查统计 - map.put("result", errInfo); - map.put("count", count); - return map; - } + /** + * 一公司app首页安全环保检查统计 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/countHome") + @ResponseBody + public Object countHome() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + PageData count = safetyEnvironmentalInspectorService.countHome(pd); //一公司app首页安全环保检查统计 + map.put("result", errInfo); + map.put("count", count); + return map; + } - /**列表 - * @param page - * @throws Exception - */ - @RequestMapping(value="/pleadList") - @ResponseBody - public Object pleadList(Page page) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 - if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); - page.setPd(pd); - List varList = safetyenvironmentalService.pleadList(page); //列出SafetyEnvironmental列表 - map.put("varList", varList); - map.put("page", page); - map.put("result", errInfo); - return map; - } + /** + * 列表 + * + * @param page + * @throws Exception + */ + @RequestMapping(value = "/pleadList") + @ResponseBody + public Object pleadList(Page page) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = safetyenvironmentalService.pleadList(page); //列出SafetyEnvironmental列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } - /**列表 - * 规则: 如果当前人是,被检查人,检查人,参与人则可以查询到此条数据 - * @param page - * @throws Exception - */ - @RequestMapping(value="/checkList") - @ResponseBody - public Object checkList(Page page) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = this.getPageData(); - String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 - if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); - pd.put("waffle",pd.getString("ARCHIVE_USER_ID")); - page.setPd(pd); - List varList = safetyenvironmentalService.checkList(page); //列出SafetyEnvironmental列表 - /* 针对验收部分特殊处理 */ - String user_id = pd.getString("ARCHIVE_USER_ID"); - for (PageData vector : varList) { - if (StringUtils.isNotBlank(vector.getString("INSPECTION_STATUS")) && - ("6".equals(vector.getString("INSPECTION_STATUS")) - || "5".equals(vector.getString("INSPECTION_STATUS")) - || "7".equals(vector.getString("INSPECTION_STATUS"))) - ) { - PageData condition = new PageData(); - condition.put("FOREIGN_ID",vector.getString("INSPECTION_ID")); - List waffle = hiddenService.findByKey(condition); //d - if (waffle == null || waffle.isEmpty()){ - continue; - } - Long number = waffle.stream() - .filter(n -> - user_id.equals(n.getString("CREATOR")) - && (StringUtils.isNotBlank(n.getString("STATE"))&&( - "4".equals(n.getString("STATE"))|| "8".equals(n.getString("STATE")))) + /** + * 列表 + * 规则: 如果当前人是,被检查人,检查人,参与人则可以查询到此条数据 + * + * @param page + * @throws Exception + */ + @RequestMapping(value = "/checkList") + @ResponseBody + public Object checkList(Page page) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim()); + pd.put("waffle", pd.getString("ARCHIVE_USER_ID")); + pd.put("loginUserId", Jurisdiction.getUSER_ID()); + page.setPd(pd); + List varList = safetyenvironmentalService.checkList(page); //列出SafetyEnvironmental列表 + /* 针对验收部分特殊处理 */ + String user_id = pd.getString("ARCHIVE_USER_ID"); + for (PageData vector : varList) { + if (StringUtils.isNotBlank(vector.getString("INSPECTION_STATUS")) && + ("6".equals(vector.getString("INSPECTION_STATUS")) + || "5".equals(vector.getString("INSPECTION_STATUS")) + || "7".equals(vector.getString("INSPECTION_STATUS"))) + ) { + PageData condition = new PageData(); + condition.put("FOREIGN_ID", vector.getString("INSPECTION_ID")); + List waffle = hiddenService.findByKey(condition); //d + if (waffle == null || waffle.isEmpty()) { + continue; + } + Long number = waffle.stream() + .filter(n -> + user_id.equals(n.getString("CREATOR")) + && (StringUtils.isNotBlank(n.getString("STATE")) && ( + "4".equals(n.getString("STATE")) || "8".equals(n.getString("STATE")))) - &&(StringUtils.isBlank(n.getString("FINAL_CHECK"))|| "2".equals(n.getString("FINAL_CHECK"))) - ) - .count(); - if (number >0){ - vector.put("checkout",1); - } - } - } - map.put("varList", varList); - map.put("page", page); - map.put("result", errInfo); - return map; - } + && (StringUtils.isBlank(n.getString("FINAL_CHECK")) || "2".equals(n.getString("FINAL_CHECK"))) + ) + .count(); + if (number > 0) { + vector.put("checkout", 1); + } + } + } + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } - @RequestMapping(value="/showFlowChart") - @ResponseBody - public Object showFlowChart() throws Exception{ - HashMap response = new HashMap<>(); - response.put("result","success"); - PageData condition = this.getPageData(); - condition.put("INSPECTION_ID",condition.getString("ID")); - PageData safety = safetyenvironmentalService.findById(condition); - if (safety == null || safety.size() <= 0) { - response.put("result", "error"); - response.put("errorMessage", "数据异常"); - } - // 1、整理基础数据 - Overseer overseer = new Overseer(); - List nodes = overseer.getSafetyAppWorkFlow(); - // 初始话安全环保发起人、被检查人数据 - nodes.get(0).safety_order(safety); - nodes.stream().forEach(n -> n.safety_creator_util(safety)); - for (NodeApp nodeApp : nodes) { - if (StringUtils.isNotBlank(nodeApp.getActive())) - overseer.setSafetyAppVector(nodeApp.getOrder()); - } - // 2、整理特殊数据 - // 2、1检查人将检查状态 - if ("2,3,4".contains(safety.getString("order"))) { - List inspectors = inspectorService.listAll(condition); - nodes.stream() - .filter(n -> "1".equals(n.getOrder())) - .forEach(n -> n.safety_inspector_util(inspectors)); - } + @RequestMapping(value = "/showFlowChart") + @ResponseBody + public Object showFlowChart() throws Exception { + HashMap response = new HashMap<>(); + response.put("result", "success"); + PageData condition = this.getPageData(); + condition.put("INSPECTION_ID", condition.getString("ID")); + PageData safety = safetyenvironmentalService.findById(condition); + if (safety == null || safety.size() <= 0) { + response.put("result", "error"); + response.put("errorMessage", "数据异常"); + } + // 1、整理基础数据 + Overseer overseer = new Overseer(); + List nodes = overseer.getSafetyAppWorkFlow(); + // 初始话安全环保发起人、被检查人数据 + nodes.get(0).safety_order(safety); + nodes.stream().forEach(n -> n.safety_creator_util(safety)); + for (NodeApp nodeApp : nodes) { + if (StringUtils.isNotBlank(nodeApp.getActive())) + overseer.setSafetyAppVector(nodeApp.getOrder()); + } + // 2、整理特殊数据 + // 2、1检查人将检查状态 + if ("2,3,4".contains(safety.getString("order"))) { + List inspectors = inspectorService.listAll(condition); + nodes.stream() + .filter(n -> "1".equals(n.getOrder())) + .forEach(n -> n.safety_inspector_util(inspectors)); + } - //隐患指派流程 - if ("3,4".contains(safety.getString("order"))) { - List hiddenz = safetyenvironmentalService.findByyin(condition); - if (hiddenz != null && hiddenz.size() > 0) { - nodes.stream() - .filter(n -> "3".equals(n.getOrder())) - .forEach(n -> n.safety_hiddenz(hiddenz)); - } - } - if ("4".equals(safety.getString("order"))) { - // 2、2 隐患发现人状态 - condition.put("FOREIGN_ID", condition.getString("INSPECTION_ID")); - List hiddens = hiddenService.findByKey(condition); - nodes.stream() - .filter(n -> "4".equals(n.getOrder())) - .forEach(n -> n.safety_hiddenCreator_util(hiddens)); - } - // 2、3 考评人 + //隐患指派流程 + if ("3,4".contains(safety.getString("order"))) { + List hiddenz = safetyenvironmentalService.findByyin(condition); + if (hiddenz != null && hiddenz.size() > 0) { + nodes.stream() + .filter(n -> "3".equals(n.getOrder())) + .forEach(n -> n.safety_hiddenz(hiddenz)); + } + } + if ("4".equals(safety.getString("order"))) { + // 2、2 隐患发现人状态 + condition.put("FOREIGN_ID", condition.getString("INSPECTION_ID")); + List hiddens = hiddenService.findByKey(condition); + nodes.stream() + .filter(n -> "4".equals(n.getOrder())) + .forEach(n -> n.safety_hiddenCreator_util(hiddens)); + } + // 2、3 考评人 // List assess = assessService.findByMainId(condition); // if (assess != null && assess.size() > 0) { // nodes.stream() // .filter(n -> "5".equals(n.getOrder())) // .forEach(n -> n.safety_assessor_util(assess)); // } - response.put("varList", nodes); - response.put("active" ,overseer.getSafetyAppVector()); - return response; - } + response.put("varList", nodes); + response.put("active", overseer.getSafetyAppVector()); + return response; + } } diff --git a/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalController.java b/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalController.java index a8b43a61..7aa6e3f4 100644 --- a/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalController.java +++ b/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalController.java @@ -737,31 +737,35 @@ public class SafetyEnvironmentalController extends BaseController { pd.put("loginUserId", Jurisdiction.getUSER_ID()); List varList = safetyenvironmentalService.checkList(page); //列出SafetyEnvironmental列表 /* 针对验收部分特殊处理 */ - for (PageData vector : varList) { - if (StringUtils.isNotBlank(vector.getString("INSPECTION_STATUS")) && - ("6".equals(vector.getString("INSPECTION_STATUS")) - || "5".equals(vector.getString("INSPECTION_STATUS")) -// || "7".equals(vector.getString("INSPECTION_STATUS")) - ) - ) { - PageData condition = new PageData(); - condition.put("FOREIGN_ID", vector.getString("INSPECTION_ID")); - List waffle = hiddenService.findByKey(condition); - if (waffle == null || waffle.isEmpty()) { - continue; - } - Long number = waffle.stream() - .filter(n -> - Jurisdiction.getUSER_ID().equals(n.getString("CREATOR")) && - (StringUtils.isNotBlank(n.getString("STATE")) && ("4".equals(n.getString("STATE")) || "8".equals(n.getString("STATE")))) && - (StringUtils.isBlank(n.getString("FINAL_CHECK")) || "2".equals(n.getString("FINAL_CHECK"))) - ) - .count(); - if (number > 0) { - vector.put("checkout", 1); - } - } - } +// for (PageData vector : varList) { +// if (StringUtils.isNotBlank(vector.getString("INSPECTION_STATUS")) && +// ("6".equals(vector.getString("INSPECTION_STATUS")) +// || "5".equals(vector.getString("INSPECTION_STATUS")) +//// || "7".equals(vector.getString("INSPECTION_STATUS")) +// ) +// ) { +// PageData condition = new PageData(); +// condition.put("FOREIGN_ID", vector.getString("INSPECTION_ID")); +// List waffle = hiddenService.findByKey(condition); +// if (waffle == null || waffle.isEmpty()) { +// continue; +// } +// Long number = waffle.stream() +// .filter(n -> Jurisdiction.getUSER_ID().equals(n.getString("CREATOR")) && +// (StringUtils.isNotBlank(n.getString("STATE")) && +// ("4".equals(n.getString("STATE")) || +// "8".equals(n.getString("STATE")))) && +// (StringUtils.isBlank(n.getString("FINAL_CHECK")) || +// "2".equals(n.getString("FINAL_CHECK"))) +// ) +// .count(); +// if (number > 0) { +// vector.put("checkout", 1); +// } else { +// vector.put("checkout", 0); +// } +// } +// } map.put("varList", varList); map.put("page", page); map.put("result", errInfo); diff --git a/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalInspectorController.java b/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalInspectorController.java index 7c2072e9..42cce1a9 100644 --- a/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalInspectorController.java +++ b/src/main/java/com/zcloud/controller/inspection/SafetyEnvironmentalInspectorController.java @@ -30,262 +30,269 @@ import java.util.stream.Collectors; @RequestMapping("/safetyenvironmentalinspector") public class SafetyEnvironmentalInspectorController extends BaseController { - @Autowired - private SafetyEnvironmentalInspectorService safetyenvironmentalinspectorService; + @Autowired + private SafetyEnvironmentalInspectorService safetyenvironmentalinspectorService; - @Autowired - private DepartmentService departmentService; + @Autowired + private DepartmentService departmentService; - /**列表 - * @param page - * @throws Exception - */ - @RequestMapping(value="/list") - @RequiresPermissions("safetyenvironmentalinspector:list") - @ResponseBody - public Object list(Page page) throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 - if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); - pd.put("INSPECTION_USER_ID", Jurisdiction.getUSER_ID()); //检查人ID - Session session = Jurisdiction.getSession(); - User loginUser = (User)session.getAttribute(Const.SESSION_USER); - if(null != loginUser){ - pd.put("supDeparIds",loginUser.getSuperviseDepartId()); - pd.put("roleLevel",loginUser.getRoleLevel()); - pd.put("loginUserId",loginUser.getUSER_ID()); - } + /** + * 列表 + * + * @param page + * @throws Exception + */ + @RequestMapping(value = "/list") + @RequiresPermissions("safetyenvironmentalinspector:list") + @ResponseBody + public Object list(Page page) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if (Tools.notEmpty(KEYWORDS)) pd.put("KEYWORDS", KEYWORDS.trim()); + pd.put("INSPECTION_USER_ID", Jurisdiction.getUSER_ID()); //检查人ID + Session session = Jurisdiction.getSession(); + User loginUser = (User) session.getAttribute(Const.SESSION_USER); + if (null != loginUser) { + pd.put("supDeparIds", loginUser.getSuperviseDepartId()); + pd.put("roleLevel", loginUser.getRoleLevel()); + pd.put("loginUserId", loginUser.getUSER_ID()); + } + pd.put("loginUserId", Jurisdiction.getUSER_ID()); + page.setPd(pd); + List varList = safetyenvironmentalinspectorService.list(page); //列出SafetyEnvironmentalInspector列表 + for (PageData vector : varList) { + PageData condition = new PageData(); + condition.put("DEPARTMENT_ID", vector.getString("INSPECTED_DEPARTMENT_ID")); + List parent_list = departmentService.getGenealogy(condition); + if (parent_list == null || parent_list.size() < 1) { + String corp_infos = ""; + vector.put("INSPECTED_DEPARTMENT_NAMES", corp_infos); + } else { + String corp_infos = parent_list.stream().map(n -> n.getString("NAME")).collect(Collectors.joining("-")); + vector.put("INSPECTED_DEPARTMENT_NAMES", corp_infos); + } + } + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } - page.setPd(pd); - List varList = safetyenvironmentalinspectorService.list(page); //列出SafetyEnvironmentalInspector列表 - for (PageData vector: varList) { - PageData condition = new PageData(); - condition.put("DEPARTMENT_ID",vector.getString("INSPECTED_DEPARTMENT_ID")); - List parent_list = departmentService.getGenealogy(condition); - if (parent_list == null || parent_list.size() < 1) { - String corp_infos = ""; - vector.put("INSPECTED_DEPARTMENT_NAMES", corp_infos); - } else { - String corp_infos = parent_list.stream().map(n -> n.getString("NAME")).collect(Collectors.joining("-")); - vector.put("INSPECTED_DEPARTMENT_NAMES",corp_infos); - } - } - map.put("varList", varList); - map.put("page", page); - map.put("result", errInfo); - return map; - } + /** + * 检查人核实 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/verify") + @RequiresPermissions("safetyenvironmentalinspector:add") + @ResponseBody + public Object verify() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + PageData uBean = safetyenvironmentalinspectorService.findById(pd); + uBean.put("INSPECTION_USER_OPINION", pd.getString("INSPECTION_USER_OPINION")); + uBean.put("INSPECTION_USER_SIGN_TIME", DateUtil.date2Str(new Date())); + uBean.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + uBean.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + uBean.put("INSPECTION_STATUS", pd.getString("INSPECTION_STATUS")); //检查进度状态 + uBean.put("ACTION_USER", Jurisdiction.getName()); //检查进度状态 - /**检查人核实 - * @param - * @throws Exception - */ - @RequestMapping(value="/verify") - @RequiresPermissions("safetyenvironmentalinspector:add") - @ResponseBody - public Object verify() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - PageData uBean= safetyenvironmentalinspectorService.findById(pd); - uBean.put("INSPECTION_USER_OPINION", pd.getString("INSPECTION_USER_OPINION")); - uBean.put("INSPECTION_USER_SIGN_TIME", DateUtil.date2Str(new Date())); - uBean.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - uBean.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - uBean.put("INSPECTION_STATUS", pd.getString("INSPECTION_STATUS")); //检查进度状态 - uBean.put("ACTION_USER", Jurisdiction.getName()); //检查进度状态 + if (StringUtils.isNotBlank(pd.getString("INSPECTION_USER_SIGN_IMG"))) { + MultipartFile file = BASE64DecodedMultipartFile.base64ToMultipart(pd.getString("INSPECTION_USER_SIGN_IMG")); + String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + errInfo = "fail"; + map.put("result", errInfo); + map.put("msg", "文件格式不正确!"); + return map; + } + String ffile = DateUtil.getDays(); + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); - if (StringUtils.isNotBlank(pd.getString("INSPECTION_USER_SIGN_IMG"))) { - MultipartFile file = BASE64DecodedMultipartFile.base64ToMultipart(pd.getString("INSPECTION_USER_SIGN_IMG")); - String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); - if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { - errInfo = "fail"; - map.put("result", errInfo); - map.put("msg", "文件格式不正确!"); - return map; - } - String ffile = DateUtil.getDays(); - String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); - Smb.sshSftp(file, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); - - uBean.put("INSPECTION_USER_SIGN_IMG", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); - } - safetyenvironmentalinspectorService.verify(uBean); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } + uBean.put("INSPECTION_USER_SIGN_IMG", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); + } + safetyenvironmentalinspectorService.verify(uBean); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + /** + * 新增 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/add") + @RequiresPermissions("safetyenvironmentalinspector:add") + @ResponseBody + public Object add() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("INSPECTION_INSPECTOR_ID", this.get32UUID()); //主键 + pd.put("ISDELETE", ""); //是否删除(0:有效 1:删除) + pd.put("CREATOR", Jurisdiction.getUSER_ID()); //添加人 + pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID + safetyenvironmentalinspectorService.save(pd); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + /** + * 删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/delete") + @RequiresPermissions("safetyenvironmentalinspector:del") + @ResponseBody + public Object delete() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + safetyenvironmentalinspectorService.delete(pd); + map.put("result", errInfo); //返回结果 + return map; + } + /** + * 修改 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/edit") + @RequiresPermissions("safetyenvironmentalinspector:edit") + @ResponseBody + public Object edit() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + safetyenvironmentalinspectorService.edit(pd); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + /** + * 去修改页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/goEdit") + @RequiresPermissions("safetyenvironmentalinspector:edit") + @ResponseBody + public Object goEdit() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = safetyenvironmentalinspectorService.findById(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + /** + * 批量删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/deleteAll") + @RequiresPermissions("safetyenvironmentalinspector:del") + @ResponseBody + public Object deleteAll() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + String DATA_IDS = pd.getString("DATA_IDS"); + if (Tools.notEmpty(DATA_IDS)) { + String[] ArrayDATA_IDS = DATA_IDS.split(","); + pd.put("ArrayDATA_IDS", ArrayDATA_IDS); //待删除ids + safetyenvironmentalinspectorService.deleteAll(pd); + errInfo = "success"; + } else { + errInfo = "fail"; + } + map.put("result", errInfo); //返回结果 + return map; + } - - - - - /**新增 - * @param - * @throws Exception - */ - @RequestMapping(value="/add") - @RequiresPermissions("safetyenvironmentalinspector:add") - @ResponseBody - public Object add() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("INSPECTION_INSPECTOR_ID", this.get32UUID()); //主键 - pd.put("ISDELETE", ""); //是否删除(0:有效 1:删除) - pd.put("CREATOR", Jurisdiction.getUSER_ID()); //添加人 - pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 - pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID - safetyenvironmentalinspectorService.save(pd); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } - - /**删除 - * @param - * @throws Exception - */ - @RequestMapping(value="/delete") - @RequiresPermissions("safetyenvironmentalinspector:del") - @ResponseBody - public Object delete() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - safetyenvironmentalinspectorService.delete(pd); - map.put("result", errInfo); //返回结果 - return map; - } - - /**修改 - * @param - * @throws Exception - */ - @RequestMapping(value="/edit") - @RequiresPermissions("safetyenvironmentalinspector:edit") - @ResponseBody - public Object edit() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - safetyenvironmentalinspectorService.edit(pd); - map.put("pd", pd); - map.put("result", errInfo); - return map; - } - - /**去修改页面获取数据 - * @param - * @throws Exception - */ - @RequestMapping(value="/goEdit") - @RequiresPermissions("safetyenvironmentalinspector:edit") - @ResponseBody - public Object goEdit() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd = safetyenvironmentalinspectorService.findById(pd); //根据ID读取 - map.put("pd", pd); - map.put("result", errInfo); - return map; - } - - /**批量删除 - * @param - * @throws Exception - */ - @RequestMapping(value="/deleteAll") - @RequiresPermissions("safetyenvironmentalinspector:del") - @ResponseBody - public Object deleteAll() throws Exception{ - Map map = new HashMap(); - String errInfo = "success"; - PageData pd = new PageData(); - pd = this.getPageData(); - pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 - pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - String DATA_IDS = pd.getString("DATA_IDS"); - if(Tools.notEmpty(DATA_IDS)){ - String[] ArrayDATA_IDS = DATA_IDS.split(","); - pd.put("ArrayDATA_IDS", ArrayDATA_IDS); //待删除ids - safetyenvironmentalinspectorService.deleteAll(pd); - errInfo = "success"; - }else{ - errInfo = "fail"; - } - map.put("result", errInfo); //返回结果 - return map; - } - - /**导出到excel - * @param - * @throws Exception - */ - @RequestMapping(value="/excel") - @RequiresPermissions("toExcel") - public ModelAndView exportExcel() throws Exception{ - ModelAndView mv = new ModelAndView(); - PageData pd = new PageData(); - pd = this.getPageData(); - Map dataMap = new HashMap(); - List titles = new ArrayList(); - titles.add("安全环保检查ID"); //1 - titles.add("检查人"); //2 - titles.add("检查人意见(有异议时必填)"); //3 - titles.add("检查人签字"); //4 - titles.add("检查人签字时间"); //5 - titles.add("是否删除(0:有效 1:删除)"); //6 - titles.add("添加人"); //7 - titles.add("添加时间"); //8 - titles.add("修改人"); //9 - titles.add("修改时间"); //10 - titles.add("企业ID"); //11 - dataMap.put("titles", titles); - pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID - List varOList = safetyenvironmentalinspectorService.listAll(pd); - List varList = new ArrayList(); - for(int i=0;i dataMap = new HashMap(); + List titles = new ArrayList(); + titles.add("安全环保检查ID"); //1 + titles.add("检查人"); //2 + titles.add("检查人意见(有异议时必填)"); //3 + titles.add("检查人签字"); //4 + titles.add("检查人签字时间"); //5 + titles.add("是否删除(0:有效 1:删除)"); //6 + titles.add("添加人"); //7 + titles.add("添加时间"); //8 + titles.add("修改人"); //9 + titles.add("修改时间"); //10 + titles.add("企业ID"); //11 + dataMap.put("titles", titles); + pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID + List varOList = safetyenvironmentalinspectorService.listAll(pd); + List varList = new ArrayList(); + for (int i = 0; i < varOList.size(); i++) { + PageData vpd = new PageData(); + vpd.put("var1", varOList.get(i).getString("INSPECTION_ID")); //1 + vpd.put("var2", varOList.get(i).getString("INSPECTION_USER_ID")); //2 + vpd.put("var3", varOList.get(i).getString("INSPECTION_USER_OPINION")); //3 + vpd.put("var4", varOList.get(i).getString("INSPECTION_USER_SIGN_IMG")); //4 + vpd.put("var5", varOList.get(i).getString("INSPECTION_USER_SIGN_TIME")); //5 + vpd.put("var6", varOList.get(i).getString("ISDELETE")); //6 + vpd.put("var7", varOList.get(i).getString("CREATOR")); //7 + vpd.put("var8", varOList.get(i).getString("CREATTIME")); //8 + vpd.put("var9", varOList.get(i).getString("OPERATOR")); //9 + vpd.put("var10", varOList.get(i).getString("OPERATTIME")); //10 + vpd.put("var11", varOList.get(i).getString("CORPINFO_ID")); //11 + varList.add(vpd); + } + dataMap.put("varList", varList); + ObjectExcelView erv = new ObjectExcelView(); + mv = new ModelAndView(erv, dataMap); + return mv; + } } diff --git a/src/main/java/com/zcloud/controller/messages/MessagesController.java b/src/main/java/com/zcloud/controller/messages/MessagesController.java index 5160a9c6..6d6d20af 100644 --- a/src/main/java/com/zcloud/controller/messages/MessagesController.java +++ b/src/main/java/com/zcloud/controller/messages/MessagesController.java @@ -47,7 +47,7 @@ public class MessagesController { if (body == null || !body.containsKey("key") || !body.containsKey("value")) { throw new RuntimeException("参数为空"); } - PushRecords pushRecords = JSON.parseObject(decrypt(body, privateKey), PushRecords.class); + PushRecords pushRecords = JSON.parseObject(decrypt(body), PushRecords.class); Set> validate = validator.validate(pushRecords); if (!validate.isEmpty()) { throw new ConstraintViolationException(validate); @@ -62,9 +62,9 @@ public class MessagesController { return result; } - private String decrypt(Map body, String privateKey) { + private String decrypt(Map body) { try { - RSA rsa = new RSA(privateKey, null); + RSA rsa = new RSA(MessagesController.privateKey, null); byte[] aesKey = rsa.decrypt(Convert.toStr(body.get("key")), KeyType.PrivateKey); SymmetricCrypto aes = new SymmetricCrypto(SymmetricAlgorithm.AES, aesKey); return aes.decryptStr(Convert.toStr(body.get("value")), StandardCharsets.UTF_8); diff --git a/src/main/java/com/zcloud/entity/messages/PushRecords.java b/src/main/java/com/zcloud/entity/messages/PushRecords.java index 3ca02e19..350370d2 100644 --- a/src/main/java/com/zcloud/entity/messages/PushRecords.java +++ b/src/main/java/com/zcloud/entity/messages/PushRecords.java @@ -32,4 +32,6 @@ public class PushRecords implements Serializable { @NotBlank(message = "发送时间不能为空") private String sendTime; + + private Integer state; } diff --git a/src/main/java/com/zcloud/mapper/datasource/messages/MessagesMapper.java b/src/main/java/com/zcloud/mapper/datasource/messages/MessagesMapper.java index a3c36138..b61c1877 100644 --- a/src/main/java/com/zcloud/mapper/datasource/messages/MessagesMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/messages/MessagesMapper.java @@ -7,4 +7,6 @@ public interface MessagesMapper { void install(PushRecords pushRecords); String findUserIdByPhone(@Param("phone") String phone); + + void updateById(PushRecords pushRecords); } diff --git a/src/main/java/com/zcloud/service/messages/PushMessages.java b/src/main/java/com/zcloud/service/messages/PushMessages.java new file mode 100644 index 00000000..bd556197 --- /dev/null +++ b/src/main/java/com/zcloud/service/messages/PushMessages.java @@ -0,0 +1,17 @@ +package com.zcloud.service.messages; + +import com.zcloud.entity.messages.PushRecords; + +/** + * 发送消息接口 + */ +public interface PushMessages { + + /** + * 发送消息 + * + * @param pushRecords 消息实体 + * @param userId 用户id + */ + void push(PushRecords pushRecords, String userId) throws Exception; +} diff --git a/src/main/java/com/zcloud/service/messages/impl/AllMessagesImpl.java b/src/main/java/com/zcloud/service/messages/impl/AllMessagesImpl.java new file mode 100644 index 00000000..001493fb --- /dev/null +++ b/src/main/java/com/zcloud/service/messages/impl/AllMessagesImpl.java @@ -0,0 +1,25 @@ +package com.zcloud.service.messages.impl; + +import com.zcloud.entity.messages.PushRecords; +import com.zcloud.service.messages.PushMessages; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +/** + * 发送站内信 + */ +@Component("messages3") +@AllArgsConstructor +public class AllMessagesImpl implements PushMessages { + + private final InsideMessagesImpl insideMessages; + private final SmsMessagesImpl smsMessages; + + @Override + @Transactional(rollbackFor = Exception.class) + public void push(PushRecords pushRecords, String userId) throws Exception { + insideMessages.push(pushRecords, userId); + smsMessages.push(pushRecords, userId); + } +} diff --git a/src/main/java/com/zcloud/service/messages/impl/InsideMessagesImpl.java b/src/main/java/com/zcloud/service/messages/impl/InsideMessagesImpl.java new file mode 100644 index 00000000..603e2db8 --- /dev/null +++ b/src/main/java/com/zcloud/service/messages/impl/InsideMessagesImpl.java @@ -0,0 +1,35 @@ +package com.zcloud.service.messages.impl; + +import com.zcloud.entity.PageData; +import com.zcloud.entity.messages.PushRecords; +import com.zcloud.service.bus.NoticeCorpService; +import com.zcloud.service.messages.PushMessages; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + +/** + * 发送站内信 + */ +@Component("messages2") +@AllArgsConstructor +public class InsideMessagesImpl implements PushMessages { + + private final NoticeCorpService noticeCorpService; + + @Override + @Transactional(rollbackFor = Exception.class) + public void push(PushRecords pushRecords, String userId) throws Exception { + PageData mes = new PageData(); + mes.put("BIANMA", "PUSH_RECORDS"); + mes.put("SENDER_ID", "九公司应急管理"); + mes.put("SENDER_NAME", "九公司应急管理"); + mes.put("SYNOPSIS", pushRecords.getMessageTitle()); + mes.put("CORPINFO_ID", "48a8ca9815814c979814ddcf041c5cd5"); + mes.put("RECEIVER_ID", userId); + PageData content = new PageData(); + content.put("msg", pushRecords.getMessageContent()); + mes.put("CONTENT", content);// 站内信内容 + noticeCorpService.sendNotice(mes); + } +} diff --git a/src/main/java/com/zcloud/service/messages/impl/MessagesServiceImpl.java b/src/main/java/com/zcloud/service/messages/impl/MessagesServiceImpl.java index 72af1bba..ee039429 100644 --- a/src/main/java/com/zcloud/service/messages/impl/MessagesServiceImpl.java +++ b/src/main/java/com/zcloud/service/messages/impl/MessagesServiceImpl.java @@ -1,17 +1,17 @@ package com.zcloud.service.messages.impl; import cn.hutool.core.util.StrUtil; -import com.zcloud.entity.PageData; import com.zcloud.entity.messages.PushRecords; import com.zcloud.mapper.datasource.messages.MessagesMapper; -import com.zcloud.service.bus.NoticeCorpService; import com.zcloud.service.messages.MessagesService; +import com.zcloud.service.messages.PushMessages; import com.zcloud.util.DateUtil; import com.zcloud.util.UuidUtil; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; + +import java.util.Map; @Slf4j @Service @@ -19,67 +19,26 @@ import org.springframework.transaction.annotation.Transactional; public class MessagesServiceImpl implements MessagesService { private final MessagesMapper mapper; - private final NoticeCorpService noticeCorpService; + private final Map messages; @Override - @Transactional(rollbackFor = Exception.class) public void push(PushRecords pushRecords) throws Exception { // 先记录数据 pushRecords.setId(UuidUtil.get32UUID()); pushRecords.setSendTime(DateUtil.getTime()); + pushRecords.setState(1); mapper.install(pushRecords); // 根据手机号查找用户id String userId = mapper.findUserIdByPhone(pushRecords.getPhone()); if (StrUtil.isEmpty(userId)) { throw new RuntimeException("该用户不存在"); } + // 调用对应消息推送实现 Integer type = pushRecords.getMessageType(); - // 1-短信 2-平台信息 3-全发 - if (type == 1) { - pushSms(pushRecords); - } else if (type == 2) { - PageData data = pushInfo(pushRecords, userId); - noticeCorpService.sendNotice(data); - } else if (type == 3) { - pushSms(pushRecords); - PageData data = pushInfo(pushRecords, userId); - noticeCorpService.sendNotice(data); - } else { - throw new RuntimeException("消息类型:【" + type + "】错误"); - } - } - - /** - * 推送平台信息(站内信) - * 注意 不能再此方法中调用数据库 再类中直接调用 会导致事务失效 private 也会导致事务失效 - * - * @param pushRecords 消息 - * @param userId 接收人id - */ - private PageData pushInfo(PushRecords pushRecords, String userId) throws Exception { - PageData mes = new PageData(); - mes.put("BIANMA", "PUSH_RECORDS"); - mes.put("SENDER_ID", "九公司应急管理"); // 发送人员ID - mes.put("SENDER_NAME", "九公司应急管理"); // 发送人员姓名 - mes.put("SYNOPSIS", pushRecords.getMessageTitle()); // 站内信标题 - //mes.put("WORKURL", "/pages/application/high-risk-work/limited-space/gas-analysis/list?NameLikes=" + pd.getString("WORK_PERMIT_NUMBER")); // 操作链接 - mes.put("CORPINFO_ID", "48a8ca9815814c979814ddcf041c5cd5");// 企业id - mes.put("RECEIVER_ID", userId); // 接收人员ID - PageData content = new PageData(); - content.put("msg", pushRecords.getMessageContent());// 作业编号 - mes.put("CONTENT", content);// 站内信内容 - return mes; - } - - /** - * 推送平台信息(站内信) - * 注意 不能再此方法中调用数据库 再类中直接调用 会导致事务失效 private 也会导致事务失效 - * - * @param pushRecords 消息 - */ - private void pushSms(PushRecords pushRecords) { - // todo - log.error("===================>推送短信信息"); - log.error("消息内容:{}", pushRecords); + PushMessages pushMessages = messages.get("messages" + type); + pushMessages.push(pushRecords, userId); + // 修改状态 + pushRecords.setState(2); + mapper.updateById(pushRecords); } } diff --git a/src/main/java/com/zcloud/service/messages/impl/SmsMessagesImpl.java b/src/main/java/com/zcloud/service/messages/impl/SmsMessagesImpl.java new file mode 100644 index 00000000..fe5e4aea --- /dev/null +++ b/src/main/java/com/zcloud/service/messages/impl/SmsMessagesImpl.java @@ -0,0 +1,28 @@ +package com.zcloud.service.messages.impl; + +import com.alibaba.fastjson.JSONObject; +import com.zcloud.entity.messages.PushRecords; +import com.zcloud.service.messages.PushMessages; +import com.zcloud.util.SendSmsUtil; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; + +import java.text.ParseException; + +/** + * 发送短信 + */ +@Component("messages1") +@AllArgsConstructor +public class SmsMessagesImpl implements PushMessages { + + @Override + public void push(PushRecords pushRecords, String userId) throws ParseException { + JSONObject object = new JSONObject(); + object.put("messageContent", pushRecords.getMessageContent()); + // todo 应该是短信模版tpId 没有 别的OK了 + if (!SendSmsUtil.sendSms(null, object, pushRecords.getSendTime(), pushRecords.getPhone())) { + throw new RuntimeException("系统故障:短信发送失败"); + } + } +} diff --git a/src/main/java/com/zcloud/util/AliSmsToolUtil.java b/src/main/java/com/zcloud/util/AliSmsToolUtil.java index 8847ead8..95ef2958 100644 --- a/src/main/java/com/zcloud/util/AliSmsToolUtil.java +++ b/src/main/java/com/zcloud/util/AliSmsToolUtil.java @@ -117,9 +117,33 @@ public class AliSmsToolUtil { //发短信 Map map = new HashMap(); map.put("infoDetail", "阿斯顿发"); - map.put("phone", "18630363710"); + map.put("phone", "18630387571"); map.put("infoType", "阿三地方"); + map.put("templateCode", "SMS_227260789"); List paramsList = new ArrayList(); + PageData params1 = new PageData(); + // 第1个参数 + params1.put("name", "number");// 存入短信模板中的参数名称 + params1.put("value", 2);// 存入上面参数名称所传递的值 + paramsList.add(params1); + + PageData params2 = new PageData(); + // 第2个参数 + params2.put("name", "params1");// 存入短信模板中的参数名称 + params2.put("value", "盲板作业");// 存入上面参数名称所传递的值 + paramsList.add(params2); + + PageData params3 = new PageData(); + // 第3个参数 + params3.put("name", "params2");// 存入短信模板中的参数名称 + params3.put("value", "生产部门意见");// 存入上面参数名称所传递的值 + paramsList.add(params3); + + PageData params4 = new PageData(); + // 第4个参数 + params4.put("name", "params3");// 存入短信模板中的参数名称 + params4.put("value", "审核");// 存入上面参数名称所传递的值 + paramsList.add(params4); SendSmsResponse response = sendSms(map,paramsList); System.out.println("短信接口返回的数据----------------"); System.out.println("Code=" + response.getCode()); diff --git a/src/main/java/com/zcloud/util/SendSmsUtil.java b/src/main/java/com/zcloud/util/SendSmsUtil.java index efaddd2c..c7442f49 100644 --- a/src/main/java/com/zcloud/util/SendSmsUtil.java +++ b/src/main/java/com/zcloud/util/SendSmsUtil.java @@ -1,8 +1,12 @@ package com.zcloud.util; +import cn.hutool.core.date.DateUtil; import cn.hutool.http.HttpRequest; +import cn.hutool.http.HttpResponse; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.ObjectUtils; import org.apache.commons.lang.StringUtils; import org.springframework.http.MediaType; @@ -14,6 +18,7 @@ import java.util.Date; /** * 重点工程发送短信工具类 */ +@Slf4j public class SendSmsUtil { private static String USERNAME = "qhdzyhy"; @@ -27,43 +32,44 @@ public class SendSmsUtil { /** * 发送短信 + * * @param records - * @param time 发送时间 为空或小于当前时间则立即发送 - * records格式实例 records是 JSONArray 里边的内容通过调用下方方法getRecords获取 JSONObject 定义一个JSONArray后 put进去即可 - * "records":[ - * { - * "mobile":"138****0000", - * "tpContent":{ - * "var1":"变量1", - * "var2":"变量2" - * } - * }, - * { - * "mobile":"138****0001", - * "tpContent":{ - * "var1":"变量2", - * "var2":"变量2" - * } - * } - * ] + * @param time 发送时间 为空或小于当前时间则立即发送 + * records格式实例 records是 JSONArray 里边的内容通过调用下方方法getRecords获取 JSONObject 定义一个JSONArray后 put进去即可 + * "records":[ + * { + * "mobile":"138****0000", + * "tpContent":{ + * "var1":"变量1", + * "var2":"变量2" + * } + * }, + * { + * "mobile":"138****0001", + * "tpContent":{ + * "var1":"变量2", + * "var2":"变量2" + * } + * } + * ] */ - public static void sendSms(String tpId,JSONArray records ,String time) throws ParseException { + public static void sendSms(String tpId, JSONArray records, String time) throws ParseException { JSONObject json = new JSONObject(); - Long tKey = System.currentTimeMillis()/1000; - String passWord = MD5.md5(PASSWORD+tKey); + Long tKey = System.currentTimeMillis() / 1000; + String passWord = MD5.md5(PASSWORD + tKey); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //扔参数 - json.put("username",USERNAME); - json.put("password",passWord); - json.put("tKey",tKey); - json.put("signature",SIGNATURE); - json.put("tpId",tpId); - if(StringUtils.isNotBlank(time)){ - if(sdf.parse(time).after(new Date())){ - json.put("time",time); + json.put("username", USERNAME); + json.put("password", passWord); + json.put("tKey", tKey); + json.put("signature", SIGNATURE); + json.put("tpId", tpId); + if (StringUtils.isNotBlank(time)) { + if (sdf.parse(time).after(new Date())) { + json.put("time", time); } } - json.put("records",records); + json.put("records", records); System.out.println(json.toJSONString()); String result = HttpRequest.post(URL) .timeout(60000) @@ -71,45 +77,64 @@ public class SendSmsUtil { System.out.println(result); } + // {"msg":"template error","tpId":"null","code":4014,"msgId":"172950016144709288961"} + // {"msg":"success","tpId":"121487","code":200,"msgId":"172950025828957168641","invalidList":[]} + public static boolean sendSms(String tpId, JSONObject records, String time, String phone) throws ParseException { + JSONObject json = new JSONObject(); + json.put("username", USERNAME); + json.put("tKey", System.currentTimeMillis() / 1000); + json.put("password", MD5.md5(PASSWORD + json.getLong("tKey"))); + json.put("signature", SIGNATURE); + json.put("tpId", tpId); + if (StringUtils.isNotBlank(time) && DateUtil.parseDateTime(time).after(new Date())) { + json.put("time", time); + } + JSONArray array = new JSONArray(); + array.add(getRecords(phone, records)); + json.put("records", array); + HttpRequest request = HttpRequest.post(URL) + .timeout(60000) + .body(json.toJSONString(), MediaType.APPLICATION_JSON_UTF8_VALUE); + try (HttpResponse response = request.execute()) { + return JSON.parseObject(response.body()).getInteger("code") == 200; + } catch (Exception e) { + log.error("发送短信异常", e); + return false; + } + } + /** * 封装要发送的电话以及要替换的内容 - * @param mobile 手机号 + * + * @param mobile 手机号 * @param tpContent 替换内容 - * @return - * 格式实例 var1表示要替换的内容 与要替换的内容保持一致即可 变量1表示替换的内容 - * { - * "mobile":"138****0000", - * "tpContent":{ - * "var1":"变量1", - * "var2":"变量2" - * } - * } + * @return 格式实例 var1表示要替换的内容 与要替换的内容保持一致即可 变量1表示替换的内容 + * { + * "mobile":"138****0000", + * "tpContent":{ + * "var1":"变量1", + * "var2":"变量2" + * } + * } */ - public static JSONObject getRecords(String mobile, JSONObject tpContent ){ + public static JSONObject getRecords(String mobile, JSONObject tpContent) { JSONObject json = new JSONObject(); - json.put("mobile",mobile); - if(ObjectUtils.hashCode(tpContent)!=0){ - json.put("tpContent",tpContent); + json.put("mobile", mobile); + if (ObjectUtils.hashCode(tpContent) != 0) { + json.put("tpContent", tpContent); } return json; }//d22f8a5d4a35b3761dc9525186e652a0 //测试接口 - public static void main(String[] args) throws ParseException { - JSONArray jsonArray = new JSONArray(); - - //接受返回结果 - JSONObject records = new JSONObject(); - //定义替换参数 - //JSONObject tpContent = new JSONObject(); - //tpContent.put("userName","卓云企业"); - //tpContent.put("time","2023-09-21 15:56:20"); - //records = getRecords("18617456701",tpContent); - jsonArray.add(records); - - sendSms("null",jsonArray,null); - } +// public static void main(String[] args) throws ParseException { +// //定义替换参数 +// JSONObject tpContent = new JSONObject(); +// tpContent.put("HIDDENDESCR", "卓云企业测试"); +// JSONObject object = sendSms("121487", tpContent, DateUtil.formatDateTime(new Date()), "18630387571"); +// System.out.println(object.toJSONString()); +// } } diff --git a/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalInspectorMapper.xml b/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalInspectorMapper.xml index 0635afd4..f786f694 100644 --- a/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalInspectorMapper.xml +++ b/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalInspectorMapper.xml @@ -194,7 +194,11 @@ ) GROUP BY f.INSPECTION_ID - ORDER BY FIELD (se.INSPECTION_STATUS , '0','1','2','3','4','5','6','7','8','-1','-2') asc, se.INSPECTION_TIME_START DESC , se.INSPECTION_TIME_END DESC + ORDER BY + FIELD(if(f.INSPECTION_USER_SIGN_TIME is not null,'2','1'), '1','2'), + FIELD(if(se.INSPECTED_SITEUSER_ID = #{pd.loginUserId},#{pd.loginUserId},'1'), #{pd.loginUserId}, '1'), + FIELD (se.INSPECTION_STATUS , '0','1','2','3','4','5','6','7','8','-1','-2') , + se.INSPECTION_TIME_START DESC , se.INSPECTION_TIME_END DESC diff --git a/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalMapper.xml b/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalMapper.xml index d765acb9..e4d6ebe9 100644 --- a/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalMapper.xml +++ b/src/main/resources/mybatis/datasource/inspection/SafetyEnvironmentalMapper.xml @@ -339,16 +339,6 @@ OR iod.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%') ) - - - and REPLACE(siu.NAME,'/',',') LIKE CONCAT(CONCAT('%', #{pd.INSPECTION_USER_NAME}),'%') - - - and REPLACE(siu.PHONE,'/',',') LIKE CONCAT(CONCAT('%', #{pd.INSPECTION_USER_PHONE}),'%') - - - and biss.SITUATION like CONCAT('%', #{pd.INSPECTION_CASE}, '%') - GROUP BY f.INSPECTION_ID ORDER BY f.CREATTIME DESC @@ -649,82 +639,111 @@ + + + and ( + isd.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}), '%') + OR iod.NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}), '%') + ) + + GROUP BY f.INSPECTION_ID + ORDER BY CASE + WHEN f.INSPECTION_STATUS IN ('3', '4') AND f.INSPECTED_SITEUSER_ID = #{pd.loginUserId} THEN 1 + WHEN f.INSPECTION_STATUS IN ('5', '6', '7') AND checkout = 1 THEN 2 + ELSE 3 + END, + field(f.INSPECTION_STATUS, '3', '6', '4', '7', '5', '0', '1', '2', '8', '-1', '-2'), + f.INSPECTION_TIME_END DESC + + + + update push_records + + + PHONE = #{phone}, + + + MESSAGE_TITLE = #{messageTitle}, + + + MESSAGE_CONTENT = #{messageContent}, + + + MESSAGE_TYPE = #{messageType}, + + + SEND_TIME = #{sendTime}, + + + STATE = #{state}, + + + where ID = #{id} + \ No newline at end of file