class AddAction extends Action
{
- public function run($id) {
- $model = StoreOrders::find()->where(['id' => $id])->one();
+ public function run($id = null) {
+ if (!$id) {
+ $model = new StoreOrders;
+ } else {
+ $model = StoreOrders::find()->where(['id' => $id])->one();
+ }
+ if (!$model) {
+ throw new \Exception('не могу найти закуп с id='. $id);
+ }
/** @var $model StoreOrders */
$model->getProviders();
if (Yii::$app->request->isPost && $model->load(Yii::$app->request->post())) {
$model->setProviders();
- $model->price_logistic = 0;
if ($model->validate()) {
$model->save();
+ } else {
+ echo "<pre>";
+ var_dump($model->getErrors());
+ echo "</pre>";
+ die;
}
}
* @property string $status_logi
* @property string $date_update Дата и врепмя обновления информации в таблице храннеия data
* @property string $update_html HTML блок расчета по формулам
+ * @property int $city_id номер города в universal_catalog_item
*/
class StoreOrders extends \yii\db\ActiveRecord
{
public function rules()
{
return [
- [['name', 'parent_id', 'date_start', 'date_end', 'delivery_date', 'division_date', 'division_hours', 'delivery_date_fact', 'price_logistic', 'comments', 'admin_id', 'date_add', 'providers_arr', 'status_logi', 'date_update', 'update_html'], 'required'],
+ [['name', 'parent_id', 'date_start', 'city_id', /*'date_end',*/ 'delivery_date', 'division_date', /*'division_hours', */'delivery_date_fact', /* 'price_logistic', */ 'comments', /*'admin_id', */'date_add', 'providers_arr' /*, 'status_logi', 'date_update', 'update_html'*/], 'required'],
[['parent_id', 'division_hours', 'price_logistic', 'admin_id', 'status'], 'integer'],
[['date_start', 'date_end', 'delivery_date', 'division_date', 'delivery_date_fact', 'date_add', 'date_update'], 'safe'],
[['comments', 'status_logi', 'update_html'], 'string'],
public function setProviders()
{
- $this->providers_arr = implode(',', $this->providers);
+ if (empty($this->providers)) {
+ $this->providers_arr = '';
+ } else {
+ $this->providers_arr = implode(',', $this->providers);
+ }
}
public function getProviders()
{
- $this->providers = explode(',', $this->providers_arr);
+ $this->providers = explode(',', $this->providers_arr ?? '');
}
}