#
luxiaotao1123
2021-04-22 e10ad54ef408145ad2f63e9d6219a772f89e2df7
#
4个文件已修改
103 ■■■■■ 已修改文件
src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/ErpService.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/entity/GetOrderResultDetl0.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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,6 +420,7 @@
                        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);
                    }
@@ -464,6 +465,85 @@
    }
    /**
     * 完成销售订单
     */
    @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);
                    }
                    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/15 * * * * ? ")
src/main/java/zy/cloud/wms/common/service/erp/ErpService.java
@@ -4,10 +4,15 @@
import com.core.common.Cools;
import com.core.common.DateUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import zy.cloud.wms.common.model.BillDto;
import zy.cloud.wms.common.service.erp.entity.UploadBill;
import zy.cloud.wms.common.service.erp.entity.UploadBillDetail;
import zy.cloud.wms.manager.entity.DocType;
import zy.cloud.wms.manager.entity.Mat;
import zy.cloud.wms.manager.service.DocTypeService;
import zy.cloud.wms.manager.service.MatService;
import zy.cloud.wms.manager.utils.HttpHandler;
import java.util.ArrayList;
@@ -21,6 +26,10 @@
@Service("erpService")
public class ErpService {
    @Autowired
    private DocTypeService docTypeService;
    @Autowired
    private MatService matService;
    /**
     * 单据上报
     */
@@ -32,19 +41,27 @@
            if (Cools.isEmpty(dtos)) {
                return false;
            }
            DocType docType = docTypeService.selectById(docId);
            if (Cools.isEmpty(docType)) {
                return false;
            }
            UploadBill uploadBill = new UploadBill();
            uploadBill.setNumber(docNumber);
            uploadBill.setBillDate(DateUtils.convert(new Date(), DateUtils.yyyyMMdd_F));
            uploadBill.setBTypeID("SHHT");
            uploadBill.setKTypeID("宏挺仓库");
            uploadBill.setVchType(docId);
            uploadBill.setSummary(docType.getDocName() + " - " + DateUtils.convert(new Date(), "yyyy-MM-dd HH:mm"));
            List<UploadBillDetail> detail = new ArrayList<>();
            uploadBill.setDetail(detail);
            for (BillDto dto : dtos) {
                Mat mat = matService.selectByMatnr(dto.getMatnr());
                UploadBillDetail detl = new UploadBillDetail();
                detl.setUserCode(dto.getMatnr());
                detl.setQty(dto.getQty());
                detl.setPrice(0);
                detl.setUnit(mat==null?"暂无":mat.getUnit());
                detail.add(detl);
            }
            System.out.println(JSON.toJSONString(uploadBill));
src/main/java/zy/cloud/wms/common/service/erp/entity/GetOrderResultDetl0.java
@@ -20,6 +20,8 @@
    // 单行商品备注
    private String comment;
    private String unit;
    // 商品明细行号
    private Integer RowNo;
src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java
@@ -16,6 +16,8 @@
    private String comment;
    private String unit;
    // 商品明细行号
    private Double RowNo;