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 | 217 ++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 168 insertions(+), 49 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index 04ffd45..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))); @@ -205,6 +205,65 @@ .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")); + 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); return R.ok(exportSupport(list, fields)); } @@ -240,6 +299,21 @@ @RequestParam(defaultValue = "10") Integer limit, @RequestParam Map<String, Object> param) { Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class)); + for (LocDetl locDetl : stockStatis.getRecords()) { + Mat mat = matService.selectByMatnr(locDetl.getMatnr()); + if (mat != null) { + locDetl.sync(mat); + } + } + return R.ok().add(stockStatis); + } + + @RequestMapping(value = "/locDetl/statis/out/auth") + @ManagerAuth + public R statisOut(@RequestParam(defaultValue = "1") Integer curr, + @RequestParam(defaultValue = "10") Integer limit, + @RequestParam Map<String, Object> param) { + Page<LocDetl> stockStatis = locDetlService.getStockStatisOut(toPage(curr, limit, param, LocDetl.class)); for (LocDetl locDetl : stockStatis.getRecords()) { Mat mat = matService.selectByMatnr(locDetl.getMatnr()); if (mat != null) { @@ -286,9 +360,9 @@ /**********************************************************寮傚父搴撳瓨鐩稿叧controller**********************************************************/ - @RequestMapping(value = "/locDetl/grouplist/auth") + @RequestMapping(value = "/locDetl/groupLocList/auth") @ManagerAuth - public R groupList(@RequestParam(defaultValue = "1") Integer curr, + public R groupLocList(@RequestParam(defaultValue = "1") Integer curr, @RequestParam(defaultValue = "10") Integer limit, @RequestParam(required = false) String orderByField, @RequestParam(required = false) String orderByType, @@ -303,61 +377,106 @@ Page<LocDetl> groupLocDetl = locDetlService.getStockStatis2(toPage(1, 10000, param, LocDetl.class)); // List<LocDetl> groupLocDetl = locDetlService.selectGroupPage(param, curr, limit); for (LocDetl locDetl : groupLocDetl.getRecords()) { + AbnormalLocDetlParam abnormalLocDetlParam = new AbnormalLocDetlParam(); Mat mat = matService.selectOne(new EntityWrapper<Mat>() .eq("matnr", locDetl.getMatnr())); - if (Cools.isEmpty(mat) - || Cools.isEmpty(mat.getStoreMax()) - || Cools.isEmpty(mat.getStoreMaxDate()) - || Cools.isEmpty(mat.getStoreMin())) { - continue; - } else if (Cools.isEmpty(locDetl.getBatch())) { - continue; - } else if (locDetl.getBatch().length() != 8) { - continue; - } - AbnormalLocDetlParam abnormalLocDetlParam = new AbnormalLocDetlParam(); - 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()); - try { - 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))); - } catch (ParseException e) { - e.printStackTrace(); - } - if (locDetl.getAnfme() > mat.getStoreMax()) { - result.add(abnormalLocDetlParam); - continue; - } else if (locDetl.getAnfme() < mat.getStoreMin()) { - result.add(abnormalLocDetlParam); + if (Cools.isEmpty(mat)) { continue; } - try { - SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); - Date maxDate = simple.parse(locDetl.getBatch()); - Calendar calendar = new GregorianCalendar(); - calendar.setTime(maxDate); - // 鎶婃棩鏈熷線鍚庡鍔犱竴澶�,鏁存暟 寰�鍚庢帹,璐熸暟寰�鍓嶇Щ鍔� - calendar.add(Calendar.DATE, mat.getStoreMaxDate()); - // 杩欎釜鏃堕棿灏辨槸鏃ユ湡寰�鍚庢帹涓�澶╃殑缁撴灉 - maxDate = calendar.getTime(); - Date now = new Date(); - if (now.compareTo(maxDate) > 0) { + + 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); } - } catch (Exception e) { + } + } + + Page<AbnormalLocDetlParam> locDetlPage = new Page<>(); + locDetlPage.setRecords(paging(result, curr, limit)); + locDetlPage.setTotal(result.size()); + locDetlPage.setCurrent(curr); + locDetlPage.setSize(limit); + return R.ok(locDetlPage); + } + + @RequestMapping(value = "/locDetl/groupDateList/auth") + @ManagerAuth + public R groupDateList(@RequestParam(defaultValue = "1") Integer curr, + @RequestParam(defaultValue = "10") Integer limit, + @RequestParam(required = false) String orderByField, + @RequestParam(required = false) String orderByType, + @RequestParam(required = false) String condition, + @RequestParam Map<String, Object> param) { + +// List<LocDetl> result = new ArrayList<>(); + List<AbnormalLocDetlParam> result = new ArrayList<>(); +// excludeTrash(param); + param.put("curr", curr); + param.put("limit", limit); + Page<LocDetl> groupLocDetl = locDetlService.getStockStatisDate(toPage(1, 10000, param, LocDetl.class)); +// List<LocDetl> groupLocDetl = locDetlService.selectGroupPage(param, curr, limit); + 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.getStoreMaxDate())) { +// 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()); + Date maxDate = locDetl.getModiTime(); + Calendar calendar = new GregorianCalendar(); + calendar.setTime(maxDate); + // 鎶婃棩鏈熷線鍚庡鍔犱竴澶�,鏁存暟 寰�鍚庢帹,璐熸暟寰�鍓嶇Щ鍔� + calendar.add(Calendar.DATE, mat.getStoreMaxDate()); + // 杩欎釜鏃堕棿灏辨槸鏃ユ湡寰�鍚庢帹涓�澶╃殑缁撴灉 + maxDate = calendar.getTime(); + Date now = new Date(); + abnormalLocDetlParam.setLocNo(locDetl.getLocNo()); + 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()); + if (now.compareTo(maxDate) > 0) { + long difference = (now.getTime() - locDetl.getModiTime().getTime()) / (24 * 60 * 60 * 1000); + abnormalLocDetlParam.setNowTime(Integer.parseInt(String.valueOf(difference))); + result.add(abnormalLocDetlParam); + } + } catch (Exception e) { + System.out.println(e.getMessage()); + } + } } Page<AbnormalLocDetlParam> locDetlPage = new Page<>(); -- Gitblit v1.9.1