Commit e52fc160 authored by wanghao's avatar wanghao

1 托盘解绑调整

parent be4cf4ce
......@@ -57,7 +57,7 @@
:class="{
'active': activeCell === index,
'empty': !device.deviceCode,
'error': isDeviceError(device), // 使用新的判断方法
'error': isDeviceError(device),
'duplicate': device.isDuplicate
}"
@click="setActiveCell(index)"
......@@ -65,7 +65,7 @@
<div class="device-id">
{{ device.deviceCode || '+' }}
<!-- 添加错误状态图标 -->
<i v-if="device.deviceCode && device.status === '0'" class="error-icon fas fa-exclamation-circle"></i>
<i v-if="isDeviceError(device)" class="error-icon fas fa-exclamation-circle"></i>
<!-- 添加重复状态图标 -->
<i v-if="device.isDuplicate" class="duplicate-icon fas fa-exclamation-triangle"></i>
</div>
......@@ -186,7 +186,6 @@ export default {
const col = (i % 9) + 1; // 1-9列
let number;
// 计算属于第几段(0,1,2)
const segment = Math.floor((row - 1) / 3); // 0:1-3行, 1:4-6行, 2:7-8行
......@@ -291,6 +290,7 @@ export default {
return device.status === '0' || device.status === '5';
}
},
getAllBindingData(trayId) {
this.devices = [];
getAllExcludeUnbindingTimeByTrayId(trayId).then(res => {
......@@ -302,13 +302,7 @@ export default {
// 计算初始异常设备数量(标定完成状态)
if (this.trayStatus === '3') {
this.abnormalCount = this.devices.filter(
d => d.deviceCode && (d.status !== '1'
|| d.realTimeStatus === '0'
|| d.calibrationConcentrationStatus !== '4'
|| d.writeTimeStatus === '0'
|| d.runTimeStatus === '0')
).length;
this.abnormalCount = this.devices.filter(d => this.isDeviceError(d)).length;
this.initialAbnormalCount = this.abnormalCount;
}
......@@ -403,8 +397,8 @@ export default {
);
if (deviceIndex !== -1) {
// 找到设备,确认解绑
this.confirmUnbind(deviceIndex);
// 找到设备,直接解绑(不弹确认对话框)
this.executeUnbind(deviceIndex);
} else {
// 设备不存在提示
this.$message.warning(`设备 ${this.deviceInput} 不存在或未绑定`);
......@@ -497,23 +491,7 @@ export default {
});
},
// 确认解绑设备
confirmUnbind(deviceIndex) {
const device = this.devices[deviceIndex];
this.$confirm(`确认解绑设备 ${device.deviceCode} 吗?`, '解绑确认', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// 用户确认解绑
this.executeUnbind(deviceIndex);
}).catch(() => {
// 用户取消解绑
this.$message.info('已取消解绑操作');
});
},
// 执行解绑操作
// 执行解绑操作(不再需要确认对话框)
executeUnbind(deviceIndex) {
const device = this.devices[deviceIndex];
......@@ -525,6 +503,8 @@ export default {
unbindSingleDevice(palletDeviceBinding).then(res => {
if (res.code === 200) {
// 解绑成功后的处理
const wasErrorDevice = this.isDeviceError(this.devices[deviceIndex]);
this.devices[deviceIndex].deviceCode = '';
// 清除重复标记
......@@ -533,8 +513,8 @@ export default {
// 重新检查重复状态
this.checkDuplicateDevices();
// 如果是异常设备,减少异常计数
if (this.devices[deviceIndex].status === '0' || this.devices[deviceIndex].status === '5') {
// 如果是异常设备,减少异常计数(使用完整的异常判断逻辑)
if (wasErrorDevice) {
this.abnormalCount--;
}
......@@ -653,7 +633,6 @@ export default {
},
};
</script>
<style scoped>
/* 添加托盘信息容器样式 */
.tray-info {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment