示例#1
0
        public async Task <UserDescription> AddUserDescriptionAsync(AddUserDescriptionViewModel model,
                                                                    CancellationToken cancellationToken = default(CancellationToken))
        {
            // Get user profile.
            var profile = _dbContext.Users.FindAsync(model.Id, cancellationToken);

            if (profile == null)
            {
                throw new Exception();
            }

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = profile.Id;
            userDescription.Description = model.Description;

            // Add the description into database.
            userDescription = _dbContext.UserDescriptions.Add(userDescription);

            // Save changes into database.
            await _dbContext.SaveChangesAsync(cancellationToken);

            return(userDescription);
        }
        public async Task <IHttpActionResult> AddUserDescription([FromBody] AddUserDescriptionViewModel model)
        {
            if (model == null)
            {
                model = new AddUserDescriptionViewModel();
                Validate(model);
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // Get user profile.
            var profile = _profileService.GetProfile(Request);

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = profile.Id;
            userDescription.Description = model.Description;

            // Add the description into database.
            _unitOfWork.UserDescriptions.Insert(userDescription);

            // Save changes into database.
            await _unitOfWork.CommitAsync();

            return(Ok(userDescription));
        }
        /// <summary>
        /// <inheritdoc />
        /// </summary>
        /// <param name="model"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public virtual async Task <UserDescription> AddUserDescriptionAsync(AddUserDescriptionViewModel model,
                                                                            CancellationToken cancellationToken = default(CancellationToken))
        {
            if (model.UserId == null || model.UserId < 1)
            {
                throw new HttpException((int)HttpStatusCode.NotFound, HttpMessages.UserNotFound);
            }

            var users = _unitOfWork.Users.Search();

            users = users.Where(x => x.Id == model.UserId && x.Status == UserStatuses.Active);

            var user = await users.FirstOrDefaultAsync(cancellationToken);

            if (user == null)
            {
                throw new HttpException((int)HttpStatusCode.NotFound, HttpMessages.UserNotFound);
            }

            // Add user description into database.
            var userDescription = new UserDescription();

            userDescription.UserId      = model.UserId.Value;
            userDescription.Description = model.Description;

            // Add the description into database.
            _unitOfWork.UserDescriptions.Insert(userDescription);

            // Save changes into database.
            await _unitOfWork.CommitAsync();

            return(userDescription);
        }
        public async Task <IHttpActionResult> AddUserDescription([FromBody] AddUserDescriptionViewModel model)
        {
            if (model == null)
            {
                model = new AddUserDescriptionViewModel();
                Validate(model);
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // Get user profile.
            var profile = _profileService.GetProfile(Request);

            if (profile.Role != UserRoles.Admin)
            {
                model.UserId = profile.Id;
            }

            var userDescription = await _userDescriptionService.AddUserDescriptionAsync(model);

            return(Ok(userDescription));
        }
示例#5
0
        public async Task <IHttpActionResult> AddUserDescription([FromBody] AddUserDescriptionViewModel model)
        {
            if (model == null)
            {
                model = new AddUserDescriptionViewModel();
                Validate(model);
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var userDescription = await _userDesciptionDomain.AddUserDescriptionAsync(model);

            return(Ok(userDescription));
        }