From: fomichev Date: Thu, 12 Dec 2024 12:31:41 +0000 (+0300) Subject: Форма для фильтрации X-Git-Tag: 1.7~161^2~14 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=121ba865b990f79a4a807ccba0c72e24d79689c4;p=erp24_rep%2Fyii-erp24%2F.git Форма для фильтрации --- diff --git a/erp24/controllers/UsersMessageManagementController.php b/erp24/controllers/UsersMessageManagementController.php index 09cbc4f8..654e1b40 100644 --- a/erp24/controllers/UsersMessageManagementController.php +++ b/erp24/controllers/UsersMessageManagementController.php @@ -18,8 +18,11 @@ class UsersMessageManagementController extends Controller $request = Yii::$app->request; $model = UsersMessageManagement::find()->one(); - $startDate = $request->get('start_date', date('Y-m-d')); - $endDate = $request->get('end_date', date('Y-m-d', strtotime('+7 days'))); + $month = $request->get('month', date('m')); + $year = $request->get('year', date('Y')); + + $startDate = date('Y-m-d', strtotime("$year-$month-01")); + $endDate = date('Y-m-t', strtotime($startDate)); // Последний день месяца $dates = []; $currentDate = strtotime($startDate); @@ -32,8 +35,7 @@ class UsersMessageManagementController extends Controller 'whatsapp' => [$this->generateLink($formattedDate, 'whatsapp', 'generate-excel'), $this->generateLink($formattedDate, 'whatsapp', 'view-kogort-users')], 'call' => [$this->generateLink($formattedDate, 'call', 'generate-excel'), - $this->generateLink($formattedDate, 'call', 'view-kogort-users') ], - + $this->generateLink($formattedDate, 'call', 'view-kogort-users')], ]; $currentDate = strtotime('+1 day', $currentDate); } @@ -57,8 +59,8 @@ class UsersMessageManagementController extends Controller return $this->render('index', [ 'model' => $model, 'links' => $dates, - 'startDate' => $startDate, - 'endDate' => $endDate, + 'month' => $month, + 'year' => $year, ]); } @@ -67,9 +69,11 @@ class UsersMessageManagementController extends Controller { $request = Yii::$app->request; + $month = $request->get('month', date('m')); + $year = $request->get('year', date('Y')); - $startDate = $request->get('start_date', date('Y-m-d')); - $endDate = $request->get('end_date', date('Y-m-d', strtotime('+7 days'))); + $startDate = date('Y-m-d', strtotime("$year-$month-01")); + $endDate = date('Y-m-t', strtotime($startDate)); // Последний день месяца $dates = []; $currentDate = strtotime($startDate); @@ -82,18 +86,16 @@ class UsersMessageManagementController extends Controller 'whatsapp' => [$this->generateLink($formattedDate, 'whatsapp', 'generate-excel'), $this->generateLink($formattedDate, 'whatsapp', 'view-kogort-users')], 'call' => [$this->generateLink($formattedDate, 'call', 'generate-excel'), - $this->generateLink($formattedDate, 'call', 'view-kogort-users') ], - + $this->generateLink($formattedDate, 'call', 'view-kogort-users')], ]; $currentDate = strtotime('+1 day', $currentDate); } - //var_dump($dates); die(); return $this->render('export-kogort', [ 'links' => $dates, - 'startDate' => $startDate, - 'endDate' => $endDate, + 'month' => $month, + 'year' => $year, ]); } @@ -133,15 +135,16 @@ class UsersMessageManagementController extends Controller $response->format = \yii\web\Response::FORMAT_RAW; - $response->headers->add('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); - $response->headers->add('Content-Disposition', 'attachment; filename="users-' . $type . '-' . $date . '.xlsx"'); - $response->headers->add('Cache-Control', 'max-age=0'); + $response->headers->set('Content-Type', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); + $response->headers->set('Content-Disposition', 'attachment; filename="users-' . $type . '-' . $date . '.xlsx"'); + $response->headers->set('Cache-Control', 'max-age=0'); $response->headers->add('Pragma', 'public'); $writer = new \PhpOffice\PhpSpreadsheet\Writer\Xlsx($spreadsheet); $writer->save('php://output'); Yii::$app->end(); + return null; } public function actionViewKogortUsers($date, $type) diff --git a/erp24/records/UsersMessageManagement.php b/erp24/records/UsersMessageManagement.php index fa4ad87b..25bd4471 100644 --- a/erp24/records/UsersMessageManagement.php +++ b/erp24/records/UsersMessageManagement.php @@ -32,6 +32,10 @@ use Yii; */ class UsersMessageManagement extends \yii\db\ActiveRecord { + + const TYPE_TARGET = 'target'; + const TYPE_WHATSAPP = 'whatsapp'; + const TYPE_CALL = 'call'; /** * {@inheritdoc} */ diff --git a/erp24/views/users-message-management/_export.php b/erp24/views/users-message-management/_export.php index 742264b2..34293dc6 100644 --- a/erp24/views/users-message-management/_export.php +++ b/erp24/views/users-message-management/_export.php @@ -1,30 +1,49 @@ +
+
+ 'month-year-form', + 'options' => ['class' => 'row align-items-center g-3'], + ]); + + ?> + +
+ field($model, 'month', [ + 'options' => ['class' => 'form-group'], + ])->dropDownList(\yii_app\helpers\DateHelper::MONTH_NUMBER_NAMES, [ + 'class' => 'form-control', + 'prompt' => 'Выберите месяц', + ])->label(false) ?> +
-
-
-
- - -
-
- - -
-
- - -
+
+ field($model, 'year', [ + 'options' => ['class' => 'form-group'], + ])->dropDownList(range(((int)$year - 3), ((int)$year + 3)), [ + 'class' => 'form-control', + 'prompt' => 'Выберите год', + ])->label(false) ?>
- + +
+ 'btn btn-primary']) ?> +
+ + +
+
+ @@ -40,27 +59,27 @@ use yii\helpers\Url; diff --git a/erp24/views/users-message-management/index.php b/erp24/views/users-message-management/index.php index 83b69fbb..ae59699c 100644 --- a/erp24/views/users-message-management/index.php +++ b/erp24/views/users-message-management/index.php @@ -9,8 +9,8 @@ use yii_app\records\UsersMessageManagement; /* @var $model UsersMessageManagement */ /** @var array $links */ -/** @var string $startDate */ -/** @var string $endDate */ +/** @var string $month */ +/** @var string $year */ $this->registerJsFile('/js/users-message-management/index.js', ['position' => \yii\web\View::POS_END]); @@ -20,7 +20,7 @@ $this->registerJsFile('/js/users-message-management/index.js', ['position' => \y

Настройка управления рассылками клиентам

- + 'main-settings-form']); ?>
- - Скачать EXCEL + + Таргет-.xlsx - + Посмотреть - - Скачать EXCEL + + Whatsapp-.xlsx - + Посмотреть - - Скачать EXCEL + + Звонок-.xlsx - + Посмотреть