/** * Запуск скрипта * * @param array &$ServiceManager объект сервис-менеджера */ function run(array &$ServiceManager) { $shardsConfig = MysqlFactory\getShardsConfig(ServiceManager\getFactory($ServiceManager, 'Mysql')); // Заказчики $CustomerRepository =& ServiceManager\get($ServiceManager, 'CustomerRepository'); foreach ($shardsConfig[CustomerRepository\SHARD_CONFIG] as $shardId => $_) { CustomerRepository\createShard($CustomerRepository, $shardId); } CustomerRepository\syncLastCustomerId($CustomerRepository, 0); // Два тестовых заказчика CustomerRepository\create($CustomerRepository, 'customer_1', 'Петров', '8anbAw4BbuoM'); CustomerRepository\create($CustomerRepository, 'customer_2', 'Васечкин', 'GZx5ixNwYtos'); // Заказы $OrderRepository =& ServiceManager\get($ServiceManager, 'OrderRepository'); OrderRepository\createDatabaseAndTable($OrderRepository); // Два тестовых заказа OrderRepository\create($OrderRepository, 'text', 100); OrderRepository\create($OrderRepository, 'text2', 200); // Исполнители $ExecutorRepository =& ServiceManager\get($ServiceManager, 'ExecutorRepository'); foreach ($shardsConfig[ExecutorRepository\SHARD_CONFIG] as $shardId => $_) { ExecutorRepository\createShard($ExecutorRepository, $shardId); } ExecutorRepository\syncLastExecutorId($ExecutorRepository, 0); // Два тестовых исполнителя ExecutorRepository\create($ExecutorRepository, 'executor_1', 'Иванов', 100, '3urvrPhNvEpZ'); ExecutorRepository\create($ExecutorRepository, 'executor_2', 'Церетели', 200, 'ki22YIk1FR29'); }
/** * Запрос на добавление заказа * * @param array &$Controller объект котнроллера * * @return array */ function cmdAdd(array &$Controller) { $Request =& getRequest($Controller); $price = (int) Request\getPostParam($Request, 'price'); $text = Request\getPostParam($Request, 'text'); $token = Request\getPostParam($Request, 'token'); $isValid = validateParams($price, $text, $token); if ($isValid !== true) { return ['errorMsg' => $isValid]; } $OrderRepository =& ServiceManager\get(getServiceManager($Controller), 'OrderRepository'); if (OrderRepository\create($OrderRepository, $price, $text) === false) { return ['errorMsg' => 'Ошибка создания запроса']; } else { return []; } }