Commit 150862dd9e485a92d8ce281f2ca864550f15df43

Authored by “wangming”
1 parent 8e0493dc

修复GetInfo方法中的空值处理问题

- 修复MainHealthUser和SubHealthUser字段为空时导致的查询错误
- 添加空值检查,避免在字段为空时执行数据库查询
- 使用安全的方式查询用户姓名,处理用户不存在的情况
- 确保所有用户姓名字段都有默认值,避免null引用异常
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();
... ...