From a3776853fa6ff1c4a9805615a79852d54f700e3f Mon Sep 17 00:00:00 2001 From: zyx <zyx123456> Date: 星期六, 20 七月 2024 09:21:04 +0800 Subject: [PATCH] 增加库位明细导出功能,曾加物料、单据、库存全局搜索功能 --- zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java | 74 +++++++++++++++++++++++++++++++------ 1 files changed, 62 insertions(+), 12 deletions(-) diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java index 9d68acd..bdd232c 100644 --- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java +++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/controller/LocDetlController.java @@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zy.asrs.common.wms.entity.LocDetl; import com.zy.asrs.common.wms.entity.Mat; +import com.zy.asrs.common.wms.entity.Order; import com.zy.asrs.common.wms.service.LocDetlService; import com.zy.asrs.common.wms.service.MatService; import com.zy.asrs.framework.annotations.ManagerAuth; @@ -61,10 +62,54 @@ return R.ok(detls); } - @RequestMapping(value = "/locDetl/{id}/auth") - @ManagerAuth - public R get(@PathVariable("id") String id) { - return R.ok(locDetlService.getById(String.valueOf(id))); +// @RequestMapping(value = "/locDetl/{id}/auth") +// @ManagerAuth +// public R get(@PathVariable("id") String id) { +// +// return R.ok(locDetlService.getById(String.valueOf(id))); +// } + + @RequestMapping(value = "/locDetl/export/auth") + @ManagerAuth(memo = "搴撲綅鏄庣粏瀵煎嚭") + public synchronized R export(@RequestBody JSONObject param){ + List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); + QueryWrapper<LocDetl> wrapper = new QueryWrapper<>(); + Map<String, Object> map = excludeTrash(param.getJSONObject("locDetl")); + String row = ""; + if (map.get("row") != null) { + String chooseRow = (String) map.get("row"); + if (chooseRow.length() == 1) { + row = "0" + chooseRow; + map.remove("row"); + }else { + row = chooseRow; + map.remove("row"); + } + } + convert(map, wrapper); +// if (!row.equals("")){ +// wrapper.and() +// .where("loc_no like '" +row +"%'"); +// } + List<LocDetl> list = locDetlService.list(wrapper); + return R.ok(exportSupport(list, fields)); + } + + private <T> void convert(Map<String, Object> map, QueryWrapper<T> wrapper){ + for (Map.Entry<String, Object> entry : map.entrySet()){ + 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 { + if (entry.getKey().equals("locNo")) { + wrapper.eq("loc_no", String.valueOf(entry.getValue())); + } else { + wrapper.like(entry.getKey(), String.valueOf(entry.getValue())); + } + } + } } @RequestMapping(value = "/locDetl/page/auth") @@ -74,19 +119,24 @@ @RequestParam(required = false) String condition, @RequestParam(required = false) String timeRange, @RequestParam Map<String, Object> param) { - LambdaQueryWrapper<LocDetl> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(LocDetl::getHostId, getHostId()); - if (!Cools.isEmpty(condition)) { - wrapper.like(LocDetl::getLocNo, condition); - } + QueryWrapper<LocDetl> wrapper = new QueryWrapper<>(); + wrapper.eq("host_id", getHostId()); +// if (!Cools.isEmpty(condition)) { +// wrapper.like(LocDetl::getLocNo, condition); +// } if (!Cools.isEmpty(timeRange)) { String[] range = timeRange.split(RANGE_TIME_LINK); - wrapper.ge(LocDetl::getAppeTime, DateUtils.convert(range[0])); - wrapper.le(LocDetl::getAppeTime, DateUtils.convert(range[1])); + wrapper.ge("appe_time", DateUtils.convert(range[0])); + wrapper.le("appe_time", DateUtils.convert(range[1])); } if (!Cools.isEmpty(param.get("locNo"))) { - wrapper.eq(LocDetl::getLocNo, param.get("locNo")); + wrapper.eq("loc_no", param.get("locNo")); } + param.remove("locNo"); + param.remove("owner"); + param.remove("zpallet"); + param.remove("matnr"); + allLike(LocDetl.class, param.keySet(), wrapper, condition); return R.ok(locDetlService.page(new Page<>(curr, limit), wrapper)); } -- Gitblit v1.9.1