/// <summary> /// /// </summary> /// <param name="like"></param> /// <returns></returns> public async Task <HttpStatusCode> UpdateArticleLike(UpdateLikeModel like) { try { LikeDbModel likeDbModel = new LikeDbModel() .SetArticleId(like.ArticleId) .SetTimeStamp(DateTimeOffset.UtcNow) .SetUserId(like.UserId) .SetCurrentState(like.CurrentState); likeDbModel.LikeId = like.LikeId; RequestValidator requestValidator = new RequestValidator() .SetRequestValidator(likeDbModel) .ValidateAnyNull(); if (requestValidator.isValidRequest) { likeDbModel = await articleDataService.UpdateArticleLikes(likeDbModel); } //Update the Redis articleDataService.UpdateRedis(likeDbModel.ArticleId, true); return(HttpStatusCode.Created); } catch (Exception) { throw; } }
public async Task <LikeDbModel> UpdateArticleLikes(LikeDbModel like) { try { var result = await genericRepository.UpdateAsync(like); return(result); } catch (NpgsqlException) { //Logging Mechanism throw; } }
public RequestValidator SetRequestValidator(LikeDbModel likeDbModel) { this.isValidRequest = true; this.LikeDbModel = likeDbModel; return(this); }