From f7d597edcedc8a9ed3241c529491bbb70a12eda4 Mon Sep 17 00:00:00 2001 From: syruan <321359594@qq.com> Date: Fri, 20 Sep 2024 18:07:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B1=8F=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ProjectViewController.java | 22 +++++++--- .../service/impl/ProjectViewServiceImpl.java | 43 ++++++++++++------- .../com/bonus/screen/vo/TeamJoinPersonVo.java | 5 +++ 3 files changed, 49 insertions(+), 21 deletions(-) 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 09cfac0..842072e 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 @@ -1,18 +1,15 @@ package com.bonus.screen.controller; -import com.bonus.base.config.ProjectTypeEnum; import com.bonus.base.service.TbUserPostService; import com.bonus.common.core.web.controller.BaseController; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.core.web.page.TableDataInfo; +import com.bonus.screen.domain.ScreenDeskConfig; +import com.bonus.screen.service.ScreenDeskConfigService; import com.bonus.screen.service.impl.ProjectViewServiceImpl; import com.bonus.screen.vo.DeviceWarnRecordVo; -import com.bonus.screen.vo.ProjectViewVo; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.List; @@ -32,6 +29,19 @@ public class ProjectViewController extends BaseController { @Resource private TbUserPostService tbUserPostService; + @Resource + private ScreenDeskConfigService screenDeskConfigService; + + + @GetMapping("/getDeskConfigList") + public AjaxResult getDeskConfigList() { + return success(screenDeskConfigService.getAll()); + } + + @PostMapping("/setDeskConfig") + public AjaxResult setDeskConfig(@RequestBody List list) { + return success(screenDeskConfigService.insertList(list)); + } @GetMapping("/getProjectModelData") public AjaxResult getProjectModelData() { 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 800db3a..aecad18 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 @@ -9,13 +9,13 @@ 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.*; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; 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.*; import java.util.stream.Collectors; /** @@ -108,22 +108,35 @@ public class ProjectViewServiceImpl { public AjaxResult getTeamJoinPersonListByProId(Integer proId){ List teamPersonList = tbTeamMapper.getTeamJoinPersonListByProId(proId); + List teamList = new ArrayList<>(); - // 定义去重集合 - Map> teamMap = new HashMap<>(); - - // 循环,把数据分组 - for (TeamJoinPersonVo vo : teamPersonList) { - // 判断是否已存在 - if (teamMap.containsKey(vo.getTeamId())) { - teamMap.get(vo.getTeamId()).add(vo); + for (TeamJoinPersonVo teamJoinPersonVo : teamPersonList) { + // 查找是否已有此班组 + TeamJoinPersonVo isExist = findTeamById(teamList, teamJoinPersonVo.getTeamId()); + // NEW一个 TeamJoinPersonVo 对象 + TeamJoinPersonVo thisVo = new TeamJoinPersonVo(); + // 没有则覆盖 + if (isExist == null) { + thisVo.setTeamId(teamJoinPersonVo.getTeamId()); + thisVo.setTeamName(teamJoinPersonVo.getTeamName()); + thisVo.getPeopleList().add(teamJoinPersonVo); + teamList.add(thisVo); } else { - List list = new java.util.ArrayList<>(); - list.add(vo); - teamMap.put(vo.getTeamId(), list); + // 有的话找到对应的对象并添加进去 + isExist.getPeopleList().add(teamJoinPersonVo); } } - return AjaxResult.success(teamMap); + return AjaxResult.success(teamList); + } + + + private static TeamJoinPersonVo findTeamById(List teams, int teamId) { + for (TeamJoinPersonVo team : teams) { + if (team.getTeamId() == teamId) { + return team; + } + } + return null; // 如果未找到,返回 null } } 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 index 8b5fc27..e12690f 100644 --- 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 @@ -2,6 +2,9 @@ package com.bonus.screen.vo; import lombok.Data; +import java.util.ArrayList; +import java.util.List; + /** * @author : 阮世耀 * @version : 1.0 @@ -22,4 +25,6 @@ public class TeamJoinPersonVo { private String peoplePhone; + private List peopleList = new ArrayList<>(); + }