From ea374d131a2f79658afe62a8fbcd3984b9a26dad Mon Sep 17 00:00:00 2001 From: lzh Date: Mon, 13 Apr 2026 23:18:30 +0800 Subject: [PATCH] =?UTF-8?q?feat(ops):=20=E5=B7=A5=E7=89=8C=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E8=BF=94=E5=9B=9E=E6=98=B5=E7=A7=B0=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=EF=BC=8C=E6=89=8B=E5=8A=A8=E6=B4=BE=E5=8D=95=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E4=BC=A0=E5=85=A5=E8=AE=BE=E5=A4=87=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - BadgeStatusRespDTO 新增 nickname 字段,透传设备昵称 - CleanManualDispatchReqDTO 新增 assigneeName,派单时携带设备显示名 - CleanWorkOrderServiceImpl 将 assigneeName 传递给派单引擎 Co-Authored-By: Claude Opus 4.6 (1M context) --- .../ops/environment/service/badge/CleanBadgeServiceImpl.java | 1 + .../service/cleanorder/CleanWorkOrderServiceImpl.java | 1 + .../service/cleanorder/dto/CleanManualDispatchReqDTO.java | 5 +++++ .../com/viewsh/module/ops/api/clean/BadgeStatusRespDTO.java | 3 +++ 4 files changed, 10 insertions(+) diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/badge/CleanBadgeServiceImpl.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/badge/CleanBadgeServiceImpl.java index 5ef2481..3ad3253 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/badge/CleanBadgeServiceImpl.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/badge/CleanBadgeServiceImpl.java @@ -275,6 +275,7 @@ public class CleanBadgeServiceImpl implements CleanBadgeService { return BadgeStatusRespDTO.builder() .deviceId(status.getDeviceId()) .deviceKey(status.getDeviceCode()) + .nickname(status.getNickname()) .status(status.getStatusCode()) .batteryLevel(status.getBatteryLevel()) .lastHeartbeatTime(formatTimestamp(status.getLastHeartbeatTime())) diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/CleanWorkOrderServiceImpl.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/CleanWorkOrderServiceImpl.java index fd8e3d7..5f7557e 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/CleanWorkOrderServiceImpl.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/CleanWorkOrderServiceImpl.java @@ -347,6 +347,7 @@ public class CleanWorkOrderServiceImpl implements CleanWorkOrderService { .orderId(req.getOrderId()) .operator(OperatorContext.ofAdmin(req.getOperatorId(), resolveUserName(req.getOperatorId()))) .assigneeId(req.getAssigneeId()) + .assigneeName(req.getAssigneeName()) .reason(req.getRemark()) .build()); } diff --git a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/dto/CleanManualDispatchReqDTO.java b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/dto/CleanManualDispatchReqDTO.java index ca5f3fa..902daf3 100644 --- a/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/dto/CleanManualDispatchReqDTO.java +++ b/viewsh-module-ops/viewsh-module-environment-biz/src/main/java/com/viewsh/module/ops/environment/service/cleanorder/dto/CleanManualDispatchReqDTO.java @@ -2,6 +2,7 @@ package com.viewsh.module.ops.environment.service.cleanorder.dto; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; +import jakarta.validation.constraints.Size; import lombok.Data; /** @@ -21,6 +22,10 @@ public class CleanManualDispatchReqDTO { @NotNull(message = "目标设备ID不能为空") private Long assigneeId; + @Schema(description = "目标设备名称(昵称或设备编码)", example = "男卫-01") + @Size(max = 100, message = "设备名称不能超过100字符") + private String assigneeName; + @Schema(description = "派单备注", example = "紧急情况,指定该设备处理") private String remark; diff --git a/viewsh-module-ops/viewsh-module-ops-api/src/main/java/com/viewsh/module/ops/api/clean/BadgeStatusRespDTO.java b/viewsh-module-ops/viewsh-module-ops-api/src/main/java/com/viewsh/module/ops/api/clean/BadgeStatusRespDTO.java index d488452..dd1da95 100644 --- a/viewsh-module-ops/viewsh-module-ops-api/src/main/java/com/viewsh/module/ops/api/clean/BadgeStatusRespDTO.java +++ b/viewsh-module-ops/viewsh-module-ops-api/src/main/java/com/viewsh/module/ops/api/clean/BadgeStatusRespDTO.java @@ -26,6 +26,9 @@ public class BadgeStatusRespDTO { @Schema(description = "设备编码", example = "badge_001") private String deviceKey; + @Schema(description = "设备昵称(用户可读的显示名称)", example = "张三的工牌") + private String nickname; + @Schema(description = "状态(IDLE/BUSY/OFFLINE/PAUSED)", example = "IDLE") private String status;