From 47a751cb301d05276ae5d75145d57b2d090fe4e1 Mon Sep 17 00:00:00 2001 From: kongzy <kongzy> Date: 星期一, 01 七月 2024 10:58:35 +0800 Subject: [PATCH] change --- src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java | 155 ++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 133 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java index 3f5683a..4bd2806 100644 --- a/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java +++ b/src/main/java/com/nanometer/smartlab/service/SysUserServiceImpl.java @@ -2,8 +2,11 @@ import com.google.common.collect.ImmutableMap; import com.nanometer.smartlab.dao.SysUserDao; +import com.nanometer.smartlab.entity.SysLaboratoryContainer; import com.nanometer.smartlab.entity.SysReagent; import com.nanometer.smartlab.entity.SysUser; +import com.nanometer.smartlab.entity.dto.HazardousWasteUser; +import com.nanometer.smartlab.entity.dto.LaboratoryVo; import com.nanometer.smartlab.entity.dto.SysUserDto; import com.nanometer.smartlab.entity.enumtype.ApproverFlag; import com.nanometer.smartlab.entity.enumtype.SeeFlag; @@ -11,6 +14,8 @@ import com.nanometer.smartlab.exception.AlarmException; import com.nanometer.smartlab.exception.BusinessException; import com.nanometer.smartlab.exception.ExceptionEnumCode; +import com.nanometer.smartlab.model.CommonPage; +import com.nanometer.smartlab.util.ExcelUtils; import com.nanometer.smartlab.util.FacesUtils; import com.nanometer.smartlab.util.IDUtils; import com.nanometer.smartlab.util.MessageUtil; @@ -24,10 +29,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. @@ -41,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 projectName,String company, Integer first, Integer pageSize) { try { Map<String, Object> params = new HashMap<String, Object>(); if (StringUtils.isNotBlank(arp)) { @@ -53,6 +55,10 @@ if (StringUtils.isNotBlank(departmentName)) { params.put("departmentNameLike", "%" + departmentName + "%"); } + if (StringUtils.isNotBlank(projectName)) { + params.put("projectName", projectName); + } + params.put("company", company); params.put("first", first); params.put("pageSize", pageSize); return this.sysUserDao.getSysUserList(params); @@ -61,8 +67,37 @@ throw new BusinessException(ExceptionEnumCode.DB_ERR, MessageUtil.getMessageByCode(ExceptionEnumCode.DB_ERR.getCode()), e); } } + + @Override + public CommonPage<SysUser> getSysUserList(Integer pageNum, Integer pageSize, String name) { + if(pageNum==null||pageNum<1){ + pageNum=1; + } + if(pageSize==null||pageSize<1){ + pageSize=10; + } + if(pageSize>50){ + pageSize=50; + } + Map<String, Object> params = new HashMap<>(); + if (StringUtils.isNotBlank(name)) { + params.put("name","%" + name+ "%"); + } + params.put("first", (pageNum-1)*pageSize); + params.put("pageSize", pageSize); + CommonPage commonPage=new CommonPage(); + commonPage.setPageNum(pageNum); + commonPage.setPageSize(pageSize); + Long total=new Long(sysUserDao.getSysUserTotalCount(params)); + commonPage.setTotal(total); + commonPage.setTotalPage(CommonPage.getTotalPage(total,pageSize)); + List<SysUser> sysReagents=sysUserDao.getSysUserSimpleInfoList(params); + commonPage.setList(sysReagents); + return commonPage; + } + @Transactional(propagation = Propagation.REQUIRED) - public int getSysUserTotalCount(String arp, String name,String departmentName) { + public int getSysUserTotalCount(String arp, String name,String departmentName,String projectName,String company) { try { Map<String, Object> params = new HashMap<String, Object>(); if (StringUtils.isNotBlank(arp)) { @@ -74,6 +109,8 @@ if (StringUtils.isNotBlank(departmentName)) { params.put("departmentNameLike", "%" + departmentName + "%"); } + params.put("projectName", projectName); + params.put("company", company); return this.sysUserDao.getSysUserTotalCount(params); } catch (DataAccessException e) { logger.error(e.getMessage(), e); @@ -81,8 +118,30 @@ } } + @Override + public int getUserCountInProject(String arp, String name, String departmentName, String projectName, String company) { + Map<String, Object> params = new HashMap<String, Object>(); + params.put("arp", arp); + params.put("name", name); + params.put("departmentNameLike", departmentName); + params.put("projectName", projectName); + params.put("company", company); + return sysUserDao.getUserCountInProject(params); + } + + @Override + public List<SysUser> getUserInProject(String arp, String name, String departmentName, String projectName, 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("projectName", projectName); + params.put("company", company); + return sysUserDao.getUserInProject(params); + } + @Transactional(propagation = Propagation.REQUIRED) - public SysUser getSysUser(String id) { + public SysUser getSysUser(Long id) { try { return this.sysUserDao.getSysUser(id); } catch (DataAccessException e) { @@ -92,7 +151,7 @@ } @Transactional(propagation = Propagation.REQUIRED) - public SysUser getSysUserForSuppllier(String id) { + public SysUser getSysUserForSuppllier(Long id) { try { return this.sysUserDao.getSysUserForSuppllier(id); } catch (DataAccessException e) { @@ -136,7 +195,7 @@ } @Transactional(propagation = Propagation.REQUIRED) - public boolean isSysUserExist(String arp, String account, String idCard, String editId) { + public boolean isSysUserExist(String arp, String account, String idCard, Long editId) { try { Map<String, Object> params = new HashMap<String, Object>(); params.put("arp", arp); @@ -166,10 +225,11 @@ } @Override - public List<SysUser> getHasProjectSysUserList(String department) { + public List<SysUser> getHasProjectSysUserList(Long department, Long projectId) { try { Map<String, Object> params = new HashMap<String, Object>(); params.put("department", department); + params.put("projectId", projectId); params.put("approverFlag", ApproverFlag.YES); return this.sysUserDao.getHasProjectSysUserList(params); } catch (DataAccessException e) { @@ -190,7 +250,7 @@ } @Transactional(propagation = Propagation.REQUIRED) - public List<SysUser> getSeeUserList(String department) { + public List<SysUser> getSeeUserList(Long department) { try { Map<String, Object> params = new HashMap<String, Object>(); params.put("department", department); @@ -204,9 +264,9 @@ @Transactional(propagation = Propagation.REQUIRED) public SysUser insertSysUser(SysUser sysUser) { try { - if (sysUser.getId() == null) { - sysUser.setId(IDUtils.uuid()); - } +// if (sysUser.getId() == null) { +// sysUser.setId(IDUtils.uuid()); +// } this.sysUserDao.insertSysUser(sysUser); return sysUser; } catch (DuplicateKeyException ex) { @@ -246,7 +306,7 @@ return false; } - List<String> ids = new ArrayList<String>(); + List<Long> ids = new ArrayList<Long>(); for (SysUser sysUser : sysUserList) { ids.add(sysUser.getId()); } @@ -271,7 +331,7 @@ @Transactional(propagation = Propagation.REQUIRED) @Override - public void updateUserPointBySelective(Integer point,String id) { + public void updateUserPointBySelective(Integer point,Long id) { sysUserDao.updateUserPointBySelective(point,id); } @@ -289,9 +349,9 @@ }else { SysUser sysUser=sysUserDao.selectByAccount(user); if(sysUser==null){ - if (user.getId() == null) { - user.setId(IDUtils.uuid()); - } +// if (user.getId() == null) { +// user.setId(IDUtils.uuid()); +// } sysUserDao.insertSysUser(user); }else { sysUserDao.updateSysUser(user); @@ -315,7 +375,7 @@ } @Override - public Map getUser(String id) { + public SysUser getUser(Long id) { try { return this.sysUserDao.getUser(id); } catch (DataAccessException e) { @@ -351,11 +411,62 @@ } @Override - public SysUser getUserByAccount(String account) { - Map<String, String> params = new HashMap<>(); + public HazardousWasteUser getUserByAccount(String account,Long userId) { + Map<String, Object> params = new HashMap<>(); params.put("account", account); + params.put("useId", userId); return sysUserDao.getUserByAccount(params); } + @Override + public List<LaboratoryVo.LaboratoryUser> getUserByProject(Long projectId) { + return sysUserDao.getUserByProject(projectId); + } + + @Override + public List<SysUser> getUserByArp(String arp) { + return sysUserDao.getUserByArp(arp); + } + + @Override + public List<Map> getExportUserList(String arp, String name, String departmentName, Long projectId, String company) { + return sysUserDao.getExportUserList(arp, name, departmentName, projectId, company); + } + + @Override + public void exportUser2Excel(List<Map> list)throws Exception { + Map<String, String> map = new LinkedHashMap<>(); + map.put("companyName", "单位"); + map.put("departmentName", "部门"); + map.put("projectName", "课题组"); + 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