wzy
2022-08-14 b141df9bf9764db8567efebed48006e12ab1f657
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
package com.xzx.gc.role.service;
 
 
import cn.hutool.core.lang.Snowflake;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.RandomUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.xzx.gc.common.exception.PlatformException;
import com.xzx.gc.common.exception.RestException;
import com.xzx.gc.common.utils.IdUtils;
import com.xzx.gc.common.utils.SecurityUtil;
import com.xzx.gc.entity.CityPartner;
import com.xzx.gc.entity.CoreUser;
import com.xzx.gc.entity.CoreUserRole;
import com.xzx.gc.role.mapper.CoreUserMapper;
import com.xzx.gc.role.mapper.CoreUserRoleMapper;
import com.xzx.gc.role.mapper.UserConsoleMapper;
import com.xzx.gc.role.model.CoreUserModel;
import com.xzx.gc.util.enums.DelFlagEnum;
import com.xzx.gc.util.enums.GeneralStateEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
/**
 * 用户管理----->身份设定
 */
@Service
@Transactional
public class CuserConsoleService {
 
    @Autowired
    CoreUserMapper userDao;
    @Autowired
    CoreUserRoleMapper roleDao;
    @Autowired
    CityPartnerService cityPartnerService;
    @Autowired
    UserConsoleMapper cuserdao;
    @Autowired
    private IdUtils idUtils;
    @Autowired
    private CoreUserRoleService coreUserRoleService;
    /**
     * 根据条件查询
     *
     * @param query
     */
    public PageInfo<CoreUserModel> queryByCondtion(CoreUserModel query) {
        if(null!=query.getStartTime()&&!"".equals(query.getStartTime())){
            query.setStartTime(query.getStartTime()+" 00:00:00");
        }
        if(null!=query.getEndTime()&&!"".equals(query.getEndTime())){
            query.setEndTime(query.getEndTime()+" 23:59:59");
        }
        PageHelper.startPage(query.getPage(),query.getLimit());
        List<CoreUserModel> ret = userDao.queryByCondtion(query);
        PageInfo<CoreUserModel> pageInfo=new PageInfo(ret);
        return pageInfo;
    }
 
    public void batchDelSysUser(List<Long> userIds) {
        try {
            userDao.batchDelUserByIds(userIds);
        } catch (Exception e) {
            throw new PlatformException("批量删除用户失败", e);
        }
    }
 
 
    /**
     * 插入一条用户数据
     *
     * @param user
     */
    public void saveUser(CoreUser user,Long roleId) {
        CoreUser query = new CoreUser();
        query.setCode(user.getCode());
        query.setDelFlag(0);
        CoreUser dbUser = userDao.selectOne(query);
        if (dbUser != null) {
            throw new RestException("账户已存在");
        }
        user.setCreateTime(new Date());
        user.setState(GeneralStateEnum.ENABLE.getValue());
        user.setPassword(user.getPassword());
        user.setDelFlag(DelFlagEnum.NORMAL.getValue());
        userDao.insertUseGeneratedKeys(user);
        if(StringUtils.isNotEmpty(user.getAttachmentId())){
        }
        CoreUserRole coreUserRole = new CoreUserRole();
        coreUserRole.setCreateTime(new Date());
        coreUserRole.setOrgId(user.getOrgId());
        coreUserRole.setUserId(user.getId());
        coreUserRole.setRoleId(roleId);
        roleDao.insert(coreUserRole);
        // 添加账号表
        String value = "0";
 
        String accountNo=idUtils.generate("ZH",4);
        cuserdao.addCuserAccountRole(accountNo, "", user.getId()+"",value);
 
    }
 
    public int resetPassword(Long id, String password) {
        CoreUser user = new CoreUser();
        user.setId(id);
        String salt = RandomUtil.randomString(16);
        String newPassword = SecurityUtil.encrypt(salt, password);
        user.setPassword(newPassword);
        user.setSalt(salt);
        user.setUpdateTime(new Date());
        return userDao.updateByPrimaryKeySelective(user);
    }
}