Пример #1
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getProvider()
 {
     return $this->hasOne(ProviderStateCode::className(), ['provider_id' => 'provider_id', 'status_code' => 'provider_state_id']);
 }
Пример #2
0
 public function getAllProviderOrderStatusName()
 {
     return $this->hasMany(\app\modules\autoparts\models\ProviderStateCode::className(), ['provider_id' => 'provider_id']);
 }
Пример #3
0
 private function getDetailProviderInfo($params, $model)
 {
     $orderDetails = Tovar::getProviderOrderState($params, $model->order->store_id);
     if (!empty($orderDetails)) {
         foreach ($orderDetails as $detail) {
             if ($detail['code'] == $model->product_article && $detail['quantity'] == $model->quantity) {
                 $stateCode = ProviderStateCode::findOne(['provider_id' => $model->provider->id, 'status_code' => $detail['status']]);
                 if ($stateCode === null) {
                     $providerStateCode = new ProviderStateCode();
                     $providerStateCode->provider_id = $model->provider->id;
                     $providerStateCode->status_code = $detail['status'];
                     $providerStateCode->status_name = $detail['status_name'];
                     $providerStateCode->save();
                 } else {
                     if ($detail['status_name'] != '' && $stateCode->status_name != $detail['status_name']) {
                         $stateCode->status_name = $detail['status_name'];
                         $stateCode->save();
                     }
                 }
                 return ['status' => $detail['status'], 'status_name' => !empty($detail['status_name']) ? $detail['status_name'] : $stateCode->status_name];
             }
         }
     } else {
         return false;
     }
 }