Ejemplo n.º 1
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = SalesModel::find();
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     if (!($this->load($params) && $this->validate())) {
         return $dataProvider;
     }
     $query->andFilterWhere(['id' => $this->id, 'branch_id' => $this->branch_id, 'customer_id' => $this->customer_id, 'date' => $this->date, 'value' => $this->value, 'discount' => $this->discount, 'status' => $this->status, 'created_at' => $this->created_at, 'created_by' => $this->created_by, 'updated_at' => $this->updated_at, 'updated_by' => $this->updated_by]);
     $query->andFilterWhere(['like', 'number', $this->number]);
     return $dataProvider;
 }
Ejemplo n.º 2
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getSales()
 {
     return $this->hasOne(Sales::className(), ['id' => 'sales_id']);
 }
Ejemplo n.º 3
0
 /**
  * Handler for Good Movement created.
  * It used to update stock
  * @param \dee\base\Event $event
  */
 public function movementRejected($event)
 {
     /* @var $model MGoodsMovement */
     $model = $event->params[0];
     if (!in_array($model->reff_type, $this->types)) {
         return;
     }
     $sales = MSales::findOne($model->reff_id);
     $salesItems = ArrayHelper::index($sales->items, 'product_id');
     // change total qty for reff document
     /* @var $salesDtl \rest\models\sales\SalesDtl */
     foreach ($model->items as $detail) {
         $salesDtl = $salesItems[$detail->product_id];
         $salesDtl->total_release -= $detail->qty;
         $salesDtl->save(false);
     }
 }