| | |
| | | package com.zy.asrs.task.handler; |
| | | |
| | | import cn.hutool.core.util.NumberUtil; |
| | | import com.alibaba.excel.util.NumberUtils; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.core.common.Cools; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | |
| | | @Value("${spring.profiles.active}") |
| | | private String active; |
| | | |
| | | @Value("${u8.report}") |
| | | private Boolean report; |
| | | |
| | | @Value("${u8.url}") |
| | | private String url; |
| | | |
| | |
| | | |
| | | @Transactional |
| | | public ReturnT<String> start(Order order) { |
| | | //List<String> docNames = new ArrayList<>(Arrays.asList("银座采购入库单", "银座委外材料出库单", "银座委外入库单", "银座生产材料出库单")); |
| | | List<String> docNames = new ArrayList<>(Arrays.asList("银座委外入库单", "银座生产材料出库单")); |
| | | List<String> docNames = new ArrayList<>(Arrays.asList("银座采购入库单", "银座委外材料出库单", "银座生产材料出库单")); |
| | | |
| | | DocType docType = docTypeService.selectById(order.getDocType()); |
| | | if (!docNames.contains(docType.getDocName())) { |
| | | order.setSettle(8L); |
| | | orderService.updateById(order); |
| | | return SUCCESS; |
| | | } |
| | | // if("手动出库单".equals(docType.getDocName()) |
| | | // || "手动入库单".equals(docType.getDocName()) |
| | | // || "自动补货单".equals(docType.getDocName()) |
| | | // || "人工补货单".equals(docType.getDocName())){ |
| | | // order.setSettle(8L); |
| | | // orderService.updateById(order); |
| | | // return SUCCESS; |
| | | // } |
| | | |
| | | List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId()); |
| | | |
| | | ReportErpParam param = new ReportErpParam(); |
| | | mappingParam(order, param); |
| | | mappingParamChildren(orderDetlList, param); |
| | | if (Cools.isEmpty(order.getPltType())) { |
| | | } else { |
| | | boolean flag = true; |
| | | List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId()); |
| | | List<OrderDetl> report = new ArrayList<>(); |
| | | for (OrderDetl orderDetl : orderDetlList) { |
| | | if (orderDetl.getReportQty() == null || orderDetl.getQty() > orderDetl.getReportQty() || orderDetl.getQty() < orderDetl.getAnfme()) { |
| | | flag = false; |
| | | } |
| | | } |
| | | if (flag) { |
| | | log.info("单据完结,{}", order); |
| | | order.setSettle(6L); |
| | | orderService.updateById(order); |
| | | } |
| | | return SUCCESS; |
| | | } |
| | | |
| | | int code = doHttpRequest(param, "单据审核", url, orderReportPath, null, "127.0.0.1"); |
| | | if (code == 0) { |
| | | log.info("单据审核,{}", order); |
| | | order.setSettle(6L); |
| | | orderService.updateById(order); |
| | | } |
| | | |
| | | return SUCCESS; |
| | | } |
| | | |
| | | |
| | | @Transactional |
| | | public void timelyStart(Order order) { |
| | | if (!report){ |
| | | return; |
| | | } |
| | | |
| | | List<String> docNames = new ArrayList<>(Arrays.asList("银座采购入库单", "银座委外材料出库单", "银座生产材料出库单")); |
| | | |
| | |
| | | if (s.length > 1) { |
| | | childInfo.setCBatch(s[0]); |
| | | childInfo.setBFree1(s[1]); |
| | | } else { |
| | | } else if (s.length == 1) { |
| | | childInfo.setCBatch(s[0]); |
| | | childInfo.setBFree1(""); |
| | | } else { |
| | | childInfo.setCBatch(""); |
| | | childInfo.setBFree1(""); |
| | | } |
| | | } |
| | |
| | | childInfo.setCOrderCode(orderDetl.getOrderNo()); |
| | | childInfo.setIvouchrowno(orderDetl.getItemNum()); |
| | | childInfo.setDefine22(orderDetl.getThreeCode()); |
| | | |
| | | if (!Cools.isEmpty(orderDetl.getWeight()) && !Cools.isEmpty(orderDetl.getVolume())) { |
| | | BigDecimal mul = NumberUtil.div(childInfo.getIQuantity(), orderDetl.getVolume() + ""); |
| | | childInfo.setINum(mul.toString()); |
| | | } else { |
| | | childInfo.setINum("1"); |
| | | } |
| | | childInfo.setIinvexchrate(Cools.isEmpty(orderDetl.getVolume()) ? "" : orderDetl.getVolume() + ""); |
| | | paramChild.add(childInfo); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String ip) { |
| | | private int doHttpRequest(Object requestParam, String namespace, String url, String path, String appkey, String |
| | | ip) { |
| | | String response = ""; |
| | | boolean success = false; |
| | | |