Beispiel #1
0
        public IActionResult Insert(MentorInsertModel mentorInsertModel)
        {
            BaseResponseDto responseDto = null;

            if (mentorInsertModel == null)
            {
                return(BadRequest("Mentor info must not be null"));
            }

            try
            {
                responseDto = _mentor.Insert(mentorInsertModel);
            }
            catch (Exception e)
            {
                return(StatusCode(500, e));
            }

            return(Ok(responseDto.Message));
        }
        public BaseResponseDto Insert(MentorInsertModel mentorInsertModel)
        {
            BaseResponseDto responseDto = null;

            #region Check input
            if (mentorInsertModel == null)
            {
                responseDto = new BaseResponseDto
                {
                    Status  = 1,
                    Message = "Faulthy mentor info"
                };
                return(responseDto);
            }
            #endregion

            #region Insert mentor into database
            Guid userId   = Guid.NewGuid();
            Guid mentorId = Guid.NewGuid();
            try
            {
                Mentor newMentor = new Mentor
                {
                    MentorId = mentorId,
                    UserId   = userId,
                    User     = new User
                    {
                        UserId      = userId,
                        Email       = mentorInsertModel.User.Email,
                        Fullname    = mentorInsertModel.User.Fullname,
                        YearOfBirth = mentorInsertModel.User.YearOfBirth,
                        AvatarUrl   = mentorInsertModel.User.AvatarUrl,
                        Balance     = 0,
                        Phone       = mentorInsertModel.User.Phone,
                        Description = ""
                    },
                    Rating = new Rating
                    {
                        MentorId    = mentorId,
                        RatingCount = 0,
                        RatingScore = 0
                    },
                    IsDisable = false
                };

                _uow.GetRepository <Mentor>().Insert(newMentor);
                _uow.Commit();
            }
            catch (Exception e)
            {
                throw e;
            }
            #endregion


            string jwtToken = tokenManager.CreateUserAccessToken(new UserAuthModel
            {
                Id       = mentorId,
                Email    = mentorInsertModel.User.Email,
                RoleName = "mentor"
            });


            responseDto = new BaseResponseDto
            {
                Status  = 0,
                Message = jwtToken
            };

            return(responseDto);
        }