$historyDays = $request->get('historyDays');
$intervalMonths = $request->get('intervalMonths');
+ $startFrom = $request->get('startFrom', date('Y-m-d'));
if ($historyDays === null || $intervalMonths === null) {
]);
}
- $endDate = date('Y-m-d');
+ $endDate = date('Y-m-d', strtotime($startFrom));
$startDate = date('Y-m-d', strtotime("-{$historyDays} days", strtotime($endDate)));
$productIds = (new Query())
]);
}
- $now = new \DateTime();
+ $now = new \DateTime($endDate);
$from = (clone $now)->modify("-{$intervalMonths} months")
->modify('first day of this month')->setTime(0,0,0)
->format('Y-m-d H:i:s');
return $this->render('add-activity', [
'historyDays' => $historyDays,
'intervalMonths' => $intervalMonths,
+ 'startFrom' => $startFrom,
]);
}
/** @var yii\web\View $this */
/** @var int $historyDays */
/** @var int $intervalMonths */
+/* @var string $startFrom */
+use dosamigos\datepicker\DatePicker;
+use yii\base\DynamicModel;
use yii\helpers\Html;
use kartik\form\ActiveForm;
-$this->title = 'Заполнить актуальность';
+$this->title = 'Заполнить актуальность товаров по истории продаж';
?>
<div class="add-activity p-4">
<h1><?= Html::encode($this->title) ?></h1>
<?php endif; ?>
<p>Чтобы автоматически проставить актуальность товаров - используйте форму </p>
<ul class="list-group mb-4 list-group-numbered">
- <li class="list-group-item">Проставьте за сколько дней от текущей даты взять историю продаж товаров (например за 2 недели - 14 дней)</li>
+ <li class="list-group-item">Проставьте дату отсчета, от которой будет расчитываться история продаж</li>
+ <li class="list-group-item">Проставьте за сколько дней от даты отсчета взять историю продаж товаров (например за 2 недели - 14 дней)</li>
<li class="list-group-item">Проставьте интервал в месяцах сколько действует актуальность товаров</li>
<li class="list-group-item">Нажмите запустить и после обновления страницы актуальность будет проставлена</li>
</ul>
'method'=>'get',
'action'=>['add-activity'],
]); ?>
+ <?= Html::label('Дата отсчета для расчета актуальности', 'startFrom') ?>
+ <?= DatePicker::widget([
+ 'name' => 'startFrom',
+ 'id' => 'startFrom',
+ 'value' => date('d-m-Y'),
+ 'template' => '{addon}{input}',
+ 'language' => 'ru',
+ 'clientOptions' => [
+ 'autoclose' => true,
+ 'format' => 'dd-mm-yyyy',
+ 'todayBtn' => true
+ ],
+ 'clientEvents' => [
+ ],
+ 'containerOptions' => ['class' => 'mb-4'],
+ ]) ?>
- <?= Html::label('Дней до текущей даты из истории продаж', 'historyDays') ?>
- <?= Html::input('number', 'historyDays', $historyDays, ['min'=>1, 'class'=>'form-control']) ?>
+ <?= Html::label('Дней до даты отсчета, по которым считают историю продаж', 'historyDays') ?>
+ <?= Html::input('number', 'historyDays', $historyDays, ['min'=>1, 'class'=>'form-control mb-4']) ?>
- <?= Html::label('Интервал активности - до и после текущей даты в месяцах', 'intervalMonths') ?>
- <?= Html::input('number', 'intervalMonths', $intervalMonths, ['min'=>1, 'class'=>'form-control']) ?>
+ <?= Html::label('Интервал активности - до и после даты отсчета в месяцах', 'intervalMonths') ?>
+ <?= Html::input('number', 'intervalMonths', $intervalMonths, ['min'=>1, 'class'=>'form-control mb-4']) ?>
<?= Html::submitButton('Запустить', ['class'=>'btn btn-success mt-3']) ?>