<?php if (Session::get("tipo_usuario") != "6"){ show_403();} ?>
<?php import_file(DIR_TEMPLATES."header.php", ["title" => "Relatório de Compras", "active_page" => "financeiro"]); ?>
<?php import_file(DIR_MODELS."Model.class.php"); ?>

<h4 class="mb-3">
	<i class="fa-regular fa-file-invoice-dollar"></i> Relatório de Compras
</h4>

<div class="content-box">
	<div class="form-row mb-3">
		<div class="col-xl-8 col-lg-8 col-md-6 col-sm-12"></div>
		<div class="col-xl-4 col-lg-4 col-md-6 col-sm-12">
			<form action="" method="get">
				<div class="input-group my-1">
					<input type="text" name="pesquisa" class="form-control" autocomplete="off" value="<?php echo filter_input(INPUT_GET, "pesquisa", FILTER_SANITIZE_STRING); ?>">
					<div class="input-group-append">
						<button class="btn btn-primary">
							<i class="fa-regular fa-search"></i>
						</button>
					</div>
				</div>
			</form>
		</div>
	</div>

	<div class="table-responsive">
		<table class="table table-sm table-hover table-striped">
			<thead class="thead-inverse">
				<tr>
					<th class="align-middle" style="width: 30%;">Comprador</th>
					<th class="align-middle" style="width: 25%;">Produto</th>
					<th class="align-middle text-center" style="width: 10%;">Valor</th>
					<th class="align-middle text-center" style="width: 15%;">Forma de Pagamento</th>
					<th class="align-middle text-center" style="width: 10%;">Data da Compra</th>
					<th class="align-middle text-center" style="width: 10%;">Situação</th>
				</tr>
			</thead>
			<tbody>
				<?php 

					$model = new Model();

					$maximo = 15;

					if (isset($_GET["pag"])) {
						$pagina = filter_input(INPUT_GET, "pag", FILTER_SANITIZE_NUMBER_INT);
					}
					else{
						$pagina = 1;
					}

					$pesquisa = filter_input(INPUT_GET, "pesquisa", FILTER_SANITIZE_STRING);

					$inicio = (($maximo*$pagina)-$maximo);

					$busca = $model->query("
						SELECT * FROM compra 
						INNER JOIN produto ON (compra.id_produto = produto.id_produto) 
						INNER JOIN usuario ON (compra.id_usuario = usuario.id_usuario) 
						WHERE 
							produto.id_usuario = :id AND 
							(
								compra.id_produto LIKE :pesquisa OR 
								nome_produto LIKE :pesquisa OR 
								valor_produto LIKE :pesquisa OR 
								datahora_compra LIKE :pesquisa OR 
								nome_usuario LIKE :pesquisa OR 
								forma_pagamento LIKE :pesquisa
							) 
						ORDER BY id_compra DESC 
						LIMIT :maximo OFFSET :inicio
					", [
						":id" => Session::get("id_usuario"), 
						":pesquisa" => "%".$pesquisa."%", 
						":maximo" => $maximo, 
						":inicio" => $inicio
					]);
					

					$n = ($pagina*$maximo)-$maximo + 1;

					foreach ($busca->fetchAll() as $dados):

				?>

					<tr>
						<td class="align-middle">
							<?php 

								echo "
									{$dados->nome_usuario}<br>
									<small>{$dados->cpf_usuario}</small><br>
									<small>{$dados->email_usuario} | {$dados->telefone_usuario}</small>
								"; 

							?>	
						</td>
						<td class="align-middle">
							<a href="<?php echo show_link("/produto?produto=".urlencode(encrypt_encode($dados->id_produto))); ?>" target="_blank">
								<?php echo $dados->nome_produto; ?>
							</a>
						</td>
						<td class="align-middle text-center"><?php echo money_mask_BR($dados->valor_produto - ($dados->valor_produto * pct($dados->porcentagem_empresa_compra))); ?></td>
						<td class="align-middle text-center"><?php echo $dados->forma_pagamento; ?></td>
						<td class="align-middle text-center"><?php echo convert_date($dados->datahora_compra); ?></td>
						<td class="align-middle text-center">
							<?php if ($dados->status_compra == "S"): ?>
								<span class="badge badge-success">
									Confirmado
								</span>
							<?php elseif ($dados->status_compra == "N"): ?>
								<span class="badge badge-danger">
									Cancelado
								</span>
							<?php elseif ($dados->status_compra == "E"): ?>
								<span class="badge badge-secondary">
									Aguardando Avaliação
								</span>
							<?php endif; ?>
						</td>
					</tr>	
				<?php endforeach; ?>
			</tbody>
		</table>
	</div>

	<ul class="pagination justify-content-center" style="margin-bottom: -15px;">
		<?php 


			$busca = $model->query("
				SELECT * FROM compra 
				INNER JOIN produto ON (compra.id_produto = produto.id_produto) 
				INNER JOIN usuario ON (compra.id_usuario = usuario.id_usuario) 
				WHERE 
					produto.id_usuario = :id AND 
					(
						compra.id_produto LIKE :pesquisa OR 
						nome_produto LIKE :pesquisa OR 
						valor_produto LIKE :pesquisa OR 
						datahora_compra LIKE :pesquisa OR 
						nome_usuario LIKE :pesquisa OR 
						forma_pagamento LIKE :pesquisa
					) 
				ORDER BY id_compra DESC
			", [
				":id" => Session::get("id_usuario"), 
				":pesquisa" => "%".$pesquisa."%"
			]);
			
			$total  = $busca->rowCount();

			$total_paginas = ceil($total/$maximo);
						   
			if ($pagina <= $total_paginas and $pagina > 1) {
 				echo '<li class="page-item"><a href="?'.(!empty($pesquisa) ? "pesquisa=".$pesquisa."&" : "").'pag='.($pagina-1).'" class="page-link"><span aria-hidden="true">&laquo;</span></a> </li>';
			}

			echo ' <li class="page-item active"><p class="page-link">'.$pagina.'</p></li> ';

			if ($pagina < $total_paginas) {	
				echo '<li class="page-item"><a href="?'.(!empty($pesquisa) ? "pesquisa=".$pesquisa."&" : "").'pag='.($pagina+1).'" class="page-link"><span aria-hidden="true">&raquo;</span></a></li> ';
			}
			
		?>
	</ul>
</div>

<?php import_file(DIR_TEMPLATES."footer.php"); ?>