|
@@ -42,6 +42,7 @@ import java.time.Month;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
|
import java.util.stream.Collectors;
|
|
|
+import java.util.stream.Stream;
|
|
|
|
|
|
/**
|
|
|
* 本月委托工单Controller
|
|
@@ -193,20 +194,24 @@ public class WorkOrderCurrentController extends BaseController {
|
|
|
//如果下月工单没有被修改则可以委托
|
|
|
// 添加下一月
|
|
|
DateTime currentMonth = DateTime.of(entrust.getWorkMonth());
|
|
|
-
|
|
|
+ List<Long> notNeedWorkIds = null;
|
|
|
List<BizEntrust> list = bizEntrustService.list(new LambdaQueryWrapper<BizEntrust>()
|
|
|
.eq(BizEntrust::getDeleted, 0)
|
|
|
.eq(BizEntrust::getWorkMonth, currentMonth.offset(DateField.MONTH, 1).toSqlDate())
|
|
|
- .eq(BizEntrust::getFromTenantId, entrust.getFromTenantId())
|
|
|
+
|
|
|
.in(BizEntrust::getWorkOrderId, entrust.getWorkOrderIds()));
|
|
|
- List<Long> needWorkIds = list.stream().filter(l ->
|
|
|
- {
|
|
|
- Long updaterId = l.getCreatorId();
|
|
|
- SysUser sysUser = userService.selectUserById(Long.valueOf(updaterId));
|
|
|
- return sysUser == null ? true : false;
|
|
|
- }
|
|
|
- ).map(l -> l.getWorkOrderId()).collect(Collectors.toList());
|
|
|
- status = status && addEntrust(needWorkIds, currentMonth.offset(DateField.MONTH, 1).toSqlDate(), entrust.getToTenantId());
|
|
|
+
|
|
|
+ notNeedWorkIds = list.stream().filter(l ->
|
|
|
+ {
|
|
|
+ Long updaterId = l.getCreatorId();
|
|
|
+ SysUser sysUser = userService.selectUserById(Long.valueOf(updaterId));
|
|
|
+ return sysUser != null ? true : false;
|
|
|
+ }
|
|
|
+ ).map(l -> l.getWorkOrderId()).collect(Collectors.toList());
|
|
|
+ List<Long> finalNotNeedWorkIds = notNeedWorkIds;
|
|
|
+ List<Long> needWorkIds = entrust.getWorkOrderIds().stream().filter(l -> !finalNotNeedWorkIds.contains(l)).collect(Collectors.toList());
|
|
|
+
|
|
|
+ status = status && addEntrust(needWorkIds, currentMonth.toSqlDate(), entrust.getToTenantId());
|
|
|
// 添加委托
|
|
|
return toAjax(status);
|
|
|
}
|