Merge branch 'master' into feature/bfi-api-rate
# Conflicts: # src/components/vehicle-attachment-table/main.vue # src/option/payment/paymentApplication.js # src/views/payment/payment-application.vue # src/views/payment/receipt-claim-record.vue # src/views/vehicle/customer-archive.vue
This commit is contained in:
@@ -1384,7 +1384,7 @@ export default {
|
||||
padding: 4px 0 6px;
|
||||
|
||||
:deep(.el-form-item) {
|
||||
margin-bottom: 14px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
:deep(.el-form-item__label) {
|
||||
@@ -1422,7 +1422,7 @@ export default {
|
||||
column-gap: 112px;
|
||||
|
||||
:deep(.el-form-item) {
|
||||
margin-bottom: 14px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
type="warning"
|
||||
v-if="
|
||||
hasPermission('customer_archive_submit') &&
|
||||
['draft', 'reviewing'].includes(row.approvalStatus)
|
||||
row.approvalStatus === 'reviewing'
|
||||
"
|
||||
@click="handleWithdrawApproval(row)"
|
||||
>
|
||||
@@ -166,11 +166,11 @@
|
||||
v-if="
|
||||
mkEnabled &&
|
||||
hasPermission('customer_archive_approve') &&
|
||||
row.approvalStatus === 'reviewing'
|
||||
['reviewing', 'approved'].includes(row.approvalStatus)
|
||||
"
|
||||
@click="handleMkAudit(row)"
|
||||
>
|
||||
审核
|
||||
{{ row.approvalStatus === 'approved' ? '流程' : '审核' }}
|
||||
</el-link>
|
||||
<el-link
|
||||
type="success"
|
||||
@@ -364,13 +364,8 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="经营范围" prop="businessScope" required>
|
||||
<el-select
|
||||
v-model="archiveForm.businessScope"
|
||||
multiple
|
||||
filterable
|
||||
clearable
|
||||
>
|
||||
<el-form-item label="经营范围" prop="businessScope">
|
||||
<el-select v-model="archiveForm.businessScope" multiple filterable clearable>
|
||||
<el-option
|
||||
v-for="item in businessScopeOptions"
|
||||
:key="item.value"
|
||||
@@ -490,9 +485,8 @@
|
||||
v-model="deptCascaderValue"
|
||||
:options="deptTree"
|
||||
:props="deptCascaderProps"
|
||||
clearable
|
||||
filterable
|
||||
placeholder="请选择 所属组织"
|
||||
disabled
|
||||
placeholder="桂物物流集团"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -813,20 +807,23 @@
|
||||
</el-select>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="文件名称" min-width="180" align="left">
|
||||
<el-table-column
|
||||
label="文件名称"
|
||||
min-width="180"
|
||||
align="left"
|
||||
show-overflow-tooltip
|
||||
class-name="is-ellipsis-link"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
<div
|
||||
class="qualification-file-name-cell"
|
||||
:title="row.originalName || row.name || '-'"
|
||||
>
|
||||
<span
|
||||
class="qualification-file-name"
|
||||
:class="{ 'is-disabled': !row.url }"
|
||||
@click="row.url && previewQualificationFile(row)"
|
||||
>
|
||||
{{ row.originalName || row.name || '-' }}
|
||||
</span>
|
||||
</div>
|
||||
<span
|
||||
class="attachment-file-name"
|
||||
:class="{ 'is-disabled': !row.url }"
|
||||
role="button"
|
||||
tabindex="0"
|
||||
@click="row.url && previewQualificationFile(row)"
|
||||
@keydown.enter="row.url && previewQualificationFile(row)"
|
||||
@keydown.space.prevent="row.url && previewQualificationFile(row)"
|
||||
>{{ row.originalName || row.name || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="附件描述" min-width="220">
|
||||
@@ -1470,9 +1467,14 @@
|
||||
</template>
|
||||
<el-table :data="scoreAttachmentFiles" border class="score-material-table">
|
||||
<el-table-column label="序号" type="index" width="90" align="center" />
|
||||
<el-table-column label="文件名" min-width="220">
|
||||
<el-table-column
|
||||
label="文件名"
|
||||
min-width="220"
|
||||
show-overflow-tooltip
|
||||
class-name="is-ellipsis-link"
|
||||
>
|
||||
<template #default="{ row }">
|
||||
{{ row.originalName || row.name || '-' }}
|
||||
<span>{{ row.originalName || row.name || '-' }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="附件描述" min-width="220">
|
||||
@@ -1585,6 +1587,8 @@ import ChangeRecordDetailDialog from '@/components/change-record-detail-dialog/m
|
||||
const customerArchiveListRoute = '/vehicle/customer-archive';
|
||||
const customerArchiveFormRoute = '/vehicle/customer-archive/form';
|
||||
const customerArchiveListRefreshKey = 'customer-archive-list-refresh';
|
||||
/** 客商所属组织固定为顶层组织 */
|
||||
const FIXED_OWNER_DEPT_NAME = '桂物物流集团';
|
||||
|
||||
const createTimeRangeMap = {
|
||||
createTimeRange: ['createTimeStart', 'createTimeEnd'],
|
||||
@@ -1814,15 +1818,6 @@ export default {
|
||||
{ required: true, message: '请输入详细地址', trigger: 'blur' },
|
||||
{ max: 255, message: '详细地址最多255个字符', trigger: 'blur' },
|
||||
],
|
||||
businessScope: [
|
||||
{
|
||||
required: true,
|
||||
type: 'array',
|
||||
min: 1,
|
||||
message: '请选择经营范围',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
remark: [{ max: 500, message: '备注最多500个字符', trigger: 'blur' }],
|
||||
},
|
||||
contactRules: {
|
||||
@@ -3197,17 +3192,34 @@ export default {
|
||||
});
|
||||
return result;
|
||||
},
|
||||
setDefaultTopLevelDept() {
|
||||
const deptIds = Array.isArray(this.archiveForm.deptId)
|
||||
? this.archiveForm.deptId
|
||||
: this.archiveForm.deptId
|
||||
? [this.archiveForm.deptId]
|
||||
: [];
|
||||
const firstTopLevelDept = this.deptTree[0];
|
||||
if (!this.isArchivePage || this.$route.query.id || deptIds.length || !firstTopLevelDept) {
|
||||
findTopLevelDeptByName(name) {
|
||||
const targetName = String(name || '').trim();
|
||||
if (!targetName) {
|
||||
return null;
|
||||
}
|
||||
return (
|
||||
(this.deptTree || []).find(item => {
|
||||
const label = String(item.label || item.title || item.deptName || item.name || '').trim();
|
||||
return label === targetName;
|
||||
}) || null
|
||||
);
|
||||
},
|
||||
/**
|
||||
* 客商所属组织固定为顶层「桂物物流集团」,表单不可编辑。
|
||||
*/
|
||||
applyFixedOwnerDept() {
|
||||
if (!this.isArchivePage || this.readonly) {
|
||||
return;
|
||||
}
|
||||
this.onDeptChange([firstTopLevelDept.value]);
|
||||
const fixedDept =
|
||||
this.findTopLevelDeptByName(FIXED_OWNER_DEPT_NAME) || (this.deptTree || [])[0] || null;
|
||||
if (!fixedDept) {
|
||||
return;
|
||||
}
|
||||
this.onDeptChange([fixedDept.value]);
|
||||
},
|
||||
setDefaultTopLevelDept() {
|
||||
this.applyFixedOwnerDept();
|
||||
},
|
||||
onDeptChange(value) {
|
||||
// 级联单选:value 为根到选中节点的 ID 路径,取末级作为客商所属组织
|
||||
@@ -4258,6 +4270,7 @@ export default {
|
||||
this.ocrQualificationUploadFiles = [];
|
||||
this.selectedQualificationFiles = [];
|
||||
if (this.isPublicViewPage) this.ensurePublicViewOptions(this.archiveForm);
|
||||
this.applyFixedOwnerDept();
|
||||
this.archiveBox = true;
|
||||
this.loadChangeRecords();
|
||||
if (this.reviewMode) this.openReviewScore();
|
||||
@@ -4275,6 +4288,7 @@ export default {
|
||||
this.qualificationUploadFiles = [];
|
||||
this.ocrQualificationUploadFiles = [];
|
||||
this.selectedQualificationFiles = [];
|
||||
this.applyFixedOwnerDept();
|
||||
this.archiveBox = true;
|
||||
},
|
||||
resetArchive() {
|
||||
@@ -4318,6 +4332,8 @@ export default {
|
||||
return true;
|
||||
},
|
||||
normalizeArchive() {
|
||||
// 提交前再次固定所属组织,防止被绕过
|
||||
this.applyFixedOwnerDept();
|
||||
const archive = JSON.parse(JSON.stringify(this.archiveForm));
|
||||
if (archive.businessTermType === '长期') {
|
||||
archive.businessEndDate = null;
|
||||
@@ -5480,40 +5496,6 @@ export default {
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.qualification-file-name-cell {
|
||||
display: block;
|
||||
width: 100%;
|
||||
min-width: 0;
|
||||
overflow: hidden;
|
||||
text-align: left;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.qualification-file-name {
|
||||
display: block;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
vertical-align: middle;
|
||||
white-space: nowrap;
|
||||
cursor: pointer;
|
||||
color: #606266;
|
||||
transition: color 0.2s ease;
|
||||
|
||||
&:hover {
|
||||
color: #409eff;
|
||||
}
|
||||
|
||||
&.is-disabled {
|
||||
cursor: default;
|
||||
color: #606266;
|
||||
|
||||
&:hover {
|
||||
color: #606266;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.qualification-upload-bar {
|
||||
display: flex;
|
||||
@@ -5567,7 +5549,7 @@ export default {
|
||||
padding: 8px 36px 0;
|
||||
|
||||
:deep(.el-form-item) {
|
||||
margin-bottom: 14px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
:deep(.el-form-item__label) {
|
||||
@@ -5695,7 +5677,7 @@ export default {
|
||||
max-width: 620px;
|
||||
|
||||
:deep(.el-form-item) {
|
||||
margin-bottom: 14px;
|
||||
margin-bottom: 24px;
|
||||
}
|
||||
|
||||
:deep(.el-input) {
|
||||
@@ -5911,6 +5893,6 @@ export default {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.el-form-item {
|
||||
margin-bottom: 14px !important;
|
||||
//margin-bottom: 24px !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user