jinlin
2024-02-04 4b04e7fd4fcad9af480a003509288aa6070b137e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
/**
 * Copyright (c) 2018 人人开源 All rights reserved.
 *
 * https://www.renren.io
 *
 * 版权所有,侵权必究!
 */
 
package com.zt.life.sys.service;
 
import com.zt.common.annotation.LogOperation;
import com.zt.common.db.query.QueryFilter;
import com.zt.common.servlet.Result;
import com.zt.common.utils.UUIDUtil;
import com.zt.core.context.User;
import com.zt.core.context.UserContext;
import com.zt.core.sys.model.SysDept;
import com.zt.core.sys.model.SysUser;
import com.zt.life.sys.dto.SysUserExDto;
import com.zt.life.sys.mapstruct.UserExMapper;
import com.zt.modules.sys.enums.UserStatus;
import com.zt.modules.sys.service.*;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
 
/**
 * 系统用户
 *
 * @author hehz
 */
@Service
@Primary
public class SysUserExtService extends SysUserService {
    @Autowired
    private SysRoleUserService sysRoleUserService;
    @Autowired
    private SysJobUserService sysJobUserService;
    @Autowired
    private SysPostUserService sysPostUserService;
    @Autowired
    private SysDeptService sysDeptService;
    @Autowired
    private UserExMapper userExMapper;
 
    public List<SysUserExDto> page2(QueryFilter queryFilter) {
        // 普通管理员,只能查询所属部门及子部门的数据
        User user = UserContext.getUser();
//        if (!user.isSuperAdmin()) {
//            queryFilter.addParam("deptIds", sysDeptService.getWithDescendantIds(user.getDeptId()));
//        }
 
        // 查询
        List<SysUserExDto> dtos = new ArrayList<>();
        List<SysUser> list = baseDao.getList(queryFilter.getParams());
        for (SysUser sysUser : list) {
            SysUserExDto dto = userExMapper.toDto(sysUser);
            List<String> roles = sysRoleUserService.getUserRoles(sysUser.getId()).stream().map(role -> role.getName())
                    .collect(Collectors.toList());
            dto.setRoles(StringUtils.join(roles, ","));
            dtos.add(dto);
        }
        return queryFilter.getPageList(dtos);
    }
 
    @Transactional(rollbackFor = Exception.class)
    public void insert(SysUser entity) {
        super.insert(entity);
        entity.setStatus(UserStatus.DISABLE.getValue());
        baseDao.updateById(entity);
    }
 
 
}