package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.*; import com.zy.asrs.mapper.WaitPakinMapper; import com.zy.asrs.service.*; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.zy.common.model.DetlDto; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Date; import java.util.List; @Service("waitPakinService") public class WaitPakinServiceImpl extends ServiceImpl implements WaitPakinService { @Autowired private LocDetlService locDetlService; @Autowired private WrkDetlService wrkDetlService; @Autowired private WrkMastService wrkMastService; @Autowired private MatService matService; @Autowired private WaitPakinService waitPakinService; @Override public void comb(List list) { String zpallet = list.get(0).getZpallet(); if (zpallet.length() != 8) { throw new CoolException("条码长度不是8位===>>" + zpallet); } int countLoc = locDetlService.selectCount(new EntityWrapper().eq("zpallet", zpallet)); int countWrk = wrkDetlService.selectCount(new EntityWrapper().eq("zpallet", zpallet)); WrkMast wrkMast = wrkMastService.selectByBarcode(zpallet); if (countLoc > 0 || (countWrk > 0 && wrkMast.getWrkSts() != 15)) { throw new CoolException("组托档/工作档/库存条码数据已存在===>>" + zpallet); } Date now = new Date(); for (MatBarcode matBarcode : list) { Mat mat = matService.selectByMatnr(matBarcode.getMatnr()); if (Cools.isEmpty(mat)) { throw new CoolException(matBarcode.getMatnr() + "商品档案不存在"); } WaitPakin waitPakin1 = new WaitPakin(); waitPakin1.sync(mat); ///waitPakin1.setProType(dto.getProType()); //waitPakin1.setTemp2(dto.getTemp2()); //waitPakin1.setOutOrderNo(dto.getOutOrderNo()); //waitPakin1.setBatch(dto.getBatch()); waitPakin1.setZpallet(matBarcode.getZpallet()); // 托盘码 waitPakin1.setIoStatus("N"); // 入出状态 waitPakin1.setAnfme(1.0); // 数量 waitPakin1.setStatus("Y"); // 状态 waitPakin1.setModel(mat.getName()); //waitPakin1.setAppeUser(waitPakin.getAppeUser()); waitPakin1.setAppeTime(now); //waitPakin1.setModiUser(waitPakin.getAppeUser()); waitPakin1.setModiTime(now); //waitPakin1.setMemo(detlDto.getMemo()); if (!waitPakinService.insert(waitPakin1)) { throw new CoolException("保存入库通知档失败"); } } } }