| | |
| | | /// <returns></returns> |
| | | public async Task<LoginCommandCallback> Handle(WxmpLoginCommand request, CancellationToken cancellationToken) |
| | | { |
| | | if (request.Type == EnumUserType.Operation) |
| | | { |
| | | throw Oops.Oh(EnumErrorCodeType.s400, "不支持该类型账号登录"); |
| | | } |
| | | var snsJscode2session = await wxmpUtils.SnsJscode2sessionAsync(request.Type, request.Code, cancellationToken); |
| | | var user = await rep.AsQueryable().AsNoTracking() |
| | | .Where(it => it.WxmpOpenId == snsJscode2session.openid && it.Type == request.Type) |
| | |
| | | .FirstOrDefaultAsync(cancellationToken); |
| | | if (bindPhoneNumberUser == null) |
| | | { |
| | | if (logier.Type == EnumUserType.Enterprise) |
| | | { |
| | | throw Oops.Oh(EnumErrorCodeType.s404, "该账号"); |
| | | } |
| | | user.PhoneNumber = info.PhoneNumber; |
| | | user.ContactPhoneNumber = info.PhoneNumber; |
| | | user.IsCheckPhoneNumber = true; |