From 5720a0b6cb13fcecc7fb810c7a7f0ad124ce6048 Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期五, 20 六月 2025 22:09:24 +0800 Subject: [PATCH] 包机组修改 --- src/main/java/com/whyc/service/BaojigroupService.java | 121 ++++++++++++++++++++++++++++++++------- 1 files changed, 98 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/whyc/service/BaojigroupService.java b/src/main/java/com/whyc/service/BaojigroupService.java index 861c352..851ef60 100644 --- a/src/main/java/com/whyc/service/BaojigroupService.java +++ b/src/main/java/com/whyc/service/BaojigroupService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; 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.dto.Response; import com.whyc.mapper.*; import com.whyc.pojo.db_station.PowerInf; @@ -15,10 +16,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @Service @@ -43,7 +41,7 @@ public void insertNeiZhi(Integer baojiId){ List<BaojigroupUsr> list=new ArrayList<>(); QueryWrapper wrapper=new QueryWrapper(); - wrapper.lt("uid",99); + wrapper.lt("id",99); List<User> uList=UserMapper.selectList(wrapper); for (User uinf:uList) { BaojigroupUsr baojiusr=new BaojigroupUsr(); @@ -59,7 +57,7 @@ //楠岃瘉鍖呮満缁勫悕鏄惁閲嶅 //灏嗗唴缃敤鎴峰姞鍏ュ埌鍖呮満缁勪笅 QueryWrapper wrapper=new QueryWrapper(); - wrapper.eq("baoji_name",baojiName); + wrapper.eq("baoji_group_name",baojiName); wrapper.last("limit 1"); Baojigroup baoji=mapper.selectOne(wrapper); if(baoji!=null){ @@ -68,14 +66,14 @@ baoji=new Baojigroup(); baoji.setBaojiGroupName(baojiName); int bl=mapper.insert(baoji); - if(bl>0){ + /*if(bl>0){ //灏嗗唴缃敤鎴峰姞鍏ュ埌鍖呮満缁勪笅 QueryWrapper wrapper1=new QueryWrapper(); - wrapper1.eq("baoji_name",baojiName); + wrapper1.eq("baoji_group_name",baojiName); wrapper1.last("limit 1"); baoji=mapper.selectOne(wrapper1); insertNeiZhi(baoji.getBaojiGroupId()); - } + }*/ return new Response().set(1,bl>0,"娣诲姞鍖呮満缁勬垚鍔�"); } @@ -83,8 +81,8 @@ //缂栬緫鍖呮満缁� public Response updateBaoji(Integer id, String baojiName) { UpdateWrapper wrapper=new UpdateWrapper(); - wrapper.eq("id",id); - wrapper.set("baoji_name",baojiName); + wrapper.eq("baoji_group_id",id); + wrapper.set("baoji_group_name",baojiName); int bl=mapper.update((Baojigroup) ActionUtil.objeNull,wrapper); return new Response().set(1,bl>0,"缂栬緫鍖呮満缁勬垚鍔�"); } @@ -93,22 +91,22 @@ public Response delBaoji(Integer id) { //鍏堝垹闄ゅ寘鏈虹粍瀵瑰簲浜轰笅鐨勮褰� UpdateWrapper wrapper1=new UpdateWrapper(); - wrapper1.eq("baoji_id",id); + wrapper1.eq("baoji_group_id",id); bjUsrmapper.delete(wrapper1); - //鍐嶅垹闄ゅ寘鏈虹粍瀵瑰簲涓嬬殑鏈烘埧鍜岄攣 + //鍐嶅垹闄ゅ寘鏈虹粍瀵瑰簲涓嬬殑鏈烘埧鍜岀數婧� UpdateWrapper wrapper2=new UpdateWrapper(); - wrapper2.eq("baoji_id",id); + wrapper2.eq("baoji_group_id",id); bjPowermapper.delete(wrapper2); //鏈�鍚庡垹闄ゅ寘鏈虹粍 UpdateWrapper wrapper=new UpdateWrapper(); - wrapper.eq("id",id); + wrapper.eq("baoji_group_id",id); int bl=mapper.delete(wrapper); return new Response().set(1,bl>0,"鍒犻櫎鍖呮満缁勬垚鍔�"); } //鏌ヨ鍖呮満缁勫強鍖呮満缁勫搴旂殑鐢ㄦ埛鍜屽搴旀満鎴垮拰閿� public Response getAllBaojiInf() { QueryWrapper wrapper=new QueryWrapper(); - wrapper.orderByAsc("id"); + wrapper.orderByAsc("baoji_group_id"); List<Baojigroup> baojiList=mapper.selectList(wrapper); for (Baojigroup bj:baojiList) { //鏌ヨ鍖呮満缁勫搴旂殑鐢ㄦ埛淇℃伅 @@ -120,15 +118,42 @@ } return new Response().setII(1,baojiList!=null,baojiList,"鏌ヨ鍖呮満缁勫強鍖呮満缁勫搴旂殑鐢ㄦ埛鍜屽搴旀満鎴垮拰閿�"); } - //鍖呮満缁勬坊鍔犳満鎴垮拰閿亅绉婚櫎鏈烘埧鍜岄攣 + //鍖呮満缁勬坊鍔犳満鎴垮拰鐢垫簮|绉婚櫎鏈烘埧鍜岀數婧� + //鈶�)灏嗙數婧愭坊鍔犲埌鐝粍鍖呮満缁勪腑鏃堕渶妫�鏌ヨ鐢垫簮鏄惁鍦ㄥ叾浠栧寘鏈虹粍涓瓨鍦�,鑻ュ瓨鍦ㄥ垯鎻愮ず褰撳墠鐢垫簮宸插湪鍏朵粬鐝粍(鍙彁绀哄瓨鍦ㄧ殑鐝粍鍚嶇О)涓瓨鍦紝鑻ヤ笉瀛樺湪鍒欐墽琛屾坊鍔犻�昏緫銆� @Transactional - public void updateStationAndLockList(List<BaojigroupPower> BaojigroupPowerList, int operationFlag) { + public Response updateStationAndLockList(List<BaojigroupPower> BaojigroupPowerList, int operationFlag) { if(operationFlag==1){ - bjPowermapper.insertBatchSomeColumn(BaojigroupPowerList); + List<BaojigroupPower> addList=new ArrayList<>(); + List<BaojigroupPower> unaddList=new ArrayList<>(); + for (BaojigroupPower bjp:BaojigroupPowerList) { + //妫�娴嬪惁鍦ㄥ叾浠栧寘鏈虹粍涓瓨鍦�,鑻ュ瓨鍦ㄥ垯鎻愮ず褰撳墠鐢垫簮宸插湪鍏朵粬鐝粍(鍙彁绀哄瓨鍦ㄧ殑鐝粍鍚嶇О)涓瓨鍦� + int flag=checkPowerIsInBanzu(bjp.getPowerId()); + if(flag==1){ + unaddList.add(bjp); + return new Response().setII(1,false,unaddList,"瀛樺湪鐢垫簮宸叉坊鍔犺繃鐝粍"); + } + } + bjPowermapper.insertBatchSomeColumn(addList); + return new Response().set(1, true,"娣诲姞鎴愬姛"); + }else{ bjPowermapper.deleteStationAndLockList(BaojigroupPowerList); + return new Response().set(1,true,"绉婚櫎鎴愬姛"); } } + //妫�娴嬪惁鍦ㄥ叾浠栧寘鏈虹粍涓瓨鍦�,鑻ュ瓨鍦ㄥ垯鎻愮ず褰撳墠鐢垫簮宸插湪鍏朵粬鐝粍(鍙彁绀哄瓨鍦ㄧ殑鐝粍鍚嶇О)涓瓨鍦� + private int checkPowerIsInBanzu(Integer powerId) { + int flag=0; + List<BaojigroupPower> List=bjPowermapper.checkPower(powerId); + if(List!=null&&List.size()>0){ + List<Integer> flagList=List.stream().map(BaojigroupPower::getTeamFlag).collect(Collectors.toList()); + if (flagList != null && flagList.contains(1)) { + flag=1; + } + } + return flag; + } + //鍖呮満缁勬坊鍔犵敤鎴穦绉婚櫎鐢ㄦ埛 @Transactional public void updateUserList(List<BaojigroupUsr> baoJiGroupUserList, int operationFlag) { @@ -150,8 +175,8 @@ List<User> relatedUserList = bjUsrmapper.getUserList(id); //鏌ヨ鍖呮満缁勬湭娣诲姞鐨勭敤鎴蜂俊鎭� QueryWrapper wrapper=new QueryWrapper(); - wrapper.select("uid", "uname"); - wrapper.gt("uid",100); + wrapper.select("id", "name"); + wrapper.gt("id",100); List<User> allUserList = UserMapper.selectList(wrapper); List<User> notRelatedUserList = allUserList.stream().filter(User -> !relatedUserList.contains(User)).collect(Collectors.toList()); @@ -177,7 +202,7 @@ public Response getBaojiUserByUid(Integer uid) { //鏌ヨ褰撳墠浜烘墍鍦ㄥ寘鏈虹粍 QueryWrapper wrapper=new QueryWrapper(); - wrapper.select("baoji_id"); + wrapper.select("baoji_group_id"); if(uid>100){ wrapper.eq("uid",uid); } @@ -199,6 +224,56 @@ QueryWrapper wrapper=new QueryWrapper(); wrapper.eq("uid",id); List<BaojigroupUsr> list=bjUsrmapper.selectList(wrapper); - return list == null?0:1 ; + return list.size()>0?1:0 ; + } + /*璁剧疆鍖呮満缁勬爣璁� + * 鈶犲皢鍖呮満缁勮缃垚鐝粍鏃讹紝鍒ゆ柇褰撳墠鍖呮満缁勫唴鐨勭數婧愭槸鍚﹀湪鍏朵粬璁剧疆鎴愮彮缁勭殑鍖呮満缁勫唴锛岃嫢鍦ㄥ垯鎻愮ず褰撳墠鐢垫簮宸插湪鍏朵粬鐝粍涓�傚惁鍒欐墽琛岃缃彮缁勯�昏緫銆� + * + * */ + public Response updateTeamFlag(Integer baoJiGroupId, Integer flag) { + if(flag==1){ + //1妫�娴嬪綋鍓嶅寘鏈虹粍涓嬬殑鐢垫簮鏄惁鍦ㄥ叾浠栧寘鏈虹粍涓瓨鍦紝鍒欐煡鐪嬭鍖呮満缁勬槸鍚︿负鐝粍 + List<BaojigroupPower> powerList=bjPowermapper.checkPwrIsInBanzu(baoJiGroupId); + //2.鑻ュ瓨鍦ㄤ竴鏉″垯杩斿洖锛岃嫢涓嶅瓨鍦ㄤ慨鏀逛负鐝粍 + if(powerList!=null&&powerList.size()>0){ + List<Integer> flagList=powerList.stream().map(BaojigroupPower::getTeamFlag).collect(Collectors.toList()); + if (flagList != null && flagList.contains(1)) { + return new Response().set(1,false,"褰撳墠鍖呯粍涓嬬數婧愬凡瀛樺湪鐝粍涓�"); + } + } + } + UpdateWrapper wrapper = new UpdateWrapper(); + wrapper.set("team_flag",flag); + wrapper.eq("baoji_group_id",baoJiGroupId); + mapper.update(null,wrapper); + return new Response().set(1,true,"璁剧疆瀹屾垚"); + } + //鍒犻櫎鍖呮満缁勪笅鐨勭數婧� + public void delPowerInBaoji(Integer pid) { + UpdateWrapper<BaojigroupPower> update = Wrappers.update(); + update.eq("power_id",pid); + bjPowermapper.delete(update); + } + + //鍒犻櫎鍖呮満缁勪笅鐨勬満鎴� + public void delStationInBaoji(Integer sid) { + UpdateWrapper<BaojigroupPower> update = Wrappers.update(); + update.eq("station_id",sid); + bjPowermapper.delete(update); + } + //鏌ヨ鏈烘埧鎵�鍦ㄧ殑鐝粍 + public String getGroupName(Integer powerId) { + String groupName = powerInfMapper.getGroupName(powerId); + if(groupName==null||groupName.length()<0){ + groupName="none"; + } + return groupName; + } + //鏌ヨ鎵�鏈夌殑鍖呮満缁勫悕闆嗗悎锛堢彮缁勶級 + public List<Baojigroup> getGroupList() { + QueryWrapper wrapper=new QueryWrapper(); + wrapper.eq("team_flag",1); + List<Baojigroup> list=mapper.selectList(wrapper); + return list; } } \ No newline at end of file -- Gitblit v1.9.1