public async Task <ApiResponse> CreateTrainingPlan(TrainingPlanVm trainingPlanVm)
        {
            var owner = _unitOfWork.userRepository.FindByCondition(x => x.Id == trainingPlanVm.OwnerId).FirstOrDefault();

            if (owner == null)
            {
                throw new MyNotFoundException(ApiResponseDescription.USER_NOT_FOUND);
            }

            var creator = _unitOfWork.userRepository.FindByCondition(x => x.Id == trainingPlanVm.CreatorId).FirstOrDefault();

            if (creator == null)
            {
                throw new MyNotFoundException(ApiResponseDescription.USER_NOT_FOUND);
            }

            trainingPlanVm.ModifiedAt = DateTime.Now;

            var res = _mapper.Map <TrainingPlan>(trainingPlanVm);

            _unitOfWork.trainingPlanRepository.Create(res);

            await _unitOfWork.CompleteAsync();

            return(new ApiResponse(true));
        }
        public async Task <ApiResponse> EditTrainingPlan(string id, TrainingPlanVm trainingPlanVm)
        {
            var user = _unitOfWork.userRepository.FindByCondition(x => x.Id == id).FirstOrDefault();

            if (user == null)
            {
                throw new MyNotFoundException(ApiResponseDescription.USER_NOT_FOUND);
            }

            var plan = _unitOfWork.trainingPlanRepository.GetTrainingPlan(trainingPlanVm.Id).FirstOrDefault();

            if (plan == null)
            {
                throw new MyNotFoundException(ApiResponseDescription.TRAINING_PLAN_NOT_FOUND);
            }

            plan = _mapper.Map <TrainingPlan>(trainingPlanVm);

            _unitOfWork.trainingPlanRepository.Update(plan);
            //_unitOfWork.trainingPlanRepository.Detach(plan);
            await _unitOfWork.CompleteAsync();

            return(new ApiResponse(true));
        }
Пример #3
0
 public async Task <IActionResult> CreateTrainingPlan([FromBody] TrainingPlanVm trainingPlanVm) =>
 Ok(await _trainingPlanService.CreateTrainingPlan(trainingPlanVm));
Пример #4
0
 public async Task <IActionResult> EditTrainingPlan(string Id, [FromBody] TrainingPlanVm trainingPlanVm) =>
 Ok(await _trainingPlanService.EditTrainingPlan(Id, trainingPlanVm));