From 29166bc750623bea12a367ba7c527facdb582235 Mon Sep 17 00:00:00 2001
From: 李宇 <986321569@qq.com>
Date: 星期二, 13 七月 2021 17:12:28 +0800
Subject: [PATCH] 修改转移试剂,生成领用单
---
src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java | 90 ++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 80 insertions(+), 10 deletions(-)
diff --git a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
index 449dc3d..aa11981 100644
--- a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
+++ b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java
@@ -13,6 +13,7 @@
import com.nanometer.smartlab.exception.AlarmException;
import com.nanometer.smartlab.exception.BusinessException;
import com.nanometer.smartlab.exception.ExceptionEnumCode;
+import com.nanometer.smartlab.util.ExcelUtils;
import com.nanometer.smartlab.util.FacesUtils;
import com.nanometer.smartlab.util.IDUtils;
import com.nanometer.smartlab.util.MessageUtil;
@@ -26,10 +27,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
/**
* Created by johnny on 17/11/20.
@@ -43,7 +41,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 +53,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 +64,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,11 +76,35 @@
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);
throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e);
}
+ }
+
+ @Override
+ public int getUserCountInProject(String arp, String name, String departmentName, String project, String company) {
+ Map<String, Object> params = new HashMap<String, Object>();
+ params.put("arp", arp);
+ params.put("name", name);
+ params.put("departmentNameLike", departmentName);
+ params.put("project", project);
+ params.put("company", company);
+ return sysUserDao.getUserCountInProject(params);
+ }
+
+ @Override
+ public List<SysUser> getUserInProject(String arp, String name, String departmentName, String project, String company, Integer first, Integer pageSize) {
+ Map<String, Object> params = new HashMap<String, Object>();
+ params.put("arp", arp);
+ params.put("name", name);
+ params.put("departmentNameLike", departmentName);
+ params.put("project", project);
+ params.put("company", company);
+ return sysUserDao.getUserInProject(params);
}
@Transactional(propagation = Propagation.REQUIRED)
@@ -285,9 +309,9 @@
if (userList.size()>0) {
for (SysUser user:userList) {
if (this.isSysUserExist(user.getArp(), null, null, null)) {
-
+ throw new DuplicateKeyException("arp重复");
}else if(!com.alibaba.druid.util.StringUtils.isEmpty(user.getIdCard()) && this.isSysUserExist(null, null, user.getIdCard(), null)){
-
+ throw new DuplicateKeyException("idCard为空或重复");
}else {
SysUser sysUser=sysUserDao.selectByAccount(user);
if(sysUser==null){
@@ -317,7 +341,7 @@
}
@Override
- public Map getUser(String id) {
+ public SysUser getUser(String id) {
try {
return this.sysUserDao.getUser(id);
} catch (DataAccessException e) {
@@ -353,9 +377,10 @@
}
@Override
- public HazardousWasteUser getUserByAccount(String account) {
+ public HazardousWasteUser getUserByAccount(String account,String name) {
Map<String, String> params = new HashMap<>();
params.put("account", account);
+ params.put("name", name);
return sysUserDao.getUserByAccount(params);
}
@@ -364,5 +389,50 @@
return sysUserDao.getUserByProject(project);
}
+ @Override
+ public List<SysUser> getUserByArp(String arp) {
+ return sysUserDao.getUserByArp(arp);
+ }
+
+ @Override
+ public List<Map> getExportUserList(String arp, String name, String departmentName, String project, String company) {
+ return sysUserDao.getExportUserList(arp, name, departmentName, project, company);
+ }
+
+ @Override
+ public void exportUser2Excel(List<Map> list)throws Exception {
+ Map<String, String> map = new LinkedHashMap<>();
+ map.put("companyName", "单位");
+ map.put("departmentName", "部门");
+ map.put("project", "课题组");
+ map.put("arp", "ARP");
+ map.put("name", "姓名");
+ map.put("account", "账号");
+ map.put("idCard", "ID卡号");
+ map.put("phone", "电话");
+ map.put("email", "邮箱");
+ map.put("memo", "备注");
+ map.put("roleName", "角色");
+ map.put("approver", "审批者");
+ map.put("seeName", "可见度");
+ map.put("wasterName", "危废人员");
+ map.put("updateTime", "更新时间");
+ ExcelUtils.export2Excel(list,"人员信息",map);
+ }
+
+
+ //获取库管员邮箱
+ @Override
+ public List<String> getLibrarianEmail() {
+ return sysUserDao.getLibrarianEmail();
+ }
+
+ @Override
+ public SysUser getUserByName(String approveUserName) {
+ List<SysUser> users = sysUserDao.getUserByName(approveUserName);
+ if (users.size() != 1) return null;
+ return users.get(0);
+ }
+
}
--
Gitblit v1.9.2