<?php
ini_set('display_errors','On');
error_reporting(1);



include 'config.php';
require_once SISTEMA_PATH.'/includes/database/db.php';

require_once SISTEMA_PATH.'/apis/nucleo/generales/sistema_tabla_auditada.php';
//require_once SISTEMA_PATH.'/includes/usuario.php';
//require_once SISTEMA_PATH.'/apis/nucleo/persona.php';
require_once "../reservahoras/apis/apis_reserva.php";
require_once SISTEMA_PATH."/clases/phpmailer/class.phpmailer.php";
require_once SISTEMA_PATH.'/apis/nucleo/vehiculos/marca_representada.php';


function usuario_id()
{
        return 0;
}

/*
if (citas_existe("06/01/2014","DYFV-12")) {
	echo "si";
} else {
	echo "no";
}
*/

/*
echo "<pre>";
print_r(ot_lista_fecha (1,7,"10-10-2014"));
echo "</pre>";
exit();
*/



include 'nusoap.php';
$server = new soap_server;
$ns="http://localhost/webservices/";
$ns="urn:ws_citas";
$server->configurewsdl("ws_citas",$ns);
$server->wsdl->schematargetnamespace=$ns;
$server->soap_defencoding = 'UTF-8';
$server->decode_utf8 = false;



$server->register(
	'mail_enviar_citas_no_asistencia',
	array('id_cit' => 'xsd:int','mensaje_cit' => 'xsd:string'),
	array('return'=>'xsd:boolean'),
	$ns
	);



$server->register(
	'citas_modificar_llegada',
	array('id_cit' => 'xsd:int','llego_cit' => 'xsd:string'),
	array('return'=>'xsd:boolean'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'modifica registro a citas' //Documentación
	);


$server->wsdl->addComplexType(
	'array_citas_lista_fecha',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_citas_lista_fecha[]')
		),
	'tns:tns_citas_lista_fecha'
	);
$server->wsdl->addComplexType('tns_citas_lista_fecha','complexType','struct','all','',
	array(
		'id_cit'=> array('name' => 'id_cit','type'=>'xsd:int'),
		'id_usu'=> array('name' => 'id_usu','type'=>'xsd:int'),
		'id_emp'=> array('name' => 'id_emp','type'=>'xsd:int'),
		'id_suc'=> array('name' => 'id_suc','type'=>'xsd:int'),
		'id_dep'=> array('name' => 'id_dep','type'=>'xsd:int'),
		'id_sec'=> array('name' => 'id_sec','type'=>'xsd:int'),
		'fecha_cit'=> array('name' => 'fecha_cit','type'=>'xsd:string'),
		'hora_inicio_cit'=> array('name' => 'hora_inicio_cit','type'=>'xsd:string'),
		'hora_fin_cit'=> array('name' => 'hora_fin_cit','type'=>'xsd:string'),
		'patente_cit'=> array('name' => 'patente_cit','type'=>'xsd:string'),
		'id_mbi'=> array('name' => 'id_mbi','type'=>'xsd:int'),
		'modelo_cit'=> array('name' => 'modelo_cit','type'=>'xsd:string'),
		'ano_cit'=> array('name' => 'ano_cit','type'=>'xsd:int'),
		'actividad_cit'=> array('name' => 'actividad_cit','type'=>'xsd:string'),
		'cliente_cit'=> array('name' => 'cliente_cit','type'=>'xsd:string'),
		'fono_cit'=> array('name' => 'fono_cit','type'=>'xsd:string'),
		'descripcion_cit'=> array('name' => 'descripcion_cit','type'=>'xsd:string'),
		'tiempo_cit'=> array('name' => 'tiempo_cit','type'=>'xsd:float'),
		'direccion_cit'=> array('name' => 'direccion_cit','type'=>'xsd:string'),
		'id_tci'=> array('name' => 'id_tci','type'=>'xsd:int'),
		'id_bie'=> array('name' => 'id_bie','type'=>'xsd:int'),
		'id_otr'=> array('name' => 'id_otr','type'=>'xsd:int'),
		'id_usu_cit'=> array('name' => 'id_usu_cit','type'=>'xsd:int'),
		'email_cit'=> array('name' => 'email_cit','type'=>'xsd:string'),
		'confirma_cit'=> array('name' => 'confirma_cit','type'=>'xsd:boolean'),
		'celular_cit'=> array('name' => 'celular_cit','type'=>'xsd:string'),
		'cedula_cit'=> array('name' => 'cedula_cit','type'=>'xsd:string'),
		'sistem_agendam_cit'=> array('name' => 'sistem_agendam_cit','type'=>'xsd:int'),
		'llego_cit'=> array('name' => 'llego_cit','type'=>'xsd:int'),
		'comentario_negativo_cit'=> array('name' => 'comentario_negativo_cit','type'=>'xsd:string')
		)
	);
$server->register(
	'citas_lista_fecha',
	array('id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int','fecha_cit' => 'xsd:string'),
	array('return'=>'tns:array_citas_lista_fecha'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre citas' //Documentación
	);



$server->wsdl->addComplexType(
	'array_ot_lista_fecha',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_ot_lista_fecha[]')
		),
	'tns:tns_ot_lista_fecha'
	);
$server->wsdl->addComplexType('tns_ot_lista_fecha','complexType','struct','all','',
	array(
		'nombre'=> array('name' => 'nombre','type'=>'xsd:string'),
		'cedula_per'=> array('name' => 'cedula_per','type'=>'xsd:string'),
		'codigo_otr'=> array('name' => 'codigo_otr','type'=>'xsd:string'),
		'patente_veh'=> array('name' => 'patente_veh','type'=>'xsd:string'),
		'fecha_entrada_otr'=> array('name' => 'fecha_entrada_otr','type'=>'xsd:string')
		)
	);
$server->register(
	'ot_lista_fecha',
	array('id_emp' => 'xsd:int','id_suc' => 'xsd:int','fecha_ot' => 'xsd:string'),
	array('return'=>'tns:array_ot_lista_fecha'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre citas' //Documentación
	);

$server->register(
	'ot_lista_fecha2',
	array('id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_sec' => 'xsd:int','fecha_ot' => 'xsd:string'),
	array('return'=>'tns:array_ot_lista_fecha'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre citas' //Documentación
	);





$server->wsdl->addComplexType(
	'array_recepcionista_lista',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_recepcionista_lista[]')
		),
	'tns:tns_recepcionista_lista'
	);
$server->wsdl->addComplexType('tns_recepcionista_lista','complexType','struct','all','',
	array(
		'tiene_turno'=> array('name' => 'tiene_turno','type'=>'xsd:boolean'),
		'id_rep'=> array('name' => 'id_rep','type'=>'xsd:int'),
		'nombre_rep'=> array('name' => 'nombre_rep','type'=>'xsd:string')
		)
	);
$server->register(
	'recepcionista_lista',
	array('id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int'),
	array('return'=>'tns:array_recepcionista_lista'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre: lista de recepcionista' //Documentación
	);

$server->register(
	'recepcionista_lista2',
	array('id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int'),
	array('return'=>'tns:array_recepcionista_lista'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre: lista de recepcionista' //Documentación
	);






$server->wsdl->addComplexType(
	'array_marca_representada_lista_taller',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_marca_representada_lista_taller[]')
		),
	'tns:tns_marca_representada_lista_taller'
	);
$server->wsdl->addComplexType('tns_marca_representada_lista_taller','complexType','struct','all','',
	array(
		'id_suc'=> array('name' => 'id_suc','type'=>'xsd:int'),
		'id_dep'=> array('name' => 'id_dep','type'=>'xsd:int'),
		'id_sec'=> array('name' => 'id_sec','type'=>'xsd:int')
		)
	);
$server->register(
	'marca_representada_lista_taller',
	array('id_emp' => 'xsd:int','id_mbi' => 'xsd:string'),
	array('return'=>'tns:array_marca_representada_lista_taller'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre: lista de taller' //Documentación
	);








$server->wsdl->addComplexType(
	'array_recepcionista_horas_hoy',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_recepcionista_horas_hoy[]')
		),
	'tns:tns_recepcionista_horas_hoy'
	);
$server->wsdl->addComplexType('tns_recepcionista_horas_hoy','complexType','struct','all','',
	array(
		'hora_inicio_hci'=> array('name' => 'hora_inicio_hci','type'=>'xsd:string')
		)
	);
$server->register(
	'recepcionista_horas_hoy',
	array('id_usu' => 'xsd:int','id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int'),
	array('return'=>'tns:array_recepcionista_horas_hoy'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre: las horas de trabajo del dia de hoy del recepcionista' //Documentación
	);





$server->wsdl->addComplexType(
	'array_recepcionista_horas',
	'complexType',
	'array',
	'',
	'SOAP-ENC:Array',
	array(),
	array(
		array('ref' => 'SOAP-ENC:arrayType','wsdl:arrayType' => 'tns:tns_recepcionista_horas[]')
		),
	'tns:tns_recepcionista_horas'
	);
$server->wsdl->addComplexType('tns_recepcionista_horas','complexType','struct','all','',
	array(
		'hora_inicio_hci'=> array('name' => 'hora_inicio_hci','type'=>'xsd:string')
		)
	);
$server->register(
	'recepcionista_horas',
	array('id_usu' => 'xsd:int','id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int','fecha_inicio_tca' => 'xsd:string'),
	array('return'=>'tns:array_recepcionista_horas'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'retorna arreglo multidimensional sobre: las horas de trabajo del dia ingresado del recepcionista' //Documentación
	);




$server->register(
	'hora_disponible',
	array('id_usu' => 'xsd:int','id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int','fecha_cit' => 'xsd:string','hora_inicio_cit' => 'xsd:string'),
	array('return'=>'xsd:boolean'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'verifica disponiblilidad de la hora' //Documentación
	);



$server->register(
	'citas_agregar',
	array('id_usu' => 'xsd:int','id_emp' => 'xsd:int','id_suc' => 'xsd:int','id_dep' => 'xsd:int','id_sec' => 'xsd:int','fecha_cit' => 'xsd:string','hora_inicio_cit' => 'xsd:string','patente_cit' => 'xsd:string','id_mbi' => 'xsd:int','modelo_cit' => 'xsd:string','ano_cit' => 'xsd:int','cliente_cit' => 'xsd:string','fono_cit' => 'xsd:string','celular_ci' => 'xsd:string','descripcion_cit' => 'xsd:string','email_cit' => 'xsd:string','cedula_cit' => 'xsd:string','confirma_cit' => 'xsd:boolean'),
	array('return'=>'xsd:boolean'),
	$ns, // Nombre del workspace
	'', //Acción soap
	'rpc', //Estilo
	'encoded', //uso
	'agrega registro de agendamiento de citas' //Documentación
	);



















$input=(isset($HTTP_RAW_POST_DATA)) ? $HTTP_RAW_POST_DATA : implode("\r\n",file('php://input'));
$server->service($input);
exit;
?>
