# lq_xh_hyhk 表添加备注字段 - 修改清单 ## 📋 概述 在 `lq_xh_hyhk`(会员耗卡)表中添加备注字段,用于记录耗卡相关的备注信息。 ## 🗄️ 数据库修改 ### 1. 数据库表结构修改 **表名**: `lq_xh_hyhk` **新增字段**: - **字段名**: `F_Remark` - **数据类型**: `VARCHAR(500)` 或 `TEXT`(根据备注长度需求) - **是否可空**: `YES` - **默认值**: `NULL` - **字段注释**: `备注` **SQL语句**: ```sql ALTER TABLE lq_xh_hyhk ADD COLUMN F_Remark VARCHAR(500) NULL COMMENT '备注' AFTER F_CancelRemark; ``` ## 💻 后端代码修改 ### 2. 实体类 (Entity) **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_hyhk/LqXhHyhkEntity.cs` **修改内容**: 在 `LqXhHyhkEntity` 类中添加备注属性 ```csharp /// /// 备注 /// [SugarColumn(ColumnName = "F_Remark")] public string Remark { get; set; } ``` **位置**: 建议添加在 `CancelRemark` 字段之后(第128行之后) --- ### 3. DTO 类修改 #### 3.1 创建输入DTO **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkCrInput.cs` **修改内容**: 添加备注字段 ```csharp /// /// 备注 /// public string remark { get; set; } ``` **位置**: 建议添加在 `appointmentId` 字段之后(第90行之后) --- #### 3.2 详情输出DTO **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkInfoOutput.cs` **修改内容**: 添加备注字段 ```csharp /// /// 备注 /// public string remark { get; set; } ``` **位置**: 建议添加在 `cancelRemark` 字段之后(第113行之后) --- #### 3.3 列表输出DTO **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkListOutput.cs` **修改内容**: 添加备注字段 ```csharp /// /// 备注 /// public string remark { get; set; } ``` **位置**: 建议添加在 `signatureFile` 字段之后(第95行之后) --- **注意**: `LqXhHyhkUpInput` 继承自 `LqXhHyhkCrInput`,会自动包含备注字段,无需单独修改。 --- ### 4. Service 方法修改 **文件**: `netcore/src/Modularity/Extend/NCC.Extend/LqXhHyhkService.cs` #### 4.1 GetInfo 方法(查询详情) **位置**: 第101行 `GetInfo(string id)` **修改说明**: - 使用 `entity.Adapt()` 自动映射,无需手动修改 - 但需要确保 `LqXhHyhkInfoOutput` 已包含 `remark` 字段 **影响**: ✅ 自动支持(通过 Adapt 映射) --- #### 4.2 GetList 方法(查询列表) **位置**: 第293行 `GetList([FromQuery] LqXhHyhkListQueryInput input)` **修改内容**: 在多个 `Select` 语句中添加 `remark` 字段 **需要修改的位置**: 1. **第342-370行**: 基础查询的 Select 语句 ```csharp remark = it.Remark, ``` 2. **第590-611行**: 按健康师ID查询的 Select 语句(GetListByJksId) ```csharp remark = hyhk.Remark, ``` 3. **第720-741行**: 按科技部老师ID查询的 Select 语句(GetListByKjbId) ```csharp remark = hyhk.Remark, ``` 4. **第1142-1165行**: 其他查询条件的 Select 语句 ```csharp remark = it.Remark, ``` --- #### 4.3 Create 方法(创建记录) **位置**: 第875行 `Create([FromBody] LqXhHyhkCrInput input)` **修改说明**: - 使用 `input.Adapt()` 自动映射,无需手动修改 - 但需要确保 `LqXhHyhkCrInput` 已包含 `remark` 字段 **影响**: ✅ 自动支持(通过 Adapt 映射) --- #### 4.4 Update 方法(更新记录) **位置**: 第1259行 `Update(string id, [FromBody] LqXhHyhkUpInput input)` **修改说明**: - 使用 `input.Adapt()` 自动映射,无需手动修改 - 但需要确保 `LqXhHyhkUpInput`(继承自 `LqXhHyhkCrInput`)已包含 `remark` 字段 **影响**: ✅ 自动支持(通过 Adapt 映射) --- #### 4.5 其他方法检查 以下方法可能也需要检查,但根据代码分析,它们主要使用实体类,会自动支持: - `Delete` 方法(第1504行)- 删除操作,无需修改 - `Cancel` 方法(第1618行)- 作废操作,可能需要显示备注,但不需要修改逻辑 - `ExportConsumeItemDetailList` 方法(第2340行)- 导出功能,如果导出包含备注,需要修改 --- ### 5. 其他 Service 检查 以下 Service 可能使用了 `LqXhHyhkEntity`,需要检查是否需要修改: 1. **LqStatisticsService.cs** - 统计服务 - 检查是否有统计查询使用备注字段 - 通常统计不需要备注,可能无需修改 2. **LqTechDepartmentDashboardService.cs** - 科技部驾驶舱 - 检查是否有查询使用备注字段 - 通常驾驶舱不需要备注,可能无需修改 3. **LqStoreDashboardService.cs** - 门店驾驶舱 - 检查是否有查询使用备注字段 - 通常驾驶舱不需要备注,可能无需修改 4. **LqTechTeacherSalaryService.cs** - 科技部老师工资 - 检查是否有查询使用备注字段 - 通常工资计算不需要备注,可能无需修改 5. **LqKhxxService.cs** - 客户资料服务 - 检查是否有关联查询使用备注字段 6. **LqTkjlbService.cs** - 拓客记录服务 - 检查是否有关联查询使用备注字段 7. **LqBusinessUnitDashboardService.cs** - 事业部驾驶舱 - 检查是否有查询使用备注字段 8. **LqReportService.cs** - 报表服务 - 检查是否有报表使用备注字段 9. **MemberPortraitService.cs** - 会员画像服务 - 检查是否有查询使用备注字段 10. **LqXmzlService.cs** - 项目资料服务 - 检查是否有关联查询使用备注字段 11. **LqXhFeedbackService.cs** - 耗卡反馈服务 - 检查是否有关联查询使用备注字段 **建议**: 这些服务通常不需要备注字段,但需要根据实际业务需求确认。 --- ## 🎨 前端代码修改 ### 6. 前端页面修改 #### 6.1 表单页面(新建/编辑) **文件**: `antis-ncc-admin/src/views/lqXhHyhk/Form.vue` **修改内容**: - 在表单中添加备注输入框 - 位置建议:在"费用信息"区域之后,"品项明细"之前 **代码示例**: ```vue ``` **需要修改的位置**: - 在 `dataForm` 对象中添加 `remark: ''` - 在表单模板中添加备注输入框(建议在第86行之后,第94行之前) --- #### 6.2 详情页面 **文件**: `antis-ncc-admin/src/views/lqXhHyhk/detail.vue` **修改内容**: - 在详情页面中显示备注信息 - 位置建议:在"费用信息"卡片之后,或单独一个"备注信息"卡片 **代码示例**: ```vue
备注信息

{{ dataForm.remark || '无' }}

``` **需要修改的位置**: - 在详情数据绑定中添加备注字段的显示(建议在第88行之后) --- #### 6.3 列表页面 **文件**: `antis-ncc-admin/src/views/lqXhHyhk/index.vue` **修改内容**: - 在列表表格中添加备注列(可选,根据业务需求) - 如果备注内容较长,可以考虑使用 tooltip 显示完整内容 **代码示例**: ```vue ``` **需要修改的位置**: - 在表格列定义中添加备注列(根据实际表格结构确定位置) --- ### 7. 导出功能检查 **文件**: `netcore/src/Modularity/Extend/NCC.Extend/LqXhHyhkService.cs` **方法**: `ExportConsumeItemDetailList`(第2340行) **修改说明**: - 如果导出功能需要包含备注字段,需要在导出DTO和Excel配置中添加 - 需要检查 `ConsumeItemDetailExportOutput` DTO 是否包含备注字段 - 需要在 Excel 配置的 `paramList` 中添加备注列 **影响**: ⚠️ 需要根据业务需求确认是否在导出中包含备注 --- ## 📝 修改优先级 ### 高优先级(必须修改) 1. ✅ 数据库表结构修改 2. ✅ 实体类 `LqXhHyhkEntity.cs` 3. ✅ DTO类: - `LqXhHyhkCrInput.cs` - `LqXhHyhkInfoOutput.cs` - `LqXhHyhkListOutput.cs` 4. ✅ Service `GetList` 方法中的 Select 语句 5. ✅ 前端表单页面 `Form.vue` 6. ✅ 前端详情页面 `detail.vue` ### 中优先级(建议修改) 7. ⚠️ 前端列表页面 `index.vue`(根据业务需求) 8. ⚠️ 导出功能(根据业务需求) ### 低优先级(可选修改) 9. ⚠️ 其他 Service 检查(根据实际使用情况) --- ## 🔍 测试检查清单 修改完成后,需要测试以下功能: - [ ] 创建耗卡记录时,可以输入备注 - [ ] 更新耗卡记录时,可以修改备注 - [ ] 查询耗卡详情时,可以显示备注 - [ ] 查询耗卡列表时,可以显示备注(如果列表包含) - [ ] 备注字段可以为空 - [ ] 备注字段长度限制正确(500字符) - [ ] 前端表单验证正常 - [ ] 数据库字段添加成功 --- ## 📌 注意事项 1. **字段命名**: 使用 `F_Remark` 作为数据库字段名,`Remark` 作为实体类属性名,`remark` 作为 DTO 属性名(小写开头,符合现有命名规范) 2. **字段长度**: 建议使用 `VARCHAR(500)`,如果可能超过500字符,可以使用 `TEXT` 类型 3. **兼容性**: 新增字段为可空字段,不会影响现有数据 4. **自动映射**: Create 和 Update 方法使用 `Adapt` 自动映射,只要 DTO 包含字段即可自动支持 5. **列表查询**: GetList 方法中有多个 Select 语句,需要全部添加备注字段 6. **前端显示**: 备注内容可能较长,建议使用 `textarea` 输入,使用 `show-overflow-tooltip` 或单独卡片显示 --- ## 📚 相关文件清单 ### 后端文件 1. `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_xh_hyhk/LqXhHyhkEntity.cs` 2. `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkCrInput.cs` 3. `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkInfoOutput.cs` 4. `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkListOutput.cs` 5. `netcore/src/Modularity/Extend/NCC.Extend/LqXhHyhkService.cs` ### 前端文件 1. `antis-ncc-admin/src/views/lqXhHyhk/Form.vue` 2. `antis-ncc-admin/src/views/lqXhHyhk/detail.vue` 3. `antis-ncc-admin/src/views/lqXhHyhk/index.vue`(可选) ### 数据库 1. `lq_xh_hyhk` 表结构修改 --- ## ✅ 总结 本次修改涉及: - **数据库**: 1个表 - **后端实体类**: 1个 - **后端DTO**: 3个 - **后端Service**: 1个(多个方法) - **前端页面**: 2-3个 预计修改工作量:**中等**(主要是重复性的字段添加和映射)