| | |
| | | |
| | | @Value("${erp.address.URL}") |
| | | private String URL; |
| | | @Value("${erp.address.outaddress}") |
| | | private String outAddress; |
| | | @Value("${erp.address.outReportAddress}") |
| | | private String outReportAddress; |
| | | @Value("${erp.address.inReportAddress}") |
| | | private String inReportAddress; |
| | | @Autowired |
| | | private OrderDetlService orderDetlService; |
| | | @Autowired |
| | |
| | | * 单个任务上报erp |
| | | */ |
| | | @Scheduled(cron = "0/10 * * * * ? ") |
| | | private void execute() { |
| | | private synchronized void execute() { |
| | | //查找所有任务档任务状态为40ERP上报中的任务 |
| | | List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("wrk_sts", 40)); |
| | | |
| | |
| | | if(wrkDetls!=null&&wrkDetls.size()>0){ |
| | | List<LinkedHashMap<String,Object>> datas=new ArrayList<>(); |
| | | for(WrkDetl wrkDetl:wrkDetls){ |
| | | if(Cools.isEmpty(wrkDetl.getOrderNo())){ |
| | | continue; |
| | | } |
| | | OrderDetl orderDetl= orderDetlService.selectItem(wrkDetl.getOrderNo(),wrkDetl.getMatnr(),wrkDetl.getBatch()); |
| | | if(orderDetl==null){ |
| | | log.error("orderNo={},matnr={},batch={},没有查询到订单明细",wrkDetl.getOrderNo(),wrkDetl.getMatnr(),wrkDetl.getBatch()); |
| | |
| | | } |
| | | DocType docType = docTypeService.selectById(order.getDocType());//单据编号 |
| | | LinkedHashMap<String,Object> map=new LinkedHashMap<>(); |
| | | map.put("orgNo",orderDetl.getManu());//组织编码 |
| | | if(wrkMast.getIoType()<50){ |
| | | map.put("orgNo",orderDetl.getManu());//组织编码 |
| | | map.put("docType",docType.getMemo()); |
| | | map.put("cellNo",orderDetl.getBrand()); |
| | | }else{ |
| | | map.put("orgNo","2");//组织编码 |
| | | int i = orderDetl.getOrderNo().indexOf("5D"); |
| | | if(i!=-1){ |
| | | map.put("docType","B064"); |
| | | }else{ |
| | | map.put("docType","D001"); |
| | | } |
| | | map.put("cellNo","L01A20"); |
| | | } |
| | | |
| | | map.put("docNo",orderDetl.getOrderNo()); |
| | | map.put("docType",docType.getMemo()); |
| | | map.put("docSeqNo",orderDetl.getModel()); |
| | | map.put("itemNo",orderDetl.getMatnr()); |
| | | map.put("qty",wrkDetl.getAnfme()); |
| | | map.put("unitNo",orderDetl.getUnit()); |
| | | map.put("warehouseNo",orderDetl.getColor()); |
| | | map.put("cellNo",orderDetl.getBrand()); |
| | | map.put("warehouseNo","02201"); |
| | | |
| | | map.put("combinationLotNo",String.valueOf(orderDetl.getBatch())); |
| | | map.put("barcode",wrkDetl.getZpallet()); |
| | | map.put("barcode",wrkDetl.getMatnr()); |
| | | datas.add(map); |
| | | } |
| | | |
| | | String path= ""; |
| | | String work= ""; |
| | | if(wrkMast.getIoType()<50){ |
| | | path=inReportAddress; |
| | | work="入库"; |
| | | }else{ |
| | | path=outReportAddress; |
| | | work="出库"; |
| | | } |
| | | path=outReportAddress; |
| | | HashMap<String,Object> map=new HashMap<>(); |
| | | map.put("data",datas); |
| | | System.out.println(map.toString()); |
| | | //上报ERP |
| | | String response = ""; |
| | | boolean success = false; |
| | | try { |
| | | response = new HttpHandler.Builder() |
| | | .setUri(URL) |
| | | .setPath(outAddress) |
| | | .setPath(path) |
| | | .setJson(JSON.toJSONString(map)) |
| | | .build() |
| | | .doPost(); |
| | |
| | | }else{ |
| | | wrkMast.setWrkSts(18L);//出库转历史档 |
| | | } |
| | | wrkMastService.updateById(wrkMast); |
| | | } else { |
| | | log.error("任务号={},上报失败",wrkMast.getWrkNo()); |
| | | } |
| | |
| | | try { |
| | | // 保存接口日志 |
| | | apiLogService.save( |
| | | "上报任务结果给ERP", |
| | | URL + outAddress, |
| | | "上报"+work+"任务结果给ERP", |
| | | URL + path, |
| | | null, |
| | | "127.0.0.1", |
| | | map.toString(), |