🔀 合并 origin/master 到 dev

# Conflicts:
#	src/views/business/components/business-crud-page.vue
This commit is contained in:
2026-10-19 19:06:34 +08:00
65 changed files with 3198 additions and 930 deletions
@@ -1266,9 +1266,27 @@ const fillEditForm = async row => {
if (carrierValue) carrierChange(carrierValue);
await loadBatchRows(snapshot.id);
};
const removeBatches = () =>
api.removeImportBatches(selected.value.map(item => item.id).join(',')).then(loadBatches);
const removeBatch = row => api.removeImportBatches(row.id).then(loadBatches);
/** 与行操作一致:仅草稿可删除 */
const canRemoveBatch = row => String(row?.importStatus || '') === 'draft';
const removeBatches = () => {
if (!selected.value.length) {
ElMessage.warning('请选择至少一条数据');
return;
}
// 选中含不可删条目时整批拦截(含已完成/进行中),不静默跳过
if (selected.value.some(row => !canRemoveBatch(row))) {
ElMessage.warning('已完成运单不可删除');
return;
}
return api.removeImportBatches(selected.value.map(item => item.id).join(',')).then(loadBatches);
};
const removeBatch = row => {
if (!canRemoveBatch(row)) {
ElMessage.warning('已完成运单不可删除');
return;
}
return api.removeImportBatches(row.id).then(loadBatches);
};
const projectChange = async id => {
const requestId = ++projectRequestId;
const item = projects.value.find(row => String(row.id) === String(id));