Commit f48ba754 authored by tianbo's avatar tianbo

两个规定-一键提交修改

parent f831ac0d
...@@ -11,12 +11,28 @@ import com.yeejoin.amos.patrol.business.dao.mapper.PlanTaskMapper; ...@@ -11,12 +11,28 @@ import com.yeejoin.amos.patrol.business.dao.mapper.PlanTaskMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper; import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper;
import com.yeejoin.amos.patrol.business.dao.repository.ESPlanTaskList; import com.yeejoin.amos.patrol.business.dao.repository.ESPlanTaskList;
import com.yeejoin.amos.patrol.business.dao.repository.ICheckInputDao; import com.yeejoin.amos.patrol.business.dao.repository.ICheckInputDao;
import com.yeejoin.amos.patrol.business.dto.*; import com.yeejoin.amos.patrol.business.dto.CheckDto;
import com.yeejoin.amos.patrol.business.dto.SendToMsgRiskAlarmInfoVo;
import com.yeejoin.amos.patrol.business.dto.SendToMsgRiskDetailVo;
import com.yeejoin.amos.patrol.business.dto.SendToMsgRiskEquipInfoVo;
import com.yeejoin.amos.patrol.business.dto.TopicEntityVo;
import com.yeejoin.amos.patrol.business.param.CheckInfoPageParam; import com.yeejoin.amos.patrol.business.param.CheckInfoPageParam;
import com.yeejoin.amos.patrol.business.param.CheckRecordParam; import com.yeejoin.amos.patrol.business.param.CheckRecordParam;
import com.yeejoin.amos.patrol.business.param.CheckStatisticalParam; import com.yeejoin.amos.patrol.business.param.CheckStatisticalParam;
import com.yeejoin.amos.patrol.business.service.intfc.*; import com.yeejoin.amos.patrol.business.service.intfc.ICheckService;
import com.yeejoin.amos.patrol.business.util.*; import com.yeejoin.amos.patrol.business.service.intfc.IMessageService;
import com.yeejoin.amos.patrol.business.service.intfc.IPlanTaskService;
import com.yeejoin.amos.patrol.business.service.intfc.IPointService;
import com.yeejoin.amos.patrol.business.service.intfc.ISafety3DDataSendService;
import com.yeejoin.amos.patrol.business.util.CheckPageParamUtil;
import com.yeejoin.amos.patrol.business.util.CheckParamUtil;
import com.yeejoin.amos.patrol.business.util.CommonResponse;
import com.yeejoin.amos.patrol.business.util.CommonResponseUtil;
import com.yeejoin.amos.patrol.business.util.DaoCriteria;
import com.yeejoin.amos.patrol.business.util.FileHelper;
import com.yeejoin.amos.patrol.business.util.ResponseHelperUtil;
import com.yeejoin.amos.patrol.business.util.Toke;
import com.yeejoin.amos.patrol.business.util.ToolUtils;
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;
...@@ -44,11 +60,15 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -44,11 +60,15 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.util.StopWatch;
import org.springframework.web.context.request.RequestAttributes; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.context.RequestContext; import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
...@@ -56,13 +76,23 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper; ...@@ -56,13 +76,23 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import javax.xml.transform.*; import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamSource;
import java.io.*; import java.io.ByteArrayInputStream;
import java.util.*; import java.io.File;
import java.util.concurrent.CompletableFuture; import java.io.FileInputStream;
import java.util.stream.Collectors; import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController @RestController
@RequestMapping(value = "/api/check") @RequestMapping(value = "/api/check")
...@@ -585,10 +615,14 @@ public class CheckController extends AbstractBaseController { ...@@ -585,10 +615,14 @@ public class CheckController extends AbstractBaseController {
@RequestParam(required = false) String checkTime, @RequestParam(required = false) String checkTime,
@RequestParam(required = true) String type) { @RequestParam(required = true) String type) {
try { try {
StopWatch stopWatch = new StopWatch();
stopWatch.start();
String userId = RequestContext.getExeUserId(); String userId = RequestContext.getExeUserId();
ReginParams reginParams = getSelectedOrgInfo(); ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = reginParams.getPersonIdentity().getBizOrgCode(); String loginOrgCode = reginParams.getPersonIdentity().getBizOrgCode();
stopWatch.stop();
log.info("获取巡检日历数据=====> loginOrgCode time: {}", stopWatch.getTotalTimeSeconds());
if(StringUtils.isBlank(checkTime)) { if(StringUtils.isBlank(checkTime)) {
if(type.equals(String.valueOf(PlanTaskTypeStatusEnum.month.getValue()))) { if(type.equals(String.valueOf(PlanTaskTypeStatusEnum.month.getValue()))) {
checkTime = DateUtils.dateFormat(new Date(), DateUtils.YEAR_PATTERN); checkTime = DateUtils.dateFormat(new Date(), DateUtils.YEAR_PATTERN);
...@@ -596,8 +630,10 @@ public class CheckController extends AbstractBaseController { ...@@ -596,8 +630,10 @@ public class CheckController extends AbstractBaseController {
checkTime = DateUtils.dateFormat(new Date(), DateUtils.MONTH_PATTERN); checkTime = DateUtils.dateFormat(new Date(), DateUtils.MONTH_PATTERN);
} }
} }
stopWatch.start();
Map<String, Object> map = checkService.checkCalendarNew(checkTime,loginOrgCode,String.valueOf(PlanTaskTypeStatusEnum.getValue(type)),userId); Map<String, Object> map = checkService.checkCalendarNew(checkTime,loginOrgCode,String.valueOf(PlanTaskTypeStatusEnum.getValue(type)),userId);
stopWatch.stop();
log.info("获取巡检日历数据=====> sql map time: {}", stopWatch.getTotalTimeSeconds());
return ResponseHelper.buildResponse(map); return ResponseHelper.buildResponse(map);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
......
...@@ -5,8 +5,6 @@ import com.alibaba.fastjson.JSON; ...@@ -5,8 +5,6 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.google.common.base.Joiner; import com.google.common.base.Joiner;
import com.google.common.base.Stopwatch;
import com.sun.corba.se.impl.activation.RepositoryImpl;
import com.yeejoin.amos.boot.biz.common.constants.RuleConstant; import com.yeejoin.amos.boot.biz.common.constants.RuleConstant;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
...@@ -18,14 +16,32 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; ...@@ -18,14 +16,32 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.DepartmentModel; import com.yeejoin.amos.feign.privilege.model.DepartmentModel;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.patrol.business.constants.XJConstant; import com.yeejoin.amos.patrol.business.constants.XJConstant;
import com.yeejoin.amos.patrol.business.dao.mapper.*; import com.yeejoin.amos.patrol.business.dao.mapper.CheckMapper;
import com.yeejoin.amos.patrol.business.dao.repository.*; import com.yeejoin.amos.patrol.business.dao.mapper.PlanMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PlanTaskDetailMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PlanTaskMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper;
import com.yeejoin.amos.patrol.business.dao.repository.ESPlanTaskList;
import com.yeejoin.amos.patrol.business.dao.repository.ESTaskDetail;
import com.yeejoin.amos.patrol.business.dao.repository.ICheckDao;
import com.yeejoin.amos.patrol.business.dao.repository.ICheckShotDao;
import com.yeejoin.amos.patrol.business.dao.repository.IInputItemDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanTaskDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanTaskDetailDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanTaskHistoryDao;
import com.yeejoin.amos.patrol.business.dao.repository.IRouteDao;
import com.yeejoin.amos.patrol.business.dao.repository.IRoutePointDao;
import com.yeejoin.amos.patrol.business.dao.repository.RepositoryTs;
import com.yeejoin.amos.patrol.business.dto.MsgRo; import com.yeejoin.amos.patrol.business.dto.MsgRo;
import com.yeejoin.amos.patrol.business.dto.PlanTaskStaticDto; import com.yeejoin.amos.patrol.business.dto.PlanTaskStaticDto;
import com.yeejoin.amos.patrol.business.dto.UserDetailsDto; import com.yeejoin.amos.patrol.business.dto.UserDetailsDto;
import com.yeejoin.amos.patrol.business.entity.mybatis.CheckChkExListBo; import com.yeejoin.amos.patrol.business.entity.mybatis.CheckChkExListBo;
import com.yeejoin.amos.patrol.business.entity.mybatis.PointCheckDetailBo; import com.yeejoin.amos.patrol.business.entity.mybatis.PointCheckDetailBo;
import com.yeejoin.amos.patrol.business.feign.*; import com.yeejoin.amos.patrol.business.feign.Business;
import com.yeejoin.amos.patrol.business.feign.IdxFeign;
import com.yeejoin.amos.patrol.business.feign.JcsFeignClient;
import com.yeejoin.amos.patrol.business.feign.TzsFeign;
import com.yeejoin.amos.patrol.business.param.CheckPtListPageParam; import com.yeejoin.amos.patrol.business.param.CheckPtListPageParam;
import com.yeejoin.amos.patrol.business.param.PlanTaskPageParam; import com.yeejoin.amos.patrol.business.param.PlanTaskPageParam;
import com.yeejoin.amos.patrol.business.service.intfc.ICheckService; import com.yeejoin.amos.patrol.business.service.intfc.ICheckService;
...@@ -34,10 +50,18 @@ import com.yeejoin.amos.patrol.business.service.intfc.IPlanService; ...@@ -34,10 +50,18 @@ import com.yeejoin.amos.patrol.business.service.intfc.IPlanService;
import com.yeejoin.amos.patrol.business.service.intfc.IPlanTaskService; import com.yeejoin.amos.patrol.business.service.intfc.IPlanTaskService;
import com.yeejoin.amos.patrol.business.util.MyByteArrayMultipartFile; import com.yeejoin.amos.patrol.business.util.MyByteArrayMultipartFile;
import com.yeejoin.amos.patrol.business.util.PlanTaskUtil; import com.yeejoin.amos.patrol.business.util.PlanTaskUtil;
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.CalDateVo;
import com.yeejoin.amos.patrol.common.enums.*; import com.yeejoin.amos.patrol.business.vo.CodeOrderVo;
import com.yeejoin.amos.patrol.business.vo.DefectVo;
import com.yeejoin.amos.patrol.business.vo.LeavePlanTaskVo;
import com.yeejoin.amos.patrol.business.vo.PlanTaskVo;
import com.yeejoin.amos.patrol.common.enums.NotifyBusinessTypeEum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskDetailIsFinishEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskDetailStatusEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskTheStatusEnum;
import com.yeejoin.amos.patrol.common.enums.PlanTaskTypeStatusEnum;
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;
...@@ -45,17 +69,30 @@ import com.yeejoin.amos.patrol.core.enums.DefectLevelEnum; ...@@ -45,17 +69,30 @@ import com.yeejoin.amos.patrol.core.enums.DefectLevelEnum;
import com.yeejoin.amos.patrol.core.enums.WordTemplateEnum; import com.yeejoin.amos.patrol.core.enums.WordTemplateEnum;
import com.yeejoin.amos.patrol.core.util.DateUtil; import com.yeejoin.amos.patrol.core.util.DateUtil;
import com.yeejoin.amos.patrol.core.util.StringUtil; import com.yeejoin.amos.patrol.core.util.StringUtil;
import com.yeejoin.amos.patrol.dao.entity.*; import com.yeejoin.amos.patrol.dao.entity.Check;
import com.yeejoin.amos.patrol.dao.entity.CheckHistory;
import com.yeejoin.amos.patrol.dao.entity.CheckInput;
import com.yeejoin.amos.patrol.dao.entity.CheckInputHistory;
import com.yeejoin.amos.patrol.dao.entity.CheckShot;
import com.yeejoin.amos.patrol.dao.entity.CheckShotHistory;
import com.yeejoin.amos.patrol.dao.entity.ESPlanTaskListDto;
import com.yeejoin.amos.patrol.dao.entity.ESTaskDetailDto;
import com.yeejoin.amos.patrol.dao.entity.InputItem;
import com.yeejoin.amos.patrol.dao.entity.Plan;
import com.yeejoin.amos.patrol.dao.entity.PlanTask;
import com.yeejoin.amos.patrol.dao.entity.PlanTaskDetail;
import com.yeejoin.amos.patrol.dao.entity.PlanTaskDetailHistory;
import com.yeejoin.amos.patrol.dao.entity.PlanTaskHistory;
import com.yeejoin.amos.patrol.dao.entity.Route;
import com.yeejoin.amos.patrol.dao.entity.StaticDay;
import com.yeejoin.amos.patrol.dao.entity.StaticMonth;
import com.yeejoin.amos.patrol.dao.entity.StaticWeek;
import com.yeejoin.amos.patrol.exception.YeeException; import com.yeejoin.amos.patrol.exception.YeeException;
import com.yeejoin.amos.patrol.feign.RemoteSecurityService; import com.yeejoin.amos.patrol.feign.RemoteSecurityService;
import com.yeejoin.amos.patrol.quartz.IJobService; import com.yeejoin.amos.patrol.quartz.IJobService;
import liquibase.pro.packaged.S;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.compress.utils.Lists; import org.apache.commons.compress.utils.Lists;
import org.apache.commons.compress.utils.Sets; import org.apache.commons.compress.utils.Sets;
//import org.apache.shardingsphere.driver.jdbc.core.datasource.ShardingSphereDataSource;
//import org.apache.shardingsphere.transaction.annotation.ShardingSphereTransactionType;
//import org.apache.shardingsphere.transaction.core.TransactionType;
import org.apache.lucene.queryparser.classic.QueryParser; import org.apache.lucene.queryparser.classic.QueryParser;
import org.elasticsearch.action.search.SearchRequest; import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.action.search.SearchResponse;
...@@ -64,7 +101,6 @@ import org.elasticsearch.client.RestHighLevelClient; ...@@ -64,7 +101,6 @@ import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.index.query.BoolQueryBuilder; import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder; import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.search.sort.SortOrder;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -98,7 +134,6 @@ import java.io.File; ...@@ -98,7 +134,6 @@ import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.IOException; import java.io.IOException;
import java.io.UnsupportedEncodingException; import java.io.UnsupportedEncodingException;
import java.sql.Timestamp;
import java.sql.Connection; import java.sql.Connection;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
...@@ -108,7 +143,20 @@ import java.text.ParseException; ...@@ -108,7 +143,20 @@ import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.ZoneId; import java.time.ZoneId;
import java.util.*; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
...@@ -138,6 +186,9 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -138,6 +186,9 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
@Autowired @Autowired
PlanTaskDetailMapper planTaskDetailMapper; PlanTaskDetailMapper planTaskDetailMapper;
@Autowired @Autowired
IInputItemDao inputItemDao;
@Autowired
private CheckMapper checkMapper; private CheckMapper checkMapper;
@Autowired @Autowired
PlanMapper planMapper; PlanMapper planMapper;
...@@ -1510,17 +1561,26 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1510,17 +1561,26 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void handleAll(String id,String userId) { public void handleAll(String id,String userId) {
StopWatch stopWatch = new StopWatch();
stopWatch.start();
Optional<PlanTask> planTaskOptional = iplanTaskDao.findById(Long.valueOf(id)); Optional<PlanTask> planTaskOptional = iplanTaskDao.findById(Long.valueOf(id));
PlanTask planTask = planTaskOptional.get(); PlanTask planTask = planTaskOptional.get();
stopWatch.stop();
log.info("一键提交=========> 获取planTask耗时 :{}s", stopWatch.getTotalTimeSeconds());
if(planTask.getFinishStatus() == XJConstant.TASK_STATUS_DEAL) { if(planTask.getFinishStatus() == XJConstant.TASK_STATUS_DEAL) {
planTask.setFinishStatus(XJConstant.TASK_STATUS_FINISH); planTask.setFinishStatus(XJConstant.TASK_STATUS_FINISH);
if(planTask.getRiskStatus() != 1) { if(planTask.getRiskStatus() != 1) {
planTask.setRiskStatus(XJConstant.NORISK_NUM); planTask.setRiskStatus(XJConstant.NORISK_NUM);
} }
stopWatch.start();
iplanTaskDao.saveAndFlush(planTask); iplanTaskDao.saveAndFlush(planTask);
stopWatch.stop();
log.info("一键提交=========> 更新planTask耗时 :{}s", stopWatch.getTotalTimeSeconds());
stopWatch.start();
// 生成巡检记录 // 生成巡检记录
jobService.createCheckRecord(planTask, userId); jobService.createCheckRecord(planTask, userId);
stopWatch.stop();
log.info("一键提交=========> 生成createCheckRecord检记录耗时 :{}s", stopWatch.getTotalTimeSeconds());
// 更新统计表 // 更新统计表
if(planTask.getPlanType().equals(String.valueOf(PlanTaskTypeStatusEnum.day.getValue()))) { if(planTask.getPlanType().equals(String.valueOf(PlanTaskTypeStatusEnum.day.getValue()))) {
...@@ -1536,8 +1596,10 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1536,8 +1596,10 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
XJConstant.NORISK_NUM == planTask.getRiskStatus() ? 1 : 0, XJConstant.NORISK_NUM == planTask.getRiskStatus() ? 1 : 0,
planTask.getOrgCode(),planTask.getCheckDate()); planTask.getOrgCode(),planTask.getCheckDate());
} }
stopWatch.start();
List<PlanTaskDetail> planTaskDetails = iPlanTaskDetailDao.findAllByTaskNoAndStatus(planTask.getId(), PlanTaskDetailStatusEnum.NOTSTARTED.getValue()); List<PlanTaskDetail> planTaskDetails = iPlanTaskDetailDao.findAllByTaskNoAndStatus(planTask.getId(), PlanTaskDetailStatusEnum.NOTSTARTED.getValue());
stopWatch.stop();
log.info("一键提交=========> planTaskDetails 耗时: {}s", stopWatch.getTotalTimeSeconds());
List<ESTaskDetailDto> esTaskDetailDtos = new ArrayList<>(); List<ESTaskDetailDto> esTaskDetailDtos = new ArrayList<>();
if (!planTaskDetails.isEmpty()) { if (!planTaskDetails.isEmpty()) {
...@@ -1547,10 +1609,45 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1547,10 +1609,45 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
iPlanTaskDetailDao.saveAndFlush(action); iPlanTaskDetailDao.saveAndFlush(action);
planTaskDetailMapper.finishTaskDetail(action.getId(), action.getPointId(), planTaskDetailMapper.finishTaskDetail(action.getId(), action.getPointId(),
action.getPlanTask().getId(), userId); action.getPlanTask().getId(), userId);
AppPointCheckRespone appPointCheckRespone = planService.queryPointPlanTaskDetail(null, null, null, action.getTaskNo(), action.getPointId()); // AppPointCheckRespone appPointCheckRespone = planService.queryPointPlanTaskDetail(null, null, null, action.getTaskNo(), action.getPointId());
ESTaskDetailDto esTaskDetailDto = esTaskDetail.findById(String.valueOf(appPointCheckRespone.getId())).get(); ESTaskDetailDto esTaskDetailDto = esTaskDetail.findById(String.valueOf(action.getId())).get();
JSONObject appCheckInput = esTaskDetailDto.getAppCheckInput();
Map<String,List<Map<String,Object>>> mapList = (Map<String,List<Map<String,Object>>>)JSON.parse(appCheckInput.toJSONString());
List<AppCheckInputRespone> appCheckInputRespones = new ArrayList<>();
for (Map<String,Object> map : mapList.get("items")) {
AppCheckInputRespone appCheckInputRespone = new AppCheckInputRespone();
BeanUtils.copyProperties(appCheckInputRespone, map);
Long checkInputId = Long.valueOf(map.get("checkInputId").toString());
InputItem inputItem = inputItemDao.findById(checkInputId).get();
CheckInput checkInput = new CheckInput();
String itemType = String.valueOf(map.get("itemType"));
if (XJConstant.INPUT_ITEM_SELECT.equals(itemType)) {
checkInput = paraseSelect(checkInput, String.valueOf(map.get("dataJson")));
appCheckInputRespone = JSONObject.parseObject(toJSONString(checkInput),
AppCheckInputRespone.class);
} else if (XJConstant.INPUT_ITEM_NUMBER.equals(itemType)) {
appCheckInputRespone.setInputValue(inputItem.getDefaultValue());
} else if (XJConstant.INPUT_ITEM_TEXT.equals(itemType)) {
appCheckInputRespone.setInputValue(inputItem.getDefaultValue());
}
appCheckInputRespone.setPointInputImgUrls(new ArrayList<>() );
appCheckInputRespones.add(appCheckInputRespone);
}
appCheckInput.put("items", appCheckInputRespones);
esTaskDetailDto.setPointImgUrls(new ArrayList<>());
esTaskDetailDto.setAppCheckInput(appCheckInput);
esTaskDetailDto.setPointStatus(String.valueOf(PlanTaskDetailIsFinishEnum.FINISHED.getValue()));
esTaskDetail.save(esTaskDetailDto);
JSONObject jsonObject = jobService.getCheckInput(routId, action.getPointId(), "update", null); JSONObject jsonObject = jobService.getCheckInput(routId, action.getPointId(), "update", null);
appPointCheckRespone.setAppCheckInput(jsonObject); esTaskDetailDto.setAppCheckInput(jsonObject);
esTaskDetailDto.setPointImgUrls(new ArrayList<>()); esTaskDetailDto.setPointImgUrls(new ArrayList<>());
esTaskDetailDtos.add(esTaskDetailDto); esTaskDetailDtos.add(esTaskDetailDto);
return action; return action;
......
...@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON; ...@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.serializer.SerializerFeature;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.component.feign.config.InnerInvokException; import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.robot.AmosRequestContext; import com.yeejoin.amos.component.robot.AmosRequestContext;
...@@ -14,8 +13,23 @@ import com.yeejoin.amos.feign.systemctl.Systemctl; ...@@ -14,8 +13,23 @@ import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.MessageModel; import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.patrol.business.bo.PlanTaskSyncBo; import com.yeejoin.amos.patrol.business.bo.PlanTaskSyncBo;
import com.yeejoin.amos.patrol.business.constants.XJConstant; import com.yeejoin.amos.patrol.business.constants.XJConstant;
import com.yeejoin.amos.patrol.business.dao.mapper.*; import com.yeejoin.amos.patrol.business.dao.mapper.CheckInputMapper;
import com.yeejoin.amos.patrol.business.dao.repository.*; import com.yeejoin.amos.patrol.business.dao.mapper.CheckMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.MsgMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PlanTaskMapper;
import com.yeejoin.amos.patrol.business.dao.mapper.PointMapper;
import com.yeejoin.amos.patrol.business.dao.repository.ESPlanTaskList;
import com.yeejoin.amos.patrol.business.dao.repository.ESTaskDetail;
import com.yeejoin.amos.patrol.business.dao.repository.ICheckDao;
import com.yeejoin.amos.patrol.business.dao.repository.ICheckInputDao;
import com.yeejoin.amos.patrol.business.dao.repository.IInputItemDao;
import com.yeejoin.amos.patrol.business.dao.repository.IMsgDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanTaskDao;
import com.yeejoin.amos.patrol.business.dao.repository.IPlanTaskDetailDao;
import com.yeejoin.amos.patrol.business.dao.repository.IRoutePointDao;
import com.yeejoin.amos.patrol.business.dao.repository.ITaskDao;
import com.yeejoin.amos.patrol.business.dao.repository.ITaskFeedbackDao;
import com.yeejoin.amos.patrol.business.entity.mybatis.PlanTaskPointInputItemBo; import com.yeejoin.amos.patrol.business.entity.mybatis.PlanTaskPointInputItemBo;
import com.yeejoin.amos.patrol.business.entity.mybatis.PointCheckDetailBo; import com.yeejoin.amos.patrol.business.entity.mybatis.PointCheckDetailBo;
import com.yeejoin.amos.patrol.business.feign.JcsFeignClient; import com.yeejoin.amos.patrol.business.feign.JcsFeignClient;
...@@ -25,22 +39,33 @@ import com.yeejoin.amos.patrol.business.service.intfc.IMessageService; ...@@ -25,22 +39,33 @@ import com.yeejoin.amos.patrol.business.service.intfc.IMessageService;
import com.yeejoin.amos.patrol.business.service.intfc.IPatrolDataSyncService; import com.yeejoin.amos.patrol.business.service.intfc.IPatrolDataSyncService;
import com.yeejoin.amos.patrol.business.service.intfc.IPlanService; import com.yeejoin.amos.patrol.business.service.intfc.IPlanService;
import com.yeejoin.amos.patrol.business.util.DateUtil; import com.yeejoin.amos.patrol.business.util.DateUtil;
import com.yeejoin.amos.patrol.business.util.Toke; import com.yeejoin.amos.patrol.common.enums.CheckStatusEnum;
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.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.patrol.common.enums.TaskStatusEnum;
import com.yeejoin.amos.patrol.core.async.AsyncTask; import com.yeejoin.amos.patrol.core.async.AsyncTask;
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;
import com.yeejoin.amos.patrol.dao.entity.*; import com.yeejoin.amos.patrol.dao.entity.Check;
import com.yeejoin.amos.patrol.dao.entity.CheckInput;
import com.yeejoin.amos.patrol.dao.entity.ESPlanTaskListDto;
import com.yeejoin.amos.patrol.dao.entity.ESTaskDetailDto;
import com.yeejoin.amos.patrol.dao.entity.InputItem;
import com.yeejoin.amos.patrol.dao.entity.Msg;
import com.yeejoin.amos.patrol.dao.entity.Plan;
import com.yeejoin.amos.patrol.dao.entity.PlanTask;
import com.yeejoin.amos.patrol.dao.entity.PlanTaskDetail;
import com.yeejoin.amos.patrol.dao.entity.Task;
import com.yeejoin.amos.patrol.dao.entity.TaskFeedback;
import com.yeejoin.amos.patrol.feign.RemoteSecurityService; import com.yeejoin.amos.patrol.feign.RemoteSecurityService;
import com.yeejoin.amos.patrol.mqtt.WebMqttComponent; import com.yeejoin.amos.patrol.mqtt.WebMqttComponent;
import liquibase.pro.packaged.S;
import org.quartz.Job; import org.quartz.Job;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -50,8 +75,15 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil; ...@@ -50,8 +75,15 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.Arrays;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.alibaba.fastjson.JSON.toJSONString; import static com.alibaba.fastjson.JSON.toJSONString;
......
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