示例#1
0
 public function actionGenerateProductSet($id, $product_id)
 {
     $dataMove = StockMove::find()->where(['id' => $id])->one();
     $bom = MrpBom::find()->where(['product_id' => $product_id, 'type' => 'phantom'])->one();
     if (!$bom) {
         throw new NotFoundHttpException('This Product Not Setted Into Phantom BOM');
     }
     $searchModel = new MrpBomSearch();
     $dataProvider = $searchModel->searchBom($bom->id);
     foreach ($dataProvider->getModels() as $model) {
         $newMove = new StockMove();
         $newMove->create_uid = $dataMove->create_uid;
         $newMove->create_date = $dataMove->create_date;
         $newMove->date = $dataMove->create_date;
         $newMove->write_date = $dataMove->write_date;
         $newMove->write_uid = $dataMove->write_uid;
         $newMove->origin = $dataMove->origin;
         $newMove->product_uos_qty = $dataMove->product_uos_qty;
         $newMove->date_expected = $dataMove->date_expected;
         $newMove->product_uom = $model->product_uom;
         $newMove->move_dest_id = $dataMove->id;
         $newMove->product_qty = $dataMove->product_qty * $model->product_qty;
         $newMove->product_uos = $model->product_uom;
         $newMove->partner_id = $dataMove->partner_id;
         $newMove->product_id = $model->product_id;
         $newMove->location_id = $dataMove->location_id;
         $newMove->company_id = $dataMove->company_id;
         $newMove->picking_id = $dataMove->picking_id;
         $newMove->state = $dataMove->state;
         $newMove->location_dest_id = $dataMove->location_dest_id;
         $newMove->tracking_id = $dataMove->tracking_id;
         $newMove->product_packaging = $dataMove->product_packaging;
         $newMove->purchase_line_id = $dataMove->purchase_line_id;
         $newMove->sale_line_id = $dataMove->sale_line_id;
         $newMove->name = $model->name;
         $newMove->desc = $model->name;
         $newMove->no = $dataMove->no;
         $newMove->weight_uom_id = 3;
         $newMove->save();
     }
     $stockmove = StockMove::findOne($id);
     $stockmove->picking_id = '';
     $stockmove->location_dest_id = 12;
     $stockmove->update();
     return $this->redirect(['view-move-childs', 'id' => $id]);
 }
示例#2
0
 /**
  * Lists all MrpBom models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new MrpBomSearch();
     $dataProvider = $searchModel->searchPhantom(Yii::$app->request->queryParams);
     return $this->render('index', ['searchModel' => $searchModel, 'dataProvider' => $dataProvider]);
 }