From e7211274dde4b671afe98394f5ec14148b7b48eb Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期一, 07 四月 2025 15:11:55 +0800
Subject: [PATCH] 成品下单检验项目人员分配
---
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java | 3 ++-
inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java | 9 +++++++++
ruoyi-system/src/main/resources/mapper/system/UserMapper.xml | 6 ++----
inspect-server/src/main/java/com/ruoyi/inspect/service/impl/InsOrderServiceImpl.java | 13 +++++++++++--
inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsProduct.java | 3 +++
inspect-server/src/main/resources/mapper/InsProductMapper.xml | 8 ++++++++
6 files changed, 35 insertions(+), 7 deletions(-)
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
index 66334f8..eec4fa9 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/mapper/InsProductMapper.java
@@ -67,6 +67,15 @@
* @return
*/
List<InsProduct> selectProductByOrderId(Integer orderId);
+
+ /**
+ * 鎵归噺淇敼妫�楠岄」鐩楠屼汉鍛業D
+ *
+ * @param insProductIds
+ * @param userId
+ * @return
+ */
+ int batchUpdateInsProductCheckUserId(@Param("insProductIds") List <Integer> insProductIds, @Param("checkUserId") Integer userId);
}
diff --git a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsProduct.java b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsProduct.java
index ba9cb6a..bda04df 100644
--- a/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsProduct.java
+++ b/inspect-server/src/main/java/com/ruoyi/inspect/pojo/InsProduct.java
@@ -211,4 +211,7 @@
@ApiModelProperty(value = "鑷叧鑱�(缁戝畾id)")
private Integer bindingProductId;
+ @ApiModelProperty(value = "妫�楠屼汉鍛業D")
+ private Integer checkUserId;
+
}
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 aed6e35..7b2c20d 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
@@ -12,6 +12,7 @@
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -43,6 +44,7 @@
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@@ -120,7 +122,6 @@
.in(InsProduct::getInsSampleId, ids)
.eq(InsProduct::getState, 1)
.select(InsProduct::getSonLaboratory).groupBy(InsProduct::getSonLaboratory));
-
// 鎵归噺娣诲姞妫�楠屼换鍔$姸鎬佽〃
List<InsOrderState> insOrderStateList = insProducts.stream().map(insProduct -> {
InsOrderState insOrderState = new InsOrderState();
@@ -188,6 +189,14 @@
return auxiliaryOutputWorkingHours;
}).collect(Collectors.toList());
+
+ // 鍒濇鍒嗛厤妫�楠屼汉锛屽悇涓楠岄」榛樿璁㈠崟鐨勬楠屼汉
+ List<Integer> insProductIds = insProductList.stream().map(insproduct -> {
+ return insproduct.getId();
+ }).collect(Collectors.toList());
+ if(!CollectionUtils.isEmpty(insProductIds)){
+ insProductMapper.batchUpdateInsProductCheckUserId(insProductIds, userId);
+ }
auxiliaryOutputWorkingHoursTemporaryService.saveBatch(outputWorkingHours);
return 1;
@@ -491,7 +500,7 @@
}
// 鐢熸垚缂栧彿
String no = numberGenerator.generateNumberWithPrefix(3,
- "JCZX/ZB-" + code + LimsDateUtil.resetDate(LocalDateTime.now()),
+ "JCZX/SP-" + code + LimsDateUtil.resetDate(LocalDateTime.now()),
InsOrder::getEntrustCode);
// 鍒ゆ柇鏄惁鏄搴︽楠�, 鏄搴︽楠屽彇娑堝師鏉愭枡瀛e害妫�楠屼笅鍗�
if (InsOrderTypeConstants.QUARTERLY_TEST.equals(order.getOrderType())) {
diff --git a/inspect-server/src/main/resources/mapper/InsProductMapper.xml b/inspect-server/src/main/resources/mapper/InsProductMapper.xml
index 908cc0e..b2e6807 100644
--- a/inspect-server/src/main/resources/mapper/InsProductMapper.xml
+++ b/inspect-server/src/main/resources/mapper/InsProductMapper.xml
@@ -149,4 +149,12 @@
left join ins_sample is2 on is2.id = ip.ins_sample_id
where is2.ins_order_id = #{orderId}
</select>
+
+ <update id="batchUpdateInsProductCheckUserId">
+ UPDATE ins_product SET check_user_id = #{checkUserId}
+ WHERE ID IN
+ <foreach collection="insProductIds" open="(" close=")" item="item" separator=",">
+ #{item}
+ </foreach>
+ </update>
</mapper>
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
index 71fe3b3..bd66fa2 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/UserServiceImpl.java
@@ -38,7 +38,8 @@
switch (type) {
case "1":
- return baseMapper.selectQualityUserList();
+ List<User> userList = baseMapper.selectQualityUserList();
+ return userList;
case "2":
return baseMapper.selectDepartmentLimsUserList(SecurityUtils.getUserId().intValue());
}
diff --git a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
index 59a87d0..a75855c 100644
--- a/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/UserMapper.xml
@@ -77,10 +77,8 @@
u1.name_en,
u1.depart_lims_id
from user u1
- left join sys_user_role sur on sur.user_id = u1.id
- where sur.role_id not in (1, 15, 16, 17)
- and u1.status = '0'
- group by u1.id
+ WHERE u1.id IN (SELECT user_id FROM sys_user_role sur where sur.role_id not in (1, 15, 16, 17))
+ and u1.status = '0'
</select>
<!-- 鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛閮ㄩ棬涓嬬殑鎵�鏈夌敤鎴� -->
--
Gitblit v1.9.3