From 3ad65283c54059e0c61110589fb19398ac3525fe Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 08 七月 2025 08:32:32 +0800
Subject: [PATCH] 完善拣料转全板

---
 src/main/java/com/zy/asrs/controller/WrkDetlController.java |   37 ++++++++++++++++++++++++++-----------
 1 files changed, 26 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/WrkDetlController.java b/src/main/java/com/zy/asrs/controller/WrkDetlController.java
index 07b64bd..a72e176 100644
--- a/src/main/java/com/zy/asrs/controller/WrkDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/WrkDetlController.java
@@ -1,5 +1,6 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -12,14 +13,12 @@
 import com.core.common.R;
 import com.zy.asrs.entity.WrkDetl;
 import com.zy.asrs.service.WrkDetlService;
+import com.zy.common.model.DetlDto;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @RestController
 public class WrkDetlController extends BaseController {
@@ -50,17 +49,33 @@
         } else {
             wrapper.orderBy("appe_time", false);
         }
-        return R.ok(wrkDetlService.selectPage(new Page<>(curr, limit), wrapper));
+        Page<WrkDetl> page = wrkDetlService.selectPage(new Page<>(curr, limit), wrapper);
+        List<WrkDetl> resultRecords = new ArrayList<>();
+        for (WrkDetl record : page.getRecords()) {
+            if (isJSON(record.getOrderNo())) {
+                JSON.parseArray(record.getOrderNo(), DetlDto.class).forEach( detlDto -> {
+                    WrkDetl clone = record.clone();
+                    clone.setOrderNo(detlDto.getOrderNo());
+                    clone.setAnfme(detlDto.getAnfme());
+                    resultRecords.add(clone);
+                });
+            } else {
+                resultRecords.add(record);
+            }
+        }
+
+        return R.ok(page.setRecords(resultRecords));
     }
 
-    private void convert(Map<String, Object> map, EntityWrapper wrapper){
+    private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){
         for (Map.Entry<String, Object> entry : map.entrySet()){
-            if (entry.getKey().endsWith(">")) {
-                wrapper.ge(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue())));
-            } else if (entry.getKey().endsWith("<")) {
-                wrapper.le(Cools.deleteChar(entry.getKey()), DateUtils.convert(String.valueOf(entry.getValue())));
+            String val = String.valueOf(entry.getValue());
+            if (val.contains(RANGE_TIME_LINK)){
+                String[] dates = val.split(RANGE_TIME_LINK);
+                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
+                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
             } else {
-                wrapper.eq(entry.getKey(), String.valueOf(entry.getValue()));
+                wrapper.like(entry.getKey(), val);
             }
         }
     }

--
Gitblit v1.9.1