Exemple #1
0
 /**
  * 
  * @param string $name Entri Sheet name
  * @param array $values 
  * @return array
  * @throws UserException
  */
 public static function entriSheetToGlMaps($name, $values)
 {
     $gl_dtls = [];
     $esheet = EntriSheet::findOne(['nm_esheet' => $name]);
     if ($esheet) {
         foreach ($esheet->entriSheetDtls as $eDtl) {
             $coa = $eDtl->id_coa;
             $nm = $eDtl->nm_esheet_dtl;
             $dc = $eDtl->idCoa->normal_balance == 'D' ? 1 : -1;
             if (isset($values[$nm])) {
                 $ammount = $dc * $values[$nm];
             } else {
                 throw new UserException("Required account {$nm} ");
             }
             $gl_dtls[] = ['id_coa' => $coa, 'ammount' => $ammount];
         }
     } else {
         throw new UserException("Entrysheet {$name} not found");
     }
     return $gl_dtls;
 }
 /**
  * Finds the EntriSheet model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return EntriSheet the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = EntriSheet::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }