<?php 

require_once("../conexao.php");
$pagina = 'vendas';

$postjson = json_decode(file_get_contents('php://input'), true);

$pagamento = @$postjson['pagamento'];
$lancamento = @$postjson['lancamento'];
$data = @$postjson['dataVenda'];
$desconto = @$postjson['desconto'];
$acrescimo = @$postjson['acrescimo'];
$subtotal = @$postjson['subtotal'];
$parcelas = @$postjson['parcelas'];
$cliente = @$postjson['cliente'];
$recebido = @$postjson['totalReceb'];
$id_usuario = @$postjson['user'];

$desconto = str_replace(',', '.', $desconto);
$acrescimo = str_replace(',', '.', $acrescimo);
$recebido = str_replace(',', '.', $recebido);


if($data == date('Y-m-d') and $parcelas == '1'){
	$status = 'Concluída';
}else{
	$status = 'Pendente';
	if($cliente == ''){
	$result = json_encode(array('mensagem'=>'Selecione um Cliente!', 'sucesso'=>false));
echo $result;
	exit();
	}
}



$query_con = $pdo->query("SELECT * FROM clientes WHERE id = '$cliente'");
$res = $query_con->fetchAll(PDO::FETCH_ASSOC);
if(@count($res) > 0){
	$nome_cli = $res[0]['nome'];
}else{
	$nome_cli = 'Diversos';
}


$total_venda = 0;
$total_custo = 0;
$query_con = $pdo->query("SELECT * FROM itens_venda WHERE id_venda = 0 and usuario = '$id_usuario' order by id desc");
$res = $query_con->fetchAll(PDO::FETCH_ASSOC);
$total_reg = @count($res);
if($total_reg > 0){ 
	for($i=0; $i < $total_reg; $i++){
	foreach ($res[$i] as $key => $value){	}

		$valor_total_item = $res[$i]['total'];
		$valor_total_custo_item = $res[$i]['valor_custo'];
		$total_venda += $valor_total_item;
		$total_custo += $valor_total_custo_item;
	}
		
}else{
	$result = json_encode(array('mensagem'=>'Não é possível fechar a venda sem itens!', 'sucesso'=>false));
echo $result;
	
	exit();
}


//RECUPERAR O CAIXA QUE ESTÁ ABERTO (CASO TENHA ALGUM)
$query2 = $pdo->query("SELECT * FROM caixa WHERE status = 'Aberto'");
$res2 = $query2->fetchAll(PDO::FETCH_ASSOC);
if(@count($res2) > 0){
	$caixa_aberto = $res2[0]['id'];
}else{
	$caixa_aberto = 0;
}



$query = $pdo->prepare("INSERT INTO vendas set valor = '$total_venda', usuario = '$id_usuario', pagamento = :pagamento, lancamento = :lancamento, data_lanc = CurDate(), data_pgto = :data, desconto = :desconto, acrescimo = :acrescimo, subtotal = :subtotal, parcelas = :parcelas, status = '$status', cliente = :cliente, valor_custo = '$total_custo', recebido = :recebido");



$query->bindValue(":pagamento", "$pagamento");
$query->bindValue(":lancamento", "$lancamento");
$query->bindValue(":data", "$data");
$query->bindValue(":desconto", "$desconto");
$query->bindValue(":acrescimo", "$acrescimo");
$query->bindValue(":subtotal", "$subtotal");
$query->bindValue(":parcelas", "$parcelas");
$query->bindValue(":cliente", "$cliente");
$query->bindValue(":recebido", "$recebido");
$query->execute();
$id_ult_registro = $pdo->lastInsertId();

$descricao_conta = 'Venda - '.$nome_cli;
if($status == 'Concluída'){
	
	$pdo->query("INSERT INTO movimentacoes set tipo = 'Entrada', movimento = 'Venda', descricao = '$descricao_conta', valor = '$subtotal', usuario = '$id_usuario', data = curDate(), lancamento = '$lancamento', plano_conta = 'Venda', documento = '$pagamento', caixa_periodo = '$caixa_aberto', id_mov = '$id_ult_registro'");
}else{
	if($parcelas > 1){
		$query = $pdo->query("UPDATE contas_receber set cliente = '$cliente', entrada = '$lancamento', documento = '$pagamento', plano_conta = 'Venda', frequencia = 'Uma Vez', usuario_lanc = '$id_usuario', status = 'Pendente', data_recor = curDate(), id_venda = '$id_ult_registro' WHERE id_venda = '-1' and usuario_lanc = '$id_usuario'");
	}else{
		$query = $pdo->query("INSERT INTO contas_receber set descricao = '$descricao_conta', cliente = '$cliente', entrada = '$lancamento', documento = '$pagamento', plano_conta = 'Venda', data_emissao = curDate(), vencimento = '$data', frequencia = 'Uma Vez', valor = '$subtotal', usuario_lanc = '$id_usuario', status = 'Pendente', data_recor = curDate(), id_venda = '$id_ult_registro', arquivo = 'sem-foto.jpg'");
	}
}



$query_con = $pdo->query("SELECT * FROM itens_venda WHERE id_venda = 0 and usuario = '$id_usuario' order by id desc");
$res = $query_con->fetchAll(PDO::FETCH_ASSOC);
$total_reg = @count($res);
if($total_reg > 0){ 
	for($i=0; $i < $total_reg; $i++){
	foreach ($res[$i] as $key => $value){	}

		$pdo->query("UPDATE itens_venda set id_venda = '$id_ult_registro' where id_venda = 0 and usuario = '$id_usuario'");
	}
		
}



$result = json_encode(array('mensagem'=>'Salvo com sucesso!', 'sucesso'=>true));
echo $result;

?>