From a67b4bdc466d965c1cc4563711ad75c34b52c16a Mon Sep 17 00:00:00 2001 From: gdg <764716047@qq.com> Date: 星期二, 12 一月 2021 11:12:07 +0800 Subject: [PATCH] 模块:实验室管理 修改:导入新增课题组 提出:秦老师 --- src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java | 3 +++ src/main/java/com/nanometer/smartlab/service/SysProjectService.java | 3 +++ src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java | 22 ++++++++++++++++++---- src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java | 5 +++++ src/main/webapp/resources/template/实验室导入模板.xlsx | 0 src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml | 7 +++++++ 6 files changed, 36 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java index 5153a26..86ff06f 100644 --- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java +++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java @@ -2,16 +2,14 @@ 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.SysReagent; import com.nanometer.smartlab.service.BaseMetaService; +import com.nanometer.smartlab.service.SysProjectService; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; @@ -46,6 +44,8 @@ private SysLaboratoryService sysLaboratoryService; @Resource private BaseMetaService baseMetaService; + @Resource + private SysProjectService sysProjectService; /** * 数据源 */ @@ -162,6 +162,20 @@ laboratory.setLocation1(valuesList.get(4)); laboratory.setLocation2(valuesList.get(5)); laboratory.setDepartment(returnDepartId(departList,valuesList.get(6))); + + if (valuesList.size() > 7 && !valuesList.get(7).replace(" ","").isEmpty()){ + List<String> projects = Arrays.asList(valuesList.get(7).split(",")); + for (String project : projects) { + //不存再就直接推出 + if (!sysProjectService.isExistProject(project)) { + throw new Exception("课题组不存在,(" + i + "行)"); + } + } + //都存在就设置 + laboratory.setProject(valuesList.get(7).replace(" ","")); + }else{ + laboratory.setProject(null); + } sysLaboratories.add(laboratory); } sysLaboratoryService.insertSysReagentList(sysLaboratories); diff --git a/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java b/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java index a907dae..d8e505d 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java +++ b/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.java @@ -26,4 +26,7 @@ //获取不重复的课题组名 List<SysProject> selectDistinctProjects(); + + //课题组是否存在 + int selectByProject(String project); } diff --git a/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml index 5ad09c8..b2e0c03 100644 --- a/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml +++ b/src/main/java/com/nanometer/smartlab/dao/SysProjectDao.xml @@ -123,6 +123,13 @@ limit #{first}, #{pageSize} </if> </select> + <select id="selectByProject" resultType="java.lang.Integer"> + select count(0) + from sys_project + where valid_flag = 1 + and project = #{0} + + </select> <insert id="insertSysProject" parameterType="com.nanometer.smartlab.entity.SysProject"> insert into sys_project(id, project_id,project_name,sys_user_id,remark,valid_flag,creater_user,create_time,project) diff --git a/src/main/java/com/nanometer/smartlab/service/SysProjectService.java b/src/main/java/com/nanometer/smartlab/service/SysProjectService.java index 66c5bb5..7aad3f5 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysProjectService.java +++ b/src/main/java/com/nanometer/smartlab/service/SysProjectService.java @@ -34,4 +34,7 @@ void importProject(FileUploadEvent event, SysUser user) throws Exception; List<SysProject> getAll(); + + //课题组是否存在 + Boolean isExistProject(String project); } diff --git a/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java index 033e838..0133124 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java @@ -245,6 +245,11 @@ } @Override + public Boolean isExistProject(String project) { + return sysProjectDao.selectByProject(project) > 0; + } + + @Override public List<SysProject> getSysProjectList(int first, int pageSize) { Map<String, Object> params = new HashMap<>(); params.put("first", first); diff --git "a/src/main/webapp/resources/template/\345\256\236\351\252\214\345\256\244\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" "b/src/main/webapp/resources/template/\345\256\236\351\252\214\345\256\244\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" index 09001d4..083417a 100644 --- "a/src/main/webapp/resources/template/\345\256\236\351\252\214\345\256\244\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" +++ "b/src/main/webapp/resources/template/\345\256\236\351\252\214\345\256\244\345\257\274\345\205\245\346\250\241\346\235\277.xlsx" Binary files differ -- Gitblit v1.9.2