Ejemplo n.º 1
0
 public function addTransFound($_data)
 {
     $this->_name = "cs_trans_found";
     $capital_dollar = empty($_data['money_dollar']) ? 0 : $_data['money_dollar'];
     $refund_dollar = empty($_data['refund_dollar']) ? 0 : $_data['refund_dollar'];
     $_data['refund_dollar'] = $capital_dollar < $refund_dollar ? $capital_dollar : $refund_dollar;
     $capital_bath = empty($_data['money_bath']) ? 0 : $_data['money_bath'];
     $refund_bath = empty($_data['refund_bath']) ? 0 : $_data['refund_bath'];
     $_data['refund_bath'] = $capital_bath < $refund_bath ? $capital_bath : $refund_bath;
     $capital_reil = empty($_data['money_kh']) ? 0 : $_data['money_kh'];
     $refund_kh = empty($_data['refund_kh']) ? 0 : $_data['refund_kh'];
     $_data['refund_kh'] = $capital_reil < $refund_kh ? $capital_reil : $refund_kh;
     $_refund_dollar = empty($_data['refund_dollar']) ? 0 : $_data['refund_dollar'];
     $_refund_bath = empty($_data['refund_bath']) ? 0 : $_data['refund_bath'];
     $_refund_riel = empty($_data['refund_kh']) ? 0 : $_data['refund_kh'];
     $exchange_dollar = empty($_data['exchange_dollar']) ? 0 : $_data['exchange_dollar'];
     $exchange_bath = empty($_data['exchange_bath']) ? 0 : $_data['exchange_bath'];
     $exchange_riel = empty($_data['exchange_riel']) ? 0 : $_data['exchange_riel'];
     $dollar_id = empty($_data['money_dollar_id']) ? 0 : $_data['money_dollar_id'];
     $bath_id = empty($_data['money_bath_id']) ? 0 : $_data['money_bath_id'];
     $riel_id = empty($_data['money_kh_id']) ? 0 : $_data['money_kh_id'];
     $db_sender = new Application_Model_DbTable_DbKbank();
     $sender_id = $db_sender->getSenderIdbyName($_data['sender_name']);
     $session_user = new Zend_Session_Namespace('auth');
     $db = $this->getAdapter();
     $db->beginTransaction();
     try {
         $arr_remain = array('money_tran_id' => '0', 'sender_name' => $sender_id, 'invoice_no' => $_data["invoice_no"], 'rate_perday' => $_data["remain_rate_perday"], 'commission_agent' => '0', 'status' => '0', 'status_loan' => '2', 'cut_service' => '0', 'send_date' => date('Y-m-d'), 'exchange_rate_db' => $exchange_dollar, 'exchange_rate_dr' => $exchange_bath, 'exchange_rate_rb' => $exchange_riel, 'user_id' => $session_user->user_id);
         $arr_status_loan = array('status_loan' => 3);
         if (!empty($_data["refund_dollar"])) {
             $this->_name = "cs_trans_found";
             $_arr = array("invoice_found" => $_data["invoice_no"], "sender_id" => $sender_id, "capital" => $capital_dollar, "refund" => $_refund_dollar, "exchange_rate_db" => $exchange_dollar, "exchange_rate_dr" => $exchange_bath, "exchange_rate_rb" => $exchange_riel, "date_refund" => date('Y-m-d'), "curency_type" => '1', "tran_id" => $dollar_id);
             $found_id = $this->insert($_arr);
             $this->updateOwe('id', $dollar_id, $arr_status_loan);
             /*insert to capital*/
             if (empty($_data['pay_all'])) {
                 //if pay sigle
                 if ($_data['pay_currencytype'] > -1) {
                     $_ref_dollar_tocap = empty($_data['rrconvertto_dollar']) ? $_data['refund_dollar'] : $_data['rrconvertto_dollar'];
                     $org_currtype = $_data['pay_currencytype'];
                 } else {
                     $org_currtype = 1;
                     $_ref_dollar_tocap = $_data['refund_dollar'];
                 }
             } else {
                 //if multy payment
                 $org_currtype = $_data['from_amount_type'];
                 $_ref_dollar_tocap = empty($_data['rrconvertto_dollar']) ? $_data['refund_dollar'] : $_data['rrconvertto_dollar'];
                 if ($org_currtype == 1) {
                     $_ref_dollar_tocap = $_data['refund_dollar'];
                 }
             }
             $this->culToCapital($found_id, $org_currtype, $_ref_dollar_tocap);
             //print_r($_arr);echo '<br/><br/>';
             $remain = $capital_dollar - $_refund_dollar;
             //echo $remain.'<br/><br/>';
             if ($remain <= 0) {
                 $remain = 0;
             }
             $arr_remain['amount'] = $remain;
             $arr_remain['total_money'] = $remain;
             $arr_remain['total_money_owe'] = $remain;
             $arr_remain['amount_type'] = 1;
             $this->addOwe($arr_remain);
             //$found_id = $this->insert($_arr);
             //$_data["curency_type"]=1; $this->addCashFound($_data);
         }
         if (!empty($_data["refund_bath"])) {
             $this->_name = "cs_trans_found";
             $_arr = array("invoice_found" => $_data["invoice_no"], "sender_id" => $sender_id, "capital" => $capital_bath, "refund" => $_refund_bath, "exchange_rate_db" => $exchange_dollar, "exchange_rate_dr" => $exchange_bath, "exchange_rate_rb" => $exchange_riel, "date_refund" => date('Y-m-d'), "curency_type" => '2', "tran_id" => $bath_id);
             $found_id = $this->insert($_arr);
             $this->updateOwe('id', $bath_id, $arr_status_loan);
             /*insert to capital*/
             if (empty($_data['pay_all'])) {
                 //if pay sigle
                 if ($_data['pay_currencytype'] > -1) {
                     $_ref_bath_tocap = empty($_data['rrconvertto_bath']) ? $_data['refund_bath'] : $_data['rrconvertto_bath'];
                     $org_currtype = $_data['pay_currencytype'];
                 } else {
                     $org_currtype = 2;
                     $_ref_bath_tocap = $_data['refund_bath'];
                 }
             } else {
                 //if multy payment
                 $org_currtype = $_data['from_amount_type'];
                 $_ref_bath_tocap = empty($_data['rrconvertto_bath']) ? $_data['refund_bath'] : $_data['rrconvertto_bath'];
                 if ($org_currtype == 1) {
                     $_ref_bath_tocap = $_data['refund_dollar'];
                 }
             }
             $this->culToCapital($found_id, $org_currtype, $_ref_bath_tocap);
             //print_r($_arr);echo '<br/><br/>';
             $remain = $capital_bath - $_refund_bath;
             //echo $remain.'<br/><br/>';
             if ($remain <= 0) {
                 $remain = 0;
             }
             $arr_remain['amount'] = $remain;
             $arr_remain['total_money'] = $remain;
             $arr_remain['total_money_owe'] = $remain;
             $arr_remain['amount_type'] = 2;
             $this->addOwe($arr_remain);
             //$found_id = $this->insert($_arr);
             //$_data["curency_type"]=2; $this->addCashFound($_data);
         }
         if (!empty($_data["refund_kh"])) {
             $this->_name = "cs_trans_found";
             $_arr = array("invoice_found" => $_data["invoice_no"], "sender_id" => $sender_id, "capital" => $capital_reil, "refund" => $_refund_riel, "exchange_rate_db" => $exchange_dollar, "exchange_rate_dr" => $exchange_bath, "exchange_rate_rb" => $exchange_riel, "date_refund" => date('Y-m-d'), "curency_type" => '3', "tran_id" => $riel_id);
             $found_id = $this->insert($_arr);
             $this->updateOwe('id', $riel_id, $arr_status_loan);
             /*insert to capital*/
             if (empty($_data['pay_all'])) {
                 //if pay sigle
                 if ($_data['pay_currencytype'] > -1) {
                     $_ref_riel_tocap = empty($_data['rrconvertto_riel']) ? $_data['refund_kh'] : $_data['rrconvertto_riel'];
                     $org_currtype = $_data['pay_currencytype'];
                 } else {
                     $org_currtype = 3;
                     $_ref_riel_tocap = $_data['refund_kh'];
                 }
             } else {
                 //if multy payment
                 $org_currtype = $_data['from_amount_type'];
                 $_ref_riel_tocap = empty($_data['rrconvertto_riel']) ? $_data['refund_kh'] : $_data['rrconvertto_riel'];
                 if ($org_currtype == 1) {
                     $_ref_riel_tocap = $_data['refund_kh'];
                 }
             }
             $this->culToCapital($found_id, $org_currtype, $_ref_riel_tocap);
             //print_r($_arr);echo '<br/><br/>';
             $remain = $capital_reil - $_refund_riel;
             //echo $remain.'<br/><br/>';
             if ($remain <= 0) {
                 $remain = 0;
             }
             $arr_remain['amount'] = $remain;
             $arr_remain['total_money'] = $remain;
             $arr_remain['total_money_owe'] = $remain;
             $arr_remain['amount_type'] = 3;
             //print_r($arr_remain);echo 'arr_remain<br/><br/>';
             $this->addOwe($arr_remain);
         }
         return $db->commit();
     } catch (Exception $e) {
         $db->rollBack();
         //     		echo $e->getMessage();exit();
     }
 }
Ejemplo n.º 2
0
 function updateMoneyTransfer($data)
 {
     $percent = empty($data['percent']) ? 0 : $data['percent'];
     $send_date = $data['send_date'] . ' ' . date('h:i:s');
     $exp_date = $data['epx_date'] . ' ' . date('h:i:s');
     $rec_date = $data['status'] == 0 ? null : date('Y-m-d h:i:s');
     $session_user = new Zend_Session_Namespace('auth');
     $mt_id = $data['id'];
     $old_data = $this->getTransactionDetailByID($mt_id);
     //     	print_r($old_data); exit;
     $db = $this->getAdapter();
     $db->beginTransaction();
     try {
         $agent_id = $data['agent_id'];
         $_data = array('sender_name' => $data['sender'], 'reciever_name' => $data['reciever'], 'reciever_tel' => $data['reciever_tel'], 'invoice_no' => $data['invoice_no'], 'amount' => $data['amount'], 'amount_type' => $data['type_money'], 'commission' => empty($data['commission']) ? 0 : $data['commission'], 'commission_type' => $data['type_money'], 'commission_percent' => $percent, 'commission_agent' => $data['commission_agent'], 'recieved' => $data['recieve_money'], 'recieved_type' => $data['type_money'], 'status' => $data['status'], 'status_loan' => empty($data['loan']) ? 0 : $data['loan'], 'cut_service' => empty($data['minus']) ? 0 : $data['minus'], 'agent_id' => $agent_id, 'subagent_id' => empty($data['sub_agent_id']) ? 0 : $data['sub_agent_id'], 'send_date' => $send_date, 'expire_date' => $exp_date, 'recieved_date' => $rec_date, 'transfer_money' => $data['gave'], 'total_money' => $data['total'], 'return_money' => $data['return_money'], 'tran_type' => $data['tran_type'], 'is_kbank' => !empty($data['is_kbank']) ? 0 : $data['is_kbank'], 'user_id' => $session_user->user_id);
         $where = $this->getAdapter()->quoteInto('id=?', $mt_id);
         $this->update($_data, $where);
         $this->_name = "cs_transactions_owe";
         $_data['total_money_owe'] = $data['total'];
         unset($_data['return_money']);
         $db_sender = new Application_Model_DbTable_DbKbank();
         $sender_id = $db_sender->getSenderIdbyName($data['sender']);
         // 	    	$db_rate=new Application_Model_DbTable_DbRate();
         // 	    	$rate = $db_rate->getCurrentRate();
         $_data['rate_perday'] = $data['rate_perday'];
         $_data['total_money_owe'] = $data['total'];
         $_data['sender_name'] = $sender_id;
         $_data['exchange_rate_db'] = $data['BD'];
         $_data['exchange_rate_dr'] = $data['RD'];
         $_data['exchange_rate_rb'] = $data['RB'];
         $_data['is_orgdebt'] = 1;
         unset($_data['status_loan']);
         unset($_data['return_money']);
         // 	    	$this->_name="cs_transactions_owe";
         // 	    	$_data['money_tran_id']=$tran_no;
         // 	    	$_data['rate_perday']=$data['rate_perday'];
         // 	    	$money_type = 1;
         // 	    	if($data['type_money']==1){
         // 	    		$total_debt = $data['total']+$data['debt_dollar'];
         // 	    	}elseif($data['type_money']==2){
         // 	    		$total_debt = $data['total']+$data['debt_bath'];
         // 	    		$money_type = 2;
         // 	    	}else{
         // 	    		$total_debt = $data['total']+$data['debt_khmer'];
         // 	    		$money_type = 3;
         // 	    	}
         // 	    	$this->updateStatustoPaid($sender_id,$money_type);//update old tran debt to paid below add new debt
         // 	    	$_data['total_money_owe']=$total_debt;
         // 	    	unset($_data['return_money']);
         // 	    	unset($_data['is_kbank']);
         // 	    	$this->insert($_data);
         $exist = $this->TransaOweNotexist($mt_id);
         if (!empty($exist)) {
             $where = $this->getAdapter()->quoteInto('money_tran_id=?', $mt_id);
             $this->update($_data, $where);
         } else {
             if (!empty($data['loan'])) {
                 $_data['rate_perday'] = $data['rate_perday'];
                 $_data['money_tran_id'] = $mt_id;
                 $this->insert($_data);
             }
         }
         $tran_type = $data['tran_type'];
         $old_agent = $old_data['agent_id'];
         $old_amount_type = $old_data['amount_type'];
         $old_amount = $old_data['amount'] + $old_data['commission_agent'];
         $new_agent = $_data['agent_id'];
         $new_amount_type = $_data['amount_type'];
         $new_amount = $_data['amount'] + $_data['commission_agent'];
         $db_cap = new Application_Model_DbTable_DbCapitalAgent();
         $db_cap->updateBalanceWithCondiction($tran_type, $old_agent, $old_amount_type, $old_amount, $new_agent, $new_amount_type, $new_amount);
         return $db->commit();
     } catch (Exception $e) {
         $db->rollBack();
     }
 }
Ejemplo n.º 3
0
 public function getDebtBysenderAction()
 {
     if ($this->getRequest()->isPost()) {
         $_data = $this->getRequest()->getPost();
         $_db = new Application_Model_DbTable_DbPayment();
         $db_sender = new Application_Model_DbTable_DbKbank();
         $sender_id = $db_sender->getSenderIdbyName($_data['sender_name']);
         $moneys = $_db->getAddDebtSenderNameById($sender_id);
         print_r(Zend_Json::encode($moneys));
         exit;
     }
 }