From 56b77d83f04af8874e2e3864065f8c975b999cbe Mon Sep 17 00:00:00 2001 From: syruan <321359594@qq.com> Date: Fri, 20 Sep 2024 14:20:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E7=A8=8B=E7=8F=AD=E7=BB=84=E4=BA=BA?= =?UTF-8?q?=E5=91=98=E6=8E=A5=E5=8F=A3--=E5=A4=A7=E5=B1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/base/mapper/TbTeamMapper.java | 9 +++++ .../controller/ProjectViewController.java | 5 +++ .../service/impl/ProjectViewServiceImpl.java | 33 ++++++++++++++++--- .../com/bonus/screen/vo/TeamJoinPersonVo.java | 25 ++++++++++++++ .../resources/mapper/base/TbTeamMapper.xml | 15 +++++++++ 5 files changed, 83 insertions(+), 4 deletions(-) create mode 100644 bonus-modules/bonus-base/src/main/java/com/bonus/screen/vo/TeamJoinPersonVo.java diff --git a/bonus-modules/bonus-base/src/main/java/com/bonus/base/mapper/TbTeamMapper.java b/bonus-modules/bonus-base/src/main/java/com/bonus/base/mapper/TbTeamMapper.java index c285198..7f717d7 100644 --- a/bonus-modules/bonus-base/src/main/java/com/bonus/base/mapper/TbTeamMapper.java +++ b/bonus-modules/bonus-base/src/main/java/com/bonus/base/mapper/TbTeamMapper.java @@ -3,6 +3,8 @@ package com.bonus.base.mapper; import com.bonus.base.domain.TbPeople; import com.bonus.base.domain.TbTeam; import com.bonus.base.vo.TbDeviceVo; +import com.bonus.screen.vo.TeamJoinPersonVo; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -12,6 +14,7 @@ import java.util.List; * @author makejava * @since 2024-09-10 09:46:25 */ +@Mapper public interface TbTeamMapper { /** @@ -122,5 +125,11 @@ public interface TbTeamMapper { * @return */ TbTeam selectByName(TbTeam tbTeam); + + /** + * 根据工程id查询班组人员 + * @param proId 工程id + */ + List getTeamJoinPersonListByProId(@Param("proId") Integer proId); } diff --git a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/controller/ProjectViewController.java b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/controller/ProjectViewController.java index 80e1c93..09cfac0 100644 --- a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/controller/ProjectViewController.java +++ b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/controller/ProjectViewController.java @@ -77,6 +77,11 @@ public class ProjectViewController extends BaseController { return success(projectViewService.getAreaList()); } + @GetMapping("/getTeamPersonListByProId") + public AjaxResult getTeamPersonListByProId(Integer proId) { + return projectViewService.getTeamJoinPersonListByProId(proId); + } + } diff --git a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectViewServiceImpl.java b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectViewServiceImpl.java index 9559637..800db3a 100644 --- a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectViewServiceImpl.java +++ b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/service/impl/ProjectViewServiceImpl.java @@ -5,15 +5,15 @@ import com.bonus.base.config.ProjectTypeEnum; import com.bonus.base.mapper.TbDeviceMapper; import com.bonus.base.mapper.TbProDepartMapper; import com.bonus.base.mapper.TbProjectMapper; +import com.bonus.base.mapper.TbTeamMapper; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.screen.mapper.TbDeviceDataRecord; -import com.bonus.screen.vo.DeviceViewVo; -import com.bonus.screen.vo.DeviceWarnRecordVo; -import com.bonus.screen.vo.ProjectAreaGroupVo; -import com.bonus.screen.vo.ProjectViewVo; +import com.bonus.screen.vo.*; +import org.apache.ibatis.annotations.Param; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -37,6 +37,9 @@ public class ProjectViewServiceImpl { @Autowired private TbProDepartMapper tbProDepartMapper; + @Autowired + private TbTeamMapper tbTeamMapper; + public ProjectViewVo getProjectView() { return tbProjectMapper.getProjectView( ProjectTypeEnum.PROJECT_TYPE_POWER.getCode(), @@ -101,4 +104,26 @@ public class ProjectViewServiceImpl { public List getDeviceModelDetailsPage(Integer code) { return tbDeviceMapper.getDeviceModelDetailsPage(code); } + + + public AjaxResult getTeamJoinPersonListByProId(Integer proId){ + List teamPersonList = tbTeamMapper.getTeamJoinPersonListByProId(proId); + + // 定义去重集合 + Map> teamMap = new HashMap<>(); + + // 循环,把数据分组 + for (TeamJoinPersonVo vo : teamPersonList) { + // 判断是否已存在 + if (teamMap.containsKey(vo.getTeamId())) { + teamMap.get(vo.getTeamId()).add(vo); + } else { + List list = new java.util.ArrayList<>(); + list.add(vo); + teamMap.put(vo.getTeamId(), list); + } + } + + return AjaxResult.success(teamMap); + } } diff --git a/bonus-modules/bonus-base/src/main/java/com/bonus/screen/vo/TeamJoinPersonVo.java b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/vo/TeamJoinPersonVo.java new file mode 100644 index 0000000..8b5fc27 --- /dev/null +++ b/bonus-modules/bonus-base/src/main/java/com/bonus/screen/vo/TeamJoinPersonVo.java @@ -0,0 +1,25 @@ +package com.bonus.screen.vo; + +import lombok.Data; + +/** + * @author : 阮世耀 + * @version : 1.0 + * @PackagePath: com.bonus.screen.vo + * @CreateTime: 2024-09-20 13:38 + * @Description: 班组人员关联数据 + */ +@Data +public class TeamJoinPersonVo { + + private Integer teamId; + + private String teamName; + + private Integer peopleId; + + private String peopleName; + + private String peoplePhone; + +} diff --git a/bonus-modules/bonus-base/src/main/resources/mapper/base/TbTeamMapper.xml b/bonus-modules/bonus-base/src/main/resources/mapper/base/TbTeamMapper.xml index 4fe9198..bb0050d 100644 --- a/bonus-modules/bonus-base/src/main/resources/mapper/base/TbTeamMapper.xml +++ b/bonus-modules/bonus-base/src/main/resources/mapper/base/TbTeamMapper.xml @@ -230,5 +230,20 @@ WHERE id = #{id} +