Commit c53d8586 authored by suhuiguang's avatar suhuiguang

1.逻辑bug,修改之前任务下有多个点提交后,再次使用一键提交,之前手工提交的点会被覆盖掉bug

parent e9e755c4
...@@ -19,4 +19,6 @@ public interface PlanTaskDetailMapper extends BaseMapper { ...@@ -19,4 +19,6 @@ public interface PlanTaskDetailMapper extends BaseMapper {
List<ESTaskDetailDto> findAllByTaskNos(@Param("ids") String ids); List<ESTaskDetailDto> findAllByTaskNos(@Param("ids") String ids);
PlanTaskDetail selectOne(Long planTaskId, Long pointId); PlanTaskDetail selectOne(Long planTaskId, Long pointId);
List<PlanTaskDetail> findAllByIdIn(@Param("planTaskIds") List<Long> planTaskNo);
} }
...@@ -195,7 +195,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -195,7 +195,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
@Autowired @Autowired
private TzsFeign tzsFeign; private TzsFeign tzsFeign;
@Autowired @Autowired
PointMapper pointMapper; PointMapper pointMapper;
...@@ -1755,7 +1755,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1755,7 +1755,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
// 1.数组准备:查询要一键提交的任务及更新状态 // 1.数组准备:查询要一键提交的任务及更新状态
CompletableFuture<List<PlanTask>> planTasksFuture = CompletableFuture.supplyAsync(() -> iplanTaskDao.findAllByIdIn(planTaskIdsList), asyncServiceExecutor); CompletableFuture<List<PlanTask>> planTasksFuture = CompletableFuture.supplyAsync(() -> iplanTaskDao.findAllByIdIn(planTaskIdsList), asyncServiceExecutor);
// 2.数组准备:查询未完成状态的任务明细及更新状态 // 2.数组准备:查询未完成状态的任务明细及更新状态
CompletableFuture<List<PlanTaskDetail>> planTaskDetailsFuture = CompletableFuture.supplyAsync(() -> planTaskDetailMapper.findAllByIdInAndStatus(planTaskIdsList, PlanTaskDetailStatusEnum.NOTSTARTED.getValue()), asyncServiceExecutor); CompletableFuture<List<PlanTaskDetail>> planTaskDetailsFuture = CompletableFuture.supplyAsync(() -> planTaskDetailMapper.findAllByIdIn(planTaskIdsList), asyncServiceExecutor);
// 3.数组准备: es存储数据组装1 // 3.数组准备: es存储数据组装1
CompletableFuture<List<ESTaskDetailDto>> allESTaskDetailDtosFuture = CompletableFuture.supplyAsync(() -> this.queryTaskDetailEs(planTaskIds), asyncServiceExecutor); CompletableFuture<List<ESTaskDetailDto>> allESTaskDetailDtosFuture = CompletableFuture.supplyAsync(() -> this.queryTaskDetailEs(planTaskIds), asyncServiceExecutor);
// 4.数组准备: es存储数据组装2 // 4.数组准备: es存储数据组装2
...@@ -1765,8 +1765,8 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1765,8 +1765,8 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
List<PlanTaskDetail> planTaskDetails = planTaskDetailsFuture.join(); List<PlanTaskDetail> planTaskDetails = planTaskDetailsFuture.join();
List<ESTaskDetailDto> esTaskDetailDtos = allESTaskDetailDtosFuture.join(); List<ESTaskDetailDto> esTaskDetailDtos = allESTaskDetailDtosFuture.join();
List<ESPlanTaskListDto> esPlanTaskListDtos = esPlanTaskListDtosFuture.join(); List<ESPlanTaskListDto> esPlanTaskListDtos = esPlanTaskListDtosFuture.join();
finishPlanTask(planTasks, planTaskDetails);
buildESTaskDetailDtoData2(esTaskDetailDtos, planTaskDetails); buildESTaskDetailDtoData2(esTaskDetailDtos, planTaskDetails);
finishPlanTask(planTasks, planTaskDetails);
buildESPlanTaskListDtoData2(esPlanTaskListDtos, esTaskDetailDtos, planTaskDetails); buildESPlanTaskListDtoData2(esPlanTaskListDtos, esTaskDetailDtos, planTaskDetails);
saveMustData(esTaskDetailDtos, esPlanTaskListDtos, planTasks); saveMustData(esTaskDetailDtos, esPlanTaskListDtos, planTasks);
this.sendInsertMessage(planTasks, planTaskDetails); this.sendInsertMessage(planTasks, planTaskDetails);
...@@ -1795,7 +1795,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1795,7 +1795,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
planTask.setRiskStatus(XJConstant.NORISK_NUM); planTask.setRiskStatus(XJConstant.NORISK_NUM);
} }
}); });
planTaskDetails.forEach(planTaskDetail -> { planTaskDetails.stream().filter(p-> PlanTaskDetailStatusEnum.NOTSTARTED.getValue().equals(p.getStatus())).forEach(planTaskDetail -> {
planTaskDetail.setStatus(PlanTaskDetailStatusEnum.QUALIFIED.getValue()); planTaskDetail.setStatus(PlanTaskDetailStatusEnum.QUALIFIED.getValue());
}); });
} }
...@@ -1925,7 +1925,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -1925,7 +1925,7 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
// 查询所有的 // 查询所有的
Map<Long, ESTaskDetailDto> esTaskDetailDtoMap = allESTaskDetailDtos.stream().collect(Collectors.toMap(ESTaskDetailDto::getId, Function.identity())); Map<Long, ESTaskDetailDto> esTaskDetailDtoMap = allESTaskDetailDtos.stream().collect(Collectors.toMap(ESTaskDetailDto::getId, Function.identity()));
// 只更新未完成状态 // 只更新未完成状态
planTaskDetails.forEach(planTaskDetail -> { planTaskDetails.stream().filter(p-> PlanTaskDetailStatusEnum.NOTSTARTED.getValue().equals(p.getStatus())).forEach(planTaskDetail -> {
ESTaskDetailDto esTaskDetailDto = esTaskDetailDtoMap.get(planTaskDetail.getId()); ESTaskDetailDto esTaskDetailDto = esTaskDetailDtoMap.get(planTaskDetail.getId());
JSONObject appCheckInput = esTaskDetailDto.getAppCheckInput(); JSONObject appCheckInput = esTaskDetailDto.getAppCheckInput();
Map<String, List<Map<String, Object>>> mapList = (Map<String, List<Map<String, Object>>>) JSON.parse(appCheckInput.toJSONString()); Map<String, List<Map<String, Object>>> mapList = (Map<String, List<Map<String, Object>>>) JSON.parse(appCheckInput.toJSONString());
......
...@@ -30,6 +30,16 @@ ...@@ -30,6 +30,16 @@
pptd.task_no in <foreach collection="planTaskIds" item="planTaskId" index="index" open="(" separator="," close=")" >#{planTaskId}</foreach> pptd.task_no in <foreach collection="planTaskIds" item="planTaskId" index="index" open="(" separator="," close=")" >#{planTaskId}</foreach>
and pptd.status = #{status} and pptd.status = #{status}
</select> </select>
<select id="findAllByIdIn" resultType="com.yeejoin.amos.patrol.dao.entity.PlanTaskDetail">
select
pptd.*,
pp.name,
pp.point_no
from
"p_plan_task_detail" pptd LEFT JOIN p_point pp ON pp."id"=pptd.point_id
where
pptd.task_no in <foreach collection="planTaskIds" item="planTaskId" index="index" open="(" separator="," close=")" >#{planTaskId}</foreach>
</select>
<select id="findAllByTaskNos" resultType="com.yeejoin.amos.patrol.dao.entity.PlanTaskDetail"> <select id="findAllByTaskNos" resultType="com.yeejoin.amos.patrol.dao.entity.PlanTaskDetail">
select select
pptd.id pptd.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