From 39eda46cbbf3ebb393c3770a5a19e923cace2a13 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 22 四月 2021 14:05:54 +0800 Subject: [PATCH] # --- src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java | 154 ++++++++++++++++++++++++++++++-------------------- 1 files changed, 92 insertions(+), 62 deletions(-) diff --git a/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java b/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java index e2a33c2..a82b817 100644 --- a/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java +++ b/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java @@ -410,7 +410,7 @@ getOrderResult0.setBTypeID(order.getTel()); getOrderResult0.setKTypeID("瀹忔尯浠撳簱"); getOrderResult0.setVchcode(Integer.parseInt(order.getNumber())); - + getOrderResult0.setSummary("閿�鍞鍗� - " + DateUtils.convert(new Date(), "yyyy-MM-dd HH:mm")); // 浣� List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(order.getOrderNo()); @@ -420,7 +420,87 @@ detl0.setQty(orderDetl.getCount()); detl0.setPrice(orderDetl.getUnitPrice()); detl0.setComment(orderDetl.getMemo()); + detl0.setUnit(orderDetl.getUnit()); detl0.setRowNo(Integer.parseInt(orderDetl.getName())); + list.add(detl0); + } + + System.out.println(JSON.toJSONString(getOrderResult0)); + + + String response = new HttpHandler.Builder() + .setUri(URI) + .setPath(UPLOAD_BILL) + .setJson(JSON.toJSONString(getOrderResult0)) + .build() + .doPost(); + if (!Cools.isEmpty(response)) { + log.warn(response); + Result result = JSON.parseObject(response, Result.class); + if (result.getCode() != 1) { + continue; + } + if (!orderService.updateSettle(getOrderResult0.getNumber(), 6L)) { + throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�"); + } +// // 杞巻鍙叉。 +// int save = custOrderMapper.saveLog(getOrderResult0.getNumber()); +// if (save > 0) { +// if (custOrderMapper.delete(new EntityWrapper<CustOrder>().eq("number", getOrderResult0.getNumber())) == 0) { +// throw new CoolException("鍒犻櫎閿�鍞鍗曞け璐�"); +// } +// log.info("{}閿�鍞鍗曟嫞璐х粨鏉�", getOrderResult0.getNumber()); +// } + } + + } + } + + + } catch (Exception e) { + e.printStackTrace(); + throw new RuntimeException(e.getMessage()); + } + + } + + /** + * 瀹屾垚閲囪喘閫�璐ц鍗� + */ + @Scheduled(cron = "0/10 * * * * ? ") + @Transactional +// @PostConstruct + public void finishOrders0Execute(){ + try { + List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4).eq("doc_type", 6)); + if (!Cools.isEmpty(orders)) { + List<String> orderNos = orders.stream().map(Order::getOrderNo).distinct().collect(Collectors.toList()); + for (Order order : orders) { + GetOrderResult0 getOrderResult0 = new GetOrderResult0(); + List<GetOrderResultDetl0> list = new ArrayList<>(); + getOrderResult0.setDetail(list); + + + // 澶� + getOrderResult0.setNumber(order.getOrderNo()); + getOrderResult0.setVchType(6); // todo:luxiaotao + getOrderResult0.setBillDate(order.getOrderTime()); + getOrderResult0.setBTypeID(order.getTel()); + getOrderResult0.setKTypeID("瀹忔尯浠撳簱"); + getOrderResult0.setBTypeID(Cools.isEmpty(order.getCstmr())?"SHHT":String.valueOf(order.getCstmr())); + getOrderResult0.setBTypeID("SHHT"); + getOrderResult0.setSummary("閲囪喘閫�璐у崟 - " + DateUtils.convert(new Date(), "yyyy-MM-dd HH:mm")); + + + // 浣� + List<OrderDetl> orderDetls = orderDetlService.selectByOrderNo(order.getOrderNo()); + for (OrderDetl orderDetl : orderDetls) { + GetOrderResultDetl0 detl0 = new GetOrderResultDetl0(); + detl0.setUserCode(orderDetl.getMatnr()); + detl0.setQty(orderDetl.getAnfme()); + detl0.setPrice(orderDetl.getUnitPrice()); + detl0.setUnit(orderDetl.getUnit()); + detl0.setComment(orderDetl.getMemo()); list.add(detl0); } @@ -516,15 +596,17 @@ /** * 鑾峰彇鍙栨秷璁㈠崟 */ - @Scheduled(cron = "0/5 * * * * ? ") + @Scheduled(cron = "0/10 * * * * ? ") @Transactional // @PostConstruct public void getCancelOrdersExecute(){ try { Map<String, Object> json = new HashMap<>(); + json.put("vchType", 151); + json.put("flag", 2); String response = new HttpHandler.Builder() .setUri(URI) - .setPath(OVER_BILL) + .setPath(GET_ORDERS) .setJson(JSON.toJSONString(json)) .build() .doPost(); @@ -537,14 +619,15 @@ } List<GetOrderResult0> list = JSON.parseArray(result.getData(), GetOrderResult0.class); if (!Cools.isEmpty(list)) { - boolean complete = true; Set<String> existNumbers = new HashSet<>(); - - String cancelNumber = ""; - if (!orderService.updateSettle(cancelNumber, 5L)) { - throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�"); + for (GetOrderResult0 result0 : list) { + existNumbers.add(result0.getNumber()); } - + for (String number : existNumbers) { + if (!orderService.updateSettle(number, 5L)) { +// throw new CoolException("淇敼璁㈠崟鐘舵�佸け璐�"); + } + } } } @@ -552,59 +635,6 @@ e.printStackTrace(); throw new RuntimeException(e.getMessage()); } - - } - - /** - * 涓婁紶閿�鍞鍗曞彇娑堢粨鏋� - */ - @Scheduled(cron = "0/5 * * * * ? ") - @Transactional -// @PostConstruct - public void uploadCancelOrdersExecute(){ -// try { -// List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 3).isNotNull("number")); -// if (Cools.isEmpty(orders)) { -// return; -// } -// Map<String, Object> json = new HashMap<>(); -// List<UploadCancelResult> list = new ArrayList<>(); -// for (CustOrder custOrder : custOrders) { -// UploadCancelResult result = new UploadCancelResult(); -// result.setNumber(custOrder.getNumber()); -// result.setUserCode(custOrder.getUserCode()); -// result.setQty(custOrder.getTotal()); -// result.setStatus(1); -// list.add(result); -// } -// json.put("data", list); -// String response = new HttpHandler.Builder() -// .setUri(URI) -// .setPath(UPLOAD_CANCEL_RESULT) -// .setJson(JSON.toJSONString(json)) -// .build() -// .doPost(); -// if (!Cools.isEmpty(response)) { -//// log.info(response); -// Date now = new Date(); -// Result result = JSON.parseObject(response, Result.class); -// if (result.getCode() != 1) { -// return; -// } -// for (UploadCancelResult result1 : list) { -// // 杞巻鍙叉。 -// int save = custOrderMapper.saveLog(result1.getNumber(), result1.getUserCode()); -// if (save > 0) { -// if (custOrderMapper.delete(new EntityWrapper<CustOrder>().eq("number", result1.getNumber()).eq("user_code", result1.getUserCode())) == 0) { -// throw new CoolException("鍒犻櫎閿�鍞鍗曞け璐�"); -// } -// } -// } -// } -// } catch (IOException e) { -// e.printStackTrace(); -// throw new RuntimeException(e.getMessage()); -// } } -- Gitblit v1.9.1