#
mrzhssss
2022-04-26 d17c089f1d7ff3be848b05161917346e7f664a1d
src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
@@ -21,7 +21,9 @@
import zy.cloud.wms.manager.entity.param.*;
import zy.cloud.wms.manager.entity.result.StoPrintVo;
import zy.cloud.wms.manager.service.*;
import zy.cloud.wms.manager.utils.AddZero;
import java.text.SimpleDateFormat;
import java.util.*;
/**
@@ -588,22 +590,44 @@
        }
        return R.ok("拣货单已取消");
    }
    @Override
    @Transactional
     public R  initReceive(InitOrderParam param, Long userId, Long hostId){
        Receive order_no = receiveService.selectOne(new EntityWrapper<Receive>()
                .eq("order_no", param.getOrderNo()));
        if (order_no != null) {
            return R.error("抱歉单号已存在,请修改单号");
        String orderNo = "";
        if(!Cools.isEmpty(param.getOrderNo())) {
            Receive receive = receiveService.selectOne(new EntityWrapper<Receive>()
                    .eq("order_no", param.getOrderNo()));
            if (receive != null) {
                return R.error("抱歉单号已存在,请修改单号");
            }
            orderNo = param.getOrderNo();
        } else {
            String sheetNo = "STO-" + new SimpleDateFormat("yyyyMMdd").format(new Date()) + "-";
            String currNum = receiveService.getCurrNum(sheetNo);
            if (!Cools.isEmpty(currNum)) {
                String[] split = currNum.split("-");
                if (split.length < 3) {
                    orderNo = sheetNo + "0001";
                } else {
                    Integer newNum = Integer.parseInt(split[2]) + 1;
                    String format = AddZero.addZeroForNum(newNum + "", 4);
                    orderNo = sheetNo + format;
                }
            } else {
                orderNo = sheetNo + "0001";
            }
        }
        Date now = new Date();
        Item item = itemService.selectByName(param.getItem());
        Cstmr cstmr = cstmrService.selectByName(param.getCstmr());
        // 新增订单表头
        order_no = new Receive(
        Receive order_no = new Receive(
                hostId,
                String.valueOf(snowflakeIdWorker.nextId()),    // 编号[非空]
                param.getOrderNo(),    // 订单编号
                orderNo,        // 订单编号
//                param.getOrderNo(),    // 订单编号
                param.getOrderTime(),    // 单据日期
                param.getDocType(),    // 单据类型
                item==null?null:item.getId(),    // 项目编号
@@ -651,6 +675,8 @@
            ReceiveDetl receiveDetl = new ReceiveDetl();
            receiveDetl.setHostId(hostId);
            receiveDetl.setOrderId(order_no.getId());
            receiveDetl.setOrderNo(orderNo);
//            receiveDetl.setOrderNo(param.getOrderNo());
            receiveDetl.setAnfme(dto.getCount());
            receiveDetl.setCreateTime(now);
            receiveDetl.setCreateBy(userId);
@@ -679,12 +705,30 @@
    @Override
    @Transactional
    public R initOrder(InitOrderParam param, Long userId, Long hostId) {
       // Receive order_no = receiveService.selectOne(new EntityWrapper<Receive>()
        //        .eq("order_no", param.getOrderNo()));
        Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
        if (order != null) {
            return R.error("抱歉单号已存在,请修改单号");
        String orderNo = "";
        if(!Cools.isEmpty(param.getOrderNo())) {
            Order order = orderService.selectByOrderNo(param.getOrderNo(), hostId);
            if (order != null) {
                return R.error("抱歉单号已存在,请修改单号");
            }
            orderNo = param.getOrderNo();
        } else {
            String sheetNo = "ORD-" + new SimpleDateFormat("yyyyMMdd").format(new Date()) + "-";
            String currNum = receiveService.getCurrNum(sheetNo);
            if (!Cools.isEmpty(currNum)) {
                String[] split = currNum.split("-");
                if (split.length < 3) {
                    orderNo = sheetNo + "0001";
                } else {
                    Integer newNum = Integer.parseInt(split[2]) + 1;
                    String format = AddZero.addZeroForNum(newNum + "", 4);
                    orderNo = sheetNo + format;
                }
            } else {
                orderNo = sheetNo + "0001";
            }
        }
        Date now = new Date();
        Item item = itemService.selectByName(param.getItem());
        Cstmr cstmr = cstmrService.selectByName(param.getCstmr());
@@ -692,7 +736,7 @@
        Order order1 = new Order();
        order1.setUuid(String.valueOf(snowflakeIdWorker.nextId()));
        order1.setHostId(hostId);
        order1.setOrderNo(param.getOrderNo());
        order1.setOrderNo(orderNo);
        order1.setOrderTime(param.getOrderTime());
        order1.setDocType(param.getDocType());
        order1.setItemId(item == null? null : item.getId());