From 56f46c457043e018c816e99e84141b7b40a1f16c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=96=B9=E4=BA=AE?= Date: Mon, 1 Dec 2025 18:11:01 +0800 Subject: [PATCH] =?UTF-8?q?=E8=80=83=E5=8B=A4=E6=9C=BA=E4=B8=8B=E5=8F=91?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/bonus/bmw/domain/vo/KqCmdBean.java | 10 +- .../com/bonus/bmw/domain/vo/TreeNode.java | 13 +++ .../bmw/service/impl/KqCmdServiceImpl.java | 70 ++++++++------ .../resources/mapper/bmw/KqCmdTaskMapper.xml | 92 +++++++++---------- 4 files changed, 107 insertions(+), 78 deletions(-) diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/KqCmdBean.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/KqCmdBean.java index 9c84b6b..e6b95af 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/KqCmdBean.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/KqCmdBean.java @@ -61,14 +61,22 @@ public class KqCmdBean { private String teamName; private String workerId; + + private String[] workerIds; private String workerName; private String phone; private String createTime; - public KqCmdBean(String deviceCode, String subName, String teamName) { + public KqCmdBean() { + } + + public KqCmdBean(String deviceCode, String subName, String teamName,Integer proId, Integer subId, Integer teamId) { this.deviceCode = deviceCode; this.subName = subName; this.teamName = teamName; + this.proId = proId; + this.subId = subId; + this.teamId = teamId; } } diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/TreeNode.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/TreeNode.java index 2d303db..f3e72a9 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/TreeNode.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/TreeNode.java @@ -12,6 +12,9 @@ public class TreeNode { private String id; private String name; private String type; + private Integer proId; + private Integer subId; + private Integer teamId; private List children; public TreeNode(String id, String name, String type) { @@ -21,5 +24,15 @@ public class TreeNode { this.children = new ArrayList<>(); } + public TreeNode(String id, String name, String type,Integer proId, Integer subId, Integer teamId) { + this.id = id; + this.name = name; + this.type = type; + this.proId = proId; + this.subId = subId; + this.teamId = teamId; + this.children = new ArrayList<>(); + } + public void addChild(TreeNode child) { this.children.add(child); } } diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/KqCmdServiceImpl.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/KqCmdServiceImpl.java index d90b1e0..5b18bb5 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/KqCmdServiceImpl.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/KqCmdServiceImpl.java @@ -4,15 +4,12 @@ import com.bonus.bmw.domain.vo.KqCmdBean; import com.bonus.bmw.domain.vo.TreeNode; import com.bonus.bmw.mapper.KqCmdMapper; import com.bonus.bmw.service.KqCmdService; -import com.bonus.common.core.utils.StringUtils; import com.bonus.common.core.web.domain.AjaxResult; +import org.jetbrains.annotations.NotNull; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; @Service public class KqCmdServiceImpl implements KqCmdService { @@ -34,8 +31,12 @@ public class KqCmdServiceImpl implements KqCmdService { @Override public AjaxResult refreshDevice(KqCmdBean o) { -// urkSendServiceImpl.refreshDevice(o.getDeviceCode(),o.getProId(),o.getSupId(),o.getTeamId()); - return null; + try { + urkSendServiceImpl.getDevUserList(o.getDeviceCode()); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); } @Override @@ -47,8 +48,12 @@ public class KqCmdServiceImpl implements KqCmdService { @Override public AjaxResult restartDevice(KqCmdBean o) { - // urkSendServiceImpl.refreshDevice(o.getDeviceCode(),o.getProId(),o.getSupId(),o.getTeamId()); - return null; + try { + urkSendServiceImpl.reloadDevice(o.getDeviceCode()); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); } @Override @@ -60,16 +65,23 @@ public class KqCmdServiceImpl implements KqCmdService { @Override public AjaxResult pushWorkerByDevice(KqCmdBean o) { //先删除在下发 - //deviceCode,workerId(可以多个),pro_id - // urkSendServiceImpl.refreshDevice(o.getDeviceCode(),o.getProId(),o.getSupId(),o.getTeamId()); - return null; + try { + urkSendServiceImpl.delDevUser(o.getDeviceCode(), Arrays.asList(o.getWorkerIds())); + urkSendServiceImpl.addUserList(o.getDeviceCode(), Arrays.asList(o.getWorkerIds())); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); } @Override public AjaxResult delWorkerByDevice(KqCmdBean o) { - //deviceCode,workerId(可以多个),pro_id - // urkSendServiceImpl.refreshDevice(o.getDeviceCode(),o.getProId(),o.getSupId(),o.getTeamId()); - return null; + try { + urkSendServiceImpl.delDevUser(o.getDeviceCode(), Arrays.asList(o.getWorkerIds())); + } catch (Exception e) { + throw new RuntimeException(e); + } + return AjaxResult.success(); } @Override @@ -89,10 +101,7 @@ public class KqCmdServiceImpl implements KqCmdService { // 遍历数据,建立映射关系 for (KqCmdBean item : data) { String proName = item.getProName(); - String deviceCode = item.getDeviceCode(); - String subName = item.getSubName(); - String teamName = item.getTeamName(); - proToDeviceMap.computeIfAbsent(proName, k -> new ArrayList<>()).add(new KqCmdBean(deviceCode, subName, teamName)); + proToDeviceMap.computeIfAbsent(proName, k -> new ArrayList<>()).add(new KqCmdBean(item.getDeviceCode(), item.getSubName(), item.getTeamName(), item.getProId(), item.getSubId(), item.getTeamId())); } // 构建树形结构 List result = new ArrayList<>(); @@ -103,15 +112,7 @@ public class KqCmdServiceImpl implements KqCmdService { TreeNode projectNode = new TreeNode(proName, "工程-" + proName, "project"); // 为每个设备码创建子节点 for (KqCmdBean bean : deviceCodes) { - String deviceCode = bean.getDeviceCode(); - String deviceName = "设备-" + deviceCode; - if(StringUtils.isNotEmpty(bean.getSubName())){ - deviceName += "|分包-" + bean.getSubName(); - if(StringUtils.isNotEmpty(bean.getTeamName())){ - deviceName += "|班组-" + bean.getTeamName(); - } - } - TreeNode deviceNode = new TreeNode(deviceCode, deviceName, "device"); + TreeNode deviceNode = getTreeNode(bean); projectNode.addChild(deviceNode); } result.add(projectNode); @@ -119,4 +120,17 @@ public class KqCmdServiceImpl implements KqCmdService { return result; } + @NotNull + private static TreeNode getTreeNode(KqCmdBean bean) { + String deviceCode = bean.getDeviceCode(); + String deviceName = "设备-" + deviceCode; + if(bean.getSubId()!= null && bean.getSubId() !=0){ + deviceName += "|分包-" + bean.getSubName(); + if(bean.getTeamId()!= null && bean.getTeamId() !=0){ + deviceName += "|班组-" + bean.getTeamName(); + } + } + return new TreeNode(deviceCode, deviceName, "device", bean.getProId(), bean.getSubId(), bean.getTeamId()); + } + } diff --git a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/KqCmdTaskMapper.xml b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/KqCmdTaskMapper.xml index 6115bba..ac3553a 100644 --- a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/KqCmdTaskMapper.xml +++ b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/KqCmdTaskMapper.xml @@ -1,63 +1,57 @@ - - - - - - - - - - - - - - - - + select + user_id as worker_id, + user_name as worker_name, + user_phone as phone, + dev_code as device_code + from kq_user_list + where dev_code = #{deviceCode} - + select bwem.worker_id, pw.name as workerName, bwem.pro_id - from bm_worker_ein_msg bwem - left join pm_worker pw on pw.id = bwem.worker_id - where pro_id = #{proId} - - and team_id = #{teamId} - - - and sub_id = #{subId} - - + from bm_worker_ein_msg bwem + left join pm_worker pw on pw.id = bwem.worker_id + where pro_id = #{proId} + + and team_id = #{teamId} + + + and sub_id = #{subId} + + - select - cmd_code, - cmd_param, - trans_status, - create_time, - msg + cmd_code, + cmd_param, + trans_status, + create_time, + msg from kq_cmd_task where device_code = #{deviceCode} - + + +