终检过程检 排序
This commit is contained in:
parent
08953ad7cb
commit
7cefab756a
@ -164,8 +164,10 @@ public interface TaskDispatchDetailMapper extends BaseMapperX<TaskDispatchDetail
|
|||||||
.groupBy(TaskDispatchDetailDO::getId)
|
.groupBy(TaskDispatchDetailDO::getId)
|
||||||
.disableSubLogicDel();
|
.disableSubLogicDel();
|
||||||
if (reqVO.getProcedureStatusList().size()==1 && reqVO.getProcedureStatusList().get(0)==2){
|
if (reqVO.getProcedureStatusList().size()==1 && reqVO.getProcedureStatusList().get(0)==2){
|
||||||
|
//完工降序
|
||||||
query.orderByDesc(TaskDispatchDO::getCode);
|
query.orderByDesc(TaskDispatchDO::getCode);
|
||||||
}else {
|
}else {
|
||||||
|
//未完工升序
|
||||||
query.orderByAsc(TaskDispatchDO::getCode);
|
query.orderByAsc(TaskDispatchDO::getCode);
|
||||||
}
|
}
|
||||||
if (CollUtil.isNotEmpty(postIds)) {
|
if (CollUtil.isNotEmpty(postIds)) {
|
||||||
|
@ -345,7 +345,7 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
|
|||||||
List<TaskDispatchDetailDO> list = taskDispatchDetailDOPageResult.getList();
|
List<TaskDispatchDetailDO> list = taskDispatchDetailDOPageResult.getList();
|
||||||
List<TaskDispatchDetailDO> afterList = new ArrayList<>();
|
List<TaskDispatchDetailDO> afterList = new ArrayList<>();
|
||||||
if (CollUtil.isNotEmpty(list)){
|
if (CollUtil.isNotEmpty(list)){
|
||||||
Map<Long, List<TaskDispatchDetailDO>> collect = list.stream().collect(Collectors.groupingBy(TaskDispatchDetailDO::getId));
|
Map<String, List<TaskDispatchDetailDO>> collect = list.stream().collect(Collectors.groupingBy(TaskDispatchDetailDO::getDispatchCode));
|
||||||
collect.forEach((code,list2)->{
|
collect.forEach((code,list2)->{
|
||||||
list2.sort(Comparator.comparing(TaskDispatchDetailDO::getSort, Comparator.nullsLast(Integer::compareTo)));
|
list2.sort(Comparator.comparing(TaskDispatchDetailDO::getSort, Comparator.nullsLast(Integer::compareTo)));
|
||||||
afterList.addAll(list2);
|
afterList.addAll(list2);
|
||||||
@ -470,30 +470,47 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
|
|||||||
case FINISH:
|
case FINISH:
|
||||||
taskDispatchDetailDO.setProcedureStatus(TaskDispatchProcedureStatusEnum.COMPLETED.getCode());
|
taskDispatchDetailDO.setProcedureStatus(TaskDispatchProcedureStatusEnum.COMPLETED.getCode());
|
||||||
// TaskDispatchDO taskDispatchDO = taskDispatchMapper.selectById(taskDispatchDetailDO.getDispatchId());
|
// TaskDispatchDO taskDispatchDO = taskDispatchMapper.selectById(taskDispatchDetailDO.getDispatchId());
|
||||||
|
List<Long> idsProduction = new ArrayList<>();
|
||||||
|
List<Long> idsAssemble = new ArrayList<>();
|
||||||
List<TaskDispatchDO> taskDispatchDOS = taskDispatchMapper.selectList(TaskDispatchDO::getPlanId, taskDispatchDO.getPlanId());
|
List<TaskDispatchDO> taskDispatchDOS = taskDispatchMapper.selectList(TaskDispatchDO::getPlanId, taskDispatchDO.getPlanId());
|
||||||
if(CollUtil.isNotEmpty(taskDispatchDOS)){
|
if(CollUtil.isNotEmpty(taskDispatchDOS)){
|
||||||
List<Long> ids = taskDispatchDOS.stream()
|
idsAssemble = taskDispatchDOS.stream().filter(e-> e.getDispatchType().equals("ASSEMBLE"))
|
||||||
.map(TaskDispatchDO::getId)
|
.map(TaskDispatchDO::getId)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
List<TaskDispatchDetailDO> taskDispatchDetailList = taskDispatchDetailMapper.selectList(new LambdaQueryWrapper<TaskDispatchDetailDO>()
|
idsProduction = taskDispatchDOS.stream().filter(e-> e.getDispatchType().equals("PRODUCTION"))
|
||||||
.in(TaskDispatchDetailDO::getDispatchId, ids));
|
.map(TaskDispatchDO::getId)
|
||||||
boolean isOver = true;
|
.collect(Collectors.toList());
|
||||||
for (TaskDispatchDetailDO dispatchDetailDO : taskDispatchDetailList) {
|
List<TaskDispatchDetailDO> taskDispatchDetailAssembleList = taskDispatchDetailMapper.selectList(new LambdaQueryWrapper<TaskDispatchDetailDO>()
|
||||||
|
.in(TaskDispatchDetailDO::getDispatchId, idsAssemble));
|
||||||
|
List<TaskDispatchDetailDO> taskDispatchDetailProductionList = taskDispatchDetailMapper.selectList(new LambdaQueryWrapper<TaskDispatchDetailDO>()
|
||||||
|
.in(TaskDispatchDetailDO::getDispatchId, idsProduction));
|
||||||
|
|
||||||
|
boolean isProductionOver = true;
|
||||||
|
boolean isAssembleOver = true;
|
||||||
|
for (TaskDispatchDetailDO dispatchDetailDO : taskDispatchDetailAssembleList) {
|
||||||
if (dispatchDetailDO.getId() != taskDispatchDetailDO.getId()){
|
if (dispatchDetailDO.getId() != taskDispatchDetailDO.getId()){
|
||||||
if (dispatchDetailDO.getProcedureStatus()!= TaskDispatchProcedureStatusEnum.COMPLETED.getCode()){
|
if (dispatchDetailDO.getProcedureStatus()!= TaskDispatchProcedureStatusEnum.COMPLETED.getCode()){
|
||||||
isOver = false;
|
isAssembleOver = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (isOver){
|
for (TaskDispatchDetailDO dispatchDetailDO : taskDispatchDetailProductionList) {
|
||||||
|
if (dispatchDetailDO.getId() != taskDispatchDetailDO.getId()){
|
||||||
|
if (dispatchDetailDO.getProcedureStatus()!= TaskDispatchProcedureStatusEnum.COMPLETED.getCode()){
|
||||||
|
isProductionOver = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (taskDispatchDO.getDispatchType().equals("PRODUCTION") && isProductionOver){
|
||||||
|
pgMasterService.insertPgList(planDO.getId(),planDO.getProjectId());
|
||||||
|
}else if (taskDispatchDO.getDispatchType().equals("ASSEMBLE") && isAssembleOver){
|
||||||
|
zjPgMasterService.insertZjList(planDO.getId(),planDO.getProjectId());
|
||||||
|
}
|
||||||
|
if (isProductionOver&&isAssembleOver){
|
||||||
planDO.setStatus(3);
|
planDO.setStatus(3);
|
||||||
planMapper.updateById(planDO);
|
planMapper.updateById(planDO);
|
||||||
if(taskDispatchDO.getDispatchType().equals("ASSEMBLE")){
|
|
||||||
zjPgMasterService.insertZjList(planDO.getId(),planDO.getProjectId());
|
|
||||||
} else if (taskDispatchDO.getDispatchType().equals("PRODUCTION")) {
|
|
||||||
pgMasterService.insertPgList(planDO.getId(),planDO.getProjectId());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
taskDispatchDetailMapper.updateById(taskDispatchDetailDO);
|
taskDispatchDetailMapper.updateById(taskDispatchDetailDO);
|
||||||
|
Loading…
Reference in New Issue
Block a user