class WaybillIncoming extends \yii\db\ActiveRecord
{
public const STATUS_NEW = 1;
+
/**
* {@inheritdoc}
*/
$model = new self();
$model->setAttributes([
- 'guid' => DataHelper::createGuidMy(),
+ 'guid' => DataHelper::createGuidMy(),
'shift_transfer_id' => $shiftTransfer->id,
'status' => self::STATUS_NEW,
'store_id' => array_flip(array_map('strval', CityStore::getAllActiveGuidId()))[$shiftTransfer->store_guid],
'summ_self_cost' => 0,
]);
+ try {
+ $model->save();
+
+ $model->updateAttributes([
+ 'number' => 'ЕРП_НС_' . date("Y-m-d_H-i") . '_' . $model->id
+ ]);
+
+ WaybillWriteOffsProducts::setData($model, $shiftTransfer);
+
+ $summaries = WaybillWriteOffsProducts::find()
+ ->andWhere(['waybill_write_offs_id' => $model->id])
+ ->select([
+ 'total_product_count' => 'sum(product_count)',
+ 'total_summ' => 'sum(summ)',
+ 'total_summ_self_cost' => 'sum(summ_self_cost)'
+ ])
+ ->asArray()
+ ->one();
+
+ if ($summaries) {
+ $model->updateAttributes([
+ 'quantity' => $summaries['total_product_count'],
+ 'summ' => $summaries['total_summ'],
+ 'summ_self_cost' => $summaries['total_summ_self_cost']
+ ]);
+ }
+ } catch (\Exception $exception) {
+ throw new \Exception($exception);
+ }
+
if ($model->validate()) {
$model->save();
namespace yii_app\records;
+use TheSeer\Tokenizer\Exception;
use yii\behaviors\TimestampBehavior;
use yii\db\Expression;
'summ_self_cost' => $count * $item->self_cost,
]);
- if ($model->validate()) {
+ try {
$model->save();
- } else {
- var_dump($model->getErrors());die();
+ } catch (\Exception $exception) {
+ throw new Exception($exception);
}
}
}
* @property int $status Статус документа
* @property int $created_admin_id Создан пользователем
* @property int|null $updated_admin_id Изменён пользователем
-
* @property int $store_id id магазина в ERP
* @property string $store_guid GUID магазина из 1с
* @property string $number Название документа
* @property string $created_at Дата создания
* @property string|null $updated_at Дата обновления
* @property string|null $send_at Дата отправления в 1с
-
* @property ShiftTransfer $shiftTransfer
* @property WaybillWriteOffsProducts[] $waybillWriteOffsProducts
*/
$model = new self();
$model->setAttributes([
- 'guid' => DataHelper::createGuidMy(),
+ 'guid' => DataHelper::createGuidMy(),
'shift_transfer_id' => $shiftTransfer->id,
'status' => self::STATUS_NEW,
'store_id' => array_flip(array_map('strval', CityStore::getAllActiveGuidId()))[$shiftTransfer->store_guid],
'summ' => 0,
'summ_self_cost' => 0
]);
-
- if ($model->validate()) {
+ try {
$model->save();
$model->updateAttributes([
'summ_self_cost' => $summaries['total_summ_self_cost']
]);
}
- } else {
- var_dump($model->getErrors());
+ } catch (\Exception $exception) {
+ throw new \Exception($exception);
}
}
'summ_self_cost' => $count * $item->self_cost,
]);
- if ($model->validate()) {
+
+ try {
$model->save();
- } else {
- var_dump($model->getErrors());die();
+ } catch (\Exception $exception) {
+ throw new \Exception($exception);
}
}
}
'title' => 'Заменяемый товар',
'type' => Select2::class,
'options' => [
+ 'class' => 'readonly-select2',
'data' => array_merge(
['text' => 'Выберите товар'],
$products
'iconSource' => 'fa',
])->label(false);
- echo Html::submitButton('Продолжить', [
- 'class' => 'btn btn-primary float-right',
- 'name' => 'action',
- 'value' => 'resume'
- ]);
+ echo Html::a('Назад', '/shift-transfer', [
+ 'class' => 'btn btn-secondary'
+ ]) . ' ' . Html::submitButton('Продолжить', [
+ 'class' => 'btn btn-primary float-right',
+ 'name' => 'action',
+ 'value' => 'resume'
+ ]);
} else {
echo GridView::widget([
'dataProvider' => new \yii\data\ArrayDataProvider([
<?php
if ($shiftTransfer->status_id == ShiftTransfer::STATUS_OF_THE_FORMATION_OF_SURPLUSES_AND_SHORTAGES
&& Yii::$app->user->id == $shiftTransfer->end_shift_admin_id) {
- echo Html::submitButton('Редактировать', [
- 'class' => 'btn btn-primary float-right',
- 'name' => 'action',
- 'value' => 'rejection'
- ]) . ' ' . Html::submitButton('Сохранить', [
- 'class' => 'btn btn-success float-right',
- 'name' => 'action',
- 'value' => 'save'
- ]);
+ echo Html::a('Назад', '/shift-transfer', [
+ 'class' => 'btn btn-secondary'
+ ]) . ' ' . Html::submitButton('Редактировать замены', [
+ 'class' => 'btn btn-primary float-right',
+ 'name' => 'action',
+ 'value' => 'rejection'
+ ]) . ' ' . Html::submitButton('Сохранить', [
+ 'class' => 'btn btn-success float-right',
+ 'name' => 'action',
+ 'value' => 'save'
+ ]);
}
if (
&& $shiftTransfer->status_id == ShiftTransfer::STATUS_ID_READY_TO_ACCEPT
&& Yii::$app->user->id != $shiftTransfer->end_shift_admin_id
) {
- echo Html::submitButton('Принять', [
+ echo Html::a('Назад', '/shift-transfer', [
+ 'class' => 'btn btn-secondary'
+ ]) . ' ' . Html::submitButton('Принять', [
'class' => 'btn btn-success float-right',
'name' => 'action',
'value' => 'accept'
}
});
+$(window).on('load', function() {
+ setTimeout(function() {
+ $('.field-shifttransfer-equalizationremains [class$="-product_id"]').css('pointer-events', 'none');
+ }, 5000); // Задержка в 1 секунду (можно настроить)
+});
+
+