From aab1d1e20e7b4b72a9bd98c5d26fdfb087b4c57b Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期二, 02 二月 2021 18:07:52 +0800 Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/yufei' into master --- src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java | 2 + src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml | 6 +- src/main/webapp/laboratory_mng.xhtml | 2 src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml | 2 + src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java | 45 +++++++++++++--------- src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml | 6 ++ src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java | 2 src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java | 4 + src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java | 2 src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java | 5 ++ src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java | 2 src/main/webapp/warehouse_reagent_use_person.xhtml | 4 ++ src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml | 9 ++++ src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml | 6 ++ src/main/java/com/nanometer/smartlab/entity/OpeApplyReserve.java | 9 ++++ src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 6 ++- src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java | 1 src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java | 4 ++ 18 files changed, 85 insertions(+), 32 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java index 95e1f42..f00e5f5 100644 --- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java @@ -2,16 +2,13 @@ import java.io.InputStream; import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map; +import java.util.*; import javax.annotation.Resource; import com.nanometer.smartlab.entity.BaseMeta; import com.nanometer.smartlab.entity.SysLaboratory; -import com.nanometer.smartlab.service.SysLaboratoryService; +import com.nanometer.smartlab.service.*; import org.apache.commons.lang.StringUtils; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFWorkbook; @@ -29,9 +26,6 @@ import com.nanometer.smartlab.entity.SysController; import com.nanometer.smartlab.entity.SysLaboratoryContainer; -import com.nanometer.smartlab.service.BaseMetaService; -import com.nanometer.smartlab.service.SysControllerService; -import com.nanometer.smartlab.service.SysLaboratoryContainerService; import com.nanometer.smartlab.util.Constants; import com.nanometer.smartlab.util.FacesUtils; @@ -55,6 +49,8 @@ private BaseMetaService baseMetaService; @Resource private SysLaboratoryService sysLaboratoryService; + @Resource + private SysProjectService sysProjectService; /** * 数据源 */ @@ -230,7 +226,7 @@ public void export2Excel(){ try { - List<Map> list = sysLaboratoryContainerService.exportExcelList(laboratoryType, laboratoryName); + List<Map> list = sysLaboratoryContainerService.exportExcelList(laboratoryType, laboratoryName,project,controllerName); sysLaboratoryContainerService.export2Excel(list); }catch (Exception e){ e.printStackTrace(); @@ -297,15 +293,28 @@ System.out.println("value : "+valuesList); SysLaboratoryContainer sysLaboratoryContainer=new SysLaboratoryContainer(); sysLaboratoryContainer.setLaboratoryId(getLabId(sysLaboratories,valuesList.get(0))); - sysLaboratoryContainer.setControllerCode(getConCode(sysControllers,valuesList.get(1))); - sysLaboratoryContainer.setContainerCode(valuesList.get(2)); - sysLaboratoryContainer.setType(getBaseMetaId(typeList,valuesList.get(3))); - sysLaboratoryContainer.setInfoCode(valuesList.get(4)); - sysLaboratoryContainer.setStructure(getBaseMetaId(struList,valuesList.get(5))); - sysLaboratoryContainer.setName(valuesList.get(6)); - if(valuesList.get(3).equals("智能柜")){ - sysLaboratoryContainer.setCharacterLeft(getBaseMetaId(charList,valuesList.get(7))); - sysLaboratoryContainer.setCharacterRight(getBaseMetaId(charList,valuesList.get(8))); + if (!valuesList.get(1).replace(" ","").isEmpty()){ + List<String> projects = Arrays.asList(valuesList.get(1).split(",")); + for (String project : projects) { + //不存再就直接推出 + if (!sysProjectService.isExistProject(project)) { + throw new Exception("课题组不存在,(" + i + "行)"); + } + } + //都存在就设置 + sysLaboratoryContainer.setProject(valuesList.get(1).replace(" ","")); + }else{ + sysLaboratoryContainer.setProject(null); + } + sysLaboratoryContainer.setControllerCode(getConCode(sysControllers,valuesList.get(2))); + sysLaboratoryContainer.setContainerCode(valuesList.get(3)); + sysLaboratoryContainer.setType(getBaseMetaId(typeList,valuesList.get(4))); + sysLaboratoryContainer.setInfoCode(valuesList.get(5)); + sysLaboratoryContainer.setStructure(getBaseMetaId(struList,valuesList.get(6))); + sysLaboratoryContainer.setName(valuesList.get(7)); + if(valuesList.get(4).equals("智能柜")){ + sysLaboratoryContainer.setCharacterLeft(getBaseMetaId(charList,valuesList.get(8))); + sysLaboratoryContainer.setCharacterRight(getBaseMetaId(charList,valuesList.get(9))); } sysLaboratoryContainers.add(sysLaboratoryContainer); } diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java index ca378ad..50578ee 100644 --- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java @@ -85,7 +85,7 @@ public void exportLab2Excel(){ try { - List<Map> list = sysLaboratoryService.exportLabList(type, name); + List<Map> list = sysLaboratoryService.exportLabList(type, name,project); sysLaboratoryService.exportLab2Excel(list); FacesUtils.info("导出成功"); }catch (Exception e){ diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java index 008d127..d88f662 100644 --- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java @@ -47,8 +47,8 @@ /** * Created by cmower on 17/11/20. */ -@Controller @PropertySource(value = "WEB-INF/config.properties",encoding = "utf-8") +@Controller @Scope("session") public class WarehouseStockMngController extends BaseController { @@ -624,7 +624,7 @@ FacesUtils.info("至少选择一个"); return; } - + this.userId = getUser().getId(); this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW, Constants.PAGE_WAREHOUSE_STOCK_MNG); } // @@ -649,6 +649,8 @@ } } checkTable = null; + // + this.userId = selectedTmpOrderList.get(0).getApplyUser(); this.menuController.goToPage(Constants.PAGE_WAREHOUSE_REAGENT_USE_NEW_PERSON, Constants.PAGE_WAREHOUSE_STOCK_MNG); } diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml index cda1831..76dd4c5 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml @@ -63,6 +63,7 @@ <result property="arrivalNum" column="arrival_num"></result> <result property="status" column="status" typeHandler="com.nanometer.smartlab.entity.handler.ApplyStatusHandler"></result> <result property="applyUserId" column="apply_user_id"></result> + <result property="applyUser" column="apply_user"></result> <result property="arrivalTime" column="arrival_time"></result> <result property="articleNumber" column="articleNumber"></result> <result property="projectManage" column="projectManage"/> @@ -408,6 +409,7 @@ bm1.meta_value productHome, sr.dangerous_flag, oa.num, + oa.apply_user_id apply_user, oa.used, su.`name` apply_user_id, su.project, diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java index b2dc7b2..3df1220 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java +++ b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.java @@ -55,4 +55,6 @@ void insertOpeReagentStatus2(OpeReagentStatus ors); int countReagentByArticleAndWarehouse(Map params); + + void updateArticleNumberByRCode(String code, String articleNumber); } diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml index 17ab524..25b2cd3 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeReagentStatusDao.xml @@ -425,8 +425,12 @@ <update id="updateByReId" parameterType="java.util.Map"> update ope_reagent_status set reagent_id=#{newReId} where reagent_id=#{oldReId} </update> + <update id="updateArticleNumberByRCode"> + update ope_reagent_status set article_number = #{1} + where reagent_code = #{0} + </update> -<select id="selectReagentCodesByReId" parameterType="java.lang.String" resultType="java.lang.String"> + <select id="selectReagentCodesByReId" parameterType="java.lang.String" resultType="java.lang.String"> select reagent_code from ope_reagent_status WHERE reagent_id = #{reagentId} and valid_flag = 1 diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml index 6e1b950..bbec73e 100644 --- a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml @@ -281,14 +281,14 @@ </if> </select> <select id="getApplyInfo" resultType="com.nanometer.smartlab.entity.dto.PersonUseDetail"> - SELECT + SELECT ors.reagent_id reagentId, ors.article_number articleNumber, ouf.reagent_code reagentCode, sr.product_sn productSn, sr.NAME reagentName, - bm1.meta_value reagentFormat, - CONCAT(sr.per_box,bm1.meta_value) perInfo, + bm.meta_value reagentFormat, + CONCAT(sr.main_metering,bm1.meta_value) perInfo, bm2.meta_value productHome, bm3.meta_value controlProducts from `ope_use_flow` ouf diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml index 36d76e3..7b9520c 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml @@ -99,7 +99,8 @@ bm1.meta_value containerType , slc.info_code infoCode , bm3.meta_value structure, - slc.`name` name + slc.`name` name, + slc.project FROM sys_laboratory_container slc LEFT JOIN base_meta bm1 ON bm1.id = slc.type @@ -117,6 +118,12 @@ <if test="name != null and name != ''"> and sl.name like concat("%",#{name},"%") </if> + <if test="project != null and project != ''"> + and slc.project like concat("%",#{project},"%") + </if> + <if test="controllerName != null and controllerName != ''"> + and sc.controller_name like concat("%",#{controllerName},"%") + </if> order by sl.name ASC,sc.controller_name,slc.container_code,slc.name </select> diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml index a557fe8..4e3e7c7 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml @@ -61,7 +61,8 @@ CONCAT(location1,'-',location2) END location, - bm2.meta_value department + bm2.meta_value department, + sl.project from sys_laboratory as sl LEFT JOIN base_meta bm1 on bm1.id = sl.type left JOIN base_meta bm2 on bm2.id = sl.department @@ -72,6 +73,9 @@ <if test="type != null and type != ''"> and sl.type = #{type}; </if> + <if test="project != null and project != ''"> + and sl.project like concat("%",#{project},"%") + </if> </select> <select id="getSysLaboratoryTotalCount" parameterType="java.util.Map" resultType="int"> diff --git a/src/main/java/com/nanometer/smartlab/entity/OpeApplyReserve.java b/src/main/java/com/nanometer/smartlab/entity/OpeApplyReserve.java index 389d25d..20d23da 100644 --- a/src/main/java/com/nanometer/smartlab/entity/OpeApplyReserve.java +++ b/src/main/java/com/nanometer/smartlab/entity/OpeApplyReserve.java @@ -39,6 +39,7 @@ private String project; private String projectManage; + private String applyUser; public ApplyStatus getStatus() { return status; @@ -231,4 +232,12 @@ public void setCacheUpdateList(List<OpeWarehouseReserve> cacheUpdateList) { this.cacheUpdateList = cacheUpdateList; } + + public String getApplyUser() { + return applyUser; + } + + public void setApplyUser(String applyUser) { + this.applyUser = applyUser; + } } diff --git a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java index da2cb69..a193774 100644 --- a/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java +++ b/src/main/java/com/nanometer/smartlab/service/OpeReagentStatusService.java @@ -105,4 +105,5 @@ void updateOpeReagentStatus(OpeReagentStatus opeReagentStatus); int getReagentNumInWarehouse(String id, String articleNumber, String warehouseId); + } diff --git a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java index ea5a824..8033b98 100644 --- a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java @@ -726,7 +726,11 @@ List<BaseMeta> baseMetaList = baseMetaDao.getBaseMetaList(metaMap); opeUseFlow.setOperateState(baseMetaList.get(0).getId()); this.opeUseFlowService.insertOpeUseFlow(opeUseFlow); + //更新试剂状态表 :批号 + opeReagentStatusDao.updateArticleNumberByRCode(reagentCodes.get(0),warehouseReserve.getArticleNumber()); + reagentCodes.remove(0); + } } diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java index df8cdec..737f8dd 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java +++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java @@ -31,7 +31,7 @@ Map selectLocationByContainerCode(String containerCode); - List<Map> exportExcelList(String laboratoryType, String laboratoryName); + List<Map> exportExcelList(String laboratoryType, String laboratoryName,String project,String controllerName); void export2Excel(List<Map> list) throws Exception; diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java index 07ada63..5a5a6f6 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java @@ -262,10 +262,12 @@ } @Override - public List<Map> exportExcelList(String laboratoryType, String laboratoryName) { + public List<Map> exportExcelList(String laboratoryType, String laboratoryName,String project,String controllerName) { Map<String, String> params = new HashMap<>(); params.put("type", laboratoryType); params.put("name", laboratoryName); + params.put("project", project); + params.put("controllerName", controllerName); return sysLaboratoryContainerDao.exportExcelList(params); } @@ -280,6 +282,7 @@ map.put("infoCode", "临时存储库状态码"); map.put("structure", "临时存储库结构"); map.put("name", "临时存储库名称"); + map.put("project", "课题组"); ExcelUtils.export2Excel(list,"实验室临时存储库管理",map); } diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java index e07e4cd..6861643 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java +++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java @@ -35,7 +35,7 @@ void exportLab2Excel(List<Map> list) throws Exception; - List<Map> exportLabList(String type, String name); + List<Map> exportLabList(String type, String name,String project); List<LaboratoryVo.Laboratory> getLaboratoryByProject(String project); diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java index 70a1d09..60d56e6 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java @@ -245,16 +245,18 @@ map.put("barCode", "地址码"); map.put("location", "地址"); map.put("department", "部门"); + map.put("project", "课题组"); ExcelUtils.export2Excel(list,"实验室信息",map); } @Override - public List<Map> exportLabList(String type, String name) { + public List<Map> exportLabList(String type, String name,String project) { Map<String,String> params = new HashMap<>(); params.put("type", type); params.put("name", name); + params.put("project", project); return sysLaboratoryDao.exportLabList(params); } diff --git a/src/main/webapp/laboratory_mng.xhtml b/src/main/webapp/laboratory_mng.xhtml index 0d36f3c..b93d58d 100644 --- a/src/main/webapp/laboratory_mng.xhtml +++ b/src/main/webapp/laboratory_mng.xhtml @@ -70,7 +70,7 @@ <h:outputText value="#{row.name}"></h:outputText> </p:column> - <p:column headerText="所属项目组"> + <p:column headerText="课题组"> <h:outputText value="#{row.project}"></h:outputText> </p:column> diff --git a/src/main/webapp/warehouse_reagent_use_person.xhtml b/src/main/webapp/warehouse_reagent_use_person.xhtml index 4a40162..d4def34 100644 --- a/src/main/webapp/warehouse_reagent_use_person.xhtml +++ b/src/main/webapp/warehouse_reagent_use_person.xhtml @@ -92,6 +92,10 @@ <h:outputText value="#{row.articleNumber}"></h:outputText> </p:column> + <p:column headerText="申领人"> + <h:outputText value="#{row.applyUserId}"></h:outputText> + </p:column> + <p:column headerText="申请数量"> <h:outputText value="#{row.num}"></h:outputText> </p:column> -- Gitblit v1.9.2