父节点
ef19a4bf37
当前提交
8dd2323197
@ -0,0 +1,99 @@
|
|||||||
|
---
|
||||||
|
date: 2026-05-04
|
||||||
|
type: frontend
|
||||||
|
module: contract-scheme
|
||||||
|
priority: high
|
||||||
|
backend_pr: "#1638"
|
||||||
|
notify: ["@mmg"]
|
||||||
|
status: pending
|
||||||
|
---
|
||||||
|
|
||||||
|
# 合同方案表单: 管辖法院 → 仲裁委员会(请前端改)
|
||||||
|
|
||||||
|
## 背景
|
||||||
|
|
||||||
|
12301 合同 `dispute` 段:
|
||||||
|
- `disputeResolution=1` 诉讼 → 用 **管辖法院** (litigationCourt)
|
||||||
|
- `disputeResolution=2` 仲裁 → 用 **仲裁委员会** (tribunalName)
|
||||||
|
|
||||||
|
后端 PR #1638 已让两个字段都从 nacos `contract.platform.agencies[].litigationCourt / tribunalName` 兜底(默认"海拉尔区人民法院" / "呼伦贝尔仲裁委员会"),**前端不填也能正常生成合同**。
|
||||||
|
|
||||||
|
## 问题(前端目前的状态)
|
||||||
|
|
||||||
|
`/contract/scheme` 编辑弹窗里只有一个**管辖法院**输入框(截图中红框):
|
||||||
|
```
|
||||||
|
管辖法院 [海拉尔区人民法院] 8 / 100
|
||||||
|
```
|
||||||
|
|
||||||
|
用户要求:
|
||||||
|
1. **去掉"管辖法院"输入框**(走 nacos 兜底,不让运营每次填)
|
||||||
|
2. **新增"仲裁委员会"输入框**(仅 `disputeResolution=2 仲裁` 时显示,可选;不填走 nacos 兜底)
|
||||||
|
|
||||||
|
## 改动清单
|
||||||
|
|
||||||
|
### 1. 编辑/新建合同方案弹窗
|
||||||
|
|
||||||
|
| 字段 | 当前 | 目标 |
|
||||||
|
|------|------|------|
|
||||||
|
| 管辖法院输入框 (绑 `litigationCourt`) | 始终显示 | **删除** |
|
||||||
|
| 仲裁委员会输入框 (绑 `tribunalName`) | 不存在 | **新增**,仅当 `disputeResolution === 2` 显示 |
|
||||||
|
|
||||||
|
```vue
|
||||||
|
<!-- 删除这一段 -->
|
||||||
|
<n-form-item label="管辖法院" path="litigationCourt">
|
||||||
|
<n-input v-model:value="form.litigationCourt" maxlength="100" show-count />
|
||||||
|
</n-form-item>
|
||||||
|
|
||||||
|
<!-- 新增这一段(仅仲裁时显示) -->
|
||||||
|
<n-form-item
|
||||||
|
v-if="form.disputeResolution === 2"
|
||||||
|
label="仲裁委员会"
|
||||||
|
path="tribunalName"
|
||||||
|
>
|
||||||
|
<n-input
|
||||||
|
v-model:value="form.tribunalName"
|
||||||
|
maxlength="100"
|
||||||
|
show-count
|
||||||
|
placeholder="不填走默认: 呼伦贝尔仲裁委员会"
|
||||||
|
/>
|
||||||
|
</n-form-item>
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. 提交逻辑
|
||||||
|
|
||||||
|
- 提交时仍带 `tribunalName` 和 `litigationCourt` 两个字段(后端 VO 都接收)
|
||||||
|
- `litigationCourt` 前端无输入入口 → 提交时**始终传 null**(让后端走 nacos 兜底)
|
||||||
|
- `tribunalName` 用户没填 → 传 null(后端走 nacos 兜底)
|
||||||
|
|
||||||
|
### 3. 列表展示(如有显示这两列)
|
||||||
|
|
||||||
|
- "管辖法院" 列 → 删掉或改成只展示,从 `agencyInfo` 里读
|
||||||
|
- "仲裁委员会" 列 → 直接读 `tribunalName`,空值显示 "-"(后端运行时合同会用 nacos 默认)
|
||||||
|
|
||||||
|
## 后端不需要改
|
||||||
|
|
||||||
|
后端字段名、API 行为、合同 PDF 渲染**全部不变**。前端只动表单 UI + 提交时填啥。
|
||||||
|
|
||||||
|
## 接口示例
|
||||||
|
|
||||||
|
**POST /admin/contract-scheme** 和 **PUT /admin/contract-scheme/{id}**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"schemeName": "全国旅游监管平台",
|
||||||
|
"platform": "12301",
|
||||||
|
"disputeResolution": 2,
|
||||||
|
"tribunalName": "呼伦贝尔仲裁委员会", // ← 仅仲裁时填,可空
|
||||||
|
"litigationCourt": null, // ← 永远 null,让 nacos 兜底
|
||||||
|
"...其他字段不变"
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## 测试
|
||||||
|
|
||||||
|
- [ ] 选"诉讼" → 不显示"仲裁委员会"输入框
|
||||||
|
- [ ] 选"仲裁" → 显示"仲裁委员会"输入框(可空)
|
||||||
|
- [ ] 仲裁时不填 tribunalName 提交 → 保存成功,生成合同 PDF 显示"呼伦贝尔仲裁委员会"
|
||||||
|
- [ ] 仲裁时填"内蒙古仲裁委员会"提交 → 保存成功,生成合同 PDF 显示自定义值
|
||||||
|
|
||||||
|
@mmg 麻烦尽快改一下,截图里的"管辖法院"直接删掉换成仲裁委员会即可。
|
||||||
正在加载...
x
在新工单中引用
屏蔽一个用户