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); } src/main/java/com/nanometer/smartlab/dao/OpeApplyDao.xml
@@ -410,6 +410,7 @@ sr.dangerous_flag, oa.num, oa.apply_user_id apply_user, oa.used, su.`name` apply_user_id, su.project, su1.`name` as projectManage, 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); } 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 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 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> 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); } src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
@@ -729,7 +729,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); } } 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; 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); } 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>