From 781c5f73033ad1ae8c350210c46b4e24925d427b Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期四, 17 九月 2026 17:29:16 +0800
Subject: [PATCH] fix:委托编号更改
---
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java | 30 ++++++++++++++++++++++--------
1 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
index be9fcb1..d7c0021 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java
@@ -464,6 +464,10 @@
if (dto == null || dto.getInsOrder() == null || dto.getStandardTreeId() == null) {
throw new ErrorException("涓嬪崟淇℃伅鎴栨爣鍑嗕笉鑳戒负绌�");
}
+ String sampleCode = StringUtils.trim(dto.getSampleCode());
+ if (StringUtils.isBlank(sampleCode) || sampleCode.length() < 2) {
+ throw new ErrorException("鏍峰搧缂栧彿涓嶈兘涓虹┖涓斾笉鑳藉皯浜�2浣�");
+ }
StandardTree standard = standardTreeService.getById(dto.getStandardTreeId());
if (standard == null || StringUtils.isBlank(standard.getSample())
|| standard.getSampleType() != null || standard.getModel() != null) {
@@ -540,7 +544,7 @@
InsSample sample = new InsSample();
sample.setInsOrderId(order.getId());
- sample.setSampleCode(dto.getSampleCode());
+ sample.setSampleCode(sampleCode);
sample.setFactory(null);
sample.setLaboratory(standard.getLaboratory());
sample.setSampleType(null);
@@ -673,15 +677,28 @@
if (insOrder.getState() == 1) {
//瀹℃牳閫氳繃鎵嶄細鐢熸垚濮旀墭缂栧彿
InsOrder order = this.getById(insOrder.getId());
- // 濮旀墭缂栧彿鎸夐�佹牱鏃ユ湡鐙珛娴佹按锛屼緥濡傦細LMSY-20260909-01銆�
+ List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery()
+ .eq(InsSample::getInsOrderId, insOrder.getId())
+ .orderByAsc(InsSample::getId));
+ // 濮旀墭缂栧彿鎸夐�佹牱鏃ユ湡鐢熸垚锛涙柊鑱氬崟鏍峰搧璁㈠崟鐨勬湯涓や綅鍙栨牱鍝佺紪鍙锋湯涓や綅銆�
// 鍘嗗彶/澶栭儴璁㈠崟鏈~鍐欓�佹牱鏃ユ湡鏃跺洖閫�鍒板綋澶╋紝閬垮厤褰卞搷鍘熸湁娴佺▼銆�
LocalDate entrustDate = order.getSampleDate() == null ? LocalDate.now() : order.getSampleDate();
String entrustCodePrefix = "LMSY-"
+ entrustDate.format(DateTimeFormatter.BASIC_ISO_DATE)
+ "-";
- String no = numberGenerator.generateNumberWithPrefix(2,
- entrustCodePrefix,
- InsOrder::getEntrustCode);
+ String no;
+ if (isDirectTemplateOrder(order, insSamples)) {
+ String sampleCode = insSamples.get(0).getSampleCode();
+ if (StringUtils.isBlank(sampleCode) || sampleCode.trim().length() < 2) {
+ throw new ErrorException("鏍峰搧缂栧彿涓嶈兘涓虹┖涓斾笉鑳藉皯浜�2浣�");
+ }
+ sampleCode = sampleCode.trim();
+ no = entrustCodePrefix + sampleCode.substring(sampleCode.length() - 2);
+ } else {
+ no = numberGenerator.generateNumberWithPrefix(2,
+ entrustCodePrefix,
+ InsOrder::getEntrustCode);
+ }
// 鍒ゆ柇鏄惁鏄搴︽楠�, 鏄搴︽楠屽彇娑堝師鏉愭枡瀛e害妫�楠屼笅鍗�
if (InsOrderTypeConstants.QUARTERLY_TEST.equals(order.getOrderType())) {
ifsInventoryQuantityMapper.update(null, Wrappers.<IfsInventoryQuantity>lambdaUpdate()
@@ -699,9 +716,6 @@
}
int count = 1;
- // 鏌ヨ鏍峰搧琛�
- List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery()
- .eq(InsSample::getInsOrderId, insOrder.getId()));
for (InsSample insSample : insSamples) {
if (StringUtils.isBlank(insSample.getSampleCode())) {
// 濡傛灉鍙湁涓�涓牱鍝佸氨涓嶉渶瑕佹嫾鎺ユ暟瀛�
--
Gitblit v1.9.3