feat: 更新机器人状态接口,移除不接单属性并替换为可接单属性,优化相关组件逻辑
This commit is contained in:
parent
495e153db9
commit
3065abf7dd
@ -25,7 +25,6 @@ export type RobotPen = Pen & {
|
||||
isFault?: boolean;
|
||||
isCharging?: boolean; // 是否充电中
|
||||
isCarrying?: boolean; // 是否载货
|
||||
isNotAcceptingOrders?: boolean; // 是否不接单
|
||||
path?: { x: number; y: number }[];
|
||||
angle?: number;
|
||||
};
|
||||
@ -48,7 +47,6 @@ export interface RobotInfo {
|
||||
isLoading?: 0 | 1; // 载货状态:1载货,0空载(实时数据透传)
|
||||
isCharging?: boolean; // 是否充电中
|
||||
isCarrying?: boolean; // 是否载货
|
||||
isNotAcceptingOrders?: boolean; // 是否不接单
|
||||
}
|
||||
|
||||
export interface RobotDetail extends RobotInfo {
|
||||
@ -72,7 +70,6 @@ export interface RobotRealtimeInfo extends RobotInfo {
|
||||
isFault?: boolean; // 是否故障
|
||||
isCharging?: boolean; // 是否充电中
|
||||
isCarrying?: boolean; // 是否载货
|
||||
isNotAcceptingOrders?: boolean; // 是否不接单
|
||||
}
|
||||
|
||||
// AMR Redis状态接口 - 更新为实际返回的数据结构
|
||||
|
@ -18,7 +18,7 @@
|
||||
</div>
|
||||
<div class="robot-extra-statuses">
|
||||
<span v-if="robotInfo.isCarrying" class="extra-status-tag">载货中</span>
|
||||
<span v-if="robotInfo.isNotAcceptingOrders" class="extra-status-tag">不接单</span>
|
||||
<span v-if="!robotInfo.canOrder" class="extra-status-tag">不接单</span>
|
||||
<span v-if="robotInfo.isCharging" class="extra-status-tag">充电中</span>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -153,7 +153,7 @@ const monitorScene = async () => {
|
||||
isFault,
|
||||
isCharging = 0,
|
||||
isCarrying = 0,
|
||||
isNotAcceptingOrders = 1,
|
||||
canOrder,
|
||||
...rest
|
||||
} = data;
|
||||
|
||||
@ -162,7 +162,7 @@ const monitorScene = async () => {
|
||||
...rest,
|
||||
isCharging: isCharging as any,
|
||||
isCarrying: isCarrying as any,
|
||||
isNotAcceptingOrders: isNotAcceptingOrders as any,
|
||||
canOrder: canOrder as any,
|
||||
});
|
||||
|
||||
// 2. 准备图元(pen)的更新负载对象,将多个更新合并
|
||||
@ -184,7 +184,7 @@ const monitorScene = async () => {
|
||||
if (isFault !== undefined) robotState.isFault = isFault;
|
||||
if (isCharging !== undefined) robotState.isCharging = isCharging;
|
||||
if (isCarrying !== undefined) robotState.isCarrying = isCarrying;
|
||||
if (isNotAcceptingOrders !== undefined) robotState.isNotAcceptingOrders = isNotAcceptingOrders;
|
||||
if (canOrder !== undefined) robotState.canOrder = canOrder;
|
||||
|
||||
// 将合并后的状态赋给 payload
|
||||
if (Object.keys(robotState).length > 0) {
|
||||
|
@ -1337,11 +1337,11 @@ export class EditorService extends Meta2d {
|
||||
const r2 = this.getRobotById(pen.id || '');
|
||||
const toBool = (v: any) => v === true || v === 1 || v === '1';
|
||||
const isCarrying = toBool(r1?.isCarrying ?? r2?.isCarrying);
|
||||
const isNotAcceptingOrders = toBool(r1?.isNotAcceptingOrders ?? r2?.isNotAcceptingOrders);
|
||||
const canOrder = toBool(r1?.canOrder ?? r2?.canOrder);
|
||||
const isCharging = toBool(r1?.isCharging ?? r2?.isCharging);
|
||||
|
||||
if (isCarrying) return cargoIcon;
|
||||
if (isNotAcceptingOrders) return notAcceptingOrdersIcon;
|
||||
if (!canOrder) return notAcceptingOrdersIcon;
|
||||
if (isCharging) return chargingIcon;
|
||||
return null;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user