| | |
| | | package com.zy.asrs.task; |
| | | |
| | | import com.baomidou.mybatisplus.mapper.EntityWrapper; |
| | | import com.core.common.Cools; |
| | | import com.zy.asrs.entity.Order; |
| | | import com.zy.asrs.entity.OrderDetl; |
| | | import com.zy.asrs.service.ApiLogService; |
| | | import com.zy.asrs.service.OrderDetlService; |
| | | import com.zy.asrs.service.OrderService; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | import com.zy.asrs.task.handler.OrderSyncHandler; |
| | |
| | | private OrderService orderService; |
| | | @Autowired |
| | | private ApiLogService apiLogService; |
| | | @Autowired |
| | | private OrderDetlService orderDetlService; |
| | | |
| | | @Scheduled(cron = "0 0 1 * * ? ") |
| | | public void clearApiLog(){ |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 入库订单、出库订单完成上报 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | @Async("orderThreadPool") |
| | | public void completeAndReport(){ |
| | | String erpReport = Parameter.get().getErpReport(); |
| | | if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { |
| | | List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L).eq("status", 1)); |
| | | List<Order> orders = orderService.selectComplete(); |
| | | for (Order order : orders) { |
| | | ReturnT<String> result = orderSyncHandler.start(order); |
| | | if (!result.isSuccess()) { |
| | | log.error("单据[orderNo={}]上报erp失败", order.getOrderNo()); |
| | | if(order.getDocType()== 81){ |
| | | continue; |
| | | } |
| | | try { |
| | | ReturnT<String> result = orderSyncHandler.start(order); |
| | | if (!result.isSuccess()) { |
| | | log.error("单据[orderNo={}]上报erp失败", order.getOrderNo()); |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("单据[orderNo={}]上报erp报错", order.getOrderNo()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 销售出库订单明细完成上报 |
| | | */ |
| | | @Scheduled(cron = "0/5 * * * * ? ") |
| | | @Async("orderThreadPool") |
| | | public void completeAndReport1(){ |
| | | String erpReport = Parameter.get().getErpReport(); |
| | | if (!Cools.isEmpty(erpReport) && erpReport.equals("true")) { |
| | | List<OrderDetl> orderDetls = orderDetlService.reportERPOrderDetl(); |
| | | for (OrderDetl orderDetl : orderDetls) { |
| | | Order order = orderService.selectByNo(orderDetl.getOrderNo()); |
| | | try { |
| | | ReturnT<String> result = orderSyncHandler.start1(order, orderDetl); |
| | | if (!result.isSuccess()) { |
| | | log.error("单据明细[orderNo={}],[matnr={}],[batch={}]上报erp失败", orderDetl.getOrderNo(), orderDetl.getMatnr(), orderDetl.getBatch()); |
| | | } |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | log.error("单据明细[orderNo={}],[matnr={}],[batch={}]上报erp失败", orderDetl.getOrderNo(), orderDetl.getMatnr(), orderDetl.getBatch()); |
| | | } |
| | | } |
| | | } |