Exemple #1
0
        /// <summary>
        /// добавление нового аккаунта
        /// </summary>
        private static void AddNewAccount(FarmAccountArg e)
        {
            CheckValidationSubmitData(e, "Add");

            var newAccount = new FarmAccount
            {
                AccountId    = e.AccountId,
                TradeEnabled = e.TradeEnabled,
                UserLogin    = e.Login,
                UserPassword = e.Password
            };

            RobotFarm.Instance.Accounts.Add(newAccount);
        }
Exemple #2
0
        /// <summary>
        /// редактирование существующего счёта
        /// </summary>
        private static void EditAccount(FarmAccountArg e)
        {
            CheckValidationSubmitData(e, "Edit");

            var account = RobotFarm.Instance.Accounts.FirstOrDefault(x => x.AccountId == e.CurrentAccountId);

            if (account == null)
            {
                return;
            }


            account.AccountId    = e.AccountId;
            account.UserLogin    = e.Login;
            account.UserPassword = e.Password;
            account.TradeEnabled = e.TradeEnabled;
        }
Exemple #3
0
        /// <summary>
        /// Проверка на валидность, введённых пользователем данных
        /// </summary>
        private static void CheckValidationSubmitData(FarmAccountArg e, string action)
        {
            if (action != "Delete" && (string.IsNullOrEmpty(e.Login.Trim()) || string.IsNullOrEmpty(e.Password.Trim())))
            {
                throw new ArgumentException("Логин и/или пароль не могут быть пустыми значениями");
            }
            if (e.AccountId == -1)
            {
                throw new ArgumentException(string.Format("Неверный формат уникального идентификатора {0}.", e.AccountId));
            }

            if (action == "Add" && RobotFarm.Instance.Accounts.Any(x => x.AccountId == e.AccountId))
            {
                throw new ArgumentException(string.Format("В системе уже зарегистрирован аккаут с уникальным идентификатором {0}. Уникальные идентификаторы не могут повторяться.", e.AccountId));
            }

            if (action == "Edit" && RobotFarm.Instance.Accounts.Where(y => y.AccountId != e.CurrentAccountId).Any(x => x.AccountId == e.AccountId))
            {
                throw new ArgumentException(string.Format("В системе уже зарегистрирован аккаут с уникальным идентификатором {0}. Уникальные идентификаторы не могут повторяться.", e.AccountId));
            }
        }