hookehuyr

style(plan): 调整每年提取金额字段位置至提取期下方

- 统一单阶段和多阶段模式的字段录入顺序
- 单阶段:调整 withdrawal_fields 中的数组顺序
- 多阶段:调整阶段卡片中的 HTML 渲染顺序

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 # CHANGELOG 1 # CHANGELOG
2 2
3 +## [2026-02-27] - 计划书字段顺序调整
4 +
5 +### 优化
6 +- 调整"每年提取金额"字段位置,移至"提取期"下方
7 +- 统一单阶段和多阶段模式的字段录入顺序
8 +
9 +---
10 +
3 ## [2026-02-22] - CHANGELOG 自动更新功能 11 ## [2026-02-22] - CHANGELOG 自动更新功能
4 12
5 ### 配置 13 ### 配置
......
...@@ -77,17 +77,6 @@ ...@@ -77,17 +77,6 @@
77 </nut-button> 77 </nut-button>
78 </div> 78 </div>
79 79
80 - <!-- 每年提取金额 -->
81 - <PlanFieldAmount
82 - v-model="stage.annual_withdrawal_amount"
83 - label="每年提取金额"
84 - placeholder="请输入每年提取金额"
85 - inputLabel="请输入每年提取金额"
86 - :required="true"
87 - :currency="config.withdrawal_plan?.default_currency || config.currency"
88 - class="mb-3"
89 - />
90 -
91 <!-- 由几岁开始 --> 80 <!-- 由几岁开始 -->
92 <PlanFieldAgePicker 81 <PlanFieldAgePicker
93 v-model="stage.withdrawal_start_age" 82 v-model="stage.withdrawal_start_age"
...@@ -107,6 +96,17 @@ ...@@ -107,6 +96,17 @@
107 class="mb-3" 96 class="mb-3"
108 /> 97 />
109 98
99 + <!-- 每年提取金额 -->
100 + <PlanFieldAmount
101 + v-model="stage.annual_withdrawal_amount"
102 + label="每年提取金额"
103 + placeholder="请输入每年提取金额"
104 + inputLabel="请输入每年提取金额"
105 + :required="true"
106 + :currency="config.withdrawal_plan?.default_currency || config.currency"
107 + class="mb-3"
108 + />
109 +
110 <!-- 每年递增提取之百分比(可选) --> 110 <!-- 每年递增提取之百分比(可选) -->
111 <div class="percentage-field"> 111 <div class="percentage-field">
112 <div class="text-sm text-gray-700 mb-2 flex items-center"> 112 <div class="text-sm text-gray-700 mb-2 flex items-center">
......
...@@ -99,9 +99,9 @@ const savingsFormSchema = { ...@@ -99,9 +99,9 @@ const savingsFormSchema = {
99 { id: 'withdrawal_mode', key: 'withdrawal_mode', type: 'radio', label: '提取选项', options: ['指定提取金额', '最高固定提取金额'], required: true, default: '指定提取金额', section_title: '款项提取(允许减少名义金额)', clear_when_hidden: true }, 99 { id: 'withdrawal_mode', key: 'withdrawal_mode', type: 'radio', label: '提取选项', options: ['指定提取金额', '最高固定提取金额'], required: true, default: '指定提取金额', section_title: '款项提取(允许减少名义金额)', clear_when_hidden: true },
100 // 指定提取金额模式字段 100 // 指定提取金额模式字段
101 { id: 'withdrawal_method', key: 'withdrawal_method', type: 'radio', label: '提取方式', options: ['按年岁'], required: true, default: '按年岁', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true }, 101 { id: 'withdrawal_method', key: 'withdrawal_method', type: 'radio', label: '提取方式', options: ['按年岁'], required: true, default: '按年岁', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
102 - { id: 'annual_withdrawal_amount', key: 'annual_withdrawal_amount', type: 'amount', label: '每年提取金额', placeholder: '请输入每年提取金额', input_label: '请输入每年提取金额', required: true, currency_from: 'withdrawal_plan.default_currency', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
103 { id: 'withdrawal_start_age_specified', key: 'withdrawal_start_age_specified', type: 'age', label: '由几岁开始', placeholder: '请输入开始提取年龄', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true }, 102 { id: 'withdrawal_start_age_specified', key: 'withdrawal_start_age_specified', type: 'age', label: '由几岁开始', placeholder: '请输入开始提取年龄', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
104 { id: 'withdrawal_period_specified', key: 'withdrawal_period_specified', type: 'select', label: '提取期(年)', placeholder: '请选择提取期', required: true, options_from: 'withdrawal_plan.withdrawal_periods', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true }, 103 { id: 'withdrawal_period_specified', key: 'withdrawal_period_specified', type: 'select', label: '提取期(年)', placeholder: '请选择提取期', required: true, options_from: 'withdrawal_plan.withdrawal_periods', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
104 + { id: 'annual_withdrawal_amount', key: 'annual_withdrawal_amount', type: 'amount', label: '每年提取金额', placeholder: '请输入每年提取金额', input_label: '请输入每年提取金额', required: true, currency_from: 'withdrawal_plan.default_currency', show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
105 { id: 'annual_increase_percentage', key: 'annual_increase_percentage', type: 'percentage', label: '每年递增提取之百分比(%)', placeholder: '请输入递增百分比', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true }, 105 { id: 'annual_increase_percentage', key: 'annual_increase_percentage', type: 'percentage', label: '每年递增提取之百分比(%)', placeholder: '请输入递增百分比', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '指定提取金额' }, clear_when_hidden: true },
106 // 最高固定提取金额模式字段 106 // 最高固定提取金额模式字段
107 { id: 'withdrawal_start_age_fixed', key: 'withdrawal_start_age_fixed', type: 'age', label: '按年岁:由几岁开始', placeholder: '请输入开始提取年龄', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '最高固定提取金额' }, clear_when_hidden: true }, 107 { id: 'withdrawal_start_age_fixed', key: 'withdrawal_start_age_fixed', type: 'age', label: '按年岁:由几岁开始', placeholder: '请输入开始提取年龄', required: true, show_when: { field: 'withdrawal_mode', op: 'eq', value: '最高固定提取金额' }, clear_when_hidden: true },
......