예제 #1
0
        public async Task <IActionResult> EditTutorStatus(long id, bool IsActive)
        {
            using (var txscope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
            {
                try
                {
                    var result = _tutorService.GetSingle(x => x.Id == id);
                    result.IsActive = IsActive;
                    var updateResult = await _tutorService.UpdateAsync(result, Accessor, User.GetUserId());

                    if (updateResult != null)
                    {
                        //StaffLog
                        if (User.IsInRole(UserRoles.Staff))
                        {
                            await _staffLog.InsertAsync(new Log { CreatedDate = DateTime.UtcNow, StaffId = User.GetUserId(), Description = ResponseConstants.UpdateTutorStatus }, Accessor, User.GetUserId());
                        }
                        txscope.Complete();
                        return(JsonResponse.GenerateJsonResult(1, ResponseConstants.UpdateTutorStatus));
                    }
                    else
                    {
                        txscope.Dispose();
                        return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                    }
                }
                catch (Exception ex)
                {
                    txscope.Dispose();
                    ErrorLog.AddErrorLog(ex, "EditTutorStatus");
                    return(JsonResponse.GenerateJsonResult(0, ResponseConstants.SomethingWrong));
                }
            }
        }
        public async Task <IActionResult> PutAsync(int tutorId, [FromBody] SaveTutorResource resource)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.GetErrorMessages()));
            }

            var tutor  = _mapper.Map <SaveTutorResource, Tutor>(resource);
            var result = await _tutorService.UpdateAsync(tutorId, tutor);

            if (!result.Success)
            {
                return(BadRequest(result.Message));
            }

            var tutorResource = _mapper.Map <Tutor, TutorResource>(result.Resource);

            return(Ok(tutorResource));
        }