The code below should do the following things:
1 - Search for companies in the database.
2 - Look at the table in the month which companies will be worked on.
3 - In this month table is drawn that was done with the companies, all and format (int).
4 - Alas with the result of this second search I calculate the percentage of obligations made in each company.
5 - And also with the result I write in the table other information.
<?php
$login_test = new loginController();
$login_test->verif_login();
$_POST = Sanitize::filter($_POST);
$filtro_regime = $_POST['regime'];
$filtro_regime_nome = Components::nome_regime_trib($filtro_regime);
$filtro_empresa = $_POST['empresa'];
$filtro_mes_ano = $_POST['mes_ano'];
$status = $_POST['status'];
$user = $_SESSION['userCod'];
$nivel = $_SESSION['userLevel'];
$dataD = explode("/", "$filtro_mes_ano");
$m = $dataD[0];
$a = $dataD[1];
//$conecta = mysqli_connect("192.168.0.10", "easy_server", "easy2017", "easy");
$tributacao = $filtro_regime_nome;
?>
<script>
$(function () {
$('.listaEmpresasTabela').DataTable({
"paging": true,
"lengthChange": true,
"searching": true,
"ordering": true,
"info": true,
"autoWidth": false,
"pagingType": "full_numbers"
});
var pg = "<?php echo $_POST['pg'] ?>";
var find_pg = '';
$('.paginate_button a').each(function (i, obj) {
find_pg = $(this).text();
if (pg === find_pg) {
$(this).trigger('click');
}
});
});
</script>
<div class="row" style="margin-top:10px;">
<div class="col-md-12">
<table class="table listaEmpresasTabela display table-hover" cellspacing="0" width="100%">
<thead>
<?php
if ($tributacao == 'SIMPLES NACIONAL') {
?>
<tr>
<th>ID</th>
<th>Empresa</th>
<th>CNPJ</th>
<th>Inscrição estadual</th>
<th>Apuração</th>
<th>Data Envio</th>
<th>Data Confirmação</th>
<th>Sintegra</th>
<th>DIFAL / DeSTDA</th>
<th>Retenções / CPOM</th>
<th>PGDAS</th>
<th>Obrigações</th>
</tr>
<?php
} else {
?>
<tr>
<th>ID</th>
<th>Empresa</th>
<th>CNPJ</th>
<th>Inscrição estadual</th>
<th>Apuração</th>
<th>Data Envio</th>
<th>Data Confirmação</th>
<th>Sped fiscal</th>
<th>Sped Contrib</th>
<th>Retenções</th>
<th>DCTF</th>
<th>Obrigações</th>
</tr>
<?php
}
?>
</thead>
<tbody>
<?php
if ($nivel <= 3) {
if ($filtro_regime != "0") {
$sql = "SELECT id,cod,nome,cnpj,insc_estadual,tributacao FROM empresas_base WHERE tributacao = '$filtro_regime_nome' AND responsavel = '$user' GROUP BY id ORDER BY id";
} else {
$sql = "SELECT id,cod,nome,cnpj,insc_estadual,tributacao FROM empresas_base WHERE nome = '$filtro_empresa' AND responsavel = '$user' GROUP BY id ORDER BY id";
}
} else {
if ($filtro_regime != "0") {
$sql = "SELECT id,cod,nome,cnpj,insc_estadual,tributacao FROM empresas_base WHERE tributacao = '$filtro_regime_nome' GROUP BY id ORDER BY id";
} else {
$sql = "SELECT id,cod,nome,cnpj,insc_estadual,tributacao FROM empresas_base WHERE nome = '$filtro_empresa' GROUP BY id ORDER BY id";
}
}
$rs = Components::get_rs_consulta_query($sql);
while ($row = mysqli_fetch_array($rs)) {
$empresaID = $row['id'];
$empresaCod = $row['cod'];
$empresa = utf8_encode($row['nome']);
$cnpj = $row['cnpj'];
$insc_est = $row['insc_estadual'];
$regime_trib = $row['tributacao'];
// verifica pelo POST status se é pra exibir concluidos e incompletos
if ($status == '0' OR $status == '2') {
$sql2 = "SELECT * FROM controle_fiscal WHERE empresa = '$empresaCod' AND mes_correspondente = '$m' AND ano_correspondente = '$a' GROUP BY id ORDER BY id ";
} else {
if ($tributacao == 'SIMPLES NACIONAL') {
$sql2 = "SELECT * FROM controle_fiscal WHERE empresa = '$empresaCod' AND mes_correspondente = '$m' AND ano_correspondente = '$a' AND data_envio != '' AND data_confirmacao != '' AND sintegra != '0' AND difal_destda != '0' AND retencoes_cpom != '0' GROUP BY id ORDER BY id";
} elseif ($tributacao == 'PRESUMIDO' OR $tributacao == 'REAL') {
$sql2 = "SELECT * FROM controle_fiscal WHERE empresa = '$empresaCod' AND mes_correspondente = '$m' AND ano_correspondente = '$a' AND data_envio != '' AND data_confirmacao != '' AND sped_fiscal != '0' AND sped_contrib != '0' AND dctf != '0' AND retencoes != '0' GROUP BY id ORDER BY id";
}
}
$rs2 = Components::get_rs_consulta_query($sql2);
while ($row2 = mysqli_fetch_array($rs2)) {
$porc_form = 0;
//Todos
$apuracao = $row2['apuracao'];
$recibo_simples = $row2['recibo_simples'];
$controle_cod = $row2['cod'];
$data_envio = $row2['data_envio'];
$data_confirmacao = $row2['data_confirmacao'];
//Simples
$sintegra = $row2['sintegra'];
$difal_destda = $row2['difal_destda'];
$retencoes_cpom = $row2['retencoes_cpom'];
//Presumido
$sped_fiscal = $row2['sped_fiscal'];
$sped_contrib = $row2['sped_contrib'];
$dctf = $row2['dctf'];
$retencoes = $row2['retencoes'];
$pgdas = $row2['pgdas'];
if ($insc_est == 'CANCELADA' OR $insc_est == "INATIVA" OR $insc_est == 'ISENTO') {
if ($data_envio != 0) {
$data_envio_inativa = '';
} else {
$data_envio_inativa = 'Nada a enviar';
}
if ($data_confirmacao != 0) {
$data_confirmacao_inativa = '';
} else {
$data_confirmacao_inativa = 'Nada a confirmar';
}
if ($apuracao != 0) {
$apuracao_inativa = '';
} else {
$apuracao_inativa = 'Nada a apurar';
}
if ($tributacao == 'PRESUMIDO' OR $tributacao == "REAL") {
$retencoes_inativa = "Não necessário";
$sped_fiscal_inativa = 'Não necessário';
$sped_contrib_inativa = 'Não necessário';
$dctf_inativa = '';
$sintegra_inativa = '';
$difal_inativa = '';
$retencoes_cpom_inativa = '';
$sped_fiscal = '';
$sped_contrib = '';
$retencoes = '';
} elseif ($tributacao == 'SIMPLES NACIONAL') {
//$pgdas_inativa = 'Não necessário';
$retencoes_inativa = "";
$sped_fiscal_inativa = '';
$sped_contrib_inativa = '';
$sintegra_inativa = 'Não necessário';
$difal_inativa = 'Não necessário';
$retencoes_cpom_inativa = 'Não necessário';
$retencoes_cpom = '';
$difal_destda = '';
$sintegra = '';
}
} else {
$data_envio_inativa = '';
$data_confirmacao_inativa = '';
$apuracao_inativa = '';
$sintegra_inativa = '';
$pgdas_inativa = '';
$difal_inativa = '';
$retencoes_cpom_inativa = '';
$retencoes_inativa = "";
$dctf_inativa = '';
$sped_fiscal_inativa = '';
$sped_contrib_inativa = '';
}
if ($data_confirmacao == '' AND $data_envio != '') {
$data_envio_formated = DateTime::createFromFormat('d/m/Y', $data_envio);
$datetime1 = $data_envio_formated->format('Y-m-d');
$datetime2 = date('Y-m-d');
$time_inicial = strtotime($datetime1);
$time_final = strtotime($datetime2);
$diferenca = $time_final - $time_inicial; // 19522800 segundos
$dias = (int) floor($diferenca / (60 * 60 * 24));
if ($dias == 1) {
$data_confirmacao = 'Enviado ontem.';
$data_confirmacao_td_class = 'default';
} elseif ($dias < 5) {
$data_confirmacao = "A " . $dias . " dias sem confirmação";
$data_confirmacao_td_class = "warning";
} else {
$data_confirmacao = "ATENÇÃO! A " . $dias . " dias sem confirmação";
$data_confirmacao_td_class = "danger";
}
} else {
$data_confirmacao_td_class = "";
$data_confirmacao = $row2['data_confirmacao'];
}
if ($apuracao != 0) {
$apuracao_val = 1;
} else {
$apuracao_val = 0;
}
if ($apuracao != 0) {
$data_envio_val = 1;
$data_confirmacao_val = 1;
} else {
if ($data_envio != '' || $data_envio != 0) {
$data_envio_val = 1;
} else {
$data_envio_val = 0;
}
if ($data_confirmacao != '' || $data_confirmacao != 0) {
$data_confirmacao_val = 1;
} else {
$data_confirmacao_val = 0;
}
}
if ($insc_est == 'ISENTO' OR $insc_est == 'CANCELADA') {
$sintegra_val = 1;
$recibo_simples = 1;
if ($pgdas != 0) {
$pgdas_val = 1;
} else {
$pgdas_val = 0;
}
$difal_destda_val = 1;
$retencoes_cpom_val = 1;
$apuracao_val = 1;
$sped_fiscal_val = 1;
$sped_contrib_val = 1;
$retencoes_val = 1;
$val_obrig = $apuracao_val + $data_envio_val + $data_confirmacao_val + $sped_fiscal_val + $sped_contrib_val + $dctf_val + $retencoes_val;
$porc_form = (($val_obrig * 100) / 7);
} else {
if ($tributacao == 'SIMPLES NACIONAL') {
if ($sintegra != 0) {
$sintegra_val = 1;
} else {
$sintegra_val = 0;
}
if ($recibo_simples != 0) {
$recibo_simples_val = 1;
$pgdas_val = 1;
} else {
$recibo_simples_val = 0;
if ($pgdas != 0) {
$pgdas_val = 1;
} else {
$pgdas_val = 0;
}
}
if ($difal_destda != 0) {
$difal_destda_val = 1;
} else {
$difal_destda_val = 0;
}
if ($retencoes_cpom != 0) {
$retencoes_cpom_val = 1;
} else {
$retencoes_cpom_val = 0;
}
$val_obrig = $apuracao_val + $data_envio_val + $data_confirmacao_val + $sintegra_val + $recibo_simples_val + $difal_destda_val + $retencoes_cpom_val + $pgdas_val;
$porc_form = (($val_obrig * 100) / 8);
} elseif ($tributacao == 'PRESUMIDO' || $tributacao == "REAL") {
if ($sped_fiscal != 0) {
$sped_fiscal_val = 1;
} else {
$sped_fiscal_val = 0;
}
if ($sped_contrib != 0) {
$sped_contrib_val = 1;
} else {
$sped_contrib_val = 0;
}
if ($dctf != 0) {
$dctf_val = 1;
} else {
$dctf_val = 0;
}
if ($retencoes != 0) {
$retencoes_val = 1;
} else {
$retencoes_val = 0;
}
$val_obrig = $apuracao_val + $data_envio_val + $data_confirmacao_val + $sped_fiscal_val + $sped_contrib_val + $dctf_val + $retencoes_val;
$porc_form = (($val_obrig * 100) / 7);
$sped_fiscal_sum += $sped_fiscal_val;
$sped_contrib_sum += $sped_contrib_val;
$retencoes_sum += $retencoes_val;
$dctf_sum += $dctf_val;
}
}
if ($apuracao == '1') {
$data_envio = ' - Nada a enviar';
$data_confirmacao = ' - Nada a confirmar';
} else {
$data_envio = $data_envio;
$data_confirmacao = $data_confirmacao;
}
$tr_styles = fiscalModel::get_tr_obrigacoes_stats($status, $tributacao, $apuracao, $recibo_simples, $data_envio, $data_confirmacao, $sintegra, $difal_destda, $retencoes_cpom, $dctf, $retencoes, $pgdas, $sped_contrib, $sped_fiscal);
?>
<tr style='<?php echo $tr_styles['display_none'] ?>'class="seleciona_empresa <?php echo $tr_styles['display_tr'] ?>" data-empresa="<?php echo $empresaCod ?>" data-empresa_nome="<?php echo $empresa ?>" data-controle='<?php echo $controle_cod ?>'>
<td width="2%">
<?php echo $empresaID ?>
</td>
<td width="16%">
<?php echo $empresa ?>
</td>
<td width="8%">
<?php echo $cnpj ?>
</td>
<td width="8%">
<?php echo $insc_est ?>
</td>
<td width="8%">
<?php echo $apuracao_inativa . Components::nome_apuracoes($apuracao) ?>
</td>
<td width="8%">
<?php echo $data_envio . $data_envio_inativa ?>
</td>
<td width="8%" class="<?php echo $data_confirmacao_td_class ?>">
<?php echo $data_confirmacao . $data_confirmacao_inativa ?>
</td>
<td width="8%">
<?php echo $sintegra_inativa . $sped_fiscal_inativa . Components::sintegra_nome($sintegra) . Components::sped_fiscal_nome($sped_fiscal); ?>
</td>
<td width="8%">
<?php echo $difal_inativa . $sped_contrib_inativa . Components::difal_destda_nome($difal_destda) . Components::sped_contrib_nome($sped_contrib); ?>
</td>
<td width="8%" >
<?php echo $retencoes_cpom_inativa . $retencoes_inativa . Components::retencoes_cpom_nome($retencoes_cpom) . Components::retencoes_nome($retencoes) ?>
</td>
<?php
if ($tributacao == 'SIMPLES NACIONAL') {
?>
<td width="8%">
<?php echo $pgdas_inativa . Components::pgdas_nome($pgdas) ?>
</td>
<?php
} elseif ($tributacao == 'PRESUMIDO' OR $tributacao = "REAL") {
?>
<td width="8%">
<?php echo $dctf_inativa . Components::get_dctf_nome($dctf) ?>
</td>
<?php
}
?>
<td width="6%">
<?php echo number_format($porc_form, 2, '.', '') . "%"; ?>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>
</div>
<style>
.listaEmpresasTabela tr{
border: 2px solid #000;
}
.listaEmpresasTabela tr td{
border:1px solid #ccc;
margin:1px;
z-index: 0;
}
.listaEmpresasTabela tr td:hover{
border:1px solid #999;
z-index: 1;
margin:1px;
}
.dataTables_wrapper .row:first-child {
border:1px dashed #ccc;
margin: 0px;
padding-top: 5px;
}
.table thead tr th{
border:1px solid #000;
}
</style>
This table is very conditional and like what should be displayed on it.