Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function ValidaTransacaoMibank($id_fatura, $id_transacao, $tipo = 1){
- $conta_recebimento = '309144-09';
- $id_transacao = str_replace(' ', '', $id_transacao);
- $id_transacao = (int)trim(addslashes($id_transacao));
- /* Verifica se o código já foi usado */
- $this->db->where('transacao', $id_transacao);
- $queryTransacoes = $this->db->get('mibank_transacoes');
- if($queryTransacoes->num_rows() > 0){
- return json_encode(array('status'=>5));
- exit;
- }
- /* Pega dados da fatura */
- if($tipo == 1){
- $this->db->select('p.valor, f.id_usuario');
- $this->db->from('faturas AS f');
- $this->db->join('planos AS p', 'p.id = f.id_plano', 'inner');
- $this->db->where('f.id', $id_fatura);
- $query = $this->db->get();
- }else{
- $this->db->select('valor, id_usuario');
- $this->db->from('faturas_creditos');
- $this->db->where('id', $id_fatura);
- $query = $this->db->get();
- }
- if($query->num_rows() > 0){
- $row = $query->row();
- /* Traz os dados transacao */
- $transacao = ConsultarTransacao($id_transacao);
- if($transacao === false){
- return json_encode(array('status'=>3));
- exit;
- }
- if(!isset($transacao->destino)){
- return json_encode(array('status'=>4));
- exit;
- }
- if($transacao->destino != $conta_recebimento){
- return json_encode(array('status'=>2));
- exit;
- }
- $pagamento = false;
- for($i = 0; $i <= 10; $i++){
- if($i <= 9){
- $value = '0.0'.$i;
- }else{
- $value = '0.'.$i;
- }
- $valor_centavos = $row->valor + $value;
- $valor_centavos = number_format($valor_centavos, 2, ".", ".");
- if(number_format($transacao->valor, 2, ".", ".") == $valor_centavos){
- $pagamento = true;
- }
- }
- if(!$pagamento){
- return json_encode(array('status'=>7));
- }
- $explode_space = explode(' ', $transacao->data);
- $explode_data = explode('/', $explode_space[0]);
- $date_transaction = $explode_data[2].'-'.$explode_data[1].'-'.$explode_data[0].' '.$explode_space[1];
- /* Verifica se a transacao foi feita nas ultimas 24h */
- if((strtotime($date_transaction)+(60*60*24)) < strtotime(date('Y-m-d H:i'))){
- return json_encode(array('status'=>4));
- exit;
- }
- /* CUMPRIU TODOS OS REQUESITOS */
- $id_usuario_fatura = $row->id_usuario;
- $this->db->insert('mibank_transacoes', array('id_fatura'=>$id_fatura, 'id_usuario'=>$id_usuario_fatura, 'transacao'=>$id_transacao, 'data_pagamento'=>$date_transaction, 'data_liberacao'=>date('Y-m-d H:i:s')));
- if($tipo == 1){
- $AtivaFatura = $this->LiberarFatura($id_fatura);
- }else{
- $AtivaFatura = $this->LiberaFaturaCreditos($id_fatura);
- }
- return json_encode(array('status'=>1));
- }
- return json_encode(array('status'=>6));
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement