0509新功能优化
This commit is contained in:
@@ -31,7 +31,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="规划内容">
|
||||
<el-form-item label="项目任务包">
|
||||
<el-input :model-value="formData.planningContent" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -39,17 +39,53 @@
|
||||
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="规划金额(元)">
|
||||
<el-form-item label="合同产值数量">
|
||||
<el-input :model-value="formatQuantityText(formData.contractValueQuantity)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="合同产值单价">
|
||||
<el-input :model-value="formatQuantityText(formData.contractValueUnitPrice)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="分项合同产值(元)">
|
||||
<el-input :model-value="formatAmountText(formData.planningAmount)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="增值税率(%)">
|
||||
<el-input :model-value="formatPercentText(formData.vatRate)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="增值税(元)">
|
||||
<el-input :model-value="formatAmountText(formData.vatAmount)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="管理费率(%)">
|
||||
<el-input :model-value="formatPercentText(formData.managementFeeRate)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row :gutter="16">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="实施团队">
|
||||
<el-form-item label="管理费(元)">
|
||||
<el-input :model-value="formatAmountText(formData.managementFee)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="项目预算产值(元)">
|
||||
<el-input :model-value="formatAmountText(formData.projectBudgetOutputValue)" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="意向实施团队">
|
||||
<el-input :model-value="formData.implementationTeam || '-'" disabled />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -247,7 +283,6 @@
|
||||
<el-button plain type="primary" @click="addGuideDetailRow">
|
||||
<template #icon><i class="el-icon-plus"></i></template>新增明细
|
||||
</el-button>
|
||||
<span class="text-12px text-gray-400">💡 提示:数字字段已隐藏加减箭头以优化显示,支持直接输入或复制粘贴</span>
|
||||
</div>
|
||||
|
||||
<el-table :data="guideDetails" border max-height="460" class="optimized-table">
|
||||
@@ -544,8 +579,13 @@ const createFormData = (): PlanningApi.ProjectPlanningVO => ({
|
||||
calculationMethod: '',
|
||||
planningContent: '',
|
||||
planningAmount: undefined,
|
||||
contractValueQuantity: undefined,
|
||||
contractValueUnitPrice: undefined,
|
||||
managementFeeRate: undefined,
|
||||
managementFee: undefined,
|
||||
vatRate: undefined,
|
||||
vatAmount: undefined,
|
||||
projectBudgetOutputValue: undefined,
|
||||
implementationTeam: '',
|
||||
planningStartYear: undefined,
|
||||
planningArea: undefined,
|
||||
@@ -639,6 +679,9 @@ const normalizeFormData = (data: PlanningApi.ProjectPlanningVO): PlanningApi.Pro
|
||||
...data,
|
||||
ownershipType: normalizeOwnershipType(data.ownershipType) || data.ownershipType || '',
|
||||
calculationMethod: normalizeCalculationMethod(data.calculationMethod) || data.calculationMethod || '',
|
||||
contractValueQuantity: data.contractValueQuantity ?? 1,
|
||||
contractValueUnitPrice: data.contractValueUnitPrice ?? data.planningAmount,
|
||||
vatRate: data.vatRate ?? 0.06,
|
||||
designStage: normalizeDesignStage(data.designStage),
|
||||
virtualCalculationMethod: normalizeVirtualCalculationMethod(data.virtualCalculationMethod),
|
||||
reviewOutsourceFlag: data.reviewOutsourceFlag ?? false,
|
||||
@@ -785,6 +828,13 @@ const formatFactorText = (value?: number, digits = 4) => {
|
||||
return Number(value).toFixed(digits)
|
||||
}
|
||||
|
||||
const formatQuantityText = (value?: number, digits = 4) => {
|
||||
if (value === undefined || value === null) {
|
||||
return '-'
|
||||
}
|
||||
return Number(value).toFixed(digits)
|
||||
}
|
||||
|
||||
const setGuideDetailPercentValue = (
|
||||
row: GuideDetailRow,
|
||||
field: 'complexityFactor' | 'designRatio',
|
||||
@@ -940,8 +990,11 @@ const buildSavePayload = (): PlanningApi.ProjectPlanningSaveVO => ({
|
||||
ownershipType: formData.value.ownershipType,
|
||||
calculationMethod: formData.value.calculationMethod,
|
||||
planningContent: formData.value.planningContent,
|
||||
planningAmount: formData.value.planningAmount,
|
||||
sortNo: formData.value.sortNo,
|
||||
contractValueQuantity: formData.value.contractValueQuantity,
|
||||
contractValueUnitPrice: formData.value.contractValueUnitPrice,
|
||||
managementFeeRate: formData.value.managementFeeRate,
|
||||
vatRate: formData.value.vatRate,
|
||||
implementationTeam: formData.value.implementationTeam,
|
||||
planningStartYear: formData.value.planningStartYear,
|
||||
planningArea: showGuideDetailSection.value
|
||||
@@ -1104,4 +1157,4 @@ const submitForm = async () => {
|
||||
:deep(.text-primary) {
|
||||
color: var(--el-color-primary);
|
||||
}
|
||||
</style>
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user