From a6d1b5d325decd675c3d691c5a9ae6f130d3bd2c Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期五, 16 五月 2025 16:49:24 +0800 Subject: [PATCH] 标记包机组是否为班组 --- src/main/java/com/whyc/mapper/BaojigroupPowerMapper.java | 2 ++ src/main/resources/mapper/BaojigroupPowerMapper.xml | 6 ++++++ src/main/java/com/whyc/controller/BaojiGroupController.java | 8 ++++---- src/main/java/com/whyc/service/BaojigroupService.java | 44 +++++++++++++++++++++++++++++++++----------- 4 files changed, 45 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/whyc/controller/BaojiGroupController.java b/src/main/java/com/whyc/controller/BaojiGroupController.java index 09d2ee2..56a6c10 100644 --- a/src/main/java/com/whyc/controller/BaojiGroupController.java +++ b/src/main/java/com/whyc/controller/BaojiGroupController.java @@ -22,10 +22,10 @@ @Autowired private BaojigroupService service; - @ApiOperation("鏍囪鍖呮満缁勬槸鍚︿负鐝粍") - @GetMapping("setBaojiTeam") - public Response setBaojiTeam(@RequestParam Integer id, @RequestParam Integer teamFalg) { - return service.setBaojiTeam(id,teamFalg); + @PostMapping("updateTeamFlag") + @ApiOperation("璁剧疆鍖呮満缁勬爣璁�") + public Response updateTeamFlag(@RequestParam Integer baoJiGroupId,@RequestParam Integer flag){ + return service.updateTeamFlag(baoJiGroupId,flag); } @ApiOperation("娣诲姞鍖呮満缁�") @GetMapping("addBaoji") diff --git a/src/main/java/com/whyc/mapper/BaojigroupPowerMapper.java b/src/main/java/com/whyc/mapper/BaojigroupPowerMapper.java index 464050b..c00d1a2 100644 --- a/src/main/java/com/whyc/mapper/BaojigroupPowerMapper.java +++ b/src/main/java/com/whyc/mapper/BaojigroupPowerMapper.java @@ -18,4 +18,6 @@ List<Integer> getLocIdByStationidAndBjId(@Param("stationId") Integer stationId, @Param("baojiId") Integer baojiId); List<PowerInf> getPowerList(@Param("id") int id); + //鏌ヨ鍏朵粬鐨勭粍,鍖呭惈鐨勬墍鏈夌珯鐐� + List<BaojigroupPower> getStationIdListWithDischargePlanFlag(); } \ No newline at end of file diff --git a/src/main/java/com/whyc/service/BaojigroupService.java b/src/main/java/com/whyc/service/BaojigroupService.java index f703a1b..d0f3048 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 @@ -201,12 +199,36 @@ List<BaojigroupUsr> list=bjUsrmapper.selectList(wrapper); return list.size()>0?1:0 ; } - //鏍囪鍖呮満缁勬槸鍚︿负鐝粍 - public Response setBaojiTeam(Integer id, Integer teamFalg) { - UpdateWrapper wrapper=new UpdateWrapper(); - wrapper.eq("baoji_group_id",id); - wrapper.set("team_flag",teamFalg); - int bl=mapper.update(null,wrapper); - return new Response().set(1,bl>0,"淇敼鍖呮満缁勭彮缁勬垚鍔�"); + //璁剧疆鍖呮満缁勬爣璁� + public Response updateTeamFlag(Integer baoJiGroupId, Integer flag) { + if(flag==1) { + //鏌ヨ瑕佽缃殑鍖呮満缁勭殑绔欑偣 + QueryWrapper<BaojigroupPower> query = Wrappers.query(); + query.select("baoji_group_id", "station_id").eq("baoji_group_id", baoJiGroupId); + List<BaojigroupPower> stationIdList = bjPowermapper.selectList(query); + stationIdList = stationIdList.stream().distinct().collect(Collectors.toList()); + //鏌ヨ鍏朵粬鐨勭粍,鍖呭惈鐨勬墍鏈夌珯鐐� + List<BaojigroupPower> stationIdListWithDischargePlanFlag = bjPowermapper.getStationIdListWithDischargePlanFlag(); + stationIdListWithDischargePlanFlag = stationIdListWithDischargePlanFlag.stream().distinct().collect(Collectors.toList()); + List<BaojigroupPower> repeatedStationIdList = new LinkedList<>(); + for (int i = 0; i < stationIdList.size(); i++) { + BaojigroupPower baojiGroupBattGroup = stationIdList.get(i); + for (int j = 0; j < stationIdListWithDischargePlanFlag.size(); j++) { + BaojigroupPower baojiGroupBattGroupWithFlag = stationIdListWithDischargePlanFlag.get(j); + if (baojiGroupBattGroupWithFlag.getStationId().equals(baojiGroupBattGroup.getStationId())) { + repeatedStationIdList.add(baojiGroupBattGroupWithFlag); + break; + } + } + } + //鏌ヨ閲嶅绔欑偣鐨勪俊鎭� + if (repeatedStationIdList.size() > 0) { + return new Response().setII(1, false, repeatedStationIdList, "璁剧疆澶辫触"); + } + } + UpdateWrapper<Baojigroup> update = Wrappers.update(); + update.set("team_flag",flag).eq("baoji_group_id",baoJiGroupId); + mapper.update((Baojigroup) ActionUtil.objeNull,update); + return new Response().set(1,true,"璁剧疆瀹屾垚"); } } \ No newline at end of file diff --git a/src/main/resources/mapper/BaojigroupPowerMapper.xml b/src/main/resources/mapper/BaojigroupPowerMapper.xml index b54f9e1..1e1fd11 100644 --- a/src/main/resources/mapper/BaojigroupPowerMapper.xml +++ b/src/main/resources/mapper/BaojigroupPowerMapper.xml @@ -49,4 +49,10 @@ and bl.baoji_group_id = #{id} order by s.station_name </select> + <select id="getStationIdListWithDischargePlanFlag" resultType="com.whyc.pojo.db_user.BaojigroupPower"> + SELECT gb.baoji_group_id,gb.station_id,g.baoji_group_name,b.provice,b.city,b.country,b.station_name + FROM db_user.tb_baojigroup g,db_user.tb_baojigroup_power gb,db_station.tb_station_inf b + where g.baoji_group_id = gb.baoji_group_id and gb.station_id = b.station_id + and g.team_flag = 1 + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.1