From 9575242f02f828010548846320fafa1574260ca6 Mon Sep 17 00:00:00 2001
From: baizonghao <1719256278@qq.com>
Date: 星期五, 17 三月 2023 23:09:35 +0800
Subject: [PATCH] 人员管理导出
---
ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java | 10 ++--
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java | 25 ++++++++++++
ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java | 5 ++
ycl-common/src/main/java/com/ycl/dto/UmsUserDto.java | 46 +++++++++++++++++++++++
ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java | 26 +++++++++++-
5 files changed, 103 insertions(+), 9 deletions(-)
diff --git a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java
index bbb7d71..42e9098 100644
--- a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java
+++ b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminController.java
@@ -6,14 +6,13 @@
import com.ycl.api.CommonResult;
import com.ycl.bo.AdminUserDetails;
import com.ycl.controller.BaseController;
-import com.ycl.dto.UmsAdminLoginParam;
-import com.ycl.dto.UmsAdminParam;
-import com.ycl.dto.UpdateAdminPasswordParam;
+import com.ycl.dto.*;
import com.ycl.entity.user.UmsAdmin;
import com.ycl.entity.user.UmsRole;
import com.ycl.service.redis.RedisService;
import com.ycl.service.user.UmsAdminService;
import com.ycl.service.user.UmsMenuService;
+import com.ycl.utils.EasyExcelUtils;
import com.ycl.utils.redis.RedisKey;
import com.ycl.vo.user.UserVO;
import io.swagger.annotations.Api;
@@ -26,9 +25,12 @@
import org.springframework.stereotype.Controller;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
import java.security.Principal;
import java.util.HashMap;
import java.util.List;
@@ -132,6 +134,24 @@
return CommonResult.success(page);
}
+
+ @ApiOperation("鐢ㄦ埛瀵煎嚭")
+ @PostMapping("/import")
+ public void exportUser(HttpServletResponse response) {
+ List<UmsUserDto> umsUserDtos = adminService.userExp();
+ String sheetName = "鐢ㄦ埛瀵煎嚭";
+ EasyExcelUtils.export(response, sheetName, UmsUserDto.class, umsUserDtos);
+ }
+
+ @ApiOperation("閮ㄩ棬瀵煎叆")
+ @PostMapping("/import")
+ public CommonResult importUser(MultipartFile file) throws IOException {
+ EasyExcelUtils.importDepartFile(file);
+ return CommonResult.success(true, "瀵煎叆鎴愬姛");
+ }
+
+
+
@ApiOperation("鑾峰彇鎸囧畾鐢ㄦ埛淇℃伅")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
diff --git a/ycl-common/src/main/java/com/ycl/dto/UmsUserDto.java b/ycl-common/src/main/java/com/ycl/dto/UmsUserDto.java
new file mode 100644
index 0000000..7b7ce19
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/dto/UmsUserDto.java
@@ -0,0 +1,46 @@
+package com.ycl.dto;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.ycl.entity.depart.UmsDepart;
+import com.ycl.entity.user.UmsRole;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+import java.util.List;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class UmsUserDto {
+
+ @ExcelProperty(value = "鐢ㄦ埛ID", index = 0)
+ private Long id;
+
+ @ExcelProperty(value = "鐢ㄦ埛鍚嶇О", index = 1)
+ private String username;
+
+ @ExcelProperty(value = "鎵�灞炲鍚�", index = 2)
+ private String nickName;
+
+ @ExcelProperty(value = "鑱旂郴鏂瑰紡", index = 3)
+ private String mobile;
+
+ @ExcelProperty(value = "鎵�灞炶鑹�", index = 4)
+ private List<UmsRole> roles;
+
+ @ExcelProperty(value = "鎵�灞為儴闂�", index = 5)
+ private List<UmsDepart> depart;
+
+ @ExcelProperty(value = "鎵�灞炶亴鍔�", index = 6)
+ private String jobTitle;
+
+ @ExcelProperty(value = "鍒涘缓鏃堕棿", index = 7)
+ private Date createTime;
+
+ @ExcelProperty(value = "鏄惁鍚敤", index = 8)
+ private Integer status;
+}
diff --git a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
index 37c074b..a008173 100644
--- a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
@@ -145,17 +145,17 @@
List<UmsDepart> umsDeparts = sccgDepartMapper.selectDepartList();
List<UmsDepartDto> res = umsDeparts
.stream()
- .map(umsDepart -> {
+ .map(item -> {
UmsDepartDto umsDepartDto = new UmsDepartDto();
- umsDepartDto.setId(umsDepart.getId());
- umsDepartDto.setDepartType(umsDepart.getDepartType());
- UmsDepart umsDepartFather = sccgDepartMapper.selectOne(new LambdaQueryWrapper<UmsDepart>().eq(UmsDepart::getDepartName, umsDepart.getId()));
+ umsDepartDto.setId(item.getId());
+ umsDepartDto.setDepartType(item.getDepartType());
+ UmsDepart umsDepartFather = sccgDepartMapper.selectOne(new LambdaQueryWrapper<UmsDepart>().eq(UmsDepart::getDepartName, item.getId()));
if (Objects.isNull(umsDepartFather)){
umsDepartDto.setParentDepartName("");
}else {
umsDepartDto.setParentDepartName(umsDepartFather.getDepartName());
}
- umsDepartDto.setDepartDes(umsDepart.getDepartDes());
+ umsDepartDto.setDepartDes(item.getDepartDes());
return umsDepartDto;
}).collect(Collectors.toList());
return res;
diff --git a/ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java b/ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java
index 5f23c20..5bb9f37 100644
--- a/ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java
+++ b/ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java
@@ -4,10 +4,10 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.dto.UmsAdminParam;
+import com.ycl.dto.UmsUserDto;
import com.ycl.dto.UpdateAdminPasswordParam;
import com.ycl.entity.user.UmsAdmin;
import com.ycl.entity.user.UmsMenu;
-import com.ycl.entity.user.UmsResource;
import com.ycl.entity.user.UmsRole;
import com.ycl.vo.user.UserVO;
import org.springframework.security.core.userdetails.UserDetails;
@@ -97,6 +97,8 @@
*/
IPage<UmsAdmin> pageUser(UserVO.PageUserVO pageUserVO);
+ List<UmsUserDto> userExp();
+
/**
* 鎵归噺鍒犻櫎鐢ㄦ埛
*/
@@ -113,4 +115,5 @@
List<UmsAdmin> getDepartUser(Long departId);
String getTargetTo(String ids, String sendType);
+
}
diff --git a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
index 2e3e399..3ba1f4d 100644
--- a/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
@@ -8,6 +8,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.bo.AdminUserDetails;
import com.ycl.dto.UmsAdminParam;
+import com.ycl.dto.UmsUserDto;
import com.ycl.dto.UpdateAdminPasswordParam;
import com.ycl.entity.user.*;
import com.ycl.exception.ApiException;
@@ -45,6 +46,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.function.Function;
import java.util.stream.Collectors;
/**
@@ -384,6 +386,27 @@
}
@Override
+ public List<UmsUserDto> userExp() {
+ List<UmsAdmin> umsAdmins = baseMapper.selectList(null);
+ List<UmsUserDto> res = umsAdmins
+ .stream()
+ .map(item -> {
+ UmsUserDto res1 = new UmsUserDto();
+ res1.setId(item.getId());
+ res1.setUsername(item.getUsername());
+ res1.setNickName(item.getNickName());
+ res1.setMobile(item.getMobile());
+ res1.setRoles(item.getRoles());
+ res1.setDepart(item.getDepart());
+ res1.setJobTitle(item.getJobTitle());
+ res1.setCreateTime(item.getCreateTime());
+ res1.setStatus(item.getStatus());
+ return res1;
+ }).collect(Collectors.toList());
+ return res;
+ }
+
+ @Override
public boolean deleteBatch(List<Long> ids) {
boolean success = removeByIds(ids);
getCacheService().delBatchAdmin(ids);
@@ -432,4 +455,6 @@
}
return str;
}
+
+
}
--
Gitblit v1.8.0