public async Task <IActionResult> Edit(int id, [Bind("Id,AmountPerHour,AmountPerAcre,userId,MachineId")] UserMachine userMachine)
        {
            if (id != userMachine.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var Machine = await _context.UserMachines.FindAsync(id);

                    userMachine.Distance = Machine.Distance;
                    _context.Update(userMachine);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserMachineExists(userMachine.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["MachineId"] = new SelectList(_context.Machines, "Id", "Id", userMachine.MachineId);
            ViewData["userId"]    = new SelectList(_context.Users, "Id", "UserPhoneNo", userMachine.userId);
            return(View(userMachine));
        }
        public IActionResult UpdateUserMachineData(bool isAdmin, string userID, string[] machineKeys)
        {
            try
            {
                var _user = _context.Users.SingleOrDefault(m => m.UserID == userID);
                if (_user != null)//update
                {
                    _user.IsAdmin = isAdmin;
                    var _userMachine = _context.UserMachines.Where(m => m.UserID == userID).ToList();
                    if (_userMachine != null)
                    {
                        _context.UserMachines.RemoveRange(_userMachine);
                    }
                }
                _context.SaveChanges();

                if (!isAdmin)
                {
                    foreach (string machineKey in machineKeys)
                    {
                        UserMachine userMachine = new UserMachine();
                        userMachine.UserID     = userID;
                        userMachine.MachineKey = machineKey;
                        _context.UserMachines.Add(userMachine);
                    }
                }
                _context.SaveChanges();
                return(Ok("success"));
            }
            catch (Exception ex)
            {
                return(ExceptionHandler(ex, "Update Error."));
            }
        }
Esempio n. 3
0
File: User.cs Progetto: up1/P
                public override void Execute(StateImpl application, PrtMachine _parent)
                {
                    UserMachine      parent  = (UserMachine)(_parent);
                    PrtFunStackFrame currFun = parent.PrtPopFunStackFrame();
                    PrtValue         swap;

                    switch ((currFun).returnToLocation)
                    {
                    case 1:
                        goto AnonFun4_1;
                    }

                    (parent).Driver = (application).CreateInterfaceOrMachine((parent).renamedName, "OSRDriverInterface", Events_1448003977.@null);
                    (parent).PrtFunContNewMachine(this, (currFun).locals, 1);
                    return;

AnonFun4_1:
                    ;
                    if (!!(Events_1448003977.eUnit).Equals(Events_1448003977.@null))
                    {
                        throw new PrtAssertFailureException("C:\\\\Workspace\\\\P\\\\Src\\\\PTester\\\\Regressions\\\\Interfaces\\\\User.p (12, 4): Raised event must be non-null");
                    }
                    Console.Write("<RaiseLog> Machine UserMachine-{0} raised Event {1}\\n", (parent).instanceNumber, (((PrtEventValue)(Events_1448003977.eUnit)).evt).name);
                    (parent).currentTrigger = Events_1448003977.eUnit;
                    (parent).currentPayload = Events_1448003977.@null;
                    (parent).PrtFunContRaise();
                    return;

                    parent.PrtFunContReturn(null);
                }
Esempio n. 4
0
File: User.cs Progetto: up1/P
        public static PrtImplMachine CreateMachine_UserMachine(StateImpl application, PrtValue payload)
        {
            var machine = new UserMachine(application, PrtImplMachine.DefaultMaxBufferSize, false);

            (((machine).self).permissions).Add(Events_1448003977.eOperationFailure);
            (((machine).self).permissions).Add(Events_1448003977.eTimerStopped);
            (((machine).self).permissions).Add(Events_1448003977.eYes);
            (((machine).self).permissions).Add(Events_1448003977.eNo);
            (((machine).self).permissions).Add(Events_1448003977.eSetLedStateToUnstableUsingControlTransfer);
            (((machine).self).permissions).Add(Events_1448003977.eStartDebounceTimer);
            (((machine).self).permissions).Add(Events_1448003977.eSetLedStateToStableUsingControlTransfer);
            (((machine).self).permissions).Add(Events_1448003977.eStoppingSuccess);
            (((machine).self).permissions).Add(Events_1448003977.eStoppingFailure);
            (((machine).self).permissions).Add(Events_1448003977.eOperationSuccess);
            (((machine).self).permissions).Add(Events_1448003977.eUnit);
            (((machine).self).permissions).Add(Events_1448003977.eUpdateBarGraphStateUsingControlTransfer);
            (((machine).self).permissions).Add(Events_1448003977.eStopTimer);
            (((machine).self).permissions).Add(Events_1448003977.eTransferFailure);
            (((machine).self).permissions).Add(Events_1448003977.eTransferSuccess);
            (((machine).self).permissions).Add(Events_1448003977.eSwitchStatusChange);
            (((machine).self).permissions).Add(Events_1448003977.eTimerFired);
            (((machine).self).permissions).Add(Events_1448003977.eD0Exit);
            (((machine).self).permissions).Add(Events_1448003977.eD0Entry);
            ((machine).sends).Add(Events_1448003977.eD0Exit);
            ((machine).sends).Add(Events_1448003977.eD0Entry);
            (machine).currentPayload = payload;
            return(machine);
        }
Esempio n. 5
0
File: User.cs Progetto: up1/P
                public override void Execute(StateImpl application, PrtMachine _parent)
                {
                    UserMachine      parent  = (UserMachine)(_parent);
                    PrtFunStackFrame currFun = parent.PrtPopFunStackFrame();
                    PrtValue         swap;

                    parent.PrtFunContReturn(null);
                }
        public IActionResult UpdateMachineData(MachineUserViewModel machineUserViewModel)
        {
            try
            {
                if (machineUserViewModel.Password == null)
                {
                    return(StatusCode(400, "PasswordIsNull"));
                }
                else
                {
                    byte[] encodedBytes = System.Text.Encoding.UTF8.GetBytes(machineUserViewModel.Password);
                    machineUserViewModel.Password = Convert.ToBase64String(encodedBytes);
                }
                //insert machine table
                Machine machine = new Machine();
                machine.Key         = machineUserViewModel.MachineKey;
                machine.IP          = machineUserViewModel.IP;
                machine.Name        = machineUserViewModel.Name;
                machine.LoginID     = machineUserViewModel.LoginID;
                machine.Password    = machineUserViewModel.Password;
                machine.OS          = machineUserViewModel.OS;
                machine.HostIP      = machineUserViewModel.HostIP;
                machine.Description = machineUserViewModel.Description;

                _context.Update(machine);
                _context.SaveChanges();

                /**Delete MachineKey in intermediary table, Then, Insert new MachineKey and User in intermediary talbe**/
                //Delete
                var _machineUser = _context.UserMachines.Where(um => um.MachineKey == machineUserViewModel.MachineKey).ToList();

                if (_machineUser.Count != 0)
                {
                    _context.UserMachines.RemoveRange(_machineUser);
                    _context.SaveChanges();
                }

                //Insert
                if (machineUserViewModel.AssignUserKeys != null)
                {
                    foreach (var machineUserID in machineUserViewModel.AssignUserKeys)
                    {
                        UserMachine userMachine = new UserMachine();
                        userMachine.MachineKey = machineUserViewModel.MachineKey;
                        userMachine.UserID     = machineUserID;
                        _context.UserMachines.Add(userMachine);
                    }
                    _context.SaveChanges();
                }
                return(Ok("success"));
            }
            catch (Exception ex)
            {
                return(ExceptionHandler(ex, "Update Error."));
            }
        }
        public async Task <UserMachine> UpdateUserMachineAsync(UserMachine userMachine)
        {
            var userMachineEntity = Mapper.Map <UserMachineEntity>(userMachine);

            userMachineEntity = await _userMachineRepository.UpdateAsync(userMachineEntity);

            userMachine = Mapper.Map <UserMachine>(userMachineEntity);

            return(userMachine);
        }
Esempio n. 8
0
        /// <summary>
        /// Класс спаунер.
        /// Служит для генерации объектов и врагов которые моугут попадаться на пути игрока по время игры.
        /// </summary>
        /// <param name="userMachine">Машина игрока.</param>
        public Spawner(UserMachine userMachine)
        {
            if (userMachine == null)
            {
                throw new ArgumentNullException(nameof(userMachine));
            }

            _userLevel = userMachine.Level;

            userMachine.OnMoveLoot  += SpawnLoot;
            userMachine.OnMoveEnemy += SpawnEnemy;
        }
Esempio n. 9
0
        /// <summary>
        /// Заменяет юзеру существующую машину на указанную.
        /// </summary>
        /// <param name="userName">Юзер.</param>
        /// <param name="machine">Новая машина.</param>
        public void AddMachine(string userName, UserMachine machine)
        {
            if (string.IsNullOrWhiteSpace(userName))
            {
                throw new ArgumentNullException(nameof(userName));
            }

            var userData = _repository
                           .TableData
                           .FirstOrDefault(e => e.UserName == userName)
                           ?? throw new ArgumentNullException($"Не удалось найти пользователя с именем {userName}.");

            userData.UserMachine = machine ?? throw new ArgumentNullException(nameof(machine));

            _repository.SaveData();
        }
Esempio n. 10
0
        public IActionResult InsertMachineData(MachineUserViewModel machineUserViewModel)
        {
            try
            {
                if (machineUserViewModel.Password == null)
                {
                    return(StatusCode(400, "PasswordIsNull"));
                }
                else
                {
                    byte[] encodedBytes = System.Text.Encoding.UTF8.GetBytes(machineUserViewModel.Password);
                    machineUserViewModel.Password = Convert.ToBase64String(encodedBytes);
                }

                Machine machine = new Machine();
                machine.Key         = machineUserViewModel.MachineKey;
                machine.IP          = machineUserViewModel.IP;
                machine.Name        = machineUserViewModel.Name;
                machine.LoginID     = machineUserViewModel.LoginID;
                machine.Password    = machineUserViewModel.Password;
                machine.OS          = machineUserViewModel.OS;
                machine.HostIP      = machineUserViewModel.HostIP;
                machine.Description = machineUserViewModel.Description;

                _context.Add(machine);
                _context.SaveChanges();

                //Insert userMachine table
                if (machineUserViewModel.AssignUserKeys != null)
                {
                    foreach (var machineUserID in machineUserViewModel.AssignUserKeys)
                    {
                        UserMachine userMachine = new UserMachine();
                        userMachine.MachineKey = machineUserViewModel.MachineKey;
                        userMachine.UserID     = machineUserID;
                        _context.UserMachines.Add(userMachine);
                    }
                    _context.SaveChanges();
                }
                return(Ok("success"));
            }
            catch (Exception ex)
            {
                return(ExceptionHandler(ex, "Insert Error."));
            }
        }
        public async Task <IActionResult> Create([Bind("Id,AmountPerHour,AmountPerAcre,userId,MachineId")] UserMachine userMachine)
        {
            if (userMachine.MachineId == 0)
            {
                ModelState.AddModelError("Machines", "Select valid machine");
            }

            if (ModelState.IsValid)
            {
                Random rnd = new Random();
                userMachine.user     = getCurrentUser();
                userMachine.Distance = rnd.Next(1, 20);
                _context.Add(userMachine);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["MachineId"] = new SelectList(_context.Machines, "Id", "MachineName", userMachine.MachineId);
            ViewData["userId"]    = new SelectList(_context.Users, "Id", "UserPhoneNo", userMachine.userId);
            return(View(userMachine));
        }
        public IHttpActionResult GetTest1(string machine)
        {
            var um = db.UserMachines.Include(u => u.User).Include(u => u.Machine).Where(u => u.Uid == currentUser.Id && u.Machine.Name == machine).FirstOrDefault();

            if (um != null)
            {
                //um.Machine.IPAddress = info.IPAddress;
            }
            else
            {
                um = new UserMachine()
                {
                    Uid = currentUser.Id, Machine = new Machine()
                    {
                        Name = machine
                    }
                };
                db.UserMachines.Add(um);
            }
            db.SaveChanges();
            return(Ok());
        }
        public IHttpActionResult Register(RegisterInfo info)
        {
            var um = db.UserMachines.Include(u => u.User).Include(u => u.Machine).Where(u => u.Uid == currentUser.Id && u.Machine.Name == info.HostName).FirstOrDefault();

            if (um != null)
            {
                um.Machine.IPAddress = info.IPAddress;
            }
            else
            {
                um = new UserMachine()
                {
                    Uid = currentUser.Id, Machine = new Machine()
                    {
                        IPAddress = info.IPAddress, Name = info.HostName
                    }
                };
                db.UserMachines.Add(um);
            }
            db.SaveChanges();
            return(Ok());
        }
 /// <summary>
 /// Инициализация класса.
 /// </summary>
 /// <param name="userMachine">Машина пользователя</param>
 /// <param name="staticObject">Предмет с которым происходит взаимодействие</param>
 public MachineIntermediary(UserMachine userMachine, IBaseStaticObject staticObject)
 {
     _userMachine  = userMachine ?? throw new ArgumentNullException(nameof(userMachine));
     _staticObject = staticObject ?? throw new ArgumentNullException(nameof(staticObject));
 }
 public async Task RemoveUserMachine(UserMachine userMachine)
 {
     var userMachineEntity = Mapper.Map <UserMachineEntity>(userMachine);
     await _userMachineRepository.Delete(userMachineEntity);
 }
Esempio n. 16
0
 /// <summary>
 /// Добавить машину игрока в данные.
 /// </summary>
 /// <param name="userMachine">Машина игрока</param>
 public void AddMachine(UserMachine userMachine)
 {
     UserData.UserMachine = userMachine ?? throw new ArgumentNullException(nameof(userMachine));
 }