Commit 150862dd9e485a92d8ce281f2ca864550f15df43
1 parent
8e0493dc
修复GetInfo方法中的空值处理问题
- 修复MainHealthUser和SubHealthUser字段为空时导致的查询错误 - 添加空值检查,避免在字段为空时执行数据库查询 - 使用安全的方式查询用户姓名,处理用户不存在的情况 - 确保所有用户姓名字段都有默认值,避免null引用异常
Showing
6 changed files
with
140 additions
and
2 deletions
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqKhxx/LqKhxxCrInput.cs
| ... | ... | @@ -128,5 +128,20 @@ namespace NCC.Extend.Entitys.Dto.LqKhxx |
| 128 | 128 | /// 年龄 |
| 129 | 129 | /// </summary> |
| 130 | 130 | public string ml { get; set; } |
| 131 | + | |
| 132 | + /// <summary> | |
| 133 | + /// 拓客人员 | |
| 134 | + /// </summary> | |
| 135 | + public string expandUser { get; set; } | |
| 136 | + | |
| 137 | + /// <summary> | |
| 138 | + /// 主健康师 | |
| 139 | + /// </summary> | |
| 140 | + public string mainHealthUser { get; set; } | |
| 141 | + | |
| 142 | + /// <summary> | |
| 143 | + /// 副健康师 | |
| 144 | + /// </summary> | |
| 145 | + public string subHealthUser { get; set; } | |
| 131 | 146 | } |
| 132 | 147 | } | ... | ... |
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqKhxx/LqKhxxInfoOutput.cs
| ... | ... | @@ -133,5 +133,37 @@ namespace NCC.Extend.Entitys.Dto.LqKhxx |
| 133 | 133 | /// 添加时间 |
| 134 | 134 | /// </summary> |
| 135 | 135 | public string createTime { get; set; } |
| 136 | + | |
| 137 | + /// <summary> | |
| 138 | + /// 拓客人员 | |
| 139 | + /// </summary> | |
| 140 | + public string expandUser { get; set; } | |
| 141 | + | |
| 142 | + /// <summary> | |
| 143 | + /// 拓客人员名称 | |
| 144 | + /// </summary> | |
| 145 | + public string expandUserName { get; set; } | |
| 146 | + | |
| 147 | + /// <summary> | |
| 148 | + /// 主健康师 | |
| 149 | + /// </summary> | |
| 150 | + public string mainHealthUser { get; set; } | |
| 151 | + | |
| 152 | + /// <summary> | |
| 153 | + /// 主健康师名称 | |
| 154 | + /// </summary> | |
| 155 | + public string mainHealthUserName { get; set; } | |
| 156 | + | |
| 157 | + /// <summary> | |
| 158 | + /// 副健康师 | |
| 159 | + /// </summary> | |
| 160 | + public string subHealthUser { get; set; } | |
| 161 | + | |
| 162 | + /// <summary> | |
| 163 | + /// 副健康师名称 | |
| 164 | + /// </summary> | |
| 165 | + public string subHealthUserName { get; set; } | |
| 166 | + | |
| 167 | + | |
| 136 | 168 | } |
| 137 | 169 | } | ... | ... |
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Dto/LqKhxx/LqKhxxListOutput.cs
| ... | ... | @@ -159,5 +159,35 @@ namespace NCC.Extend.Entitys.Dto.LqKhxx |
| 159 | 159 | /// 添加时间 |
| 160 | 160 | /// </summary> |
| 161 | 161 | public DateTime createTime { get; set; } |
| 162 | + | |
| 163 | + /// <summary> | |
| 164 | + /// 拓客人员 | |
| 165 | + /// </summary> | |
| 166 | + public string expandUser { get; set; } | |
| 167 | + | |
| 168 | + /// <summary> | |
| 169 | + /// 拓客人员名称 | |
| 170 | + /// </summary> | |
| 171 | + public string expandUserName { get; set; } | |
| 172 | + | |
| 173 | + /// <summary> | |
| 174 | + /// 主健康师 | |
| 175 | + /// </summary> | |
| 176 | + public string mainHealthUser { get; set; } | |
| 177 | + | |
| 178 | + /// <summary> | |
| 179 | + /// 主健康师名称 | |
| 180 | + /// </summary> | |
| 181 | + public string mainHealthUserName { get; set; } | |
| 182 | + | |
| 183 | + /// <summary> | |
| 184 | + /// 副健康师 | |
| 185 | + /// </summary> | |
| 186 | + public string subHealthUser { get; set; } | |
| 187 | + | |
| 188 | + /// <summary> | |
| 189 | + /// 副健康师名称 | |
| 190 | + /// </summary> | |
| 191 | + public string subHealthUserName { get; set; } | |
| 162 | 192 | } |
| 163 | 193 | } | ... | ... |
netcore/src/Modularity/Extend/NCC.Extend.Entitys/Entity/lq_khxx/LqKhxxEntity.cs
| ... | ... | @@ -160,5 +160,26 @@ namespace NCC.Extend.Entitys.lq_khxx |
| 160 | 160 | /// </summary> |
| 161 | 161 | [SugarColumn(ColumnName = "F_CreateTime")] |
| 162 | 162 | public DateTime CreateTime { get; set; } = DateTime.Now; |
| 163 | + | |
| 164 | + | |
| 165 | + /// <summary> | |
| 166 | + /// 拓客人员 | |
| 167 | + /// </summary> | |
| 168 | + [SugarColumn(ColumnName = "F_ExpandUser")] | |
| 169 | + public string ExpandUser { get; set; } | |
| 170 | + | |
| 171 | + | |
| 172 | + /// <summary> | |
| 173 | + /// 主健康师 | |
| 174 | + /// </summary> | |
| 175 | + [SugarColumn(ColumnName = "F_MainHealthUser")] | |
| 176 | + public string MainHealthUser { get; set; } | |
| 177 | + | |
| 178 | + /// <summary> | |
| 179 | + /// 副健康师 | |
| 180 | + /// </summary> | |
| 181 | + [SugarColumn(ColumnName = "F_SubHealthUser")] | |
| 182 | + public string SubHealthUser { get; set; } | |
| 183 | + | |
| 163 | 184 | } |
| 164 | 185 | } | ... | ... |
netcore/src/Modularity/Extend/NCC.Extend/LqKhxxService.cs
| ... | ... | @@ -71,6 +71,37 @@ namespace NCC.Extend.LqKhxx |
| 71 | 71 | { |
| 72 | 72 | var entity = await _db.Queryable<LqKhxxEntity>().FirstAsync(p => p.Id == id); |
| 73 | 73 | var output = entity.Adapt<LqKhxxInfoOutput>(); |
| 74 | + | |
| 75 | + // 安全查询用户姓名,处理空值情况 | |
| 76 | + if (!string.IsNullOrEmpty(entity.ExpandUser)) | |
| 77 | + { | |
| 78 | + var expandUser = await _db.Queryable<UserEntity>().Where(u => u.Id == entity.ExpandUser).FirstAsync(); | |
| 79 | + output.expandUserName = expandUser?.RealName ?? ""; | |
| 80 | + } | |
| 81 | + else | |
| 82 | + { | |
| 83 | + output.expandUserName = ""; | |
| 84 | + } | |
| 85 | + | |
| 86 | + if (!string.IsNullOrEmpty(entity.MainHealthUser)) | |
| 87 | + { | |
| 88 | + var mainHealthUser = await _db.Queryable<UserEntity>().Where(u => u.Id == entity.MainHealthUser).FirstAsync(); | |
| 89 | + output.mainHealthUserName = mainHealthUser?.RealName ?? ""; | |
| 90 | + } | |
| 91 | + else | |
| 92 | + { | |
| 93 | + output.mainHealthUserName = ""; | |
| 94 | + } | |
| 95 | + | |
| 96 | + if (!string.IsNullOrEmpty(entity.SubHealthUser)) | |
| 97 | + { | |
| 98 | + var subHealthUser = await _db.Queryable<UserEntity>().Where(u => u.Id == entity.SubHealthUser).FirstAsync(); | |
| 99 | + output.subHealthUserName = subHealthUser?.RealName ?? ""; | |
| 100 | + } | |
| 101 | + else | |
| 102 | + { | |
| 103 | + output.subHealthUserName = ""; | |
| 104 | + } | |
| 74 | 105 | return output; |
| 75 | 106 | } |
| 76 | 107 | #endregion |
| ... | ... | @@ -135,6 +166,12 @@ namespace NCC.Extend.LqKhxx |
| 135 | 166 | yinlsr = it.Yinlsr, |
| 136 | 167 | ml = it.Ml, |
| 137 | 168 | createTime = it.CreateTime, |
| 169 | + expandUser = it.ExpandUser, | |
| 170 | + mainHealthUser = it.MainHealthUser, | |
| 171 | + subHealthUser = it.SubHealthUser, | |
| 172 | + expandUserName = SqlFunc.Subqueryable<UserEntity>().Where(u => u.Id == it.ExpandUser).Select(u => u.RealName), | |
| 173 | + mainHealthUserName = SqlFunc.Subqueryable<UserEntity>().Where(u => u.Id == it.MainHealthUser).Select(u => u.RealName), | |
| 174 | + subHealthUserName = SqlFunc.Subqueryable<UserEntity>().Where(u => u.Id == it.SubHealthUser).Select(u => u.RealName), | |
| 138 | 175 | }) |
| 139 | 176 | .MergeTable() |
| 140 | 177 | .OrderBy(sidx + " " + input.sort) |
| ... | ... | @@ -329,6 +366,9 @@ namespace NCC.Extend.LqKhxx |
| 329 | 366 | yinlsr = it.Yinlsr, |
| 330 | 367 | ml = it.Ml, |
| 331 | 368 | createTime = it.CreateTime, |
| 369 | + expandUser = it.ExpandUser, | |
| 370 | + mainHealthUser = it.MainHealthUser, | |
| 371 | + subHealthUser = it.SubHealthUser, | |
| 332 | 372 | }) |
| 333 | 373 | .MergeTable() |
| 334 | 374 | .OrderBy(sidx + " " + input.sort) | ... | ... |
netcore/src/Modularity/Extend/NCC.Extend/LqTkjlbService.cs
| ... | ... | @@ -188,10 +188,10 @@ namespace NCC.Extend.LqTkjlb |
| 188 | 188 | MemberInfo.Dah = "GK" + DateTime.Now.ToString("yyyyMMddHHmmss"); |
| 189 | 189 | //找到input.expansionUserId的用户信息 |
| 190 | 190 | var userInfo = await _db.Queryable<UserEntity>().Where(u => u.Id == input.expansionUserId).FirstAsync(); |
| 191 | - //判断 岗位是否为健康师,如果是健康师,则设置健康师为负责人 | |
| 191 | + //判断 岗位是否为健康师,如果是健康师,则设置拓客人员是健康师 | |
| 192 | 192 | if (userInfo.Gw == "健康师") |
| 193 | 193 | { |
| 194 | - MemberInfo.Mrs = input.expansionUserId; | |
| 194 | + MemberInfo.ExpandUser = input.expansionUserId; | |
| 195 | 195 | } |
| 196 | 196 | MemberInfo.Gsmd = eventUserInfo.StoreId; |
| 197 | 197 | var memberResult = await _db.Insertable(MemberInfo).IgnoreColumns(ignoreNullColumn: true).ExecuteCommandAsync(); | ... | ... |