<?php

//conexao com o softcom
require 'conexaoSQL.php';
require_once 'RemotoInterno.php';

class Softcom{
	
public function BuscarFabricante()

{

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT GRP_DESCRI FROM Fabricante;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
	
}

public function BuscarFornecedor()
{

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT [Código do Fornecedor], Fornecedor FROM Fornecedores;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
	
}


//listar usuarios
public function BuscarUsuarios($loja){


$RemotoInterno = new RemotoInterno();

$loja = $RemotoInterno->TransformarLoja ($loja);

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT * FROM [Cadastro de Vendedores] WHERE Desativado = 0 AND Nome IS NOT NULL AND LojaOrigem = '$loja' ORDER BY Nome;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}

	
}


//desfazer o fechamento do caixa ou seja excluir o fechamento para que seja feito outro
public function EcluirCaixa($data,$loja,$usuario)

{

try{
		//comando update pdo
		$connection    = Conexao::getConnection();
		$sql = "
		UPDATE Caixa_FuncoesRegistros
		SET Fechado = 0 , DataFechamento = NULL, UsuarioFechamento = NULL
		WHERE
		Datas = '$data'
		AND LojaOrigem = '$loja'
		AND Operador = '$usuario'
		
		;";
		
		//execulta
		$connection->query($sql);
		
		$this->ExluirSangria($data,$usuario);
		
}catch(Exception $e){

  echo $e->getMessage();
  exit;
}

	
}

//excluir a sangria do fechamento do caixa porque ao desfazer o fechamento precisa excluir tambem essa sangria
public function ExluirSangria($data,$usuario)

{

try{
		//comando update pdo
		$connection    = Conexao::getConnection();
		$sql = "DELETE FROM [Contas a pagar2]
				WHERE Histórico LIKE '%FECHAMENTO%' AND Usuario = $usuario AND [Data de Pagamento] = '$data';";
		//execulta
		$connection->query($sql);

	}catch(Exception $e){

	  echo $e->getMessage();
	  exit;
	}

}

public function BuscarPrecoProdutos()
{

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT 

 	MERCADORIAS.[Cód Fabricante],
	PRECO_LOJA.[Código da Mercadoria] AS CODMEC,
	MERCADORIAS.Mercadoria,
	PRECO_LOJA.PrecoGrade,
	PRECO_LOJA.loja,
	PRECO_LOJA.[Código da MercadoriaLoja]
	
  	FROM [Cadastro de mercadoriasLojas] AS PRECO_LOJA
  	LEFT JOIN [Cadastro de Mercadorias] AS MERCADORIAS
  	ON MERCADORIAS.[Código da Mercadoria] = PRECO_LOJA.[Código da Mercadoria]
	ORDER BY PRECO_LOJA.[Código da Mercadoria]
	;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
}

//busca os produtos negativos
public function BuscarNegativos($empresa)
{

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT
	LOJAS.[Código da Mercadoria],
	MERCADORIAS.[Mercadoria],
	LOJAS.Estoque,
	MERCADORIAS.[Cód Fabricante],
	MERCADORIAS.[Fornecedor]
FROM [Cadastro de mercadoriasLojas] AS LOJAS
JOIN [Cadastro de Mercadorias] AS MERCADORIAS
ON LOJAS.[Código da Mercadoria] = MERCADORIAS.[Código da Mercadoria]

WHERE

LOJAS.Estoque < 0
AND LOJAS.Loja = '$empresa'
AND MERCADORIAS.Desativado = 0
;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
	
}

//busca os produtos negativos
public function BuscarNegativosPeloEan($empresa,$ean)
{

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT
	
MERCADORIAS.[Cód Fabricante] as cod, LOJAS.Estoque

FROM [Cadastro de mercadoriasLojas] AS LOJAS
JOIN [Cadastro de Mercadorias] AS MERCADORIAS
ON LOJAS.[Código da Mercadoria] = MERCADORIAS.[Código da Mercadoria]

WHERE
LOJAS.Estoque < 0 
AND LOJAS.Loja = '$empresa'
AND MERCADORIAS.Desativado = 0
AND MERCADORIAS.[Cód Fabricante] = '$ean';"
);

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
	
}

//buscar vendas para painel de vendas por periodo
public function BuscarVendasPeriodo($dataInicio,$dataFinal){

try{
    $Conexao = Conexao::getConnection();
    $query = $Conexao->query("SELECT MIN(LojaOrigem) AS LOJA,
SUM(TotalCompra_Item) AS COMPRA,
SUM(Total_Item) AS VENDA,
SUM(Total_Item) - SUM(TotalCompra_Item) AS LUCRO

FROM

memoria_VendasTodas
WHERE [Data da Venda] BETWEEN  '$dataInicio' AND '$dataFinal'
AND Estornado = 0
AND Cancelado = 0

GROUP BY LojaOrigem

ORDER BY SUM(Total_Item) DESC;");

	return $retorno = $query->fetchAll();

}catch(Exception $e){

  echo $e->getMessage();
  exit;
}
	
}





public function BuscarGrupo()
{   

    try {
        $Conexao = Conexao::getConnection();
       
        $query = $Conexao->query("SELECT GRP_DESCRI FROM grp");

        $sqlserver = $query->fetchAll();

    } catch (Exception $e) {

        echo $e->getMessage();
        exit;
    }

    return $sqlserver;
}








}






