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<WaitPakinMapper, WaitPakin> 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<MatBarcode> list) {
|
String zpallet = list.get(0).getZpallet();
|
if (zpallet.length() != 8) {
|
throw new CoolException("条码长度不是8位===>>" + zpallet);
|
}
|
int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", zpallet));
|
int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().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.setAppeUser(waitPakin.getAppeUser());
|
waitPakin1.setAppeTime(now);
|
//waitPakin1.setModiUser(waitPakin.getAppeUser());
|
waitPakin1.setModiTime(now);
|
//waitPakin1.setMemo(detlDto.getMemo());
|
if (!waitPakinService.insert(waitPakin1)) {
|
throw new CoolException("保存入库通知档失败");
|
}
|
}
|
}
|
}
|