fix 增加userId处理
This commit is contained in:
@@ -24,7 +24,7 @@ public class OrderAddRequest : IValidatableObject
|
||||
/// <summary>
|
||||
/// 档案号/QrCode/学工号
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "人员档案号/QrCode/学工号/userId 不能为空")]
|
||||
[Required(ErrorMessage = "人员档案号/QrCode/学工号不能为空")]
|
||||
public string UserUniqueNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
@@ -44,6 +44,9 @@ public class OrderAddRequest : IValidatableObject
|
||||
/// </summary>
|
||||
public DateTime? CostDateTime { get; set; }
|
||||
|
||||
|
||||
public bool IsUserId { get; set; }
|
||||
|
||||
|
||||
public string Image { get; set; }
|
||||
|
||||
|
||||
@@ -46,20 +46,19 @@ public class OrderService : BaseOrderService, IOrderService
|
||||
//尝试匹配userId
|
||||
var s = long.TryParse(request.UserUniqueNo, out var userId);
|
||||
|
||||
// if (request.Source == BalanceRecordSourceEnumType.QrCode)
|
||||
// {
|
||||
// request.UserUniqueNo = await GetUserNoByQrCodeAsync(request.UserUniqueNo);
|
||||
// }
|
||||
|
||||
//根据档案号
|
||||
var gainfo = await DbContext.Queryable<GainfoEntity>()
|
||||
.Where(x => x.Code == request.UserUniqueNo || x.Id == userId || x.CardNo == request.UserUniqueNo)
|
||||
.WhereIF(request.Source == BalanceRecordSourceEnumType.Card, x => x.CardNo == request.UserUniqueNo)
|
||||
.WhereIF(request.Source != BalanceRecordSourceEnumType.Card && !request.IsUserId, x => x.Code == request.UserUniqueNo)
|
||||
.WhereIF(request.Source != BalanceRecordSourceEnumType.Card && request.IsUserId && s, x => x.Id == userId)
|
||||
.FirstAsync();
|
||||
|
||||
if (gainfo == null && s && request.IsOffline)
|
||||
if (gainfo == null && request.IsOffline)
|
||||
{
|
||||
await DbContext.Queryable<GainfoEntity>().AS("GainfoLeave")
|
||||
.Where(x => x.Code == request.UserUniqueNo || x.Id == userId || x.CardNo == request.UserUniqueNo)
|
||||
gainfo = await DbContext.Queryable<GainfoEntity>().AS("GainfoLeave")
|
||||
.WhereIF(request.Source == BalanceRecordSourceEnumType.Card, x => x.CardNo == request.UserUniqueNo)
|
||||
.WhereIF(request.Source != BalanceRecordSourceEnumType.Card && !request.IsUserId, x => x.Code == request.UserUniqueNo)
|
||||
.WhereIF(request.Source != BalanceRecordSourceEnumType.Card && request.IsUserId && s, x => x.IdentityUserId == userId)
|
||||
.FirstAsync();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user