Commit 52f8bf7e by lijingjing

样品编号验证修改;

parent 95df0b5d
...@@ -408,25 +408,21 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -408,25 +408,21 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
entrust.setId(IdWorker.getId()); entrust.setId(IdWorker.getId());
// 保存并提交委托时使用 // 保存并提交委托时使用
dto.setId(entrust.getId()); dto.setId(entrust.getId());
List<String> orgNameList = userInfoService.getUserOrgNames(account);
// == // ==
if (CollectionUtils.isNotEmpty(sampleDTOList)) { if (CollectionUtils.isNotEmpty(sampleDTOList)) {
// 先对样品进行处理 // 先对样品进行处理
Set<String> sampleNames = new HashSet<>(); Set<String> sampleNames = new HashSet<>(), sampleCodes = new HashSet<>(), sampleSlots = new HashSet<>();
Set<String> sampleCodes = new HashSet<>();
int sampleCount = sampleDTOList.size();
for (EntrustSampleDTO sampleDTO : sampleDTOList) { for (EntrustSampleDTO sampleDTO : sampleDTOList) {
sampleNames.add(sampleDTO.getName()); String sname = sampleDTO.getName(), scode = sampleDTO.getCode(), slotNo = sampleDTO.getSlotNo();
String scode = sampleDTO.getCode(); sampleNames.add(sname);
if (StringUtils.isNotBlank(scode)) { RestAssert.fail(StringUtils.isNotBlank(scode) && sampleCodes.contains(scode), String.format("样品编号【%s】重复!", scode));
RestAssert.fail(sampleCodes.contains(scode), String.format("样品编号【%s】重复!", scode)); RestAssert.fail(StringUtils.isNotBlank(slotNo) && sampleSlots.contains(slotNo), String.format("样品槽号【%s】重复!", scode));
sampleCodes.add(scode); sampleCodes.add(scode);
} sampleSlots.add(slotNo);
} }
RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!"); RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!");
RestAssert.fail(isSubmit && sampleCodes.size() != sampleCount, "样品编号为空或重复!");
List<EntrustSample> saveSampleList = new ArrayList<>(); List<EntrustSample> saveSampleList = new ArrayList<>();
List<EntrustSampleItem> saveEntrustSampleItemList = new ArrayList<>(); List<EntrustSampleItem> saveEntrustSampleItemList = new ArrayList<>();
...@@ -638,19 +634,18 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -638,19 +634,18 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
List<EntrustSampleDTO> sampleList = entrustDTO.getSampleDTOList(); List<EntrustSampleDTO> sampleList = entrustDTO.getSampleDTOList();
RestAssert.fail(CollectionUtils.isEmpty(sampleList), "委托样品为空"); RestAssert.fail(CollectionUtils.isEmpty(sampleList), "委托样品为空");
RestAssert.fail(sampleList.stream().map(EntrustSampleDTO::getName).distinct().count() > 1, "一个委托只能下同一种样品!"); RestAssert.fail(sampleList.stream().map(EntrustSampleDTO::getName).distinct().count() > 1, "一个委托只能下同一种样品!");
Set<String> sampleNames = new HashSet<>(), sampleCodes = new HashSet<>(); Set<String> sampleNames = new HashSet<>(), sampleCodes = new HashSet<>(), sampleSlots = new HashSet<>();
int sampleCount = CollectionUtils.isEmpty(sampleList) ? 0 : sampleList.size();
for (EntrustSampleDTO sampleDTO : sampleList) { for (EntrustSampleDTO sampleDTO : sampleList) {
String sname = sampleDTO.getName(), scode = sampleDTO.getCode(); String sname = sampleDTO.getName(), scode = sampleDTO.getCode(), slotNo = sampleDTO.getSlotNo();
RestAssert.fail(StringUtils.isBlank(sname), "样品名称不能为空"); RestAssert.fail(StringUtils.isBlank(sname), "样品名称不能为空");
sampleNames.add(sampleDTO.getName()); sampleNames.add(sname);
RestAssert.fail(StringUtils.isNotBlank(scode) && sampleCodes.contains(scode), String.format("样品编号【%s】重复!", scode)); RestAssert.fail(StringUtils.isNotBlank(scode) && sampleCodes.contains(scode), String.format("样品编号【%s】重复!", scode));
sampleCodes.add(scode); sampleCodes.add(scode);
RestAssert.fail(StringUtils.isNotBlank(slotNo) && sampleSlots.contains(slotNo), String.format("样品槽号【%s】重复!", slotNo));
sampleSlots.add(slotNo);
} }
RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!"); RestAssert.fail(sampleNames.size() > 1, "一个委托只能下同一种样品!");
RestAssert.fail(isSubmit && sampleCodes.size() != sampleCount, "样品编号为空或重复!");
Entrust entrust = entrustDTO.convert(Entrust.class); Entrust entrust = entrustDTO.convert(Entrust.class);
entrust.setSampleName(sampleList.get(0).getName()); entrust.setSampleName(sampleList.get(0).getName());
...@@ -664,6 +659,13 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -664,6 +659,13 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
EntrustSample sample = dto.convert(EntrustSample.class); EntrustSample sample = dto.convert(EntrustSample.class);
sample.setOrderBy(incNum); sample.setOrderBy(incNum);
incNum += 10; incNum += 10;
boolean isInsert = false;
// 如果室新增的样品
if (null == sample.getId()) {
isInsert = true;
sample.setEntrustId(entrust.getId());
sample.setId(IdWorker.getId());
}
if (isSubmit) { if (isSubmit) {
if (StringUtils.isBlank(sample.getCode())) { if (StringUtils.isBlank(sample.getCode())) {
handleSampleCode(entrust, sample); handleSampleCode(entrust, sample);
...@@ -672,17 +674,12 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -672,17 +674,12 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample), String.format("样品编号【%s】重复!", sample.getCode())); RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample), String.format("样品编号【%s】重复!", sample.getCode()));
} }
} }
updateSampleList.add(sample);
if (isInsert) {
// if (null != sample.getId()) { saveSampleList.add(sample);
// handleSampleCode(entrust, sample); } else {
// updateSampleList.add(sample); updateSampleList.add(sample);
// } else { }
// sample.setEntrustId(entrust.getId());
// handleSampleCode(entrust, sample);
// sample.setId(IdWorker.getId());
// saveSampleList.add(sample);
// }
if (StringUtils.isNotBlank(sample.getCode())) { if (StringUtils.isNotBlank(sample.getCode())) {
RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample), String.format("样品编号【%s】重复!", sample.getCode())); RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample), String.format("样品编号【%s】重复!", sample.getCode()));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment