public async Task <IHttpActionResult> PostUserActivity(ViewModels.UserActivityX dto) { // return Ok(client); if (dto == null) { return(Exceptions.getNullException(ModelState)); } if (!ModelState.IsValid) { // return BadRequest(ModelState); return(Exceptions.getModelValidationException(ModelState)); } var validate = unitOfWork.UserActivityRepository.Validate(dto); if (validate.Code != HttpStatusCode.OK) { return(validate); } var entity = new UserActivity(); unitOfWork.UserActivityRepository.Insert(entity); ViewModels.UserActivityX.Fill(entity, dto); if (dto.IsMain) { var entity2 = await unitOfWork.UserActivityRepository.GetMenuHitsByDto(dto); if (entity2 == null) { entity2 = new UserActivityMenuHit(); unitOfWork.UserActivityRepository.Insert(entity2); ViewModels.UserActivityMenuHitX.FillByUserActivityDto(entity2, dto); } else { entity2.Hit++; entity2.DateLastHit = DateTime.Now; } } var saveResult = await unitOfWork.SaveAsync(); if (saveResult.Code != HttpStatusCode.OK) { return(saveResult); } return(Ok(dto)); }
public virtual void Insert(UserActivityMenuHit entity) { this.context.UserActivityMenuHits.Add(entity); }