This commit is contained in:
张成
2025-11-26 20:48:42 +08:00
parent 4db078c80a
commit e3d335f0dd
5 changed files with 96 additions and 21 deletions

View File

@@ -25,6 +25,15 @@ class PlaAccountServer {
return window.framework.http.post('/account/detail', { id })
}
/**
* 通过设备SN码获取账号信息
* @param {String} sn_code - 设备SN码
* @returns {Promise}
*/
getBySnCode(sn_code) {
return window.framework.http.post('/account/getBySnCode', { sn_code })
}
/**
* 新增账号
* @param {Object} row - 账号数据

View File

@@ -20,7 +20,7 @@
</Card>
<!-- 账户信息卡片 -->
<Card v-if="accountInfo.id" style="margin-bottom: 16px;" class="account-info-card">
<Card v-if="accountInfo && (accountInfo.id || accountInfo.sn_code)" style="margin-bottom: 16px;" class="account-info-card">
<div slot="title" style="display: flex; align-items: center; justify-content: space-between;">
<span>账户信息</span>
<Button type="primary" size="small" @click="viewAccountDetail">查看详情</Button>
@@ -718,26 +718,21 @@ export default {
try {
console.log('加载账户信息设备SN:', this.selectedDeviceSn)
// 根据 sn_code 查询账户信息
const res = await PlaAccountServer.page({
seachOption: {
key: 'sn_code',
value: this.selectedDeviceSn
},
pageOption: {
page: 1,
pageSize: 1
}
})
// 通过 sn_code 直接获取账户信息
const res = await PlaAccountServer.getBySnCode(this.selectedDeviceSn)
console.log('账户信息接口返回:', res)
// 支持多种数据格式
const accountList = res.data?.rows || res.data?.list || res.data?.data || []
if (accountList.length > 0) {
const accountData = accountList[0]
console.log('找到账户信息:', accountData)
if (res.code === 0 && res.data) {
const accountData = res.data
console.log('找到账户信息原始数据:', accountData)
// 确保 id 字段存在,支持多种字段名
if (!accountData.id) {
accountData.id = accountData.account_id || accountData.accountId || accountData.ID || null
}
console.log('账户ID:', accountData.id)
// 如果接口没有返回设备状态,则单独查询
if (accountData.is_online === undefined || accountData.is_logged_in === undefined) {
@@ -766,8 +761,10 @@ export default {
this.accountInfo = accountData
console.log('设置账户信息:', this.accountInfo)
console.log('accountInfo.id 值:', this.accountInfo.id)
console.log('v-if 判断结果:', !!this.accountInfo.id)
} else {
console.warn('未找到账户信息设备SN:', this.selectedDeviceSn)
console.warn('未找到账户信息设备SN:', this.selectedDeviceSn, '响应:', res)
this.accountInfo = {}
}
} catch (error) {
@@ -778,7 +775,7 @@ export default {
// 处理开关变化
async handleSwitchChange(field, value) {
if (!this.accountInfo.id) {
if (!this.accountInfo || !this.accountInfo.id) {
this.$Message.warning('账户信息不存在')
return
}