From 31ffbaf322685984516cfb284fa58741debf4e96 Mon Sep 17 00:00:00 2001
From: gdg <764716047@qq.com>
Date: Fri, 29 Jan 2021 09:12:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/yufei' into master
---
src/main/java/com/nanometer/smartlab/controller/OrderMngController.java | 2
src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml | 4
src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml | 111 ++++++
src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java | 21 +
src/main/java/com/nanometer/smartlab/service/SysUserService.java | 4
src/main/java/com/nanometer/smartlab/controller/OpeUseFlowInfoController.java | 14
src/main/webapp/warehouse_stock_mng.xhtml | 5
src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java | 8
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java | 10
src/main/java/com/nanometer/smartlab/controller/ProjectMngController.java | 2
src/main/webapp/user_mng.xhtml | 8
src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java | 13
src/main/webapp/WEB-INF/config-mybatis.xml | 2
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml | 3
src/main/webapp/personal_use_info.xhtml | 278 ++++++++++++--
src/main/java/com/nanometer/smartlab/api/ApiAction.java | 2
src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java | 48 ++
src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java | 25 +
src/main/webapp/laboratory_mng.xhtml | 5
src/main/java/com/nanometer/smartlab/entity/dto/PersonUseDetail.java | 98 +++++
src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java | 182 +++++++++
src/main/webapp/reagent_user_flow_info.xhtml | 5
src/main/java/com/nanometer/smartlab/controller/UserMngController.java | 22 +
src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java | 27 +
src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java | 2
src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java | 5
src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java | 8
src/main/java/com/nanometer/smartlab/service/OpeUseFlowService.java | 13
src/main/webapp/laboratory_container_mng.xhtml | 8
src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml | 12
src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml | 11
src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveService.java | 4
src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.java | 7
src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java | 67 +++
src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java | 6
35 files changed, 939 insertions(+), 103 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/api/ApiAction.java b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
index 4ce057e..fd70871 100644
--- a/src/main/java/com/nanometer/smartlab/api/ApiAction.java
+++ b/src/main/java/com/nanometer/smartlab/api/ApiAction.java
@@ -567,7 +567,7 @@
logger.info("getUserInfo start...");
List<SysUser> userList = sysUserService.getSysUserInfoList(startTime, endTime);
- List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null);
+ List<SysLaboratoryContainer> allLaboratoryContainerList = sysLaboratoryContainerService.getSysLaboratoryContainerList(null,null,null,null,null,null,null);
List<SysWarehouseContainer> allWarehouseContainerList = sysWarehouseContainerService.getSysWarehouseContainerList(null,null,null,null,null);
List<String> containerCodeList = new ArrayList<String>();
diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java
index 977f2bc..95e1f42 100644
--- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryContainerMngController.java
@@ -72,6 +72,8 @@
private String laboratoryType;
private String laboratoryName;
+ private String project;
+ private String controllerName;
private int action;
@@ -384,11 +386,11 @@
List<SysLaboratoryContainer> list = null;
try {
int count = sysLaboratoryContainerService.getSysLaboratoryContainerTotalCount(laboratoryType,
- laboratoryName,null);
+ laboratoryName,null,project,controllerName);
this.setRowCount(count);
if (count > 0) {
list = sysLaboratoryContainerService.getSysLaboratoryContainerList(laboratoryType,
- laboratoryName,null, first, pageSize);
+ laboratoryName,null,project,controllerName, first, pageSize);
}
} catch (Exception e) {
logger.error(e);
@@ -471,4 +473,19 @@
this.controllers = controllers;
}
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
+
+ public String getControllerName() {
+ return controllerName;
+ }
+
+ public void setControllerName(String controllerName) {
+ this.controllerName = controllerName;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
index 86ff06f..ca378ad 100644
--- a/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/LaboratoryMngController.java
@@ -60,6 +60,7 @@
private List<SysLaboratory> selectedList;
private String type;
private String name;
+ private String project;
private int action;
@@ -279,10 +280,10 @@
Map<String, Object> filters) {
List<SysLaboratory> list = null;
try {
- int count = sysLaboratoryService.getSysLaboratoryTotalCount(type, name);
+ int count = sysLaboratoryService.getSysLaboratoryTotalCount(type, name,project);
this.setRowCount(count);
if (count > 0) {
- list = sysLaboratoryService.getSysLaboratoryList(type, name, first, pageSize);
+ list = sysLaboratoryService.getSysLaboratoryList(type, name,project, first, pageSize);
}
} catch (Exception e) {
logger.error(e);
@@ -344,4 +345,12 @@
public void setType(String type) {
this.type = type;
}
+
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/OpeUseFlowInfoController.java b/src/main/java/com/nanometer/smartlab/controller/OpeUseFlowInfoController.java
index 989d1a1..1df0b3a 100644
--- a/src/main/java/com/nanometer/smartlab/controller/OpeUseFlowInfoController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/OpeUseFlowInfoController.java
@@ -47,6 +47,8 @@
private Hashtable printTable;
+ private String containerCode;
+
public String getHouseName() {
return houseName;
}
@@ -98,10 +100,10 @@
Map<String, Object> filters) {
List<OpeUseFlow> list = null;
try {
- int count = opeUseFlowService.getOpeUseFlowTotalCountByName(houseName,reagentId, reagentCode, null, getUserId(),startDate,endDate);
+ int count = opeUseFlowService.getOpeUseFlowTotalCountByName(houseName,reagentId, reagentCode, containerCode,null, getUserId(),startDate,endDate);
this.setRowCount(count);
if (count > 0) {
- list = opeUseFlowService.getOpeUseFlowListByName(houseName,reagentId, reagentCode, null, getUserId(),startDate,endDate, first, pageSize);
+ list = opeUseFlowService.getOpeUseFlowListByName(houseName,reagentId, reagentCode, containerCode,null, getUserId(),startDate,endDate, first, pageSize);
}
} catch (Exception e) {
logger.error(e);
@@ -227,4 +229,12 @@
public void setPrintTable(Hashtable printTable) {
this.printTable = printTable;
}
+
+ public String getContainerCode() {
+ return containerCode;
+ }
+
+ public void setContainerCode(String containerCode) {
+ this.containerCode = containerCode;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/OrderMngController.java b/src/main/java/com/nanometer/smartlab/controller/OrderMngController.java
index 730bec7..c1f72a4 100644
--- a/src/main/java/com/nanometer/smartlab/controller/OrderMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/OrderMngController.java
@@ -63,7 +63,7 @@
private Map<String, List<SysWarehouseContainer>> warehouseIdContainerMap;
public void initRukuPage() {
- this.userSelectList = this.sysUserService.getSysUserList(null, null, null, null, null);
+ this.userSelectList = this.sysUserService.getSysUserList(null, null, null, null, null,null,null);
//将admin置于首位
for (int i = 0; i < userSelectList.size(); i++) {
if ("admin".equals(userSelectList.get(i).getAccount())){
diff --git a/src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java b/src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java
index 0b1b469..bd1da35 100644
--- a/src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/PersonalUseInfoController.java
@@ -1,16 +1,22 @@
package com.nanometer.smartlab.controller;
-import java.util.Date;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
import javax.annotation.Resource;
+import com.nanometer.smartlab.entity.OpeUseFlow;
+import com.nanometer.smartlab.entity.SysLaboratory;
+import com.nanometer.smartlab.entity.dto.ApplyListDto;
+import com.nanometer.smartlab.entity.dto.PersonUseDetail;
+import com.nanometer.smartlab.service.SysLaboratoryService;
import com.nanometer.smartlab.util.FacesUtils;
+import com.nanometer.smartlab.util.Utils;
import org.apache.log4j.Logger;
+import org.primefaces.context.RequestContext;
import org.primefaces.model.LazyDataModel;
import org.primefaces.model.SortOrder;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
@@ -38,6 +44,10 @@
@Resource
private SysReagentService sysReagentService;
+ @Resource
+ private SysLaboratoryService sysLaboratoryService;
+ @Value("${institute.name}")
+ String instituteName;
/**
* 数据源
@@ -48,6 +58,13 @@
private String applyPerson;
private Date startTime;
private Date endTime;
+ private String project;
+ private String department;
+ private String receiptNumber;
+ private LazyDataModel<OpeUseFlow> dataModel2;
+ private OpeUseFlow selectOne;
+ private List<PersonUseDetail> personUseDetail;
+ private Hashtable<String,Object> printTable;
private List<OpeReagentStatus> selectedList;
private List<SysReagent> reagentSelectList;
@@ -109,7 +126,75 @@
}
+ /**
+ * 生成领用单
+ */
+ public void generateReceipt() {
+ if (this.selectOne == null) {
+ FacesUtils.warn("请选择数据");
+ return;
+ }
+
+ printTable = new Hashtable<>();
+ printTable.put("head", instituteName);
+ printTable.put("title", "领用单");
+ printTable.put("applyPerson", selectOne.getUserName());
+ printTable.put("department", selectOne.getDepartment());
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
+ printTable.put("date", dateFormat.format(selectOne.getCreateTime()));
+ printTable.put("phone", selectOne.getPhone());
+ printTable.put("receiptNumber", selectOne.getReceiptNumber());
+ printTable.put("project", selectOne.getProject());
+ SysLaboratory sysLaboratory = sysLaboratoryService.getSysLaboratory(selectOne.getHouseId());
+ printTable.put("lab", sysLaboratory.getName());
+ //整理数据
+ List<PersonUseDetail> applyInfo = opeUseFlowService.getApplyInfo(selectOne.getReceiptNumber());
+ assert applyInfo.size() > 0;
+ List<ApplyListDto> applyList = new ArrayList<>();
+ Map<String, Integer> map = new HashMap<>();
+ for (PersonUseDetail pud : applyInfo) {
+ if (map.containsKey(pud.getReagentId())) {
+ map.put(pud.getReagentId(), map.get(pud.getReagentId()) + 1);
+ }else{
+ map.put(pud.getReagentId(), 1);
+ }
+ }
+ int sum = 0;
+ for (Map.Entry<String,Integer> entry : map.entrySet()) {
+ ApplyListDto apply = new ApplyListDto();
+ for (PersonUseDetail pud : applyInfo) {
+ if (entry.getKey().equals(pud.getReagentId())) {
+ apply.setControlProducts(pud.getControlProducts());
+ apply.setMainMetering(pud.getPerInfo());
+ apply.setNum(entry.getValue().toString());
+ apply.setProductCode(pud.getProductSn());
+ apply.setProductName(pud.getReagentName());
+ apply.setReagentFormat(pud.getReagentFormat());
+ applyList.add(apply);
+ sum += entry.getValue();
+ break;
+ }
+ }
+ }
+
+ applyList.add(new ApplyListDto("合计", "", "", "", "", String.valueOf(sum), ""));
+ printTable.put("applyList", applyList);
+ RequestContext.getCurrentInstance().execute("PF('printDialog').show()");
+ }
+
+ /**
+ * 查看详情
+ */
+
+ public void detailInfo() {
+ if (this.selectOne == null) {
+ FacesUtils.warn("请选择数据");
+ }
+
+ personUseDetail = opeUseFlowService.getApplyInfo(selectOne.getReceiptNumber());
+
+ }
@SuppressWarnings("serial")
public LazyDataModel<OpeReagentStatus> getDataModel() {
@@ -151,6 +236,45 @@
return dataModel;
}
+ public LazyDataModel<OpeUseFlow> getDataModel2() {
+ if (this.dataModel2 == null) {
+ this.dataModel2 = new LazyDataModel<OpeUseFlow>() {
+ @Override
+ public List<OpeUseFlow> load(int first, int pageSize, String sortField, SortOrder sortOrder,
+ Map<String, Object> filters) {
+ List<OpeUseFlow> list = null;
+ try {
+ int count = opeUseFlowService.getPersonalUseInfoCount(reagentCode, getUserId(),startTime,endTime,receiptNumber,department,project);
+ this.setRowCount(count);
+ if (count > 0) {
+ list = opeUseFlowService.getPersonalUseInfoList
+ (reagentCode, getUserId(),startTime,endTime ,receiptNumber,department,project,first,pageSize);
+ }
+ } catch (Exception e) {
+ logger.error(e);
+ }
+ return list;
+ }
+
+ @Override
+ public OpeUseFlow getRowData(String rowKey) {
+ Iterator<OpeUseFlow> iterator = this.iterator();
+ if (iterator != null) {
+ OpeUseFlow su = null;
+ while (iterator.hasNext()) {
+ su = iterator.next();
+ if (rowKey.equals(su.getReceiptNumber())) {
+ return su;
+ }
+ }
+ }
+ return null;
+ }
+ };
+ }
+ return dataModel2;
+ }
+
public String getReagentId() {
return reagentId;
}
@@ -191,4 +315,54 @@
public void setEndTime(Date endTime) {
this.endTime = endTime;
}
+
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
+
+ public String getDepartment() {
+ return department;
+ }
+
+ public void setDepartment(String department) {
+ this.department = department;
+ }
+
+ public String getReceiptNumber() {
+ return receiptNumber;
+ }
+
+ public void setReceiptNumber(String receiptNumber) {
+ this.receiptNumber = receiptNumber;
+ }
+
+
+ public OpeUseFlow getSelectOne() {
+ return selectOne;
+ }
+
+ public void setSelectOne(OpeUseFlow selectOne) {
+ this.selectOne = selectOne;
+ }
+
+
+ public List<PersonUseDetail> getPersonUseDetail() {
+ return personUseDetail;
+ }
+
+ public void setPersonUseDetail(List<PersonUseDetail> personUseDetail) {
+ this.personUseDetail = personUseDetail;
+ }
+
+ public Hashtable getPrintTable() {
+ return printTable;
+ }
+
+ public void setPrintTable(Hashtable printTable) {
+ this.printTable = printTable;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/ProjectMngController.java b/src/main/java/com/nanometer/smartlab/controller/ProjectMngController.java
index 6f1f31e..66cd58b 100644
--- a/src/main/java/com/nanometer/smartlab/controller/ProjectMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/ProjectMngController.java
@@ -73,7 +73,7 @@
private void initUserSelectList() {
logger.info("WarehouseStockMngController initUserSelectList start");
- this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null));
+ this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null,null,null));
}
public void setUserSelectList(List<SysUser> userSelectList) {
this.userSelectList = userSelectList;
diff --git a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
index fe55ece..9656bc2 100644
--- a/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/UserMngController.java
@@ -71,6 +71,8 @@
private List<BaseMeta> codeList;
private List<BaseRole> roleList;
private List<Waster> wasterSelectList;
+ private String project;
+ private String company;
public List<BaseRole> getRoleList() {
return roleList;
@@ -493,10 +495,10 @@
public List<SysUser> load(int first, int pageSize, String sortField, SortOrder sortOrder, Map<String, Object> filters) {
List<SysUser> list = null;
try {
- int count = sysUserService.getSysUserTotalCount(arp, name,departmentName);
+ int count = sysUserService.getSysUserTotalCount(arp, name,departmentName,project,company);
this.setRowCount(count);
if (count > 0) {
- list = sysUserService.getSysUserList(arp, name,departmentName, first, pageSize);
+ list = sysUserService.getSysUserList(arp, name,departmentName,project,company, first, pageSize);
}
} catch (Exception e) {
logger.error(e);
@@ -622,4 +624,20 @@
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
+
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
+
+ public String getCompany() {
+ return company;
+ }
+
+ public void setCompany(String company) {
+ this.company = company;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
index c7697d0..beca0e3 100644
--- a/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
+++ b/src/main/java/com/nanometer/smartlab/controller/WarehouseStockMngController.java
@@ -163,6 +163,7 @@
private String endReagentCode;
private String startReagentCodeForPerson;
private String endReagentCodeForPerson;
+ private String warehouseName;
private Integer editFlag;
private StreamedContent file;
@@ -373,7 +374,7 @@
private void initUserSelectList() {
logger.info("WarehouseStockMngController initUserSelectList start");
- this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null));
+ this.setUserSelectList(this.sysUserService.getSysUserList(null, null, null, null, null,null,null));
/**if(sysUserService.getSysUser(userId) == null)
{
this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByDep(this.getUserDepartment());
@@ -1658,11 +1659,11 @@
Map<String, Object> filters) {
List<OpeWarehouseReserve> list = null;
try {
- int count = opeWarehouseReserveService.getOpeWarehouseReserveTotalCountByName(reagentId, supplierId,productSn);
+ int count = opeWarehouseReserveService.getOpeWarehouseReserveTotalCountByName(reagentId, supplierId,productSn,warehouseName);
this.setRowCount(count);
if (count > 0) {
list = opeWarehouseReserveService.getOpeWarehouseReserveListByName(reagentId, supplierId, first,
- pageSize,productSn);
+ pageSize,productSn,warehouseName);
}
} catch (Exception e) {
logger.error(e);
@@ -1934,7 +1935,7 @@
realDataList=selectedList;
}else {
realDataList = opeWarehouseReserveService.getOpeWarehouseReserveListByName(reagentId, supplierId, null,
- null,productSn);
+ null,productSn,warehouseName);
}
List<String> headerList = new ArrayList<>();
headerList.add("试剂名称");
@@ -2535,7 +2536,7 @@
list.add(sysUser);
applyUserSelectList = list;
} else {
- applyUserSelectList = this.sysUserService.getSysUserList(null, null, null, null, null);
+ applyUserSelectList = this.sysUserService.getSysUserList(null, null, null, null, null,null,null);
}
}
return applyUserSelectList;
@@ -2682,7 +2683,9 @@
public List<SysLaboratory> getLaboratory() {
if(userId != null && userId.trim().length() > 0)
{
- this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByDep(sysUserService.getSysUser(userId).getDepartment());
+
+ //Todo 修改申领人的实验室显示信息
+ this.laboratory = this.sysLaboratoryService.getSysLaboratoryListByUserId(userId);
if(this.laboratory != null && this.laboratory.size() > 0)
{
//flag =true;
@@ -2862,7 +2865,7 @@
}
public List getConsignee() {
- List<SysUser> dataList = this.sysUserService.getSysUserList(null, null, null, null, null);
+ List<SysUser> dataList = this.sysUserService.getSysUserList(null, null, null, null, null,null,null);
//将admin置于首位
for (int i = 0; i < dataList.size(); i++) {
if ("admin".equals(dataList.get(i).getAccount())){
@@ -3000,4 +3003,12 @@
public void setReceiptNumber(String receiptNumber) {
this.receiptNumber = receiptNumber;
}
+
+ public String getWarehouseName() {
+ return warehouseName;
+ }
+
+ public void setWarehouseName(String warehouseName) {
+ this.warehouseName = warehouseName;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.java b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.java
index 3b913f9..352e62f 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.java
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.java
@@ -1,6 +1,7 @@
package com.nanometer.smartlab.dao;
import com.nanometer.smartlab.entity.OpeUseFlow;
+import com.nanometer.smartlab.entity.dto.PersonUseDetail;
import org.apache.ibatis.annotations.Param;
import org.springframework.dao.DataAccessException;
@@ -35,4 +36,10 @@
List<Map> getRegentInfoFromReceiptNumber(String receiptNumber);
Map getUserIdByReagentCode(String reagentCode, String id);
+
+ int countPersonalUseInfo(Map params);
+
+ List<OpeUseFlow> selectPersonalUseInfo(Map params);
+
+ List<PersonUseDetail> getApplyInfo(Map params);
}
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml
index d0b9b40..89ad484 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeUseFlowDao.xml
@@ -85,6 +85,10 @@
<if test="endDate != null and endDate !=''">
and oa.create_time <= #{endDate}
</if>
+ <if test="containerCode != null and containerCode !=''">
+ and wc.container_code = #{containerCode}
+ or lc.container_code =#{containerCode}
+ </if>
</sql>
<sql id="queryColumns">
@@ -179,6 +183,113 @@
and valid_flag = 1
limit 1
</select>
+ <select id="countPersonalUseInfo" resultType="java.lang.Integer">
+ select count(0) from (
+ SELECT count(0)
+ FROM
+ ope_use_flow ouf
+ LEFT JOIN sys_user su on su.id = ouf.user_id
+ LEFT JOIN base_meta bm on bm.id = ouf.operatestate
+ LEFT JOIN ope_reagent_status ors on ors.reagent_code = ouf.reagent_code
+ LEFT JOIN sys_reagent sr on sr.id = ors.reagent_id
+ left join base_meta bm1 on bm1.id = su.department
+ <if test="userId !=null and userId != ''">
+ LEFT JOIN sys_reagent sr2 on sr2.id = ouf.user_id
+ </if>
+ WHERE ouf.operatestate = #{operatestate}
+ and LENGTH(trim(ouf.receipt_number))>0
+ <if test="reagentCode !=null and reagentCode != ''">
+ and ouf.reagent_code like concat("%",#{reagentCode},"%")
+ </if>
+ <if test="startTime !=null and startTime != ''">
+ and ouf.create_time >#{startTime}
+ </if>
+ <if test="endTime !=null and endTime != ''">
+ and ouf.create_time <#{endTime}
+ </if>
+ <if test="project !=null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
+ <if test="department !=null and department != ''">
+ and su.bm1.meta_value like concat("%",#{department},"%")
+ </if>
+ <if test="receiptNumber !=null and receiptNumber != ''">
+ and ouf.receipt_number like concat("%",#{receiptNumber},"%")
+ </if>
+ group by ouf.receipt_number) a
+
+
+
+ </select>
+ <select id="selectPersonalUseInfo" resultType="com.nanometer.smartlab.entity.OpeUseFlow">
+ SELECT ouf.receipt_number receiptNumber,
+ count(ouf.reagent_code) applyNum,
+ su.name username,
+ su.project ,
+ su.phone,
+ bm1.meta_value department,
+ sl.name laboratoryName,
+ ouf.create_time createTime,
+ ouf.house_id houseId
+ FROM
+ ope_use_flow ouf
+ LEFT JOIN sys_user su on su.id = ouf.user_id
+ LEFT JOIN base_meta bm on bm.id = ouf.operatestate
+ LEFT JOIN ope_reagent_status ors on ors.reagent_code = ouf.reagent_code
+ LEFT JOIN sys_reagent sr on sr.id = ors.reagent_id
+ left join base_meta bm1 on bm1.id = su.department
+ left join sys_laboratory sl on sl.id = ouf.house_id
+ <if test="userId !=null and userId != ''">
+ LEFT JOIN sys_reagent sr2 on sr2.id = ouf.user_id
+ </if>
+ WHERE ouf.operatestate = #{operatestate}
+ and LENGTH(trim(ouf.receipt_number))>0
+ <if test="reagentCode !=null and reagentCode != ''">
+ and ouf.reagent_code like concat("%",#{reagentCode},"%")
+ </if>
+ <if test="startTime !=null and startTime != ''">
+ and ouf.create_time >#{startTime}
+ </if>
+ <if test="endTime !=null and endTime != ''">
+ and ouf.create_time <#{endTime}
+ </if>
+ <if test="project !=null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
+ <if test="department !=null and department != ''">
+ and su.bm1.meta_value like concat("%",#{department},"%")
+ </if>
+ <if test="receiptNumber !=null and receiptNumber != ''">
+ and ouf.receipt_number like concat("%",#{receiptNumber},"%")
+ </if>
+ group by ouf.receipt_number
+ ORDER BY ouf.create_time desc
+ <if test="first != null and pageSize != null">
+ limit #{first}, #{pageSize}
+ </if>
+ </select>
+ <select id="getApplyInfo" resultType="com.nanometer.smartlab.entity.dto.PersonUseDetail">
+ 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,
+ bm2.meta_value productHome,
+ bm3.meta_value controlProducts
+ from `ope_use_flow` ouf
+ LEFT JOIN ope_reagent_status ors ON ors.reagent_code = ouf.reagent_code
+ LEFT join sys_reagent sr ON ors.reagent_id = sr.id
+ LEFT JOIN base_meta bm ON bm.id = sr.reagent_format
+ LEFT JOIN base_meta bm1 on bm1.id = sr.reagent_unit
+ LEFT JOIN base_meta bm2 on bm2.id = sr.product_home
+ LEFT JOIN base_meta bm3 on bm3.id = sr.control_products
+ WHERE ouf.operatestate = #{operatestate}
+ and ouf.receipt_number = #{receiptNumber}
+ </select>
+
<insert id="insertOpeUseFlow" parameterType="com.nanometer.smartlab.entity.OpeUseFlow">
insert into ope_use_flow(id, reagent_code, status, house_id, container_id, user_id, remainder, place, store_type, valid_flag, create_time, realstatus, operatestate)
values (#{id}, #{reagentCode}, #{status}, #{houseId}, #{containerId}, #{userId}, #{remainder}, #{place}, #{storeType}, 1, #{createTime}, #{realstatus},#{operateState})
diff --git a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
index e1377d9..060936f 100644
--- a/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/OpeWarehouseReserveDao.xml
@@ -57,6 +57,9 @@
<if test="productSn != null and productSn != ''">
and sr.product_sn like concat('%',#{productSn},'%')
</if>
+ <if test="warehouseName != null and warehouseName != ''">
+ and sw.name like concat('%',#{warehouseName},'%')
+ </if>
</sql>
<sql id="queryColumns">
@@ -135,7 +138,6 @@
set reserve=#{reserve}
where id=#{id}
</update>
-
<select id="selectByReId" resultMap="OpeWarehouseReserve">
select * from ope_warehouse_reserve where reagent_id=#{id}
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
index d96843d..36d76e3 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryContainerDao.xml
@@ -77,6 +77,12 @@
<if test="laboratoryName != null and laboratoryName != ''">
and ss.name like #{laboratoryName}
</if>
+ <if test="project != null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
+ <if test="controllerName != null and controllerName != ''">
+ and sc.controller_name like concat("%",#{controllerName},"%")
+ </if>
order by ss.name ASC,sc.controller_name,su.container_code,su.name
<if test="first != null and pageSize != null">
limit #{first}, #{pageSize}
@@ -137,6 +143,12 @@
<if test="editId != null and editId != ''">
and su.id != #{editId}
</if>
+ <if test="project != null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
+ <if test="controllerName != null and controllerName != ''">
+ and sc.controller_name like concat("%",#{controllerName},"%")
+ </if>
</select>
<insert id="insertSysLaboratoryContainer" parameterType="com.nanometer.smartlab.entity.SysLaboratoryContainer">
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml
index 0a59ab5..a557fe8 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysLaboratoryDao.xml
@@ -31,6 +31,9 @@
<if test="department != null and department != ''">
and su.department = #{department}
</if>
+ <if test="project != null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
</sql>
<select id="getSysLaboratory" parameterType="java.lang.String" resultMap="SysLaboratory" >
diff --git a/src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml b/src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml
index 8bb1b6b..e171985 100644
--- a/src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml
+++ b/src/main/java/com/nanometer/smartlab/dao/SysUserDao.xml
@@ -74,6 +74,12 @@
<if test="waster != null">
and su.waster = #{waster}
</if>
+ <if test="project != null and project != ''">
+ and su.project like concat("%",#{project},"%")
+ </if>
+ <if test="company != null and company != ''">
+ and bm1.meta_value like concat("%",#{company},"%")
+ </if>
</sql>
<select id="getSysUser" parameterType="java.lang.String" resultMap="SysUser" >
@@ -117,6 +123,7 @@
select su.*, br.name as roleName from sys_user as su
left join base_role as br on su.role_id = br.id
left join base_meta bm on su.department = bm.id
+ left join base_meta bm1 on bm1.id = su.company
where su.valid_flag = 1
<if test="departmentNameLike != null and departmentNameLike != ''">
and bm.meta_value like #{departmentNameLike}
@@ -150,7 +157,9 @@
</select>
<select id="getSysUserTotalCount" parameterType="java.util.Map" resultType="int">
- select count(1) from sys_user as su left join base_meta bm on su.department = bm.id
+ select count(1) from sys_user as su
+ left join base_meta bm on su.department = bm.id
+ left join base_meta bm1 on bm1.id = su.company
where su.valid_flag = 1
<if test="departmentNameLike != null and departmentNameLike != ''">
and bm.meta_value like #{departmentNameLike}
diff --git a/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java b/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java
index f6dd09a..1baf23c 100644
--- a/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java
+++ b/src/main/java/com/nanometer/smartlab/entity/OpeUseFlow.java
@@ -30,19 +30,25 @@
private SysReagent reagent;
private String userName;
private String articleNumber;
-
+
private String laboratoryName;
private String warehouseName;
-
+
private String warehouseContainerName;
private String laboratoryContainerName;
private String warehouseContainerCode;
private String laboratoryContainerCode;
-
+
private String operatestateName;
private String operateState;
private String receiptNumber;
-
+ //人员信息
+ private String project;
+ private String phone;
+ private String department;
+ private Integer applyNum;
+
+
public String getWarehouseContainerCode() {
@@ -238,4 +244,38 @@
public void setReceiptNumber(String receiptNumber) {
this.receiptNumber = receiptNumber;
}
+
+
+
+ public Integer getApplyNum() {
+ return applyNum;
+ }
+
+ public void setApplyNum(Integer applyNum) {
+ this.applyNum = applyNum;
+ }
+
+ public String getProject() {
+ return project;
+ }
+
+ public void setProject(String project) {
+ this.project = project;
+ }
+
+ public String getDepartment() {
+ return department;
+ }
+
+ public void setDepartment(String department) {
+ this.department = department;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
}
diff --git a/src/main/java/com/nanometer/smartlab/entity/dto/PersonUseDetail.java b/src/main/java/com/nanometer/smartlab/entity/dto/PersonUseDetail.java
new file mode 100644
index 0000000..5b8478d
--- /dev/null
+++ b/src/main/java/com/nanometer/smartlab/entity/dto/PersonUseDetail.java
@@ -0,0 +1,98 @@
+package com.nanometer.smartlab.entity.dto;
+
+import java.io.Serializable;
+
+public class PersonUseDetail implements Serializable {
+
+ private String reagentId;
+
+ private String articleNumber;
+
+ private String productSn;
+
+ private String reagentName;
+
+ private String reagentFormat;
+
+ private String perInfo;
+
+ private String productHome;
+
+ private String controlProducts;
+
+ private String reagentCode;
+
+
+ public String getReagentId() {
+ return reagentId;
+ }
+
+ public void setReagentId(String reagentId) {
+ this.reagentId = reagentId;
+ }
+
+ public String getArticleNumber() {
+ return articleNumber;
+ }
+
+ public void setArticleNumber(String articleNumber) {
+ this.articleNumber = articleNumber;
+ }
+
+
+ public String getProductSn() {
+ return productSn;
+ }
+
+ public void setProductSn(String productSn) {
+ this.productSn = productSn;
+ }
+
+ public String getReagentName() {
+ return reagentName;
+ }
+
+ public void setReagentName(String reagentName) {
+ this.reagentName = reagentName;
+ }
+
+ public String getReagentFormat() {
+ return reagentFormat;
+ }
+
+ public void setReagentFormat(String reagentFormat) {
+ this.reagentFormat = reagentFormat;
+ }
+
+ public String getPerInfo() {
+ return perInfo;
+ }
+
+ public void setPerInfo(String perInfo) {
+ this.perInfo = perInfo;
+ }
+
+ public String getProductHome() {
+ return productHome;
+ }
+
+ public void setProductHome(String productHome) {
+ this.productHome = productHome;
+ }
+
+ public String getControlProducts() {
+ return controlProducts;
+ }
+
+ public void setControlProducts(String controlProducts) {
+ this.controlProducts = controlProducts;
+ }
+
+ public String getReagentCode() {
+ return reagentCode;
+ }
+
+ public void setReagentCode(String reagentCode) {
+ this.reagentCode = reagentCode;
+ }
+}
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowService.java b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowService.java
index 8c8242d..042e7d1 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowService.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowService.java
@@ -3,7 +3,7 @@
import com.nanometer.smartlab.entity.OpeApplyReserve;
import com.nanometer.smartlab.entity.OpeUseFlow;
import com.nanometer.smartlab.entity.OpeWarehouseReserve;
-import com.nanometer.smartlab.entity.SysReagent;
+import com.nanometer.smartlab.entity.dto.PersonUseDetail;
import java.text.ParseException;
import java.util.Date;
@@ -23,10 +23,10 @@
int getOpeUseFlowTotalCount(String reagentId, String reagentCode, Integer status, String userId);
- List<OpeUseFlow> getOpeUseFlowListByName(String houseName,String reagentId, String reagentCode, Integer status, String userId, Date startDate,Date endDate,
+ List<OpeUseFlow> getOpeUseFlowListByName(String houseName,String reagentId, String reagentCode,String containerCode, Integer status, String userId, Date startDate,Date endDate,
Integer first, Integer pageSize);
- int getOpeUseFlowTotalCountByName(String houseName, String reagentId, String reagentCode, Integer status, String userId, Date startDate,Date endDate);
+ int getOpeUseFlowTotalCountByName(String houseName, String reagentId, String reagentCode,String containerCode, Integer status, String userId, Date startDate,Date endDate);
boolean update(OpeUseFlow opeUseFlow);
@@ -47,4 +47,11 @@
Map<String,String> getApplyUserByReagentCode(String reagentCode);
void updateReceiptNumberByCode2(List<OpeWarehouseReserve> codeTmp, String receiptNumber);
+
+ int getPersonalUseInfoCount(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project);
+
+ List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project, int first, int pageSize);
+
+ List<PersonUseDetail> getApplyInfo(String receiptNumber);
+
}
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
index 2d7ab3e..96f81ab 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeUseFlowServiceImpl.java
@@ -12,6 +12,7 @@
import com.nanometer.smartlab.dao.SysLaboratoryContainerDao;
import com.nanometer.smartlab.dao.SysWarehouseContainerDao;
import com.nanometer.smartlab.entity.*;
+import com.nanometer.smartlab.entity.dto.PersonUseDetail;
import com.nanometer.smartlab.entity.enumtype.OperateStatus;
import com.nanometer.smartlab.util.Constants;
import org.apache.commons.lang.StringUtils;
@@ -135,7 +136,7 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public List<OpeUseFlow> getOpeUseFlowListByName(String houseName,String reagentId, String reagentCode, Integer status, String userId,
+ public List<OpeUseFlow> getOpeUseFlowListByName(String houseName,String reagentId, String reagentCode,String containerCode, Integer status, String userId,
Date startDate,Date endDate,Integer first, Integer pageSize) {
try {
Map<String, Object> params = new HashMap<String, Object>();
@@ -175,6 +176,7 @@
params.put("status", status);
params.put("houseName", houseName);
+ params.put("containerCode", containerCode);
addParamByUserId(userId, params);
params.put("first", first);
@@ -188,7 +190,7 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public int getOpeUseFlowTotalCountByName(String houseName,String reagentId, String reagentCode, Integer status, String userId,Date startDate,Date endDate) {
+ public int getOpeUseFlowTotalCountByName(String houseName,String reagentId, String reagentCode,String containerCode, Integer status, String userId,Date startDate,Date endDate) {
try {
Map<String, Object> params = new HashMap<String, Object>();
params.put("reagentName", reagentId);
@@ -226,6 +228,7 @@
}
params.put("houseName", houseName);
+ params.put("containerCode", containerCode);
addParamByUserId(userId, params);
params.put("status", status);
@@ -454,4 +457,64 @@
}
}
+
+ @Override
+ public int getPersonalUseInfoCount(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project) {
+ Map<String,Object> params = new HashMap<>();
+ params.put("userId", userId);
+ params.put("startTime", startTime);
+ params.put("endTime", endTime);
+ params.put("receiptNumber", receiptNumber);
+ params.put("department", department);
+ params.put("project", project);
+ params.put("reagentCode", reagentCode);
+ //操作状态位仓库领取
+ Map<String, String> metaMap2 = new HashMap<>();
+ metaMap2.put("groupId", "operate_status");
+ metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
+ List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
+ params.put("operatestate", baseMetas.get(0).getId());
+
+ addParamByUserId(userId, params);
+ return opeUseFlowDao.countPersonalUseInfo(params);
+ }
+
+ @Override
+ public List<OpeUseFlow> getPersonalUseInfoList(String reagentCode,String userId, Date startTime, Date endTime, String receiptNumber, String department, String project, int first, int pageSize) {
+ Map<String, Object> params = new HashMap<>();
+ params.put("userId", userId);
+ params.put("startTime", startTime);
+ params.put("endTime", endTime);
+ params.put("receiptNumber", receiptNumber);
+ params.put("department", department);
+ params.put("project", project);
+ params.put("reagentCode", reagentCode);
+ //操作状态位仓库领取
+ Map<String, String> metaMap2 = new HashMap<>();
+ metaMap2.put("groupId", "operate_status");
+ metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
+ List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
+ params.put("operatestate", baseMetas.get(0).getId());
+ params.put("first", first);
+ params.put("pageSize", pageSize);
+
+ addParamByUserId(userId, params);
+ return opeUseFlowDao.selectPersonalUseInfo(params);
+ }
+
+ @Override
+ public List<PersonUseDetail> getApplyInfo(String receiptNumber) {
+ Map<String,Object> params = new HashMap<>();
+ Map<String, String> metaMap2 = new HashMap<>();
+ metaMap2.put("groupId", "operate_status");
+ metaMap2.put("metaKey", String.valueOf(OperateStatus.WAREHOUSEOUT.getKey()));
+ List<BaseMeta> baseMetas = baseMetaDao.getBaseMetaList(metaMap2);
+ params.put("operatestate", baseMetas.get(0).getId());
+ params.put("receiptNumber", receiptNumber);
+
+ return opeUseFlowDao.getApplyInfo(params);
+
+ }
+
+
}
diff --git a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveService.java b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveService.java
index 07a1fdd..e1dcab6 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveService.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveService.java
@@ -16,8 +16,8 @@
Integer pageSize);
int getOpeWarehouseReserveTotalCount(String reagentId, String supplierId);
List<OpeWarehouseReserve> getOpeWarehouseReserveListByName(String reagentId, String supplierId, Integer first,
- Integer pageSize,String productSn);
- int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn);
+ Integer pageSize,String productSn,String warehouseName);
+ int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn,String warehouseName);
OpeWarehouseReserve getOpeWarehouseReserve(String reagentId, String articleNumber);
OpeWarehouseReserve getOpeWarehouseReserve2(String reagentId, 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 c26f32f..8f5995c 100644
--- a/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/OpeWarehouseReserveServiceImpl.java
@@ -94,7 +94,7 @@
@Transactional(propagation = Propagation.REQUIRED)
public List<OpeWarehouseReserve> getOpeWarehouseReserveListByName(String reagentId, String supplierId, Integer first,
- Integer pageSize,String productSn) {
+ Integer pageSize,String productSn,String warehouseName) {
try {
Map<String, Object> params = new HashMap<String, Object>();
params.put("reagentName", reagentId);
@@ -102,6 +102,7 @@
params.put("first", first);
params.put("pageSize", pageSize);
params.put("productSn", productSn);
+ params.put("warehouseName", warehouseName);
return this.opeWarehouseReserveDao.getOpeWarehouseReserveList(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
@@ -111,12 +112,13 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn) {
+ public int getOpeWarehouseReserveTotalCountByName(String reagentId, String supplierId,String productSn,String warehouseName) {
try {
Map<String, Object> params = new HashMap<String, Object>();
params.put("reagentName", reagentId);
params.put("supplierId", supplierId);
params.put("productSn", productSn);
+ params.put("warehouseName", warehouseName);
return this.opeWarehouseReserveDao.getOpeWarehouseReserveTotalCount(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java
index f70dfed..df8cdec 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerService.java
@@ -11,9 +11,10 @@
*/
public interface SysLaboratoryContainerService {
- List<SysLaboratoryContainer> getSysLaboratoryContainerList(String laboratoryType, String laboratoryName, String laboratoryId, Integer first, Integer pageSize);
+ List<SysLaboratoryContainer> getSysLaboratoryContainerList(String laboratoryType, String laboratoryName, String laboratoryId
+ ,String project,String controllerName, Integer first, Integer pageSize);
List<SysLaboratoryContainer> getSysLaboratoryContainerList(String laboratoryId);
- int getSysLaboratoryContainerTotalCount(String laboratoryType, String laboratoryName,String laboratoryId);
+ int getSysLaboratoryContainerTotalCount(String laboratoryType, String laboratoryName,String laboratoryId,String project,String controllerName);
SysLaboratoryContainer getSysLaboratoryContainer(String id);
SysLaboratoryContainer getSysLaboratoryContainerByContainerCode(String containerCode);
SysLaboratoryContainer insertSysLaboratoryContainer(SysLaboratoryContainer sysLaboratory);
diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
index 486ea69..07ada63 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryContainerServiceImpl.java
@@ -38,7 +38,7 @@
@Transactional(propagation = Propagation.REQUIRED)
public List<SysLaboratoryContainer> getSysLaboratoryContainerList(String laboratoryType, String laboratoryName,
- String laboratoryId, Integer first, Integer pageSize) {
+ String laboratoryId,String project,String controllerName, Integer first, Integer pageSize) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(laboratoryType)) {
@@ -50,6 +50,8 @@
if (StringUtils.isNotBlank(laboratoryId)) {
params.put("laboratoryId", laboratoryId);
}
+ params.put("project", project);
+ params.put("controllerName", controllerName);
params.put("first", first);
params.put("pageSize", pageSize);
return this.sysLaboratoryContainerDao.getSysLaboratoryContainerList(params);
@@ -63,11 +65,11 @@
@Transactional(propagation = Propagation.REQUIRED)
public List<SysLaboratoryContainer> getSysLaboratoryContainerList(
String laboratoryId) {
- return getSysLaboratoryContainerList(null,null,laboratoryId,null,null);
+ return getSysLaboratoryContainerList(null,null,laboratoryId,null,null,null,null);
}
@Transactional(propagation = Propagation.REQUIRED)
- public int getSysLaboratoryContainerTotalCount(String laboratoryType, String laboratoryName, String laboratoryId) {
+ public int getSysLaboratoryContainerTotalCount(String laboratoryType, String laboratoryName, String laboratoryId,String project,String controllerName) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(laboratoryType)) {
@@ -79,6 +81,8 @@
if (StringUtils.isNotBlank(laboratoryId)) {
params.put("laboratoryId", laboratoryId);
}
+ params.put("project", project);
+ params.put("controllerName", controllerName);
return this.sysLaboratoryContainerDao.getSysLaboratoryContainerTotalCount(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java
index b7733c8..e07e4cd 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryService.java
@@ -11,13 +11,13 @@
*/
public interface SysLaboratoryService {
- List<SysLaboratory> getSysLaboratoryList(String type, String name, Integer first, Integer pageSize);
+ List<SysLaboratory> getSysLaboratoryList(String type, String name, String project, Integer first, Integer pageSize);
List<SysLaboratory> getAllSysLaboratoryList();
List<SysLaboratory> getSysLaboratoryListByDep(String depId);
- int getSysLaboratoryTotalCount(String type, String name);
+ int getSysLaboratoryTotalCount(String type, String name,String project);
boolean isSysLaboratoryExist(String barCode, String editId);
@@ -38,4 +38,8 @@
List<Map> exportLabList(String type, String name);
List<LaboratoryVo.Laboratory> getLaboratoryByProject(String project);
+
+ List<SysLaboratory> getSysLaboratoryListByUserId(String userId);
+
+
}
diff --git a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
index b169e9f..70a1d09 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysLaboratoryServiceImpl.java
@@ -1,7 +1,9 @@
package com.nanometer.smartlab.service;
import com.nanometer.smartlab.dao.SysLaboratoryDao;
+import com.nanometer.smartlab.dao.SysUserDao;
import com.nanometer.smartlab.entity.SysLaboratory;
+import com.nanometer.smartlab.entity.SysUser;
import com.nanometer.smartlab.entity.dto.LaboratoryVo;
import com.nanometer.smartlab.exception.AlarmCode;
import com.nanometer.smartlab.exception.AlarmException;
@@ -38,9 +40,11 @@
@Resource(name = "sysLaboratoryDao")
SysLaboratoryDao sysLaboratoryDao;
+ @Resource
+ SysUserDao sysUserDao;
@Transactional(propagation = Propagation.REQUIRED)
- public List<SysLaboratory> getSysLaboratoryList(String type, String name, Integer first, Integer pageSize) {
+ public List<SysLaboratory> getSysLaboratoryList(String type, String name,String project,Integer first, Integer pageSize) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(type)) {
@@ -49,6 +53,7 @@
if (StringUtils.isNotBlank(name)) {
params.put("name", "%" + name + "%");
}
+ params.put("project", project);
params.put("first", first);
params.put("pageSize", pageSize);
return this.sysLaboratoryDao.getSysLaboratoryList(params);
@@ -60,7 +65,7 @@
}
@Transactional(propagation = Propagation.REQUIRED)
- public int getSysLaboratoryTotalCount(String type, String name) {
+ public int getSysLaboratoryTotalCount(String type, String name,String project) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(type)) {
@@ -69,6 +74,7 @@
if (StringUtils.isNotBlank(name)) {
params.put("name", "%" + name + "%");
}
+ params.put("project", project);
return this.sysLaboratoryDao.getSysLaboratoryTotalCount(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
@@ -257,7 +263,22 @@
return sysLaboratoryDao.getLaboratoryByProject(project);
}
- @Override
+ @Override
+ public List<SysLaboratory> getSysLaboratoryListByUserId(String userId) {
+
+ //1.根据用户的课题组获取实验室,没有就按照部门
+ SysUser user = sysUserDao.getSysUser(userId);
+ Map<String,Object> params = new HashMap<>();
+ params.put("project", user.getProject());
+ List<SysLaboratory> list = sysLaboratoryDao.getSysLaboratoryList(params);
+ if (list.size() < 1) {
+ return this.getSysLaboratoryListByDep(user.getDepartment());
+ }else{
+ return list;
+ }
+ }
+
+ @Override
@Transactional(propagation = Propagation.REQUIRED)
public List<SysLaboratory> getSysLaboratoryListByDep(String depId) {
try {
diff --git a/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java
index 0133124..dd9d421 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysProjectServiceImpl.java
@@ -163,7 +163,7 @@
@Transactional
public void importProject(FileUploadEvent event,SysUser currentUser) throws Exception {
- List<SysUser> userList = sysUserService.getSysUserList(null, null, null, null, null);
+ List<SysUser> userList = sysUserService.getSysUserList(null, null, null, null, null,null,null);
List<SysProject> sysProjectList = sysProjectDao.getSysProjectList(new HashMap());
Map<String,String> userMap = new HashMap();
Map<String,String> projectMap = new HashMap();
diff --git a/src/main/java/com/nanometer/smartlab/service/SysUserService.java b/src/main/java/com/nanometer/smartlab/service/SysUserService.java
index a613193..5fd2f5b 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysUserService.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysUserService.java
@@ -14,8 +14,8 @@
*/
public interface SysUserService {
- List<SysUser> getSysUserList(String arp, String name,String departmentName, Integer first, Integer pageSize);
- int getSysUserTotalCount(String arp, String name,String departmentName);
+ List<SysUser> getSysUserList(String arp, String name,String departmentName,String project,String company,Integer first, Integer pageSize);
+ int getSysUserTotalCount(String arp, String name,String departmentName,String project,String company);
SysUser getSysUser(String id);
SysUser getSysUserForSuppllier(String id);
SysUser getSysUserByAccount(String account);
diff --git a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
index 2edb936..c9bd4d4 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
@@ -43,7 +43,7 @@
SysUserDao sysUserDao;
@Transactional(propagation = Propagation.REQUIRED)
- public List<SysUser> getSysUserList(String arp, String name,String departmentName, Integer first, Integer pageSize) {
+ public List<SysUser> getSysUserList(String arp, String name,String departmentName,String project,String company, Integer first, Integer pageSize) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(arp)) {
@@ -55,6 +55,8 @@
if (StringUtils.isNotBlank(departmentName)) {
params.put("departmentNameLike", "%" + departmentName + "%");
}
+ params.put("project", project);
+ params.put("company", company);
params.put("first", first);
params.put("pageSize", pageSize);
return this.sysUserDao.getSysUserList(params);
@@ -64,7 +66,7 @@
}
}
@Transactional(propagation = Propagation.REQUIRED)
- public int getSysUserTotalCount(String arp, String name,String departmentName) {
+ public int getSysUserTotalCount(String arp, String name,String departmentName,String project,String company) {
try {
Map<String, Object> params = new HashMap<String, Object>();
if (StringUtils.isNotBlank(arp)) {
@@ -76,6 +78,8 @@
if (StringUtils.isNotBlank(departmentName)) {
params.put("departmentNameLike", "%" + departmentName + "%");
}
+ params.put("project", project);
+ params.put("company", company);
return this.sysUserDao.getSysUserTotalCount(params);
} catch (DataAccessException e) {
logger.error(e.getMessage(), e);
diff --git a/src/main/webapp/WEB-INF/config-mybatis.xml b/src/main/webapp/WEB-INF/config-mybatis.xml
index 365d9cd..861a53f 100644
--- a/src/main/webapp/WEB-INF/config-mybatis.xml
+++ b/src/main/webapp/WEB-INF/config-mybatis.xml
@@ -15,7 +15,7 @@
<setting name="useGeneratedKeys" value="false"/>
<setting name="defaultExecutorType" value="SIMPLE"/>
<setting name="defaultStatementTimeout" value="25000"/>
- <setting name="logImpl" value="STDOUT_LOGGING" />
+ <setting name="logImpl" value="LOG4J" />
</settings>
<typeHandlers>
diff --git a/src/main/webapp/laboratory_container_mng.xhtml b/src/main/webapp/laboratory_container_mng.xhtml
index b6ad4db..25fb1be 100644
--- a/src/main/webapp/laboratory_container_mng.xhtml
+++ b/src/main/webapp/laboratory_container_mng.xhtml
@@ -12,7 +12,7 @@
<h:form id="laboratoryContainerMngForm">
<p:panel styleClass="center-header">
<p:outputLabel styleClass="title" value="实验室临时存储库管理"></p:outputLabel>
- <p:panelGrid styleClass="filter" columns="5">
+ <p:panelGrid styleClass="filter" columns="9">
<p:outputLabel value="实验室类型:"></p:outputLabel>
<p:selectOneMenu value="#{laboratoryContainerMngController.laboratoryType}">
<f:selectItem itemLabel="全部" itemValue="#{null}" noSelectionOption="true"></f:selectItem>
@@ -24,6 +24,12 @@
<p:outputLabel value="实验室名:"></p:outputLabel>
<p:inputText value="#{laboratoryContainerMngController.laboratoryName}"></p:inputText>
+ <p:outputLabel value="课题名称:"></p:outputLabel>
+ <p:inputText value="#{laboratoryContainerMngController.project}"></p:inputText>
+
+ <p:outputLabel value="主控名称:"></p:outputLabel>
+ <p:inputText value="#{laboratoryContainerMngController.controllerName}"></p:inputText>
+
<p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
</p:panelGrid>
</p:panel>
diff --git a/src/main/webapp/laboratory_mng.xhtml b/src/main/webapp/laboratory_mng.xhtml
index 601dedb..0d36f3c 100644
--- a/src/main/webapp/laboratory_mng.xhtml
+++ b/src/main/webapp/laboratory_mng.xhtml
@@ -12,7 +12,7 @@
<h:form id="laboratoryMngForm">
<p:panel styleClass="center-header">
<p:outputLabel styleClass="title" value="实验室管理"></p:outputLabel>
- <p:panelGrid styleClass="filter" columns="5">
+ <p:panelGrid styleClass="filter" columns="7">
<p:outputLabel value="实验室类型:"></p:outputLabel>
<p:selectOneMenu value="#{laboratoryMngController.type}">
<f:selectItem itemLabel="全部" itemValue="#{null}" noSelectionOption="true"></f:selectItem>
@@ -24,6 +24,9 @@
<p:outputLabel value="实验室名:"></p:outputLabel>
<p:inputText value="#{laboratoryMngController.name}"></p:inputText>
+ <p:outputLabel value="课题组:"></p:outputLabel>
+ <p:inputText value="#{laboratoryMngController.project}"></p:inputText>
+
<p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
</p:panelGrid>
</p:panel>
diff --git a/src/main/webapp/personal_use_info.xhtml b/src/main/webapp/personal_use_info.xhtml
index 22644b5..ff71fb3 100644
--- a/src/main/webapp/personal_use_info.xhtml
+++ b/src/main/webapp/personal_use_info.xhtml
@@ -50,84 +50,272 @@
<p:panel styleClass="center-header">
<p:panelGrid styleClass="filter" columns="13">
- <p:outputLabel value="试剂名称:"></p:outputLabel>
- <p:inputText value="#{personalUseInfoController.reagentId}"></p:inputText>
+ <p:outputLabel value="单据编号:"/>
+ <p:inputText value="#{personalUseInfoController.receiptNumber}"/>
- <p:outputLabel value="条形码:"></p:outputLabel>
- <p:inputText value="#{personalUseInfoController.reagentCode}"></p:inputText>
- <p:outputLabel value="申领人:"/>
- <p:inputText value="#{personalUseInfoController.applyPerson}"/>
+ <p:outputLabel value="课题组:"/>
+ <p:inputText value="#{personalUseInfoController.project}"/>
+
+ <p:outputLabel value="部门:"/>
+ <p:inputText value="#{personalUseInfoController.department}"/>
<p:outputLabel for="startTime" value="开始时间:" />
<p:calendar id="startTime" value="#{personalUseInfoController.startTime}" pattern="yyyy-MM-dd HH:mm" />
<p:outputLabel for="endTime" value="截止时间:" />
<p:calendar id="endTime" value="#{personalUseInfoController.endTime}" pattern="yyyy-MM-dd HH:mm" />
- <p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
- <p:commandButton value="更新时间" styleClass="store-btn" process="@form" actionListener="#{personalUseInfoController.updateTimeByCode}"
- update="@form"></p:commandButton>
- <p:commandButton value="取消领用" style="background: #b94a48; border: 1px solid #b94a48" styleClass="store-btn" process="@form" actionListener="#{personalUseInfoController.reagentReturn}"
- update="@form"></p:commandButton>
- </p:panelGrid>
+ <p:commandLink styleClass="search" process="@form" update="@form"/>
+
+ <p:commandButton value="生成领用单"
+ style="background: #b94a48; border: 1px solid #b94a48"
+ styleClass="store-btn"
+ process="@form"
+ actionListener="#{personalUseInfoController.generateReceipt}"
+ update="printDialog"/>
+ <p:commandButton value="查看详情"
+ styleClass="store-btn"
+ update=":dialog,:dialogForm"
+ actionListener="#{personalUseInfoController.detailInfo}"
+ oncomplete="PF('dialog').show()"/>
+
+
+ </p:panelGrid>
</p:panel>
</p:panel>
- <style>
+ <style type="text/css">
.ui-datatable tbody td{
white-space: normal;
word-break: break-all;
}
</style>
<p:panel styleClass="center-body">
- <p:dataTable id="personalUseInfoDataTable" styleClass="data-table" resizableColumns="true"
- paginator="true" paginatorAlwaysVisible="false" paginatorPosition="bottom"
- lazy="true" value="#{personalUseInfoController.dataModel}" var="row"
- rowKey="#{row.id}" emptyMessage="无数据" rows="20" pageLinks="5" selection="#{personalUseInfoController.selectedList}">
- <p:column selectionMode="multiple" style="width: 30px;text-align: center;"/>
- <p:column headerText="试剂名称">
- <h:outputText value="#{row.reagent.name}"></h:outputText>
+ <p:dataTable id="personalUseInfoDataTable"
+ styleClass="data-table"
+ resizableColumns="true"
+ paginator="true"
+ paginatorAlwaysVisible="false"
+ paginatorPosition="bottom"
+ lazy="true"
+ value="#{personalUseInfoController.dataModel2}"
+ var="row"
+ rowKey="#{row.receiptNumber}"
+ selectionMode="single"
+ emptyMessage="无数据"
+ selection="#{personalUseInfoController.selectOne}"
+ rows="20" pageLinks="5">
+
+<!-- <p:column selectionMode="multiple" style="width: 30px;text-align: center;"/>-->
+ <p:column headerText="单据编号">
+ <h:outputText value="#{row.receiptNumber}"/>
</p:column>
- <p:column headerText="试剂条形码">
- <h:outputText value="#{row.reagentCode}"></h:outputText>
+ <p:column headerText="申领人" width="80">
+ <h:outputText value="#{row.userName}"/>
</p:column>
- <p:column headerText="厂家">
- <h:outputText value="#{baseMetaService.getBaseMetaValue(row.reagent.productHome)}"></h:outputText>
- </p:column>
- <!--<p:column headerText="供应商">-->
- <!--<h:outputText value="#{row.reagent.supplierName}"></h:outputText>-->
- <!--</p:column>-->
-
- <p:column headerText="规格">
- <h:outputText
- value="#{baseMetaService.getBaseMetaValue(row.reagent.reagentFormat)}"></h:outputText>
+ <p:column headerText="领用数量" width="50">
+ <h:outputText value="#{row.applyNum}"/>
</p:column>
- <p:column headerText="包装">
- <h:outputText
- value="#{''.concat(row.reagent.mainMetering).concat(baseMetaService.getBaseMetaValue(row.reagent.reagentUnit))}"></h:outputText>
+ <p:column headerText="课题组">
+ <h:outputText value="#{row.project}"/>
</p:column>
- <p:column headerText="批号">
- <h:outputText value="#{row.articleNumber}"></h:outputText>
+ <p:column headerText="部门">
+ <h:outputText value="#{row.department}"/>
</p:column>
-<!-- <p:column headerText="残存量">-->
-<!-- <h:outputText value="#{row.remainder}"></h:outputText>-->
-<!-- </p:column>-->
-
- <p:column headerText="申领人">
- <h:outputText value="#{row.userName}" />
+ <p:column headerText="地点">
+ <h:outputText value="#{row.laboratoryName}"/>
</p:column>
<p:column headerText="领用时间">
- <h:outputText value="#{row.updateTime}">
- <f:convertDateTime pattern="yyyy-MM-dd HH:mm:ss" locale="zh_CN"></f:convertDateTime>
+ <h:outputText value="#{row.createTime}">
+ <f:convertDateTime pattern="yyyy-MM-dd HH:mm" locale="zh_CN"/>
</h:outputText>
</p:column>
</p:dataTable>
</p:panel>
</h:form>
+
+ <p:dialog modal="true" header="试剂详情页面" appendTo="@(body)"
+ id="dialog" widgetVar="dialog"
+ resizable="false" width="1000">
+ <h:form id="dialogForm">
+ <p:dataTable styleClass="data-table"
+ paginator="true" paginatorAlwaysVisible="false" paginatorPosition="bottom"
+ value="#{personalUseInfoController.personUseDetail}" var="row" rowKey="#{row.id}"
+ emptyMessage="无数据"
+ style="margin:50px 0 80px 0"
+ rows="5" pageLinks="5">
+
+ <p:column headerText="产品编号">
+ <h:outputText value="#{row.productSn}"/>
+ </p:column>
+
+ <p:column headerText="试剂名称">
+ <h:outputText value="#{row.reagentName}"/>
+ </p:column>
+
+ <p:column headerText="试剂条形码">
+ <h:outputText value="#{row.reagentCode}"/>
+ </p:column>
+
+ <p:column headerText="管制品">
+ <h:outputText value="#{row.controlProducts}"/>
+ </p:column>
+
+ <p:column headerText="规格型号">
+ <h:outputText value="#{row.reagentFormat}"/>
+ </p:column>
+
+ <p:column headerText="包装">
+ <h:outputText value="#{row.perInfo}"/>
+ </p:column>
+
+ <p:column headerText="厂家">
+ <h:outputText value="#{row.productHome}"/>
+ </p:column>
+
+ <p:column headerText="批号">
+ <h:outputText value="#{row.articleNumber}"/>
+ </p:column>
+
+ </p:dataTable>
+
+ <p:panel styleClass="btn" style="text-align: right">
+ </p:panel>
+ </h:form>
+ </p:dialog>
+ <p:dialog id="apply-ui" header="领用单" widgetVar="printDialog" appendTo="@(body)" modal="true" resizable="false"
+ width="1380">
+ <div id="printTarget">
+ <div style=" margin: 20mm 27mm 0mm 30mm;">
+ <h:form id="printDialog" style="width: 1100px">
+
+ <p:outputPanel style="text-align: center;font-size: 14px;font-weight: 700;">#{personalUseInfoController.printTable['head']}</p:outputPanel>
+ <p:outputPanel style="text-align: center;font-size: 15px;margin: 20px;font-weight: 700;">#{personalUseInfoController.printTable['title']}</p:outputPanel>
+ <div>
+ <div style="display: flex;flex-direction: row;justify-content: flex-end;width: 1081px;">
+ <div style="width: 98px;">单据编号:</div>
+ <div style="width: 183px;">#{personalUseInfoController.printTable['receiptNumber']}</div>
+ </div>
+ </div>
+
+ <div style="margin: 10px 0;">
+ <div style="display: inline-flex;">
+ <div style="width: 100px;margin-left: 10px;">部门:</div>
+ <div style="width: 300px;">#{personalUseInfoController.printTable['department']}</div>
+ </div>
+ <div style="display: inline-flex;">
+ <div style="width: 100px;">申购人:</div>
+ <div style="width: 200px;padding-top: 1px;">#{personalUseInfoController.printTable['applyPerson']}</div>
+ </div>
+ <div style="display: inline-flex;float: right;">
+ <div style="width: 100px;">日期:</div>
+ <div style="width: 200px;padding-top: 1px;">#{personalUseInfoController.printTable['date']}</div>
+ </div>
+ </div>
+
+ <div style="margin-bottom: 20px;">
+ <div style="display: inline-flex;">
+ <div style="width: 100px;margin-left: 10px;">课题组</div>
+ <div style="width: 300px;">#{personalUseInfoController.printTable['project']}</div>
+ </div>
+ <div style="display: inline-flex;">
+ <div style="width: 100px;">使用地点:</div>
+ <div style="width: 200px;padding-top: 1px;">#{personalUseInfoController.printTable['lab']}</div>
+ </div>
+ <div style="display: inline-flex;float: right;">
+ <div style="width: 100px;">联系方式:</div>
+ <div style="width: 200px;">#{personalUseInfoController.printTable['phone']}</div>
+ </div>
+ </div>
+
+
+
+
+ <p:dataTable id="printTB" styleClass="apply-list"
+ value="#{personalUseInfoController.printTable['applyList']}" var="row" >
+ <p:column headerText="产品编号" width="150px;" style="text-align: center;">
+ <h:outputText value="#{row.productCode}" />
+ </p:column>
+ <p:column headerText="产品名称" width="150px;" style="text-align: center;">
+ <h:outputText value="#{row.productName}" />
+ </p:column>
+
+ <p:column headerText="管制品" width="100px;" style="text-align: center;">
+ <h:outputText value="#{row.controlProducts}" />
+ </p:column>
+
+ <p:column headerText="规格型号" width="160px;" style="text-align: center;">
+ <h:outputText value="#{row.reagentFormat}" />
+ </p:column>
+
+ <p:column headerText="包装" width="90px;" style="text-align: center;">
+ <h:outputText value="#{row.mainMetering==null?'':row.mainMetering.replace('null','')}" />
+ </p:column>
+
+ <p:column headerText="数量" width="90px;" style="text-align: center;">
+ <h:outputText value="#{row.num}" />
+ </p:column>
+
+ <p:column headerText="备注" width="170px;" style="text-align: center;">
+ <h:outputText value="#{row.memo}" />
+ </p:column>
+ </p:dataTable>
+
+ <div style="margin-top: 20px;margin-right: 94px;">
+ <div style="display: flex;flex-direction: row;justify-content: flex-end;">
+ <div style="width: 100px">签收人:</div>
+ <div style="width: 100px"></div>
+ </div>
+ </div>
+
+ <div style="margin: 10px 94px 10px 0;">
+ <div style="display: flex;flex-direction: row;justify-content: flex-end;">
+ <div style="width: 100px">日期:</div>
+ <div style="width: 100px"></div>
+ </div>
+ </div>
+
+
+
+ <p:panel styleClass="btn no-print">
+ <div class="div-btn cancel" id="cancel">关闭</div>
+ <div class="div-btn print" id="print">打印</div>
+
+ <script type="text/javascript" src="resources/js/print.js"/>
+ <script type="text/javascript">
+ $(function () {
+ $("#print").on("click", function () {
+ jQuery.print('#printTarget')
+ })
+ $("#cancel").on("click", function () {
+ $("#apply-ui a").click();
+ })
+ })
+
+
+ </script>
+ </p:panel>
+ </h:form>
+ </div>
+ </div>
+ <script type="text/javascript" src="resources/js/print.js"/>
+ <script type="text/javascript">
+ $(function () {
+ $("#print").on("click", function () {
+ jQuery.print('#printTarget');
+ });
+ $("#cancel").on("click", function () {
+ $("#reagentUseFlowInfoForm\\:apply-ui a").click();
+ })
+ })
+
+
+ </script>
+ </p:dialog>
</ui:composition>
</html>
diff --git a/src/main/webapp/reagent_user_flow_info.xhtml b/src/main/webapp/reagent_user_flow_info.xhtml
index 02ca1f0..1519eeb 100644
--- a/src/main/webapp/reagent_user_flow_info.xhtml
+++ b/src/main/webapp/reagent_user_flow_info.xhtml
@@ -14,7 +14,7 @@
<p:outputLabel styleClass="title" value="试剂流向追踪"></p:outputLabel>
<p:panel styleClass="center-header">
- <p:panelGrid styleClass="filter" columns="11">
+ <p:panelGrid styleClass="filter" columns="13">
<p:outputLabel value="开始时间:"></p:outputLabel>
<p:calendar value="#{opeUseFlowInfoController.startDate}"></p:calendar>
@@ -27,6 +27,9 @@
<p:outputLabel value="条形码:"></p:outputLabel>
<p:inputText value="#{opeUseFlowInfoController.reagentCode}"></p:inputText>
+ <p:outputLabel value="柜号:"></p:outputLabel>
+ <p:inputText value="#{opeUseFlowInfoController.containerCode}"></p:inputText>
+
<p:outputLabel value="场所名:"></p:outputLabel>
<p:inputText value="#{opeUseFlowInfoController.houseName}"></p:inputText>
<p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
diff --git a/src/main/webapp/user_mng.xhtml b/src/main/webapp/user_mng.xhtml
index 09ccb1b..eabe205 100644
--- a/src/main/webapp/user_mng.xhtml
+++ b/src/main/webapp/user_mng.xhtml
@@ -15,16 +15,22 @@
<p:panel styleClass="center-header">
<p:outputLabel styleClass="title" value="用户管理"></p:outputLabel>
- <p:panelGrid styleClass="filter" columns="7">
+ <p:panelGrid styleClass="filter" columns="11">
<p:outputLabel value="ARP号:"></p:outputLabel>
<p:inputText value="#{userMngController.arp}"></p:inputText>
<p:outputLabel value="姓名:"></p:outputLabel>
<p:inputText value="#{userMngController.name}"></p:inputText>
+ <p:outputLabel value="课题组:"></p:outputLabel>
+ <p:inputText value="#{userMngController.project}"></p:inputText>
+
<p:outputLabel value="部门:"></p:outputLabel>
<p:inputText value="#{userMngController.departmentName}"></p:inputText>
+ <p:outputLabel value="单位:"></p:outputLabel>
+ <p:inputText value="#{userMngController.company}"></p:inputText>
+
<p:commandLink styleClass="search" process="@form" update="@form"></p:commandLink>
</p:panelGrid>
</p:panel>
diff --git a/src/main/webapp/warehouse_stock_mng.xhtml b/src/main/webapp/warehouse_stock_mng.xhtml
index 4673d4e..e475480 100644
--- a/src/main/webapp/warehouse_stock_mng.xhtml
+++ b/src/main/webapp/warehouse_stock_mng.xhtml
@@ -79,7 +79,7 @@
<br/>
<h:form id="warehouseStockMngForm">
<p:panel styleClass="center-header">
- <p:panelGrid styleClass="filter" columns="7">
+ <p:panelGrid styleClass="filter" columns="9">
<p:outputLabel value="试剂名称:"></p:outputLabel>
<p:inputText value="#{warehouseStockMngController.reagentId}"></p:inputText>
@@ -91,6 +91,9 @@
var="item" itemLabel="#{item.name}" itemValue="#{item.id}"></f:selectItems>
</p:selectOneMenu>
+ <p:outputLabel value="仓库名:"></p:outputLabel>
+ <p:inputText value="#{warehouseStockMngController.warehouseName}"></p:inputText>
+
<p:outputLabel value="产品编号:"></p:outputLabel>
<p:inputText value="#{warehouseStockMngController.productSn}"></p:inputText>
--
Gitblit v1.9.2