Esempio n. 1
0
 public function auth3_saved()
 {
     if ($this->validate()) {
         $model = Termcustomers::find()->where(['ID_TERM' => $this->id])->one();
         $termSignStt = Statusterm::find()->where(['ID_TERM' => $this->id, 'ID_USER' => $this->getProfile()->EMP_ID])->one();
         $model->STATUS = $this->status;
         $model->SIG3_SVGBASE64 = $this->getProfile()->SIGSVGBASE64;
         $model->SIG3_SVGBASE30 = $this->getProfile()->SIGSVGBASE30;
         $model->SIG3_NM = $this->getProfile()->EMP_NM . ' ' . $this->getProfile()->EMP_NM_BLK;
         $model->SIG3_TGL = date('Y-m-d');
         if ($model->save()) {
             if (!$termSignStt) {
                 $statusterm = new Statusterm();
                 $statusterm->STATUS = $this->status;
                 //required
                 $statusterm->ID_TERM = $this->id;
                 //required
                 $statusterm->ID_USER = $this->getProfile()->EMP_ID;
                 //required
                 $statusterm->UPDATE_AT = date('Y-m-d H:m:s');
                 $statusterm->save();
                 //header t0000header
                 $copy_term = new Termheader();
                 $copy_term->TERM_ID = Yii::$app->ambilkonci->getkdTermData();
                 $copy_term->TERM_REF = $model->ID_TERM;
                 $copy_term->STATUS = 0;
                 $copy_term->CUST_KD_PARENT = $model->CUST_KD;
                 $copy_term->PRINCIPAL_KD = $model->PRINCIPAL_KD;
                 $copy_term->DIST_KD = $model->DIST_KD;
                 $copy_term->PERIOD_START = $model->PERIOD_START;
                 $copy_term->PERIOD_END = $model->PERIOD_END;
                 $copy_term->SIG1_ID = $model->SIG1_ID;
                 $copy_term->SIG1_NM = $model->SIG1_NM;
                 $copy_term->SIG1_TGL = $model->SIG1_TGL;
                 $copy_term->SIG1_SVGBASE64 = $model->SIG1_SVGBASE64;
                 $copy_term->SIG2_ID = $model->SIG2_ID;
                 $copy_term->SIG2_NM = $model->SIG2_NM;
                 $copy_term->SIG2_TGL = $model->SIG2_TGL;
                 $copy_term->SIG2_SVGBASE64 = $model->SIG2_SVGBASE64;
                 $copy_term->SIG3_ID = $model->SIG3_ID;
                 $copy_term->SIG3_NM = $model->SIG3_NM;
                 $copy_term->SIG3_TGL = $model->SIG3_TGL;
                 $copy_term->SIG3_SVGBASE64 = $model->SIG3_SVGBASE64;
                 $copy_term->CREATED_BY = $model->CREATED_BY;
                 $copy_term->CREATED_AT = date('Y-m-d H:m:s');
                 $copy_term->BUDGET_AWAL = $model->BUDGET_AWAL;
                 $copy_term->save();
                 // t0001header
                 $copy_budget = new Requesttermheader();
                 $copy_budget->TERM_ID = $copy_term->TERM_ID;
                 $copy_budget->KD_RIB = Yii::$app->ambilkonci->getRaCode($this->getProfile()->EMP_CORP_ID);
                 $copy_budget->ID_USER = $this->getProfile()->EMP_ID;
                 $copy_budget->CUST_ID_PARENT = $model->CUST_KD;
                 $copy_budget->STATUS = 102;
                 $copy_budget->save();
                 // detail
                 $budget_detail = Termbudget::find()->where(['ID_TERM' => $model->ID_TERM])->all();
                 foreach ($budget_detail as $key => $value) {
                     # code...
                     //t0000detail
                     $connection = Yii::$app->db_esm;
                     $connection->createCommand()->batchInsert('t0000detail', ['TERM_ID', 'CUST_KD_PARENT', 'INVES_ID', 'BUDGET_SOURCE', 'BUDGET_PLAN', 'BUDGET_ACTUAL', 'PERIODE_START', 'PERIODE_END', 'PPH23', 'PPN', 'PROGRAM'], [[$copy_term->TERM_ID, $copy_term->CUST_KD_PARENT, $value->INVES_TYPE, $value->BUDGET_SOURCE, $value->BUDGET_PLAN, $value->BUDGET_ACTUAL, $value->PERIODE_START, $value->PERIODE_END, $value->PPH23, $value->PPN, $value->PROGRAM]])->execute();
                     //t0001detail
                     $connection->createCommand()->batchInsert('t0001detail', ['KD_RIB', 'TERM_ID', 'ID_INVEST', 'HARGA', 'STATUS', 'PPH23', 'PPN', 'PERIODE_START', 'PERIODE_END'], [[$copy_budget->KD_RIB, $copy_budget->TERM_ID, $value->INVES_TYPE, $value->BUDGET_PLAN, 102, $value->PPH23, $value->PPN, $value->PERIODE_START, $value->PERIODE_END]])->execute();
                 }
             }
         }
         return $model;
     }
     return null;
 }
 public function actionSimpanfirst()
 {
     // $cons = \Yii::$app->db_esm;
     $roHeader = new Requesttermheader();
     //$reqorder = new Roatribute();
     $roDetail = new Rtdetail();
     $BARANG = new Barang();
     $profile = Yii::$app->getUserOpt->Profile_user();
     // $corp = Yii::$app->getUserOpt->Profile_user()->EMP_ID;
     // $Corp1 = Employe::find()->where(['KD_CORP'=>$corp])->asArray()->one();
     $corp = Yii::$app->getUserOpt->Profile_user()->emp->EMP_CORP_ID;
     $hsl = \Yii::$app->request->post();
     $radio = $hsl['Rodetail']['NEW'];
     //if($roDetail->load(Yii::$app->request->post()) && $roDetail->validate()){
     if ($roDetail->load(Yii::$app->request->post())) {
         // print_r($radio);
         // die();
         $selectCorp = $corp;
         if ($radio == 2) {
             // rodetail
             $kdBarang = $roDetail->KD_BARANG;
             $nmBarang = Barang::findOne(['KD_BARANG' => $kdBarang]);
             $GneratekodeRo = \Yii::$app->ambilkonci->getRoCode($selectCorp);
             $roDetail->KD_RO = $GneratekodeRo;
             $roDetail->PARENT_ROSO = 0;
             $roDetail->KD_CORP = $selectCorp;
             $roDetail->CREATED_AT = date('Y-m-d H:i:s');
             $roDetail->NM_BARANG = $nmBarang->NM_BARANG;
             $roDetail->KD_BARANG = $kdBarang;
             $roDetail->SQTY = $roDetail->RQTY;
             $roDetail->HARGA = $nmBarang->HARGA_SPL;
             $roDetail->STATUS = 0;
             $roDetail->save();
             // getErrors()
             // print_r($roDetail->getErrors());
             // die();
             // roheader
             $roHeader->PARENT_ROSO = 0;
             // RO=0
             $roHeader->KD_RO = $GneratekodeRo;
             $roHeader->CREATED_AT = date('Y-m-d H:i:s');
             $roHeader->TGL = date('Y-m-d');
             $roHeader->ID_USER = $profile->emp->EMP_ID;
             $roHeader->EMP_NM = $profile->emp->EMP_NM . ' ' . $profile->emp->EMP_NM_BLK;
             $roHeader->KD_CORP = $selectCorp;
             $roHeader->KD_DEP = $profile->emp->DEP_ID;
             //$roHeader->SIG1_SVGBASE64 = $profile->emp->SIGSVGBASE64;
             //$roHeader->SIG1_SVGBASE30 = $profile->emp->SIGSVGBASE30;
             $roHeader->STATUS = 0;
             $roHeader->PARENT_ROSO = 0;
             // RO=0
             $roHeader->KD_RO = $GneratekodeRo;
             $roHeader->CREATED_AT = date('Y-m-d H:i:s');
             $roHeader->TGL = date('Y-m-d');
             $roHeader->ID_USER = $profile->emp->EMP_ID;
             $roHeader->EMP_NM = $profile->emp->EMP_NM . ' ' . $profile->emp->EMP_NM_BLK;
             $roHeader->KD_CORP = $selectCorp;
             $roHeader->KD_DEP = $profile->emp->DEP_ID;
             //$roHeader->SIG1_SVGBASE64 = $profile->emp->SIGSVGBASE64;
             //$roHeader->SIG1_SVGBASE30 = $profile->emp->SIGSVGBASE30;
             $roHeader->STATUS = 0;
             $roHeader->save();
         } else {
             // barang
             $kdcorp = $BARANG->KD_CORP = $roDetail->KD_CORP;
             $kdType = Yii::$app->esmcode->kdTipe();
             $kdUnit = Yii::$app->esmcode->kdUnit();
             $nw1 = Yii::$app->esmcode->kdKategori();
             $kdKategori = $BARANG->KD_KATEGORI = $nw1;
             $kdPrn = 0;
             $kdbrg = Yii::$app->esmcode->kdbarangUmum($kdPrn, $kdcorp, $kdType, $kdKategori, $kdUnit);
             $BARANG->KD_BARANG = $kdbrg;
             $BARANG->NM_BARANG = $roDetail->NM_BARANG;
             $BARANG->HARGA_SPL = $roDetail->HARGA;
             $BARANG->STATUS = 1;
             $BARANG->KD_SUPPLIER = 'SPL.LG.0000';
             $BARANG->KD_KATEGORI = 39;
             $BARANG->KD_UNIT = $roDetail->UNIT;
             $BARANG->KD_TYPE = 30;
             $BARANG->CREATED_BY = Yii::$app->user->identity->username;
             $BARANG->CREATED_AT = date('Y-m-d H:i:s');
             $BARANG->save();
             // rodetail
             $GneratekodeRo = \Yii::$app->ambilkonci->getRoCode($selectCorp);
             $roDetail->KD_RO = $GneratekodeRo;
             $roDetail->PARENT_ROSO = 0;
             $roDetail->KD_CORP = $selectCorp;
             $roDetail->CREATED_AT = date('Y-m-d H:i:s');
             $roDetail->NM_BARANG = $hsl['Rodetail']['NM_BARANG'];
             $roDetail->KD_BARANG = $kdbrg;
             // $roDetail->UNIT = 'none';
             $roDetail->SQTY = $roDetail->RQTY;
             $roDetail->STATUS = 0;
             $roDetail->save();
             //   print_r($BARANG->getErrors());
             // die();
             // roheader
             $roHeader->PARENT_ROSO = 0;
             // RO=0
             $roHeader->KD_RO = $GneratekodeRo;
             $roHeader->CREATED_AT = date('Y-m-d H:i:s');
             $roHeader->TGL = date('Y-m-d');
             $roHeader->ID_USER = $profile->emp->EMP_ID;
             $roHeader->EMP_NM = $profile->emp->EMP_NM . ' ' . $profile->emp->EMP_NM_BLK;
             $roHeader->KD_CORP = $selectCorp;
             $roHeader->KD_DEP = $profile->emp->DEP_ID;
             //$roHeader->SIG1_SVGBASE64 = $profile->emp->SIGSVGBASE64;
             //$roHeader->SIG1_SVGBASE30 = $profile->emp->SIGSVGBASE30;
             $roHeader->STATUS = 0;
             $roHeader->PARENT_ROSO = 0;
             // RO=0
             $roHeader->KD_RO = $GneratekodeRo;
             $roHeader->CREATED_AT = date('Y-m-d H:i:s');
             $roHeader->TGL = date('Y-m-d');
             $roHeader->ID_USER = $profile->emp->EMP_ID;
             $roHeader->EMP_NM = $profile->emp->EMP_NM . ' ' . $profile->emp->EMP_NM_BLK;
             $roHeader->KD_CORP = $selectCorp;
             $roHeader->KD_DEP = $profile->emp->DEP_ID;
             //$roHeader->SIG1_SVGBASE64 = $profile->emp->SIGSVGBASE64;
             //$roHeader->SIG1_SVGBASE30 = $profile->emp->SIGSVGBASE30;
             $roHeader->STATUS = 0;
             $roHeader->save();
             //   print_r($roHeader->getErrors());
             //  die();
         }
         // //$roHeader->SIG1_SVGBASE64 = $profile->emp->SIGSVGBASE64;
         // //$roHeader->SIG1_SVGBASE30 = $profile->emp->SIGSVGBASE30;
         // $roHeader->STATUS = 0;
         // 	$transaction = $cons->beginTransaction();
         // 	try {
         // 		if (!$roDetail->save()) {
         // 				$transaction->rollback();
         // 				return false;
         // 		}
         //
         // 		if (!$roHeader->save()) {
         // 				$transaction->rollback();
         // 				return false;
         // 		}
         // 		$transaction->commit();
         // 	} catch (Exception $ex) {
         // 		//print_r("error");
         // 		$transaction->rollback();
         // 		return false;
         // 	}
         //return $this->redirect(['index','param'=>$getkdro]);
         //return $this->redirect(['index?RequestorderSearch[KD_RO]='.$getkdro]);
         return $this->redirect(['/purchasing/request-term/edit?kd=' . $GneratekodeRo]);
     } else {
         return $this->redirect(['index']);
     }
 }
 /**
  * Creates a new Requestorder model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @author ptrnov  <*****@*****.**>
  * @since 1.1
  */
 public function actionCreate()
 {
     $model = new Requesttermheader();
     //t0001header
     $model->scenario = 'simpan';
     $radiorqt = Yii::$app->request->post();
     $term_invest = new Rtdetail();
     //t0001detail
     if ($model->load(Yii::$app->request->post()) && $term_invest->load(Yii::$app->request->post())) {
         $radioterm = $radiorqt['Requesttermheader']['NEW'];
         if ($radioterm == 1) {
             $kode = Yii::$app->ambilkonci->getRtiCode($model->KD_CORP);
             $model->KD_RIB = $kode;
         } else {
             $kode = Yii::$app->ambilkonci->getRtbCode($model->KD_CORP);
             $model->KD_RIB = $kode;
         }
         $explode = explode('-', $model->CUST_ID_PARENT);
         $model->CUST_ID_PARENT = $explode[1];
         $model->TERM_ID = $explode[0];
         $model->CREATED_AT = date('Y-m-d');
         $model->ID_USER = Yii::$app->getUserOpt->Profile_user()->EMP_ID;
         $model->KD_DEP = Yii::$app->getUserOpt->Profile_user()->emp->DEP_ID;
         $model->save();
         $term_invest->KD_RIB = $model->KD_RIB;
         $term_invest->INVESTASI_TYPE = $term_invest->ID_INVEST;
         $term_invest->CREATED_AT = date('Y-m-d');
         $term_invest->CREATED_BY = Yii::$app->user->identity->username;
         $term_invest->PERIODE_START = $model->PERIOD_START;
         $term_invest->PERIODE_END = $model->PERIOD_END;
         // $term_invest->ID_INVEST = $term_invest->ID_INVEST;
         $term_invest->TERM_ID = $cari_term;
         if ($term_invest->save()) {
             $cari_account = Termdetail::find()->where(['TERM_ID' => $model->TERM_ID, 'INVES_ID' => $term_invest->ID_INVEST])->andwhere(['<>', 'STATUS', 2])->one();
             if (!$cari_account) {
                 $termdetail = new Termdetail();
                 $termdetail->CUST_KD_PARENT = $model->CUST_ID_PARENT;
                 $termdetail->INVES_ID = $term_invest->INVESTASI_TYPE;
                 $termdetail->INVES_TYPE = $termdetail->INVES_ID;
                 $termdetail->TERM_ID = $model->TERM_ID;
                 $termdetail->CORP_ID = $model->KD_CORP;
                 $termdetail->STATUS = 2;
                 $termdetail->CREATE_BY = Yii::$app->user->identity->username;
                 $termdetail->CREATE_AT = date('Y-m-d');
                 $termdetail->PERIODE_START = $model->PERIOD_START;
                 $termdetail->PERIODE_END = $model->PERIOD_END;
                 $termdetail->save();
             }
         }
         return $this->redirect(['/purchasing/request-term/edit?kd=' . $model->KD_RIB]);
     } else {
         return $this->renderAjax('_form', ['model' => $model, 'term_invest' => $term_invest, 'cus_data' => self::ary_cus_term(), 'corp' => Yii::$app->getUserOpt->Profile_user()->emp->EMP_CORP_ID, 'data_invest' => self::ary_invets()]);
     }
 }