From 3ef5a9d0aba195d77aa22591b55a9ce9e43372ca Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期四, 22 四月 2021 14:02:00 +0800
Subject: [PATCH] 实验室库存 新增查询条件:实验室名称

---
 src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml                  |    9 +++++++++
 src/main/java/com/nanometer/smartlab/controller/LaboratoryStockMngController.java |   14 +++++++++++---
 src/main/webapp/laboratory_stock_mng.xhtml                                        |    5 ++++-
 src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java     |    9 ++++++---
 src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java         |    6 +++---
 5 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryStockMngController.java
index f0cd689..cf861c5 100644
--- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryStockMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryStockMngController.java
@@ -59,6 +59,7 @@
 	private List<SysLaboratoryContainer> laboratoryContainers;
 
 	private String reagentCode;
+	private String labName;
 
 	/**
 	 * 数据模型
@@ -93,11 +94,11 @@
 					System.out.println(reagentId);
 					try {
 						int count = opeReagentStatusService.getOpeReagentStatusTotalCountForLab(reagentId, null,
-								ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId());
+								ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId(),labName);
 						this.setRowCount(count);
 						if (count > 0) {
 							list = opeReagentStatusService.getOpeReagentStatusListForLab(reagentId, null,
-									ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId(), first, pageSize);
+									ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId(),labName, first, pageSize);
 						}
 					} catch (Exception e) {
 						logger.error(e);
@@ -169,7 +170,7 @@
 	public void exportLabStock() {
 		try {
 			List<Map> list = opeReagentStatusService.selectExportList(reagentId, null,
-					ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId());
+					ArrivalStatus.LABORATORY.getKey(), reagentCode, getUserId(),labName);
 			opeReagentStatusService.exportLabStock2Excel(list);
 			FacesUtils.info("导出成功");
 		}catch (Exception e){
@@ -283,4 +284,11 @@
 		this.laboratoryContainers = laboratoryContainers;
 	}
 
+	public String getLabName() {
+		return labName;
+	}
+
+	public void setLabName(String labName) {
+		this.labName = labName;
+	}
 }
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml
index ca34508..57cb6b2 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml
@@ -270,6 +270,9 @@
 			<when test="status == 2 and project != null and project != ''">
 				and sw.project like concat("%",#{project},"%")
 			</when>
+            <when test="status == 2 and labName != null and labName != ''">
+                and sw.name like concat("%",#{labName},"%")
+            </when>
 		</choose>
 		order by oa.reagent_code asc
 		<if test="first != null and pageSize != null">
@@ -360,6 +363,9 @@
 			<when test="status == 2 and project != null and project != ''">
 				and sw.project like concat("%",#{project},"%")
 			</when>
+            <when test="status == 2 and labName != null and labName != ''">
+                and sw.name like concat("%",#{labName},"%")
+            </when>
 		</choose>
 	</select>
 
@@ -627,6 +633,9 @@
 			<when test="status == 2 and project != null and project != ''">
 				and sw.project like concat("%",#{project},"%")
 			</when>
+            <when test="status == 2 and labName != null and labName != ''">
+                and sw.name like concat("%",#{labName},"%")
+            </when>
 		</choose>
 		order by oa.reagent_code asc
 	</select>
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java
index 3b30d16..465693c 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java
@@ -35,9 +35,9 @@
 			String userId);
 
 	public List<OpeReagentStatus> getOpeReagentStatusListForLab(String name, String articleNumber, Integer status,
-																String reagentCode, String userId, Integer first, Integer pageSize);
+																String reagentCode, String userId, String labName, Integer first, Integer pageSize);
 	public int getOpeReagentStatusTotalCountForLab(String name, String articleNumber, Integer status, String reagentCode,
-												   String userId);
+												   String userId,String labName);
 	List<OpeReagentStatus> getOpeReagentStatusListByName(String reagentId, String articleNumber, Integer status,
 			String reagentCode, String userId, Integer first, Integer pageSize);
 
@@ -109,7 +109,7 @@
 	int getReagentNumInWarehouse(String id, String articleNumber, String warehouseId);
 
     List<Map> selectExportList(String name, String articleNumber, Integer status,
-							   String reagentCode, String userId);
+							   String reagentCode, String userId,String labName);
 
 	void exportLabStock2Excel(List<Map> list) throws Exception;
 }
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
index b2245e9..73a3fd7 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusServiceImpl.java
@@ -103,13 +103,14 @@
 
 	@Transactional(propagation = Propagation.REQUIRED)
 	public List<OpeReagentStatus> getOpeReagentStatusListForLab(String name, String articleNumber, Integer status,
-														  String reagentCode, String userId, Integer first, Integer pageSize) {
+														  String reagentCode, String userId,String labName, Integer first, Integer pageSize) {
 		try {
 			Map<String, Object> params = new HashMap<String, Object>();
 
 			params.put("name", "%" + name + "%");
 			params.put("articleNumber", articleNumber);
 			params.put("status", status);
+			params.put("labName", labName);
 //			addParamByUserId(userId, params);
 			if (StringUtils.isNotBlank(userId)) {
 				SysUser sysUser = sysUserService.getSysUser(userId);
@@ -137,7 +138,7 @@
 
 	@Transactional(propagation = Propagation.REQUIRED)
 	public int getOpeReagentStatusTotalCountForLab(String name, String articleNumber, Integer status, String reagentCode,
-											 String userId) {
+											 String userId,String labName) {
 		try {
 			Map<String, Object> params = new HashMap<String, Object>();
 			params.put("name", "%" + name + "%");
@@ -159,6 +160,7 @@
 				params.put("reagentCode", "%" + reagentCode + "%");
 			}
 			params.put("status", status);
+			params.put("labName", labName);
 			return this.opeReagentStatusDao.getOpeReagentStatusTotalCountForLab(params);
 		} catch (DataAccessException e) {
 			logger.error(e.getMessage(), e);
@@ -1090,12 +1092,13 @@
 	 * @date 2021/4/22 10:33
 	 */
 	@Override
-	public List<Map> selectExportList(String name, String articleNumber, Integer status, String reagentCode, String userId) {
+	public List<Map> selectExportList(String name, String articleNumber, Integer status, String reagentCode, String userId,String labName) {
 
 		Map<String, Object> params = new HashMap<>();
 		params.put("name", name);
 		params.put("articleNumber", articleNumber);
 		params.put("status", status);
+		params.put("labName", labName);
 		if (StringUtils.isNotBlank(userId)) {
 			SysUser sysUser = sysUserService.getSysUser(userId);
 			BaseRole baseRole = baseRoleService.getBaseRole(sysUser.getRoleId());
diff --git a/src/main/webapp/laboratory_stock_mng.xhtml b/src/main/webapp/laboratory_stock_mng.xhtml
index 18e57d6..7573dde 100644
--- a/src/main/webapp/laboratory_stock_mng.xhtml
+++ b/src/main/webapp/laboratory_stock_mng.xhtml
@@ -15,7 +15,7 @@
 		<p:panel styleClass="center-header">
 			<p:outputLabel styleClass="title" value="实验室库存管理"></p:outputLabel>
 			<p:panel styleClass="center-header">
-				<p:panelGrid styleClass="filter" columns="8">
+				<p:panelGrid styleClass="filter" columns="10">
 
 					<p:outputLabel value="试剂名称:"></p:outputLabel>
 					<p:inputText value="#{laboratoryStockMngController.reagentId}"></p:inputText>
@@ -30,6 +30,9 @@
 					<p:outputLabel value="条形码:"></p:outputLabel>
 					<p:inputText value="#{laboratoryStockMngController.reagentCode}"></p:inputText>
 
+                    <p:outputLabel value="实验室:"></p:outputLabel>
+                    <p:inputText value="#{laboratoryStockMngController.labName}"></p:inputText>
+
 					<p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
 
 					<p:commandButton value="导出" styleClass="store-btn" ajax="false" actionListener="#{laboratoryStockMngController.exportLabStock}"

--
Gitblit v1.9.2