<?php

/*
  Created on : Mayo 26, 2019, 01:14:34 PM
  Author     : Gabriel Hernandez Gonzalez
 */
	if(!isset($_SESSION)) session_start();
	require_once "../core/core_classes.php";
	require_once "../config.php";
	$user = json_decode($_SESSION['user']);

	switch (filter_input(INPUT_POST, 'tipoOperacion')) {

		case 'guardarUsuario':

			$pNidEmpresa = $user->nidEmpresa;
			$pNombre = filter_input(INPUT_POST, 'pNombre');
			$pPaterno = filter_input(INPUT_POST, 'pPaterno');
			$pMaterno = filter_input(INPUT_POST, 'pMaterno');
			$pUsuario = filter_input(INPUT_POST, 'pUsuario');
			$pPass = filter_input(INPUT_POST, 'pContrasenia');
			$pCorreo = filter_input(INPUT_POST, 'pCorreo');
			$pRol = filter_input(INPUT_POST, 'pRol');
			$pNidCliente = filter_input(INPUT_POST, 'pNidCliente');
			
			$pNotiApertura = filter_input(INPUT_POST, 'pNotiApertura');
			$pNotiDesconsolidacion = filter_input(INPUT_POST, 'pNotiDesconsolidacion');
			$pNotiRevision = filter_input(INPUT_POST, 'pNotiRevision');
			$pNotiConsolidacion = filter_input(INPUT_POST, 'pNotiConsolidacion');
			$pNotiCierre = filter_input(INPUT_POST, 'pNotiCierre');
			
			// get settings
			$stmt = $conn->prepare("call usuarios_insertar($pNidEmpresa,'$pNombre','$pPaterno','$pMaterno','$pUsuario','$pPass','$pCorreo',$pRol,$pNidCliente,$pNotiApertura,$pNotiDesconsolidacion,$pNotiRevision,$pNotiConsolidacion,$pNotiCierre)");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			$response->datos = "";
			
			echo json_encode($response);
			
			break;
			
		case 'actualizarUsuario':

			$pNidEmpresa = $user->nidEmpresa;
			$pIdUsuario = filter_input(INPUT_POST, 'pNid');
			$pNombre = filter_input(INPUT_POST, 'pNombre');
			$pPaterno = filter_input(INPUT_POST, 'pPaterno');
			$pMaterno = filter_input(INPUT_POST, 'pMaterno');
			$pUsuario = filter_input(INPUT_POST, 'pUsuario');
			$pPass = filter_input(INPUT_POST, 'pContrasenia');
			$pCorreo = filter_input(INPUT_POST, 'pCorreo');
			$pRol = filter_input(INPUT_POST, 'pRol');
			$pNidCliente = filter_input(INPUT_POST, 'pNidCliente');
			
			$pNotiApertura = filter_input(INPUT_POST, 'pNotiApertura');
			$pNotiDesconsolidacion = filter_input(INPUT_POST, 'pNotiDesconsolidacion');
			$pNotiRevision = filter_input(INPUT_POST, 'pNotiRevision');
			$pNotiConsolidacion = filter_input(INPUT_POST, 'pNotiConsolidacion');
			$pNotiCierre = filter_input(INPUT_POST, 'pNotiCierre');
			
			// get settings
			$stmt = $conn->prepare("call usuarios_actualizar($pIdUsuario,$pNidEmpresa,'$pNombre','$pPaterno','$pMaterno','$pUsuario','$pPass','$pCorreo',$pRol,$pNidCliente,$pNotiApertura,$pNotiDesconsolidacion,$pNotiRevision,$pNotiConsolidacion,$pNotiCierre)");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			$response->datos = "";
			
			echo json_encode($response);
			
			break;
			
		case 'eliminarUsuario':

			$pNidEmpresa = $user->nidEmpresa;
			$pIdUsuario = filter_input(INPUT_POST, 'pNid');
			$pActivo = filter_input(INPUT_POST, 'pEstado');
			
			// get settings
			$stmt = $conn->prepare("call usuarios_estado($pIdUsuario,$pNidEmpresa,$pActivo)");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			$response->datos = "";
			
			echo json_encode($response);
			
			break;			
		case 'consultaUsuarios':

			$pNidEmpresa = $user->nidEmpresa;
			
					
			// get settings
			$stmt = $conn->prepare("call usuarios_consulta($pNidEmpresa)");
			$stmt->execute();	

			$response = new root_response;
			while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
			{ 
				$respuesta = new core_usuario();
				$respuesta->nid = $row["Id"];
				$respuesta->nombre = $row["NombreUsuario"];
				$respuesta->paterno = $row["ApPaterno"];
				$respuesta->materno = $row["ApMaterno"];
				$respuesta->usuario = $row["Usuario"];
				$respuesta->contrasenia = $row["Pass"];	
				$respuesta->correo = $row["Email"];				
				$respuesta->rol = $row["IdRol"];
				$respuesta->nidCliente = $row["IdCliente"];				
				$respuesta->notiApertura = $row["Notif_Apertura"];
				$respuesta->notiDesconsolidacion = $row["Notif_Desconsolidacion"];
				$respuesta->notiRevision = $row["Notif_Inspeccion"];
				$respuesta->notiConsolidacion = $row["Notif_Consolidacion"];
				$respuesta->notiCierre = $row["Notif_Cierre"];
				
				$response->datos[] = $respuesta;				
			};
						
			$response->transaccion = "1";
			$response->mensaje = "Ok";
			
			echo json_encode($response);
			
			break;
			
		case 'consultaUsuariosXnid':

			$pNidEmpresa = $user->nidEmpresa;
			$pNid = filter_input(INPUT_POST, 'pNid');
		
			// get settings
			$stmt = $conn->prepare("call usuarios_consultaxId($pNidEmpresa,$pNid)");
			$stmt->execute();	

			$response = new root_response;
			while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
			{ 
				$respuesta = new core_usuario();
				$respuesta->nid = $row["Id"];
				$respuesta->nombre = $row["NombreUsuario"];
				$respuesta->paterno = $row["ApPaterno"];
				$respuesta->materno = $row["ApMaterno"];
				$respuesta->usuario = $row["Usuario"];
				$respuesta->contrasenia = $row["Pass"];	
				$respuesta->correo = $row["Email"];				
				$respuesta->rol = $row["IdRol"];
				$respuesta->nidCliente = $row["IdCliente"];				
				$respuesta->notiApertura = $row["Notif_Apertura"];
				$respuesta->notiDesconsolidacion = $row["Notif_Desconsolidacion"];
				$respuesta->notiRevision = $row["Notif_Inspeccion"];
				$respuesta->notiConsolidacion = $row["Notif_Consolidacion"];
				$respuesta->notiCierre = $row["Notif_Cierre"];
				
				$response->datos[] = $respuesta;				
			};
						
			$response->transaccion = "1";
			$response->mensaje = "Ok";
			
			echo json_encode($response);
			
			break;
			
		default:
			echo json_encode(system_get_message(SISTEMA_PARAMETRO_NO_RECONOCIDO));
			break;
	}
        
?>
