|
|
|
@ -443,24 +443,26 @@ public class TaskDispatchServiceImpl implements TaskDispatchService {
|
|
|
|
|
List<TaskDispatchDetailDO> insertDetailList = new ArrayList<>();
|
|
|
|
|
List<TaskDispatchDetailDO> updateDetailList = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
// 根据派工单明细id,根据工序id查找每个负责人是否在拆分表中存在,存在则更新,否则插入
|
|
|
|
|
detailOwnerList.forEach(owner ->{
|
|
|
|
|
detailList.forEach(one ->{
|
|
|
|
|
|
|
|
|
|
owner.getOwners().forEach(m->{
|
|
|
|
|
if(detailList.stream().filter(n ->n.getDetailOwnerId().equals(owner.getId()) && n.getOwner().equals(m) && n.getProcedureId().equals(owner.getProcedureId())).count()==0){
|
|
|
|
|
TaskDispatchDetailDO taskDispatchDetailDO = BeanUtils.toBean(owner,TaskDispatchDetailDO.class);
|
|
|
|
|
taskDispatchDetailDO.setId(null);
|
|
|
|
|
taskDispatchDetailDO.setOwner(m);
|
|
|
|
|
taskDispatchDetailDO.setDetailOwnerId(owner.getId());
|
|
|
|
|
insertDetailList.add(taskDispatchDetailDO);
|
|
|
|
|
}else{
|
|
|
|
|
Long detailId = detailList.stream().filter(n -> n.getDetailOwnerId().equals(owner.getId()) && n.getOwner().equals(m) && n.getProcedureId().equals(owner.getProcedureId())).collect(Collectors.toList()).get(0).getId();
|
|
|
|
|
TaskDispatchDetailDO taskDispatchDetailDO = BeanUtils.toBean(owner,TaskDispatchDetailDO.class);
|
|
|
|
|
taskDispatchDetailDO.setId(detailId);
|
|
|
|
|
updateDetailList.add(taskDispatchDetailDO);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// insertList.forEach(o -> {
|
|
|
|
|
// o.getOwners().forEach(m ->{
|
|
|
|
|
// TaskDispatchDetailDO taskDispatchDetailDO = BeanUtils.toBean(o,TaskDispatchDetailDO.class);
|
|
|
|
|
// taskDispatchDetailDO.setId(null);
|
|
|
|
|
// taskDispatchDetailDO.setOwner(m);
|
|
|
|
|
// insertDetailList.add(taskDispatchDetailDO);
|
|
|
|
|
//// if(detailList.stream().filter(n -> n.getOwner()!=null && n.getOwner().equals(m) && n.getProcedureId().equals(o.getProcedureId())).count()==0){
|
|
|
|
|
//// }
|
|
|
|
|
// });
|
|
|
|
|
// });
|
|
|
|
|
if(!insertDetailList.isEmpty()) taskDispatchDetailMapper.insertBatch(insertDetailList);
|
|
|
|
|
if(!updateDetailList.isEmpty()) taskDispatchDetailMapper.updateBatch(updateDetailList);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void updateTaskDispatchDetailList(Long dispatchId, List<TaskDispatchDetailOwnerDO> list) {
|
|
|
|
|