public async Task <ApiResult <EventViewModel> > GetEvent(ScoreParam model) { IQueryable <Events> evt = _ctx.Events.Where(x => x.ActionCode == model.ActionCode && x.RoomCode == model.RoomCode); if (!string.IsNullOrEmpty(model.DeseaseCode)) { evt = evt.Where(x => x.DeseaseCode == model.DeseaseCode); } evt = evt.Where(x => x.Start <= model.EventTime && x.Finish >= model.EventTime); if (evt == null && !await evt.AnyAsync()) { return new ApiResult <EventViewModel> { Errors = new List <Error> { new Error { Message = ErrorCodes.BUSSINESS_CODE_EVENT_NOT_FOUND } } } } ; return(new ApiResult <EventViewModel> { Data = await evt .Select(x => new EventViewModel { EventId = x.Id, ActionCode = x.ActionCode, DeseaseCode = x.DeseaseCode, EndDate = x.Finish, StartDate = x.Start, Value = x.Value }).FirstOrDefaultAsync(CancellationToken.None) }); } }
public async Task <dynamic> ChangeScore([FromBody] ScoreParam model) { try { if (User == null) { HttpContext.Response.StatusCode = 401; return(new ApiResult <SuccessResult>() { Errors = new List <Error> { new Error { Message = ErrorCodes.UNAUTHORIZED } } }); } var claim = User.Claims .Where(_ => _.Type.Equals(AppConsts.USER_ID)) .Select(_ => _.Value) .FirstOrDefault(); if (string.IsNullOrWhiteSpace(claim)) { HttpContext.Response.StatusCode = 401; return(new ApiResult <SuccessResult>() { Errors = new List <Error> { new Error { Message = ErrorCodes.UNAUTHORIZED } } }); } if (long.TryParse(claim, out long userId)) { model.UserId = userId; } else { HttpContext.Response.StatusCode = 400; return(new ApiResult <SuccessResult>() { Errors = new List <Error> { new Error { Message = ErrorCodes.PROTOCOL_INCORRECT } } }); } var result = await _scoreProvider.UpdateScoreAsync(model); return(result); } catch (Exception) { HttpContext.Response.StatusCode = 400; return(new ApiResult <SuccessResult> { Errors = new List <Error> { new Error { Message = ErrorCodes.PROTOCOL_INCORRECT } } }); } }