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
package com.whyc.service;
 
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.whyc.mapper.CommonMapper;
import com.whyc.mapper.PermitGroupMapper;
import com.whyc.mapper.PermitGroupUserMapper;
import com.whyc.pojo.PermitGroup;
import com.whyc.pojo.PermitGroupUser;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import javax.annotation.Resource;
import java.sql.Wrapper;
import java.util.List;
 
@Service
@Transactional
public class PermitGroupService {
 
    @Resource
    private PermitGroupMapper mapper;
 
    @Resource
    private PermitGroupUserMapper permitGroupUserMapper;
 
    @Resource
    private CommonMapper commonMapper;
 
    public void add(List<PermitGroup> permitGroupList) {
        //权限组id生成
        int maxValue = (int) commonMapper.getMaxValue("db_user", "tb_user_permitgroup", "permit_group_id");
        int newPermitGroupId = maxValue+1;
        permitGroupList.stream().forEach(permitGroup -> permitGroup.setPermitGroupId(newPermitGroupId));
        mapper.insertBatchSomeColumn(permitGroupList);
    }
 
 
    public void update(List<PermitGroup> permitGroupList) {
        //先删除,后增加
        UpdateWrapper<PermitGroup> wrapper = Wrappers.update();
        wrapper.eq("permit_group_id",permitGroupList.get(0).getPermitGroupId());
        mapper.delete(wrapper);
 
        mapper.insertBatchSomeColumn(permitGroupList);
    }
 
 
    public void delete(Integer permitGroupId) {
        //删除权限组表记录
        UpdateWrapper<PermitGroup> groupWrapper = Wrappers.update();
        groupWrapper.eq("permit_group_id",permitGroupId);
        mapper.delete(groupWrapper);
        //删除权限组对应的用户记录
        UpdateWrapper<PermitGroupUser> groupUserWrapper = Wrappers.update();
        groupUserWrapper.eq("permit_group_id",permitGroupId);
        permitGroupUserMapper.delete(groupUserWrapper);
 
    }
 
    public List<PermitGroup> getList() {
        QueryWrapper<PermitGroup> wrapper = Wrappers.query();
        wrapper.select("distinct permit_group_id,permit_group_name");
        return mapper.selectList(wrapper);
    }
}