Commit 6ad426a3 authored by litengwei's avatar litengwei

双规小程序接口

parent df27e20a
package com.yeejoin.amos.patrol.common.enums;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public enum PlanTaskTheStatusEnum {
NOTSTARTED("notStarted",0),
UNDERWAY("inProgress",1),
FINISHED("ended",2),
OVERTIME("timedout",3);
/**
* 名称
*/
private String name;
/**
* 值
*/
private int value;
private PlanTaskTheStatusEnum(String name, int value) {
this.name = name;
this.value = value;
}
public static String getName(int value) {
for (PlanTaskTheStatusEnum c : PlanTaskTheStatusEnum.values()) {
if (c.getValue() == value) {
return c.name;
}
}
return null;
}
public static int getValue(String name) {
for (PlanTaskTheStatusEnum c : PlanTaskTheStatusEnum.values()) {
if (c.getName().equals(name)) {
return c.value;
}
}
return -1;
}
public static PlanTaskTheStatusEnum getEnum(int value) {
for (PlanTaskTheStatusEnum c : PlanTaskTheStatusEnum.values()) {
if (c.getValue() == value) {
return c;
}
}
return null;
}
public static PlanTaskTheStatusEnum getEnum(String name) {
for (PlanTaskTheStatusEnum c : PlanTaskTheStatusEnum.values()) {
if (c.getName().equals(name)) {
return c;
}
}
return null;
}
public static List<Map<String,String>> getEnumList() {
List<Map<String,String>> nameList = new ArrayList<>();
for (PlanTaskTheStatusEnum c: PlanTaskTheStatusEnum.values()) {
Map<String, String> map = new HashMap<String, String>();
map.put("name", c.getName());
map.put("value", c.getValue() +"");
nameList.add(map);
}
return nameList;
}
public static List<String> getEnumNameList() {
List<String> nameList = new ArrayList<String>();
for (PlanTaskTheStatusEnum c: PlanTaskTheStatusEnum.values()) {
nameList.add(c.getName());
}
return nameList;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
package com.yeejoin.amos.patrol.common.enums;
public enum PlanTaskTypeStatusEnum {
day("dayControl",1),
month("weeklySurvey",2),
year("monthlyScheduling",3),
;
/**
* 名称
*/
private String name;
/**
* 值
*/
private int value;
private PlanTaskTypeStatusEnum(String name, int value) {
this.name = name;
this.value = value;
}
public static String getName(int value) {
for (PlanTaskTypeStatusEnum c : PlanTaskTypeStatusEnum.values()) {
if (c.getValue() == value) {
return c.name;
}
}
return null;
}
public static int getValue(String name) {
for (PlanTaskTypeStatusEnum c : PlanTaskTypeStatusEnum.values()) {
if (c.getName().equals(name)) {
return c.value;
}
}
return -1;
}
public static PlanTaskTypeStatusEnum getEnum(int value) {
for (PlanTaskTypeStatusEnum c : PlanTaskTypeStatusEnum.values()) {
if (c.getValue() == value) {
return c;
}
}
return null;
}
public static PlanTaskTypeStatusEnum getEnum(String name) {
for (PlanTaskTypeStatusEnum c : PlanTaskTypeStatusEnum.values()) {
if (c.getName().equals(name)) {
return c;
}
}
return null;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
}
...@@ -18,6 +18,7 @@ import com.yeejoin.amos.patrol.business.util.*; ...@@ -18,6 +18,7 @@ import com.yeejoin.amos.patrol.business.util.*;
import com.yeejoin.amos.patrol.business.vo.CheckAnalysisVo; import com.yeejoin.amos.patrol.business.vo.CheckAnalysisVo;
import com.yeejoin.amos.patrol.business.vo.CheckInfoVo; import com.yeejoin.amos.patrol.business.vo.CheckInfoVo;
import com.yeejoin.amos.patrol.common.enums.PlanTaskFinishStatusEnum; import com.yeejoin.amos.patrol.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskTypeStatusEnum;
import com.yeejoin.amos.patrol.core.async.AsyncTask; import com.yeejoin.amos.patrol.core.async.AsyncTask;
import com.yeejoin.amos.patrol.core.common.request.CommonPageable; import com.yeejoin.amos.patrol.core.common.request.CommonPageable;
import com.yeejoin.amos.patrol.core.common.request.CommonRequest; import com.yeejoin.amos.patrol.core.common.request.CommonRequest;
...@@ -158,6 +159,7 @@ public class CheckController extends AbstractBaseController { ...@@ -158,6 +159,7 @@ public class CheckController extends AbstractBaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "巡检记录查询", notes = "巡检记录查询") @ApiOperation(value = "巡检记录查询", notes = "巡检记录查询")
@RequestMapping(value = "/listXNew", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/listXNew", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
...@@ -181,11 +183,12 @@ public class CheckController extends AbstractBaseController { ...@@ -181,11 +183,12 @@ public class CheckController extends AbstractBaseController {
@ApiOperation(value = "一键提交巡检任务", notes = "一键提交巡检任务<font color='blue'>手机app</font>") @ApiOperation(value = "一键提交巡检任务", notes = "一键提交巡检任务<font color='blue'>手机app</font>")
@RequestMapping(value = "/saveRecordAll", produces = "application/json;charset=UTF-8", method = RequestMethod.POST) @RequestMapping(value = "/saveRecordAll", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
public ResponseModel<Object> saveCheckRecordAll(@RequestParam String ids) { public ResponseModel<Object> saveCheckRecordAll(@RequestParam String ids) {
String userId = RequestContext.getExeUserId();
String[] idArr = ids.split(","); String[] idArr = ids.split(",");
try { try {
for (String str:idArr for (String str:idArr
) { ) {
planTaskService.handleAll(str); planTaskService.handleAll(str, userId);
} }
} catch (Exception e) { } catch (Exception e) {
return ResponseHelperUtil.buildErrorResponse("提交失败:"+e.getMessage()); return ResponseHelperUtil.buildErrorResponse("提交失败:"+e.getMessage());
...@@ -586,9 +589,9 @@ public class CheckController extends AbstractBaseController { ...@@ -586,9 +589,9 @@ public class CheckController extends AbstractBaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "获取巡检日历数据<font color='blue'>手机app</font>", notes = "获取巡检日历数据<font color='blue'>手机app</font>") @ApiOperation(value = "获取巡检日历数据<font color='blue'>手机app</font>", notes = "获取巡检日历数据<font color='blue'>手机app</font>")
@PostMapping(value = "/checkCalendarForWx", produces = "application/json;charset=UTF-8") @GetMapping(value = "/checkCalendarForWx", produces = "application/json;charset=UTF-8")
public ResponseModel<Object> checkCalendarForWx( public ResponseModel<Object> checkCalendarForWx(
@ApiParam(value = "查询条件", required = false) @RequestParam(required = false) String checkTime, @RequestParam(required = false) String checkTime,
@RequestParam(required = true) String type) { @RequestParam(required = true) String type) {
try { try {
String userId = RequestContext.getExeUserId(); String userId = RequestContext.getExeUserId();
...@@ -599,7 +602,7 @@ public class CheckController extends AbstractBaseController { ...@@ -599,7 +602,7 @@ public class CheckController extends AbstractBaseController {
checkTime = DateUtils.dateFormat(new Date(), null); checkTime = DateUtils.dateFormat(new Date(), null);
} }
Map<String, Object> map = checkService.checkCalendarNew(checkTime,loginOrgCode,type,userId); Map<String, Object> map = checkService.checkCalendarNew(checkTime,loginOrgCode,String.valueOf(PlanTaskTypeStatusEnum.getValue(type)),userId);
return ResponseHelper.buildResponse(map); return ResponseHelper.buildResponse(map);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
......
...@@ -119,7 +119,9 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -119,7 +119,9 @@ public class PlanTaskController extends AbstractBaseController {
} }
try { try {
Page<Map<String, Object>> page = planTaskService.getPlanTasks(getToken(), getProduct(), getAppKey(), params); Page<Map<String, Object>> page = planTaskService.getPlanTasks(getToken(), getProduct(), getAppKey(), params);
return ResponseHelper.buildResponse(page); Object ov= page!=null?ToJson.tojson(page):null;
return ResponseHelper.buildResponse(ov);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return ResponseHelperUtil.buildErrorResponse(e.getMessage()); return ResponseHelperUtil.buildErrorResponse(e.getMessage());
...@@ -581,7 +583,8 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -581,7 +583,8 @@ public class PlanTaskController extends AbstractBaseController {
task.put("checkDate", sdf.format(task.get("checkDate") != null ? sdf.parse(task.get("checkDate").toString()) : new Date())); task.put("checkDate", sdf.format(task.get("checkDate") != null ? sdf.parse(task.get("checkDate").toString()) : new Date()));
response.put("planTask", task); response.put("planTask", task);
response.put("points", points); response.put("points", points);
return ResponseHelper.buildResponse(response); Object ov= response!=null?ToJson.tojson(response):null;
return ResponseHelper.buildResponse(ov);
} catch (Exception e) { } catch (Exception e) {
return ResponseHelperUtil.buildErrorResponse(e.getMessage()); return ResponseHelperUtil.buildErrorResponse(e.getMessage());
} }
...@@ -917,7 +920,8 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -917,7 +920,8 @@ public class PlanTaskController extends AbstractBaseController {
if (ObjectUtils.isEmpty(result)) { if (ObjectUtils.isEmpty(result)) {
return ResponseHelperUtil.buildErrorResponse("该计划巡检点已更新,请退回重新选择"); return ResponseHelperUtil.buildErrorResponse("该计划巡检点已更新,请退回重新选择");
} }
return ResponseHelper.buildResponse(result); Object ov= result!=null?ToJson.tojson(result):null;
return ResponseHelper.buildResponse(ov);
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
return ResponseHelperUtil.buildErrorResponse(e.getMessage()); return ResponseHelperUtil.buildErrorResponse(e.getMessage());
......
...@@ -41,4 +41,5 @@ public interface IPlanDao extends BaseDao<Plan, Long> { ...@@ -41,4 +41,5 @@ public interface IPlanDao extends BaseDao<Plan, Long> {
@Transactional @Transactional
@Query(value = "select * from p_plan where id = (?1) and is_delete = 0", nativeQuery = true) @Query(value = "select * from p_plan where id = (?1) and is_delete = 0", nativeQuery = true)
Optional<Plan> findById(Long id); Optional<Plan> findById(Long id);
} }
\ No newline at end of file
...@@ -427,36 +427,33 @@ public class CheckServiceImpl implements ICheckService { ...@@ -427,36 +427,33 @@ public class CheckServiceImpl implements ICheckService {
} }
if (check.getPlanTaskId() > 0) { if (check.getPlanTaskId() > 0) {
planTaskDetailMapper.finishTaskDetail(Long.parseLong(detail.get("planTaskDetailId").toString()), requestParam.getPointId(), requestParam.getPlanTaskId(), user.getUserId()); planTaskDetailMapper.finishTaskDetail(Long.parseLong(detail.get("planTaskDetailId").toString()), requestParam.getPointId(), requestParam.getPlanTaskId(), user.getUserId());
} else {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
planTaskMapper.reformStatistics(user.getUserId(), sdf.format(new Date()), requestParam.getOrgCode());
} }
if(check.getPlanId()!=0){ // if(check.getPlanId()!=0){
// 任务完成、同步修改待办任务状态 // // 任务完成、同步修改待办任务状态
Plan plan = planService.queryPlanById(check.getPlanId()); // Plan plan = planService.queryPlanById(check.getPlanId());
if (!ObjectUtils.isEmpty(plan) && plan.getIsSingleExecution()){ // if (!ObjectUtils.isEmpty(plan) && plan.getIsSingleExecution()){
// 单人执行 // // 单人执行
updateTaskStatus(plan.getId(), user.getUserId()); // updateTaskStatus(plan.getId(), user.getUserId());
}else { // }else {
// 多人执行 // // 多人执行
updateTaskStatus(plan.getId(), null); // updateTaskStatus(plan.getId(), null);
} // }
} // }
// 巡检站端与中心级数据同步 // 巡检站端与中心级数据同步
Check finalCheck1 = check; // Check finalCheck1 = check;
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() { // TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override // @Override
public void afterCommit() { // public void afterCommit() {
// 事物提交后业务逻辑 // // 事物提交后业务逻辑
patrolDataSyncService.checkDataSync(finalCheck1); // patrolDataSyncService.checkDataSync(finalCheck1);
Map<String, Object> map = new HashMap<>(); // Map<String, Object> map = new HashMap<>();
map.put("idList", checkInputList.stream().map(CheckInput::getId).collect(Collectors.toList())); // map.put("idList", checkInputList.stream().map(CheckInput::getId).collect(Collectors.toList()));
List<CheckInputSyncBo> checkInputSyncBoList = checkInputMapper.getCheckInputSyncBoList(map); // List<CheckInputSyncBo> checkInputSyncBoList = checkInputMapper.getCheckInputSyncBoList(map);
patrolDataSyncService.checkInputBoDataSync(checkInputSyncBoList); // patrolDataSyncService.checkInputBoDataSync(checkInputSyncBoList);
patrolDataSyncService.checkInputDataSync(checkInputList); // patrolDataSyncService.checkInputDataSync(checkInputList);
} // }
}); // });
return new CheckDto(check.getId(), unqualifiedcheckItemList); return new CheckDto(check.getId(), unqualifiedcheckItemList);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
...@@ -562,6 +559,9 @@ public class CheckServiceImpl implements ICheckService { ...@@ -562,6 +559,9 @@ public class CheckServiceImpl implements ICheckService {
} else if (XJConstant.INPUT_ITEM_TEXT.equals(inputItem.getItemType())) { } else if (XJConstant.INPUT_ITEM_TEXT.equals(inputItem.getItemType())) {
checkInput = paraseText(checkInput, inputItem.getDataJson(), item, inputItem.getIsScore()); checkInput = paraseText(checkInput, inputItem.getDataJson(), item, inputItem.getIsScore());
} }
if(XJConstant.RISK.equals(checkInput.getInputValue())) {
planTask.setRiskStatus(XJConstant.RISK_NUM);
}
if (XJConstant.NO.equals(checkInput.getIsOk())) { if (XJConstant.NO.equals(checkInput.getIsOk())) {
String classifyName = pointClassifyName != null ? pointClassifyName + "-" : ""; String classifyName = pointClassifyName != null ? pointClassifyName + "-" : "";
error += (classifyName + inputItem.getName() + "=" + (ObjectUtils.isEmpty(item.getInputValue()) ? "" : item.getInputValue()) + ";"); error += (classifyName + inputItem.getName() + "=" + (ObjectUtils.isEmpty(item.getInputValue()) ? "" : item.getInputValue()) + ";");
...@@ -583,17 +583,21 @@ public class CheckServiceImpl implements ICheckService { ...@@ -583,17 +583,21 @@ public class CheckServiceImpl implements ICheckService {
checkInput.setPointClassifyName(pointClassifyName); checkInput.setPointClassifyName(pointClassifyName);
score += checkInput.getScore(); score += checkInput.getScore();
checkItemList.add(checkInput); checkItemList.add(checkInput);
EquipmentInputItemRo equipmentInputItemRo = new EquipmentInputItemRo(); // EquipmentInputItemRo equipmentInputItemRo = new EquipmentInputItemRo();
if (pointClassify!=null&&!StringUtils.isBlank(pointClassify.getName())) { // if (pointClassify!=null&&!StringUtils.isBlank(pointClassify.getName())) {
equipmentInputItemRo.setEquipmentName(pointClassify.getName()); // equipmentInputItemRo.setEquipmentName(pointClassify.getName());
} // }
equipmentInputItemRo.setCheckResult(item.getInputValue()); // equipmentInputItemRo.setCheckResult(item.getInputValue());
equipmentInputItemRo.setRuleType(RuleTypeEnum.CHECKRESULT.getCode()); // equipmentInputItemRo.setRuleType(RuleTypeEnum.CHECKRESULT.getCode());
equipmentInputItemRo.setCheckContent(inputItem.getItemNo()); // equipmentInputItemRo.setCheckContent(inputItem.getItemNo());
if (pointClassify!=null&&!StringUtils.isBlank(pointClassify.getEquipmentId())) { // if (pointClassify!=null&&!StringUtils.isBlank(pointClassify.getEquipmentId())) {
equipmentInputItemRoList.add(equipmentInputItemRo); // equipmentInputItemRoList.add(equipmentInputItemRo);
// }
} }
if(ObjectUtils.isEmpty(planTask.getRiskStatus())) {
planTask.setRiskStatus(XJConstant.NORISK_NUM);
} }
planTaskDao.saveAndFlush(planTask);
if (!ObjectUtils.isEmpty(error) && error.endsWith(";")) { if (!ObjectUtils.isEmpty(error) && error.endsWith(";")) {
error.substring(0, error.length() - 1); error.substring(0, error.length() - 1);
check.setIsOk(CheckStatusEnum.UNQUALIFIED.getCode()); check.setIsOk(CheckStatusEnum.UNQUALIFIED.getCode());
...@@ -680,10 +684,7 @@ public class CheckServiceImpl implements ICheckService { ...@@ -680,10 +684,7 @@ public class CheckServiceImpl implements ICheckService {
checkService.saveCheckImg(imgList); checkService.saveCheckImg(imgList);
} }
if (check.getPlanTaskId() > 0) { if (check.getPlanTaskId() > 0) {
// planTaskDetailMapper.finishTaskDetail(Long.parseLong(detail.get("planTaskDetailId").toString()), requestParam.getPointId(), requestParam.getPlanTaskId(), requestParam.getUserId()); planTaskDetailMapper.finishTaskDetail(Long.parseLong(detail.get("planTaskDetailId").toString()), requestParam.getPointId(), requestParam.getPlanTaskId(), requestParam.getUserId());
} else {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
planTaskMapper.reformStatistics(requestParam.getUserId(), sdf.format(new Date()), requestParam.getOrgCode());
} }
// if(check.getPlanId()!=0) { // if(check.getPlanId()!=0) {
// // 任务完成、同步修改待办任务状态 // // 任务完成、同步修改待办任务状态
......
...@@ -33,9 +33,7 @@ import com.yeejoin.amos.patrol.business.util.PlanTaskUtil; ...@@ -33,9 +33,7 @@ import com.yeejoin.amos.patrol.business.util.PlanTaskUtil;
import com.yeejoin.amos.patrol.business.util.Toke; import com.yeejoin.amos.patrol.business.util.Toke;
import com.yeejoin.amos.patrol.business.util.WordTemplateUtils; import com.yeejoin.amos.patrol.business.util.WordTemplateUtils;
import com.yeejoin.amos.patrol.business.vo.*; import com.yeejoin.amos.patrol.business.vo.*;
import com.yeejoin.amos.patrol.common.enums.NotifyBusinessTypeEum; import com.yeejoin.amos.patrol.common.enums.*;
import com.yeejoin.amos.patrol.common.enums.PlanTaskDetailIsFinishEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskDetailStatusEnum;
import com.yeejoin.amos.patrol.core.common.request.CommonPageable; import com.yeejoin.amos.patrol.core.common.request.CommonPageable;
import com.yeejoin.amos.patrol.core.common.response.AppCheckInputRespone; import com.yeejoin.amos.patrol.core.common.response.AppCheckInputRespone;
import com.yeejoin.amos.patrol.core.common.response.AppPointCheckRespone; import com.yeejoin.amos.patrol.core.common.response.AppPointCheckRespone;
...@@ -74,7 +72,6 @@ import java.io.FileInputStream; ...@@ -74,7 +72,6 @@ import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.text.DateFormat; import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -140,6 +137,9 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -140,6 +137,9 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
@Autowired @Autowired
private TzsFeign tzsFeign; private TzsFeign tzsFeign;
@Autowired
private ICheckShotDao iCheckShotDao;
private final String PATROL_PLAN_TASK_KEY = "PATROL_PLAN_ID:"; private final String PATROL_PLAN_TASK_KEY = "PATROL_PLAN_ID:";
private final String packageId = "消息/addCheckRule"; private final String packageId = "消息/addCheckRule";
...@@ -810,6 +810,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -810,6 +810,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
planTaskDetailListSync.add(planTaskDetailInstance); planTaskDetailListSync.add(planTaskDetailInstance);
} }
// 定时任务监控 // 定时任务监控
log.error("计划重做开始添加定时任务监控========");
jobService.planTaskAddJob(planTask); jobService.planTaskAddJob(planTask);
planTaskList.add(planTask); planTaskList.add(planTask);
} }
...@@ -1135,28 +1136,23 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1135,28 +1136,23 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
} }
@Override @Override
public void handleAll(String id) { public void handleAll(String id,String userId) {
Optional<Plan> byId = iplanDao.findById(Long.valueOf(id)); Optional<PlanTask> planTaskOptional = iplanTaskDao.findById(Long.valueOf(id));
Plan plan = byId.get(); PlanTask planTask = planTaskOptional.get();
List<PlanTask> planTaskList = iplanTaskDao.findByPlanId(plan.getId());
for (PlanTask p : planTaskList planTask.setFinishStatus(XJConstant.TASK_STATUS_FINISH);
) { planTask.setRiskStatus(XJConstant.NORISK_NUM);
p.setFinishStatus(XJConstant.TASK_STATUS_FINISH); iplanTaskDao.saveAndFlush(planTask);
p.setRiskStatus(XJConstant.NORISK_NUM); List<PlanTaskDetail> planTaskDetails = iPlanTaskDetailDao.findAllByTaskNoAndStatus(planTask.getId(), PlanTaskDetailStatusEnum.NOTSTARTED.getValue());
iplanTaskDao.saveAndFlush(p);
List<PlanTaskDetail> planTaskDetails = iPlanTaskDetailDao.findAllByTaskNoAndStatus(p.getId(), PlanTaskDetailStatusEnum.NOTSTARTED.getValue());
if (!planTaskDetails.isEmpty()) { if (!planTaskDetails.isEmpty()) {
planTaskDetails.stream().forEach(action -> { planTaskDetails.stream().forEach(action -> {
action.setIsFinish(PlanTaskDetailIsFinishEnum.FINISHED.getValue()); planTaskDetailMapper.finishTaskDetail(action.getId(), action.getPointId(),
action.setStatus(PlanTaskDetailStatusEnum.QUALIFIED.getValue()); action.getPlanTask().getId(), userId);
iPlanTaskDetailDao.saveAndFlush(action);
}); });
} }
// 生成巡检记录 // 生成巡检记录
jobService.createCheckRecord(p); jobService.createCheckRecord(planTask);
}
} }
...@@ -1174,6 +1170,12 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1174,6 +1170,12 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
public Page<Map<String, Object>> getPlanTasks(String toke, String product, String appKey, HashMap<String, Object> params) { public Page<Map<String, Object>> getPlanTasks(String toke, String product, String appKey, HashMap<String, Object> params) {
CommonPageable pageParam = new CommonPageable(); CommonPageable pageParam = new CommonPageable();
List<Map<String, Object>> content = Lists.newArrayList(); List<Map<String, Object>> content = Lists.newArrayList();
if(params.containsKey("finishStatus")) {
params.put("finishStatus", String.valueOf(PlanTaskTheStatusEnum.getValue(params.get("finishStatus").toString())));
}
if(params.containsKey("type")) {
params.put("type", String.valueOf(PlanTaskTypeStatusEnum.getValue(params.get("type").toString())));
}
long total = planTaskMapper.getPlanTasksCount(params); long total = planTaskMapper.getPlanTasksCount(params);
if (total == 0) { if (total == 0) {
return new PageImpl<>(content, pageParam, total); return new PageImpl<>(content, pageParam, total);
...@@ -1457,13 +1459,27 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1457,13 +1459,27 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
PointCheckDetailBo planPointInfo = planTaskMapper.getPointPlanTaskInfo(planTaskId, pointId); PointCheckDetailBo planPointInfo = planTaskMapper.getPointPlanTaskInfo(planTaskId, pointId);
pointCheckRespone.setTaskStatus(planPointInfo.getTaskStatus()); pointCheckRespone.setTaskStatus(planPointInfo.getTaskStatus());
if (planPointInfo != null) { if (planPointInfo != null) {
if(check != null) {
List<CheckShot> checkShots = iCheckShotDao.findAllByCheckIdAndCheckInputId(check.getId(),
0L);
List<String> photos = null;
if (!org.springframework.util.CollectionUtils.isEmpty(checkShots)) {
photos = checkShots.stream().map(e -> {
if (e != null) {
return e.getPhotoData().replaceAll("\\\\", "/");
} else {
return "";
}
}).collect(Collectors.toList());
}
pointCheckRespone.setPointImgUrls(photos);
}
pointCheckRespone.setPointId(pointId); pointCheckRespone.setPointId(pointId);
pointCheckRespone.setPointName(planPointInfo.getPointName()); pointCheckRespone.setPointName(planPointInfo.getPointName());
pointCheckRespone.setPointNo(planPointInfo.getPointNo()); pointCheckRespone.setPointNo(planPointInfo.getPointNo());
pointCheckRespone.setBeginTime(planPointInfo.getBeginTime()); pointCheckRespone.setBeginTime(planPointInfo.getBeginTime());
pointCheckRespone.setEndTime(planPointInfo.getEndTime()); pointCheckRespone.setEndTime(planPointInfo.getEndTime());
pointCheckRespone.setPointStatus("0");
pointCheckRespone.setPlanName(planPointInfo.getPlanName()); pointCheckRespone.setPlanName(planPointInfo.getPlanName());
List<PointCheckDetailBo> pointInputs = planTaskMapper.getPointInputByRouteIdAndPointId(planPointInfo.getRouteId(), planPointInfo.getPointId()); List<PointCheckDetailBo> pointInputs = planTaskMapper.getPointInputByRouteIdAndPointId(planPointInfo.getRouteId(), planPointInfo.getPointId());
JSONObject appResponeMap = new JSONObject(); JSONObject appResponeMap = new JSONObject();
...@@ -1482,7 +1498,22 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1482,7 +1498,22 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
input.setInputValue(ck.getInputValue()); input.setInputValue(ck.getInputValue());
} }
} }
List<CheckShot> checkShotsNew = iCheckShotDao.findAllByCheckIdAndCheckInputId(check.getId(),
action.getCheckInputId());
List<String> photosNew = null;
if (!org.springframework.util.CollectionUtils.isEmpty(checkShotsNew)) {
photosNew = checkShotsNew.stream().map(e -> {
if (e != null) {
return e.getPhotoData().replaceAll("\\\\", "/");
} else {
return "";
}
}).collect(Collectors.toList());
} }
input.setPointInputImgUrls(photosNew);
}
input.setItemType(action.getItemType()); input.setItemType(action.getItemType());
input.setOrderNo(action.getOrderNo()); input.setOrderNo(action.getOrderNo());
input.setPictureJson(action.getPictureJson()); input.setPictureJson(action.getPictureJson());
......
...@@ -93,7 +93,7 @@ public interface IPlanTaskService { ...@@ -93,7 +93,7 @@ public interface IPlanTaskService {
* *
* @param id * @param id
*/ */
void handleAll(String id); void handleAll(String id, String userId);
/** /**
* app 根据条件查询用户权限内所有当前巡检计划任务 * app 根据条件查询用户权限内所有当前巡检计划任务
......
...@@ -117,7 +117,7 @@ public class JobService implements IJobService { ...@@ -117,7 +117,7 @@ public class JobService implements IJobService {
if (time != null && time.getTime() > new Date().getTime()) { if (time != null && time.getTime() > new Date().getTime()) {
SimpleDateFormat formatter = new SimpleDateFormat("ss mm HH dd MM ? yyyy"); SimpleDateFormat formatter = new SimpleDateFormat("ss mm HH dd MM ? yyyy");
String cronDate = formatter.format(time); String cronDate = formatter.format(time);
log.debug("addJob==jobName==" + jobName); log.error("addJob==jobName==" + jobName);
QuartzManager.addJob(jobName, jobType, id, getJobInstance(name).getClass(), cronDate); QuartzManager.addJob(jobName, jobType, id, getJobInstance(name).getClass(), cronDate);
} }
} }
...@@ -151,6 +151,7 @@ public class JobService implements IJobService { ...@@ -151,6 +151,7 @@ public class JobService implements IJobService {
statusList.add(PlanTaskFinishStatusEnum.UNDERWAY.getValue()); statusList.add(PlanTaskFinishStatusEnum.UNDERWAY.getValue());
List<PlanTask> planTaskList = iPlanTaskDao.findAllByFinishStatusIn(statusList); List<PlanTask> planTaskList = iPlanTaskDao.findAllByFinishStatusIn(statusList);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
log.error("项目初始化执行开始添加定时任务监控========");
planTaskList.forEach(planTask -> { planTaskList.forEach(planTask -> {
try { try {
Date beginTime = sdf.parse(planTask.getBeginTime()); Date beginTime = sdf.parse(planTask.getBeginTime());
...@@ -262,42 +263,28 @@ public class JobService implements IJobService { ...@@ -262,42 +263,28 @@ public class JobService implements IJobService {
} }
String realNames = ""; String realNames = "";
FeignClientResult<List<Map<String, Object>>> agencyUserModelsDate = jcsFeignClient.selectByAmosOrgIdDeptList(planTask.getUserId());
List<Map<String, Object>> agencyUserModels = agencyUserModelsDate.getResult();
FeignClientResult<List<Map<String, Object>>> departmentModeldate = jcsFeignClient.selectByIdDeptList(deptIds.toString().substring(0, deptIds.toString().length() - 1));
List<Map<String, Object>> departmentModels = departmentModeldate.getResult();
if (!agencyUserModels.isEmpty()) {
realNames = agencyUserModels.stream().map(map -> map.get("bizOrgName").toString()).collect(Collectors.joining(","));
userName.append(realNames);
}
if (!departmentModels.isEmpty()) {
String departmentName = departmentModels.stream().map(map -> map.get("bizOrgName").toString()).collect(Collectors.joining(","));
deptName.append(departmentName);
}
} else { } else {
String realNames = ""; String realNames = "";
deptId.append(planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1)).append(","); // deptMap.put(planTask.getUserDept().split(","), planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1));
deptMap.put(planTask.getUserDept().substring(0, planTask.getUserDept().indexOf("@")), planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1)); //
// FeignClientResult<List<Map<String, Object>>> departmentModeldate = jcsFeignClient.selectByIdDeptList(deptMap.get(planTask.getUserId()));
FeignClientResult<List<Map<String, Object>>> departmentModeldate = jcsFeignClient.selectByIdDeptList(deptMap.get(planTask.getUserId())); // List<Map<String, Object>> departmentModel = departmentModeldate.getResult();
List<Map<String, Object>> departmentModel = departmentModeldate.getResult(); //
// if (departmentModel.size() > 0) {
if (departmentModel.size() > 0) { // departmentModel.stream().forEach(model -> {
departmentModel.stream().forEach(model -> { // deptName.append(model.get("bizOrgName").toString());
deptName.append(model.get("bizOrgName").toString()); // });
}); // } else {
} else { // deptName.append("其他").append(",");
deptName.append("其他").append(","); // }
}
FeignClientResult<List<Map<String, Object>>> agencyUserModelsDate = jcsFeignClient.selectByAmosOrgIdDeptList(planTask.getUserId());
List<Map<String, Object>> agencyUserModels = agencyUserModelsDate.getResult();
if (!agencyUserModels.isEmpty()) { // FeignClientResult<List<Map<String, Object>>> agencyUserModelsDate = jcsFeignClient.selectByAmosOrgIdDeptList(planTask.getUserId());
realNames = agencyUserModels.stream().map(map -> map.get("bizOrgName").toString()).collect(Collectors.joining(",")); // List<Map<String, Object>> agencyUserModels = agencyUserModelsDate.getResult();
} //
// if (!agencyUserModels.isEmpty()) {
// realNames = agencyUserModels.stream().map(map -> map.get("bizOrgName").toString()).collect(Collectors.joining(","));
// }
userName.append(realNames); userName.append(realNames);
} }
...@@ -420,7 +407,7 @@ public class JobService implements IJobService { ...@@ -420,7 +407,7 @@ public class JobService implements IJobService {
* @param planTask * @param planTask
*/ */
public void createCheckRecord(PlanTask planTask) { public void createCheckRecord(PlanTask planTask) {
List<PlanTaskPointInputItemBo> planTaskPointInputItems = planTaskMapper.getPlanTaskPointInputItemByPlanTaskId(planTask.getId(), PlanTaskDetailStatusEnum.OMISSION.getValue()); List<PlanTaskPointInputItemBo> planTaskPointInputItems = planTaskMapper.getPlanTaskPointInputItemByPlanTaskId(planTask.getId(), PlanTaskDetailStatusEnum.NOTSTARTED.getValue());
Map<Long, Check> checkMap = new HashMap<>(); Map<Long, Check> checkMap = new HashMap<>();
Set<Long> checkIds = new HashSet<Long>(); Set<Long> checkIds = new HashSet<Long>();
Map<String, String> deptMap = new HashMap<>(); Map<String, String> deptMap = new HashMap<>();
...@@ -431,8 +418,8 @@ public class JobService implements IJobService { ...@@ -431,8 +418,8 @@ public class JobService implements IJobService {
List<String> ids = Arrays.asList(planTask.getUserId().split(",")); List<String> ids = Arrays.asList(planTask.getUserId().split(","));
List<String> depts = Arrays.asList(planTask.getUserDept().split(",")); List<String> depts = Arrays.asList(planTask.getUserDept().split(","));
depts.stream().forEach(dept -> { depts.stream().forEach(dept -> {
deptMap.put(dept.substring(0, dept.indexOf("@")), dept.substring(dept.indexOf("@") + 1)); deptMap.put(dept.split("@")[0], dept.split("@")[2]);
deptId.append(dept.substring(dept.indexOf("@") + 1)).append(","); // deptId.append(dept.substring(dept.indexOf("@") + 1)).append(",");
}); });
Set<String> departmentOrgCode = new HashSet<>(); Set<String> departmentOrgCode = new HashSet<>();
for (String key : deptMap.keySet()) { for (String key : deptMap.keySet()) {
...@@ -448,32 +435,15 @@ public class JobService implements IJobService { ...@@ -448,32 +435,15 @@ public class JobService implements IJobService {
FeignClientResult<AgencyUserModel> agencyUserModelsDate = Privilege.agencyUserClient.queryByUserId(planTask.getUserId()); FeignClientResult<AgencyUserModel> agencyUserModelsDate = Privilege.agencyUserClient.queryByUserId(planTask.getUserId());
AgencyUserModel agencyUserModel = agencyUserModelsDate.getResult(); AgencyUserModel agencyUserModel = agencyUserModelsDate.getResult();
// FeignClientResult<List<Map<String, Object>>> departmentModeldate = jcsFeignClient.selectByIdDeptList(deptIds.toString().substring(0, deptIds.toString().length() - 1));
// List<Map<String, Object>> departmentModels = departmentModeldate.getResult();
if (agencyUserModel != null) { if (agencyUserModel != null) {
realNames = agencyUserModel.getRealName().join(","); realNames = agencyUserModel.getRealName().join(",");
userName.append(realNames); userName.append(realNames);
} }
// if (!departmentModels.isEmpty()) {
//// String departmentName = departmentModels.stream().map(map -> map.get("bizOrgName").toString()).collect(Collectors.joining(","));
//// deptName.append(departmentName);
// }
} else { } else {
String realNames = ""; String realNames = "";
deptId.append(planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1)).append(","); deptId.append(planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1)).append(",");
deptMap.put(planTask.getUserDept().substring(0, planTask.getUserDept().indexOf("@")), planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1)); deptMap.put(planTask.getUserDept().substring(0, planTask.getUserDept().indexOf("@")), planTask.getUserDept().substring(planTask.getUserDept().indexOf("@") + 1));
// FeignClientResult<List<Map<String, Object>>> departmentModeldate = jcsFeignClient.selectByIdDeptList(deptMap.get(planTask.getUserId()));
// List<Map<String, Object>> departmentModel = departmentModeldate.getResult();
//
// if (departmentModel.size() > 0) {
// departmentModel.stream().forEach(model -> {
// deptName.append(model.get("bizOrgName").toString());
// });
// } else {
// deptName.append("其他").append(",");
// }
FeignClientResult<AgencyUserModel> agencyUserModelsDate = Privilege.agencyUserClient.queryByUserId(planTask.getUserId()); FeignClientResult<AgencyUserModel> agencyUserModelsDate = Privilege.agencyUserClient.queryByUserId(planTask.getUserId());
AgencyUserModel agencyUserModel = agencyUserModelsDate.getResult(); AgencyUserModel agencyUserModel = agencyUserModelsDate.getResult();
...@@ -498,8 +468,8 @@ public class JobService implements IJobService { ...@@ -498,8 +468,8 @@ public class JobService implements IJobService {
} else { } else {
check.setUserName(userName.toString()); check.setUserName(userName.toString());
} }
// check.setDepId(deptId.toString().substring(0, deptId.length() - 1));
// check.setDepName(deptName.toString()); check.setDepName(deptName.toString());
check.setPointId(arg.getPointId()); check.setPointId(arg.getPointId());
check.setPointName(arg.getPointName()); check.setPointName(arg.getPointName());
...@@ -543,17 +513,7 @@ public class JobService implements IJobService { ...@@ -543,17 +513,7 @@ public class JobService implements IJobService {
} }
// String usrIds = planTask.getUserId();
// if (!ObjectUtils.isEmpty(usrIds)) {
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
// String[] ids = usrIds.split(",");
// for (String userId : usrIds.split(",")) {
// if (ObjectUtils.isEmpty(userId)) {
// continue;
// }
// planTaskMapper.reformStatistics(userId, sdf.format(new Date()), planTask.getOrgCode());
// }
// }
} }
private void removeJob(String jobName) { private void removeJob(String jobName) {
......
...@@ -553,14 +553,14 @@ ...@@ -553,14 +553,14 @@
<select id="planCount" resultType="Map"> <select id="planCount" resultType="Map">
SELECT SELECT
SUM ( CASE WHEN pt.finish_status = '0' THEN ( CASE WHEN pl.plan_type = #{type} THEN 1 ELSE 0 END) ELSE 0 END ) notStart, SUM ( CASE WHEN pt.finish_status = '0' or pt.finish_status = '1' THEN ( CASE WHEN pl.plan_type = #{type} THEN 1 ELSE 0 END) ELSE 0 END ) notStart,
SUM ( CASE WHEN pt.finish_status = '2' THEN ( CASE WHEN pl.plan_type = #{type} THEN ( CASE WHEN pt.risk_status = '1' THEN 1 ELSE 0 END) ELSE 0 END) ELSE 0 END ) riskEnd, SUM ( CASE WHEN pt.finish_status = '2' THEN ( CASE WHEN pl.plan_type = #{type} THEN ( CASE WHEN pt.risk_status = '1' THEN 1 ELSE 0 END) ELSE 0 END) ELSE 0 END ) riskEnd,
SUM ( CASE WHEN pt.finish_status = '2' THEN ( CASE WHEN pl.plan_type = #{type} THEN ( CASE WHEN pt.risk_status = '2' THEN 1 ELSE 0 END) ELSE 0 END) ELSE 0 END ) noRiskEnd, SUM ( CASE WHEN pt.finish_status = '2' THEN ( CASE WHEN pl.plan_type = #{type} THEN ( CASE WHEN pt.risk_status = '2' THEN 1 ELSE 0 END) ELSE 0 END) ELSE 0 END ) noRiskEnd,
SUM ( CASE WHEN pt.finish_status = '3' THEN ( CASE WHEN pl.plan_type = #{type} THEN 1 ELSE 0 END) ELSE 0 END ) timeOut, SUM ( CASE WHEN pt.finish_status = '3' THEN ( CASE WHEN pl.plan_type = #{type} THEN 1 ELSE 0 END) ELSE 0 END ) timeOut,
( (
CASE CASE
WHEN '2' = #{type} ( LEFT ( #{checkTime}, 5 )|| (1+date_part('week',pt.begin_time) - date_part('week', pt.begin_time - ((date_part('day',pt.begin_time)))::interval)) ) ELSE ( DATE_FORMAT ( pt.check_date, ( CASE WHEN '1' = '2' THEN '%Y-%m-%d' ELSE'%Y-%m' END ) ) ) WHEN '2' = #{type} THEN ( (1+date_part('week',pt.begin_time) - date_part('week', pt.begin_time - ((date_part('day',pt.begin_time)))::interval)) )
END ELSE ( CASE WHEN '1' = #{type} THEN DATE_FORMAT ( pt.check_date, '%Y-%m-%d' ) ELSE ( substr( DATE_FORMAT ( pt.check_date, '%Y-%m' ) , 6)) END ) END
) stime, ) stime,
pl.plan_type as type pl.plan_type as type
FROM FROM
...@@ -569,7 +569,7 @@ ...@@ -569,7 +569,7 @@
pl.plan_type = #{type} pl.plan_type = #{type}
<if test="type!=null and type==1">AND DATE_FORMAT(pt.check_date, '%Y-%m') = left(#{checkTime}, 7) </if> <if test="type!=null and type==1">AND DATE_FORMAT(pt.check_date, '%Y-%m') = left(#{checkTime}, 7) </if>
<if test="type!=null and type==2">AND DATE_FORMAT(pt.check_date, '%Y-%m') = left(#{checkTime}, 7)</if> <if test="type!=null and type==2">AND DATE_FORMAT(pt.check_date, '%Y-%m') = left(#{checkTime}, 7)</if>
<if test="type!=null and type==3">DATE_FORMAT(pt.check_date, '%Y') = left(#{checkTime}, 4)</if> <if test="type!=null and type==3">AND DATE_FORMAT(pt.check_date, '%Y') = left(#{checkTime}, 4)</if>
<if test="userId!=null and userId!=0">AND FIND_IN_SET(#{userId}, pt.user_id)>0</if> <if test="userId!=null and userId!=0">AND FIND_IN_SET(#{userId}, pt.user_id)>0</if>
<!-- <if test="orgCode!=null">AND org_code LIKE #{orgCode}</if>--> <!-- <if test="orgCode!=null">AND org_code LIKE #{orgCode}</if>-->
<if test="orgCode!=null">AND pt.org_code LIKE concat(#{orgCode}::text,'%') </if> <if test="orgCode!=null">AND pt.org_code LIKE concat(#{orgCode}::text,'%') </if>
......
...@@ -673,7 +673,7 @@ ...@@ -673,7 +673,7 @@
ppt.user_id userId, ppt.user_id userId,
ppt.user_name userName, ppt.user_name userName,
pptd.status pointStatus, pptd.status pointStatus,
pptd.is_finish taskStatus ppt.finish_status taskStatus
FROM FROM
p_plan_task_detail pptd p_plan_task_detail pptd
LEFT JOIN p_plan_task ppt ON pptd.task_no = ppt.id LEFT JOIN p_plan_task ppt ON pptd.task_no = ppt.id
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment