/**
  * read
  * controler for get all items
  */
 public static function read($args = array())
 {
     // Security check
     //if (!wbSecurity::check('p_finance_period')) return;
     // Get arguments from argument array
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 10);
     $sort = wbRequest::getVarClean('sort', 'str', 'p_bank_id');
     $dir = wbRequest::getVarClean('dir', 'str', 'DESC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     try {
         $table =& wbModule::getModel('bds', 'p_finance_period');
         //$query = $table->getDisplayFieldCriteria($query);
         //if (!empty($query)) $table->setCriteria($query);
         $user_name = wbSession::getVar('user_name');
         $table->selectClause = "";
         $table->fromClause = $query;
         $items = $table->getAllNoOrder($start, $limit, $sort, $dir);
         $total = $table->countAll();
         $data['items'] = $items;
         $data['total'] = $total;
         $data['success'] = true;
     } catch (Exception $e) {
         $data['message'] = $e->getMessage();
     }
     return $data;
 }
Example #2
0
 public static function init($config = array())
 {
     //-- todo : load log handler here
     // load system config
     sys::import('webi.config');
     wbConfig::init();
     // load variables handler, server/request/response utilities
     sys::import('webi.server');
     sys::import('webi.nusoap');
     // load template, page handler
     sys::import('webi.template');
     sys::import('webi.htmlElementWidget');
     wbPage::init();
     // load database
     sys::import('webi.db');
     $dbConnParams = array('name' => wbConfig::get('DB.name'), 'user' => wbConfig::get('DB.user'), 'password' => wbConfig::get('DB.password'), 'host' => wbConfig::get('DB.host'), 'type' => wbConfig::get('DB.type'));
     wbDB::init($dbConnParams);
     // load session handler
     sys::import('webi.sessions');
     wbSession::init();
     //-- todo : load language system
     // load utilities function
     sys::import('webi.utils');
     // load module handler
     sys::import('webi.modules');
     sys::import('webi.crud.AbstractTable');
     //-- todo : load users and security system
     sys::import('webi.users');
     wbUser::init();
     sys::import('webi.security');
     return true;
 }
 /**
  * read
  * controler for get all items
  */
 public static function read($args = array())
 {
     // Security check
     if (!wbSecurity::check('t_message_inbox')) {
         return;
     }
     // Get arguments from argument array
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 'inbox.creation_date');
     $dir = wbRequest::getVarClean('dir', 'str', 'DESC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $t_message_inbox_id = wbRequest::getVarClean('t_message_inbox_id', 'int', 0);
     $p_message_type_id = wbRequest::getVarClean('p_message_type_id', 'int', 0);
     $t_cust_account_id = wbRequest::getVarClean('t_cust_account_id', 'int', 0);
     $message_status = wbRequest::getVarClean('message_status', 'str', '');
     $message_body = wbRequest::getVarClean('message_body', 'str', '');
     $p_app_role_id_to = wbRequest::getVarClean('p_app_role_id_to', 'int', 0);
     $closing_date = wbRequest::getVarClean('closing_date', 'str', '');
     $closed_by = wbRequest::getVarClean('closed_by', 'str', '');
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     try {
         $table =& wbModule::getModel('bds', 't_message_inbox');
         //Set default criteria. You can override this if you want
         foreach ($table->fields as $key => $field) {
             if (!empty(${$key})) {
                 // <-- Perhatikan simbol $$
                 if ($field['type'] == 'str') {
                     $table->setCriteria($table->getAlias() . $key . $table->likeOperator . '?', array(${$key}));
                 } else {
                     $table->setCriteria($table->getAlias() . $key . ' = ?', array(${$key}));
                 }
             }
         }
         $table->setCriteria("p_app_role_id_to = 17");
         $query = $table->getDisplayFieldCriteria($query);
         if (!empty($query)) {
             $table->setCriteria($query);
         }
         $user_name = wbSession::getVar('user_name');
         $table->setCriteria("inbox.t_cust_account_id = (select t_cust_account_id from sikp.f_get_npwd_by_username('{$user_name}'))");
         $items = $table->getAll($start, $limit, $sort, $dir);
         $total = $table->countAll();
         $data['items'] = $items;
         $data['total'] = $total;
         $data['success'] = true;
     } catch (Exception $e) {
         $data['message'] = $e->getMessage();
     }
     return $data;
 }
 /**
  * read
  * controler for get all items
  */
 public static function read($args = array())
 {
     // Security check
     if (!wbSecurity::check('p_finance_period')) {
         return;
     }
     // Get arguments from argument array
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 'start_date');
     $dir = wbRequest::getVarClean('dir', 'str', 'DESC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $p_year_period_id = wbRequest::getVarClean('p_year_period_id', 'int', 0);
     $code = wbRequest::getVarClean('code', 'str', '');
     $p_year_period_id = wbRequest::getVarClean('p_year_period_id', 'int', 0);
     $p_status_list_id = wbRequest::getVarClean('p_status_list_id', 'int', 0);
     $start_date = wbRequest::getVarClean('start_date', 'str', '');
     $end_date = wbRequest::getVarClean('end_date', 'str', '');
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     try {
         $table =& wbModule::getModel('bds', 'p_finance_period');
         $table->selectClause = "select *,'TAHUN '||year_code as _display_field_";
         $table->fromClause = " from p_year_period";
         //Set default criteria. You can override this if you want
         foreach ($table->fields as $key => $field) {
             if (!empty(${$key})) {
                 // <-- Perhatikan simbol $$
                 if ($field['type'] == 'str') {
                     $table->setCriteria($table->getAlias() . $key . $table->likeOperator . '?', array(${$key}));
                 } else {
                     $table->setCriteria($table->getAlias() . $key . ' = ?', array(${$key}));
                 }
             }
         }
         $query = $table->getDisplayFieldCriteria($query);
         if (!empty($query)) {
             $table->setCriteria($query);
         }
         $user_name = wbSession::getVar('user_name');
         //$table->setCriteria("finance.p_year_period_id not in(select p_year_period_id from t_vat_setllement where npwd='".$user_name."')");
         $items = $table->getAll($start, $limit, $sort, $dir);
         $total = $table->countAll();
         $data['items'] = $items;
         $data['total'] = $total;
         $data['success'] = true;
     } catch (Exception $e) {
         $data['message'] = $e->getMessage();
     }
     return $data;
 }
 public function printTransaksiHarian()
 {
     $user_name = wbSession::getVar('user_name');
     if (empty($user_name)) {
         return;
     }
     // Get arguments from argument array
     $date_start = wbRequest::getVarClean('date_start', 'str', '');
     $date_end = wbRequest::getVarClean('date_end', 'str', '');
     try {
         $ws_client = self::getNusoap();
         $params = array('search' => '', 'getParams' => json_encode($_GET), 'controller' => json_encode(array('module' => 'bds', 'class' => 'cust_acc_trans', 'method' => 'readExist', 'type' => 'json')), 'postParams' => json_encode($_POST), 'jsonItems' => '', 'start' => $start, 'limit' => $limit);
         $ws_data = self::getResultData($ws_client, $params);
     } catch (Exception $e) {
         throw new Exception($e->getMessage());
     }
     self::print_laporan($ws_data['data'], array('username' => $user_name, 'date_start' => $date_start, 'date_end' => $date_end));
 }
Example #6
0
 public static function &getSession()
 {
     $info = array();
     $info['user_id'] = wbSession::getVar('user_id');
     $info['user_name'] = wbSession::getVar('user_name');
     $info['user_email'] = wbSession::getVar('user_email');
     $info['user_realname'] = wbSession::getVar('user_realname');
     $info['roles'] = unserialize(wbSession::getVar('roles'));
     return $info;
 }
 public static function submitSptpd($args = array())
 {
     $jsonItems = wbRequest::getVarClean('items', 'str', '');
     $items = wbUtil::jsonDecode($jsonItems);
     $table =& wbModule::getModel('bds', 't_vat_settlement');
     $table->actionType = 'CREATE';
     //$items = $item['items'];
     $data = array('items' => array(), 'total' => 0, 'success' => true, 'message' => '');
     try {
         $user_name = wbSession::getVar('user_name');
         foreach ($items as $item) {
             $sql = "select sikp.f_first_submit_engine(501," . $item['t_customer_order_id'] . ",'" . $user_name . "')";
             $message = $table->dbconn->GetOne("{$sql}");
         }
         $data['success'] = true;
         $data['message'] = $message;
         return $data;
     } catch (Exception $e) {
         $data['success'] = false;
         $data['message'] = $e->getMessage();
         return $data;
     }
 }
 public static function execReject($args = array())
 {
     // Security check
     if (!wbSecurity::check('Inquiry')) {
         return;
     }
     // Get arguments from argument array
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 'listing_no');
     $dir = wbRequest::getVarClean('dir', 'str', 'ASC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $no_registration = wbRequest::getVarClean('no_registration', 'int', 0);
     $getAll = wbRequest::getVarClean('getAll', 'str', '');
     $jsonItems = wbRequest::getVarClean('items', 'str', '');
     $arrItems = (array) json_decode($jsonItems);
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     try {
         $db = NewADOConnection("oci8");
         $ora_tns = wbConfig::get('DB.ora_tns');
         $ora_user = wbConfig::get('DB.ora_user');
         $ora_pass = wbConfig::get('DB.ora_pass');
         $db->Connect($ora_tns, $ora_user, $ora_pass);
         $stmt = $db->PrepareSP("BEGIN\r\n                            p_exec_reject_websrvc(:i_receipt_no,\r\n                               :in_payment_receipt_id,\r\n                               :i_kode_bank,\r\n                               :i_branch_id,\r\n                               :i_user_id,\r\n                               :i_user_name,\r\n                               :i_id_pelanggan,\r\n                               :i_nama,\r\n                               :i_jml_bill,\r\n                               :i_jml_adm,\r\n                               :on_t_cancel_receipt_id,\r\n                               :on_return_code,\r\n                               :os_cancel_info\r\n                               );\r\n                                END;\r\n                                ");
         $i_kode_bank = wbSession::getVar('bank_name');
         $branch_id = wbSession::getVar('branch_id');
         $user_id = wbSession::getVar('user_id');
         $user_name = wbSession::getVar('user_name');
         $in_payment_receipt_id = $arrItems['T_RECEIPT_ID'];
         $i_receipt_no = $arrItems['RECEIPT_NO'];
         $i_id_pelanggan = $arrItems['ID_PELANGGAN'];
         $i_nama = $arrItems['ACC_LAST_NAME'];
         $i_jml_bill = $arrItems['BILL_AMOUNT'];
         $i_jml_adm = $arrItems['ADMIN_AMOUNT'];
         $db->InParameter($stmt, $i_kode_bank, 'i_kode_bank', 4000);
         $db->InParameter($stmt, $branch_id, 'i_branch_id', 4000);
         $db->InParameter($stmt, $user_id, 'i_user_id', 4000);
         $db->InParameter($stmt, $user_name, 'i_user_name', 4000);
         $db->InParameter($stmt, $in_payment_receipt_id, 'in_payment_receipt_id', 4000);
         $db->InParameter($stmt, $i_receipt_no, 'i_receipt_no', 4000);
         $db->InParameter($stmt, $i_id_pelanggan, 'i_id_pelanggan', 4000);
         $db->InParameter($stmt, $i_nama, 'i_nama', 4000);
         $db->InParameter($stmt, $i_jml_adm, 'i_jml_adm', 4000);
         $db->InParameter($stmt, $i_jml_bill, 'i_jml_bill', 4000);
         $db->OutParameter($stmt, $on_t_cancel_receipt_id, 'on_t_cancel_receipt_id', 4000);
         $db->OutParameter($stmt, $on_return_code, 'on_return_code', 4000);
         $db->OutParameter($stmt, $os_return_msg, 'os_cancel_info', 4000);
         $ok = $db->Execute($stmt);
         //exit;
     } catch (Exception $e) {
         $data['message'] = $e->getMessage();
         $data['success'] = false;
     }
     $data['items'] = array('on_return_code' => $on_return_code, 'os_cancel_info' => $os_return_msg, 'on_t_cancel_receipt_id' => $on_t_cancel_receipt_id);
     $data['total'] = 1;
     $data['success'] = true;
     $data['message'] = $os_return_msg;
     return $data;
 }
 public static function getNpwd($args = array())
 {
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 't_cust_order_legal_doc_id');
     $dir = wbRequest::getVarClean('dir', 'str', 'ASC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $t_cust_order_legal_doc_id = wbRequest::getVarClean('t_cust_order_legal_doc_id', 'int', 0);
     $trans_date = wbRequest::getVarClean('trans_date', 'str', '');
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     $dbConnParams_rwnet = array('name' => wbConfig::get('DB.name_rwnet'), 'user' => wbConfig::get('DB.user_rwnet'), 'password' => wbConfig::get('DB.password_rwnet'), 'host' => wbConfig::get('DB.host_rwnet'), 'type' => wbConfig::get('DB.type_rwnet'), 'schema' => 'sikp');
     try {
         $table =& wbModule::getModel('bds', 'd_hotel');
         $user_name = wbSession::getVar('user_name');
         $query = "select ty_lov_npwd as t_cust_order_legal_doc_id, npwd, company_name,\n                        p_vat_type_id, vat_code, p_vat_type_dtl_id, vat_code_dtl\n                        from f_get_npwd_by_username('{$user_name}') AS tbl (ty_lov_npwd)\n                        where upper(npwd) like '%{$s_keyword}%' OR\n                        upper(company_name) like '%{$s_keyword}%'";
         $items = $table->dbconn->GetAllAssocLimit($query, $limit, $start);
         $query = "SELECT COUNT(1) from sikp.f_get_cust_acc_dtl_trans({$t_cust_order_legal_doc_id},'{$trans_date}') " . $table->getCriteriaSQL();
         $countitems = $table->dbconn->GetOne($query);
         if ($countitems === false) {
             throw new Exception($dbConn_rwnet->ErrorMsg());
         }
         $total = $table->countAll();
     } catch (UserLoginFailedException $e) {
         $data['message'] = $e->getMessage();
     }
     $data['items'] = $items;
     $data['total'] = $countitems;
     $data['success'] = true;
     return $data;
 }
Example #10
0
 /**
  * Confirm an authorisation key is valid
  *
  * See description of xarSecGenAuthKey for information on
  * this function
  *
  * @access public
  * @param string authIdVarName
  * @return bool true if the key is valid, false if it is not
  * @throws FORBIDDEN_OPERATION
  * @todo bring back possibility of time authorized keys
  */
 function confirmAuthKey($modName = NULL, $authIdVarName = 'authid')
 {
     if (!isset($modName)) {
         list($modName) = wbRequest::getController();
     }
     $authid = wbRequest::getVar($authIdVarName);
     $rands = wbSession::getVar('rand');
     $now = time();
     srand((double) microtime() * 1000000);
     // convert single rand to array of "timestamp-rand()" strings
     if (!is_array($rands)) {
         $rands = array();
         // session integrity: only keep most recent 64 values
         $rands = array_slice($rands, -64);
         wbSession::setVar('rand', $rands);
     }
     // needed in foreach to expire old rand values
     $age = wbConfig::get('Session.InactivityTimeout') * 60;
     // convert minutes to seconds
     // loop through the rands array to find a match
     foreach ($rands as $r => $rnd) {
         list($timestamp, $rndval) = explode('-', $rnd, 2);
         // ignore and get rid of random values older than session activity timeout
         if ($now - $age > $timestamp) {
             unset($rands[$r]);
             continue;
         }
         // Regenerate static part of key
         $partkey = $rndval . strtolower($modName);
         if (md5($partkey) == $authid) {
             // Match - get rid of it and leave happy
             unset($rands[$r]);
             // session integrity: only keep most recent 64 values
             $rands = array_slice($rands, -64);
             wbSession::setVar('rand', $rands);
             return true;
         }
     }
     throw new Exception("<p>Operasi yang anda coba lakukan tidak diperkenankan dalam kondisi ini.</p>Anda mungkin telah menekan tombol Back atau Reload pada browser dan mencoba kembali operasi yang tidak boleh diulang, atau cookie tidak diaktifkan pada browser anda");
     return false;
 }
 public static function cancelPembayaran($args = array())
 {
     // Security check
     //if (!wbSecurity::check('DHotel')) return;
     if (!wbSecurity::check('Inquiry')) {
         return;
     }
     // Get arguments from argument array
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 'listing_no');
     $dir = wbRequest::getVarClean('dir', 'str', 'ASC');
     $query = wbRequest::getVarClean('query', 'str', '');
     $no_registration = wbRequest::getVarClean('no_registration', 'str', 0);
     $bphtb_amount = wbRequest::getVarClean('bphtb_amount', 'float', 0);
     $bit48 = wbRequest::getVarClean('bit48', 'str', 0);
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     $dbConnParams_rwnet = array('name' => wbConfig::get('DB.name_rwnet'), 'user' => wbConfig::get('DB.user_rwnet'), 'password' => wbConfig::get('DB.password_rwnet'), 'host' => wbConfig::get('DB.host_rwnet'), 'type' => wbConfig::get('DB.type_rwnet'), 'schema' => 'sikp');
     try {
         $table =& wbModule::getModel('bds', 'd_hotel');
         $result = $table->dbconn->GetItem("select * from core_user where user_id=" . wbSession::getVar('user_id'));
         $dbConn_rwnet = ADONewConnection($dbConnParams_rwnet['type']);
         $dbConn_rwnet->Connect($dbConnParams_rwnet['host'], $dbConnParams_rwnet['user'], $dbConnParams_rwnet['password'], $dbConnParams_rwnet['name']);
         $query = "select * from sikp.f_manual_reversal('{$no_registration}','" . $result['user_name'] . "', 'Cancel Pembayaran')";
         $long_code = $dbConn_rwnet->GetItem($query);
     } catch (UserLoginFailedException $e) {
         $data['message'] = $e->getMessage();
     }
     $data['items'] = $long_code;
     $data['total'] = 2;
     $data['success'] = true;
     return $data;
 }
 /**
  * create
  * controler for create new item
  */
 public static function create($args = array())
 {
     // Security check
     if (!wbSecurity::check('t_message_outbox')) {
         return;
     }
     // Get arguments from argument array
     extract($args);
     $data = array('items' => array(), 'success' => false, 'message' => '');
     $jsonItems = wbRequest::getVarClean('items', 'str', '');
     $items =& wbUtil::jsonDecode($jsonItems);
     if (!is_array($items)) {
         $data['message'] = 'Invalid items parameter';
         return $data;
     }
     $table =& wbModule::getModel('bds', 't_message_outbox');
     $table->actionType = 'CREATE';
     if (isset($items[0])) {
         $errors = array();
         $numSaved = 0;
         $numItems = count($items);
         $savedItems = array();
         for ($i = 0; $i < $numItems; $i++) {
             try {
                 $table->dbconn->BeginTrans();
                 $items[$i][$table->pkey] = $table->GenID();
                 $table->setRecord($items[$i]);
                 $table->create();
                 $numSaved++;
                 $table->dbconn->CommitTrans();
             } catch (Exception $e) {
                 $table->dbconn->RollbackTrans();
                 $errors[] = $e->getMessage();
             }
             $items[$i] = array_merge($items[$i], $table->record);
         }
         $numErrors = count($errors);
         if (count($errors)) {
             $data['message'] = $numErrors . " dari " . $numItems . " record gagal disimpan.<br/><br/><b>System Response:</b><br/>- " . implode("<br/>- ", $errors) . "";
         } else {
             $data['success'] = true;
             $data['message'] = 'Data berhasil disimpan';
         }
         $data['items'] = $items;
     } else {
         try {
             // begin transaction block
             $table->dbconn->BeginTrans();
             // insert master
             $items[$table->pkey] = $table->GenID();
             $user_name = wbSession::getVar('user_name');
             $items['t_cust_account_id'] = $table->dbconn->GetOne("select t_cust_account_id from sikp.f_get_npwd_by_username('{$user_name}')");
             $items['message_status'] = 'S';
             $items['p_app_role_id_to'] = $table->dbconn->GetOne("select p_app_role_id_to from sikp.p_msg_type_role_map where p_app_role_id_for = 17 and p_message_type_id = " . $items['p_message_type_id']);
             $table->setRecord($items);
             $table->create();
             // insert detail
             $data['success'] = true;
             $data['message'] = 'Data berhasil disimpan';
             $data['items'] = $table->get($items[$table->pkey]);
             // all ok, commit transaction
             $table->dbconn->CommitTrans();
         } catch (Exception $e) {
             // something happen, rollback transaction
             $table->dbconn->RollbackTrans();
             $data['message'] = $e->getMessage();
             $data['items'] = $items;
         }
     }
     return $data;
 }
 public static function getCustAccMonth($args = array())
 {
     extract($args);
     $start = wbRequest::getVarClean('start', 'int', 0);
     $limit = wbRequest::getVarClean('limit', 'int', 50);
     $sort = wbRequest::getVarClean('sort', 'str', 't_cust_account_id');
     $dir = wbRequest::getVarClean('dir', 'str', 'ASC');
     //$query = wbRequest::getVarClean('query', 'str', '');
     $s_keyword = wbRequest::getVarClean('query', 'str', '');
     $t_cust_account_id = wbRequest::getVarClean('t_cust_account_id', 'int', 0);
     $trans_date = wbRequest::getVarClean('trans_date', 'str', '');
     $data = array('items' => array(), 'total' => 0, 'success' => false, 'message' => '');
     $dbConnParams_rwnet = array('name' => wbConfig::get('DB.name_rwnet'), 'user' => wbConfig::get('DB.user_rwnet'), 'password' => wbConfig::get('DB.password_rwnet'), 'host' => wbConfig::get('DB.host_rwnet'), 'type' => wbConfig::get('DB.type_rwnet'), 'schema' => 'sikp');
     try {
         $table =& wbModule::getModel('bds', 'd_hotel');
         $user_name = wbSession::getVar('user_name');
         $arr_npwd = array();
         if (empty($t_cust_account_id)) {
             $arr_npwd = $table->dbconn->GetItem("select t_cust_account_id,npwd from sikp.f_get_npwd_by_username('{$user_name}')");
         }
         $query = " SELECT\n                        \t\t '" . $arr_npwd['npwd'] . "' as npwd,\n                        \t\t t_cust_acc_dtl_trans.t_cust_account_id,\n                        \t\t sum(t_cust_acc_dtl_trans.service_charge) as jum_trans,\n                        \t\t sum(t_cust_acc_dtl_trans.vat_charge) as jum_pajak,\n                                 t_cust_acc_dtl_trans.p_vat_type_dtl_id,\n                        \t\t p_finance_period.p_finance_period_id,\n                        \t\t p_finance_period.code,\n                        \t\t t_customer_order.p_order_status_id,\n                        \t\t case when t_vat_setllement.start_period is null then p_finance_period.start_date else t_vat_setllement.start_period END as start_period,\n                             case when t_vat_setllement.end_period is null then p_finance_period.end_date else t_vat_setllement.end_period END as end_period\n                        FROM\n                             t_cust_acc_dtl_trans\n                        LEFT JOIN p_finance_period on to_char(trans_date, 'YYYY-MM') = to_char(p_finance_period.start_date, 'YYYY-MM')\n                        LEFT JOIN t_vat_setllement on t_cust_acc_dtl_trans.t_cust_account_id = t_vat_setllement.t_cust_account_id and  p_finance_period.p_finance_period_id = t_vat_setllement.p_finance_period_id \n                        LEFT JOIN t_customer_order on t_customer_order.t_customer_order_id = t_vat_setllement.t_customer_order_id\n                        WHERE\n                             t_cust_acc_dtl_trans.t_cust_account_id = " . $arr_npwd['t_cust_account_id'] . " AND \n                        \t\t trans_date >= CASE\n                        \t\t\t\tWHEN  t_vat_setllement.start_period is null THEN p_finance_period.start_date\n                        \t\t\t\tELSE t_vat_setllement.start_period\n                        \t\t\tEND\n                        \t\tAND \n                        \t\ttrans_date <= CASE\n                        \t\t\t\tWHEN  t_vat_setllement.end_period is null THEN p_finance_period.end_date\n                        \t\t\t\tELSE t_vat_setllement.end_period\n                        \t\t\tEND\n                        GROUP BY\n                        \t\t t_cust_acc_dtl_trans.t_cust_account_id,\n                                 t_cust_acc_dtl_trans.p_vat_type_dtl_id,\n                        \t\t p_finance_period.p_finance_period_id,\n                        \t\t p_finance_period.code,\n                        \t\t t_customer_order.p_order_status_id,\n                        \t\t case when t_vat_setllement.start_period is null then p_finance_period.start_date else t_vat_setllement.start_period END,\n                             case when t_vat_setllement.end_period is null then p_finance_period.end_date else t_vat_setllement.end_period END\n                        ORDER BY \n                        \t\t case when t_vat_setllement.start_period is null then p_finance_period.start_date else t_vat_setllement.start_period END DESC";
         $items = $table->dbconn->GetAllAssocLimit($query, $limit, $start);
         $query = "SELECT COUNT(1) from (" . $query . ") tbl";
         $countitems = $table->dbconn->GetOne($query);
         if ($countitems === false) {
             throw new Exception($dbConn_rwnet->ErrorMsg());
         }
         //$total = $table->countAll();
     } catch (UserLoginFailedException $e) {
         $data['message'] = $e->getMessage();
     }
     $data['items'] = $items;
     $data['total'] = $countitems;
     $data['success'] = true;
     return $data;
 }
 public static function deleteDSR($args = array())
 {
     $jsonItems = wbRequest::getVarClean('items', 'str', '');
     $item = wbUtil::jsonDecode($jsonItems);
     $table =& wbModule::getModel('bds', 'cust_acc_trans');
     //$table->actionType = 'DELETE';
     $data = array('items' => array(), 'total' => 0, 'success' => true, 'message' => '');
     try {
         $user_name = wbSession::getVar('user_name');
         $sql = "DELETE FROM t_cust_acc_dtl_trans a\r\n\t\t\t\t\tWHERE a.t_cust_account_id = " . $item['t_cust_account_id'] . "\r\n\t\t\t\t\tand not exists (select 1 from t_vat_setllement_dtl x where x.t_cust_acc_dtl_trans_id = a.t_cust_acc_dtl_trans_id)";
         $items = $table->dbconn->GetItem($sql);
         $data['items'] = $item;
         $data['message'] = 'Berhasil';
         $data['success'] = true;
         $data['items'] = $items;
         return $data;
     } catch (Exception $e) {
         $data['success'] = false;
         $data['message'] = $e->getMessage();
         return $data;
     }
 }
 public static function getPaymentInfo($args = array())
 {
     //$jsonItems = wbRequest::getVarClean('items', 'str', '');
     //$item = wbUtil::jsonDecode($jsonItems);
     $no_bayar = wbRequest::getVarClean('no_bayar', 'str', '');
     $table =& wbModule::getModel('bds', 't_vat_settlement');
     $table->actionType = 'CREATE';
     //$items = $item['items'];
     $data = array('items' => array(), 'total' => 0, 'success' => true, 'message' => '');
     //$data ['items']=$no_bayar;
     //return $data;
     try {
         $user_name = wbSession::getVar('user_name');
         $sql = "select to_char(a.settlement_date,'dd-mm-yyyy') as settlement_date,to_char(a.settlement_date,'HH24:MI:ss') as pukul,a.npwd,wp_name,vat_code,z.code, nvl(total_vat_amount,0)as total_vat_amount,nvl(total_penalty_amount,0) as total_penalty_amount,nvl(total_vat_amount,0)+nvl(total_penalty_amount,0) as total_bayar,payment_key,\n\t\t\t\treplace(f_terbilang(to_char(nvl(total_vat_amount,0)+nvl(total_penalty_amount,0)),'IDR'),'    sen ','') as dengan_huruf \n\t\t\t\tfrom sikp.t_vat_setllement a\n\t\t\t\tleft join sikp.t_cust_account x on a.t_cust_account_id =x.t_cust_account_id \n\t\t\t\tleft join sikp.p_vat_type_dtl y on y.p_vat_type_dtl_id = a.p_vat_type_dtl_id\n\t\t\t\tleft join sikp.p_finance_period z on z.p_finance_period_id = a.p_finance_period_id\n\t\t\t\twhere payment_key ='" . $no_bayar . "'";
         $items = $table->dbconn->GetItem($sql);
         if ($items['wp_name'] == null || empty($items['wp_name'])) {
             $data['success'] = false;
             $data['message'] = 'Gagal';
         } else {
             $data['success'] = true;
             $data['message'] = 'Berhasil';
         }
         $data['items'] = $items;
         return $data;
     } catch (Exception $e) {
         $data['success'] = false;
         $data['message'] = $e->getMessage();
         return $data;
     }
 }