You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.7 KiB

# 01 实体 + DTO 字段扩展
Type: task
Status: resolved
## 目标
`crm-opportunity` 的商机主表实体与创建请求 DTO 补齐 spec.md 拍板的字段。
## 改动
### 1. `Opportunity` 实体(`crm-opportunity/.../domain/entity/Opportunity.java`)
新增 4 列,照现有 `@Comment` + `@Column(columnDefinition=...)` 风格:
- `address`:varchar(255) comment '项目详细地址'(形状对齐 `Lead.address`
- `keyContactId`:bigint comment '商机关键联系人ID(引用 A4 联系人,未建可空)'
- `keyContactNameSnapshot`:varchar(200) comment '商机关键联系人姓名快照'
- `keyContactCompanySnapshot`:varchar(200) comment '关键人所在公司快照'
`projectAmount` 已存在,不动。
### 2. `CreateOpportunityRequest` DTO(`crm-opportunity/.../domain/dto/CreateOpportunityRequest.java`)
新增字段:
- `projectAmount`(BigDecimal,项目金额)
- `address`(String,项目详细地址)
- `customerRole`(String,客户类型 → customer_role 字典 code)
- `isPrimaryIntended`(Integer,是否主要客户:1=主要 / 0=普通关联)
- `keyContactId`(Long,可空)
- `keyContactName`(String,快照)
- `keyContactCompany`(String,快照)
`remark` 字段的 javadoc 展示名从「备注」改为「项目概况」,补一句「线索转商机时应映射来源线索对应字段」。
## 校验注意
- 本票只加字段与注释,不做业务校验(校验在 03 票)。
- 加列后跑 BOM 扫描 + `mvn -pl crm-opportunity compile` 验证无 `\uFEFF`
## 完成标准
- [ ] 实体 4 新列 + DTO 7 新字段 + remark 改名注释
- [ ] `mvn -pl crm-opportunity compile` 通过
- [ ] 全仓 `*.java` BOM 扫描干净