<?php
require_once('../../../includes/load.php');
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
	$programa = remove_junk($db->escape($_POST['programa']));
    $ult_venta = remove_junk($db->escape($_POST['ult_venta']));
    $reuso = remove_junk($db->escape($_POST['reuso']));
    $ini_limpieza = remove_junk($db->escape($_POST['ini_limpieza']));
    $responsable = remove_junk($db->escape($_POST['responsable']));

    $registro=date("Y-m-d");
    $fechacierre = strtotime($registro);
    $aniocierremomentaneo = date("Y", $fechacierre);
    $mescierremomentaneo = date("m", $fechacierre);
    $semanacierremomentaneo = date("W", $fechacierre);

    $fechaEntera = strtotime($ini_limpieza);
    $aniolimpieza = date("Y", $fechaEntera);
    $meslimpieza = date("m", $fechaEntera);
    $semanalimpieza = date("W", $fechaEntera);

    $MetaEntregaGranja = 19;
    $MetaTiempoLimpiezaInicial = 6;
    $Contadoroperacion = 1;
    $MttrabajadosReal = 0;
    $GranjasProceso = 1;
    $GranjasTerminados = 0;
    
    //traer datos del programa seleccionado 
    $consultaId = $db->query("SELECT * FROM programa WHERE id = $programa");
    //Validar si el programa ya se ha usado
    $consultaIdPrograma = $db->query("SELECT * FROM operacion WHERE IdPrograma = $programa");

    if ($db->num_rows($consultaIdPrograma) > 0) {
        echo "existe operacion";
    }
    else{
        if ($db->num_rows($consultaId) == 0) {
               echo "no existe";
           }
        else{
            $DatosPrograma = $db->fetch_array($consultaId);
            $IdGranja = $DatosPrograma['IdGranja'];
            $Campana = $DatosPrograma['Campana'];
            $TipoGranja = $DatosPrograma['TipoGranja'];
            $IdTipoServicio = $DatosPrograma['IdTipoServicio'];
            $Galpon = $DatosPrograma['Galpon'];
            $IdAreaGerenciaOperaciones = $DatosPrograma['IdAreaGerenciaOperaciones'];
            $ProFechaInicioLimpieza = $DatosPrograma['ProFechaInicioLimpieza'];
            $TProPreparacionLimpieza = $DatosPrograma['TProPreparacionLimpieza'];


            $consultaId = $db->query("SELECT * FROM granja WHERE IdGranja = $IdGranja");
            $AreaTrabajo = $db->fetch_array($consultaId);
            $Mt2Proceso = $AreaTrabajo['AreaTrabajo'];
            $Mt2Terminados = 0;

            
            $DiferenciaProRealInicioCompost = 66666;
            $DiferenciaProRealTerminioCompost = 66666;
            $DiferenciaProRealLimpiezaInicial = 66666;
            $DiferenciaProRealInicioTumbado = 66666;
            $DiferenciaInicioTumbado = 66666;
            $DiferenciaProRealTerminoTumbado = 66666;
            $DiferenciaTerminoTumbado = 66666;
            $DiferenciaProRealVacioSanitario = 66666;
            $DiferenciaInicioCompost = 66666;
            $DiferenciaTerminioCompost = 66666;
            $DiferenciaDiasTerminoLimpiezaInicial = 66666;
            $DiferenciaTerminoLimpiezaInicial = 66666;
            $DiferenciaTiempoLimpieza = 66666;

            //Registro que se inicializa con 0

            $ContarTotalOperacionInicioCompost = 0;
            $ContarOperacionVerdeAmarilloInicioCompost = 0;
            $ContarTotalOperacionTerminoCompost = 0;
            $ContarOperacionVerdeAmarilloTerminoCompost = 0;
            $ContarTotalOperacionTerminoLimpiezaInicial = 0;
            $ContarOperacionVerdeAmarilloTerminoLimpiezaInicial = 0;
            $ContarTotalOperacionInicioTumbado = 0;
            $ContarOperacionVerdeAmarilloInicioTumbado = 0;
            $ContarTotalOperacionTerminoTumbado = 0;
            $ContarOperacionVerdeAmarilloTerminoTumbado = 0;
            $ContarTotalOperacionTerminoLimpieza = 0;
            $ContarOperacionVerdeAmarilloTerminoLimpieza = 0;

            //Indicador

            if ($ini_limpieza != null && $ult_venta != null)
            {
                $fechaint = strtotime($ini_limpieza);
                $semana1 = date("W", $fechaint);
                $fechaint1 = strtotime($ult_venta);
                $semana2 = date("W", $fechaint1);
                $resultado = 0; 
                for($i=$ult_venta; $i<$ini_limpieza; $i = date("Y-m-d", strtotime($i ."+ 1 days"))) {
                   if (date("w",strtotime($i)) != '6') { $resultado++;}
                }
                $TPreparacionLimpieza= 1 + ( ($resultado * 6) - ($semana1 - $semana2)) / 7;
            }
            //Diferencia de Programa
           if ($ProFechaInicioLimpieza != null && $ini_limpieza != null)
            {
                $DiferenciaIngresoLimpieza = 0; 
                for($i=$ProFechaInicioLimpieza; $i<$ini_limpieza; $i = date("Y-m-d", strtotime($i ."+ 1 days"))) {
                   if (date("w",strtotime($i)) != '6') { $DiferenciaIngresoLimpieza++;}
                }
                $ContarEntradaPorcentaje = 1;

                if ($DiferenciaIngresoLimpieza<=1)
                {
                    $ContarCondicionalEntradaPorcentaje = 1;
                }

                else
                {
                    $ContarCondicionalEntradaPorcentaje = 0;
                }

            }
           //Calculo de % total de Indicadores Red  - Entrada
                $ContarTotalOperacionPorcentajeEntrada = 1;

                if($DiferenciaIngresoLimpieza>1)
                {
                    $ContarOperacionVerdeAmarilloPorcentajeEntrada = 0;
                }
                if ($DiferenciaIngresoLimpieza <= 1)
                {
                    $ContarOperacionVerdeAmarilloPorcentajeEntrada = 1;
                }

            //Diferencia ProReal 
            if ($TProPreparacionLimpieza>0 && $TPreparacionLimpieza>0)
            {
                $DiferenciaProRealPreparacionLimpieza = $TPreparacionLimpieza - $TProPreparacionLimpieza;
                $ContarProRealPreparacionLimpiezaPorcentaje = 1;


                if ($DiferenciaProRealPreparacionLimpieza <= 1)
                {
                    $ContarProRealCondicionalPreparacionLimpiezaPorcentaje = 1;
                }
                else
                {
                    $ContarProRealCondicionalPreparacionLimpiezaPorcentaje = 0;
                }
               
            }


         
            $query ="INSERT INTO operacion(FechaRegistroOperacion, FechaUltimaVenta, FechaInicioLimpieza, FechaInicioRecepcion, FechaTerminoRecepcion, FechaInicioCompost, FechaTerminoCompost, FechaTerminoLimpiezaInicial, FechaInicioTumbadoCompost, FechaTerminoTumbadoCompost, FechaRedDragon, FechaEntregaGranja, FechaIngresoPollosBB, Reuso, Responsable, Estado,Anio,Mes,IdSemanaCierreOperacion,IdAnioInicioLimpieza, IdMesInicioLimpieza,IdMesRptOperacion,IdAnioRptOperacion, IdPrograma, IdSemanaInicioLimpieza,IdGranja, Campana, TipoGranja, IdTipoServicio, Galpon, IdAreaGerenciaOperaciones,MetaEntregaGranja,MetaTiempoLimpiezaInicial,GranjasProceso, GranjasTerminados ,Mt2Proceso, Mt2Terminados,DiferenciaIngresoLimpieza, DiferenciaProRealInicioCompost,DiferenciaProRealTerminioCompost, DiferenciaProRealLimpiezaInicial, DiferenciaProRealInicioTumbado, DiferenciaInicioTumbado, DiferenciaProRealTerminoTumbado, DiferenciaTerminoTumbado ,DiferenciaProRealVacioSanitario ,DiferenciaInicioCompost, DiferenciaTerminioCompost, DiferenciaDiasTerminoLimpiezaInicial, DiferenciaTerminoLimpiezaInicial, DiferenciaTiempoLimpieza,DiferenciaProRealPreparacionLimpieza, ContarProRealPreparacionLimpiezaPorcentaje, ContarProRealCondicionalPreparacionLimpiezaPorcentaje,TPreparacionLimpieza,ContarTotalOperacionPorcentajeEntrada, ContarOperacionVerdeAmarilloPorcentajeEntrada, ContarEntradaPorcentaje, ContarCondicionalEntradaPorcentaje,ContarTotalOperacionInicioCompost, ContarOperacionVerdeAmarilloInicioCompost, ContarTotalOperacionTerminoCompost, ContarOperacionVerdeAmarilloTerminoCompost, ContarTotalOperacionTerminoLimpiezaInicial, ContarOperacionVerdeAmarilloTerminoLimpiezaInicial, ContarTotalOperacionInicioTumbado, ContarOperacionVerdeAmarilloInicioTumbado, ContarTotalOperacionTerminoTumbado, ContarOperacionVerdeAmarilloTerminoTumbado, ContarTotalOperacionTerminoLimpieza, ContarOperacionVerdeAmarilloTerminoLimpieza,Contadoroperacion, MttrabajadosReal) VALUES ('$registro','$ult_venta','$ini_limpieza','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','0000-00-00','$reuso','$responsable','Proceso','$aniocierremomentaneo', '$mescierremomentaneo', '$semanacierremomentaneo','$aniolimpieza','$meslimpieza','$meslimpieza','$aniolimpieza','$programa','$semanalimpieza','$IdGranja', '$Campana', '$TipoGranja', '$IdTipoServicio', '$Galpon', '$IdAreaGerenciaOperaciones','$MetaEntregaGranja','$MetaTiempoLimpiezaInicial','$GranjasProceso', '$GranjasTerminados' ,'$Mt2Proceso', '$Mt2Terminados','$DiferenciaIngresoLimpieza', '$DiferenciaProRealInicioCompost','$DiferenciaProRealTerminioCompost','$DiferenciaProRealLimpiezaInicial','$DiferenciaProRealInicioTumbado','$DiferenciaInicioTumbado','$DiferenciaProRealTerminoTumbado','$DiferenciaTerminoTumbado','$DiferenciaProRealVacioSanitario','$DiferenciaInicioCompost','$DiferenciaTerminioCompost','$DiferenciaDiasTerminoLimpiezaInicial','$DiferenciaTerminoLimpiezaInicial','$DiferenciaTiempoLimpieza','$DiferenciaProRealPreparacionLimpieza', '$ContarProRealPreparacionLimpiezaPorcentaje', '$ContarProRealCondicionalPreparacionLimpiezaPorcentaje','$TPreparacionLimpieza','$ContarTotalOperacionPorcentajeEntrada', '$ContarOperacionVerdeAmarilloPorcentajeEntrada', '$ContarEntradaPorcentaje', '$ContarCondicionalEntradaPorcentaje','$ContarTotalOperacionInicioCompost','$ContarOperacionVerdeAmarilloInicioCompost','$ContarTotalOperacionTerminoCompost',' $ContarOperacionVerdeAmarilloTerminoCompost','$ContarTotalOperacionTerminoLimpiezaInicial',' $ContarOperacionVerdeAmarilloTerminoLimpiezaInicial','$ContarTotalOperacionInicioTumbado',' $ContarOperacionVerdeAmarilloInicioTumbado','$ContarTotalOperacionTerminoTumbado',' $ContarOperacionVerdeAmarilloTerminoTumbado','$ContarTotalOperacionTerminoLimpieza',' $ContarOperacionVerdeAmarilloTerminoLimpieza','$Contadoroperacion', '$MttrabajadosReal')";

                $db->query("UPDATE programa SET EstadoPrograma='Ejecutado' WHERE id = $programa");
            
            if ($db->query($query)) {
                echo 'success';
            } else {
                echo 'fail';
            }
        }
    }
    
} 

