Exemplo n.º 1
0
 public function executa()
 {
     if (isset($_POST["cadastrar"]) && isset($_POST["idpessoaread"]) && isset($_POST["valor"])) {
         if ($_POST["cadastrar"] == 1) {
             $dao = new PessoaDAO();
             //Implementar Função que comissiona venda
             if ($dao->comissionarVenda($_POST["idpessoaread"], $_POST["valor"], $_POST['nota'])) {
                 echo '<script>alert("Usuário foi comissionado")</script>';
             } else {
                 echo '<script>alert("Não foi possível comissionar este usuário.")</script>';
             }
         }
     }
     $dao = new PessoaDAO();
     $resultado = array();
     if (isset($_POST['login'][0])) {
         $resultado = $dao->getPessoasLogin("%" . $_POST['login'] . "%");
     } else {
         if (isset($_POST['nome'][0])) {
             $resultado = $dao->getPessoasNome($_POST['nome'] . "%");
         }
     }
     $pessoas = array();
     foreach ($resultado as $r) {
         $classificacao = new Classificacao();
         $classificacao->set_id($r['id']);
         $classificacao->set_nome($r['nome']);
         $classificacao->set_login($r['login']);
         $classificacao->set_idplano($r['idplano']);
         $classificacao->set_plano($r['plano']);
         $pessoas[] = $classificacao;
     }
     $this->setJsInterno(array('assets/js/custom/novacomissao.js'));
     $this->setDados('titulo', 'Nova Comissão');
     $this->setDados('pessoas', $pessoas);
     $this->setPagina('views/nova-comissao.php');
     $this->getCompleto();
 }
Exemplo n.º 2
0
 public function getComissionados($inicio, $fim, $tipo, $page = array('limit' => 1, 'offset' => 1))
 {
     switch ($tipo) {
         case "indicacao":
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(comissao.valor) as vendas,\n                    plano.nome as plano,\n                    comissao.data_cadastro as data_cadastro,\n                    '-' as numero_nota\n                FROM bo_comissao_i as comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa_recebe\n                INNER JOIN bo_comissao_indicacao as detalhes ON comissao.idcomissao_indicacao = detalhes.idcomissao_indicacao\n                INNER JOIN bo_plano as plano ON plano.idplano = (\n                 select\n                    pl.idplano\n                 from bo_contrato as c\n                 inner join bo_plano as pl on (pl.idplano = c.idplano)\n                 where c.idpessoa = pessoa.idpessoa\n                 order by c.idcontrato desc\n                 limit 1\n                )\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}'\n                GROUP BY comissao.idpessoa_recebe\n                LIMIT " . $page['limit'] . "\n                OFFSET " . $page['offset'];
             break;
         case "vendas":
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(comissao.valor) as vendas,\n                    plano.nome as plano,\n                    comissao.data_cadastro as data_cadastro,\n                    comissao.numero_nota\n                FROM bo_comissao_v as comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa\n                INNER JOIN bo_comissao_venda as detalhes ON comissao.idcomissao_venda = detalhes.idcomissao_venda\n                INNER JOIN bo_plano as plano ON plano.idplano = (\n                 select\n                    pl.idplano\n                 from bo_contrato as c\n                 inner join bo_plano as pl on (pl.idplano = c.idplano)\n                 where c.idpessoa = pessoa.idpessoa\n                 order by c.idcontrato desc\n                 limit 1\n                )\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}'\n                GROUP BY comissao.idpessoa\n                LIMIT " . $page['limit'] . "\n                OFFSET " . $page['offset'];
             break;
         default:
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(comissao.valor) as vendas,\n                    plano.nome as plano,\n                    comissao.numero_nota\n                FROM(\n                    SELECT\n                        cv.data_cadastro as data_cadastro,\n                        cv.idpessoa as idpessoa,\n                        cv.numero_nota as numero_nota,\n                        valor\n                    FROM bo_comissao_v as cv\n                    INNER JOIN bo_comissao_venda as detalhes ON cv.idcomissao_venda = detalhes.idcomissao_venda\n                    UNION ALL\n                    SELECT\n                        ci.data_cadastro as data_data_cadastro,\n                        idpessoa_recebe as idpessoa,\n                        '-' as numero_nota,\n                        valor\n                    FROM bo_comissao_i as ci\n                    INNER JOIN bo_comissao_indicacao as detalhes ON ci.idcomissao_indicacao = detalhes.idcomissao_indicacao\n                ) AS comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa\n                INNER JOIN bo_plano as plano ON plano.idplano = (\n                 select\n                    pl.idplano\n                 from bo_contrato as c\n                 inner join bo_plano as pl on (pl.idplano = c.idplano)\n                 where c.idpessoa = pessoa.idpessoa\n                 order by c.idcontrato desc\n                 limit 1\n                )\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}'\n                GROUP BY comissao.idpessoa\n                LIMIT " . $page['limit'] . "\n                OFFSET " . $page['offset'];
             break;
     }
     $dadosWhere = array();
     $resultado = Transacao::especifico($sql, $dadosWhere);
     $ranking = array();
     foreach ($resultado as $r) {
         $classificacao = new Classificacao();
         $classificacao->set_nome($r['nome']);
         $classificacao->set_login($r['login']);
         $classificacao->set_vendas($r['vendas']);
         $classificacao->set_plano($r['plano']);
         $classificacao->set_nota($r['numero_nota']);
         $ranking[] = $classificacao;
     }
     return $ranking;
 }
Exemplo n.º 3
0
 /**
  * Remove o registro passando o id
  */
 function remove()
 {
     if (parent::remove($_GET['id'])) {
         echo "<h1>Registro removido da tabela {$this->table}</h1>";
     } else {
         echo "<h1>Erro ao remover registro</h1>";
     }
     echo "<a href=\"?controller={$this->folderName}\">Retornar para listagem</a>";
 }
Exemplo n.º 4
0
 public function getRankingVendas($inicio, $fim, $tipo, $limit = 10)
 {
     switch ($tipo) {
         case "indicacao":
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(valor) as vendas\n                FROM bo_comissao_i as comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa_recebe\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}' AND indicacao_direta = 1\n                GROUP BY comissao.idpessoa_recebe\n                ORDER BY vendas DESC\n                LIMIT " . $limit;
             break;
         case "vendas":
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(valor) as vendas\n                FROM bo_comissao_v as comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}' AND venda_direta = 1\n                GROUP BY comissao.idpessoa\n                ORDER BY vendas DESC\n                LIMIT " . $limit;
             break;
         default:
             $sql = "SELECT\n                    pessoa.idpessoa as id,\n                    pessoa.nome as nome,\n                    pessoa.login as login,\n                    SUM(valor) as vendas\n                FROM(\n                    SELECT cv.data_cadastro as data_cadastro, cv.idpessoa as idpessoa, valor, venda_direta as direta FROM bo_comissao_v as cv\n                    UNION ALL\n                    SELECT ci.data_cadastro as data_cadastro, idpessoa_recebe as idpessoa, valor, 1 as direta FROM bo_comissao_i as ci\n                ) AS comissao\n                INNER JOIN bo_pessoa as pessoa ON pessoa.idpessoa = comissao.idpessoa\n                WHERE comissao.data_cadastro BETWEEN '{$inicio}' AND '{$fim}'\n                AND direta = 1\n                GROUP BY comissao.idpessoa\n                ORDER BY vendas DESC\n                LIMIT " . $limit;
             break;
     }
     $dadosWhere = array();
     $resultado = Transacao::especifico($sql, $dadosWhere);
     $ranking = array();
     foreach ($resultado as $r) {
         $classificacao = new Classificacao();
         $classificacao->set_nome($r['nome']);
         $classificacao->set_login($r['login']);
         $classificacao->set_vendas($r['vendas']);
         $ranking[] = $classificacao;
     }
     return $ranking;
 }