From d9337944b12b34191f5dc744a8583332bdaa964a Mon Sep 17 00:00:00 2001 From: Arsen Mirzaev Tatyano-Muradovich Date: Mon, 30 Aug 2021 06:41:19 +1000 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B0=D0=B1=D0=BE=D1=82=D0=B0=20=D0=BD?= =?UTF-8?q?=D0=B0=D0=B4=20=D1=81=D0=B0=D0=B9=D1=82=D0=BE=D0=BC=2020?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mirzaev/skillparts/system/assets/AppAsset.php | 6 +- .../system/controllers/InvoiceController.php | 2 +- .../controllers/NotificationController.php | 2 +- .../system/controllers/OrderController.php | 15 +- .../system/controllers/ProfileController.php | 176 +++++----- .../system/controllers/SearchController.php | 3 +- .../system/controllers/VerifyController.php | 6 +- mirzaev/skillparts/system/models/Account.php | 22 +- .../skillparts/system/models/AccountForm.php | 21 +- .../skillparts/system/models/Notification.php | 17 +- mirzaev/skillparts/system/models/Product.php | 81 ++++- .../system/models/connection/Dellin.php | 214 +++++------- .../system/views/invoice/order/pattern.php | 20 +- .../skillparts/system/views/layouts/main.php | 21 +- .../system/views/notification/index.php | 0 .../system/views/notification/popup.php | 40 ++- .../views/notification/system/orders/new.php | 4 +- .../skillparts/system/views/orders/index.php | 307 ++++++++++++------ .../system/views/orders/search/panel.php | 28 +- .../system/views/profile/monitoring.php | 9 +- .../skillparts/system/views/search/panel.php | 6 +- .../system/web/css/notification.css | 1 - mirzaev/skillparts/system/web/favicon.ico | Bin 1150 -> 1491998 bytes .../system/web/img/logos/favicon.old.ico | Bin 0 -> 1150 bytes .../system/web/img/logos/faviconRaw3.png | Bin 0 -> 28901 bytes .../system/web/img/logos/faviconRaw4.png | Bin 0 -> 168201 bytes mirzaev/skillparts/system/web/js/account.js | 5 +- .../skillparts/system/web/js/geolocation.js | 130 ++++---- .../system/web/js/google/analytics.js | 5 + .../skillparts/system/web/js/orders_panel.js | 16 +- mirzaev/skillparts/system/web/js/search.js | 10 +- .../system/web/js/yandex/geolocation.js | 73 +++++ .../system/web/js/yandex/metrika.js | 12 + 33 files changed, 765 insertions(+), 487 deletions(-) delete mode 100644 mirzaev/skillparts/system/views/notification/index.php create mode 100644 mirzaev/skillparts/system/web/img/logos/favicon.old.ico create mode 100644 mirzaev/skillparts/system/web/img/logos/faviconRaw3.png create mode 100644 mirzaev/skillparts/system/web/img/logos/faviconRaw4.png create mode 100644 mirzaev/skillparts/system/web/js/google/analytics.js create mode 100644 mirzaev/skillparts/system/web/js/yandex/geolocation.js create mode 100644 mirzaev/skillparts/system/web/js/yandex/metrika.js diff --git a/mirzaev/skillparts/system/assets/AppAsset.php b/mirzaev/skillparts/system/assets/AppAsset.php index c801b8d..55e1348 100644 --- a/mirzaev/skillparts/system/assets/AppAsset.php +++ b/mirzaev/skillparts/system/assets/AppAsset.php @@ -45,7 +45,11 @@ class AppAsset extends AssetBundle 'js/search.js', 'js/notification.js', 'js/reinitialization.js', - 'js/geolocation.js' + 'https://api-maps.yandex.ru/2.1/?apikey=0c4ba9aa-c448-4bd0-9c8c-6181f21ede90&lang=ru_RU', + 'js/yandex/metrika.js', + 'js/yandex/geolocation.js', + 'https://www.googletagmanager.com/gtag/js?id=G-6XYKBJJWR4', + 'js/google/analytics.js' ]; public $jsOptions = [ // 'position' => View::POS_HEAD diff --git a/mirzaev/skillparts/system/controllers/InvoiceController.php b/mirzaev/skillparts/system/controllers/InvoiceController.php index 876ef89..c17cb17 100644 --- a/mirzaev/skillparts/system/controllers/InvoiceController.php +++ b/mirzaev/skillparts/system/controllers/InvoiceController.php @@ -16,7 +16,7 @@ class InvoiceController extends Controller if ($order = Order::searchById(Order::collectionName() . '/' . $order)) { return $this->renderPartial('/invoice/order/pattern', [ - 'account' => yii::$app->user->identity->_key, + 'account' => yii::$app->user->identity, 'order' => [ 'id' => $order->_key, 'date' => $order->date ?? time() // @todo доделать diff --git a/mirzaev/skillparts/system/controllers/NotificationController.php b/mirzaev/skillparts/system/controllers/NotificationController.php index 55c3d67..7691316 100644 --- a/mirzaev/skillparts/system/controllers/NotificationController.php +++ b/mirzaev/skillparts/system/controllers/NotificationController.php @@ -184,7 +184,7 @@ class NotificationController extends Controller $notification = $notifications[0]; $return['popup'] = [ - 'html' => $this->renderPartial('popup', compact('model', 'notification')), + 'html' => $this->renderPartial('popup', compact('model', 'notification', 'account')), 'id' => 'popup/' . $notification->readId() ]; } else if (yii::$app->request->post('stream')) { diff --git a/mirzaev/skillparts/system/controllers/OrderController.php b/mirzaev/skillparts/system/controllers/OrderController.php index eefce7a..d03a1ed 100644 --- a/mirzaev/skillparts/system/controllers/OrderController.php +++ b/mirzaev/skillparts/system/controllers/OrderController.php @@ -24,6 +24,7 @@ use app\models\Supply; use app\models\SupplyEdgeProduct; use Codeception\PHPUnit\ResultPrinter\HTML; + use DateTime; use Exception; use Throwable; @@ -306,7 +307,7 @@ class OrderController extends Controller return [ 'main' => $this->renderPartial('/orders/index', compact('orders', 'moderator_orders', 'search', 'from', 'to', 'window') - + ['panel' => $this->renderPartial('/orders/search/panel', ['response' => $orders[0]['supplies']])]), + + ['panel' => $this->renderPartial('/orders/search/panel', compact('account') + ['response' => @$orders[0]['supplies']] ?? null)]), 'title' => 'Заказы', 'redirect' => '/orders', '_csrf' => yii::$app->request->getCsrfToken() @@ -489,14 +490,14 @@ class OrderController extends Controller yii::$app->response->format = Response::FORMAT_JSON; return [ - 'main' => $this->renderPartial('/cart/index', compact('order', 'connections')), + 'main' => $this->renderPartial('/cart/index', compact('order', 'connections', 'account')), 'title' => 'Корзина', 'redirect' => '/cart', '_csrf' => yii::$app->request->getCsrfToken() ]; } - return $this->render('/cart/index', compact('order', 'connections')); + return $this->render('/cart/index', compact('order', 'connections', 'account')); } /** @@ -507,7 +508,7 @@ class OrderController extends Controller // Инициализация $targets = yii::$app->request->post('targets') ?? yii::$app->request->get('targets'); $page = yii::$app->request->get('page') ?? yii::$app->request->post('page') ?? 1; - $account = yii::$app->user; + $account = yii::$app->user->identity; $order = Order::search(); $connections = $order->content(10, $page); @@ -566,14 +567,14 @@ class OrderController extends Controller yii::$app->response->format = Response::FORMAT_JSON; return [ - 'main' => $this->renderPartial('/cart/index', compact('order', 'connections')), + 'main' => $this->renderPartial('/cart/index', compact('order', 'connections', 'account')), 'title' => 'Корзина', 'redirect' => '/cart', '_csrf' => yii::$app->request->getCsrfToken() ]; } - return $this->render('/cart/index', compact('order', 'connections')); + return $this->render('/cart/index', compact('order', 'connections', 'account')); } /** @@ -681,7 +682,7 @@ class OrderController extends Controller } - if ($order_edge_supply = OrderEdgeSupply::searchById($_id = OrderEdgeSupply::collectionName() . '/' . $_key)) { + if ($order_edge_supply = OrderEdgeSupply::searchById($_id = OrderEdgeSupply::collectionName() . '/' . $catn)) { // Удалось найти инстанцию поставки // Инициализация ребра: ПОСТАВКА -> ТОВАР diff --git a/mirzaev/skillparts/system/controllers/ProfileController.php b/mirzaev/skillparts/system/controllers/ProfileController.php index c9be47b..5ab3680 100644 --- a/mirzaev/skillparts/system/controllers/ProfileController.php +++ b/mirzaev/skillparts/system/controllers/ProfileController.php @@ -286,12 +286,38 @@ class ProfileController extends Controller /** * Страница мониторинга */ - public function actionMonitoring(): string|array + public function actionMonitoring(Account|int|null $account = null): string|array { // Инициализация $panel = yii::$app->request->post('panel') ?? yii::$app->request->get('panel'); $sidebar = $this->renderPartial('sidebar'); + if (is_null($account)) { + // Данные аккаунта не переданы + + if (yii::$app->user->isGuest) { + // Аккаунт не аутентифицирован + + return []; + } else { + // Аккаунт аутентифицирован + + // Инициализация + $account = yii::$app->user->identity; + } + } else { + if (is_int($account)) { + // Передан идентификатор (_key) аккаунта (подразумевается) + + // Инициализация (поиск в базе данных) + if (!$account = Account::searchById(Account::collectionName() . "/$account")) { + // Не удалось инициализировать аккаунт + + return []; + } + } + } + // Инициализация номера страницы $page_search_history = (yii::$app->request->post('search') ?? yii::$app->request->get('search')) - 1; @@ -368,7 +394,8 @@ class ProfileController extends Controller 'sidebar', 'search_history', 'page_search_history', - 'panel' + 'panel', + 'account' )); } @@ -483,32 +510,6 @@ class ProfileController extends Controller // Настройка ответа yii::$app->response->format = Response::FORMAT_JSON; - // if (is_null($account)) { - // // Данные аккаунта не переданы - - // if (yii::$app->user->isGuest) { - // // Аккаунт не аутентифицирован - - // return false; - // } else { - // // Аккаунт аутентифицирован - - // // Инициализация - // $account = yii::$app->user->identity; - // } - // } else { - // if (is_int($account)) { - // // Передан идентификатор (_key) аккаунта (подразумевается) - - // // Инициализация (поиск в базе данных) - // if (!$account = Account::searchById(Account::collectionName() . "/$account")) { - // // Не удалось инициализировать аккаунт - - // return false; - // } - // } - // } - // Инициализация аккаунта if (yii::$app->user->isGuest) { // Аккаунт не аутентифицирован @@ -524,47 +525,32 @@ class ProfileController extends Controller // Настройка ответа yii::$app->response->format = Response::FORMAT_JSON; - // Инициализация IP-адреса - $ip = yii::$app->request->userIp === 'localhost' || yii::$app->request->userIp === '127.0.0.1' ? '46.226.227.20' : yii::$app->request->userIp; + if (false !== $return = self::geolocationCheck($account)) { + // Удалось сгенерировать данные для возврата - // Проверка записи геолокации - if (isset($account->geol)) { - // Удалось найти данные геолокации - } else { - // Не удалось найти данные геолокации - - try { - // Инициализация данных геолокации - $dadata = new Dadata(yii::$app->params['dadata']['key'], yii::$app->params['dadata']['secret']); - - // Запись в буфер данных о геолокации - $account->geol = $dadata->iplocate($ip); - } catch (Throwable $t) { - return false; - } - - // Запись в буфер данных о типе геолокации - $account->geol = ['type' => 'ip'] + ($account->geol ?? []); - - self::syncGeolocationWithDellin($account); + return $return; } - return self::geolocationAccuracyCheck($account); + return [ + 'geolocation' => false, + '_csrf' => yii::$app->request->getCsrfToken() + ]; } return false; } /** - * Генерация ответа по данным геолокации - * - * Проверка точности и наличия данных о геолокации + * Проверка наличия записи о геолокации * * @param Account|string|null $account * * @return array|bool JSON, в случае успеха + * + * @todo + * 1. 👁_👁 */ - public static function geolocationAccuracyCheck(Account|int|null $account = null): array|bool + public static function geolocationCheck(Account|int|null $account = null): array|bool { if (is_null($account)) { // Данные аккаунта не переданы @@ -597,15 +583,15 @@ class ProfileController extends Controller // Генерация ответа return [ - 'requestGps' => match ($account->geol['type'] ?? null) { - 'gps' => false, - default => true - }, + 'geolocation' => true, '_csrf' => yii::$app->request->getCsrfToken() ]; } - return false; + return [ + 'geolocation' => false, + '_csrf' => yii::$app->request->getCsrfToken() + ]; } /** @@ -614,6 +600,9 @@ class ProfileController extends Controller * @param string|null $account Аккаунт * * @return array|bool JSON, в случае успеха + * + * @todo + * 1. Избавиться от второго запроса к DaData ($dadata->clean("address", $account->city);) */ public function actionGeolocationWrite(): array|bool { @@ -623,36 +612,13 @@ class ProfileController extends Controller // Настройка ответа yii::$app->response->format = Response::FORMAT_JSON; - // if (is_null($account)) { - // // Данные аккаунта не переданы - - // if (yii::$app->user->isGuest) { - // // Аккаунт не аутентифицирован - - // return false; - // } else { - // // Аккаунт аутентифицирован - - // // Инициализация - // $account = yii::$app->user->identity; - // } - // } else { - // if (is_int($account)) { - // // Передан идентификатор (_key) аккаунта (подразумевается) - - // // Инициализация (поиск в базе данных) - // if (!$account = Account::searchById(Account::collectionName() . "/$account")) { - // // Не удалось инициализировать аккаунт - - // return false; - // } - // } - // } - // Инициализация аккаунта if (yii::$app->user->isGuest) { // Аккаунт не аутентифицирован + // Запись кода ответа + yii::$app->response->statusCode = 401; + return false; } else { // Аккаунт аутентифицирован @@ -664,15 +630,21 @@ class ProfileController extends Controller // Настройка ответа yii::$app->response->format = Response::FORMAT_JSON; - // Инициализация широты - $latitude = yii::$app->request->post('latitude') ?? yii::$app->request->get('latitude'); + // Инициализация данных яндекса + $yandex = yii::$app->request->post('yandex') ?? yii::$app->request->get('yandex'); - // Инициализация долготы - $longitude = yii::$app->request->post('longitude') ?? yii::$app->request->get('longitude'); + // Инициализация широты (среднее значение из общего периметра) + $latitude = ($yandex['coordinates'][0][0] + $yandex['coordinates'][1][0]) / 2; + + // Инициализация долготы (среднее значение из общего периметра) + $longitude = ($yandex['coordinates'][0][1] + $yandex['coordinates'][1][1]) / 2; if (empty($latitude) || empty($longitude)) { // Широта или долгота не передана + // Запись кода ответа + yii::$app->response->statusCode = 500; + return false; } @@ -682,13 +654,31 @@ class ProfileController extends Controller // Запись в буфер данных о геолокации $account->geol = $dadata->geolocate("address", $latitude, $longitude)[0]; + + // Запись в буфер полученного города + $account->city = $account->geol['data']['city']; + + // Запись в буфер новых данных (непонятно почему, но только вторым запросом можно получать часовую зону) + $account->geol = $account->geol + $dadata->clean("address", $account->city); + + // Запись в буфер часовой зоны + $account->zone = $account->geol['data']['timezone']; + + if($account->update() < 1) { + // Не удалось записать данные + + // Запись кода ответа + yii::$app->response->statusCode = 500; + + return false; + }; } catch (Throwable $t) { + // Запись кода ответа + yii::$app->response->statusCode = 500; + return false; } - // Запись в буфер данных о типе геолокации - $account->geol = ['type' => 'gps'] + $account->geol; - return self::syncGeolocationWithDellin($account); } } diff --git a/mirzaev/skillparts/system/controllers/SearchController.php b/mirzaev/skillparts/system/controllers/SearchController.php index 89edb26..c23dde9 100644 --- a/mirzaev/skillparts/system/controllers/SearchController.php +++ b/mirzaev/skillparts/system/controllers/SearchController.php @@ -26,6 +26,7 @@ class SearchController extends Controller { // Инициализация параметров $auth_only = false; + $account = yii::$app->user->identity; if ($auth_only && yii::$app->user->isGuest) { // Если активирован режим "Поиск только аутентифицированным" и запрос пришел не от аутентифицированного @@ -49,7 +50,7 @@ class SearchController extends Controller yii::$app->response->format = Response::FORMAT_JSON; return [ - 'panel' => $this->renderPartial('/search/panel', ['history' => true]), + 'panel' => $this->renderPartial('/search/panel', compact('account') + ['history' => true]), '_csrf' => yii::$app->request->getCsrfToken() ]; } diff --git a/mirzaev/skillparts/system/controllers/VerifyController.php b/mirzaev/skillparts/system/controllers/VerifyController.php index c42370c..9d2ee99 100644 --- a/mirzaev/skillparts/system/controllers/VerifyController.php +++ b/mirzaev/skillparts/system/controllers/VerifyController.php @@ -6,9 +6,10 @@ namespace app\controllers; use yii; use yii\web\Controller; -use app\models\Account; use yii\web\Response; +use app\models\Account; + class VerifyController extends Controller { public function actionIndex(string $vrfy = null): string|Response @@ -36,6 +37,9 @@ class VerifyController extends Controller if (yii::$app->user->identity->vrfy === true) { // Регистрация аккаунта уже подтверждена + // Генерация хеша пароля + yii::$app->user->identity->pswd = yii::$app->security->generatePasswordHash(yii::$app->user->identity->pswd); + if (yii::$app->request->isPost) { // POST-запрос diff --git a/mirzaev/skillparts/system/models/Account.php b/mirzaev/skillparts/system/models/Account.php index 5b31838..a8e6ad5 100644 --- a/mirzaev/skillparts/system/models/Account.php +++ b/mirzaev/skillparts/system/models/Account.php @@ -44,6 +44,7 @@ class Account extends Document implements IdentityInterface, PartnerInterface 'name', 'simc', 'sity', + 'zone', 'comp', 'taxn', 'onec', @@ -72,6 +73,7 @@ class Account extends Document implements IdentityInterface, PartnerInterface 'name' => 'Имя', 'simc' => 'Номер', 'sity' => 'Город', + 'zone' => 'Часовой пояс', 'comp' => 'Компания', 'taxn' => 'ИНН', 'onec' => 'Данные 1C', @@ -116,7 +118,10 @@ class Account extends Document implements IdentityInterface, PartnerInterface 'message' => 'Атрибут {attribute} должен иметь уникальное значение' ], [ - 'indx', + [ + 'indx', + 'zone' + ], 'string' ], [ @@ -287,11 +292,18 @@ class Account extends Document implements IdentityInterface, PartnerInterface } /** - * Проверка пароля + * Проверка пароля с хешированием */ - public function validatePassword(string $pswd): bool + public function validatePasswordWithHash(string $pswd): bool + { + return yii::$app->security->validatePassword($pswd, $this->pswd); + } + + /** + * Проверка пароля без хеширования + */ + public function validatePasswordWithoutHash(string $pswd): bool { - // return yii::$app->security->validatePassword($pswd, $this->pswd); return $pswd === $this->pswd; } @@ -487,7 +499,7 @@ class Account extends Document implements IdentityInterface, PartnerInterface // Запись empty($terminal->city) && empty($terminal->strt) && empty($terminal->hous) - or $list[$terminal->dell] = (empty($terminal->city) ? '' : "г. $terminal->city"). (empty($terminal->strt) ? '' : ", ул. $terminal->strt") . (empty($terminal->hous) ? '' : ", д. $terminal->hous") . (empty($terminal->offs) ? '' : ", оф. $terminal->offs") . (empty($terminal->comm) ? '' : " ($terminal->comm)"); + or $list[$terminal->dell] = (empty($terminal->city) ? '' : "г. $terminal->city") . (empty($terminal->strt) ? '' : ", ул. $terminal->strt") . (empty($terminal->hous) ? '' : ", д. $terminal->hous") . (empty($terminal->offs) ? '' : ", оф. $terminal->offs") . (empty($terminal->comm) ? '' : " ($terminal->comm)"); } return $this->syncListWithSettings($list, 'delivery_to_terminal'); diff --git a/mirzaev/skillparts/system/models/AccountForm.php b/mirzaev/skillparts/system/models/AccountForm.php index 689997d..c2e0c26 100644 --- a/mirzaev/skillparts/system/models/AccountForm.php +++ b/mirzaev/skillparts/system/models/AccountForm.php @@ -8,6 +8,7 @@ use yii; use yii\base\Model; use app\models\Account; +use Exception; /** * AccountForm is the model behind the login form. @@ -146,10 +147,24 @@ class AccountForm extends Model return; } - if (!$account || !$account->validatePassword($this->pswd)) { - // Проверка не пройдена + if ($account) { + // Удалось инициализировать аккаунт - $this->addError($attribute, 'Проверьте пароль'); + try { + $account->validatePasswordWithHash($this->pswd); + } catch (Exception $e) { + // Проверка с хешем не пройдена + + try { + $account->validatePasswordWithoutHash($this->pswd); + } catch (Exception $e) { + // Проверка без хеша не пройдена + + $this->addError($attribute, 'Проверьте пароль'); + } + } + } else { + $this->addError($attribute, 'Не удалось идентифицировать аккаунт'); } } } diff --git a/mirzaev/skillparts/system/models/Notification.php b/mirzaev/skillparts/system/models/Notification.php index da6b5f5..37fdc05 100644 --- a/mirzaev/skillparts/system/models/Notification.php +++ b/mirzaev/skillparts/system/models/Notification.php @@ -168,7 +168,7 @@ class Notification extends Document $text = htmlspecialchars(strip_tags($text ?? null)); $model->html = <<$text

+

$text

HTML; } @@ -281,4 +281,19 @@ class Notification extends Document return $return ? $return : null; } + + /** + * Конвертация типа уведомления в версию для отображения + * + * @param string|null $type Тип уведомления + * + * @return string + */ + public function genTypeToRussian(string $type = null): string { + return match($type ?? $this->type) { + 'notice' => 'Уведомление', + 'warning' => 'Предупреждение', + 'error' => 'Ошибка' + }; + } } diff --git a/mirzaev/skillparts/system/models/Product.php b/mirzaev/skillparts/system/models/Product.php index 55912ba..9b4f335 100644 --- a/mirzaev/skillparts/system/models/Product.php +++ b/mirzaev/skillparts/system/models/Product.php @@ -7,10 +7,14 @@ namespace app\models; use yii; use yii\web\UploadedFile; use yii\imagine\Image; +use app\models\Settings; use app\models\traits\SearchByEdge; use moonland\phpexcel\Excel; +use DateTime; +use DateTimeZone; + use Exception; /** @@ -318,18 +322,45 @@ class Product extends Document * На данный момент обрабатывает только импорт из * файлов с расширением .excel */ - public function importExcel(): bool + public function importExcel(Account|int|null $account = null): bool { // Инициализация $data = []; $amount = 0; + if (is_null($account)) { + // Данные аккаунта не переданы + + if (yii::$app->user->isGuest) { + // Аккаунт не аутентифицирован + + return false; + } else { + // Аккаунт аутентифицирован + + // Инициализация + $account = yii::$app->user->identity; + } + } else { + if (is_int($account)) { + // Передан идентификатор (_key) аккаунта (подразумевается) + + // Инициализация (поиск в базе данных) + if (!$account = Account::searchById(Account::collectionName() . "/$account")) { + // Не удалось инициализировать аккаунт + + return false; + } + } + } + + if ($this->validate()) { foreach ($this->file_excel as $file) { // Перебор файлов // Инициализация - $dir = YII_PATH_PUBLIC . '../assets/import/' . date('Y-m-d', time()) . '/excel/' . (yii::$app->user->identity->_key ?? 'system') . '/' . time() . '/'; + $dir = YII_PATH_PUBLIC . '../assets/import/' . (new DateTime('now', new DateTimeZone($account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3'))) . '/excel/' . (yii::$app->user->identity->_key ?? 'system') . '/' . time() . '/'; // Сохранение на диск if (!file_exists($dir)) { @@ -467,9 +498,16 @@ class Product extends Document */ public static function afterImportExcel(int $amount = 0): bool { - // Инициализация + // Инициализация параметров $model = new Notification; - $date = date('H:i d.m.Y', time()); + $account = yii::$app->user->identity; + + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + // Инициализация даты + $date = (new DateTime('now', new DateTimeZone($timezone)))->format('H:i d.m.Y'); // Настройка $model->text = yii::$app->controller->renderPartial('@app/views/notification/system/afterImportExcel', compact('amount', 'date')); @@ -482,11 +520,42 @@ class Product extends Document /** * Вызывается после загрузки поставок из 1С */ - public static function afterImport1c(): bool + public static function afterImport1c(Account|int|null $account = null): bool { // Инициализация $model = new Notification; - $date = date('H:i d.m.Y', time()); + + if (is_null($account)) { + // Данные аккаунта не переданы + + if (yii::$app->user->isGuest) { + // Аккаунт не аутентифицирован + + return false; + } else { + // Аккаунт аутентифицирован + + // Инициализация + $account = yii::$app->user->identity; + } + } else { + if (is_int($account)) { + // Передан идентификатор (_key) аккаунта (подразумевается) + + // Инициализация (поиск в базе данных) + if (!$account = Account::searchById(Account::collectionName() . "/$account")) { + // Не удалось инициализировать аккаунт + + return false; + } + } + } + + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + $date = (new DateTime('now', new DateTimeZone($timezone)))->format('H:i d.m.Y'); // Настройка $model->text = yii::$app->controller->renderPartial('@app/views/notification/system/afterImport1c', compact('date')); diff --git a/mirzaev/skillparts/system/models/connection/Dellin.php b/mirzaev/skillparts/system/models/connection/Dellin.php index efacab5..56f601f 100644 --- a/mirzaev/skillparts/system/models/connection/Dellin.php +++ b/mirzaev/skillparts/system/models/connection/Dellin.php @@ -9,10 +9,14 @@ use yii\base\Model; use app\models\Dellin as DellinModel; use app\models\Product; +use app\models\Account; use app\models\Settings; + use GuzzleHttp\Client as Guzzle; use GuzzleHttp\Exception\ClientException as GuzzleException; +use DateTime; +use DateTimeZone; use Exception; class Dellin extends Model @@ -68,18 +72,44 @@ class Dellin extends Model * @param int $y Высота (cм) * @param int $z Длинна (cм) * @param int $amount Количество + * @param Account|int|null $account Аккаунт * * @return string * * @todo Загружать помимо терминалов ещё и адреса, чтобы доделать доставку малогабаритных грузов * Разрабраться с параметрами 0,54м * 0,39м * 0,39м (0.082134м) и 0.1 куб метр в чем разница */ - public static function calcDeliveryAdvanced(int $from, int $to, int $weight, int $x, int $y, int $z, int $amount = 1, bool $avia = false): array + public static function calcDeliveryAdvanced(int $from, int $to, int $weight, int $x, int $y, int $z, int $amount = 1, bool $avia = false, Account|int|null $account = null): array { - - return self::handle(function () use ($from, $to, $weight, $x, $y, $z, $amount, $avia) { + return self::handle(function () use ($from, $to, $weight, $x, $y, $z, $amount, $avia, $account) { // Всё готово к работе + if (is_null($account)) { + // Данные аккаунта не переданы + + if (yii::$app->user->isGuest) { + // Аккаунт не аутентифицирован + + return []; + } else { + // Аккаунт аутентифицирован + + // Инициализация + $account = yii::$app->user->identity; + } + } else { + if (is_int($account)) { + // Передан идентификатор (_key) аккаунта (подразумевается) + + // Инициализация (поиск в базе данных) + if (!$account = Account::searchById(Account::collectionName() . "/$account")) { + // Не удалось инициализировать аккаунт + + return []; + } + } + } + // Инициализация $from = DellinModel::searchByTerminalId($from, terminal_data_only: true); $to = DellinModel::searchByTerminalId($to, terminal_data_only: true); @@ -126,7 +156,8 @@ class Dellin extends Model $query = []; // Рассчёт типа доставки - if ( !$avia + if ( + !$avia && $weight <= 30 && ($length <= 0.54 && $width <= 0.39 && $height <= 0.39) && $length * $width * $height <= 0.1 @@ -164,6 +195,10 @@ class Dellin extends Model $query['delivery']['arrival']['terminalID'] = $to->id; } + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + // Инициализация $query = array_merge_recursive( $query, @@ -172,8 +207,7 @@ class Dellin extends Model 'sessionID' => self::$session, 'delivery' => [ 'derival' => [ - // 'produceDate' => date('Y-m-d', time() + ($settings['delivery_handle_time'] ?? 86400)) - 'produceDate' => date('Y-m-d', time() + 86400 * 3) + 'produceDate' => (new DateTime())->setTimestamp(time())->setTimezone(new DateTimeZone($timezone))->format('Y-m-d') ] ], 'members' => [ @@ -273,146 +307,42 @@ class Dellin extends Model }); } - /** - * Импорт городов - * - * @return array|null Сохранённые города - */ - // public static function importCities(): ?int - // { - // return self::handle(function () { - // // Всё готово к работе - - // // Запрос ссылки на файл с городами, возвращает ['hash' => string, 'url' => string] - // $request = self::$browser->post('/v1/public/cities.json', [ - // 'json' => [ - // 'appkey' => yii::$app->params['dellin']['key'], - // ] - // ]); - - // if ($request->getStatusCode() === 200) { - // // Запрос прошел успешно - - // // Инициализация - // $response = json_decode((string) $request->getBody(), true); - // $hash_target = $response['hash']; - // $dir = YII_PATH_PUBLIC . '/../assets/import/' . date('Y-m-d', time()) . '/dellin/cities/' . (yii::$app->user->identity->_key ?? 'system') . '/'; - - // if (!file_exists($dir)) { - // // Директории не существует - - // mkdir($dir, 0775, true); - // } - - // $request = self::$browser->get($response['url'], [ - // 'sink' => $file = $dir . time() . '.csv' - // ]); - - // // Проверка хеша (оказалось это хеш запроса, бесполезный) - // // if ($hash_target === $hash_received = md5_file($file)) { - // // Удалось пройти проверку на хеши файлов - - // // Инициализация (чтение файла) - // $file = fopen($file, "r"); - // $first_raw_block = true; - - // while ($row = fgets($file, 4096)) { - // // Перебор строк - - // if ($first_raw_block) { - // // Сработала защита от чтения первой строки файла (указываются названия колонок) - - // // Отключение - // $first_raw_block = false; - - // // Пропуск цикла - // continue; - // } - - // // Инициализация - // $data = explode(',', $row, 4); - // $amount = 0; - - // // Очистка - // array_walk($data, fn (&$value) => $value = trim($value, '"')); - - // if ($city = City::searchByDellinId($data[0])) { - // // Удалось найти город в базе данных - - // $after_import_log = function () use ($city): void { - // // Запись в журнал - // $city->journal('update'); - - // if (yii::$app->getRequest()->isConsoleRequest) { - // // Вызов из терминала - - // echo 'Удалось перезаписать город: ' . $city->name . PHP_EOL; - // } - // }; - // } else { - // // Не удалось найти город в базе данных - - // $city = new City(); - - // $after_import_log = function () use ($city): void { - // if (yii::$app->getRequest()->isConsoleRequest) { - // // Вызов из терминала - - // echo 'Удалось записать город: ' . $city->name . PHP_EOL; - // } - // }; - // } - - // // Запись - // $city->indx = $data[0]; - // $city->name = $data[1]; - // $city->code = $data[2]; - // $city->term = (bool) $data[3]; - - // // Отправка в базу данных - // if ($city->save()) { - // // Удалось сохранить в базе данных - - // // Запись в журнал - // $after_import_log(); - - // // Постинкрементация счётчика - // $amount++; - - // continue; - // } else { - // // Не удалось сохранить в базе данных - - // throw new Exception('Не удалось сохранить город ' . $data[1] . ' в базу данных', 500); - // } - // } - - // // Деинициализация - // fclose($file); - - // return $amount; - // // } else { - // // // Не удалось пройти проверку на соответствие хешей файлов - - // // throw new Exception('Хеши файлов не совпадают. Должен быть: "' . $hash_target . '", получен: "' . $hash_received . '"', 500); - // // } - // } - - // throw new Exception('Не удалось синхронизировать данные городов с ДеловыеЛинии', 500); - // }); - // } - - /** * Импорт терминалов * * @return array|null Сохранённые терминалы */ - public static function importTerminals(): ?int + public static function importTerminals(Account|int|null $account = null): ?int { - return self::handle(function () { + return self::handle(function () use ($account) { // Всё готово к работе + if (is_null($account)) { + // Данные аккаунта не переданы + + if (yii::$app->user->isGuest) { + // Аккаунт не аутентифицирован + + return 0; + } else { + // Аккаунт аутентифицирован + + // Инициализация + $account = yii::$app->user->identity; + } + } else { + if (is_int($account)) { + // Передан идентификатор (_key) аккаунта (подразумевается) + + // Инициализация (поиск в базе данных) + if (!$account = Account::searchById(Account::collectionName() . "/$account")) { + // Не удалось инициализировать аккаунт + + return 0; + } + } + } + // Запрос ссылки на файл с городами, возвращает ['hash' => string, 'url' => string] $request = self::$browser->post('/v3/public/terminals.json', [ 'json' => [ @@ -423,9 +353,13 @@ class Dellin extends Model if ($request->getStatusCode() === 200) { // Запрос прошел успешно - // Инициализация + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + // Инициализация параметров $response = json_decode((string) $request->getBody(), true); - $dir = YII_PATH_PUBLIC . '/../assets/import/' . date('Y-m-d', time()) . '/dellin/terminals/' . (yii::$app->user->identity->_key ?? 'system') . '/'; + $dir = YII_PATH_PUBLIC . '/../assets/import/' . (new DateTime('now', new DateTimeZone($timezone)))->format('Y-m-d') . '/dellin/terminals/' . (yii::$app->user->identity->_key ?? 'system') . '/'; $amount = 0; if (!file_exists($dir)) { diff --git a/mirzaev/skillparts/system/views/invoice/order/pattern.php b/mirzaev/skillparts/system/views/invoice/order/pattern.php index 9a8dea0..15fce92 100644 --- a/mirzaev/skillparts/system/views/invoice/order/pattern.php +++ b/mirzaev/skillparts/system/views/invoice/order/pattern.php @@ -1,3 +1,8 @@ + @@ -78,7 +83,13 @@ - Счет на оплату № от + zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + ?> + Счет на оплату № от setTimestamp($order['date'])->setTimezone(new DateTimeZone($timezone))->format('d.m.Y') ?> @@ -144,7 +155,10 @@ - + + + + @@ -182,7 +196,7 @@ - + diff --git a/mirzaev/skillparts/system/views/layouts/main.php b/mirzaev/skillparts/system/views/layouts/main.php index e0430ed..1579cdf 100644 --- a/mirzaev/skillparts/system/views/layouts/main.php +++ b/mirzaev/skillparts/system/views/layouts/main.php @@ -20,23 +20,8 @@ AppAsset::register($this); - - - - - - - - - - - - - - - - - + + registerCsrfMetaTags() ?> <?= Html::encode($this->title ?? 'SkillParts') ?> @@ -46,7 +31,7 @@ AppAsset::register($this); beginBody() ?> -
+
diff --git a/mirzaev/skillparts/system/views/notification/index.php b/mirzaev/skillparts/system/views/notification/index.php deleted file mode 100644 index e69de29..0000000 diff --git a/mirzaev/skillparts/system/views/notification/popup.php b/mirzaev/skillparts/system/views/notification/popup.php index 9e87485..f711ab5 100644 --- a/mirzaev/skillparts/system/views/notification/popup.php +++ b/mirzaev/skillparts/system/views/notification/popup.php @@ -1,10 +1,34 @@ readId(); - $html = $notification->html; - echo << - $html -
- HTML; -?> \ No newline at end of file +use app\models\Settings; + +// Инициализация данных для генерации HTML +$id = 'popup/' . $notification->readId(); +$html = $notification->html; +$type = $notification->genTypeToRussian(); +$date = null; + +// Поиск даты создания +foreach ($notification->jrnl as $jrnl) { + if ($jrnl['action'] === 'create') { + // Найдена дата создания + + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + // Инициализация данных для генерации HTML + $date = (new DateTime())->setTimestamp($jrnl['date'])->setTimezone(new DateTimeZone($timezone))->format('H:i d.m.Y'); + } +} + +$title = <<$type$date +HTML; + +echo << + $title + $html + +HTML; diff --git a/mirzaev/skillparts/system/views/notification/system/orders/new.php b/mirzaev/skillparts/system/views/notification/system/orders/new.php index 86b9443..c2ff066 100644 --- a/mirzaev/skillparts/system/views/notification/system/orders/new.php +++ b/mirzaev/skillparts/system/views/notification/system/orders/new.php @@ -1 +1,3 @@ -Новый заказ +
+

Новый заказ: #

+
diff --git a/mirzaev/skillparts/system/views/orders/index.php b/mirzaev/skillparts/system/views/orders/index.php index da7dfa2..d1aab30 100644 --- a/mirzaev/skillparts/system/views/orders/index.php +++ b/mirzaev/skillparts/system/views/orders/index.php @@ -8,6 +8,9 @@ use yii\bootstrap\ActiveForm; use app\models\AccountEdgeOrder; use app\models\Order; use app\models\OrderEdgeSupply; +use app\models\Settings; + +use moonland\phpexcel\Excel; // Инициализация открытой панели if (empty($window)) { @@ -54,21 +57,27 @@ if (empty($window)) { $date = null; foreach ($order['order']['jrnl'] as $entry) { - // Перебор записей в журнал + // Перебор записей в журнале if ($entry['action'] === 'requested') { + // Найдена запись со временем запроса заказа + if (empty($date) || $date <= $entry['date']) { // Буфер не инициализирован или в него записано более старое событие - // Запись + // Запись в буфер $date = $entry['date']; } } } + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + // Конвертация данных из буфера $date = [ - 'H:i' => date('H:i', $date), - 'm.d.Y' => date('m.d.Y', $date) + 'H:i' => (new DateTime())->setTimestamp($date)->setTimezone(new DateTimeZone($timezone))->format('H:i'), + 'm.d.Y' => (new DateTime())->setTimestamp($date)->setTimezone(new DateTimeZone($timezone))->format('m.d.Y') ]; ?> @@ -87,8 +96,13 @@ if (empty($window)) { $count = 1; ?> - + + + if ($amount['auto'] > 0) { + // Найдены поставки с автоматической доставкой - - -

- - - -

-
+ if (Order::checkSuppliesStts($order_edge_supply)) { + $status = ''; + } else { + $status = ''; + } + + // Генерация HTML + echo << + +

+ {$product['catn']} x{$amount['auto']} + + $status +

+ + HTML; + } + + if ($amount['avia'] > 0) { + // Найдены поставки с автоматической доставкой + + if (Order::checkSuppliesStts($order_edge_supply)) { + $status = ''; + } else { + $status = ''; + } + + // Генерация HTML + echo << + +

+ {$product['catn']} x{$amount['avia']} + + $status +

+ + HTML; + } + + ?> @@ -242,13 +289,27 @@ if (empty($window)) { // Пропуск активного заказа (несформированного, корзины) if ($account_edge_order[0]['type'] === 'current') continue; - // Деинициализация мусора - unset($date); - // Инициализация времени подтверждения заказа - if (isset($order['jrnl'])) foreach ($order['jrnl'] as $entry) { - if ($entry['action'] === 'accepted') $date = date('H:i d.m.Y', $entry['date']); + if (isset($order['jrnl'])) { + // Журнал найден + + foreach ($order['jrnl'] as $entry) { + // Перебор записей в журнале + + if ($entry['action'] === 'accepted') { + // Найден принятый заказ + + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + // Запись данных о дате заказа + $date = (new DateTime())->setTimestamp($entry['date'])->setTimezone(new DateTimeZone($timezone))->format('H:i d.m.Y'); + } + } } + + // Инициализация значения по умолчанию $date ?? $date = 'Ожидается'; // Инициализация буфера поставок @@ -260,99 +321,158 @@ if (empty($window)) { if (isset($supplies)) { // Найдены поставки + // Инициализация максимального срока доставки + $delivery_max = 0; + // Инициализация поставок foreach ($supplies as $supply) { // Перебор поставок - // Инициализация окружения + // Инициализация переменных extract($supply); - // Инициализация связи поставки с заказом (подразумевается, что все одинаковые по основным параметрам) - $part = $order_edge_supply[0]; + // Инициализация цены + $price_raw = $cost; - // Инициализация доставки - if (isset($delivery['error'])) { - // Не удалось рассчитать доставку + // Инициализация комментария + $comment = $order_edge_supply['comm'] ?? 'Комментарий к заказу'; - // Инициализация индикатора - $date_icon = ''; + if ($amount['auto'] > 0) { + // Найдены поставки с автоматической доставкой + + // Инициализация цены + $price_auto = $price_raw['auto'] . ' ' . $currency; // Инициализация доставки - if (isset($part['date'])) { - // Найдены данные в инстанции поставки + if (!isset($delivery) || (isset($delivery['auto'], $delivery['auto']['error']) || $delivery === '?')) { + // Не удалось рассчитать доставку - // Запись в буфер вывода - // $time = $part['time'] . ' дн'; - $date = date('d.m.Y', $part['date']); - $date_html = "$date"; + // Инициализация времени + $delivery_auto = '?'; } else { - $date = 'Неизвестно'; - $date_html = "$date"; + // Удалось рассчитать доставку + + // Инициализация даты отправки + try { + // Взять данные из "arrivalToOspSender" (Дата прибытия на терминал-отправитель) + + $delivery_auto_send_date = DateTime::createFromFormat('Y-m-d', $delivery['auto']['orderDates']['arrivalToOspSender'])->getTimestamp(); + } catch (Throwable $e) { + // Взять данные из "pickup" (Дата передачи груза на адресе отправителя) + + $delivery_auto_send_date = DateTime::createFromFormat('Y-m-d', $delivery['auto']['orderDates']['pickup'])->getTimestamp(); + } + + // Инициализация времени доставки + try { + // Доставка по воздуху (подразумевается), данные из "giveoutFromOspReceiver" (Дата и время, с которого груз готов к выдаче на терминале) + + // Оставлено на всякий случай для дальнейших разбирательств + + $delivery_auto_converted = DateTime::createFromFormat('Y-m-d H:i:s', $delivery['auto']['orderDates']['giveoutFromOspReceiver'])->getTimestamp(); + } catch (Throwable $e) { + // Автоматическая доставка (подразумевается), данные из "arrivalToOspReceiver" (Дата прибытия натерминал-получатель) + + $delivery_auto_converted = DateTime::createFromFormat('Y-m-d', $delivery['auto']['orderDates']['arrivalToOspReceiver'])->getTimestamp(); + } + $delivery_auto = ceil(($delivery_auto_converted - ($delivery_auto_send_date ?? 0)) / 60 / 60 / 24) + 1; } - // Инициализация стоимости - if (isset($part['cost'])) $cost_html = '' . ($cost = $part['cost']) . ' ' . $currency . ''; - else $cost_html = '' . ($cost = 'Неизвестно') . ''; - } else { - // Удалось рассчитать доставку + // Инициализация статуса связи поставки + $status = OrderEdgeSupply::convertStatusToRussian($part['stts'] ?? ''); - // Инициализация типа доставки - $time_type = $part['dlvr']['type'] ?? 'auto'; - - // Инициализация индикатора - $date_icon = match ($time_type) { - 'avia' => '', - default => '' + // Инициализация класса для поставки (если необходимо) + $css = match ($part['stts'] ?? '') { + 'accepted' => ' supply_accepted', + default => '' }; - // Инициализация доставки - if (isset($part['date'])) { - // Найдены данные в инстанции поставки + // Реинициализация максимальной даты доставки + if ($delivery_max !== '?' && $delivery_max < $delivery_auto) $delivery_max = $delivery_auto; + else if ($delivery_auto === '?') $delivery_max = '?'; - // Запись в буфер вывода - // $time = $part['time'] . ' дн'; - $date = date('d.m.Y', $part['date']); - $date_html = "$date"; - } else { - // Рассчет времени из данных поставки - - try { - $time_converted = DateTime::createFromFormat('Y-m-d H:i:s', $delivery['auto']['orderDates']['giveoutFromOspReceiver'])->getTimestamp(); - } catch (Exception $e) { - $time_converted = DateTime::createFromFormat('Y-m-d', $delivery['auto']['orderDates']['arrivalToOspReceiver'])->getTimestamp(); - } - // $time = (ceil(($time_converted - time()) / 60 / 60 / 24) + 1) . ' дн'; - $date = date('d.m.Y', $time_converted); - $date_html = "$date"; - } - - // Инициализация стоимости - if (isset($part['cost'])) $cost_html = '' . ($cost = $part['cost']) . ' ' . $currency . ''; - else $cost_html = '' . ($cost = $cost['auto']) . ' ' . $currency . ''; + // Генерация HTML + // Пробела между supply и $css не должно быть + $supplies_html .= << +
{$supply['catn']}
+ $status +
$delivery_auto
+
{$amount['auto']}
+
$price_auto
+ + HTML; } - // Инициализация статуса связи поставки - $status = OrderEdgeSupply::convertStatusToRussian($part['stts'] ?? ''); + if ($amount['avia'] > 0) { + // Найдены поставки с доставкой по воздуху - // Инициализация класса для поставки (если необходимо) - $css = match ($part['stts'] ?? '') { - 'accepted' => ' supply_accepted', - default => '' - }; + // Инициализация цены + $price_avia = $price_raw['avia'] . ' ' . $currency; - // Пробела между supply и $css не должно быть - $supplies_html .= <<getTimestamp(); + } catch (Throwable $e) { + // Взять данные из "pickup" (Дата передачи груза на адресе отправителя) + + $delivery_avia_send_date = DateTime::createFromFormat('Y-m-d', $delivery['avia']['orderDates']['pickup'])->getTimestamp(); + } + + // Инициализация времени доставки + try { + // Доставка по воздуху (подразумевается), данные из "giveoutFromOspReceiver" (Дата и время, с которого груз готов к выдаче на терминале) + + $delivery_avia_converted = DateTime::createFromFormat('Y-m-d H:i:s', $delivery['avia']['orderDates']['giveoutFromOspReceiver'])->getTimestamp(); + } catch (Throwable $e) { + // Автоматическая доставка (подразумевается), данные из "arrivalToOspReceiver" (Дата прибытия натерминал-получатель) + + // Оставлено на всякий случай для дальнейших разбирательств + + $delivery_avia_converted = DateTime::createFromFormat('Y-m-d', $delivery['avia']['orderDates']['arrivalToOspReceiver'])->getTimestamp(); + } + $delivery_avia = ceil(($delivery_avia_converted - ($delivery_avia_send_date ?? 0)) / 60 / 60 / 24) + 1; + } + + // Инициализация статуса связи поставки + $status = OrderEdgeSupply::convertStatusToRussian($part['stts'] ?? ''); + + // Инициализация класса для поставки (если необходимо) + $css = match ($part['stts'] ?? '') { + 'accepted' => ' supply_accepted', + default => '' + }; + + // Реинициализация максимальной даты доставки + if ($delivery_max !== '?' && $delivery_max < $delivery_avia) $delivery_max = $delivery_avia; + else if ($delivery_avia === '?') $delivery_max = '?'; + + // Генерация HTML + // Пробела между supply и $css не должно быть + $supplies_html .= << -
{$supply['catn']}
-
$status
-
$date_html
-
{$amount['auto']}
-
$cost_html
+
{$supply['catn']}
+ $status +
$delivery_avia
+
{$amount['avia']}
+
$price_avia
HTML; + } - // Обновление общего счётчика цены - $sum += (int) $cost; + // Инициализация общей цены + $sum = $price_raw['avia'] * $amount['avia'] + $price_raw['auto'] * $amount['auto']; } } @@ -369,7 +489,7 @@ if (empty($window)) {
$invoice
$status
-
$date
+
$delivery_max
$sum руб
@@ -395,6 +515,11 @@ if (empty($window)) { // Инициализация индикатора готовности календаря orders_calendar_ready = false; + zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + ?> + if (document.readyState === "complete") { // Документ загружен @@ -409,7 +534,7 @@ if (empty($window)) { onSelect: orders_calendar_select }); - $('#orders_period_calendar').data('datepicker').selectDate([new Date(''), new Date('')]); + $('#orders_period_calendar').data('datepicker').selectDate([new Date('setTimestamp(time() - 604800)->setTimezone(new DateTimeZone($timezone))->format('Y-m-d') ?>'), new Date('format('Y-m-d') ?>')]); // Активация календаря orders_calendar_ready = true; @@ -431,7 +556,7 @@ if (empty($window)) { onSelect: orders_calendar_select }); - $('#orders_period_calendar').data('datepicker').selectDate([new Date(''), new Date('')]); + $('#orders_period_calendar').data('datepicker').selectDate([new Date('setTimestamp(time() - 604800)->setTimezone(new DateTimeZone($timezone))->format('Y-m-d') ?>'), new Date('format('Y-m-d') ?>')]); // Активация календаря orders_calendar_ready = true; diff --git a/mirzaev/skillparts/system/views/orders/search/panel.php b/mirzaev/skillparts/system/views/orders/search/panel.php index 286c16d..dc0bc2e 100644 --- a/mirzaev/skillparts/system/views/orders/search/panel.php +++ b/mirzaev/skillparts/system/views/orders/search/panel.php @@ -3,18 +3,13 @@ declare(strict_types=1); use app\models\Search; +use app\models\Settings; if (isset($history) && $history) { // Отображение истории if (yii::$app->user->isGuest) { // Не аутентифицирован - - // В будущем выводить историю из cookie - - echo <<Войдите для просмотра истории поиска

- HTML; } else if ($rows = Search::searchByEdge( from: 'account', to: 'search', @@ -23,31 +18,18 @@ if (isset($history) && $history) { )) { // История поиска существует + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + foreach ($rows as $row) { // Инициализация $time = $row->jrnl; - $date = empty($time) ? '' : date('d.m.y', end($time)['date']); + $date = empty($time) ? '' : (new DateTime())->setTimestamp(end($time)['date'])->setTimezone(new DateTimeZone($timezone))->format('d.m.y'); echo <<$row->text$date HTML; } } -} else if (isset($response) && $response) { - // Ответ получен - - foreach ($response as $row) { - // Перебор найденных данных - - $catn = $row['supply']['catn']; - - echo <<$catn - HTML; - } -} else { - echo <<Ничего не найдено

- HTML; } ?> diff --git a/mirzaev/skillparts/system/views/profile/monitoring.php b/mirzaev/skillparts/system/views/profile/monitoring.php index ae67f0c..f5f2277 100644 --- a/mirzaev/skillparts/system/views/profile/monitoring.php +++ b/mirzaev/skillparts/system/views/profile/monitoring.php @@ -39,7 +39,12 @@ $panel ?? $panel = 'profile_panel_monitoring_input_search_history'; foreach ($search_history ?? [] as $row) { // Инициализация $time = $row->jrnl; - $date = empty($row->jrnl) ? '' : date('H:i d.m.Y', end($time)['date']); + + // Инициализация часового пояса + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + + $date = empty($row->jrnl) ? '' : (new DateTime())->setTimestamp(end($time)['date'])->setTimezone(new DateTimeZone($timezone))->format('H:i d.m.Y'); echo << @@ -84,4 +89,4 @@ $panel ?? $panel = 'profile_panel_monitoring_input_search_history'; || yii::$app->user->identity->type === 'moderator') ) : ?> - \ No newline at end of file + diff --git a/mirzaev/skillparts/system/views/search/panel.php b/mirzaev/skillparts/system/views/search/panel.php index e605d70..ab5a2b8 100644 --- a/mirzaev/skillparts/system/views/search/panel.php +++ b/mirzaev/skillparts/system/views/search/panel.php @@ -3,6 +3,7 @@ declare(strict_types=1); use app\models\Search; +use app\models\Settings; if (isset($history) && $history) { // Отображение истории @@ -23,10 +24,13 @@ if (isset($history) && $history) { )) { // История поиска существует + preg_match_all('/UTC([\+\-0-9:]*)/', $account->zone ?? Settings::search()['timezone_default'] ?? 'UTC+3', $timezone); + $timezone = $timezone[1][0]; + foreach ($rows as $row) { // Инициализация $time = $row->jrnl; - $date = empty($time) ? '' : date('H:i d.m.Y', end($time)['date']); + $date = empty($time) ? '' : (new DateTime())->setTimestamp(end($time)['date'])->setTimezone(new DateTimeZone($timezone))->format('H:i d.m.Y'); echo <<$row->text$date diff --git a/mirzaev/skillparts/system/web/css/notification.css b/mirzaev/skillparts/system/web/css/notification.css index 2569f3a..ba4411a 100644 --- a/mirzaev/skillparts/system/web/css/notification.css +++ b/mirzaev/skillparts/system/web/css/notification.css @@ -10,7 +10,6 @@ z-index : 100; bottom : 0; position: fixed; - width: 370px; overflow: hidden; } diff --git a/mirzaev/skillparts/system/web/favicon.ico b/mirzaev/skillparts/system/web/favicon.ico index 4a35d39e1bfada62d6e92d0fe6d0a7833d5f8d65..66bc35b01a75cfd70aadac011b634f3691d1b171 100644 GIT binary patch literal 1491998 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 +c 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 diff --git a/mirzaev/skillparts/system/web/img/logos/favicon.old.ico b/mirzaev/skillparts/system/web/img/logos/favicon.old.ico new file mode 100644 index 0000000000000000000000000000000000000000..4a35d39e1bfada62d6e92d0fe6d0a7833d5f8d65 GIT binary patch literal 1150 zcmd5*T}YEr7(S8^bS3^>MHHz72~pHVH?@9nBdB&~A;qeTM%|>)MO09M zC2Y-{Yg4w>thr4b-=;-M+FG-=>8y0k!u@Xj27K`rcd_3np=REK8p7)&ZJ&YC5 zS5(BPU(SvfGFHwQTScHHTA5oX^ItXq8iJl9m(A#Nne-o!(aX7inrEQM0>jy1dVy^us9D&Iw~uPh2E$t6?5+~+tRlu@mHHPoE z2tDs+lbdbGRYzoNy6=_V2bzr}m@Qyng$jZ_3R i#jW{E@Mro@8^GTHW4gtZ#v(#N{&aLixd`(bZodN?lx$D{ literal 0 HcmV?d00001 diff --git a/mirzaev/skillparts/system/web/img/logos/faviconRaw3.png b/mirzaev/skillparts/system/web/img/logos/faviconRaw3.png new file mode 100644 index 0000000000000000000000000000000000000000..7a35c05577dccde95f02ec94e2a159a64670cb3e GIT binary patch literal 28901 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

SE7T)l3kT@$cj?a37 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 literal 0 HcmV?d00001 diff --git a/mirzaev/skillparts/system/web/js/account.js b/mirzaev/skillparts/system/web/js/account.js index 17db513..09183c2 100644 --- a/mirzaev/skillparts/system/web/js/account.js +++ b/mirzaev/skillparts/system/web/js/account.js @@ -303,14 +303,15 @@ function account_response(data, status, xhr) { function account_response_success(data, status, xhr) { // Обработка ответов от удавшихся запросов + account_response(data, status, xhr); + // Реинициализация панели поиска // Перенести в отдельный файл который подгружается в зависимости от настроек // search_panel_show(); // // Обновление панели поиска - // product_search(); + product_search(); - account_response(data, status, xhr); } function account_response_error(data, status, xhr) { diff --git a/mirzaev/skillparts/system/web/js/geolocation.js b/mirzaev/skillparts/system/web/js/geolocation.js index c75848c..14abc47 100644 --- a/mirzaev/skillparts/system/web/js/geolocation.js +++ b/mirzaev/skillparts/system/web/js/geolocation.js @@ -1,83 +1,83 @@ -// Инициализация геолокации (запись геолокации по айпи, если не существует) -function geolocation_init() { - $.ajax({ - url: '/profile/geolocation/init', - type: 'post', - dataType: 'json', - data: { '_csrf': yii.getCsrfToken() }, - success: geolocation_success, - error: geolocation_error - }); -}; +// // Инициализация геолокации (запись геолокации по айпи, если не существует) +// function geolocation_init() { +// $.ajax({ +// url: '/profile/geolocation/init', +// type: 'post', +// dataType: 'json', +// data: { '_csrf': yii.getCsrfToken() }, +// success: geolocation_success, +// error: geolocation_error +// }); +// }; -geolocation_init(); +// geolocation_init(); -// Запись геолокации (точный режим из браузера по запросу) -function geolocation_gps() { +// // Запись геолокации (точный режим из браузера по запросу) +// function geolocation_gps() { - // Запрос геолокации у пользователя - navigator.geolocation.getCurrentPosition( - geolocation_gps_success, - geolocation_gps_error, - { - enableHighAccuracy: true - } - ); -}; +// // Запрос геолокации у пользователя +// navigator.geolocation.getCurrentPosition( +// geolocation_gps_success, +// geolocation_gps_error, +// { +// enableHighAccuracy: true +// } +// ); +// }; -// Получено подтверждение выдачи геолокации от пользователя -function geolocation_gps_success({ coords }) { +// // Получено подтверждение выдачи геолокации от пользователя +// function geolocation_gps_success({ coords }) { - // Инициализация - const { latitude, longitude } = coords; +// // Инициализация +// const { latitude, longitude } = coords; - // Запрос - $.ajax({ - url: '/profile/geolocation/write', - type: 'post', - dataType: 'json', - data: { - 'latitude': latitude, - 'longitude': longitude, - '_csrf': yii.getCsrfToken() - }, - success: geolocation_success, - error: geolocation_error - }); -}; +// // Запрос +// $.ajax({ +// url: '/profile/geolocation/write', +// type: 'post', +// dataType: 'json', +// data: { +// 'latitude': latitude, +// 'longitude': longitude, +// '_csrf': yii.getCsrfToken() +// }, +// success: geolocation_success, +// error: geolocation_error +// }); +// }; -// Не получено подтверждение выдачи геолокации от пользователя -function geolocation_gps_error({ message }) { -}; +// // Не получено подтверждение выдачи геолокации от пользователя +// function geolocation_gps_error({ message }) { +// }; -function geolocation_responce(data, status, xhr) { - // Обработка ответов +// function geolocation_responce(data, status, xhr) { +// // Обработка ответов - main_response(data, status, xhr); -}; +// main_response(data, status, xhr); +// }; -function geolocation_success(data, status, xhr) { - // Обработка ответов от удавшихся запросов +// function geolocation_success(data, status, xhr) { +// // Обработка ответов от удавшихся запросов - if (data !== undefined) { - // Получены данные с сервера +// if (data !== undefined) { +// // Получены данные с сервера - // Запрос более точной геолокации - if (data.requestGps !== undefined && data.requestGps === true) { +// // Запрос более точной геолокации +// if (data.requestGps !== undefined && data.requestGps === true) { - geolocation_gps(); - } - }; +// geolocation_gps(); +// } +// }; - geolocation_responce(data, status, xhr); -}; +// geolocation_responce(data, status, xhr); +// }; -function geolocation_error(data, status, xhr) { - // Обработка ответов от неудавшихся запросов +// function geolocation_error(data, status, xhr) { +// // Обработка ответов от неудавшихся запросов - // Инициализация - data = data.responseJSON; +// // Инициализация +// data = data.responseJSON; - geolocation_responce(data, status, xhr); -}; +// geolocation_responce(data, status, xhr); +// }; diff --git a/mirzaev/skillparts/system/web/js/google/analytics.js b/mirzaev/skillparts/system/web/js/google/analytics.js new file mode 100644 index 0000000..771361e --- /dev/null +++ b/mirzaev/skillparts/system/web/js/google/analytics.js @@ -0,0 +1,5 @@ +window.dataLayer = window.dataLayer || []; +function gtag(){dataLayer.push(arguments);} +gtag('js', new Date()); + +gtag('config', 'G-6XYKBJJWR4'); diff --git a/mirzaev/skillparts/system/web/js/orders_panel.js b/mirzaev/skillparts/system/web/js/orders_panel.js index a1b0daf..2a3beaa 100644 --- a/mirzaev/skillparts/system/web/js/orders_panel.js +++ b/mirzaev/skillparts/system/web/js/orders_panel.js @@ -40,7 +40,7 @@ function order_accept(order_key) { return false; }; -function orders_supply_edit(supply_key, order_key) { +function orders_supply_edit(type, supply_key, order_key) { // Инициализация let supply = document.getElementById(supply_key + '_supply'); @@ -229,7 +229,7 @@ function orders_supply_edit(supply_key, order_key) { // Инициализация индикатора let span = document.createElement('span'); - span.setAttribute('id', supply.getAttribute('id') + '_stts_indicator_icon'); + span.setAttribute('id', supply.getAttribute('id') + '_' + type + '_supply_stts_indicator_icon'); span.setAttribute('class', 'ml-auto my-auto fas fa-check'); // Инициализация кнопки @@ -237,7 +237,7 @@ function orders_supply_edit(supply_key, order_key) { button.setAttribute('id', supply.getAttribute('id') + '_stts_button'); button.setAttribute('type', 'button'); button.setAttribute('role', 'button'); - button.setAttribute('onclick', 'return orders_supply_comm_write(this, \'' + supply_key + '\', \'' + order_key + '\');'); + button.setAttribute('onclick', 'return orders_supply_comm_write(this, \'' + type + '\' \'' + supply_key + '\', \'' + order_key + '\');'); if (data.stts === undefined || data.stts == 0) { button.setAttribute('class', 'col-12 btn button_blue button_clean'); button.innerText = 'Подтвердить'; @@ -246,9 +246,9 @@ function orders_supply_edit(supply_key, order_key) { button.innerText = 'Подтверждено'; // Инициализация - let title = document.getElementById(supply.getAttribute('id') + '_stts_indicator'); + let title = document.getElementById(supply.getAttribute('id') + '_' + type + '_supply_stts_indicator'); - if (title.children[0] === undefined) { + if (title.children[1] === undefined) { // Индикатор не найден // Запись индикатора @@ -273,7 +273,7 @@ function orders_supply_edit(supply_key, order_key) { return false; }; -function orders_supply_comm_write(button, supply_key, order_key) { +function orders_supply_comm_write(button, type, supply_key, order_key) { // Инициализация let supply = document.getElementById(supply_key + '_supply'); @@ -288,7 +288,7 @@ function orders_supply_comm_write(button, supply_key, order_key) { success: function (data, status, xhr) { // Инициализация индикатора let span = document.createElement('span'); - span.setAttribute('id', supply.getAttribute('id') + '_stts_indicator_icon'); + span.setAttribute('id', supply.getAttribute('id') + '_' + type + '_supply_stts_indicator_icon'); span.setAttribute('class', 'ml-auto my-auto fas fa-check'); if (data.stts === undefined || data.stts == 0) { @@ -299,7 +299,7 @@ function orders_supply_comm_write(button, supply_key, order_key) { button.innerText = 'Подтверждено'; // Инициализация - let title = document.getElementById(supply.getAttribute('id') + '_stts_indicator'); + let title = document.getElementById(supply.getAttribute('id') + '_' + type + '_supply_stts_indicator'); if (title.children[0] === undefined) { // Индикатор не найден diff --git a/mirzaev/skillparts/system/web/js/search.js b/mirzaev/skillparts/system/web/js/search.js index 0f180f2..453de5c 100644 --- a/mirzaev/skillparts/system/web/js/search.js +++ b/mirzaev/skillparts/system/web/js/search.js @@ -79,9 +79,6 @@ function search_panel_response(text, advanced, data, status, xhr) { // Обновление окна результатов поиска panel.innerHTML = data.panel; - // Отображение окна (потом надо переделать) - $('#search_line').dropdown('show'); - // Реинициализация reinitialization(panel); }; @@ -101,6 +98,11 @@ function search_panel_response(text, advanced, data, status, xhr) { }; }; + // Отображение окна поиска + if (data.search_line_window_show === 1) { + search_panel_show(); + }; + // Сокрытие окна поиска if (data.search_line_window_hide === 1) { search_panel_hide(); @@ -116,7 +118,7 @@ function search_panel_success(text, advanced, data, status, xhr) { search_panel_response(text, advanced, data, status, xhr); }; -function search_panel_error(text, advanced, data, status) { +function search_panel_error(text, advanced, data, status, xhr) { // Обработка ответов от неудавшихся запросов // Инициализация diff --git a/mirzaev/skillparts/system/web/js/yandex/geolocation.js b/mirzaev/skillparts/system/web/js/yandex/geolocation.js new file mode 100644 index 0000000..89b7957 --- /dev/null +++ b/mirzaev/skillparts/system/web/js/yandex/geolocation.js @@ -0,0 +1,73 @@ +'use strict' + +// Инициализация геолокации (запись геолокации по айпи, если не существует) +function yandex_geolocation_init() { + $.ajax({ + url: '/profile/geolocation/init', + type: 'post', + dataType: 'json', + data: { '_csrf': yii.getCsrfToken() }, + success: yandex_geolocation_success, + error: yandex_geolocation_error + }); +}; + +yandex_geolocation_init(); + +function yandex_geolocation_search() { + try { + ymaps.geolocation.get({ + autoReverseGeocode: true + }).then(function (result) { + // Запрос + $.ajax({ + url: '/profile/geolocation/write', + type: 'post', + dataType: 'json', + data: { + 'yandex': { + // 'metadata': result.geoObjects.get(0).properties.get('metaDataProperty'), + 'coordinates': result.geoObjects.get(0).properties.get('boundedBy') + }, + '_csrf': yii.getCsrfToken() + }, + success: yandex_geolocation_success, + error: yandex_geolocation_error + }); + }) + } catch (err) { + setTimeout(yandex_geolocation_search, 3000); + } +} + + +function yandex_geolocation_responce(data, status, xhr) { + // Обработка ответов + + main_response(data, status, xhr); +}; + +function yandex_geolocation_success(data, status, xhr) { + // Обработка ответов от удавшихся запросов + + if (data !== undefined) { + // Получены данные с сервера + + // Запрос геолокации + if (data.geolocation !== undefined && data.geolocation === false) { + + yandex_geolocation_search(); + } + }; + + yandex_geolocation_responce(data, status, xhr); +}; + +function yandex_geolocation_error(data, status, xhr) { + // Обработка ответов от неудавшихся запросов + + // Инициализация + data = data.responseJSON; + + yandex_geolocation_responce(data, status, xhr); +}; diff --git a/mirzaev/skillparts/system/web/js/yandex/metrika.js b/mirzaev/skillparts/system/web/js/yandex/metrika.js new file mode 100644 index 0000000..5458289 --- /dev/null +++ b/mirzaev/skillparts/system/web/js/yandex/metrika.js @@ -0,0 +1,12 @@ +(function (m, e, t, r, i, k, a) { + m[i] = m[i] || function () { (m[i].a = m[i].a || []).push(arguments) }; + m[i].l = 1 * new Date(); k = e.createElement(t), a = e.getElementsByTagName(t)[0], k.async = 1, k.src = r, a.parentNode.insertBefore(k, a) +}) + (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym"); + +ym(84269905, "init", { + clickmap: true, + trackLinks: true, + accurateTrackBounce: true, + webvisor: true +});