whyclxw
2025-05-15 96510a549bfb313920bf297b28089c4cf57f0146
src/main/java/com/whyc/service/BaojigroupService.java
@@ -15,10 +15,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.LinkedHashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
@Service
@@ -37,12 +34,47 @@
    @Autowired(required = false)
    private LockInfMapper lockInfMapper;
    //将内置用户加入到包机组下
    public void insertNeiZhi(Integer baojiId){
        List<BaojigroupUsr> list=new ArrayList<>();
        QueryWrapper wrapper=new QueryWrapper();
        wrapper.lt("uid",99);
        List<UserInf> uList=userInfMapper.selectList(wrapper);
        for (UserInf uinf:uList) {
            BaojigroupUsr baojiusr=new BaojigroupUsr();
            baojiusr.setUid(uinf.getUid());
            baojiusr.setBaojiId(baojiId);
            list.add(baojiusr);
        }
        bjUsrmapper.insertBatchSomeColumn(list);
    }
    //添加包机组
    @Transactional
    public Response addBaoji(String baojiName) {
        Baojigroup baoji=new Baojigroup();
        baoji.setBaojiName(baojiName);
        int bl=mapper.insert(baoji);
        return new Response().set(1,bl>0,"添加包机组成功");
        //验证包机组名是否重复
        //将内置用户加入到包机组下
        QueryWrapper wrapper=new QueryWrapper();
        wrapper.eq("baoji_name",baojiName);
        wrapper.last("limit 1");
        Baojigroup baoji=mapper.selectOne(wrapper);
        if(baoji!=null){
            return new Response().set(0,false,"包机组已存在");
        }else{
            baoji=new Baojigroup();
            baoji.setBaojiName(baojiName);
            int bl=mapper.insert(baoji);
            if(bl>0){
                //将内置用户加入到包机组下
                QueryWrapper wrapper1=new QueryWrapper();
                wrapper1.eq("baoji_name",baojiName);
                wrapper1.last("limit 1");
                baoji=mapper.selectOne(wrapper1);
                insertNeiZhi(baoji.getId());
            }
            return new Response().set(1,bl>0,"添加包机组成功");
        }
    }
    //编辑包机组
    public Response updateBaoji(Integer id, String baojiName) {
@@ -137,4 +169,20 @@
        return resultMap;
    }
    //当前用户所在包机组下所有的用户(下拉)
    public Response getBaojiUserByUid(Integer uid) {
        //查询当前人所在包机组
        QueryWrapper wrapper=new QueryWrapper();
        wrapper.select("baoji_id");
        if(uid>100){
            wrapper.eq("uid",uid);
        }
        List<BaojigroupUsr> usrList=bjUsrmapper.selectList(wrapper);
        if(usrList.size()==0){
            return new Response().setII(1,null,null,"当前用户未加入包机组");
        }
        List<Integer> baojiIdList=usrList.stream().map(BaojigroupUsr::getBaojiId).collect(Collectors.toList());
        List<UserInf> list=userInfMapper.getBaojiUserByUid(baojiIdList);
        return new Response().setII(1,list!=null,list,"当前用户所在包机组下所有的用户(下拉)");
    }
}