Blame view

项目文档相关/docs/lq_xh_hyhk表添加备注字段-修改清单.md 11 KB
55bd8d57   “wangming”   fix: 修复全员战报明细到店数统...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
  # 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
  /// <summary>
  /// 备注
  /// </summary>
  [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
  /// <summary>
  /// 备注
  /// </summary>
  public string remark { get; set; }
  ```
  
  **位置**: 建议添加在 `appointmentId` 字段之后(第90行之后)
  
  ---
  
  #### 3.2 详情输出DTO
  
  **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkInfoOutput.cs`
  
  **修改内容**: 添加备注字段
  
  ```csharp
  /// <summary>
  /// 备注
  /// </summary>
  public string remark { get; set; }
  ```
  
  **位置**: 建议添加在 `cancelRemark` 字段之后(第113行之后)
  
  ---
  
  #### 3.3 列表输出DTO
  
  **文件**: `netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqXhHyhk/LqXhHyhkListOutput.cs`
  
  **修改内容**: 添加备注字段
  
  ```csharp
  /// <summary>
  /// 备注
  /// </summary>
  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>()` 自动映射,无需手动修改
  - 但需要确保 `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<LqXhHyhkEntity>()` 自动映射,无需手动修改
  - 但需要确保 `LqXhHyhkCrInput` 已包含 `remark` 字段
  
  **影响**: ✅ 自动支持(通过 Adapt 映射)
  
  ---
  
  #### 4.4 Update 方法(更新记录)
  
  **位置**: 第1259行 `Update(string id, [FromBody] LqXhHyhkUpInput input)`
  
  **修改说明**: 
  - 使用 `input.Adapt<LqXhHyhkEntity>()` 自动映射,无需手动修改
  - 但需要确保 `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
  <el-col :span="24">
    <el-form-item label="备注" prop="remark">
      <el-input 
        v-model="dataForm.remark" 
        type="textarea" 
        :rows="3"
        placeholder="请输入备注信息" 
        clearable 
        :style='{"width":"100%"}'
        maxlength="500"
        show-word-limit>
      </el-input>
    </el-form-item>
  </el-col>
  ```
  
  **需要修改的位置**:
  -`dataForm` 对象中添加 `remark: ''`
  - 在表单模板中添加备注输入框(建议在第86行之后,第94行之前)
  
  ---
  
  #### 6.2 详情页面
  
  **文件**: `antis-ncc-admin/src/views/lqXhHyhk/detail.vue`
  
  **修改内容**: 
  - 在详情页面中显示备注信息
  - 位置建议:在"费用信息"卡片之后,或单独一个"备注信息"卡片
  
  **代码示例**:
  ```vue
  <!-- 备注信息卡片 -->
  <el-card class="info-card" shadow="hover" v-if="dataForm.remark">
    <div slot="header" class="card-header">
      <i class="el-icon-edit-outline"></i>
      <span class="card-title">备注信息</span>
    </div>
    <div class="info-item">
      <p class="remark-content">{{ dataForm.remark || '无' }}</p>
    </div>
  </el-card>
  ```
  
  **需要修改的位置**:
  - 在详情数据绑定中添加备注字段的显示(建议在第88行之后)
  
  ---
  
  #### 6.3 列表页面
  
  **文件**: `antis-ncc-admin/src/views/lqXhHyhk/index.vue`
  
  **修改内容**: 
  - 在列表表格中添加备注列(可选,根据业务需求)
  - 如果备注内容较长,可以考虑使用 tooltip 显示完整内容
  
  **代码示例**:
  ```vue
  <el-table-column prop="remark" label="备注" width="200" show-overflow-tooltip>
    <template slot-scope="scope">
      <span>{{ scope.row.remark || '无' }}</span>
    </template>
  </el-table-column>
  ```
  
  **需要修改的位置**:
  - 在表格列定义中添加备注列(根据实际表格结构确定位置)
  
  ---
  
  ### 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个
  
  预计修改工作量:**中等**(主要是重复性的字段添加和映射)