From 9cecb5ead4cc1144ac7fd662c0db2d1527cdf5bc Mon Sep 17 00:00:00 2001 From: LSH Date: 星期六, 29 十月 2022 15:50:37 +0800 Subject: [PATCH] #添加订单明细筛选重复商品 异常库存页面修改 --- src/main/java/com/zy/asrs/controller/LocDetlController.java | 133 ++++++++++++++++++++++++-------------------- 1 files changed, 73 insertions(+), 60 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index 767f5a5..1eadc60 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -22,8 +22,10 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import javax.xml.crypto.Data; import java.io.IOException; import java.net.URLEncoder; +import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -53,7 +55,7 @@ @RequestMapping(value = "/locDetl/auth") @ManagerAuth - public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos){ + public R stockOutList(@RequestParam(value = "locNos[]") List<String> locNos) { if (!locNos.isEmpty()) { List<LocDetl> res = new ArrayList<>(); for (String locNo : new HashSet<>(locNos)) { @@ -69,10 +71,10 @@ @RequestMapping(value = "/stock/out/list/auth") @ManagerAuth - public R stockOutList(@RequestParam(defaultValue = "1")Integer curr, - @RequestParam(defaultValue = "10")Integer limit, - @RequestParam Map<String, Object> param){ - if (!Cools.isEmpty(param.get("modi_time"))){ + public R stockOutList(@RequestParam(defaultValue = "1") Integer curr, + @RequestParam(defaultValue = "10") Integer limit, + @RequestParam Map<String, Object> param) { + if (!Cools.isEmpty(param.get("modi_time"))) { String val = String.valueOf(param.get("modi_time")); if (val.contains(RANGE_TIME_LINK)) { String[] dates = val.split(RANGE_TIME_LINK); @@ -86,13 +88,13 @@ @RequestMapping(value = "/locDetl/list/auth") @ManagerAuth - public R list(@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, + public R list(@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, - @RequestParam(required = false)Boolean unreason){ + @RequestParam(required = false) Boolean unreason) { if (!Cools.isEmpty(unreason) && unreason) { return R.ok(locDetlService.selectPage(new Page<>(curr, limit), new EntityWrapper<LocDetl>() @@ -107,7 +109,7 @@ if (chooseRow.length() == 1) { row = "0" + chooseRow; param.remove("row"); - }else { + } else { row = chooseRow; param.remove("row"); } @@ -115,19 +117,21 @@ excludeTrash(param); convert(param, wrapper); allLike(LocDetl.class, param.keySet(), wrapper, condition); - if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} - if (!row.equals("")){ + if (!Cools.isEmpty(orderByField)) { + wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType)); + } + if (!row.equals("")) { wrapper.and() - .where("loc_no like '" +row +"%'"); + .where("loc_no like '" + row + "%'"); } return R.ok(locDetlService.selectPage(new Page<>(curr, limit), wrapper)); } - private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ - for (Map.Entry<String, Object> entry : map.entrySet()){ + private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper) { + for (Map.Entry<String, Object> entry : map.entrySet()) { String val = String.valueOf(entry.getValue()); - if (val.contains(RANGE_TIME_LINK)){ + 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])); @@ -152,10 +156,10 @@ return R.ok(); } - @RequestMapping(value = "/locDetl/update/auth") - @ManagerAuth(memo = "搴撲綅鏄庣粏淇敼") - public R update(LocDetl locDetl){ - if (Cools.isEmpty(locDetl) || null==locDetl.getMatnr()){ + @RequestMapping(value = "/locDetl/update/auth") + @ManagerAuth(memo = "搴撲綅鏄庣粏淇敼") + public R update(LocDetl locDetl) { + if (Cools.isEmpty(locDetl) || null == locDetl.getMatnr()) { return R.error(); } locDetl.setModiUser(getUserId()); @@ -166,12 +170,12 @@ @RequestMapping(value = "/locDetl/delete/auth") @ManagerAuth(memo = "搴撲綅鏄庣粏鍒犻櫎") - public R delete(@RequestParam String param){ + public R delete(@RequestParam String param) { List<LocDetl> list = JSONArray.parseArray(param, LocDetl.class); - if (Cools.isEmpty(list)){ + if (Cools.isEmpty(list)) { return R.error(); } - for (LocDetl entity : list){ + for (LocDetl entity : list) { locDetlService.delete(new EntityWrapper<>(entity)); } return R.ok(); @@ -179,7 +183,7 @@ @RequestMapping(value = "/locDetl/export/auth") @ManagerAuth(memo = "搴撲綅鏄庣粏瀵煎嚭") - public synchronized R export(@RequestBody JSONObject param){ + 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")); @@ -189,15 +193,15 @@ if (chooseRow.length() == 1) { row = "0" + chooseRow; map.remove("row"); - }else { + } else { row = chooseRow; map.remove("row"); } } convert(map, wrapper); - if (!row.equals("")){ + if (!row.equals("")) { wrapper.and() - .where("loc_no like '" +row +"%'"); + .where("loc_no like '" + row + "%'"); } List<LocDetl> list = locDetlService.selectList(wrapper); return R.ok(exportSupport(list, fields)); @@ -210,7 +214,7 @@ wrapper.like("matnr", condition); Page<LocDetl> page = locDetlService.selectPage(new Page<>(0, 10), wrapper); List<Map<String, Object>> result = new ArrayList<>(); - for (LocDetl locDetl : page.getRecords()){ + for (LocDetl locDetl : page.getRecords()) { Map<String, Object> map = new HashMap<>(); map.put("id", locDetl.getMatnr()); map.put("value", locDetl.getMatnr()); @@ -223,7 +227,7 @@ @ManagerAuth public R query(@RequestBody JSONObject param) { Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>().eq(humpToLine(String.valueOf(param.get("key"))), param.get("val")); - if (null != locDetlService.selectOne(wrapper)){ + if (null != locDetlService.selectOne(wrapper)) { return R.parse(BaseRes.REPEAT).add(getComment(LocDetl.class, String.valueOf(param.get("key")))); } return R.ok(); @@ -231,8 +235,8 @@ @RequestMapping(value = "/locDetl/statis/auth") @ManagerAuth - public R statis(@RequestParam(defaultValue = "1")Integer curr, - @RequestParam(defaultValue = "10")Integer limit, + public R statis(@RequestParam(defaultValue = "1") Integer curr, + @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()) { @@ -269,10 +273,11 @@ /** * 鑾峰彇搴撳瓨鎬绘暟 + * * @return */ @RequestMapping("/locDetl/count") - public R getAllCount(){ + public R getAllCount() { Integer sum = locDetlService.sum(); return R.ok(sum); } @@ -282,44 +287,53 @@ @RequestMapping(value = "/locDetl/grouplist/auth") @ManagerAuth - public R groupList(@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){ + public R groupList(@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<>(); // excludeTrash(param); - param.put("curr",curr); - param.put("limit",limit); - List<LocDetl> groupLocDetl = locDetlService.selectGroupPage(param,curr,limit); + param.put("curr", curr); + param.put("limit", limit); + List<LocDetl> groupLocDetl = locDetlService.selectGroupPage(param, curr, limit); for (LocDetl locDetl : groupLocDetl) { Mat mat = matService.selectOne(new EntityWrapper<Mat>() .eq("matnr", locDetl.getMatnr())); + locDetl.setStoreMax(mat.getStoreMax()); + locDetl.setStoreMaxDate(mat.getStoreMaxDate()); + locDetl.setStoreMin(mat.getStoreMin()); if (Cools.isEmpty(mat) || Cools.isEmpty(mat.getStoreMax()) || Cools.isEmpty(mat.getStoreMaxDate()) || Cools.isEmpty(mat.getStoreMin())) { continue; - } - if (locDetl.getAnfme() > mat.getStoreMax()){ - result.add(locDetl); + } else if (Cools.isEmpty(locDetl.getBatch())) { + continue; + } else if (locDetl.getBatch().length() != 8) { continue; } - if (locDetl.getAnfme() < mat.getStoreMin()){ + try { + SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); + Date maxDate = simple.parse(locDetl.getBatch()); + long time = maxDate.getTime(); + Date now = new Date(); + long time1 = now.getTime(); + locDetl.setNowTime((int)((time1 - time)/(1000*60*60*24))); + } catch (ParseException e) { + e.printStackTrace(); + } + if (locDetl.getAnfme() > mat.getStoreMax()) { + result.add(locDetl); + continue; + } else if (locDetl.getAnfme() < mat.getStoreMin()) { result.add(locDetl); continue; } - - if (Cools.isEmpty(locDetl.getBatch())) { - continue; - } - if (locDetl.getBatch().length() != 8){ - continue; - } - try{ + try { SimpleDateFormat simple = new SimpleDateFormat("yyyyMMdd"); Date maxDate = simple.parse(locDetl.getBatch()); Calendar calendar = new GregorianCalendar(); @@ -332,14 +346,13 @@ if (now.compareTo(maxDate) > 0) { result.add(locDetl); } - - }catch (Exception e){ + } catch (Exception e) { continue; } } Page<LocDetl> locDetlPage = new Page<>(); - locDetlPage.setRecords(paging(result,curr,limit)); + locDetlPage.setRecords(paging(result, curr, limit)); locDetlPage.setTotal(result.size()); locDetlPage.setCurrent(curr); locDetlPage.setSize(limit); @@ -350,10 +363,10 @@ List<LocDetl> pageRecord = new ArrayList<LocDetl>(); int minIndex = (curr - 1) * limit; int maxIndex = (curr * limit) - 1; - if (result.size() < maxIndex){ + if (result.size() < maxIndex) { maxIndex = result.size(); } - for (int i = minIndex; i < maxIndex; i++){ + for (int i = minIndex; i < maxIndex; i++) { pageRecord.add(result.get(i)); } return pageRecord; -- Gitblit v1.9.1