Explorar el Código

调整关于【邀请报工】后,周转后,daywork列表显示的时机

zhuangdezheng hace 1 año
padre
commit
83136eac72

+ 5 - 1
src/main/java/cn/ezhizao/project/business/product/controller/BizDayworkController.java

@@ -211,6 +211,9 @@ public class BizDayworkController extends BaseController {
                     .collect(Collectors.toList());
             // 获取最后一条报工明细
             BizDayworkItem latest = currentDayworkItems.get(0);
+            // 获取最后一条非周转报工,通过过滤掉“4”状态的报工明细,获取到最新的一条非“4”状态的报工明细,避免后续的与 < 5 的条件冲突
+            BizDayworkItem latestNoTurnover = currentDayworkItems.stream().filter(v -> v.getStatus().compareTo("4") < 0)
+                    .max(Comparator.comparing(BizDayworkItem::getCreateTime)).orElse(new BizDayworkItem());
             String status = currentDayworkItems.stream().filter(v -> v.getTechnologicalProcessDetailId().equals(latest.getTechnologicalProcessDetailId()))
                     .collect(Collectors.toList())
                     .get(0)
@@ -221,7 +224,8 @@ public class BizDayworkController extends BaseController {
 
             // 判断最后一道报工记录的部门id,与当前登录者的部门id相同,并且状态 < 5
             // 状态 == 5 时,说明已经进入周转中,那么该条daywork,将不再页面中显示,所以,通过对status的值的判断,添加到daywork集合中
-            if (latest.getDeptId().equals(deptId) && Integer.parseInt(status) < 5) {
+            // 最后一条非周转报工的工段为当前工段。
+            if (latestNoTurnover.getDeptId().equals(deptId) && Integer.parseInt(status) < 5) {
                 // 获取当前操作者自己的报工记录
                 List<BizDayworkItem> currentMyDayworkItems = myDayworkItems.stream()
                         .filter(di -> di.getDayworkId().equals(item.getId()))

+ 1 - 1
src/main/java/cn/ezhizao/project/business/product/controller/BizDayworkItemController.java

@@ -281,7 +281,7 @@ public class BizDayworkItemController extends BaseController {
         //人员只能看到最近的一条报工记录中工序的报工
         List<BizDayworkItem> itemList = new ArrayList<>();
         Long processId = 0L;
-        if (list.size() > 0) {
+        if (!list.isEmpty()) {
             processId = list.get(0).getProcessId();
         }
         if(!list.isEmpty()) {