自动化立体仓库 - WMS系统
#
luxiaotao1123
2022-04-14 b18f06787ca85aad6bb16a4f4a452a018f3fbf2b
src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -3,12 +3,11 @@
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.core.common.Cools;
import com.core.exception.CoolException;
import com.zy.asrs.entity.MatCode;
import com.zy.asrs.entity.Mat;
import com.zy.asrs.entity.WrkDetl;
import com.zy.asrs.mapper.WrkDetlMapper;
import com.zy.asrs.service.MatCodeService;
import com.zy.asrs.service.MatService;
import com.zy.asrs.service.WrkDetlService;
import com.zy.asrs.utils.VersionUtils;
import com.zy.common.model.DetlDto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -21,7 +20,7 @@
public class WrkDetlServiceImpl extends ServiceImpl<WrkDetlMapper, WrkDetl> implements WrkDetlService {
    @Autowired
    private MatCodeService matCodeService;
    private MatService matService;
    @Override
    @Transactional
@@ -31,17 +30,17 @@
        }
        Date now = new Date();
        for (DetlDto dto : detlDtos) {
            MatCode matCode = matCodeService.selectById(dto.getMatnr());
            if (Cools.isEmpty(matCode)){
                throw new CoolException("物料条码数据为空");
            Mat mat = matService.selectByMatnr(dto.getMatnr());
            if (Cools.isEmpty(mat)){
                throw new CoolException(dto.getMatnr() + "商品维护失败");
            }
            // 保持工作档明细
            WrkDetl wrkDetl = new WrkDetl();
            wrkDetl.sync(mat);
            wrkDetl.setWrkNo(workNo);
            wrkDetl.setIoTime(now);
            wrkDetl.setBatch(dto.getBatch());
            wrkDetl.setAnfme(dto.getAnfme()); // 数量
            VersionUtils.setWrkDetl(wrkDetl, matCode); // 版本控制
            wrkDetl.setZpallet(barcode); // 托盘条码
            wrkDetl.setAppeUser(userId);
            wrkDetl.setAppeTime(now);