feat: 结算单/开票申请列表新增金蝶锁状态标识与失败原因提示
This commit is contained in:
@@ -13,6 +13,7 @@ export const invoiceApplicationTableColumns = [
|
|||||||
{ prop: 'currentProcessor', label: '当前处理人', minWidth: 130 },
|
{ prop: 'currentProcessor', label: '当前处理人', minWidth: 130 },
|
||||||
{ prop: 'kingdeeBillNo', label: '金蝶单据号', minWidth: 150 },
|
{ prop: 'kingdeeBillNo', label: '金蝶单据号', minWidth: 150 },
|
||||||
{ prop: 'kingdeeStatusName', label: '金蝶单据状态', minWidth: 140 },
|
{ prop: 'kingdeeStatusName', label: '金蝶单据状态', minWidth: 140 },
|
||||||
|
{ prop: 'kingdeeLockStatus', label: '金蝶锁状态', minWidth: 150 },
|
||||||
{ prop: 'attachmentSyncStatusName', label: '附件同步', minWidth: 100 },
|
{ prop: 'attachmentSyncStatusName', label: '附件同步', minWidth: 100 },
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ export const formalSettlementTableColumns = [
|
|||||||
{ label: '当前处理人', prop: 'currentProcessor', minWidth: 130 },
|
{ label: '当前处理人', prop: 'currentProcessor', minWidth: 130 },
|
||||||
{ label: '金蝶单据号', prop: 'kingdeeBillNo', minWidth: 150 },
|
{ label: '金蝶单据号', prop: 'kingdeeBillNo', minWidth: 150 },
|
||||||
{ label: '金蝶单据状态', prop: 'kingdeeSyncStatus', minWidth: 135 },
|
{ label: '金蝶单据状态', prop: 'kingdeeSyncStatus', minWidth: 135 },
|
||||||
|
{ label: '金蝶锁状态', prop: 'kingdeeLockStatus', minWidth: 150 },
|
||||||
{ label: '附件同步', prop: 'attachmentSyncStatusName', minWidth: 100 },
|
{ label: '附件同步', prop: 'attachmentSyncStatusName', minWidth: 100 },
|
||||||
{ label: '创建人', prop: 'createUserName', minWidth: 110 },
|
{ label: '创建人', prop: 'createUserName', minWidth: 110 },
|
||||||
{ label: '创建时间', prop: 'createTime', minWidth: 170 },
|
{ label: '创建时间', prop: 'createTime', minWidth: 170 },
|
||||||
|
|||||||
@@ -115,6 +115,12 @@
|
|||||||
{{ displayValue(row[column.prop]) }}
|
{{ displayValue(row[column.prop]) }}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<span v-else-if="column.money">{{ formatMoney(row[column.prop]) }}</span>
|
<span v-else-if="column.money">{{ formatMoney(row[column.prop]) }}</span>
|
||||||
|
<template v-else-if="column.prop === 'kingdeeLockStatus'">
|
||||||
|
<el-tooltip v-if="lockTag(row).show" :content="lockTag(row).tip" placement="top">
|
||||||
|
<el-tag :type="lockTag(row).type" class="status-text">{{ lockTag(row).label }}</el-tag>
|
||||||
|
</el-tooltip>
|
||||||
|
<span v-else>-</span>
|
||||||
|
</template>
|
||||||
<span v-else>{{ displayValue(row[column.prop]) }}</span>
|
<span v-else>{{ displayValue(row[column.prop]) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -183,7 +189,9 @@
|
|||||||
>
|
>
|
||||||
<el-link
|
<el-link
|
||||||
v-if="
|
v-if="
|
||||||
hasPermission('invoice_application_void') && row.approvalStatus === 'approved'
|
hasPermission('invoice_application_void') &&
|
||||||
|
row.approvalStatus === 'approved' &&
|
||||||
|
row.kingdeeLockStatus !== 'locked'
|
||||||
"
|
"
|
||||||
type="danger"
|
type="danger"
|
||||||
@click="handleVoid(row)"
|
@click="handleVoid(row)"
|
||||||
@@ -448,6 +456,28 @@ export default {
|
|||||||
''
|
''
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
lockTag(row) {
|
||||||
|
if (row.kingdeeLockStatus === 'locked') {
|
||||||
|
return { show: true, type: 'danger', label: '金蝶锁定中', tip: '该单据已被金蝶锁定,不可编辑/作废' };
|
||||||
|
}
|
||||||
|
if (row.kingdeeLockStatus === 'failed') {
|
||||||
|
if ((row.kingdeeTryCount || 0) >= 5) {
|
||||||
|
return {
|
||||||
|
show: true,
|
||||||
|
type: 'danger',
|
||||||
|
label: '锁定失败·已达上限',
|
||||||
|
tip: row.kingdeeLockFailReason || '自动补偿次数已用完,请重推「同步金蝶」立即补锁',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
show: true,
|
||||||
|
type: 'warning',
|
||||||
|
label: '锁定失败·补偿中',
|
||||||
|
tip: row.kingdeeLockFailReason || '系统将自动补偿重锁',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return { show: false };
|
||||||
|
},
|
||||||
displayValue(value) {
|
displayValue(value) {
|
||||||
return value === null || value === undefined || value === '' ? '-' : value;
|
return value === null || value === undefined || value === '' ? '-' : value;
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -88,6 +88,12 @@
|
|||||||
<span v-else-if="column.prop === 'kingdeeSyncStatus'">{{
|
<span v-else-if="column.prop === 'kingdeeSyncStatus'">{{
|
||||||
kingdeeSyncName(row.kingdeeSyncStatus)
|
kingdeeSyncName(row.kingdeeSyncStatus)
|
||||||
}}</span>
|
}}</span>
|
||||||
|
<template v-else-if="column.prop === 'kingdeeLockStatus'">
|
||||||
|
<el-tooltip v-if="lockTag(row).show" :content="lockTag(row).tip" placement="top">
|
||||||
|
<el-tag :type="lockTag(row).type" class="status-text">{{ lockTag(row).label }}</el-tag>
|
||||||
|
</el-tooltip>
|
||||||
|
<span v-else>-</span>
|
||||||
|
</template>
|
||||||
<span v-else>{{ displayValue(row[column.prop]) }}</span>
|
<span v-else>{{ displayValue(row[column.prop]) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -226,6 +232,28 @@ export default {
|
|||||||
kingdeeSyncName(value) {
|
kingdeeSyncName(value) {
|
||||||
return kingdeeSyncStatusOptions.find(item => item.value === value)?.label || value || '-';
|
return kingdeeSyncStatusOptions.find(item => item.value === value)?.label || value || '-';
|
||||||
},
|
},
|
||||||
|
lockTag(row) {
|
||||||
|
if (row.kingdeeLockStatus === 'locked') {
|
||||||
|
return { show: true, type: 'danger', label: '金蝶锁定中', tip: '该单据已被金蝶锁定,不可编辑/作废' };
|
||||||
|
}
|
||||||
|
if (row.kingdeeLockStatus === 'failed') {
|
||||||
|
if ((row.kingdeeTryCount || 0) >= 5) {
|
||||||
|
return {
|
||||||
|
show: true,
|
||||||
|
type: 'danger',
|
||||||
|
label: '锁定失败·已达上限',
|
||||||
|
tip: row.kingdeeLockFailReason || '自动补偿次数已用完,请重推「同步金蝶」立即补锁',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
show: true,
|
||||||
|
type: 'warning',
|
||||||
|
label: '锁定失败·补偿中',
|
||||||
|
tip: row.kingdeeLockFailReason || '系统将自动补偿重锁',
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return { show: false };
|
||||||
|
},
|
||||||
displayValue(value) {
|
displayValue(value) {
|
||||||
return value === null || value === undefined || value === '' ? '-' : value;
|
return value === null || value === undefined || value === '' ? '-' : value;
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user