Beispiel #1
0
        public static IdentityResult CreateUser(User userModel, ref int id)
        {
            AuctionContext db = new AuctionContext();
            // Validate model
            // check if there is a user with the same login and password
            var IsExist = db.User.Any(item => item.Password == userModel.Password && item.Login == userModel.Login);

            if (IsExist)
            {
                throw new BadRequestException("there is a user with the same login and password");
            }

            // Register new user
            db.User.Add(userModel);
            db.SaveChanges();

            // Get User_id of created user
            id = db.User.OrderByDescending(item => item.UserId).Select(item => item.UserId).FirstOrDefault();

            // Create default user configuration with default fields
            User_Configuration localConfiguration = new User_Configuration();

            localConfiguration.UserId          = (short)id;
            localConfiguration.AuctionFinished = false;
            localConfiguration.BidPlacedHigher = false;
            localConfiguration.BidWinLot       = false;
            db.User_Configuration.Add(localConfiguration);
            db.SaveChanges();

            IdentityResult result = new IdentityResult();

            return(result);
        }
Beispiel #2
0
        public User_Configuration PutUserConfigurations(short?userId, User_Configuration configuration)
        {
            // find users configuration
            var currentUserConfiguration = unitOfWork.User_Configuration.dbSet.Where(item => item.UserId == userId).FirstOrDefault();

            if (currentUserConfiguration == null)
            {
                //post new configurations
                configuration.UserId = userId.Value;
                unitOfWork.User_Configuration.dbSet.Add(configuration);
            }
            else
            {
                // Update configurations
                currentUserConfiguration.AuctionFinished = configuration.AuctionFinished;
                currentUserConfiguration.BidPlacedHigher = configuration.BidPlacedHigher;
                currentUserConfiguration.BidWinLot       = configuration.BidWinLot;
            }
            unitOfWork.Save();

            return(configuration);
        }
Beispiel #3
0
        public virtual IHttpActionResult UserConfigurationPut([FromBody] User_Configuration userConfigurations)
        {
            var result = new UserConfigurationService().PutUserConfigurations(UserId, userConfigurations);

            return(Ok(result));
        }
Beispiel #4
0
        public virtual IHttpActionResult UserConfigurationPost([FromBody] User_Configuration userConfigurations)
        {
            var result = new UserConfigurationService().PostUserConfigurations(UserId, userConfigurations);

            return(Created("", result));
        }