421 lines
15 KiB
Java
421 lines
15 KiB
Java
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.bus.ImgFilesService;
|
||
import com.zcloud.service.keyProjects.*;
|
||
import com.zcloud.util.DateUtil;
|
||
import com.zcloud.util.SendSmsUtil;
|
||
import com.zcloud.util.Tools;
|
||
import com.zcloud.util.UuidUtil;
|
||
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.ResponseBody;
|
||
|
||
import java.util.*;
|
||
|
||
/**
|
||
* 说明:重点工程检查
|
||
* 作者: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 OutSourcedService outsourcedService;
|
||
|
||
@Autowired
|
||
private PersonnelManagementService personnelmanagementService;
|
||
|
||
@Autowired
|
||
private KeyprojectPunishService keyprojectpunishService;
|
||
|
||
/**新增
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/add")
|
||
@ResponseBody
|
||
public Object add() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new 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", 2); //企业2
|
||
keyprojectcheckService.save(pd);
|
||
|
||
String currentTime = DateUtil.date2Str(new Date());
|
||
if (Tools.notEmpty(pd.getString("SITUATIONJSON"))) {
|
||
List<JSONObject> list = (List<JSONObject>) 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);
|
||
time = DateUtil.calculateDateSecond(time, 1);
|
||
}
|
||
}
|
||
Boolean boo = false; // 增加开关控制
|
||
if (Tools.notEmpty(pd.getString("HIDDENJSON"))) {
|
||
boo = true;
|
||
List<PageData> hiddenList = new ArrayList<PageData>();
|
||
List<JSONObject> list = (List<JSONObject>) 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);
|
||
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<JSONObject> jsonList = (List<JSONObject>) 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<String> 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 {
|
||
map.put("pd", pd);
|
||
map.put("result", errInfo);
|
||
}
|
||
return map;
|
||
}
|
||
|
||
/**删除
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/delete")
|
||
@ResponseBody
|
||
public Object delete() throws Exception{
|
||
Map<String,String> map = new HashMap<String,String>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
keyprojectcheckService.delete(pd);
|
||
map.put("result", errInfo); //返回结果
|
||
return map;
|
||
}
|
||
|
||
/**修改
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/edit")
|
||
@ResponseBody
|
||
public Object edit() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
keyprojectcheckService.edit(pd);
|
||
map.put("result", errInfo);
|
||
return map;
|
||
}
|
||
|
||
/**列表
|
||
* @param page
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/list")
|
||
@ResponseBody
|
||
public Object list(Page page) throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
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<PageData> 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<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
pd = keyprojectcheckService.findById(pd); //根据ID读取
|
||
|
||
List<PageData> 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<String,Object> map = new HashMap<String,Object>();
|
||
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<PageData> 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<String,Object> map = new HashMap<String,Object>();
|
||
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="/check")
|
||
@ResponseBody
|
||
@Transactional
|
||
public Object check() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
pd.put("STATE", 4);
|
||
keyprojectHiddenService.editstate(pd);
|
||
|
||
map.put("result", errInfo);
|
||
return map;
|
||
}
|
||
/**修改处罚状态
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/editHiddenIspunish")
|
||
@ResponseBody
|
||
@Transactional
|
||
public Object editHiddenIspunish() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
keyprojectHiddenService.editstate(pd);
|
||
map.put("result", errInfo);
|
||
return map;
|
||
}
|
||
|
||
|
||
/**批量删除
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/deleteAll")
|
||
@ResponseBody
|
||
public Object deleteAll() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
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 = "fail";
|
||
}
|
||
map.put("result", errInfo); //返回结果
|
||
return map;
|
||
}
|
||
|
||
/**去隐患页面获取数据
|
||
* @param
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/keyProjectCount")
|
||
@ResponseBody
|
||
public Object keyProjectCount() throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
String errInfo = "success";
|
||
PageData pd = new PageData();
|
||
pd = this.getPageData();
|
||
String UserId = pd.getString("UserId");
|
||
if(!StringUtils.equals("1",UserId)){
|
||
String CORPINFO_ID = pd.getString("CORPINFO_ID");
|
||
if(!StringUtils.equals(CORPINFO_ID,"1e6dbbe16004402f8d2c0e52afd9a676")&&!StringUtils.equals(CORPINFO_ID,"3a854eefa7894e06aaa1a2611bca80f6")&&
|
||
!StringUtils.equals(CORPINFO_ID,"020578a4c1f04bc692ee25145c2efbe5")&&!StringUtils.equals(CORPINFO_ID,"90966974de3c4b83aca6f8fd6432d5c2")){
|
||
pd.put("DeptId",outsourcedService.getDeptId(UserId));
|
||
}
|
||
}
|
||
pd = keyprojectHiddenService.keyprojectcount(pd); //根据ID读取
|
||
map.put("pd", pd);
|
||
map.put("result", errInfo);
|
||
return map;
|
||
}
|
||
|
||
/**重点工程处罚列表 包含 未选择处罚结果的隐患 已下发处罚但为反馈的隐患 不处罚的隐患
|
||
* @param page
|
||
* @throws Exception
|
||
*/
|
||
@RequestMapping(value="/punishlist")
|
||
@ResponseBody
|
||
public Object punishlist(Page page) throws Exception{
|
||
Map<String,Object> map = new HashMap<String,Object>();
|
||
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<PageData> varList = keyprojectHiddenService.getpunishlist(page); //列出KeyprojectCheck列表
|
||
map.put("varList", varList);
|
||
map.put("page", page);
|
||
map.put("result", errInfo);
|
||
return map;
|
||
}
|
||
|
||
}
|