|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.common.utils.Utils; | 
|---|
|  |  |  | import com.zy.asrs.common.web.BaseController; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.entity.OrderDetl; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.entity.WrkDetl; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.entity.WrkMast; | 
|---|
|  |  |  | import com.zy.asrs.common.wms.service.*; | 
|---|
|  |  |  | 
|---|
|  |  |  | private WrkDetlService wrkDetlService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderService orderService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderDetlService orderDetlService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OperateLogService operateLogService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (wrkMast.getIoType() == 1 || wrkMast.getIoType() == 53 || wrkMast.getWrkSts() == 200) { | 
|---|
|  |  |  | if (!wrkDetlsKeyOrder.isEmpty()) { | 
|---|
|  |  |  | //上报念初ERP   【 上报三方平台 】 | 
|---|
|  |  |  | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); | 
|---|
|  |  |  | String nowFormat = dateFormat.format(new Date()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ArrayList<LinkedHashMap<String, Object>> mats = new ArrayList<>(); | 
|---|
|  |  |  | String orderNo = ""; | 
|---|
|  |  |  | for (WrkDetl wrkDetl : wrkDetls) { | 
|---|
|  |  |  | for (WrkDetl wrkDetl : wrkDetlsKeyOrder) { | 
|---|
|  |  |  | orderNo = wrkDetl.getOrderNo(); | 
|---|
|  |  |  | LinkedHashMap<String, Object> mat = new LinkedHashMap<>(); | 
|---|
|  |  |  | mat.put("GoodsCode", wrkDetl.getMatnr()); | 
|---|
|  |  |  | 
|---|
|  |  |  | param.put("FromDanCode", orderNo); | 
|---|
|  |  |  | param.put("Data", mats); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String response = null; | 
|---|
|  |  |  | String response = ""; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | response = new HttpHandler.Builder() | 
|---|
|  |  |  | .setUri(ERP_URL) | 
|---|
|  |  |  | 
|---|
|  |  |  | operateLog.setResponse(response); | 
|---|
|  |  |  | operateLog.setCreateTime(new Date()); | 
|---|
|  |  |  | operateLog.setSystem("WMS"); | 
|---|
|  |  |  | operateLog.setUserId(9527L); | 
|---|
|  |  |  | operateLog.setIp("127.0.0.1"); | 
|---|
|  |  |  | operateLogService.save(operateLog); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @GetMapping("/test1") | 
|---|
|  |  |  | public R test1(@RequestParam String orderNo) { | 
|---|
|  |  |  | Order order = orderService.selectByNo(orderNo, 1L); | 
|---|
|  |  |  | List<OrderDetl> orderDetls = orderDetlService.list(new LambdaQueryWrapper<OrderDetl>().eq(OrderDetl::getOrderId, order.getId())); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //上报念初ERP   【 上报三方平台 】 | 
|---|
|  |  |  | SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd"); | 
|---|
|  |  |  | String nowFormat = dateFormat.format(new Date()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ArrayList<LinkedHashMap<String, Object>> mats = new ArrayList<>(); | 
|---|
|  |  |  | for (OrderDetl orderDetl : orderDetls) { | 
|---|
|  |  |  | LinkedHashMap<String, Object> mat = new LinkedHashMap<>(); | 
|---|
|  |  |  | mat.put("GoodsCode", orderDetl.getMatnr()); | 
|---|
|  |  |  | mat.put("Num", orderDetl.getAnfme()); | 
|---|
|  |  |  | if (!Cools.isEmpty(orderDetl.getBatch())) { | 
|---|
|  |  |  | mat.put("BatchNo", orderDetl.getBatch()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!Cools.isEmpty(orderDetl.getThreeCode())) { | 
|---|
|  |  |  | mat.put("DepotName", orderDetl.getThreeCode()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!Cools.isEmpty(orderDetl.getSupp())) { | 
|---|
|  |  |  | mat.put("FromDanCode", orderDetl.getSupp()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (!Cools.isEmpty(orderDetl.getSuppCode())) { | 
|---|
|  |  |  | mat.put("FromNo", orderDetl.getSuppCode()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | mats.add(mat); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LinkedHashMap<String, Object> param = new LinkedHashMap<>(); | 
|---|
|  |  |  | param.put("Login", ERP_LOGIN); | 
|---|
|  |  |  | param.put("DanType", order.getDocType$()); | 
|---|
|  |  |  | param.put("Date", nowFormat); | 
|---|
|  |  |  | param.put("FromDanCode", orderNo); | 
|---|
|  |  |  | param.put("Data", mats); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String response = ""; | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | response = new HttpHandler.Builder() | 
|---|
|  |  |  | .setUri(ERP_URL) | 
|---|
|  |  |  | .setPath(ERP_REPORT + Utils.ncErpDataEncode(param)) | 
|---|
|  |  |  | .build() | 
|---|
|  |  |  | .doGet(); | 
|---|
|  |  |  | JSONObject jsonObject = JSON.parseObject(response); | 
|---|
|  |  |  | JSONArray result = jsonObject.getJSONArray("result"); | 
|---|
|  |  |  | Object object = result.get(0); | 
|---|
|  |  |  | JSONObject data = JSON.parseObject(object.toString()); | 
|---|
|  |  |  | if (data.getBoolean("State")) { | 
|---|
|  |  |  | //上报成功 | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | //上报失败 | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | e.printStackTrace(); | 
|---|
|  |  |  | } finally { | 
|---|
|  |  |  | //记录上报数据 | 
|---|
|  |  |  | OperateLog operateLog = new OperateLog(); | 
|---|
|  |  |  | operateLog.setAction("上报ERP," + ERP_URL + ERP_REPORT); | 
|---|
|  |  |  | operateLog.setRequest(Utils.ncErpDataEncode(param)); | 
|---|
|  |  |  | operateLog.setResponse(response); | 
|---|
|  |  |  | operateLog.setCreateTime(new Date()); | 
|---|
|  |  |  | operateLog.setSystem("WMS"); | 
|---|
|  |  |  | operateLog.setUserId(9527L); | 
|---|
|  |  |  | operateLog.setIp("127.0.0.1"); | 
|---|
|  |  |  | operateLogService.save(operateLog); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|