|
@@ -176,9 +176,9 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
|
|
|
if (l.getRedirect() != null && l.getRedirect()) {
|
|
|
// 重建任务将旧任务停止
|
|
|
workOrders.forEach(v -> v.setIsStop(1));
|
|
|
- changeWorkOrders.addAll(workOrders);
|
|
|
+ stopWorkOrders.addAll(workOrders);
|
|
|
workOrderDetails.forEach(v -> v.setIsStop(1));
|
|
|
- changeWorkOrderDetails.addAll(workOrderDetails);
|
|
|
+ stopWorkOrderDetails.addAll(workOrderDetails);
|
|
|
// 新建新任务。
|
|
|
BizWorkOrder workOrder = new BizWorkOrder();
|
|
|
workOrder.setCompanyId(bizArchiveInput.getCompanyId());
|
|
@@ -242,15 +242,7 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
|
|
|
// 停用的工单判断是否为空
|
|
|
workOrders.forEach(l -> {
|
|
|
BizWorkOrderDetail detail = stopWorkOrderDetails.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).findFirst().orElse(null);
|
|
|
- if (changeWorkOrders.stream().noneMatch(v -> v.getId().equals(l.getId())) && detail != null) {
|
|
|
- BizWorkOrder v = changeWorkOrders.stream().filter(e -> e.getId().equals(l.getId())).findFirst().orElse(l);
|
|
|
- int monthNum = v.getMonthNum() - (detail.getServiceNum() == null ? 0 : detail.getServiceNum()) - (detail.getFreeNum() == null ? 0 : detail.getFreeNum());
|
|
|
- v.setMonthNum(monthNum);
|
|
|
- if (v.getStartMonth() != null) {
|
|
|
- DateTime startMonth = DateTime.of(v.getStartMonth());
|
|
|
- v.setEndMonth(startMonth.offset(DateField.MONTH, monthNum - 1).toSqlDate());
|
|
|
- }
|
|
|
- } else if (detail != null) {
|
|
|
+ if (detail != null) {
|
|
|
int monthNum = l.getMonthNum() - (detail.getServiceNum() == null ? 0 : detail.getServiceNum()) - (detail.getFreeNum() == null ? 0 : detail.getFreeNum());
|
|
|
|
|
|
if (monthNum == 0) {
|
|
@@ -265,14 +257,6 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
|
|
|
changeWorkOrders.add(l);
|
|
|
}
|
|
|
}
|
|
|
-// Integer workMonth = l.getMonthNum() - (detail != null ? detail.getFreeNum() + detail.getServiceNum() : 0);
|
|
|
-// if (workMonth.equals(0)) {
|
|
|
-// l.setIsStop(1);
|
|
|
-// stopWorkOrders.add(l);
|
|
|
-// } else {
|
|
|
-// l.setMonthNum(workMonth);
|
|
|
-// changeWorkOrders.add(l);
|
|
|
-// }
|
|
|
});
|
|
|
}
|
|
|
} else if (bizArchiveInput.getServiceType().equals(2)) {
|
|
@@ -312,7 +296,8 @@ public class BizArchiveInputServiceImpl extends ServiceImpl<BizArchiveInputMappe
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
+ stopWorkOrders.forEach(order -> order.setIsStop(1));
|
|
|
+ stopWorkOrderDetails.forEach(orderDetail -> orderDetail.setIsStop(1));
|
|
|
|
|
|
boolean status = (newWorkOrderDetails.isEmpty() || workOrderDetailService.saveBatch(newWorkOrderDetails))
|
|
|
&& (newWorkOrders.isEmpty() || workOrderService.saveBatch(newWorkOrders))
|