<?php

class Api_Model extends CI_Model {
   
    function __construct() {

        parent::__construct();
    }
    
    public function verificainstituicao($token,$chave, $nome) {
        
        $this->db->select('id_instituicao,nome, chave, token, situacao');
        $this->db->where ('token', $token);
        $this->db->where ('chave', $chave);
        $this->db->where ('nome', $nome);
        $this->db->where ('situacao', 1);
        $query = $this->db->get('amn_instituicao')->row_array();

        return $query;
    }
    
    function verificaAluno($id_aluno) {
        
        $this->db->select('a.id_aluno, a.instituicao, a.id_cliente, b.nome, b.saldo, b.bonificacao, b.id_negocio, b.nome, b.saldo_anterior, b.situacao');
        $this->db->where ('a.id_aluno', $id_aluno);
        $this->db->where ('a.id_cliente = b.id_cliente');
        $this->db->order_by("id", "desc");
        $query = $this->db->get('amn_aluno a, amn_cliente b')->row_array();
        return $query;
    }
    
    // DEBITO
    function transacao($id_transacao, $id_cliente, $id_unico) {

        date_default_timezone_set('America/Belem');
        $data = date('Y-m-d H:i:s', time());
        
        $dados = array(
            'id_transacao' => $id_transacao,
            'id_cliente' => $id_cliente,
            'pedido' => $id_unico,
            'tipo_transacao_movimentacao' => 'CONSUMO DE SALDO ',
            'data_transacao' => $data,
            'tipo_pagamento' => 'Debito em Saldo',
            'situacao' => '1',
        );

        $this->db->insert('amn_transacao', $dados);
    }
     
     public function recuperatransacao($id_cliente) {

        $this->db->select('id, id_transacao, id_cliente, data_transacao, tipo_transacao_movimentacao, valor');
        $this->db->where('id_cliente', $id_cliente);
        $this->db->where('id_transacao', $_SESSION['id_transacao']);
        $this->db->order_by("id", "desc");
        $query = $this->db->get('amn_transacao');

        if ($query->num_rows() > 0) {
            return $query->row_array();
        } else {
            return FALSE; //  O ID_TRANSACAO NÃO EXISTE NA TABELA TRANSAÇÃO
        }
    }
     public function atualizatransacaoValor($valor, $id_cliente) {
        // INSIRO O VALOR DA TRANSAÇÃO NO BANCO DE DADOS
        $transacao = $this->recuperatransacao($id_cliente);
      
//        $saldo = str_replace(array('.', ','),array('', '.'), $valor);
        
        $id_transacao = $transacao['id_transacao'];
     
        $data = array('valor' => $valor);
        $this->db->where('id_transacao', $id_transacao);
        $this->db->update('amn_transacao', $data);
    }
    
     function obtem_transacao($id_cliente) {
        date_default_timezone_set('America/Belem');
        date('Y-m-d H:i:s', time());
        $this->db->select('id_transacao, id_cliente, data_transacao');
        $this->db->where ('id_cliente', $id_cliente);
        $this->db->where ('id_transacao', $_SESSION['id_transacao']);
        $query = $this->db->get('amn_transacao');

        if ($query->num_rows() > 0) {
            return $query->row_array();
        } else {
            return FALSE; //  O ID_TRANSACAO NÃO EXISTE NA TABELA TRANSAÇÃO
        }
    }
    public function log_transacao($id_transacao, $token, $id_cliente) {

        $transacao = $this->obtem_transacao($id_cliente);
        $idtransacao = $transacao['id_transacao'];
        date_default_timezone_set('America/Belem');

        $data = date('Y-m-d H:i:s', time());

        $dados = array(
            'transacao' => $idtransacao,
            'id_cliente' => $id_cliente,
            'data' => $data,
            'situacao' => 1,
            'pago' => 1,
            'cod_interme' => $token,
            'responsavel' => 'amazonia negocios',
        );
        $this->db->insert('amn_log_transacao', $dados);
    }
    
     public function obtemSaldo($id_cliente) {
        
        $this->db->select('saldo, bonificacao');
        $this->db->where('id_cliente', $id_cliente);
        $query = $this->db->get('amn_cliente');

        return $query->row_array();
    }
    
    public function atualizaSaldoAnterior($saldo, $id_cliente) {

        $data = array('saldo_anterior' => $saldo);
        $this->db->where('id_cliente', $id_cliente);
        $this->db->update('amn_cliente', $data);
    }
    
    function insere_transacao_transferencia($dados) {

        date_default_timezone_set('America/Belem');

        $this->db->insert('amn_cliente_transferencia', $dados);
    }
    
    public function debitaSaldo($debito, $id_cliente) {

        $data = array('saldo' => $debito);
        $this->db->where('id_cliente', $id_cliente);
        $this->db->update('amn_cliente', $data);
    }
    
    public function recuperatransacao_financeira($id_negocio) {

        $this->db->select('id_log_transacao, id_transacao, tipo_transacao_movimentacao, id_negocio_conta_origem, id_negocio_conta_destino, valor, saldo_conta_origem, saldo_conta_destino, bonificacao,data, status_operacao, dispositivo, ip, navegador');
        $this->db->where('id_negocio_conta_origem', $id_negocio);
        $this->db->order_by("id_log_transacao", "desc");
        $query = $this->db->get('amn_cliente_transferencia');

        if ($query->num_rows() > 0) {
            return $query->row_array();
        } else {
            return FALSE; //  O ID_TRANSACAO NÃO EXISTE NA TABELA TRANSAÇÃO
        }
    }
}
