lxw
2023-05-25 f3c27fb78447449a950ba73c5e72ceda64ad8a12
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
package com.whyc.service;
 
import com.google.gson.internal.$Gson$Types;
import com.whyc.mapper.BaoJiGroupUserMapper;
import com.whyc.mapper.UserInfMapper;
import com.whyc.pojo.BaoJiGroup;
import com.whyc.pojo.BaoJiGroupUser;
import com.whyc.pojo.UserInf;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
 
@Service
public class BaoJiGroupUserService {
 
    @Resource
    private BaoJiGroupUserMapper mapper;
 
    @Resource
    private UserInfMapper userInfMapper;
 
 
    public List<BaoJiGroup> getGroupAndUserList() {
        List<BaoJiGroup> groupList = mapper.getGroupList();
        return groupList;
    }
 
    public List<BaoJiGroup> getGroupAndUserListOfCurrentUser(Long userId) {
        List<BaoJiGroup> groupList = mapper.getGroupListOfCurrentUser(userId);
        return groupList;
    }
 
    public Map<String, List<UserInf>> getUserList(int baoJiGroupId) {
        Map<String, List<UserInf>> resultMap = new LinkedHashMap<>();
        //查询包机组已添加的用户信息
        List<UserInf> relatedUserInfList = mapper.getUserList(baoJiGroupId);
        //查询包机组未添加的用户信息
        List<UserInf> allUserInfList = userInfMapper.selectList(null);
        List<UserInf> notRelatedUserInfList = allUserInfList.stream().filter(userInf -> !relatedUserInfList.contains(userInf)).collect(Collectors.toList());
 
        resultMap.put("usersAdded",relatedUserInfList);
        resultMap.put("usersNotAdded",notRelatedUserInfList);
 
        return resultMap;
    }
 
    public void updateUserList(List<BaoJiGroupUser> baoJiGroupUserList, int operationFlag) {
        if(operationFlag==1){
            mapper.insertBatchSomeColumn(baoJiGroupUserList);
        }else{
            mapper.deleteUserList(baoJiGroupUserList);
        }
    }
 
    /**查找包机组内包含特定角色的用户*/
    public List<UserInf> getUserListByRole(Set<Long> baoJiGroupIds, Integer role) {
        return mapper.getUserListByRole(baoJiGroupIds,role);
    }
 
    public List<BaoJiGroup> getGroupAndUserListWithDischargeFlag() {
        return mapper.getGroupAndUserListWithDischargeFlag();
    }
 
    public boolean getGroupFlag(int userId){
        Integer flag =  mapper.getGroupFlag(userId);
        return flag != null && flag == 1;
    }
}