From 21d0e7ab9d5c7316225a3e9eecf465cd37c9bd85 Mon Sep 17 00:00:00 2001 From: zhang <zc857179121@qq.com> Date: 星期四, 05 六月 2025 14:15:07 +0800 Subject: [PATCH] 123 --- src/main/java/com/zy/asrs/controller/LocDetlController.java | 78 ++++++++++++++++++++++++++++++++++---- 1 files changed, 69 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index acb9beb..944a213 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -48,7 +48,7 @@ return R.ok(); } - @RequestMapping(value = "/locDetl/{id}/auth") + @RequestMapping(value = "/locDetl/{id}/authv2") @ManagerAuth public R get(@PathVariable("id") String id) { return R.ok(locDetlService.selectById(String.valueOf(id))); @@ -185,6 +185,65 @@ @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); + EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); + 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.selectList(wrapper); + List<AbnormalLocDetlParam> result = new ArrayList<>(); + + Page<LocDetl> groupLocDetl = locDetlService.getStockStatis2(toPage(1, 10000, param, LocDetl.class)); + for (LocDetl locDetl : groupLocDetl.getRecords()) { + AbnormalLocDetlParam abnormalLocDetlParam = new AbnormalLocDetlParam(); + Mat mat = matService.selectOne(new EntityWrapper<Mat>() + .eq("matnr", locDetl.getMatnr())); + if (Cools.isEmpty(mat)) { + continue; + } + if (!Cools.isEmpty(mat.getStoreMax()) || !Cools.isEmpty(mat.getStoreMin())) { + abnormalLocDetlParam.setStoreMax(mat.getStoreMax()); + abnormalLocDetlParam.setStoreMaxDate(mat.getStoreMaxDate()); + abnormalLocDetlParam.setStoreMin(mat.getStoreMin()); + abnormalLocDetlParam.setAnfme(locDetl.getAnfme()); + abnormalLocDetlParam.setMaktx(mat.getMaktx()); + abnormalLocDetlParam.setMatnr(mat.getMatnr()); + abnormalLocDetlParam.setSpecs(mat.getSpecs()); + abnormalLocDetlParam.setBatch(locDetl.getBatch()); + +// SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); +// Date maxDate = simple.parse(locDetl.getBatch()); +// long time = maxDate.getTime(); +// Date now = new Date(); +// long time1 = now.getTime(); +// abnormalLocDetlParam.setNowTime((int) ((time1 - time) / (1000 * 60 * 60 * 24))); + + if (!Cools.isEmpty(mat.getStoreMax()) && locDetl.getAnfme() > mat.getStoreMax()) { + result.add(abnormalLocDetlParam); + } else if (!Cools.isEmpty(mat.getStoreMin()) && locDetl.getAnfme() < mat.getStoreMin()) { + result.add(abnormalLocDetlParam); + } + } + } + return R.ok(exportSupport(result, fields)); + } + @RequestMapping(value = "/locDetl/export/auth/v2") + @ManagerAuth(memo = "搴撲綅鏄庣粏瀵煎嚭") + public synchronized R exportV2(@RequestBody JSONObject param) { List<String> fields = JSONObject.parseArray(param.getJSONArray("fields").toJSONString(), String.class); EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); Map<String, Object> map = excludeTrash(param.getJSONObject("locDetl")); @@ -385,14 +444,15 @@ if (!Cools.isEmpty(mat.getStoreMaxDate())) { - if (Cools.isEmpty(locDetl.getBatch())) { - continue; - } else if (locDetl.getBatch().length() != 8) { - continue; - } +// if (Cools.isEmpty(locDetl.getBatch())) { +// continue; +// } else if (locDetl.getBatch().length() != 8) { +// continue; +// } try { - SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); - Date maxDate = simple.parse(locDetl.getBatch()); +// SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); +// Date maxDate = simple.parse(locDetl.getBatch()); + Date maxDate = locDetl.getModiTime(); Calendar calendar = new GregorianCalendar(); calendar.setTime(maxDate); // 鎶婃棩鏈熷線鍚庡鍔犱竴澶�,鏁存暟 寰�鍚庢帹,璐熸暟寰�鍓嶇Щ鍔� @@ -409,7 +469,7 @@ abnormalLocDetlParam.setSpecs(mat.getSpecs()); abnormalLocDetlParam.setBatch(locDetl.getBatch()); if (now.compareTo(maxDate) > 0) { - long difference = (now.getTime() - maxDate.getTime()) / (24 * 60 * 60 * 1000); + long difference = (now.getTime() - locDetl.getModiTime().getTime()) / (24 * 60 * 60 * 1000); abnormalLocDetlParam.setNowTime(Integer.parseInt(String.valueOf(difference))); result.add(abnormalLocDetlParam); } -- Gitblit v1.9.1