调整 合同、运力、客商、项目
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
<template>
|
||||
<basic-container :class="['contract-manage-page', { 'contract-manage-page--form': isFormPage }]">
|
||||
<template v-if="!isFormPage">
|
||||
<basic-container
|
||||
:class="['contract-manage-page', { 'contract-manage-page--form': isFormPage || isDetailPage }]"
|
||||
>
|
||||
<template v-if="isListPage">
|
||||
<avue-crud
|
||||
ref="crud"
|
||||
v-model:page="page"
|
||||
@@ -102,6 +104,251 @@
|
||||
/>
|
||||
</template>
|
||||
|
||||
<template v-else-if="isDetailPage">
|
||||
<div class="archive-page-form__title">{{ detailPageTitle }}</div>
|
||||
<div v-loading="detailLoading" class="contract-manage-form contract-manage-detail">
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">基本信息</div>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="签约类型">{{
|
||||
detailValue('signType')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同编号">{{
|
||||
detailValue('contractNo')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同名称">{{
|
||||
detailValue('contractName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同类型">{{
|
||||
detailValue('contractCategory')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="项目">{{
|
||||
detailValue('projectName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="甲方">{{ detailValue('partyA') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="乙方">{{ detailValue('partyB') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同期限">{{ detailContractPeriod }}</el-descriptions-item>
|
||||
<el-descriptions-item label="所属组织">{{
|
||||
detailValue('organizationName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="经办人">{{
|
||||
detailValue('handlerUserName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="归档状态">{{
|
||||
detailRow.archiveStatus || '未归档'
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="签订日期">{{
|
||||
detailValue('signDate')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同格式">{{
|
||||
detailValue('contractFormat')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否需要加盖法人章">{{
|
||||
detailLegalSealText
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="一式">{{
|
||||
detailUnitValue('copyCount', '份')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算币种">{{
|
||||
detailDictionaryValue('settlementCurrency', settlementCurrencyOptions)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算方式">{{
|
||||
detailDictionaryValue('settlementMode', settlementModeOptions)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="开票周期">{{
|
||||
detailUnitValue('invoiceCycle', '天')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="回款账期">{{
|
||||
detailUnitValue('paymentDays', '天')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同金额">{{
|
||||
detailValue('contractAmount')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否范本">{{ detailTemplateText }}</el-descriptions-item>
|
||||
<el-descriptions-item label="原件合同编号">{{
|
||||
detailValue('originalContractNo')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否电子章">
|
||||
{{ detailElectronicSealText }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="备注" :span="3">{{
|
||||
detailValue('remark')
|
||||
}}</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</section>
|
||||
|
||||
<contract-attachment-section
|
||||
title="合同文件"
|
||||
description
|
||||
attachment-type
|
||||
readonly
|
||||
:rows="detailContractFileRows"
|
||||
:preview="previewAttachment"
|
||||
/>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">计费信息</div>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="费用生成模式">{{
|
||||
detailFeeGenerationMode
|
||||
}}</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
<el-table :data="detailBillingPlanRows" border>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column prop="planName" label="方案名称" min-width="220" align="center" />
|
||||
<el-table-column label="运输方式" min-width="180" align="center">
|
||||
<template #default="{ row }">{{
|
||||
row.transportModeLabel || row.transportMode || '-'
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="120" align="center" fixed="right">
|
||||
<template #default="{ row, $index }">
|
||||
<el-link type="primary" @click="openDetailBillingPlan(row, $index)"
|
||||
>查看详情</el-link
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">结算单规则</div>
|
||||
<el-tabs v-model="detailSettlementConfigTab">
|
||||
<el-tab-pane label="预结算配置" name="pre" />
|
||||
<el-tab-pane label="正式结算配置" name="formal" />
|
||||
</el-tabs>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="自动生成结算单">{{
|
||||
Number(detailSettlementRule.autoGenerate) === 1 ? '开启' : '关闭'
|
||||
}}</el-descriptions-item>
|
||||
<template v-if="Number(detailSettlementRule.autoGenerate) === 1">
|
||||
<el-descriptions-item label="账单起始日期">{{
|
||||
displayValue(detailSettlementRule.billStartDate)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算类型">{{
|
||||
displayValue(detailSettlementRule.settlementType)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item
|
||||
v-if="detailSettlementRule.settlementType === '月结'"
|
||||
label="结算周期"
|
||||
>{{ displayValue(detailSettlementRule.billCycleType) }}</el-descriptions-item
|
||||
>
|
||||
<el-descriptions-item
|
||||
v-if="
|
||||
detailSettlementRule.settlementType === '月结' &&
|
||||
detailSettlementRule.billCycleType === '固定截单日'
|
||||
"
|
||||
label="账单截单日"
|
||||
>{{
|
||||
detailObjectUnitValue(detailSettlementRule, 'billCutoffDay', '日')
|
||||
}}</el-descriptions-item
|
||||
>
|
||||
<el-descriptions-item
|
||||
v-if="detailSettlementRule.settlementType === '固定天数周期结算'"
|
||||
label="周期天数"
|
||||
>{{
|
||||
detailObjectUnitValue(detailSettlementRule, 'cycleDays', '天')
|
||||
}}</el-descriptions-item
|
||||
>
|
||||
</template>
|
||||
</el-descriptions>
|
||||
<el-table
|
||||
v-if="
|
||||
Number(detailSettlementRule.autoGenerate) === 1 &&
|
||||
detailSettlementRule.settlementType === '月结' &&
|
||||
detailSettlementRule.billCycleType === '自定义多周期'
|
||||
"
|
||||
:data="detailSettlementRule.customPeriods || []"
|
||||
border
|
||||
class="contract-manage-form__custom-periods"
|
||||
>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column label="运单区间-开始日" min-width="180" align="center">
|
||||
<template #default="{ row }">{{ row.startDay || '-' }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="运单区间-结束日" min-width="180" align="center">
|
||||
<template #default="{ row }">{{ row.endDay || '-' }}</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">
|
||||
付款比例设置
|
||||
<el-tooltip content="非必填;配置付款比例时,合计必须等于100%。" placement="top">
|
||||
<el-icon style="margin-left: 4px; color: #909399; cursor: pointer"
|
||||
><el-icon-question-filled
|
||||
/></el-icon>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<el-table :data="detailPaymentRatioRows" border>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column prop="paymentTerm" label="付款笔数" min-width="180" align="center" />
|
||||
<el-table-column label="付款比例上限(%)" min-width="220" align="center">
|
||||
<template #default="{ row }">{{
|
||||
detailObjectUnitValue(row, 'ratioLimit', '%')
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" label="备注" min-width="220" />
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<contract-attachment-section
|
||||
title="其它附件"
|
||||
description
|
||||
readonly
|
||||
:rows="detailAttachmentRows"
|
||||
:preview="previewAttachment"
|
||||
/>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">变更记录</div>
|
||||
<el-table :data="detailChangeRecordRows" border>
|
||||
<el-table-column type="index" label="序号" width="70" align="center" />
|
||||
<el-table-column
|
||||
prop="changeDate"
|
||||
label="变更日期"
|
||||
min-width="150"
|
||||
align="center"
|
||||
sortable
|
||||
/>
|
||||
<el-table-column prop="handlerUserName" label="经办人" min-width="140" align="center" />
|
||||
<el-table-column prop="changeType" label="变更类型" min-width="160" align="center" />
|
||||
<el-table-column label="变更内容" min-width="420">
|
||||
<template #default="{ row }">
|
||||
<el-tooltip placement="top" :show-after="200">
|
||||
<template #content>
|
||||
<div class="contract-change-record-content-tooltip">
|
||||
{{ formatContractChangeContent(row) }}
|
||||
</div>
|
||||
</template>
|
||||
<span class="contract-change-record-content-cell">{{
|
||||
formatContractChangeContent(row)
|
||||
}}</span>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
label="变更原因"
|
||||
min-width="240"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="statusName" label="状态" min-width="140" align="center" />
|
||||
<el-table-column label="操作" width="120" align="center" fixed="right">
|
||||
<template #default="{ row }"
|
||||
><el-link type="primary" @click="openDetailChangeRecord(row)">详情</el-link></template
|
||||
>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
</div>
|
||||
<div class="contract-manage-page__footer">
|
||||
<el-button @click="closeDetail">关闭</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template v-else>
|
||||
<div class="archive-page-form__title">{{ formPageTitle }}</div>
|
||||
|
||||
@@ -328,9 +575,6 @@
|
||||
<el-form-item label="经办人">
|
||||
<el-input v-model="form.handlerUserName" disabled />
|
||||
</el-form-item>
|
||||
<el-form-item label="归档状态">
|
||||
<el-input :model-value="form.archiveStatus || '未归档'" disabled />
|
||||
</el-form-item>
|
||||
</div>
|
||||
<el-form-item label="备注" prop="remark" class="contract-manage-form__remark">
|
||||
<el-input
|
||||
@@ -566,6 +810,9 @@
|
||||
<contract-attachment-section
|
||||
title="其它附件"
|
||||
description
|
||||
attachment-type
|
||||
use-upload-dialog
|
||||
attachment-location="其它附件"
|
||||
:readonly="isAttachmentUploadMode"
|
||||
:rows="attachmentRows"
|
||||
:preview="previewAttachment"
|
||||
@@ -715,256 +962,6 @@
|
||||
@close="attachmentImagePreviewVisible = false"
|
||||
/>
|
||||
|
||||
<el-dialog
|
||||
v-model="detailBox"
|
||||
title="合同详情"
|
||||
append-to-body
|
||||
destroy-on-close
|
||||
class="contract-manage-detail-dialog"
|
||||
width="92%"
|
||||
top="4vh"
|
||||
>
|
||||
<div v-loading="detailLoading" class="contract-manage-form contract-manage-detail">
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">基本信息</div>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="签约类型">{{
|
||||
detailValue('signType')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同编号">{{
|
||||
detailValue('contractNo')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同名称">{{
|
||||
detailValue('contractName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同类型">{{
|
||||
detailValue('contractCategory')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="项目">{{
|
||||
detailValue('projectName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="甲方">{{ detailValue('partyA') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="乙方">{{ detailValue('partyB') }}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同期限">{{ detailContractPeriod }}</el-descriptions-item>
|
||||
<el-descriptions-item label="所属组织">{{
|
||||
detailValue('organizationName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="经办人">{{
|
||||
detailValue('handlerUserName')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="归档状态">{{
|
||||
detailRow.archiveStatus || '未归档'
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="签订日期">{{
|
||||
detailValue('signDate')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同格式">{{
|
||||
detailValue('contractFormat')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否需要加盖法人章">{{
|
||||
detailLegalSealText
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="一式">{{
|
||||
detailUnitValue('copyCount', '份')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算币种">{{
|
||||
detailDictionaryValue('settlementCurrency', settlementCurrencyOptions)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算方式">{{
|
||||
detailDictionaryValue('settlementMode', settlementModeOptions)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="开票周期">{{
|
||||
detailUnitValue('invoiceCycle', '天')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="回款账期">{{
|
||||
detailUnitValue('paymentDays', '天')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="合同金额">{{
|
||||
detailValue('contractAmount')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否范本">{{ detailTemplateText }}</el-descriptions-item>
|
||||
<el-descriptions-item label="原件合同编号">{{
|
||||
detailValue('originalContractNo')
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="是否电子章">
|
||||
{{ detailElectronicSealText }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="备注" :span="3">{{
|
||||
detailValue('remark')
|
||||
}}</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</section>
|
||||
|
||||
<contract-attachment-section
|
||||
title="合同文件"
|
||||
description
|
||||
attachment-type
|
||||
readonly
|
||||
:rows="detailContractFileRows"
|
||||
:preview="previewAttachment"
|
||||
/>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">计费信息</div>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="费用生成模式">{{
|
||||
detailFeeGenerationMode
|
||||
}}</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
<el-table :data="detailBillingPlanRows" border>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column prop="planName" label="方案名称" min-width="220" align="center" />
|
||||
<el-table-column label="运输方式" min-width="180" align="center">
|
||||
<template #default="{ row }">{{
|
||||
row.transportModeLabel || row.transportMode || '-'
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="120" align="center" fixed="right">
|
||||
<template #default="{ row, $index }">
|
||||
<el-link type="primary" @click="openDetailBillingPlan(row, $index)"
|
||||
>查看详情</el-link
|
||||
>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">结算单规则</div>
|
||||
<el-tabs v-model="detailSettlementConfigTab">
|
||||
<el-tab-pane label="预结算配置" name="pre" />
|
||||
<el-tab-pane label="正式结算配置" name="formal" />
|
||||
</el-tabs>
|
||||
<el-descriptions :column="3" class="contract-manage-detail__descriptions">
|
||||
<el-descriptions-item label="自动生成结算单">{{
|
||||
Number(detailSettlementRule.autoGenerate) === 1 ? '开启' : '关闭'
|
||||
}}</el-descriptions-item>
|
||||
<template v-if="Number(detailSettlementRule.autoGenerate) === 1">
|
||||
<el-descriptions-item label="账单起始日期">{{
|
||||
displayValue(detailSettlementRule.billStartDate)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item label="结算类型">{{
|
||||
displayValue(detailSettlementRule.settlementType)
|
||||
}}</el-descriptions-item>
|
||||
<el-descriptions-item
|
||||
v-if="detailSettlementRule.settlementType === '月结'"
|
||||
label="结算周期"
|
||||
>{{ displayValue(detailSettlementRule.billCycleType) }}</el-descriptions-item
|
||||
>
|
||||
<el-descriptions-item
|
||||
v-if="
|
||||
detailSettlementRule.settlementType === '月结' &&
|
||||
detailSettlementRule.billCycleType === '固定截单日'
|
||||
"
|
||||
label="账单截单日"
|
||||
>{{
|
||||
detailObjectUnitValue(detailSettlementRule, 'billCutoffDay', '日')
|
||||
}}</el-descriptions-item
|
||||
>
|
||||
<el-descriptions-item
|
||||
v-if="detailSettlementRule.settlementType === '固定天数周期结算'"
|
||||
label="周期天数"
|
||||
>{{
|
||||
detailObjectUnitValue(detailSettlementRule, 'cycleDays', '天')
|
||||
}}</el-descriptions-item
|
||||
>
|
||||
</template>
|
||||
</el-descriptions>
|
||||
<el-table
|
||||
v-if="
|
||||
Number(detailSettlementRule.autoGenerate) === 1 &&
|
||||
detailSettlementRule.settlementType === '月结' &&
|
||||
detailSettlementRule.billCycleType === '自定义多周期'
|
||||
"
|
||||
:data="detailSettlementRule.customPeriods || []"
|
||||
border
|
||||
class="contract-manage-form__custom-periods"
|
||||
>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column label="运单区间-开始日" min-width="180" align="center">
|
||||
<template #default="{ row }">{{ row.startDay || '-' }}</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="运单区间-结束日" min-width="180" align="center">
|
||||
<template #default="{ row }">{{ row.endDay || '-' }}</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">
|
||||
付款比例设置
|
||||
<el-tooltip content="非必填;配置付款比例时,合计必须等于100%。" placement="top">
|
||||
<el-icon style="margin-left: 4px; color: #909399; cursor: pointer"><el-icon-question-filled /></el-icon>
|
||||
</el-tooltip>
|
||||
</div>
|
||||
<el-table :data="detailPaymentRatioRows" border>
|
||||
<el-table-column type="index" label="序号" width="80" align="center" />
|
||||
<el-table-column prop="paymentTerm" label="付款笔数" min-width="180" align="center" />
|
||||
<el-table-column label="付款比例上限(%)" min-width="220" align="center">
|
||||
<template #default="{ row }">{{
|
||||
detailObjectUnitValue(row, 'ratioLimit', '%')
|
||||
}}</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="remark" label="备注" min-width="220" />
|
||||
</el-table>
|
||||
</section>
|
||||
|
||||
<contract-attachment-section
|
||||
title="其它附件"
|
||||
description
|
||||
readonly
|
||||
:rows="detailAttachmentRows"
|
||||
:preview="previewAttachment"
|
||||
/>
|
||||
|
||||
<section class="contract-manage-form__section contract-manage-form__section--panel">
|
||||
<div class="dialog-section-title">变更记录</div>
|
||||
<el-table :data="detailChangeRecordRows" border>
|
||||
<el-table-column type="index" label="序号" width="70" align="center" />
|
||||
<el-table-column
|
||||
prop="changeDate"
|
||||
label="变更日期"
|
||||
min-width="150"
|
||||
align="center"
|
||||
sortable
|
||||
/>
|
||||
<el-table-column prop="handlerUserName" label="经办人" min-width="140" align="center" />
|
||||
<el-table-column prop="changeType" label="变更类型" min-width="160" align="center" />
|
||||
<el-table-column label="变更内容" min-width="420">
|
||||
<template #default="{ row }">
|
||||
<el-tooltip placement="top" :show-after="200">
|
||||
<template #content>
|
||||
<div class="contract-change-record-content-tooltip">
|
||||
{{ formatContractChangeContent(row) }}
|
||||
</div>
|
||||
</template>
|
||||
<span class="contract-change-record-content-cell">{{
|
||||
formatContractChangeContent(row)
|
||||
}}</span>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="changeReason"
|
||||
label="变更原因"
|
||||
min-width="240"
|
||||
align="center"
|
||||
show-overflow-tooltip
|
||||
/>
|
||||
<el-table-column prop="statusName" label="状态" min-width="140" align="center" />
|
||||
<el-table-column label="操作" width="120" align="center" fixed="right">
|
||||
<template #default="{ row }"
|
||||
><el-link type="primary" @click="openDetailChangeRecord(row)">详情</el-link></template
|
||||
>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</section>
|
||||
</div>
|
||||
<template #footer
|
||||
><el-button type="primary" @click="detailBox = false">关闭</el-button></template
|
||||
>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog
|
||||
v-model="detailChangeRecordVisible"
|
||||
title="变更记录详情"
|
||||
@@ -975,7 +972,6 @@
|
||||
class="contract-change-record-detail-dialog"
|
||||
>
|
||||
<div v-if="detailChangeRecord" class="contract-change-record-detail-meta">
|
||||
<span>变更日期:{{ detailChangeRecord.changeDate || '-' }}</span>
|
||||
<span>经办人:{{ detailChangeRecord.handlerUserName || '-' }}</span>
|
||||
<span>变更类型:{{ detailChangeRecord.changeType || '-' }}</span>
|
||||
<span>状态:{{ detailChangeRecord.statusName || detailChangeRecord.status || '-' }}</span>
|
||||
@@ -1277,7 +1273,6 @@ export default {
|
||||
changeRecordRows: [],
|
||||
settlementTypeOptions: ['月结', '日结', '周结', '半月结', '固定天数周期结算'],
|
||||
billCycleTypeOptions: ['固定截单日', '自然月', '自定义多周期'],
|
||||
detailBox: false,
|
||||
detailLoading: false,
|
||||
detailRow: {},
|
||||
detailContractFileRows: [],
|
||||
@@ -1313,9 +1308,15 @@ export default {
|
||||
canCreate() {
|
||||
return this.hasPermission(`${this.config.permission}_add`);
|
||||
},
|
||||
isListPage() {
|
||||
return !this.isFormPage && !this.isDetailPage;
|
||||
},
|
||||
isFormPage() {
|
||||
return this.$route.path === '/business/contract-manage/form';
|
||||
},
|
||||
isDetailPage() {
|
||||
return this.$route.path === '/business/contract-manage/detail';
|
||||
},
|
||||
formMode() {
|
||||
return this.$route.query.mode === 'edit' ? 'edit' : 'add';
|
||||
},
|
||||
@@ -1344,6 +1345,9 @@ export default {
|
||||
}
|
||||
return this.$route.query.name || `${this.formMode === 'edit' ? '编辑' : '新增'}合同管理`;
|
||||
},
|
||||
detailPageTitle() {
|
||||
return this.$route.query.name || '合同详情';
|
||||
},
|
||||
ids() {
|
||||
return this.selectionList.map(item => item.id).join(',');
|
||||
},
|
||||
@@ -1456,6 +1460,7 @@ export default {
|
||||
watch: {
|
||||
'$route.fullPath'() {
|
||||
if (this.isFormPage) this.initFormPage();
|
||||
if (this.isDetailPage) this.initDetailPage();
|
||||
},
|
||||
settlementConfigTab(tab, oldTab) {
|
||||
if (tab === oldTab) return;
|
||||
@@ -1471,6 +1476,7 @@ export default {
|
||||
this.loadSettlementDictionaries();
|
||||
this.loadOrganizationOptions();
|
||||
if (this.isFormPage) this.initFormPage();
|
||||
if (this.isDetailPage) this.initDetailPage();
|
||||
},
|
||||
methods: {
|
||||
buildTableOption() {
|
||||
@@ -2369,18 +2375,29 @@ export default {
|
||||
row.ratioLimit = nextValue;
|
||||
},
|
||||
openDetail(row) {
|
||||
this.detailBox = true;
|
||||
this.$router.push({
|
||||
path: '/business/contract-manage/detail',
|
||||
query: { id: row.id, name: '合同详情' },
|
||||
});
|
||||
},
|
||||
initDetailPage() {
|
||||
const id = this.$route.query.id;
|
||||
if (!id) return;
|
||||
this.detailLoading = true;
|
||||
this.applyDetailState(row);
|
||||
this.applyDetailState({});
|
||||
this.api
|
||||
.getDetail(row.id)
|
||||
.getDetail(id)
|
||||
.then(res => {
|
||||
this.applyDetailState(res.data?.data || row);
|
||||
this.applyDetailState(res.data?.data || {});
|
||||
})
|
||||
.finally(() => {
|
||||
this.detailLoading = false;
|
||||
});
|
||||
},
|
||||
closeDetail() {
|
||||
this.$router.$avueRouter?.closeTag?.();
|
||||
this.$router.push('/business/contract-manage');
|
||||
},
|
||||
applyDetailState(detail = {}) {
|
||||
this.detailRow = {
|
||||
...detail,
|
||||
@@ -2657,7 +2674,10 @@ export default {
|
||||
},
|
||||
handleOperation(operation, row) {
|
||||
if (operation.action === 'startChange') {
|
||||
this.$router.push({ path: '/business/contract-manage/change', query: { id: row.id } });
|
||||
this.$router.push({
|
||||
path: '/business/contract-manage/change',
|
||||
query: { id: row.id, name: '合同变更' },
|
||||
});
|
||||
return;
|
||||
}
|
||||
if (operation.action === 'flow') {
|
||||
@@ -3105,9 +3125,6 @@ export default {
|
||||
}
|
||||
|
||||
.contract-manage-detail {
|
||||
max-height: 74vh;
|
||||
overflow-y: auto;
|
||||
|
||||
&__descriptions {
|
||||
:deep(.el-descriptions__label) {
|
||||
display: inline-block;
|
||||
|
||||
Reference in New Issue
Block a user