/** * Updates a particular model. * @param integer $id the ID of the model to be updated */ public function actionUbah($id) { $this->penjualanId = $id; $model = $this->loadModel($id); // Penjualan tidak bisa diubah kecuali statusnya draft if ($model->status != Penjualan::STATUS_DRAFT) { $this->redirect(array('index')); } $this->namaProfil = $model->profil->nama; $this->profil = Profil::model()->findByPk($model->profil_id); // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $penjualanDetail = new PenjualanDetail('search'); $penjualanDetail->unsetAttributes(); $penjualanDetail->setAttribute('penjualan_id', '=' . $id); $barang = new Barang('search'); $barang->unsetAttributes(); if (isset($_GET['cariBarang'])) { $barang->setAttribute('nama', $_GET['namaBarang']); $criteria = new CDbCriteria(); $criteria->order = 'nama ASC'; $barang->setDbCriteria($criteria); } $configCariBarang = Config::model()->find("nama='pos.caribarangmode'"); $this->render('ubah', array('model' => $model, 'penjualanDetail' => $penjualanDetail, 'barang' => $barang, 'tipeCari' => $configCariBarang->nilai)); }
/** * Updates a particular model. * @param integer $id the ID of the model to be updated * @param integer $uid User ID of the model to be updated */ public function actionUbah($id, $uid) { $model = $this->loadModel($id); // Jika status sudah tidak draft, tidak bisa ubah if ($model->status != Penjualan::STATUS_DRAFT) { $this->redirect(array('view', 'id' => $id)); } /* Jika user ID yang di link tidak sama dengan yang di database, maka * redirect ke index (berarti link dimanipulasi) */ if ($uid != $model->updated_by) { $this->redirect(['index']); } $model->scenario = 'tampil'; // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['Penjualan'])) { $model->attributes = $_POST['Penjualan']; if ($model->save()) { $this->redirect(array('view', 'id' => $id)); } } $penjualanDetail = new PenjualanDetail('search'); $penjualanDetail->unsetAttributes(); $penjualanDetail->setAttribute('penjualan_id', '=' . $id); $barang = new Barang('search'); $barang->unsetAttributes(); if (isset($_GET['cariBarang'])) { $barang->setAttribute('nama', $_GET['namaBarang']); } $tipePrinterInvoiceRrp = array(Device::TIPE_LPR, Device::TIPE_PDF_PRINTER, Device::TIPE_TEXT_PRINTER); $printerInvoiceRrp = Device::model()->listDevices($tipePrinterInvoiceRrp); $this->render('ubah', array('model' => $model, 'penjualanDetail' => $penjualanDetail, 'barang' => $barang, 'printerInvoiceRrp' => $printerInvoiceRrp)); }
/** * Updates a particular model. * @param integer $id the ID of the model to be updated */ public function actionUbah($id) { $model = $this->loadModel($id); if ($model->status != ReturPenjualan::STATUS_DRAFT) { $this->redirect(array('view', 'id' => $model->id)); } // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); $returPenjualanDetail = new ReturPenjualanDetail('search'); $returPenjualanDetail->unsetAttributes(); $returPenjualanDetail->setAttribute('retur_penjualan_id', '=' . $id); $barang = new Barang('search'); $barang->unsetAttributes(); if (isset($_GET['cariBarang'])) { $barang->setAttribute('nama', $_GET['namaBarang']); } /* * Grid untuk tampilan pemilihan nomor penjualan/struk */ $penjualanDetail = new PenjualanDetail('search'); $penjualanDetail->unsetAttributes(); if (isset($_GET['PenjualanDetail'])) { $penjualanDetail->attributes = $_GET['PenjualanDetail']; } if (isset($_GET['pilih'])) { $barcode = $_GET['barcode'] == '' ? 'null' : $_GET['barcode']; $qty = $_GET['qty']; $penjualanDetail->setAttribute('barcode', '=' . $barcode); $penjualanDetail->setAttribute('qty', '>=' . $qty); } $penjualanDetail->setAttribute('statusPenjualan', '<>0'); // $penjualanDetail->setAttribute('customerId', '='.$model->customer_id); $this->render('ubah', array('model' => $model, 'returPenjualanDetail' => $returPenjualanDetail, 'barang' => $barang, 'penjualanDetail' => $penjualanDetail)); }