Browse Source

用户数据导出

3254194295 2 years ago
parent
commit
5c45c6a951

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/mapper/upms/SysUserMapper.java

@@ -20,6 +20,8 @@ import java.util.List;
 @Component(value = "sysUserMapper")
 public interface SysUserMapper extends MyMapper<SysUser> {
 
+    List<SysUserVO> getSysUserVO(SysUserDTO sysUserDTO);
+
     void updateUserInfo(SysUserDTO sysUserDTO);
 
     /**

+ 8 - 0
platform-dao/src/main/java/com/platform/dao/vo/SysUserVO.java

@@ -19,6 +19,14 @@ import java.util.List;
 @Accessors(chain = true)
 public class SysUserVO implements Serializable {
     private static final long serialVersionUID = 1L;
+    private String roless;
+
+    private String dept;
+
+
+    private Integer id;
+
+    private String statusString;
 
     /**
      * 主键ID

+ 65 - 0
platform-dao/src/main/java/com/platform/dao/vo/export/upms/ExportSysUserVO.java

@@ -0,0 +1,65 @@
+package com.platform.dao.vo.export.upms;
+
+import com.platform.office.annotation.Excel;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+/**
+ * @Description 部门管理者导出VO
+ * @Author future
+ * @Date 2020-10-15 16:07:09
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+public class ExportSysUserVO implements Serializable {
+
+    /**
+     * 主键
+     */
+    @Excel(name = "序号", orderNum = "1")
+    private String id;
+
+    /**
+     * 管理者
+     */
+    @Excel(name = "账号", orderNum = "2")
+    private String username;
+
+
+    /**
+     * 类型:1.部门维修负责人
+     */
+    @Excel(name = "姓名", orderNum = "3")
+    private String realName;
+
+    @Excel(name = "部门", orderNum = "4")
+    private String dept;
+
+    @Excel(name = "权限", orderNum = "5")
+    private String roless;
+
+
+    /**
+     * 创建人
+     */
+    @Excel(name = "电话", orderNum = "6")
+    private String phone;
+
+    /**
+     * 创建人名称
+     */
+    @Excel(name = "邮箱", orderNum = "7")
+    private String email;
+
+    @Excel(name = "状态", orderNum = "8")
+    private String statusString;
+
+
+
+
+}

+ 16 - 2
platform-dao/src/main/resources/mapper/upms/SysUserMapper.xml

@@ -147,10 +147,24 @@
     select distinct user.username as username,user.real_name realName, user.user_id userId  from t_sys_user user
     join t_sys_user_role urole on urole.user_id = user.user_id
     join t_sys_role role on urole.role_id = role.role_id
-    join t_sys_user_dept dept on user.user_id = dept.user_id 
-    where role.role_name = '维修人员' and user.status = 1 
+    join t_sys_user_dept dept on user.user_id = dept.user_id
+    where role.role_name = '维修人员' and user.status = 1
     <if test="deptId != null and deptId != ''">
         and dept.dept_id = #{deptId}
     </if>
     </select>
+
+    <select id="getSysUserVO" parameterType="com.platform.dao.dto.upms.SysUserDTO"
+            resultType="com.platform.dao.vo.SysUserVO">
+        SELECT user.*,dept.name as dept, GROUP_CONCAT(role.role_name) as roless
+        FROM  t_sys_user USER LEFT JOIN t_sys_user_role ur
+        ON user.`user_id`=ur.`user_id`
+        LEFT JOIN t_sys_role role
+        ON ur.`role_id`=role.`role_id`
+        LEFT JOIN t_sys_user_dept ud
+        ON user.`user_id`=ud.user_id
+        LEFT JOIN t_sys_dept dept
+        ON ud.`dept_id`=dept.`dept_id`
+        GROUP BY user.`user_id`
+    </select>
 </mapper>

+ 30 - 1
platform-rest/src/main/java/com/platform/rest/controller/upms/SysUserController.java

@@ -3,7 +3,6 @@ package com.platform.rest.controller.upms;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.ArrayUtil;
 import cn.hutool.core.util.StrUtil;
-import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.fastjson.JSON;
 import com.platform.common.constant.CommonConstants;
 import com.platform.common.constant.SecurityConstants;
@@ -17,14 +16,19 @@ import com.platform.common.validation.group.AddGroup;
 import com.platform.common.validation.group.OtherGroup;
 import com.platform.common.validation.group.UpdateGroup;
 import com.platform.dao.bean.MyPage;
+import com.platform.dao.dto.firm.FirmProducerDTO;
 import com.platform.dao.dto.upms.SysDeptDTO;
 import com.platform.dao.dto.upms.SysUserDTO;
 import com.platform.dao.dto.upms.SysUserDeptDTO;
+import com.platform.dao.entity.firm.FirmProducer;
 import com.platform.dao.entity.upms.SysMenu;
 import com.platform.dao.entity.upms.SysUser;
+import com.platform.dao.util.ExcelUtil;
 import com.platform.dao.util.TreeUtil;
 import com.platform.dao.vo.SysUserVO;
 import com.platform.dao.vo.UserInfoVO;
+import com.platform.dao.vo.export.firm.ExportFirmProducerVO;
+import com.platform.dao.vo.export.upms.ExportSysUserVO;
 import com.platform.dao.vo.im.base.ImportResultVO;
 import com.platform.dao.vo.im.upms.ImportSysUserVO;
 import com.platform.office.util.ExcelImportUtil;
@@ -37,6 +41,7 @@ import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
 import org.springframework.http.HttpHeaders;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.security.oauth2.common.OAuth2AccessToken;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
@@ -521,4 +526,28 @@ public class SysUserController {
         }
         return R.success("微信绑定成功");
     }
+
+    /**
+     * 用户导出
+     *
+     * @param firmProducerDTO 生产商DTO
+     * @return R
+     */
+    @GetMapping("/exportUser")
+    @SysLog("用户导出")
+    @PreAuthorize("@pms.hasPermission('umps-user-export')")
+    public void export(HttpServletResponse response, SysUserDTO sysUserDTO) {
+        List<SysUserVO> list = sysUserService.getSysUserVO(sysUserDTO);
+        List<SysUserVO> voList=BeanConverterUtil.copyListProperties(list,SysUserVO.class);
+        int i=0;
+        for (SysUserVO user:voList){
+            user.setId(++i);
+            if(user.getStatus()==1){
+                user.setStatusString("正常");
+            }else if (user.getStatus()==2){
+                user.setStatusString("冻结");
+            }
+        }
+        ExcelUtil.exportResponseDict(response, ExportSysUserVO.class, BeanConverterUtil.copyListProperties(voList, ExportSysUserVO.class), "用户数据");
+    }
 }

+ 2 - 0
platform-service/src/main/java/com/platform/service/upms/SysUserService.java

@@ -22,6 +22,8 @@ import java.util.List;
  */
 public interface SysUserService extends IBaseService<SysUser, SysUserDTO> {
 
+    List<SysUserVO> getSysUserVO(SysUserDTO sysUserDTO);
+
     void updateUserInfo(SysUserDTO sysUserDTO);
 
 

+ 5 - 0
platform-service/src/main/java/com/platform/service/upms/impl/SysUserServiceImpl.java

@@ -102,6 +102,11 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserMapper, SysUser,
     @Value("${security.oauth2.client.client-secret}")
     private String clientSecret;
 
+    @Override
+    public List<SysUserVO> getSysUserVO(SysUserDTO sysUserDTO) {
+        return mapper.getSysUserVO(sysUserDTO);
+    }
+
     @Override
     public void updateUserInfo(SysUserDTO sysUserDTO) {
         sysUserDTO.setUserId(SecurityUtils.getUserInfo().getUserId());