解决序列号会重复新增的bug

This commit is contained in:
季圣华
2021-10-02 21:59:25 +08:00
parent 319d10dc2e
commit 47bda02035

View File

@@ -473,17 +473,25 @@ public class SerialNumberService {
public void addSerialNumberByBill(Long materialId, Long depotId, String snList) throws Exception { public void addSerialNumberByBill(Long materialId, Long depotId, String snList) throws Exception {
List<String> snArr = StringUtil.strToStringList(snList); List<String> snArr = StringUtil.strToStringList(snList);
for(String sn: snArr) { for(String sn: snArr) {
SerialNumber serialNumber = new SerialNumber(); List<SerialNumber> list = new ArrayList<>();
serialNumber.setMaterialId(materialId); SerialNumberExample example = new SerialNumberExample();
serialNumber.setDepotId(depotId); example.createCriteria().andMaterialIdEqualTo(materialId).andSerialNumberEqualTo(sn)
serialNumber.setSerialNumber(sn); .andDeleteFlagNotEqualTo(BusinessConstants.DELETE_FLAG_DELETED);
Date date=new Date(); list = serialNumberMapper.selectByExample(example);
serialNumber.setCreateTime(date); //判断如果不存在重复序列号就新增
serialNumber.setUpdateTime(date); if(list == null || list.size() == 0) {
User userInfo=userService.getCurrentUser(); SerialNumber serialNumber = new SerialNumber();
serialNumber.setCreator(userInfo==null?null:userInfo.getId()); serialNumber.setMaterialId(materialId);
serialNumber.setUpdater(userInfo==null?null:userInfo.getId()); serialNumber.setDepotId(depotId);
serialNumberMapper.insertSelective(serialNumber); serialNumber.setSerialNumber(sn);
Date date = new Date();
serialNumber.setCreateTime(date);
serialNumber.setUpdateTime(date);
User userInfo = userService.getCurrentUser();
serialNumber.setCreator(userInfo == null ? null : userInfo.getId());
serialNumber.setUpdater(userInfo == null ? null : userInfo.getId());
serialNumberMapper.insertSelective(serialNumber);
}
} }
} }
} }