diff --git a/pom.xml b/pom.xml index 0d6aca9..b3ffe36 100644 --- a/pom.xml +++ b/pom.xml @@ -502,6 +502,11 @@ rocketmq-spring-boot-starter 2.2.2 + + cn.hutool + hutool-all + 5.0.5 + diff --git a/src/main/java/com/zcloud/controller/corp/CorpInfoController.java b/src/main/java/com/zcloud/controller/corp/CorpInfoController.java index 9b7b2c9..985b58f 100644 --- a/src/main/java/com/zcloud/controller/corp/CorpInfoController.java +++ b/src/main/java/com/zcloud/controller/corp/CorpInfoController.java @@ -67,6 +67,22 @@ public class CorpInfoController extends BaseController { private StudyTaskService studyTaskService; @Autowired private Smb smb; + + @RequestMapping(value = "/listAll") + @ResponseBody + public Object listAll() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + + List varList = corpinfoService.listAll(pd); //列出CorpInfo列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + /**新增 * @param * @throws Exception diff --git a/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyProjectsController.java b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyProjectsController.java new file mode 100644 index 0000000..39e1271 --- /dev/null +++ b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyProjectsController.java @@ -0,0 +1,281 @@ +package com.zcloud.controller.keyProjects.app; + +import com.alibaba.fastjson.JSON; +import com.zcloud.controller.base.BaseController; +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.service.relatedparty.OutSourcedService; +import com.zcloud.service.relatedparty.UnitsService; +import com.zcloud.service.specialoperation.PersonnelManagementService; +import com.zcloud.service.system.DictionariesService; +import com.zcloud.service.video.VideoManagerService; +import com.zcloud.util.Tools; +import org.apache.commons.lang.StringUtils; +import org.apache.shiro.crypto.hash.SimpleHash; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:相关方管理 + * 作者:luoxiaobao + * 时间:2022-06-07 + * 官网:www.zcloudchina.com + */ +@Controller +@RequestMapping("/app/keyProjects") +public class AppKeyProjectsController extends BaseController { + + @Autowired + private UnitsService unitsService; + @Autowired + private OutSourcedService outsourcedService; + @Autowired + private DictionariesService dictionariesService; + @Autowired + private PersonnelManagementService personnelmanagementService; + + @Autowired + private VideoManagerService videomanagerService; + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listAppZdgcgl") + @ResponseBody + public Object listAppZdgcgl(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String UserId = pd.getString("UserId"); + pd.put("UserId",UserId); + if(!StringUtils.equals("1",UserId)){ + pd.put("DeptId",outsourcedService.getDeptId(UserId)); + } + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = outsourcedService.applylist(page); //列出OutSourced列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /** + * 重点工程定位 + * @return + * @throws Exception + */ + @RequestMapping(value="/editDingWei") + @ResponseBody + public Object editDingWei() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + outsourcedService.editDingWei(pd); //根据ID读取 + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pd); + pd.put("operatingCorpId",corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + map.put("result", errInfo); + return map; + } + + /**列表 + * @param page + * @throws Exception + */ + @RequestMapping(value="/videomanagerList") + @ResponseBody + public Object list(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + page.setPd(pd); + List varList = videomanagerService.listApp(page); //列出VideoManager列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /**去修改页面获取数据 + * @param + * @throws Exception + */ + @RequestMapping(value="/getOutsourced") + @ResponseBody + public Object getOutsourced() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = outsourcedService.findById(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listAllUnits") + @ResponseBody + public Object listAllUnits() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + List varList = unitsService.listAll(pd); //列出PersonnelManagement列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listOutsourced") + @ResponseBody + public Object listOutsourced(Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String UserId = pd.getString("UNITS_ID"); + pd.put("UserId",UserId); + if(!StringUtils.equals("1",UserId)){ + pd.put("DeptId",outsourcedService.getDeptId(UserId)); + } + String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 + if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); + page.setPd(pd); + List varList = outsourcedService. list(page); //列出OutSourced列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listAllOutsourced") + @ResponseBody + public Object listAllOutsourced() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + List varList = outsourcedService.listAll(pd); //列出PersonnelManagement列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/listAllPersonnel") + @ResponseBody + public Object listAllPersonnel() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + List varList = personnelmanagementService.listAll(pd); //列出PersonnelManagement列表 + map.put("varList", varList); + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/login") + @ResponseBody + public Object login() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String pwd = new SimpleHash("SHA-1", pd.get("USERNAME"), pd.get("PASSWORD")).toString(); + pd.put("PHONENUM", pd.get("USERNAME")); + pd.put("PASSWORD",pwd); + pd = personnelmanagementService.findForLogin(pd); //列出PersonnelManagement列表 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + + /** + * @param page + * @throws Exception + */ + @RequestMapping(value="/editPwd") + @ResponseBody + public Object editPwd (Page page) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + PageData pageData = personnelmanagementService.findById(pd); + String oldpwd = new SimpleHash("SHA-1", pageData.getString("PHONENUM"), pd.get("OLDPASSWORD")).toString(); + if(!pageData.getString("PASSWORD").equals(oldpwd)){ + errInfo = "error"; + map.put("msg","旧密码错误"); + return map; + } + String pwd = new SimpleHash("SHA-1", pageData.getString("PHONENUM"), pd.get("PASSWORD")).toString(); //新密码 + PageData updateUser = new PageData(); + updateUser.put("PASSWORD", pwd); + updateUser.put("PERSONNELMANAGEMENT_ID", pageData.getString("PERSONNELMANAGEMENT_ID")); + personnelmanagementService.editPassword(updateUser); + + map.put("result", errInfo); + return map; + } + + /**列表 + * @throws Exception + */ + @RequestMapping(value="/homePageData") + @ResponseBody + public Object homePageData() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = outsourcedService.homepagedata(pd); //列出PersonnelManagement列表 + 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 = personnelmanagementService.findByOutsourced(pd); //根据ID读取 +// map.put("pd", pd); +// map.put("result", errInfo); +// return map; +// } +} diff --git a/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectCheckController.java b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectCheckController.java new file mode 100644 index 0000000..f694b37 --- /dev/null +++ b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectCheckController.java @@ -0,0 +1,656 @@ +package com.zcloud.controller.keyProjects.app; + +import java.io.File; +import java.util.*; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zcloud.service.keyProjects.*; +import com.zcloud.service.relatedparty.OutSourcedService; +import com.zcloud.service.specialoperation.PersonnelManagementService; +import com.zcloud.service.system.ImgFilesService; +import com.zcloud.service.system.UsersService; +import com.zcloud.util.*; +import org.apache.commons.io.FileUtils; +import org.apache.commons.lang.ObjectUtils; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Controller; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import com.zcloud.controller.base.BaseController; +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import org.springframework.web.multipart.MultipartFile; + +/** + * 说明:重点工程检查 + * 作者:luoxiaobao + * 时间:2022-09-19 + * 官网:www.zcloudchina.com + */ +@Controller +@RequestMapping("/app/keyprojectcheck") +public class AppKeyprojectCheckController extends BaseController { + + @Autowired + private KeyprojectCheckService keyprojectcheckService; + @Autowired + private KeyprojectCheckInfoService keyprojectcheckInfoService; + @Autowired + private KeyprojectHiddenService keyprojectHiddenService; + @Autowired + private ImgFilesService imgFilesService; + @Autowired + private KeyprojectPunishService keyprojectPunishService; + + @Autowired + private OutSourcedService outsourcedService; + + @Autowired + private PersonnelManagementService personnelmanagementService; + + @Autowired + private UsersService usersService; + + @Autowired + private KeyprojectPunishService keyprojectpunishService; + + @Autowired Smb smb; + + + /** + * 新增 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = this.getPageData(); + pd.put("KEYPROJECTCHECK_ID", this.get32UUID()); //主键 + pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("ISDELETE", 0); //是否删除 + pd.put("SOURCE", 1); //企业ID + pd.put("CORPINFO_ID", 1); //检查人的企业id 监管端的企业id就是1 + keyprojectcheckService.save(pd); + + String currentTime = DateUtil.date2Str(new Date()); + List SITUATIONJSONDATA = new ArrayList<>(); //发送其他项目用 + if (Tools.notEmpty(pd.getString("SITUATIONJSON"))) { + List list = (List) JSON.parse(pd.getString("SITUATIONJSON")); + String time = currentTime; + for (JSONObject json : list) { + PageData situationPd = new PageData(); + situationPd.put("KEYPROJECTCHECKINFO_ID", UuidUtil.get32UUID()); //主键 + situationPd.put("KEYPROJECTCHECK_ID", pd.getString("KEYPROJECTCHECK_ID")); //检查ID + situationPd.put("SITUATION", json.get("SITUATION")); //检查情况 + situationPd.put("ISDELETE", "0"); //是否删除(0:有效 1:删除) + situationPd.put("CREATOR", pd.getString("CREATOR")); //添加人 + situationPd.put("CREATTIME", time); //添加时间 + situationPd.put("OPERATOR", pd.getString("OPERATOR")); //修改人 + situationPd.put("OPERATTIME", time); //修改时间 + keyprojectcheckInfoService.save(situationPd); + SITUATIONJSONDATA.add(situationPd); + time = DateUtil.calculateDateSecond(time, 1); + } + } + Boolean boo = false; // 增加开关控制 + List HIDDENJSONDATA = new ArrayList<>(); //发送其他项目用 + if (Tools.notEmpty(pd.getString("HIDDENJSON"))) { + boo = true; + List hiddenList = new ArrayList(); + List list = (List) JSON.parse(pd.getString("HIDDENJSON")); + String time = currentTime; + for (JSONObject json : list) { + PageData hidden = new PageData(); + hidden.put("HIDDEN_ID", UuidUtil.get32UUID()); //主键 + hidden.put("FOREIGN_ID", pd.getString("KEYPROJECTCHECK_ID")); //外键ID + hidden.put("HIDDENDESCR", json.getString("HIDDENDESCR")); //隐患描述 + hidden.put("HIDDENPART", json.getString("HIDDENPART")); //隐患部位 + hidden.put("HIDDENLEVEL", json.getString("HIDDENLEVEL")); //隐患级别 + hidden.put("HIDDENTYPE", json.getString("HIDDENTYPE")); //隐患类型1 + hidden.put("HIDDENTYPE2", json.getString("HIDDENTYPE2")); //隐患类型2 + hidden.put("LONGITUDE", json.getString("LONGITUDE")); //隐患位置经度 + hidden.put("LATITUDE", json.getString("LATITUDE")); //隐患位置纬度 + hidden.put("DISCOVERYTIME", json.getString("DISCOVERYTIME")); //隐患发现时间 + hidden.put("HIDDENFINDDEPT", json.getString("HIDDENFINDDEPT")); //隐患发现部门(隐患责任人部门) + hidden.put("RECTIFICATIONTYPE", json.getString("RECTIFICATIONTYPE")); //隐患处置 + hidden.put("RECTIFICATIONDEADLINE", json.getString("RECTIFICATIONDEADLINE")); //整改期限 + hidden.put("RECTIFYDESCR", json.getString("RECTIFYDESCR")); //整改描述 + hidden.put("RECTIFICATIONDEPT", json.getString("RECTIFICATIONDEPT")); //整改部门 + hidden.put("RECTIFICATIONOR", json.getString("RECTIFICATIONOR")); //整改人 + hidden.put("CREATOR", pd.getString("CREATOR")); //发现人(隐患责任人) + hidden.put("SOURCE", json.getString("SOURCE")); //隐患来源 + hidden.put("STATE", "1"); //隐患状态 100-安全环保检查暂存的隐患(流程完转0) + hidden.put("CREATTIME", time); //发现时间 + hidden.put("CORPINFO_ID", pd.getString("CORPINFO_ID")); //企业ID + hidden.put("ISDELETE", "0"); //是否删除(0:有效 1:删除) + hidden.put("POSITIONDESC", json.getString("POSITIONDESC"));// 隐患位置描述 + keyprojectHiddenService.save(hidden); + hiddenList.add(hidden); + HIDDENJSONDATA.add(hidden); + time = DateUtil.calculateDateSecond(time, 1); + } + pd.put("hiddenList", hiddenList); + } + try { + //这里发送短信 通知 先判断重点工程是否要求发短信, 不发直接过,发的话 找到对应人以及对应手机号 发送对应模板短信啊 + PageData outSource = new PageData(); + outSource.put("OUTSOURCED_ID", pd.getString("OUTSOURCED_ID")); + outSource = outsourcedService.findById(outSource); + if (StringUtils.isNotBlank(outSource.getString("IS_SMS")) && StringUtils.equals("0", outSource.getString("IS_SMS"))) { + //发送短信 pd中 PERSONNELMANAGEMENT_ID 对应 `qa-gwj-regulatory`.`BUS_PERSONNELMANAGEMENT` 表中 PERSONNELMANAGEMENT_ID 获取到 PHONENUM 手机号字段 发送短信 + PageData person = new PageData(); + person.put("PERSONNELMANAGEMENT_ID", pd.getString("PERSONNELMANAGEMENT_ID")); + person = personnelmanagementService.findById(person); + // outSource.get("OUTSOURCED_NAME") + JSONArray jsonArray = new JSONArray(); + //接受返回结果 + JSONObject records = new JSONObject(); + //定义替换参数 + JSONObject tpContent = new JSONObject(); + tpContent.put("OUTSOURCEDNAME", outSource.getString("OUTSOURCED_NAME")); + records = SendSmsUtil.getRecords(person.getString("PHONENUM"), tpContent); + jsonArray.add(records); + SendSmsUtil.sendSms("121451", jsonArray, null); + //发送罚款待处理 上文开关控制这里发送不 + if (boo) { + List jsonList = (List) JSON.parse(pd.getString("HIDDENJSON")); + String PUNISHTHEPERSON = keyprojectHiddenService.getPUNISHTHEPERSON(pd); + if (!Tools.isEmpty(PUNISHTHEPERSON)) { + PageData selectPageData = new PageData(); + String[] split = PUNISHTHEPERSON.split(","); + selectPageData.put("ids", split); + List list = keyprojectHiddenService.getPhone(selectPageData); + for (JSONObject json : jsonList) { + for (String phone : list) { + JSONArray jsonBrray = new JSONArray(); + //接受返回结果 + JSONObject recordsB = new JSONObject(); + //定义替换参数 + JSONObject tpContentB = new JSONObject(); + tpContentB.put("HIDDENDESCR", json.getString("HIDDENDESCR")); //隐患描述 + if (StringUtils.isNotBlank(phone)) { + recordsB = SendSmsUtil.getRecords(phone, tpContentB); + jsonBrray.add(recordsB); + SendSmsUtil.sendSms("121487", jsonBrray, null); + } + } + } + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + //获取当前重点工程的所属企业 根据重点工程创建人获取 + PageData dataDock = new PageData(); + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pd); + pd.put("operatingCorpId", corpInfoId); + dataDock.putAll(pd); + if (SITUATIONJSONDATA.size() > 0) { + dataDock.put("SITUATIONJSONDATA", SITUATIONJSONDATA); + } + if (HIDDENJSONDATA.size() > 0) { + dataDock.put("HIDDENJSONDATA", HIDDENJSONDATA); + } + map.put("dockData", JSON.toJSONString(dataDock)); + map.put("pd", pd); + map.put("result", errInfo); + } + //map.put("pd", pd); + //map.put("result", errInfo); + return map; + } + + /** + * 删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/delete") + @ResponseBody + public Object delete() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + keyprojectcheckService.delete(pd); + map.put("result", errInfo); //返回结果 + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pd); + pd.put("operatingCorpId", corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + return map; + } + + /** + * 修改 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/edit") + @ResponseBody + public Object edit() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + keyprojectcheckService.edit(pd); + map.put("result", errInfo); + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pd); + pd.put("operatingCorpId", corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + return map; + } + + /** + * 确认 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/confirm") + @ResponseBody + public Object confirm(@RequestParam(value = "FFILE", required = false) MultipartFile PERSON_SIGN) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + ArrayList pictureList = new ArrayList<>(); + if (PERSON_SIGN != null) { +// MultipartFile file = BASE64DecodedMultipartFile.base64ToMultipart(pd.getString("PERSON_SIGN")); + String suffixName = PERSON_SIGN.getOriginalFilename().substring(PERSON_SIGN.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + map.put("result", "fail"); + map.put("exception", "上传文件格式不正确"); + return map; + } + String ffile = DateUtil.getDays(); + String fileName = this.get32UUID() + PERSON_SIGN.getOriginalFilename().substring(PERSON_SIGN.getOriginalFilename().lastIndexOf(".")); + pd.put("PERSON_SIGN_IMG", Const.FILEPATHFILE + ffile + "/" + fileName); + pd.put("PERSON_SIGN_TIME", DateUtil.date2Str(new Date())); + smb.sshSftp(PERSON_SIGN, fileName, Const.FILEPATHFILE + ffile); + pictureList.add(pd.getString("PERSON_SIGN_IMG") + + "@@" + + fileName); + } + keyprojectcheckService.confirm(pd); + try { + //这里发送短信 判断公司是否需要发送短信 然后判断是否有隐患 有则发送 没有不发送 + List smsList = keyprojectcheckService.getSmsList(pd); + if (!Tools.isEmpty(smsList)) { + for (PageData pageData : smsList) { + JSONArray jsonArray = new JSONArray(); + //接受返回结果 + JSONObject records = new JSONObject(); + //定义替换参数 + JSONObject tpContent = new JSONObject(); + tpContent.put("HIDDENDESCR", pageData.getString("HIDDENDESCR")); + records = SendSmsUtil.getRecords(pageData.getString("PHONENUM"), tpContent); + jsonArray.add(records); + SendSmsUtil.sendSms("121486", jsonArray, null); + } + + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + map.put("result", errInfo); + } + map.put("sendPicturesList", JSON.toJSONString(pictureList)); + PageData pageData = keyprojectcheckService.findById(pd); + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pageData); + pd.put("operatingCorpId", corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + 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 = keyprojectcheckService.list(page); //列出KeyprojectCheck列表 + map.put("varList", varList); + map.put("page", page); + 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 = keyprojectcheckService.findById(pd); //根据ID读取 + + List situationList = keyprojectcheckInfoService.listAll(pd); + + pd.put("FOREIGN_ID", pd.getString("KEYPROJECTCHECK_ID")); + pd.put("hiddenList", keyprojectHiddenService.listAllInspection(pd)); + pd.put("situationList", situationList); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /** + * 去隐患页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/listHidden") + @ResponseBody + public Object listHidden(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 = keyprojectHiddenService.list(page); //列出KeyprojectCheck列表 + map.put("varList", varList); + map.put("page", page); + map.put("result", errInfo); + return map; + } + + /** + * 去隐患页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/findHidden") + @ResponseBody + public Object findHidden() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = keyprojectHiddenService.findById(pd); //根据ID读取 + + PageData pd2 = new PageData(); + pd2.put("FOREIGN_KEY", pd.getString("HIDDEN_ID")); + pd2.put("TYPE", 3); //隐患报警图片 + pd.put("hiddenImgs", imgFilesService.listAll(pd2)); + if (imgFilesService.listAll(pd2).size() == 0) { + pd2.put("TYPE", 114); //AI隐患图片 + pd.put("hiddenImgs", imgFilesService.listAll(pd2)); + } + pd2.put("TYPE", 102); //隐患视频 + pd.put("hiddenVideos", imgFilesService.listAll(pd2)); + pd2.put("TYPE", 4); + pd.put("zgImgs", imgFilesService.listAll(pd2));//整改图片 + pd2.put("TYPE", 5); + pd.put("ysImgs", imgFilesService.listAll(pd2));//整改图片 + PageData findTicketData = new PageData(); + findTicketData.put("HIDDEN_ID", pd.getString("HIDDEN_ID")); + pd.put("punishForm", keyprojectpunishService.findById(findTicketData)); + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /** + * 整改 + * @param + * @throws Exception + */ + @RequestMapping(value = "/rectify") + @ResponseBody + @Transactional + public Object rectify(@RequestParam(value = "FFILE", required = false) MultipartFile[] files) throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("STATE", 2); + keyprojectHiddenService.editstate(pd); + + if (files != null && files.length > 0) { + for (int i = 0; i < files.length; i++) { + String suffixName = files[i].getOriginalFilename().substring(files[i].getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + map.put("result", "fail"); + map.put("exception", "上传文件格式不正确"); + return map; + } + } + for (int i = 0; i < files.length; i++) { + MultipartFile file = files[i]; + + String ffile = DateUtil.getDays(); +// String filePath = PathUtil.getProjectpath() + Const.FILEPATHFILE + ffile; //文件上传路径 +// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID()); //执行上传 + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + PageData img = new PageData(); + String id = this.get32UUID(); + img.put("IMGFILES_ID", id); + img.put("FILEPATH", Const.FILEPATHFILE + ffile + "/" + fileName); + img.put("TYPE", 4); + img.put("FOREIGN_KEY", pd.get("HIDDEN_ID")); + imgFilesService.save(img); + } + } + map.put("result", errInfo); + String corpInfoId = keyprojectHiddenService.getCorpInfoIdByHiddenId(pd); + pd.put("operatingCorpId", corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + return map; + } + + /** + * 验收 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/check") + @ResponseBody + @Transactional + public Object check() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("STATE", 4); + keyprojectHiddenService.editstate(pd); + //根据隐患获取重点工程所属企业 + String corpInfoId = keyprojectHiddenService.getCorpInfoIdByHiddenId(pd); + pd.put("operatingCorpId", corpInfoId); + map.put("dockData", JSON.toJSONString(pd)); + map.put("result", errInfo); + return map; + } + + + /** + * 批量删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/deleteAll") + @ResponseBody + public Object deleteAll() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String DATA_IDS = pd.getString("DATA_IDS"); + if (Tools.notEmpty(DATA_IDS)) { + String ArrayDATA_IDS[] = DATA_IDS.split(","); + keyprojectcheckService.deleteAll(ArrayDATA_IDS); + errInfo = "success"; + } else { + errInfo = "error"; + } + map.put("result", errInfo); //返回结果 + return map; + } + + /** + * 去隐患页面获取数据 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/keyProjectCount") + @ResponseBody + public Object keyProjectCount() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = keyprojectHiddenService.keyprojectcount(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /** + * 修改处罚状态 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/editHiddenIspunish") + @ResponseBody + @Transactional + public Object editHiddenIspunish() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + keyprojectHiddenService.editstate(pd); + map.put("result", errInfo); + map.put("dockData", JSON.toJSONString(pd)); + return map; + } + + + /** + * 整改 只处理图片 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/rectifyOnlyFile") + @ResponseBody + @Transactional + public Object rectifyOnlyFile(@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.length > 1) { + map.put("result", "fail"); + map.put("exception", "一次性上传图片过多!"); + return map; + } + if (files != null) { + 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)) { + map.put("result", "fail"); + map.put("exception", "上传文件格式不正确"); + return map; + } + String ffile = DateUtil.getDays(); +// String filePath = PathUtil.getProjectpath() + Const.FILEPATHFILE + ffile; //文件上传路径 +// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID()); //执行上传 + String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + PageData img = new PageData(); + String IMGFILES_ID = this.get32UUID(); + img.put("IMGFILES_ID", IMGFILES_ID); + img.put("FILEPATH", Const.FILEPATHFILE + ffile + "/" + fileName); + img.put("TYPE", 4); + img.put("FOREIGN_KEY", pd.get("HIDDEN_ID")); + smb.sshSftp(file, fileName, Const.FILEPATHFILE + ffile); + imgFilesService.save(img); + } + map.put("result", errInfo); + return map; + } + + /** + * 整改 只处理表单 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/rectifyOnlyForm") + @ResponseBody + @Transactional + public Object rectifyOnlyForm() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("STATE", 2); + keyprojectHiddenService.editstate(pd); + try { + //发送 隐患待验收模板 短信 + //这里发送短信 判断公司是否需要发送短信 然后判断是否有隐患 有则发送 没有不发送 + String HIDDENDESCR = ""; + List smsList = keyprojectHiddenService.getSmsList(pd); + if (!Tools.isEmpty(smsList)) { + for (PageData pageData : smsList) { + JSONArray jsonArray = new JSONArray(); + //接受返回结果 + JSONObject records = new JSONObject(); + //定义替换参数 + JSONObject tpContent = new JSONObject(); + tpContent.put("HIDDENDESCR", pageData.getString("HIDDENDESCR")); + HIDDENDESCR = pageData.getString("HIDDENDESCR"); + records = SendSmsUtil.getRecords(pageData.getString("PHONE"), tpContent); + jsonArray.add(records); + SendSmsUtil.sendSms("121488", jsonArray, null); + } + + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + map.put("result", errInfo); + } + map.put("result", errInfo); + pd.put("operatingCorpId", keyprojectHiddenService.getCorpInfoIdByHiddenId(pd)); + map.put("dockData", JSON.toJSONString(pd)); + return map; + } +} diff --git a/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectPunishController.java b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectPunishController.java new file mode 100644 index 0000000..d9cdfcf --- /dev/null +++ b/src/main/java/com/zcloud/controller/keyProjects/app/AppKeyprojectPunishController.java @@ -0,0 +1,277 @@ +package com.zcloud.controller.keyProjects.app; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zcloud.controller.base.BaseController; +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; +import com.zcloud.service.keyProjects.KeyprojectCheckService; +import com.zcloud.service.keyProjects.KeyprojectHiddenService; +import com.zcloud.service.keyProjects.KeyprojectPunishService; +import com.zcloud.service.relatedparty.OutSourcedService; +import com.zcloud.service.specialoperation.PersonnelManagementService; +import com.zcloud.service.system.ImgFilesService; +import com.zcloud.util.*; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.multipart.MultipartFile; + +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 说明:重点工程处罚 + * 作者:luoxiaobao + * 时间:2022-09-21 + * 官网:www.zcloudchina.com + */ +@Controller +@RequestMapping("/app/keyprojectpunish") +public class AppKeyprojectPunishController extends BaseController { + + @Autowired + private KeyprojectPunishService keyprojectpunishService; + @Autowired + private KeyprojectHiddenService keyprojectHiddenService; + @Autowired + private ImgFilesService imgFilesService; + + @Autowired + private Smb smb; + + + @Autowired + private OutSourcedService outsourcedService; + + @Autowired + private KeyprojectCheckService keyprojectcheckService; + + @Autowired + private PersonnelManagementService personnelmanagementService; + + /**处理 + * @param + * @throws Exception + */ + @RequestMapping(value="/handle") + @ResponseBody + @Transactional + public Object handle(@RequestParam(value="FFILE",required=false) MultipartFile[] files) throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("HANDLED", 1); + + if (files != null && files.length > 0) { + for (int i = 0; i < files.length; i++) { + String suffixName = files[i].getOriginalFilename().substring(files[i].getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + map.put("result", "fail"); + map.put("exception", "上传文件格式不正确"); + return map; + } + } + for (int i = 0; i < files.length; i++) { + MultipartFile file = files[i]; + + String ffile = DateUtil.getDays(); +// String filePath = PathUtil.getProjectpath() + Const.FILEPATHFILE + ffile; //文件上传路径 +// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID()); //执行上传 + String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); + smb.sshSftp(file, fileName, Const.FILEPATHFILE + ffile); + pd.put("HANDLE_IMG", Const.FILEPATHFILE + ffile + "/" + fileName); + } + } + keyprojectpunishService.editstate(pd); + map.put("result", errInfo); + return map; + } + + /** + * 新增 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/add") + @ResponseBody + public Object add() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + PageData hidden = keyprojectHiddenService.findById(pd); + pd.put("KEYPROJECTPUNISH_ID", this.get32UUID()); //主键 + pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("ISDELETE", 0); //是否删除 + pd.put("HANDLED", 0); + pd.put("HIDDEN_ID", hidden.get("HIDDEN_ID")); + pd.put("KEYPROJECTCHECK_ID", hidden.get("FOREIGN_ID")); + pd.put("UNITS_ID", hidden.get("RECTIFICATIONDEPT")); + pd.put("PERSONNELMANAGEMENT_ID", hidden.get("RECTIFICATIONOR")); + keyprojectpunishService.save(pd); + //因发送其他项目需要 提出来 + PageData keyprote = new PageData(); + keyprote.put("KEYPROJECTCHECK_ID", pd.getString("KEYPROJECTCHECK_ID")); + keyprote = keyprojectcheckService.findById(keyprote); + //发送处罚短信通知 + try { + //这里发送短信 判断公司是否需要发送短信 然后判断是否有隐患 有则发送 没有不发送 + PageData outSource = new PageData(); + outSource.put("OUTSOURCED_ID", keyprote.getString("OUTSOURCED_ID")); + outSource = outsourcedService.findById(outSource); + if (StringUtils.isNotBlank(outSource.getString("IS_SMS")) && StringUtils.equals("0", outSource.getString("IS_SMS"))) { + //发送短信 pd中 PERSONNELMANAGEMENT_ID 对应 `qa-gwj-regulatory`.`BUS_PERSONNELMANAGEMENT` 表中 PERSONNELMANAGEMENT_ID 获取到 PHONENUM 手机号字段 发送短信 + PageData person = new PageData(); + person.put("PERSONNELMANAGEMENT_ID", pd.getString("PERSONNELMANAGEMENT_ID")); + person = personnelmanagementService.findById(person); + // outSource.get("OUTSOURCED_NAME") + JSONArray jsonArray = new JSONArray(); + //接受返回结果 + JSONObject records = new JSONObject(); + //定义替换参数 + JSONObject tpContent = new JSONObject(); + tpContent.put("REASON", pd.getString("REASON")); + records = SendSmsUtil.getRecords(person.getString("PHONENUM"), tpContent); + jsonArray.add(records); + SendSmsUtil.sendSms("121490", jsonArray, null); + } + } catch (Exception e) { + e.printStackTrace(); + } finally { + //获取当前重点工程的所属企业 根据重点工程创建人获取 + PageData dataDock = new PageData(); + String corpInfoId = outsourcedService.getCorpInfoByOutsourcesCreator(pd); + pd.put("operatingCorpId", corpInfoId); + dataDock.putAll(pd); + map.put("dockData", JSON.toJSONString(dataDock)); + map.put("result", errInfo); + } + return map; + } + + /**删除 + * @param + * @throws Exception + */ + @RequestMapping(value="/delete") + @ResponseBody + public Object delete() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + keyprojectpunishService.delete(pd); + map.put("result", errInfo); //返回结果 + return map; + } + + /**修改 + * @param + * @throws Exception + */ + @RequestMapping(value="/edit") + @ResponseBody + public Object edit() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + keyprojectpunishService.edit(pd); + 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 = keyprojectpunishService.list(page); //列出KeyprojectPunish列表 + map.put("varList", varList); + map.put("page", page); + 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 = keyprojectpunishService.findById(pd); //根据ID读取 + map.put("pd", pd); + map.put("result", errInfo); + return map; + } + + /**批量删除 + * @param + * @throws Exception + */ + @RequestMapping(value="/deleteAll") + @ResponseBody + public Object deleteAll() throws Exception{ + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + String DATA_IDS = pd.getString("DATA_IDS"); + if(Tools.notEmpty(DATA_IDS)){ + String ArrayDATA_IDS[] = DATA_IDS.split(","); + keyprojectpunishService.deleteAll(ArrayDATA_IDS); + errInfo = "success"; + }else{ + errInfo = "error"; + } + map.put("result", errInfo); //返回结果 + return map; + } + + +// /**重点工程处罚列表 包含 未选择处罚结果的隐患 已下发处罚但为反馈的隐患 不处罚的隐患 +// * @param page +// * @throws Exception +// */ +// @RequestMapping(value="/punishlist") +// @ResponseBody +// public Object punishlist(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 = keyprojectpunishService.getpunishlist(page); //列出KeyprojectCheck列表 +// map.put("varList", varList); +// map.put("page", page); +// map.put("result", errInfo); +// return map; +// } +} diff --git a/src/main/java/com/zcloud/controller/relatedparty/OutSourcedController.java b/src/main/java/com/zcloud/controller/relatedparty/OutSourcedController.java index ffef42b..b29d3e3 100644 --- a/src/main/java/com/zcloud/controller/relatedparty/OutSourcedController.java +++ b/src/main/java/com/zcloud/controller/relatedparty/OutSourcedController.java @@ -5,7 +5,13 @@ import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.logs.LogAnno; import com.zcloud.service.relatedparty.OutSourcedService; +import com.zcloud.service.system.DepartmentService; +import com.zcloud.service.system.ImgFilesService; +import com.zcloud.service.system.UsersService; +import com.zcloud.service.video.AIWarningService; +import com.zcloud.service.video.VideoManagerService; import com.zcloud.util.*; +import org.apache.commons.lang.StringUtils; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; @@ -31,6 +37,100 @@ public class OutSourcedController extends BaseController { private OutSourcedService outsourcedService; @Autowired private Smb smb; + @Autowired + private AIWarningService aiWarningService; + + @Autowired + private DepartmentService departmentService; + @Autowired + private UsersService usersService; + @Autowired + private ImgFilesService imgfilesService; + + @Autowired + private VideoManagerService videoManagerService; + + @RequestMapping(value = "/start") + @ResponseBody + public Object start() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + pd = outsourcedService.findById(pd); + if (!StringUtils.isNotBlank(pd.getString("WORK_LONGITUDE"))){ + map.put("result", errInfo); + map.put("message","工程未定位!"); + map.put("code","500"); + return map; + } + outsourcedService.start(pd); + map.put("code","0"); + map.put("result", errInfo); //返回结果 + return map; + } + + + /** + * 删除 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/jie") + @ResponseBody + public Object jie() throws Exception { + Map map = new HashMap(); + String errInfo = "success"; + PageData pd = new PageData(); + pd = this.getPageData(); + //校验当前重点工程是否存在未完成的隐患 (包含未整改,未处罚,ai报警未处置的) + PageData pageData = outsourcedService.jieshuOutSourced(pd); + if(!StringUtils.equals("0",pageData.getString("qr"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("qr")+"项待确认安全环保检查,请处理以后再结束"); + map.put("code","500"); + return map; + } + if(!StringUtils.equals("0",pageData.getString("zg"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("zg")+"项需整改的隐患,请处理以后再结束"); + map.put("code","500"); + return map; + } + if(!StringUtils.equals("0",pageData.getString("ys"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("ys")+"项待验收隐患,请处理以后再结束"); + map.put("code","500"); + return map; + } + if(!StringUtils.equals("0",pageData.getString("cf"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("cf")+"项待处罚隐患,请处理以后再结束"); + map.put("code","500"); + return map; + } + if(!StringUtils.equals("0",pageData.getString("fk"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("fk")+"项处罚待反馈隐患,请处理以后再结束"); + map.put("code","500"); + return map; + } + if(!StringUtils.equals("0",pageData.getString("ai"))){ + map.put("result", errInfo); + map.put("message","当前重点工程还有"+pageData.getString("ai")+"项AI报警待处置,请处理以后再结束"); + map.put("code","500"); + return map; + } + pd = outsourcedService.findById(pd); + outsourcedService.jie(pd); + //清空摄像头与重点工程的关联关系 + videoManagerService.updateAiByOUTSOURCED_ID(pd); + map.put("code","0"); + map.put("result", errInfo); //返回结果 + return map; + } + /**新增 * @param * @throws Exception @@ -128,7 +228,7 @@ public class OutSourcedController extends BaseController { } /**删除 - * @param out + * @param * @throws Exception */ @RequestMapping(value="/delete") @@ -161,7 +261,8 @@ public class OutSourcedController extends BaseController { @RequestParam(value="file5",required=false) MultipartFile file5, @RequestParam(value="file6",required=false) MultipartFile file6, @RequestParam(value="file7",required=false) MultipartFile file7, - @RequestParam(value="file8",required=false) MultipartFile file8 ) throws Exception{ + @RequestParam(value="file8",required=false) MultipartFile file8, + @RequestParam(value= "file9", required = false) MultipartFile[] file9) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); @@ -229,6 +330,36 @@ public class OutSourcedController extends BaseController { pd.put("OATTACHMENTS", file8.getOriginalFilename()); pd.put("OATTACHMENTSPATH", Const.FILEPATHFXGFGL + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName); } + + if (null != file9 && file9.length > 0) { + //校验 + for (int i = 0; i < file9.length; i++) { + MultipartFile file9One = file9[i]; + String suffixName = file9One.getOriginalFilename().substring(file9One.getOriginalFilename().lastIndexOf(".") + 1).toLowerCase(); + if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { + map.put("result", "fail"); + map.put("exception", "上传文件格式不正确"); + return map; + } + } + for (int i = 0; i < file9.length; i++) { + MultipartFile file9One = file9[i]; + String ffile = DateUtil.getDays(); + String fileName = this.get32UUID() + file9One.getOriginalFilename(). + substring(file9One.getOriginalFilename().lastIndexOf(".")); + smb.sshSftp(file9One, fileName, Const.FILEPATHYHTP + Jurisdiction.getCORPINFO_ID() + "/" + ffile); + PageData pdImg = new PageData(); + String fileUpdateName = file9One.getOriginalFilename(); + pdImg.put("IMGFILES_ID", this.get32UUID()); + pdImg.put("FILE_NAME", fileUpdateName); + pdImg.put("FILEPATH", Const.FILEPATHYHTP + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName); + pdImg.put("TYPE", "300"); + pdImg.put("FOREIGN_KEY", pd.getString("OUTSOURCED_ID")); + imgfilesService.save(pdImg); + } + + } + outsourcedService.edit(pd); map.put("result", errInfo); return map; @@ -272,7 +403,26 @@ public class OutSourcedController extends BaseController { PageData pd = new PageData(); pd = this.getPageData(); pd = outsourcedService.findById(pd); //根据ID读取 + PageData selectPageData = new PageData(); + selectPageData.put("CORPINFO_ID", pd.get("PUNISH_THE_PERSON")); + List deptList = departmentService.listAll(selectPageData); //根据ID读取 + String userStr = pd.getString("PUNISH_THE_PERSON"); + if (!Tools.isEmpty(userStr)) { + String[] split = userStr.split(","); + selectPageData.put("ids", split); +// List pageData = usersService.listUserAndDept(selectPageData); + // 监管与企业的 + List pageData = usersService.selectUserListByUserIds(selectPageData); + map.put("punishThePerson", pageData); + } + PageData pd3 = new PageData(); + pd3.put("TYPE", 300); + pd3.put("FOREIGN_KEY", pd.getString("OUTSOURCED_ID")); + List file9 = imgfilesService.listAll(pd3); + map.put("pd", pd); + map.put("deptList", deptList); + map.put("file9", file9); map.put("result", errInfo); return map; } diff --git a/src/main/java/com/zcloud/controller/specialoperation/PersonnelManagementController.java b/src/main/java/com/zcloud/controller/specialoperation/PersonnelManagementController.java index 25e7255..3c835df 100644 --- a/src/main/java/com/zcloud/controller/specialoperation/PersonnelManagementController.java +++ b/src/main/java/com/zcloud/controller/specialoperation/PersonnelManagementController.java @@ -49,6 +49,7 @@ public class PersonnelManagementController extends BaseController { pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 pd.put("ISDELETE", "0"); //是否删除 pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID + pd.put("PASSWORD", new SimpleHash("SHA-1", pd.getString("PHONENUM"), Const.DEFAULT_PASSWORD).toString()); personnelmanagementService.save(pd); map.put("result", errInfo); return map; diff --git a/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectCheckMapper.java b/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectCheckMapper.java index 0b2f8e9..381de5e 100644 --- a/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectCheckMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectCheckMapper.java @@ -55,5 +55,12 @@ public interface KeyprojectCheckMapper { */ void deleteAll(String[] ArrayDATA_IDS); + void confirm(PageData pd); + + /** 需要发送短信的列表(隐患待整改模板) + * @param pd + * @throws Exception + */ + List getSmsList(PageData pd); } diff --git a/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectHiddenMapper.java b/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectHiddenMapper.java index 9fa7b3b..8fd9cb7 100644 --- a/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectHiddenMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/keyProjects/KeyprojectHiddenMapper.java @@ -89,29 +89,6 @@ public interface KeyprojectHiddenMapper { */ List listExcelHidden(PageData pd); - /**一般隐患 - * @param page - * @throws Exception - */ - List generalHiddenlistPage(Page page); - - /**忽略隐患 - * @param page - * @throws Exception - */ - List ignoreHiddenlistPage(Page page); - - /**重大隐患 - * @param page - * @throws Exception - */ - List majorhiddenlistPage(Page page); - - /**通过部门ID查询特殊隐患列表 - * @param page - * @throws Exception - */ - List specialByIdlistPage(Page page); void editstate(PageData pd); @@ -158,5 +135,31 @@ public interface KeyprojectHiddenMapper { */ List getpunishlistPage(Page page); + /** 需要发送短信的列表(隐患待验收模板) + * @param pd + * @throws Exception + */ + List getSmsList(PageData pd); + + /** + * 获取当前隐患的处罚人 + * @param pd + * @return + */ + String getPUNISHTHEPERSON(PageData pd); + + + List getPhone(PageData pd); + + List hiddenlistPage(Page page); + + /** + * 根据隐患获取隐患所在重点工程的所属项目 + * @param pd + * @return + */ + String getCorpInfoIdByHiddenId(PageData pd); + + List specialByIdlistPage(Page page); } diff --git a/src/main/java/com/zcloud/mapper/datasource/keyProjects/PlatformvideomanagementMapper.java b/src/main/java/com/zcloud/mapper/datasource/keyProjects/PlatformvideomanagementMapper.java new file mode 100644 index 0000000..02168e9 --- /dev/null +++ b/src/main/java/com/zcloud/mapper/datasource/keyProjects/PlatformvideomanagementMapper.java @@ -0,0 +1,59 @@ +package com.zcloud.mapper.datasource.keyProjects; + +import com.zcloud.entity.Page; +import com.zcloud.entity.PageData; + +import java.util.List; + +/** + * 说明:平台视频管理 + * 作者:luoxiaobao + * 时间:2023-07-21 + * 官网:www.zcloudchina.com + */ +public interface PlatformvideomanagementMapper { + + /**新增 + * @param pd + * @throws Exception + */ + void save(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void delete(PageData pd); + + /**修改 + * @param pd + * @throws Exception + */ + void edit(PageData pd); + + /**列表 + * @param page + * @throws Exception + */ + List datalistPage(Page page); + + /**列表(全部) + * @param pd + * @throws Exception + */ + List listAll(PageData pd); + + /**通过id获取数据 + * @param pd + * @throws Exception + */ + PageData findById(PageData pd); + + /**批量删除 + * @param ArrayDATA_IDS + * @throws Exception + */ + void deleteAll(String[] ArrayDATA_IDS); + +} + diff --git a/src/main/java/com/zcloud/mapper/datasource/relatedparty/OutSourcedMapper.java b/src/main/java/com/zcloud/mapper/datasource/relatedparty/OutSourcedMapper.java index 4002b13..2f4dabc 100644 --- a/src/main/java/com/zcloud/mapper/datasource/relatedparty/OutSourcedMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/relatedparty/OutSourcedMapper.java @@ -55,5 +55,34 @@ public interface OutSourcedMapper{ */ void deleteAll(String[] ArrayDATA_IDS); + /**通过登录人id获取首页数据 + * @param pd + * @throws Exception + */ + PageData homepagedata(PageData pd); + + String getDeptId(String userId); + + String getCorpInfoByOutsourcesCreator(PageData pd); + + /** + * 重点工程APP工程管理列表页 只查看未开工 和进行中的 + * @param page + * @return + */ + List applylistPage(Page page); + + void editDingWei(PageData pd); + + //校验结束重点工程是否有为完成的内容 + PageData jieshuOutSourced(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + void jie(PageData pd); + + void start(PageData pd); } diff --git a/src/main/java/com/zcloud/mapper/datasource/specialoperation/PersonnelManagementMapper.java b/src/main/java/com/zcloud/mapper/datasource/specialoperation/PersonnelManagementMapper.java index 5d1d664..cf7e812 100644 --- a/src/main/java/com/zcloud/mapper/datasource/specialoperation/PersonnelManagementMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/specialoperation/PersonnelManagementMapper.java @@ -64,5 +64,7 @@ public interface PersonnelManagementMapper{ PageData findByCertificate(PageData pd); void editPassword(PageData pd); + + PageData findForLogin(PageData pd); } diff --git a/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java b/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java index 0e009e1..2e9ac35 100644 --- a/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java @@ -256,5 +256,7 @@ public interface UsersMapper { List getUserCardNoAll(PageData departPd); + List selectUserListByUserIds(PageData pd); + PageData getUserByCardNo(PageData pageData); } diff --git a/src/main/java/com/zcloud/mapper/datasource/video/VideoManagerMapper.java b/src/main/java/com/zcloud/mapper/datasource/video/VideoManagerMapper.java index ec919b5..3db4826 100644 --- a/src/main/java/com/zcloud/mapper/datasource/video/VideoManagerMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/video/VideoManagerMapper.java @@ -67,6 +67,10 @@ public interface VideoManagerMapper { PageData findByCode(PageData videoPd); + List dataApplistPage(Page page); + + void updateAiByOUTSOURCED_ID(PageData pd); + List getCameraAlarmCount(PageData pageData); List getCameraAlarmTypeCount(PageData pageData); diff --git a/src/main/java/com/zcloud/service/keyProjects/KeyprojectCheckService.java b/src/main/java/com/zcloud/service/keyProjects/KeyprojectCheckService.java index f27baa8..5776b92 100644 --- a/src/main/java/com/zcloud/service/keyProjects/KeyprojectCheckService.java +++ b/src/main/java/com/zcloud/service/keyProjects/KeyprojectCheckService.java @@ -55,5 +55,13 @@ public interface KeyprojectCheckService{ */ public void deleteAll(String[] ArrayDATA_IDS)throws Exception; + public void confirm(PageData pd)throws Exception; + + /** 需要发送短信的列表(隐患待整改模板) + * @param pd + * @throws Exception + */ + List getSmsList(PageData pd); + } diff --git a/src/main/java/com/zcloud/service/keyProjects/KeyprojectHiddenService.java b/src/main/java/com/zcloud/service/keyProjects/KeyprojectHiddenService.java index 954c4e8..df33096 100644 --- a/src/main/java/com/zcloud/service/keyProjects/KeyprojectHiddenService.java +++ b/src/main/java/com/zcloud/service/keyProjects/KeyprojectHiddenService.java @@ -88,20 +88,20 @@ public interface KeyprojectHiddenService { */ public PageData yhpcCountForApp(PageData pd) throws Exception; - /** - * 清单其他隐患 - * @param pd - * @return - * @throws Exception - */ - public List getOtherHidden(PageData pd) throws Exception; + /** + * 清单其他隐患 + * @param pd + * @return + * @throws Exception + */ + public List getOtherHidden(PageData pd) throws Exception; - public List getListForApp(Page page) throws Exception; + public List getListForApp(Page page) throws Exception; public List mainStatistics(PageData pd) throws Exception; - public List mainStatisticsForApp(PageData pd) throws Exception; + public List mainStatisticsForApp(PageData pd) throws Exception; /**隐患导出EXCEL(企业隐患管理使用) * @param pd @@ -109,17 +109,6 @@ public interface KeyprojectHiddenService { */ public List listExcelHidden(PageData pd)throws Exception; - /**一般隐患查询列表 - * @param page - * @throws Exception - */ - public List generalHiddenlistPage(Page page)throws Exception; - - /**忽略隐患查询列表 - * @param page - * @throws Exception - */ - public List ignoreHiddenlistPage(Page page)throws Exception; /** * 重大隐患核实列表 -- 港务局 @@ -127,7 +116,7 @@ public interface KeyprojectHiddenService { * @return * @throws Exception */ - List verifylist(Page page) throws Exception; + List verifylist(Page page) throws Exception; /** * 获取安全环保检查下的隐患列表 @@ -149,7 +138,7 @@ public interface KeyprojectHiddenService { * @return * @throws Exception */ - List checkandaccept(Page page) throws Exception; + List checkandaccept(Page page) throws Exception; /**列表 * @param page @@ -169,7 +158,8 @@ public interface KeyprojectHiddenService { void changeState(PageData hidden) throws Exception; - void deleteByKey(PageData key) throws Exception; + void deleteByKey(PageData key) throws Exception; + /** * 手机端统计重点工程待处理信息 @@ -179,6 +169,28 @@ public interface KeyprojectHiddenService { */ public PageData keyprojectcount(PageData pd)throws Exception; - List getpunishlist(Page page); + /** 需要发送短信的列表(隐患待验收模板) + * @param pd + * @throws Exception + */ + List getSmsList(PageData pd); + + /** + * 获取当前隐患的处罚人 + * @param pd + * @return + */ + String getPUNISHTHEPERSON(PageData pd); + + List getPhone(PageData pd); + + List hiddenList(Page page); + + /** + * 根据隐患获取隐患所在重点工程的所属项目 + * @param pd + * @return + */ + String getCorpInfoIdByHiddenId(PageData pd); } diff --git a/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectCheckServiceImpl.java b/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectCheckServiceImpl.java index 223eee6..b94d7a8 100644 --- a/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectCheckServiceImpl.java +++ b/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectCheckServiceImpl.java @@ -79,5 +79,14 @@ public class KeyprojectCheckServiceImpl implements KeyprojectCheckService { keyprojectcheckMapper.deleteAll(ArrayDATA_IDS); } + public void confirm(PageData pd)throws Exception{ + keyprojectcheckMapper.confirm(pd); + } + + @Override + public List getSmsList(PageData pd) { + return keyprojectcheckMapper.getSmsList(pd); + } + } diff --git a/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectHiddenServiceImpl.java b/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectHiddenServiceImpl.java index 6d10025..4d9d1c8 100644 --- a/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectHiddenServiceImpl.java +++ b/src/main/java/com/zcloud/service/keyProjects/impl/KeyprojectHiddenServiceImpl.java @@ -155,15 +155,6 @@ public class KeyprojectHiddenServiceImpl implements KeyprojectHiddenService { return hiddenMapper.listExcelHidden(pd); } - @Override - public List generalHiddenlistPage(Page page) throws Exception { - return hiddenMapper.generalHiddenlistPage(page); - } - - @Override - public List ignoreHiddenlistPage(Page page) throws Exception { - return hiddenMapper.ignoreHiddenlistPage(page); - } @Override public List verifylist(Page page) throws Exception { @@ -245,9 +236,33 @@ public class KeyprojectHiddenServiceImpl implements KeyprojectHiddenService { return hiddenMapper.keyprojectcount(pd); } - @Override public List getpunishlist(Page page) { return hiddenMapper.getpunishlistPage(page); } + + @Override + public List getSmsList(PageData pd) { + return hiddenMapper.getSmsList(pd); + } + + @Override + public String getPUNISHTHEPERSON(PageData pd) { + return hiddenMapper.getPUNISHTHEPERSON(pd); + } + + @Override + public List getPhone(PageData pd) { + return hiddenMapper.getPhone(pd); + } + + @Override + public List hiddenList(Page page) { + return hiddenMapper.hiddenlistPage(page); + } + + @Override + public String getCorpInfoIdByHiddenId(PageData pd) { + return hiddenMapper.getCorpInfoIdByHiddenId(pd); + } } diff --git a/src/main/java/com/zcloud/service/relatedparty/OutSourcedService.java b/src/main/java/com/zcloud/service/relatedparty/OutSourcedService.java index a1aefed..c57b674 100644 --- a/src/main/java/com/zcloud/service/relatedparty/OutSourcedService.java +++ b/src/main/java/com/zcloud/service/relatedparty/OutSourcedService.java @@ -5,7 +5,7 @@ import com.zcloud.entity.PageData; import java.util.List; -/** +/** * 说明:外包工程 * 作者:luoxiaobao * 时间:2022-06-14 @@ -18,42 +18,71 @@ public interface OutSourcedService{ * @throws Exception */ public void save(PageData pd)throws Exception; - + /**删除 * @param pd * @throws Exception */ public void delete(PageData pd)throws Exception; - + /**修改 * @param pd * @throws Exception */ public void edit(PageData pd)throws Exception; - + /**列表 * @param page * @throws Exception */ public List list(Page page)throws Exception; - + /**列表(全部) * @param pd * @throws Exception */ public List listAll(PageData pd)throws Exception; - + /**通过id获取数据 * @param pd * @throws Exception */ public PageData findById(PageData pd)throws Exception; - + /**批量删除 * @param ArrayDATA_IDS * @throws Exception */ public void deleteAll(String[] ArrayDATA_IDS)throws Exception; - + + /**通过登录人id获取首页数据 + * @param pd + * @throws Exception + */ + public PageData homepagedata(PageData pd)throws Exception; + + String getDeptId(String userId); + + String getCorpInfoByOutsourcesCreator(PageData pd); + + /** + * 重点工程APP 工程管理列表页 只查看未开工 和进行中的 + * @param page + * @return + */ + List applylist(Page page); + + void editDingWei(PageData pd)throws Exception; + + //校验结束重点工程是否有为完成的内容 + PageData jieshuOutSourced(PageData pd); + + /**删除 + * @param pd + * @throws Exception + */ + public void jie(PageData pd)throws Exception; + + void start(PageData pd); } diff --git a/src/main/java/com/zcloud/service/relatedparty/impl/OutSourcedServiceImpl.java b/src/main/java/com/zcloud/service/relatedparty/impl/OutSourcedServiceImpl.java index 223999c..ab65130 100644 --- a/src/main/java/com/zcloud/service/relatedparty/impl/OutSourcedServiceImpl.java +++ b/src/main/java/com/zcloud/service/relatedparty/impl/OutSourcedServiceImpl.java @@ -79,5 +79,54 @@ public class OutSourcedServiceImpl implements OutSourcedService{ outsourcedMapper.deleteAll(ArrayDATA_IDS); } + /**通过登录人id获取首页数据 + * @param pd + * @throws Exception + */ + public PageData homepagedata(PageData pd)throws Exception{ + return outsourcedMapper.homepagedata(pd); + } + + public String getDeptId(String userId) { + return outsourcedMapper.getDeptId(userId); + } + + @Override + public String getCorpInfoByOutsourcesCreator(PageData pd) { + return outsourcedMapper.getCorpInfoByOutsourcesCreator(pd); + } + + @Override + public List applylist(Page page) { + return outsourcedMapper.applylistPage(page); + } + + /**坐标定位 + * @param pd + * @throws Exception + */ + public void editDingWei(PageData pd)throws Exception{ + outsourcedMapper.editDingWei(pd); + } + + @Override + public PageData jieshuOutSourced(PageData pd) { + return outsourcedMapper.jieshuOutSourced(pd); + } + + /**删除 + * @param pd + * @throws Exception + */ + public void jie(PageData pd)throws Exception{ + outsourcedMapper.jie(pd); + } + + @Override + public void start(PageData pd) { + outsourcedMapper.start(pd); + } + + } diff --git a/src/main/java/com/zcloud/service/specialoperation/PersonnelManagementService.java b/src/main/java/com/zcloud/service/specialoperation/PersonnelManagementService.java index e425a1c..cc17929 100644 --- a/src/main/java/com/zcloud/service/specialoperation/PersonnelManagementService.java +++ b/src/main/java/com/zcloud/service/specialoperation/PersonnelManagementService.java @@ -65,5 +65,6 @@ public interface PersonnelManagementService{ void editPassword(PageData updateUser) throws Exception; + PageData findForLogin(PageData pd); } diff --git a/src/main/java/com/zcloud/service/specialoperation/impl/PersonnelManagementServiceImpl.java b/src/main/java/com/zcloud/service/specialoperation/impl/PersonnelManagementServiceImpl.java index 10eae8e..cac1592 100644 --- a/src/main/java/com/zcloud/service/specialoperation/impl/PersonnelManagementServiceImpl.java +++ b/src/main/java/com/zcloud/service/specialoperation/impl/PersonnelManagementServiceImpl.java @@ -101,5 +101,9 @@ public class PersonnelManagementServiceImpl implements PersonnelManagementServic personnelmanagementMapper.editPassword(pd); } + public PageData findForLogin(PageData pd){ + return personnelmanagementMapper.findForLogin(pd); + } + } diff --git a/src/main/java/com/zcloud/service/system/UsersService.java b/src/main/java/com/zcloud/service/system/UsersService.java index 7be1c69..4d09ed7 100644 --- a/src/main/java/com/zcloud/service/system/UsersService.java +++ b/src/main/java/com/zcloud/service/system/UsersService.java @@ -293,6 +293,8 @@ public interface UsersService { List getUserCardNoAll(PageData departPd); + List selectUserListByUserIds(PageData selectPageData); + /** * @Description: 根据id查卡号 * @Author: dearLin diff --git a/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java b/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java index fb7a54a..d55919e 100644 --- a/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java +++ b/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java @@ -613,4 +613,11 @@ public class UsersServiceImpl implements UsersService { return usersMapper.listUserlistPage(page); } + @Override + public List selectUserListByUserIds(PageData pd) { + return usersMapper.selectUserListByUserIds(pd); + } + + + } diff --git a/src/main/java/com/zcloud/service/video/VideoManagerService.java b/src/main/java/com/zcloud/service/video/VideoManagerService.java index 07e95ca..b321519 100644 --- a/src/main/java/com/zcloud/service/video/VideoManagerService.java +++ b/src/main/java/com/zcloud/service/video/VideoManagerService.java @@ -68,6 +68,10 @@ public interface VideoManagerService { PageData findByCode(PageData videoPd); + List listApp(Page page); + + void updateAiByOUTSOURCED_ID(PageData pd); + List getCameraAlarmCount(PageData pageData); List getCameraAlarmTypeCount(PageData pageData); diff --git a/src/main/java/com/zcloud/service/video/impl/VideoManagerServiceImpl.java b/src/main/java/com/zcloud/service/video/impl/VideoManagerServiceImpl.java index a833e48..a18813a 100644 --- a/src/main/java/com/zcloud/service/video/impl/VideoManagerServiceImpl.java +++ b/src/main/java/com/zcloud/service/video/impl/VideoManagerServiceImpl.java @@ -213,5 +213,15 @@ public class VideoManagerServiceImpl implements VideoManagerService { return collect; } + @Override + public List listApp(Page page) { + return videomanagerMapper.dataApplistPage(page); + } + + @Override + public void updateAiByOUTSOURCED_ID(PageData pd) { + videomanagerMapper.updateAiByOUTSOURCED_ID(pd); + } + } diff --git a/src/main/java/com/zcloud/util/SendSmsUtil.java b/src/main/java/com/zcloud/util/SendSmsUtil.java new file mode 100644 index 0000000..928fc5c --- /dev/null +++ b/src/main/java/com/zcloud/util/SendSmsUtil.java @@ -0,0 +1,116 @@ +package com.zcloud.util; + +import cn.hutool.http.HttpRequest; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import org.apache.commons.lang.ObjectUtils; +import org.apache.commons.lang.StringUtils; +import org.springframework.http.MediaType; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +import static org.bouncycastle.asn1.x500.style.RFC4519Style.cn; + +/** + * 重点工程发送短信工具类 + */ +public class SendSmsUtil { + + private static String USERNAME = "qhdzyhy"; + + private static String PASSWORD = "3ba40593f514f0c1ebdfc278dddfc9ce"; + + private static String SIGNATURE = "【秦港双控】"; + + private static String URL = "https://api.mix2.zthysms.com/v2/sendSmsTp"; + + + /** + * 发送短信 + * @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" + * } + * } + * ] + */ + 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); + 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("records",records); + System.out.println(json.toJSONString()); + String result = HttpRequest.post(URL) + .timeout(60000) + .body(json.toJSONString(), MediaType.APPLICATION_JSON_UTF8_VALUE).execute().body(); + System.out.println(result); + } + + + /** + * 封装要发送的电话以及要替换的内容 + * @param mobile 手机号 + * @param tpContent 替换内容 + * @return + * 格式实例 var1表示要替换的内容 与要替换的内容保持一致即可 变量1表示替换的内容 + * { + * "mobile":"138****0000", + * "tpContent":{ + * "var1":"变量1", + * "var2":"变量2" + * } + * } + */ + 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); + } + 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("HIDDENDESCR","测试发送111--222-1"); + records = getRecords("18617456701",tpContent); + jsonArray.add(records); + + //sendSms("121487",jsonArray,null); + } + +} diff --git a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectCheckMapper.xml b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectCheckMapper.xml index a4295d2..6dd0afd 100644 --- a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectCheckMapper.xml +++ b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectCheckMapper.xml @@ -172,7 +172,7 @@ and f.OUTSOURCED_ID = #{pd.OUTSOURCED_ID} - and f.PERSONNELMANAGEMENT_ID = #{PERSONNELMANAGEMENT_ID} + and f.PERSONNELMANAGEMENT_ID = #{pd.PERSONNELMANAGEMENT_ID} and @@ -205,4 +205,27 @@ + + + update + + set + INSPECTION_STATUS = 1, + PERSON_SIGN_IMG = #{PERSON_SIGN_IMG}, + PERSON_SIGN_TIME = #{PERSON_SIGN_TIME} + where + KEYPROJECTCHECK_ID = #{KEYPROJECTCHECK_ID} + + + + diff --git a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectHiddenMapper.xml b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectHiddenMapper.xml index 8e9f26d..65c5ace 100644 --- a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectHiddenMapper.xml +++ b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectHiddenMapper.xml @@ -316,9 +316,11 @@ ht.NAME HIDDENTYPE_NAME, ht2.NAME HIDDENTYPE2_NAME, crd.NAME HIDDENFINDDEPT_NAME, + cr.NAME CREATOR_NAME, u.UNITS_NAME as RECTIFICATIONDEPT_NAME, p.NAME as RECTIFICATIONOR_NAME, bo.OUTSOURCED_NAME, + bo.PUNISH_THE_PERSON, bod.OUTSOURCED_NAME AIOUTSOURCED_NAME, pu.KEYPROJECTPUNISH_ID from @@ -331,6 +333,7 @@ left join ht2 on f.HIDDENTYPE2 = ht2.BIANMA and ht2.PARENT_ID = '18c0a9aea6e54feab9f4ab3f46e0bc86' left join oa_department crd on crd.DEPARTMENT_ID = f.HIDDENFINDDEPT left join BUS_UNITS u on u.UNITS_ID = f.RECTIFICATIONDEPT + left join vi_user_all cr on cr.USER_ID = f.CREATOR left join BUS_OUTSOURCED o on o.UNITS_ID = u.UNITS_ID LEFT JOIN BUS_OUTSOURCED bod ON bod.OUTSOURCED_ID = f.FOREIGN_ID left join BUS_PERSONNELMANAGEMENT p on p.PERSONNELMANAGEMENT_ID = f.RECTIFICATIONOR @@ -363,6 +366,12 @@ and f.STATE > 1 + + and f.STATE = 2 + + and (f.CREATOR = #{pd.CREATOR} or bo.PUNISH_THE_PERSON like CONCAT(CONCAT('%', #{pd.CREATOR}),'%')) + + and f.STATE = 4 @@ -1597,4 +1606,84 @@ h.ISPUNISH ASC, p.HANDLED DESC + + + + + + + + + diff --git a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectPunishMapper.xml b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectPunishMapper.xml index 3356309..6b1d2fa 100644 --- a/src/main/resources/mybatis/datasource/keyProjects/KeyprojectPunishMapper.xml +++ b/src/main/resources/mybatis/datasource/keyProjects/KeyprojectPunishMapper.xml @@ -162,27 +162,29 @@ select , cre.NAME CREATOR_NAMES, - o.OUTSOURCED_ID, - o.OUTSOURCED_NAME, + bo.OUTSOURCED_ID, + bo.OUTSOURCED_NAME, u.UNITS_NAME, p.NAME AS PERSON_NAME from f left join sys_user cre on cre.USER_ID = f.CREATOR left join BUS_UNITS u on u.UNITS_ID = f.UNITS_ID - left join BUS_OUTSOURCED o on o.UNITS_ID = u.UNITS_ID + left join bus_keyproject_hidden h on f.HIDDEN_ID = h.HIDDEN_ID + LEFT JOIN BUS_KEYPROJECTCHECK ch ON ch.OUTSOURCED_ID = h.FOREIGN_ID or h.FOREIGN_ID = ch.KEYPROJECTCHECK_ID + LEFT JOIN BUS_OUTSOURCED bo ON bo.OUTSOURCED_ID = ch.OUTSOURCED_ID left join BUS_PERSONNELMANAGEMENT p on p.PERSONNELMANAGEMENT_ID = f.PERSONNELMANAGEMENT_ID where f.ISDELETE = '0' and ( - o.OUTSOURCED_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%') + bo.OUTSOURCED_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%') or u.UNITS_NAME LIKE CONCAT(CONCAT('%', #{pd.KEYWORDS}),'%') ) - and o.OUTSOURCED_ID = #{pd.OUTSOURCED_ID} + and bo.OUTSOURCED_ID = #{pd.OUTSOURCED_ID} and f.HANDLED = 0 diff --git a/src/main/resources/mybatis/datasource/relatedparty/OutSourcedMapper.xml b/src/main/resources/mybatis/datasource/relatedparty/OutSourcedMapper.xml index 5df4202..0344d48 100644 --- a/src/main/resources/mybatis/datasource/relatedparty/OutSourcedMapper.xml +++ b/src/main/resources/mybatis/datasource/relatedparty/OutSourcedMapper.xml @@ -59,11 +59,16 @@ f.RECORDSPATH, f.SHEETPATH, f.EXAMINATIONPATH, - f.OATTACHMENTSPATH + f.OATTACHMENTSPATH, + f.PUNISH_THE_PERSON + IS_SMS, + PUNISH_THE_PERSON, + INVOLVING_CORPS_DEPART_ID, + COMPETENT_DEPT_ID, DEPARTMENT_ID, CONTRACT_PIC, OUTSOURCED_NAME, @@ -114,6 +119,10 @@ + #{IS_SMS}, + #{PUNISH_THE_PERSON}, + #{INVOLVING_CORPS_DEPART_ID}, + #{COMPETENT_DEPT_ID}, #{DEPARTMENT_ID}, #{CONTRACT_PIC}, #{OUTSOURCED_NAME}, @@ -238,9 +247,25 @@ f.*, a.NAME as DEPARTMENT_NAME, b.UNITS_NAME as UNITS_NAME, + pcij.NAME Q_DEPARTMENT_NAME, + pci.NAME Q_COMPETENT_DEPT_NAME, + vua.NAME OUTSOURCED_CREATOR_NAME, + isdd.NAME MANAGER_DEPARTMENT_NAME, + ifnull(vac.CORP_NAME,'秦港股份有限公司') CORP_NAME, + ( SELECT GROUP_CONCAT( t.NAME ) FROM oa_department t WHERE FIND_IN_SET( t.DEPARTMENT_ID, f.DEPARTMENT_ID ) ) AS DEPARTMENT_NAME, + ( select count(1) from BUS_KEYPROJECTCHECK c where c.OUTSOURCED_ID = f.OUTSOURCED_ID) as CHECK_COUNT, + ( select GROUP_CONCAT(t.CORP_NAME) from BUS_CORP_INFO t where FIND_IN_SET(t.CORPINFO_ID, f.MANAGE_NAME)) as MANAGE_CORPS_NAME, + ( SELECT GROUP_CONCAT( t.NAME ) FROM oa_department t WHERE FIND_IN_SET( t.DEPARTMENT_ID, f.INVOLVING_CORPS_DEPART_ID ) ) AS INVOLVING_CORPS_DEPART_NAME, + (select GROUP_CONCAT(t.NAME) from ( SELECT CONCAT( CONCAT( c.CORP_NAME, '-' ), t.NAME ) NAME ,t.DEPARTMENT_ID FROM OA_DEPARTMENT t LEFT JOIN bus_corp_info c ON c.CORPINFO_ID = t.CORPINFO_ID) t where FIND_IN_SET(t.DEPARTMENT_ID, f.JURISDICTION_UNIT)) as JURISDICTION_UNIT_NAME, + (select NAME FROM bus_personnelmanagement p where p.PERSONNELMANAGEMENT_ID = f.UNITS_PIC) as UNITS_PIC_NAME, c.NAME as CONTRACT_NAME from f + LEFT JOIN vi_user_all vua on f.CREATOR = vua.USER_ID + LEFT JOIN vi_all_corp vac on vua.CORPINFO_ID = vac.CORPINFO_ID + LEFT JOIN oa_department pci ON pci.DEPARTMENT_ID = f.COMPETENT_DEPT_ID + LEFT JOIN oa_department isdd ON isdd.DEPARTMENT_ID = f.MANAGER_DEPARTMENT_ID + LEFT JOIN oa_department pcij ON pcij.DEPARTMENT_ID = f.DEPARTMENT_ID left join oa_department a on a.DEPARTMENT_ID = f.DEPARTMENT_ID left join bus_units b using (UNITS_ID) left join sys_user c on c.USER_ID= f.CONTRACT_PIC @@ -296,11 +321,28 @@ f.EXAMINATIONPATH, f.OATTACHMENTSPATH, a.NAME as DEPARTMENT_ID, - b.UNITS_NAME as UNITS_NAME + pcij.NAME Q_DEPARTMENT_NAME, + isdd.NAME MANAGER_DEPARTMENT_NAME, + b.UNITS_NAME as UNITS_NAME, + vua.NAME OUTSOURCED_CREATOR_NAME, + pci.NAME Q_COMPETENT_DEPT_NAME, + ( SELECT GROUP_CONCAT( t.NAME ) FROM oa_department t WHERE FIND_IN_SET( t.DEPARTMENT_ID, f.DEPARTMENT_ID ) ) AS DEPARTMENT_NAME, + ( select count(1) from BUS_KEYPROJECTCHECK c where c.OUTSOURCED_ID = f.OUTSOURCED_ID) as CHECK_COUNT, + ( select GROUP_CONCAT(t.CORP_NAME) from BUS_CORP_INFO t where FIND_IN_SET(t.CORPINFO_ID, f.MANAGE_NAME)) as MANAGE_CORPS_NAME, + ( SELECT GROUP_CONCAT( t.NAME ) FROM oa_department t WHERE FIND_IN_SET( t.DEPARTMENT_ID, f.INVOLVING_CORPS_DEPART_ID ) ) AS INVOLVING_CORPS_DEPART_NAME, + (select GROUP_CONCAT(t.NAME) from ( SELECT CONCAT( CONCAT( c.CORP_NAME, '-' ), t.NAME ) NAME ,t.DEPARTMENT_ID FROM OA_DEPARTMENT t LEFT JOIN bus_corp_info c ON c.CORPINFO_ID = t.CORPINFO_ID) t where FIND_IN_SET(t.DEPARTMENT_ID, f.JURISDICTION_UNIT)) as JURISDICTION_UNIT_NAME, + ifnull(vac.CORP_NAME,'秦港股份有限公司') CORP_NAME, + p.`NAME` as UNITS_PIC_NAME from f + LEFT JOIN oa_department pci ON pci.DEPARTMENT_ID = f.COMPETENT_DEPT_ID + LEFT JOIN oa_department isdd ON isdd.DEPARTMENT_ID = f.MANAGER_DEPARTMENT_ID + LEFT JOIN oa_department pcij ON pcij.DEPARTMENT_ID = f.DEPARTMENT_ID left join oa_department a on a.DEPARTMENT_ID = f.DEPARTMENT_ID left join bus_units b using (UNITS_ID) + LEFT JOIN vi_user_all vua on f.CREATOR = vua.USER_ID + LEFT JOIN vi_all_corp vac on vua.CORPINFO_ID = vac.CORPINFO_ID + LEFT JOIN bus_personnelmanagement p on p.PERSONNELMANAGEMENT_ID = f.UNITS_PIC where f.ISDELETE = '0' and @@ -317,6 +359,9 @@ and f.STATE = #{pd.STATE} + + and f.UNITS_ID = #{pd.UNITS_ID} + and (f.CONTRACT_STIME between #{pd.CONTRACT_STIME} and #{pd.CONTRACT_ETIME} or f.CONTRACT_ETIME between #{pd.CONTRACT_STIME} and #{pd.CONTRACT_ETIME} @@ -349,4 +394,305 @@ + + + + + + + + + + + update + + set + WORK_LONGITUDE = #{WORK_LONGITUDE}, + WORK_LATITUDE = #{WORK_LATITUDE}, + LOCATION = #{LOCATION} + where + OUTSOURCED_ID = #{OUTSOURCED_ID} + + + + + + + update + + set + DEPARTMENT_ID = #{DEPARTMENT_ID}, + CONTRACT_PIC = #{CONTRACT_PIC}, + OUTSOURCED_NAME = #{OUTSOURCED_NAME}, + INVOLVING_CORPS = #{INVOLVING_CORPS}, + STARTTIME = #{STARTTIME}, + ENDTIME = #{ENDTIME}, + CONTRACT_STIME = #{CONTRACT_STIME}, + CONTRACT_ETIME = #{CONTRACT_ETIME}, + UNITS_ID = #{UNITS_ID}, + CONTRACT_NUM = #{CONTRACT_NUM}, + UNITS_APTITUDE = #{UNITS_APTITUDE}, + UNITS_PIC = #{UNITS_PIC}, + UNITS_PHONE = #{UNITS_PHONE}, + MANAGE_NAME = #{MANAGE_NAME}, + DESIGE = #{DESIGE}, + MANAGE_APTITUDE = #{MANAGE_APTITUDE}, + MANAGE_PIC = #{MANAGE_PIC}, + MANAGE_PHONE = #{MANAGE_PHONE}, + MEASURES = #{MEASURES}, + ATTACHMENTS = #{ATTACHMENTS}, + REMARKS = #{REMARKS}, + TRAINING_NAME = #{TRAINING_NAME}, + TRAINING_PIC = #{TRAINING_PIC}, + TRAINING_STIME = #{TRAINING_STIME}, + TRAINING_ETIME = #{TRAINING_ETIME}, + RECORDS = #{RECORDS}, + SHEET = #{SHEET}, + EXAMINATION = #{EXAMINATION}, + OATTACHMENTS = #{OATTACHMENTS}, + APPLICANT = #{APPLICANT}, + PUNISH_THE_PERSON = #{PUNISH_THE_PERSON}, + STATE = '2', + OUTSOURCED_ID = OUTSOURCED_ID + where + OUTSOURCED_ID = #{OUTSOURCED_ID} + + + update + + set + STATE = '1' + where + OUTSOURCED_ID = #{OUTSOURCED_ID} + + diff --git a/src/main/resources/mybatis/datasource/relatedparty/UnitsMapper.xml b/src/main/resources/mybatis/datasource/relatedparty/UnitsMapper.xml index 1991c69..b678957 100644 --- a/src/main/resources/mybatis/datasource/relatedparty/UnitsMapper.xml +++ b/src/main/resources/mybatis/datasource/relatedparty/UnitsMapper.xml @@ -211,9 +211,13 @@ + select + + from + f + where + f.PHONENUM = #{PHONENUM} and f.PASSWORD = #{PASSWORD} + and f.ISDELETE='0' + + + + diff --git a/src/main/resources/mybatis/datasource/video/VideoManagerMapper.xml b/src/main/resources/mybatis/datasource/video/VideoManagerMapper.xml index 9d091b8..d7cb49b 100644 --- a/src/main/resources/mybatis/datasource/video/VideoManagerMapper.xml +++ b/src/main/resources/mybatis/datasource/video/VideoManagerMapper.xml @@ -161,6 +161,9 @@ and f.CORPINFO_ID=#{pd.CORPINFO_ID} + + and f.OUTSOURCED_ID=#{pd.OUTSOURCED_ID} + and ( @@ -259,4 +262,32 @@ SET ISSHOW = (CASE WHEN VIDEOMANAGER_ID = #{VIDEOMANAGER_ID} THEN 1 ELSE 0 END) where CORPINFO_ID = #{CORPINFO_ID} + + + + + + update + + set + PLATFORMVIDEOMANAGEMENT_ID = null, + VIDEO_RESOURCES_ID = null + where + OUTSOURCED_ID = #{OUTSOURCED_ID} +