| | |
| | | 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); |
| | | continue; |
| | | } else if (!Cools.isEmpty(mat.getStoreMin()) && locDetl.getAnfme() < mat.getStoreMin()) { |
| | | result.add(abnormalLocDetlParam); |
| | | continue; |
| | | } |
| | | } catch (Exception e) { |
| | | continue; |
| | | } else 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()); |
| | | Calendar calendar = new GregorianCalendar(); |
| | | calendar.setTime(maxDate); |
| | | // 把日期往后增加一天,整数 往后推,负数往前移动 |
| | | calendar.add(Calendar.DATE, mat.getStoreMaxDate()); |
| | | // 这个时间就是日期往后推一天的结果 |
| | | maxDate = calendar.getTime(); |
| | | Date now = new Date(); |
| | | 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()); |
| | | if (now.compareTo(maxDate) > 0) { |
| | | result.add(abnormalLocDetlParam); |
| | | } |
| | | } catch (Exception e) { |
| | | continue; |
| | | } |
| | | } |
| | | } |
| | | |