/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = PurchaseOrder::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); if (!($this->load($params) && $this->validate())) { return $dataProvider; } $query->andFilterWhere(['id' => $this->id, 'create_uid' => $this->create_uid, 'create_date' => $this->create_date, 'write_date' => $this->write_date, 'write_uid' => $this->write_uid, 'journal_id' => $this->journal_id, 'date_order' => $this->date_order, 'partner_id' => $this->partner_id, 'dest_address_id' => $this->dest_address_id, 'fiscal_position' => $this->fiscal_position, 'amount_untaxed' => $this->amount_untaxed, 'location_id' => $this->location_id, 'company_id' => $this->company_id, 'amount_tax' => $this->amount_tax, 'pricelist_id' => $this->pricelist_id, 'warehouse_id' => $this->warehouse_id, 'payment_term_id' => $this->payment_term_id, 'date_approve' => $this->date_approve, 'amount_total' => $this->amount_total, 'shipped' => $this->shipped, 'validator' => $this->validator, 'minimum_planned_date' => $this->minimum_planned_date, 'rm_sent' => $this->rm_sent, 'port_moved0' => $this->port_moved0, 'duedate' => $this->duedate, 'scheduleddate' => $this->scheduleddate, 'print_line' => $this->print_line, 'attention' => $this->attention]); $query->andFilterWhere(['like', 'origin', $this->origin])->andFilterWhere(['like', 'state', $this->state])->andFilterWhere(['like', 'partner_ref', $this->partner_ref])->andFilterWhere(['like', 'name', $this->name])->andFilterWhere(['like', 'notes', $this->notes])->andFilterWhere(['like', 'invoice_method', $this->invoice_method])->andFilterWhere(['like', 'subcont_type', $this->subcont_type])->andFilterWhere(['like', 'yourref', $this->yourref])->andFilterWhere(['like', 'note', $this->note])->andFilterWhere(['like', 'other', $this->other])->andFilterWhere(['like', 'jenis', $this->jenis])->andFilterWhere(['like', 'type_permintaan', $this->type_permintaan])->andFilterWhere(['like', 'no_fpb', $this->no_fpb])->andFilterWhere(['like', 'term_of_payment', $this->term_of_payment])->andFilterWhere(['like', 'port', $this->port])->andFilterWhere(['like', 'delivery', $this->delivery])->andFilterWhere(['like', 'after_shipment', $this->after_shipment])->andFilterWhere(['like', 'total_price', $this->total_price])->andFilterWhere(['like', 'shipment_to', $this->shipment_to]); return $dataProvider; }
/** * Creates data provider instance with search query applied * * @param array $params * * @return ActiveDataProvider */ public function search($params) { $query = PurchaseOrder::find(); $dataProvider = new ActiveDataProvider(['query' => $query]); $this->load($params); if (!$this->validate()) { // uncomment the following line if you do not want to return any records when validation fails // $query->where('0=1'); return $dataProvider; } $query->andFilterWhere(['purchaseorder_id' => $this->purchaseorder_id, 'purchaseorder_no' => $this->purchaseorder_no, 'purchaseorder_date' => $this->purchaseorder_date, 'purchaseorder_date_transaction' => $this->purchaseorder_date_transaction, 'purchaseorder_date_delete' => $this->purchaseorder_date_delete, 'purchaseorder_customerid' => $this->purchaseorder_customerid, 'purchaseorder_supplierid' => $this->purchaseorder_supplierid, 'purchaseorder_supplier_quotation_no' => $this->purchaseorder_supplier_quotation_no, 'purchaseorder_createid' => $this->purchaseorder_createid, 'purchaseorder_charge' => $this->purchaseorder_charge, 'purchaseorder_tax_percent' => $this->purchaseorder_tax_percent, 'purchaseorder_tax_amount' => $this->purchaseorder_tax_amount, 'purchaseorder_revision' => $this->purchaseorder_revision, 'purchaseorder_parts_total' => $this->purchaseorder_parts_total, 'purchaseorder_deleteid' => $this->purchaseorder_deleteid, 'purchaseorder_creditorid' => $this->purchaseorder_creditorid, 'purchaseorder_purchase_return' => $this->purchaseorder_purchase_return, 'purchaseorder_payment_paid_thus_far' => $this->purchaseorder_payment_paid_thus_far, 'purchaseorder_outstanding_amount' => $this->purchaseorder_outstanding_amount, 'purchaseorder_projectid' => $this->purchaseorder_projectid, 'purchaseorder_gst_payable' => $this->purchaseorder_gst_payable, 'purchaseorder_total_amount' => $this->purchaseorder_total_amount]); $query->andFilterWhere(['like', 'purchaseorder_createname', $this->purchaseorder_createname])->andFilterWhere(['like', 'purchaseorder_remark', $this->purchaseorder_remark])->andFilterWhere(['like', 'purchaseorder_system', $this->purchaseorder_system])->andFilterWhere(['like', 'purchaseorder_partno', $this->purchaseorder_partno])->andFilterWhere(['like', 'purchaseorder_update_stock_status', $this->purchaseorder_update_stock_status])->andFilterWhere(['like', 'purchaseorder_status', $this->purchaseorder_status])->andFilterWhere(['like', 'purchaseorder_tax_label', $this->purchaseorder_tax_label])->andFilterWhere(['like', 'purchaseorder_printed_status', $this->purchaseorder_printed_status])->andFilterWhere(['like', 'purchaseorder_payment_status', $this->purchaseorder_payment_status])->andFilterWhere(['like', 'purchaseorder_no_user_format', $this->purchaseorder_no_user_format])->andFilterWhere(['like', 'purchaseorder_auto_generate', $this->purchaseorder_auto_generate]); return $dataProvider; }
/** * Creates a new PurchaseOrder model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new PurchaseOrder(); $model2 = new PurchaseOrderDetail(); $newPODetail = new PurchaseOrderDetail(); $product = Product::find()->where(['product_type' => 'p'])->orderBy('product_id')->all(); $service = Product::find()->where(['product_type' => 's'])->orderBy('product_id')->all(); $customer = Customer::find()->orderBy('customer_name')->all(); $po = PurchaseOrder::find()->orderBy(['PurchaseOrder_id' => SORT_DESC])->one(); $uid = Yii::$app->user->identity->user_id; $uname = Yii::$app->user->identity->user_name; if (isset($_POST['description'])) { $poDetailList = $_POST['description']; $customer_id = $_POST['customer-list']; $po_id = $_POST['po_id']; $po_no = $_POST['po_no']; $po_date = $_POST['po_date']; $productType = $_POST['productType']; $qty = $_POST['qty']; $unit = $_POST['unit']; $cost = $_POST['cost']; $hidden_price = $_POST['hidden_price']; $hidden_gst = $_POST['hidden_gst']; $hidden_tax_code = $_POST['hidden_tax_code']; $hidden_tax_rate = $_POST['hidden_tax_rate']; $hidden_price_gst = $_POST['hidden_price_gst']; $hidden_total = $_POST['hidden_total']; $hidden_gsttotal = $_POST['hidden_gsttotal']; $hidden_gstpricetotal = $_POST['hidden_gstpricetotal']; $hidden_product_name = $_POST['hidden_product_name']; if ($poDetailList != NULL) { $newPO = new PurchaseOrder(); $newPO->purchaseorder_id = $po_id; $newPO->purchaseorder_no = $po_no; $newPO->purchaseorder_date = $po_date; $newPO->purchaseorder_date_transaction = $po_date; $newPO->purchaseorder_date_delete = $po_date; $newPO->purchaseorder_customerid = $customer_id; $newPO->purchaseorder_supplierid = 1; $newPO->purchaseorder_supplier_quotation_no = 11; $newPO->purchaseorder_createid = $uid; $newPO->purchaseorder_createname = $uname; $newPO->purchaseorder_remark = "lol"; $newPO->purchaseorder_system = "y"; $newPO->purchaseorder_partno = "y"; $newPO->purchaseorder_charge = 123; $newPO->purchaseorder_update_stock_status = "y"; $newPO->purchaseorder_status = "y"; $newPO->purchaseorder_tax_label = "lol"; $newPO->purchaseorder_tax_percent = 1; $newPO->purchaseorder_tax_amount = 100; $newPO->purchaseorder_printed_status = "y"; $newPO->purchaseorder_revision = 1; $newPO->purchaseorder_parts_total = $hidden_total; $newPO->purchaseorder_deleteid = 1; $newPO->purchaseorder_payment_status = "y"; $newPO->purchaseorder_no_user_format = "lol"; $newPO->purchaseorder_auto_generate = "y"; $newPO->purchaseorder_creditorid = 1; $newPO->purchaseorder_purchase_return = 123; $newPO->purchaseorder_payment_paid_thus_far = 123; $newPO->purchaseorder_outstanding_amount = 123; $newPO->purchaseorder_projectid = 1; $newPO->purchaseorder_gst_payable = $hidden_gsttotal; $newPO->purchaseorder_total_amount = $hidden_gstpricetotal; $newPO->save(); foreach ($poDetailList as $key => $n) { if ($n != NULL) { if ($unit[$key] == NULL) { $unit[$key] = "-"; } $newPODetail = new PurchaseOrderDetail(); $newPODetail->purchaseorderdetail_purchaseorderid = $po_id; $newPODetail->purchaseorderdetail_productid = $n; $newPODetail->purchaseorderdetail_partno = "lol"; $newPODetail->purchaseorderdetail_productname = $hidden_product_name[$key]; $newPODetail->purchaseorderdetail_unit = $qty[$key]; $newPODetail->purchaseorderdetail_unitname = $unit[$key]; $newPODetail->purchaseorderdetail_product_cost = $cost[$key]; $newPODetail->purchaseorderdetail_price = $hidden_price[$key]; $newPODetail->purchaseorderdetail_unitsent = 0; $newPODetail->purchaseorderdetail_status = "y"; $newPODetail->purchaseorderdetail_tax_code = $hidden_tax_code[$key]; $newPODetail->purchaseorderdetail_tax_rate = $hidden_tax_rate[$key]; $newPODetail->purchaseorderdetail_tax_amount = $hidden_gst[$key]; $newPODetail->purchaseorderdetail_total_amount = $hidden_price_gst[$key]; $newPODetail->purchaseorderdetail_gst_status = 1; $newPODetail->save(); } } } } if ($newPODetail->save()) { return $this->redirect(['index']); } elseif ($newPODetail->load(Yii::$app->request->post())) { return $this->redirect(['index']); } else { return $this->render('create', ['model' => $model, 'model2' => $model2, 'product' => $product, 'service' => $service, 'customer' => $customer, 'po' => $po, 'model2' => $model2, 'product' => $product, 'service' => $service, 'customer' => $customer, 'po' => $po]); } }