|
@@ -19,7 +19,9 @@ import cn.ezhizao.project.business.workOrder.domain.vo.EntrustRes;
|
|
import cn.ezhizao.project.business.workOrder.domain.vo.EntrustVo;
|
|
import cn.ezhizao.project.business.workOrder.domain.vo.EntrustVo;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderService;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderService;
|
|
import cn.ezhizao.project.system.domain.SysCurrentMonth;
|
|
import cn.ezhizao.project.system.domain.SysCurrentMonth;
|
|
|
|
+import cn.ezhizao.project.system.domain.SysUser;
|
|
import cn.ezhizao.project.system.service.ISysCurrentMonthService;
|
|
import cn.ezhizao.project.system.service.ISysCurrentMonthService;
|
|
|
|
+import cn.ezhizao.project.system.service.ISysUserService;
|
|
import cn.ezhizao.project.tenant.domain.Tenant;
|
|
import cn.ezhizao.project.tenant.domain.Tenant;
|
|
import cn.ezhizao.project.tenant.service.ITenantService;
|
|
import cn.ezhizao.project.tenant.service.ITenantService;
|
|
import cn.hutool.core.date.DateField;
|
|
import cn.hutool.core.date.DateField;
|
|
@@ -60,7 +62,8 @@ public class WorkOrderCurrentController extends BaseController {
|
|
ITenantService tenantService;
|
|
ITenantService tenantService;
|
|
@Resource
|
|
@Resource
|
|
IBizCompanyService bizCompanyService;
|
|
IBizCompanyService bizCompanyService;
|
|
-
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private ISysUserService userService;
|
|
|
|
|
|
/**
|
|
/**
|
|
* 查询工单信息列表
|
|
* 查询工单信息列表
|
|
@@ -82,15 +85,15 @@ public class WorkOrderCurrentController extends BaseController {
|
|
// if (months.isEmpty()) {
|
|
// if (months.isEmpty()) {
|
|
// return getDataTable(new ArrayList<>());
|
|
// return getDataTable(new ArrayList<>());
|
|
// } else {
|
|
// } else {
|
|
- BizEntrust bizEntrust = new BizEntrust();
|
|
|
|
- bizEntrust.setWorkOrderIds(list.stream().map(BizWorkOrder::getId).collect(Collectors.toList()));
|
|
|
|
- bizEntrust.setWorkMonth(DateTime.of(bizWorkOrder.getCurrentMonth()).toSqlDate());
|
|
|
|
- List<BizEntrust> entrusts = bizEntrustService.getList(bizEntrust);
|
|
|
|
|
|
+ BizEntrust bizEntrust = new BizEntrust();
|
|
|
|
+ bizEntrust.setWorkOrderIds(list.stream().map(BizWorkOrder::getId).collect(Collectors.toList()));
|
|
|
|
+ bizEntrust.setWorkMonth(DateTime.of(bizWorkOrder.getCurrentMonth()).toSqlDate());
|
|
|
|
+ List<BizEntrust> entrusts = bizEntrustService.getList(bizEntrust);
|
|
// bizEntrustService.query().in("work_order_id", list.stream().map(BizWorkOrder::getId).collect(Collectors.toList())).eq("work_month", months.get(0).getYear() + "-" + months.get(0).getMonth() + "-01").list();
|
|
// bizEntrustService.query().in("work_order_id", list.stream().map(BizWorkOrder::getId).collect(Collectors.toList())).eq("work_month", months.get(0).getYear() + "-" + months.get(0).getMonth() + "-01").list();
|
|
- list.forEach(l -> {
|
|
|
|
- l.setEntrust(entrusts.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).findFirst().orElse(null));
|
|
|
|
- });
|
|
|
|
- return getDataTable(list);
|
|
|
|
|
|
+ list.forEach(l -> {
|
|
|
|
+ l.setEntrust(entrusts.stream().filter(v -> v.getWorkOrderId().equals(l.getId())).findFirst().orElse(null));
|
|
|
|
+ });
|
|
|
|
+ return getDataTable(list);
|
|
// }
|
|
// }
|
|
}
|
|
}
|
|
|
|
|
|
@@ -187,9 +190,23 @@ public class WorkOrderCurrentController extends BaseController {
|
|
public AjaxResult addEntrust(@RequestBody BizEntrust entrust) {
|
|
public AjaxResult addEntrust(@RequestBody BizEntrust entrust) {
|
|
// 添加本月
|
|
// 添加本月
|
|
boolean status = addEntrust(entrust.getWorkOrderIds(), entrust.getWorkMonth(), entrust.getToTenantId());
|
|
boolean status = addEntrust(entrust.getWorkOrderIds(), entrust.getWorkMonth(), entrust.getToTenantId());
|
|
|
|
+ //如果下月工单没有被修改则可以委托
|
|
// 添加下一月
|
|
// 添加下一月
|
|
DateTime currentMonth = DateTime.of(entrust.getWorkMonth());
|
|
DateTime currentMonth = DateTime.of(entrust.getWorkMonth());
|
|
- status = status && addEntrust(entrust.getWorkOrderIds(), currentMonth.offset(DateField.MONTH, 1).toSqlDate(), entrust.getToTenantId());
|
|
|
|
|
|
+
|
|
|
|
+ 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());
|
|
// 添加委托
|
|
// 添加委托
|
|
return toAjax(status);
|
|
return toAjax(status);
|
|
}
|
|
}
|
|
@@ -481,10 +498,29 @@ public class WorkOrderCurrentController extends BaseController {
|
|
public AjaxResult delEntrust(@RequestBody BizEntrust bizEntrust) {
|
|
public AjaxResult delEntrust(@RequestBody BizEntrust bizEntrust) {
|
|
List<BizEntrust> entrustList = bizEntrustService.getList(bizEntrust);
|
|
List<BizEntrust> entrustList = bizEntrustService.getList(bizEntrust);
|
|
DateTime currentMonth = DateTime.of(bizEntrust.getWorkMonth());
|
|
DateTime currentMonth = DateTime.of(bizEntrust.getWorkMonth());
|
|
|
|
+ List<BizEntrust> nextEntrustList = new ArrayList<>();
|
|
bizEntrust.setWorkMonth(currentMonth.offset(DateField.MONTH, 1).toSqlDate());
|
|
bizEntrust.setWorkMonth(currentMonth.offset(DateField.MONTH, 1).toSqlDate());
|
|
- List<BizEntrust> nextEntrustList = bizEntrustService.getList(bizEntrust);
|
|
|
|
|
|
+ List<BizEntrust> list = bizEntrustService.list(new LambdaQueryWrapper<BizEntrust>()
|
|
|
|
+ .eq(BizEntrust::getDeleted, 0)
|
|
|
|
+ .eq(BizEntrust::getWorkMonth, currentMonth.offset(DateField.MONTH, 1).toSqlDate())
|
|
|
|
+ .in(BizEntrust::getWorkOrderId, bizEntrust.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());
|
|
|
|
+ if (!needWorkIds.isEmpty()) {
|
|
|
|
+ bizEntrust.setWorkOrderIds(needWorkIds);
|
|
|
|
+ nextEntrustList = bizEntrustService.getList(bizEntrust);
|
|
|
|
+ } else {
|
|
|
|
+ nextEntrustList = null;
|
|
|
|
+ }
|
|
|
|
|
|
- boolean status = (entrustList.isEmpty() || bizEntrustService.removeByIds(entrustList.stream().map(BizEntrust::getId).collect(Collectors.toList()))) && (nextEntrustList.isEmpty() || bizEntrustService.removeByIds(nextEntrustList.stream().map(BizEntrust::getId).collect(Collectors.toList())));
|
|
|
|
|
|
+ boolean status = (entrustList.isEmpty() ||
|
|
|
|
+ bizEntrustService.removeByIds(entrustList.stream().map(BizEntrust::getId).collect(Collectors.toList()))) && (CollectionUtils.isEmpty(nextEntrustList) ||
|
|
|
|
+ bizEntrustService.removeByIds(nextEntrustList.stream().map(BizEntrust::getId).collect(Collectors.toList())));
|
|
// 取消委托
|
|
// 取消委托
|
|
return toAjax(status);
|
|
return toAjax(status);
|
|
}
|
|
}
|
|
@@ -511,7 +547,7 @@ public class WorkOrderCurrentController extends BaseController {
|
|
|
|
|
|
// 获取上月的委托
|
|
// 获取上月的委托
|
|
List<BizEntrust> entrusts = bizEntrustService.query().eq("tenant_id", getTenantId()).eq("work_month", nextMonthDate.toSqlDate()).list();
|
|
List<BizEntrust> entrusts = bizEntrustService.query().eq("tenant_id", getTenantId()).eq("work_month", nextMonthDate.toSqlDate()).list();
|
|
- List<BizEntrust> entr = new ArrayList<>(entrusts) ;
|
|
|
|
|
|
+ List<BizEntrust> entr = new ArrayList<>(entrusts);
|
|
//将到截至月的委托去掉
|
|
//将到截至月的委托去掉
|
|
for (BizEntrust b : entr) {
|
|
for (BizEntrust b : entr) {
|
|
List<BizWorkOrder> workOrder = bizWorkOrderService.query().eq("id", b.getWorkOrderId()).list();
|
|
List<BizWorkOrder> workOrder = bizWorkOrderService.query().eq("id", b.getWorkOrderId()).list();
|
|
@@ -525,7 +561,7 @@ public class WorkOrderCurrentController extends BaseController {
|
|
calendar.set(Calendar.DAY_OF_MONTH, 1);
|
|
calendar.set(Calendar.DAY_OF_MONTH, 1);
|
|
Date currentMonthDate = new java.sql.Date(calendar.getTime().getTime());
|
|
Date currentMonthDate = new java.sql.Date(calendar.getTime().getTime());
|
|
if (!workOrder.isEmpty()) {
|
|
if (!workOrder.isEmpty()) {
|
|
- if(workOrder.get(0).getIsStop() == 1 || (currentMonthDate == workOrder.get(0).getEndMonth())){
|
|
|
|
|
|
+ if (workOrder.get(0).getIsStop() == 1 || (currentMonthDate == workOrder.get(0).getEndMonth())) {
|
|
entrusts.removeIf(s -> s.getWorkOrderId().equals(b.getWorkOrderId()));
|
|
entrusts.removeIf(s -> s.getWorkOrderId().equals(b.getWorkOrderId()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -605,9 +641,10 @@ public class WorkOrderCurrentController extends BaseController {
|
|
}
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|
|
+
|
|
@Anonymous
|
|
@Anonymous
|
|
@PostMapping("/test")
|
|
@PostMapping("/test")
|
|
- public void test(@RequestBody List<Tenant> storeList){
|
|
|
|
|
|
+ public void test(@RequestBody List<Tenant> storeList) {
|
|
for (Tenant tenant : storeList) {
|
|
for (Tenant tenant : storeList) {
|
|
System.out.println(tenant.getId());
|
|
System.out.println(tenant.getId());
|
|
System.out.println(tenant.getAccountName());
|
|
System.out.println(tenant.getAccountName());
|