自动化立体仓库 - WMS系统
chen.lin
2026-02-14 371462edc6b3ee1de97c235d4a019b544badda0d
src/main/java/com/zy/asrs/controller/TaskController.java
@@ -39,6 +39,9 @@
                  @RequestParam Map<String, Object> param) {
        EntityWrapper<Task> wrapper = new EntityWrapper<>();
        excludeTrash(param);
        // 移除非表字段参数,避免 SQL 报错「列名 wrk_sts_cb 无效」(agv_task 无此列,多为前端下拉描述字段)
        param.remove("wrk_sts_cb");
        param.remove("wrkStsCb");
        convert(param, wrapper);
        wrapper.eq("is_deleted", 0);
        allLike(Task.class, param.keySet(), wrapper, condition);
@@ -58,6 +61,25 @@
                String[] dates = val.split(RANGE_TIME_LINK);
                wrapper.ge(entry.getKey(), DateUtils.convert(dates[0]));
                wrapper.le(entry.getKey(), DateUtils.convert(dates[1]));
            } else if (val.contains(",") && !Cools.isEmpty(val) && !val.equals("null")) {
                // 多值查询:使用 IN 查询(适用于工作状态等多选场景)
                String[] values = val.split(",");
                List<Object> valueList = new ArrayList<>();
                for (String v : values) {
                    v = v.trim();
                    if (!Cools.isEmpty(v) && !v.equals("null")) {
                        // 尝试转换为数字类型(工作状态是Long类型)
                        try {
                            valueList.add(Long.parseLong(v));
                        } catch (NumberFormatException e) {
                            // 如果不是数字,保持字符串类型
                            valueList.add(v);
                        }
                    }
                }
                if (!valueList.isEmpty()) {
                    wrapper.in(entry.getKey(), valueList);
                }
            } else {
                wrapper.like(entry.getKey(), val);
            }
@@ -104,6 +126,9 @@
        } else if (type == 3) {
            taskService.pickWrkMast(workNo, getUserId());
            return R.ok("工作档已拣料");
        } else if (type == 4) {
            taskService.deleteWrkMast(workNo, getUserId());
            return R.ok("工作档已删除");
        }
        return R.ok();
    }