|
@@ -29,6 +29,8 @@ import cn.start.tz.module.pressure2.dal.dataobject.equippipeschedulinguser.Equip
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderitem.PipeAppointmentConfirmOrderItemDO;
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderitem.PipeAppointmentConfirmOrderItemDO;
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderitemdetail.PipeAppointmentConfirmOrderItemDetailDO;
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderitemdetail.PipeAppointmentConfirmOrderItemDetailDO;
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderuser.PipeAppointmentConfirmOrderUserDO;
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipeappointmentconfirmorderuser.PipeAppointmentConfirmOrderUserDO;
|
|
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.pipeacceptorderuser.PipeAcceptOrderUserDO;
|
|
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.acceptorder.AcceptOrderDO;
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.boilertaskorder.BoilerTaskOrderDO;
|
|
import cn.start.tz.module.pressure2.dal.dataobject.boilertaskorder.BoilerTaskOrderDO;
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipetaskorderuser.PipeTaskOrderUserDO;
|
|
import cn.start.tz.module.pressure2.dal.dataobject.pipetaskorderuser.PipeTaskOrderUserDO;
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.appointmentconfirmorder.AppointmentConfirmOrderMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.appointmentconfirmorder.AppointmentConfirmOrderMapper;
|
|
@@ -42,6 +44,8 @@ import cn.start.tz.module.pressure2.dal.mysql.equippipeschedulinguser.EquipPipeS
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderitem.PipeAppointmentConfirmOrderItemMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderitem.PipeAppointmentConfirmOrderItemMapper;
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderitemdetail.PipeAppointmentConfirmOrderItemDetailMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderitemdetail.PipeAppointmentConfirmOrderItemDetailMapper;
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderuser.PipeAppointmentConfirmOrderUserMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipeappointmentconfirmorderuser.PipeAppointmentConfirmOrderUserMapper;
|
|
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.pipeacceptorderuser.PipeAcceptOrderUserMapper;
|
|
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.acceptorder.AcceptOrderMapper;
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.boilertaskorder.BoilerTaskOrderMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.boilertaskorder.BoilerTaskOrderMapper;
|
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipetaskorderuser.PipeTaskOrderUserMapper;
|
|
import cn.start.tz.module.pressure2.dal.mysql.pipetaskorderuser.PipeTaskOrderUserMapper;
|
|
|
import cn.start.tz.module.pressure2.service.appointmentconfirmorder.AppointmentConfirmOrderService;
|
|
import cn.start.tz.module.pressure2.service.appointmentconfirmorder.AppointmentConfirmOrderService;
|
|
@@ -152,6 +156,10 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
@Resource
|
|
@Resource
|
|
|
private PipeAppointmentConfirmOrderUserMapper pipeAppointmentConfirmOrderUserMapper;
|
|
private PipeAppointmentConfirmOrderUserMapper pipeAppointmentConfirmOrderUserMapper;
|
|
|
@Resource
|
|
@Resource
|
|
|
|
|
+ private PipeAcceptOrderUserMapper pipeAcceptOrderUserMapper;
|
|
|
|
|
+ @Resource
|
|
|
|
|
+ private AcceptOrderMapper acceptOrderMapper;
|
|
|
|
|
+ @Resource
|
|
|
private BoilerTaskOrderMapper boilerTaskOrderMapper;
|
|
private BoilerTaskOrderMapper boilerTaskOrderMapper;
|
|
|
@Resource
|
|
@Resource
|
|
|
private PipeTaskOrderUserMapper pipeTaskOrderUserMapper;
|
|
private PipeTaskOrderUserMapper pipeTaskOrderUserMapper;
|
|
@@ -598,12 +606,12 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
Set<String> confirmOrderIds = new HashSet<>();
|
|
Set<String> confirmOrderIds = new HashSet<>();
|
|
|
deleteTask.getIds().forEach(scheduleId -> {
|
|
deleteTask.getIds().forEach(scheduleId -> {
|
|
|
EquipPipeSchedulingDO schedulingDO = equipPipeSchedulingMapper.selectById(scheduleId);
|
|
EquipPipeSchedulingDO schedulingDO = equipPipeSchedulingMapper.selectById(scheduleId);
|
|
|
- if (schedulingDO != null && schedulingDO.getConfirmOrderId() != null) {
|
|
|
|
|
|
|
+ confirmOrderIds.add(schedulingDO.getConfirmOrderId());
|
|
|
|
|
+ if (schedulingDO.getConfirmOrderId() != null && schedulingDO.getSourceId() == null) {
|
|
|
// 找出所有同 confirmOrderId 的子排期一起删除
|
|
// 找出所有同 confirmOrderId 的子排期一起删除
|
|
|
List<EquipPipeSchedulingDO> childSchedulings = equipPipeSchedulingMapper.selectList(
|
|
List<EquipPipeSchedulingDO> childSchedulings = equipPipeSchedulingMapper.selectList(
|
|
|
new LambdaQueryWrapperX<EquipPipeSchedulingDO>()
|
|
new LambdaQueryWrapperX<EquipPipeSchedulingDO>()
|
|
|
.eq(EquipPipeSchedulingDO::getConfirmOrderId, schedulingDO.getConfirmOrderId()));
|
|
.eq(EquipPipeSchedulingDO::getConfirmOrderId, schedulingDO.getConfirmOrderId()));
|
|
|
- confirmOrderIds.add(schedulingDO.getConfirmOrderId());
|
|
|
|
|
|
|
|
|
|
for (EquipPipeSchedulingDO child : childSchedulings) {
|
|
for (EquipPipeSchedulingDO child : childSchedulings) {
|
|
|
doDeleteSingleScheduling(child.getId());
|
|
doDeleteSingleScheduling(child.getId());
|
|
@@ -631,7 +639,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
equipPipeDO.setHasYearScheduling(false);
|
|
equipPipeDO.setHasYearScheduling(false);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (!equipIds.isEmpty()) {
|
|
|
|
|
|
|
+ if (!equipIds.isEmpty() && schedulingDO.getSourceId() == null) {
|
|
|
equipPipeMapper.update(equipPipeDO, new LambdaQueryWrapperX<EquipPipeDO>().in(EquipPipeDO::getId, equipIds));
|
|
equipPipeMapper.update(equipPipeDO, new LambdaQueryWrapperX<EquipPipeDO>().in(EquipPipeDO::getId, equipIds));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -646,7 +654,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
equipPipeDetailDO.setHasYearScheduling(false);
|
|
equipPipeDetailDO.setHasYearScheduling(false);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- if (!equipDetailIds.isEmpty()) {
|
|
|
|
|
|
|
+ if (!equipDetailIds.isEmpty() && schedulingDO.getSourceId() == null) {
|
|
|
equipPipeDetailMapper.update(equipPipeDetailDO, new LambdaQueryWrapperX<EquipPipeDetailDO>().in(EquipPipeDetailDO::getId, equipDetailIds));
|
|
equipPipeDetailMapper.update(equipPipeDetailDO, new LambdaQueryWrapperX<EquipPipeDetailDO>().in(EquipPipeDetailDO::getId, equipDetailIds));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1438,15 +1446,17 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
if (sourceItem.getAppointmentId() != null) {
|
|
if (sourceItem.getAppointmentId() != null) {
|
|
|
status = 200; // 待约检
|
|
status = 200; // 待约检
|
|
|
}
|
|
}
|
|
|
- if (sourceItem.getAcceptStatus() != null && sourceItem.getAcceptStatus() == 200) {
|
|
|
|
|
|
|
+ if (sourceItem.getAcceptStatus() != null){
|
|
|
status = 300; // 已受理
|
|
status = 300; // 已受理
|
|
|
}
|
|
}
|
|
|
- if (sourceItem.getTaskStatus() != null) {
|
|
|
|
|
|
|
+ if (sourceItem.getTaskStatus() != null && sourceItem.getTaskStatus() >= 400) {
|
|
|
status = 400; // 检测中
|
|
status = 400; // 检测中
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // TaskStatusEnum: 710办结确认, 800报告办结
|
|
|
|
|
+ if (status >= 400) {
|
|
|
if (sourceItem.getTaskStatus() >= 800) {
|
|
if (sourceItem.getTaskStatus() >= 800) {
|
|
|
- status = 600;
|
|
|
|
|
- } else if (sourceItem.getTaskStatus() >= 710) {
|
|
|
|
|
- status = 500;
|
|
|
|
|
|
|
+ status = 600; // 已办结
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -1698,32 +1708,32 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 7. 复制检验项目 EquipPipeSchedulingCheckDO
|
|
// 7. 复制检验项目 EquipPipeSchedulingCheckDO
|
|
|
- List<EquipPipeSchedulingCheckDO> sourceChecks = equipPipeSchedulingCheckMapper.selectList(
|
|
|
|
|
- EquipPipeSchedulingCheckDO::getSchedulingId, sourceId);
|
|
|
|
|
- if (sourceChecks != null && !sourceChecks.isEmpty()) {
|
|
|
|
|
- List<EquipPipeSchedulingCheckDO> newChecks = new ArrayList<>();
|
|
|
|
|
- for (EquipPipeSchedulingCheckDO sourceCheck : sourceChecks) {
|
|
|
|
|
- EquipPipeSchedulingCheckDO newCheck = new EquipPipeSchedulingCheckDO();
|
|
|
|
|
- cn.hutool.core.bean.BeanUtil.copyProperties(sourceCheck, newCheck, "id", "schedulingId", "createTime", "updateTime", "deleted", "taskOrderId", "acceptOrderId");
|
|
|
|
|
- newCheck.setSchedulingId(newSchedulingId);
|
|
|
|
|
- newChecks.add(newCheck);
|
|
|
|
|
- }
|
|
|
|
|
- equipPipeSchedulingCheckMapper.insert(newChecks);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- // 8. 复制费用 EquipPipeSchedulingFeeDO
|
|
|
|
|
- List<EquipPipeSchedulingFeeDO> sourceFees = equipPipeSchedulingFeeMapper.selectList(
|
|
|
|
|
- EquipPipeSchedulingFeeDO::getSchedulingId, sourceId);
|
|
|
|
|
- if (sourceFees != null && !sourceFees.isEmpty()) {
|
|
|
|
|
- List<EquipPipeSchedulingFeeDO> newFees = new ArrayList<>();
|
|
|
|
|
- for (EquipPipeSchedulingFeeDO sourceFee : sourceFees) {
|
|
|
|
|
- EquipPipeSchedulingFeeDO newFee = new EquipPipeSchedulingFeeDO();
|
|
|
|
|
- cn.hutool.core.bean.BeanUtil.copyProperties(sourceFee, newFee, "id", "schedulingId", "createTime", "updateTime", "deleted");
|
|
|
|
|
- newFee.setSchedulingId(newSchedulingId);
|
|
|
|
|
- newFees.add(newFee);
|
|
|
|
|
- }
|
|
|
|
|
- equipPipeSchedulingFeeMapper.insert(newFees);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+// List<EquipPipeSchedulingCheckDO> sourceChecks = equipPipeSchedulingCheckMapper.selectList(
|
|
|
|
|
+// EquipPipeSchedulingCheckDO::getSchedulingId, sourceId);
|
|
|
|
|
+// if (sourceChecks != null && !sourceChecks.isEmpty()) {
|
|
|
|
|
+// List<EquipPipeSchedulingCheckDO> newChecks = new ArrayList<>();
|
|
|
|
|
+// for (EquipPipeSchedulingCheckDO sourceCheck : sourceChecks) {
|
|
|
|
|
+// EquipPipeSchedulingCheckDO newCheck = new EquipPipeSchedulingCheckDO();
|
|
|
|
|
+// cn.hutool.core.bean.BeanUtil.copyProperties(sourceCheck, newCheck, "id", "schedulingId", "createTime", "updateTime", "deleted", "taskOrderId", "acceptOrderId");
|
|
|
|
|
+// newCheck.setSchedulingId(newSchedulingId);
|
|
|
|
|
+// newChecks.add(newCheck);
|
|
|
|
|
+// }
|
|
|
|
|
+// equipPipeSchedulingCheckMapper.insert(newChecks);
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// // 8. 复制费用 EquipPipeSchedulingFeeDO
|
|
|
|
|
+// List<EquipPipeSchedulingFeeDO> sourceFees = equipPipeSchedulingFeeMapper.selectList(
|
|
|
|
|
+// EquipPipeSchedulingFeeDO::getSchedulingId, sourceId);
|
|
|
|
|
+// if (sourceFees != null && !sourceFees.isEmpty()) {
|
|
|
|
|
+// List<EquipPipeSchedulingFeeDO> newFees = new ArrayList<>();
|
|
|
|
|
+// for (EquipPipeSchedulingFeeDO sourceFee : sourceFees) {
|
|
|
|
|
+// EquipPipeSchedulingFeeDO newFee = new EquipPipeSchedulingFeeDO();
|
|
|
|
|
+// cn.hutool.core.bean.BeanUtil.copyProperties(sourceFee, newFee, "id", "schedulingId", "createTime", "updateTime", "deleted");
|
|
|
|
|
+// newFee.setSchedulingId(newSchedulingId);
|
|
|
|
|
+// newFees.add(newFee);
|
|
|
|
|
+// }
|
|
|
|
|
+// equipPipeSchedulingFeeMapper.insert(newFees);
|
|
|
|
|
+// }
|
|
|
|
|
|
|
|
// 9. 创建新检验员数据
|
|
// 9. 创建新检验员数据
|
|
|
List<EquipPipeSchedulingUserDO> newUsers = new ArrayList<>();
|
|
List<EquipPipeSchedulingUserDO> newUsers = new ArrayList<>();
|
|
@@ -1761,7 +1771,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 同步任务单检验员:收集同一 confirmOrderId 下所有排期的检验员,去重后重建到任务单
|
|
|
|
|
|
|
+ * 同步任务单、约检确认单、受理单检验员:收集同一 confirmOrderId 下所有排期的检验员,去重后重建到各单
|
|
|
*/
|
|
*/
|
|
|
private void syncTaskOrderUsers(String confirmOrderId) {
|
|
private void syncTaskOrderUsers(String confirmOrderId) {
|
|
|
if (confirmOrderId == null || confirmOrderId.isEmpty()) {
|
|
if (confirmOrderId == null || confirmOrderId.isEmpty()) {
|
|
@@ -1791,7 +1801,44 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 3. 找到任务单:通过第一个有约检确认单的排期查找
|
|
|
|
|
|
|
+ // 3. 同步约检确认单用户(confirmOrderId 即约检确认单ID)
|
|
|
|
|
+ pipeAppointmentConfirmOrderUserMapper.delete(new LambdaQueryWrapperX<PipeAppointmentConfirmOrderUserDO>()
|
|
|
|
|
+ .eq(PipeAppointmentConfirmOrderUserDO::getOrderId, confirmOrderId));
|
|
|
|
|
+ if (!dedupedUsers.isEmpty()) {
|
|
|
|
|
+ List<PipeAppointmentConfirmOrderUserDO> confirmOrderUsers = dedupedUsers.stream().map(user -> {
|
|
|
|
|
+ PipeAppointmentConfirmOrderUserDO confirmUser = new PipeAppointmentConfirmOrderUserDO();
|
|
|
|
|
+ confirmUser.setOrderId(confirmOrderId);
|
|
|
|
|
+ confirmUser.setUserId(user.getUserId());
|
|
|
|
|
+ confirmUser.setType(user.getType());
|
|
|
|
|
+ confirmUser.setGroupTeamId(user.getGroupTeamId());
|
|
|
|
|
+ return confirmUser;
|
|
|
|
|
+ }).collect(Collectors.toList());
|
|
|
|
|
+ pipeAppointmentConfirmOrderUserMapper.insert(confirmOrderUsers);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 4. 同步受理单用户(通过 appointmentId = confirmOrderId 查找受理单)
|
|
|
|
|
+ List<AcceptOrderDO> acceptOrders = acceptOrderMapper.selectList(
|
|
|
|
|
+ new LambdaQueryWrapperX<AcceptOrderDO>()
|
|
|
|
|
+ .eq(AcceptOrderDO::getAppointmentId, confirmOrderId));
|
|
|
|
|
+ if (acceptOrders != null && !acceptOrders.isEmpty()) {
|
|
|
|
|
+ for (AcceptOrderDO acceptOrder : acceptOrders) {
|
|
|
|
|
+ pipeAcceptOrderUserMapper.delete(new LambdaQueryWrapperX<PipeAcceptOrderUserDO>()
|
|
|
|
|
+ .eq(PipeAcceptOrderUserDO::getOrderId, acceptOrder.getId()));
|
|
|
|
|
+ if (!dedupedUsers.isEmpty()) {
|
|
|
|
|
+ List<PipeAcceptOrderUserDO> acceptOrderUsers = dedupedUsers.stream().map(user -> {
|
|
|
|
|
+ PipeAcceptOrderUserDO acceptUser = new PipeAcceptOrderUserDO();
|
|
|
|
|
+ acceptUser.setOrderId(acceptOrder.getId());
|
|
|
|
|
+ acceptUser.setUserId(user.getUserId());
|
|
|
|
|
+ acceptUser.setType(user.getType());
|
|
|
|
|
+ acceptUser.setGroupTeamId(user.getGroupTeamId());
|
|
|
|
|
+ return acceptUser;
|
|
|
|
|
+ }).collect(Collectors.toList());
|
|
|
|
|
+ pipeAcceptOrderUserMapper.insert(acceptOrderUsers);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ // 5. 同步任务单用户(通过排期查找任务单)
|
|
|
BoilerTaskOrderDO taskOrder = null;
|
|
BoilerTaskOrderDO taskOrder = null;
|
|
|
for (EquipPipeSchedulingDO scheduling : schedulings) {
|
|
for (EquipPipeSchedulingDO scheduling : schedulings) {
|
|
|
List<AppointmentConfirmOrderDO> appointments = appointmentConfirmOrderMapper.selectList(
|
|
List<AppointmentConfirmOrderDO> appointments = appointmentConfirmOrderMapper.selectList(
|
|
@@ -1810,7 +1857,7 @@ public class EquipPipeSchedulingServiceImpl extends ServiceImpl<EquipPipeSchedul
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- // 4. 删除任务单现有检验员,重建
|
|
|
|
|
|
|
+ // 6. 删除任务单现有检验员,重建
|
|
|
pipeTaskOrderUserMapper.delete(new LambdaQueryWrapperX<PipeTaskOrderUserDO>()
|
|
pipeTaskOrderUserMapper.delete(new LambdaQueryWrapperX<PipeTaskOrderUserDO>()
|
|
|
.eq(PipeTaskOrderUserDO::getOrderId, taskOrder.getId()));
|
|
.eq(PipeTaskOrderUserDO::getOrderId, taskOrder.getId()));
|
|
|
|
|
|