HEX
Server: Apache
System: Linux iad1-shared-e1-19 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
User: austral3d (14892361)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: /home/austral3d/fourdplan.com/webservices4.0dev/ActualizarFechas.php
<?php
	
	//error_reporting(E_ALL);
	//ini_set('display_errors', 1);

	require_once("comun/conexion_mysqli.php");
    
	$db = fdp_connect();
	
	$assembly_id = $_GET['assembly_id'];
	$planificado = $_GET['planificado'];
	$xml_string = file_get_contents('php://input'); 
	
	//echo $xml_string;
	
	$xml = new SimpleXMLElement($xml_string);
	$montaje_i = $xml->montaje_inicio_programado;
	$montaje_f = $xml->montaje_fin_programado;
	$montaje_i_hora = $xml->montaje_inicio_programado_hora;
	$montaje_f_hora = $xml->montaje_fin_programado_hora;
	
	foreach($xml->instancia as $instancia)
	{
		$assembly_mark = $instancia->assembly_mark;
		$sql_id_instancia = "
			SELECT i.id
			FROM Disciplina disc, Descripcion d, Instancia i, Elemento e
			WHERE i.elemento_id = e.id
				AND e.descripcion_id = d.id
				AND i.assembly_mark = '$assembly_mark'
				AND d.disciplina_id = disc.id 
				AND disc.assembly_id = '$assembly_id';";
		$id_instancia = fdp_query_cell($db, $sql_id_instancia, 0, "id");
		if ($planificado == "1")
		{
			$sql_montaje_programado = "
				UPDATE Instancia
				SET montaje_inicio_programado = '$montaje_i', montaje_fin_programado = '$montaje_f'
				WHERE id = $id_instancia;";
			fdp_query($db, $sql_montaje_programado);

			$sql_montaje_programado_hora = "
				UPDATE Instancia
				SET montaje_inicio_programado_hora = '$montaje_i_hora', montaje_fin_programado_hora = '$montaje_f_hora'
				WHERE id = $id_instancia;";
			fdp_query($db, $sql_montaje_programado_hora);
		}
		else
		{
			$estado = $xml->estado;
			$estado_int = intval($estado);
			$estado_int++;
			$atributo = "montaje_estado_" . strval($estado_int);
			
			$sql_update_instancia = "
				UPDATE Instancia
				SET $atributo = '$montaje_i' WHERE id = $id_instancia;";
			fdp_query($db, $sql_update_instancia);
			
			//if ($estado == 0)
			//ejecutar("UPDATE Instancia SET fecha_salida_bodega = '" . $montaje_i . "' WHERE id = ". $id_instancia . ";");
		}
	}
	
	if ($planificado == "1")
	{
		$workpackage_nombre = $xml->workpackage_nombre;
		$sql_id_workpackage = "
			SELECT id
			FROM WorkPackage
			WHERE nombre = '$workpackage_nombre'
			AND assembly_id = '$assembly_id'";
		$wp = fdp_query_all($db, $sql_id_workpackage);
		
		if ($workpackage_nombre == "")
			$wp_id = 0;
		
		else if (sizeof($wp == 0))
		{
			$sql_insert_wp = "
				INSERT INTO WorkPackage(nombre, assembly_id)
				VALUES ('$workpackage_nombre', '$assembly_id')";
			fdp_query($db, $sql_insert_wp);
			$wp_id = mysqli_insert_id();
		}
		else
		{
			$sql_id_workpackage = "
				SELECT id
				FROM WorkPackage
				WHERE nombre = '$workpackage_nombre'
					AND assembly_id = '$assembly_id'";
			$wp_id = fdp_query_cell($db, $sql_id_workpackage, 0, 0);
		}
		
		foreach($xml->instancia as $instancia)
		{
			$assembly_mark = $instancia->assembly_mark;
			$sql_id_instancia = "
				SELECT id
				FROM Instancia
				WHERE assembly_mark = '$assembly_mark'";
			$id_instancia = fdp_query_cell($db, $sql_id_instancia, 0, 0);

			$sql_update_instancia = "
				UPDATE Instancia
				SET workpackage_id = '$wp_id'
				WHERE id = '$id_instancia'";
			fdp_query($db, $sql_update_instancia);
		}
	}
	
	echo ("ok");
 ?>