/*!
 * Copyright 2021 E.J.I.E., S.A.
 *
 * Licencia con arreglo a la EUPL, Versión 1.1 exclusivamente (la "Licencia");
 * Solo podrá usarse esta obra si se respeta la Licencia.
 * Puede obtenerse una copia de la Licencia en
 *
 *      http://ec.europa.eu/idabc/eupl.html
 *
 * Salvo cuando lo exija la legislación aplicable o se acuerde por escrito,
 * el programa distribuido con arreglo a la Licencia se distribuye "TAL CUAL",
 * SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas.
 * Véase la Licencia en el idioma concreto que rige los permisos y limitaciones
 * que establece la Licencia.
 */

jQuery(function($) {
	
	initRupI18nPromise.then(function () {
		initFilter();
		initTable();
//		initTiposDocumento();
		initDialogs();		
	});
	
	const initFilter = () => {
		
		$.rup_date({
			yearRange: 'c-100:c+100',
			from: "fRegistro12_filter_table_from",
			to: "fRegistro12_filter_table_to",
			mask: 'dd/mm/yyyy',
			showButtonPanel: true,
			showOtherMonths: true,
			noWeekend: true
		});

		// Combos del filtro
		Ad74aUtils.configCombo($("#tipo12_filter_table"), {
			loadFromSelect: true
		});
		
		Ad74aUtils.configCombo($("#procedureid12_filter_table"), {
			loadFromSelect: true
		});
		
		// Borrar los hidden generados con el <form:checkbox/>
		$("input[name='_ocultos']").remove();
	}
	
	const initTable = () => {
		
		const getColumnsModel = function () {
			const getColumnModel = function (name, index, editable, hidden, orderable) {
				return {
					name: name,
					index: index,
					editable: editable,
					hidden: hidden,
					orderable: orderable
					
				}
			};
			let columnsModel = [];
			columnsModel.push(getColumnModel("bloqueo12", "bloqueo12", false, false, false));
			columnsModel.push(getColumnModel("tipo12", "tipo12", false, false));
			columnsModel.push(getColumnModel("procedureid12_desc", "procedureid12_desc", false, false));
			columnsModel.push(getColumnModel("numRegistro12", "numRegistro12", false, false));
			columnsModel.push(getColumnModel("fRegistro12", "fRegistro12", false, false));
			columnsModel.push(getColumnModel("numRegOriginal12", "numRegOriginal12", false, false));
			columnsModel.push(getColumnModel("fRegOriginal12", "fRegOriginal12", false, false));
			columnsModel.push(getColumnModel("remitente12", "remitente12", false, false));
			columnsModel.push(getColumnModel("numExpediente12", "numExpediente12", false, false));
			
			return columnsModel;
		};

		const getColumnsDefs = function () {
			return [
				{ 
					"targets": 0,
					"className": "icons-column",
	    		    "render": function(data, type, rowData, settings){		
	    		    	let result = '';
	    		    	if(rowData.estado12 == 'O'){							
							result = `
								<span class="mdi mdi-eye-off" 
									style="float:right">
								</span>
							`;				   
	   	    		 	} 
	    		    	if( rowData.bloqueo12 == 1 && userName != rowData.usuResponsable12) {
							result += `							
								<span class="mdi mdi-lock rojo registro-bloqueado" 
								 style="float:right" bloqueo='${rowData.usuResponsable12}'></span>  						
							`;
						}
	    		    	return result;
	    		    }
				},
				{ 
					"targets": 1,
					"width": 220					
				}
			];
		};

		const getCustomButtons = function () {
			let customButons = [];
			
			const FN_DarEntradaDisplay = {};
			FN_DarEntradaDisplay.test  = function(){
				const selectedRows  = $("#bandejapapel0").rup_table("getSelectedRows");	
				if ( selectedRows.length == undefined) {
					return true;
				}
				return false;
			};
			const darEntradaButton = {
				text: function () {
					return $.rup.i18n.app.botonera.darEntrada;
				},
				id: 'darEntrada', // Campo obligatorio si se quiere usar desde el contextMenu
				className: 'btn-material-primary-high-emphasis table_toolbar_btnView',
				icon: "mdi-settings",
				displayRegex: FN_DarEntradaDisplay,
				insideContextMenu: true,
				//type: 'view',
				action: function (e, dt) {

					const selectedRows  = $("#bandejapapel0").rup_table("getSelectedRows");	
					if ( selectedRows.length == undefined && selectedRows.usuResponsable12 != userName && selectedRows.bloqueo12 == 1) {
						$('#dialogBloqueado').rup_dialog('open');
					}else if(selectedRows.length == undefined) {					
						openDialogBandejaPapel0();
					}
				}
			};
			customButons.push(darEntradaButton);
			
			const FN_OcultarMostrarDisplay = {};
			FN_OcultarMostrarDisplay.test  = function(){
				const selectedRows  = $("#bandejapapel0").rup_table("getSelectedRows");	
				// 1 seleccionado y no tiene error en el expediente
				if ( selectedRows.length == undefined) {
					return true;
				}
				return false;
			};
			const ocultarMostrarButton = {
				text: function () {
					return $.rup.i18n.app.botonera.ocultarMostrar;
				},
				id: 'ocultarMostrar', // Campo obligatorio si se quiere usar desde el contextMenu
				className: 'btn-material-primary-high-emphasis table_toolbar_btnView',
				icon: "mdi-eye-off-outline",
				displayRegex: FN_OcultarMostrarDisplay,
				insideContextMenu: true,
				//type: 'view',
				action: function (e, dt) {
					$('#dialogOcultar').rup_dialog('open');
				}
			};
			customButons.push(ocultarMostrarButton);
			
			return customButons;
		};
		
		$("#bandejapapel0").rup_table({
			colReorder: {
				fixedColumnsLeft: 1
			},
			colModel: getColumnsModel(),
			columnDefs: getColumnsDefs(),
			primaryKey: "idEntrada12",
			filter: {
				id: "bandejapapel0_filter_form",
				filterToolbar: "bandejapapel0_filter_toolbar",
				collapsableLayerId: "bandejapapel0_filter_fieldset"
			},
			createTooltipBody: false,// No muestra el tooltip automático de las columnas de la tabla
			select: {
				activate: true
			},
			buttons: {
				activate: true,
				blackListButtons: ['reportsButton', 'addButton', 'editButton', 'cloneButton', 'deleteButton'],
				myButtons: getCustomButtons()
			},
			"rowCallback": function( row, data, index ) {},
			drawCallback: function( settings ) {
				$(".registro-bloqueado").rup_tooltip({
					content: {
						 text: function(event, api) {
				            return $.rup.i18n.app.bandejaPapel0.bloqueado.replaceAll("{0}",$(this).attr('bloqueo'));
				        }
					}, 
					position: {
						my: 'bottom left',  // Position my top left...
						at: 'top left', // at the bottom right of...
					},   
					style: { 
						classes: 'qtip-red' 
					}
				});
			},
			columnOrderArrows: {
			    showOnlyActive: false,
			    display: 'inline'
			},
			order: [[3, "desc"]]
		});
		
	}
	
	const mostrarOcultarEntrada = () => {
		
		const url = '../bandejapapel0/mostrarOcultar';
		const tableName = $('#tableName').val();
		
		let ctx = $('#' + tableName).rup_table('getContext');		
		$('#idEntrada12Detail').val(ctx.multiselection.selectedIds[0]);

		let data = {};
		data.bandejaPapel0 = window.form2object($('#bandejapapel0_dialog_form')[0]);
//		console.log(data);		
		data = JSON.stringify(data);
		
		const ajaxData = {
			'url': url,
			'type': 'POST',
			'data': data,
			'contentType': 'application/json',
			'dataType': 'json',
			success: function (data) {
				Ad74aUtils.desBloquearInterfaz();		
				$('#' + tableName).rup_table("reload");
				$("#rup_feedback_bandejapapel0").rup_feedback('set', $.rup.i18n.app.feedback.operacionOK, "ok"); 
            },
            beforeSend: function(){
            	Ad74aUtils.cerrarFeedbacks();
            	Ad74aUtils.bloquearInterfaz();
            	$('#dialogOcultar').rup_dialog('close');
			},
			error: function (error) {
				Ad74aUtils.desBloquearInterfaz();
				$("#rup_feedback_bandejapapel0").rup_feedback('set', error.responseJSON || error.responseText, "error");
			}
		};
		
		$.rup_ajax(ajaxData);
	}
	
	const initDialogs = () => {

		if($('div[aria-describedby=dialogBandejaPapel0]').length == 1){
	    	$('div[aria-describedby=dialogBandejaPapel0]').remove();
	    	$('#dialogBandejaPapel0').remove();
	    }	    
	    
		// Diálogo editar
		$('#dialogBandejaPapel0').rup_dialog({
	        type: $.rup.dialog.DIV,
	        autoOpen: false,
	        modal: true,
	        resizable: true,
	        dialogClass: 'custom_full_dialog',
	        title: '<i>'+$.rup.i18n.app.dialog.title.procesarEntrada+'</i>',
	        buttons: [
	            {
	                text: $.rup.i18n.app.botonera.cancelar,
	                click: function () { 
	                    $('#dialogBandejaPapel0').rup_dialog('close');
	                    const selectedRows  = $("#bandejapapel0").rup_table("getSelectedRows");	
	                    if ( selectedRows.length == undefined && selectedRows.usuResponsable12 != userName) {
	                    	$("#bandejapapel0").rup_table("reload");
						}
	                },
	                btnType: $.rup.dialog.LINK
	                
	            },
	        {
	            text: $.rup.i18n.app.botonera.procesar,
	            id: "btnProcesar",
	            click: function () { 
	            	procesarEntrada();
	            },
	            class: 'btn-material btn-material-primary-high-emphasis'
	            
	        },

	        ],
			open: () => {
				 
				$("#resumenDetail").html("");				
				// Añadir iconos a los botones del popup
				$("#btnProcesar").html(`<i class="mdi mdi-settings"></i> ${$.rup.i18n.app.botonera.procesar}`);
				
			}
	    });		
		
		
		// Diálogo mostrar/Ocultar
		if($('div[aria-describedby=dialogOcultar]').length == 1){
	    	$('div[aria-describedby=dialogOcultar]').remove();
	    	$('#dialogOcultar').remove();
	    }	
		
		$('#dialogOcultar').rup_dialog({
	        type: $.rup.dialog.DIV,
	        autoOpen: false,
	        modal: true,
	        resizable: false,
	        title: $.rup.i18n.app.dialog.title.mostrarOcultar,	    
	        height: 150,
			dialogClass: 'custom_small_dialog',
	        buttons: [
	        	{
	                text: $.rup.i18n.app.botonera.cancelar,
	                click: function () { 
	                    $('#dialogOcultar').rup_dialog('close'); 
	                },
	                btnType: $.rup.dialog.LINK
	                
	            },
		        {
		            text: $.rup.i18n.app.botonera.aceptar,
		            id: "btnOcultar",
		            click: function () { 
		            	mostrarOcultarEntrada();
		            },
		            class: 'btn-material btn-material-primary-high-emphasis'
		            
		        },
	        ],
	    });	
		
		// Diálogo bloqueado
		if($('div[aria-describedby=dialogBloqueado]').length == 1){
	    	$('div[aria-describedby=dialogBloqueado]').remove();
	    	$('#dialogBloqueado').remove();
	    }	
		
		$('#dialogBloqueado').rup_dialog({
	        type: $.rup.dialog.DIV,
	        autoOpen: false,
	        modal: true,
	        resizable: false,
	        title: $.rup.i18n.app.dialog.title.entradaBloqueada,	    
	        height: 150,
			dialogClass: 'custom_small_dialog',
	        buttons: [
	        	{
	                text: $.rup.i18n.app.botonera.cancelar,
	                click: function () { 
	                    $('#dialogBloqueado').rup_dialog('close'); 
	                },
	                btnType: $.rup.dialog.LINK
	                
	            },
		        {
		            text: $.rup.i18n.app.botonera.aceptar,
		            id: "btnOcultar",
		            click: function () { 
		            	$('#dialogBloqueado').rup_dialog('close');
		            	openDialogBandejaPapel0();
		            },
		            class: 'btn-material btn-material-primary-high-emphasis'
		            
		        },
	        ],
	    });	
		
	}
	
	const openDialogBandejaPapel0 = () => {
		const tableName = $('#tableName').val();
		$("#" + tableName + "_processing").show();
		const divTitleDialog = $("div[aria-describedby='dialogBandejaPapel0'] .ui-dialog-title");
		const divDialog = $("div[aria-describedby='dialogBandejaPapel0']");
		const url = '../bandejapapel0/detail';
		
		// Inicializar el feedback
		try {
			$("#bandejapapl0_detail_feedback").rup_feedback("destroy");
		} catch (error) {}

		$("#bandejapapel0_detail_feedback").rup_feedback(
			{
				type: "ok",
				block: false,
				delay: 3000,
				fadeSpeed: 600,
			}
		);
		
		// Inicializar campos dialog
		$("#resumenDetailLayer").html("");
		$("#observaciones00Detail").val("");
		$("#expediente_filter_layer").addClass("plegado");
		$("#busquedaExpediente").html("");		
		$("#idExpediente00Detail").val("");
		$("#numExpediente00Detail").val("");
		$("#numExpediente00Buscar").val("");
		$("#clearExpedienteBtn").addClass("d-none");
				
		const loadingDiv = `<div class="row">
				<div class="col col-sm text-center">
				<div class="col col-sm text-center processing-container">
				<span class="loading">${$.rup.i18n.base.rup_blockUI.cargando}</span>
			</div>
		</div>`;
		
		$("#documentos").html(loadingDiv);
		$("#datosEntrada #loading").html(loadingDiv);
		
		$("#buscarExpedienteBtn").unbind("click");
		$("#buscarExpedienteBtn").bind("click", () => {
			if( $("#expediente_filter_layer").hasClass("plegado")){									
				$("#busquedaExpediente").html(loadingDiv);
				$("#busquedaExpediente").load("../bandejapapel0/buscarExpediente");
				$("#detalleAportacionLayer").addClass("on");
				$("#overlay-buscar").removeClass("d-none");
				$("#expediente_filter_layer").toggleClass("plegado");
			}
		});
		
		$("#clearExpedienteBtn").unbind("click");
		$("#clearExpedienteBtn").bind("click", () => {
			$("#idExpediente00Detail").val("");
			$("#numExpediente00Detail").val("");
			$("#numExpediente00Buscar").val("");
			$("#clearExpedienteBtn").addClass("d-none");
		});
		
		let ctx = $('#' + tableName).rup_table('getContext');		
		$('#idEntrada12Detail').val(ctx.multiselection.selectedIds[0]);

		let data = {};
		data.bandejaPapel0 = window.form2object($('#bandejapapel0_dialog_form')[0]);
//		console.log(data);		
		data = JSON.stringify(data);
		
		
		Ad74aUtils.hacerPlegable();
		$("#"+tableName+"_processing").hide();
		$('#dialogBandejaPapel0').rup_dialog('open');
		
		const ajaxData = {
			'url': url,
			'type': 'POST',
			'data': data,
			'contentType': 'application/json',
			'dataType': 'json',
			success: function (data) {
//				console.log(data);
				
				if (data != undefined) {					
					$("#datosEntrada #loading").html("");					
					
					if ( data.tipo12 == TIPO_APORTACION_SOL) {			
						$("#detalleAportacionLayer").addClass("d-none");
						
					} else {
						$("#detalleAportacionLayer").removeClass("d-none");
					}																								
					
					let title = '';
					try {
						title = `${$.rup.i18n.app.dialog.title.procesarEntrada}: 
							${data.numRegistro12} / ${data.tipo12_desc} - ${data.procedureid12_desc}							
						`;
											
					} catch (e) {
						title = $.rup.i18n.app.dialog.title.procesarEntrada;
					}
					
					divTitleDialog.html( title );					
										
					// Populate de los formularios
					$.rup_utils.populateForm($.rup_utils.jsontoarray(data), "#bandejapapel0_dialog_form");	
					$.rup_utils.populateForm($.rup_utils.jsontoarray(data), "#bandejapapel0_dialog_detail_form");	
					$("#fechaRegistroDetail").html(data.fRegistro12);
					$("#numeroRegistroDetail").html(data.numRegistro12);
					$("#fRegOriginalDetail").html(data.fRegOriginal12);
					$("#numRegOriginalDetail").html(data.numRegOriginal12);
					$("#remitenteDetail").html(data.remitente12);
					$("#qrDetail").html(data.qrcode12);
					$("#procedimientoDetail").html(data.procedureid12_desc);
					$("#tipoEntradaDetail").html(data.tipo12_desc);					
					$("#expedienteDetail").html(data.numExpediente12);					
					if( data.resumen12 != undefined && data.resumen12 != ''){
						$("#resumenDetailLayer").html("");
						
						const resumenHtml = `
							<div class="form-row row">
								<div class="col-sm-12">	
		                    		<label class="lbl-xs">${$.rup.i18n.app.bandejaPapel0.resumen}:</label>
									<span class="datosResumen">${data.resumen12}</span>
								</div>
							</div>`;
						$("#resumenDetailLayer").html(resumenHtml);
					}					
					
					cargarTiposProcesos( data );
					
					cargarDocumentos( data );									
					
				}				
				
				Ad74aUtils.hacerPlegable();
				$("#"+tableName+"_processing").hide();
				$('#dialogBandejaPapel0').rup_dialog('open');   

			},
			error: function (error) {
				$("#" + tableName + "_processing").hide();
				$('#dialogBandejaPapel0').rup_dialog('close');
				$("#rup_feedback_bandejapapel0").rup_feedback('set', error.responseJSON || error.responseText, "error");
			}
		};
		
		$.rup_ajax(ajaxData);
	
    }
	
	
	const cargarTiposProcesos = ( data ) => {
//		console.log(data);
		const url = '../bandejapapel0/tiposProcesos';

		const ajaxData = {
			'url': url,
			'type': 'POST',
			'data': JSON.stringify(data),
			'contentType': 'application/json',
			'dataType': 'json',
			success: function (res) {
				
				Ad74aUtils.configCombo($("#tipoProceso12Detail"), {
					source: res,
					sourceParam : {	label: 'label' ,value: 'value'},
					loadFromSelect:false,
					ordered: false,
					selected: data.tipoProceso,
					onLoadSuccess: () => {										
						$("#tipoProceso12Detail").rup_combo("select", data.tipoProceso);
					},
					change: () => {
						if ( TIPOS_SOLICITUD.includes($("#tipoProceso12Detail").rup_combo("value"))) {			
							$("#detalleAportacionLayer").addClass("d-none");
							
						} else {
							$("#detalleAportacionLayer").removeClass("d-none");
						}	
					}
				});
			},
			error: function (error) {
				$("#" + tableName + "_processing").hide();
				$('#dialogBandejaPapel0').rup_dialog('close');
				$("#rup_feedback_bandejapapel0").rup_feedback('set', error.responseJSON, "error");
			}
		};
		
		$.rup_ajax(ajaxData);
		
	}
	
	const cargarDocumentos = ( entrada, esSolicitud ) => {
				
		$("#documentosPapel0_filter_form #idEntrada13_filter_table_from").val(entrada.idEntrada12);		
		const documentos_table= $("#documentopapel0");
		
		try {
			$("#documentopapel0").DataTable().destroy();
		} catch (error) {}
			
		const tipificar_dialog = $("#tipificar_documentosEntrada_dialog");
		const tipificar_dialog_feedback = $("#rup_feedback_tipificar_documentos");			
		
		const getColumnsModel = function(){
			const getColumnModel = function(name, index, editable, hidden){
				return {
					name: name,
					index: index,
					editable: editable,
					hidden: hidden
				}
			};	
			const columnsModel = [];
			columnsModel.push(getColumnModel( "oidDocumento13",  "oidDocumento13", false, false));
			columnsModel.push(getColumnModel( "tipodocumento.descEs36",  "tipodocumento.descEs36", false, false));
			columnsModel.push(getColumnModel( "tipodocumento.descEu36",  "tipodocumento.descEu36", false, false));
			columnsModel.push(getColumnModel( "idTipoDoc13",  "idTipoDoc13", false, false));
			columnsModel.push(getColumnModel( "idEntrada13",  "idEntrada13", false, false));
			columnsModel.push(getColumnModel( "idDocPapel013",  "idDocPapel013", false, false));
			return columnsModel;
		};
		
		const getColumnsDefs = function(){
			const columnsDefs = [
			      { "targets": 0,
	    		    "render": function(data, type, rowData, settings){			           
	    		    	if(rowData.oidDocumento13){
	    		    		return "<a href='javascript:$.downloadDocument(\"" + rowData.oidDocumento13 + "\",\"\");'>" + data + "</a>";					   
	   	    		 	} 
	    		    }
			      }
			   ]
			return columnsDefs;
		};
		
		const getCustomButtons = function(){
		  const customButons = [];	
		  const tipificarButton = {
				text: function () {
					return $.rup.i18n.app.botonera.tipificar;
				},
				
				id: 'tipificar', // Campo obligatorio si se quiere usar desde el contextMenu
				className: 'btn-material-primary-high-emphasis table_toolbar_btnView',
				icon: "mdi-file-send",
				custom:true,				
				insideContextMenu: true, 
				type: 'view',
				action: function (e, dt) {
					tipificar_dialog.rup_dialog("open");
				}				
		  };	
		 
		  customButons.push(tipificarButton);

		  return customButons;
		};
		
		documentos_table.rup_table({
			colReorder: {
				fixedColumnsLeft: 0
			},
			colModel: getColumnsModel(),
			columnDefs:  getColumnsDefs(),
			drawCallback : function( settings ) {//PAra subscribirte a eventos despues de pintar// para cada tr
				Ad74aUtils.desBloquearInterfaz();
		    },
			primaryKey: "idDocPapel013",
			noEdit: true,
			filter: {
	  	  		id: "#documentosPapel0_filter_form",
	  	  		filterToolbar: "documentosPapel0_filter_toolbar",
	  	  		collapsableLayerId: "documentosPapel0_filter_fieldset",
	  	  		showHidden: true
	     	},
	     	select: {
	       		activate: true,
	       		multiSelect:false,
	       		deleteDoubleClick:true
	   		},
			buttons: {
				activate: true,
				blackListButtons: ['reportsButton','addButton', 'editButton', 'cloneButton', 'deleteButton'],
				myButtons: getCustomButtons()
			},
			dom: 't<"container-fluid paginationContainer"' +
			  '<"row mx-0"' +
			  '<"col-6 order-3 text-right align-self-center col-sm-5 order-sm-2 col-xl-2 order-xl-1 text-xl-left">' +
			  '<"d-none"p>' +
			  '<"col-12 text-center"i>' +
			  '>' +
			  '>' +
			  'r',
			columnOrderArrows: {
			    showOnlyActive: false,
			    display: 'inline'
			},
			order: [[0, "asc"]]
		}
		
		);			
		
		documentos_table.on('tableButtonsAfterToolbarInit', function (event, ctx) {//siempre el boton deshabilitado al inicio
			$('#tipificar').prop('disabled', true);
		});
		
		documentos_table.on("click",function(ctx) {
			
			if(documentos_table.rup_table("getSelectedIds").length==0){
				$("#tipificar").prop('disabled', true);
			}else{				
				$("#tipificar").prop('disabled', false);
			}
		});
		
		try {
			tipificar_dialog.rup_dialog("destroy");
		} catch (error) {}
		
		tipificar_dialog_feedback.rup_feedback (
			{
			  type: "ok",
			  block: false,
			}
		);	
		
		tipificar_dialog.rup_dialog( {
			type: $.rup.dialog.DIV,
			autoOpen: false,
			modal: true,
			closeOnEscape: true,
			resizable: true,
			//width:600,
			height:600,
			dialogClass: 'custom_mid_dialog',
			title: $.rup.i18n.app.botonera.tipificar,
			buttons : [ 
                {
                    text:$.rup.i18n.app.botonera.aceptar,
                    id:"tipificar_documentosEntrada_btn",
                    class: 'btn-material btn-material-primary-high-emphasis',
                    click:  () => {
                    	const documento = documentos_table.rup_table("getSelectedRows");
                    	console.log(documento);
                    	documento["roleid13"] = $("#idTipoDoc_tipificar").rup_combo("getRupValue");
                    	$.rup_ajax({
    			            url: tipificar_dialog.attr("action"),
                    	    type:"POST",
    			            contentType: "application/json",
    			            data:$.toJSON(documento),             	
    			            success: function (data){    			            	
    			            	documentos_table.rup_table("reload")
    			            	tipificar_dialog.rup_dialog("close");
    			            	Ad74aUtils.desBloquearInterfaz();
    			            	$("#bandejaentrada_detail_feedback").rup_feedback('set', $.rup.i18n.app.feedback.titpificarDocuOK, "ok"); 
    			            },
    			            beforeSend: function(){
    			            	Ad74aUtils.cerrarFeedbacks();
    			            	Ad74aUtils.bloquearInterfaz();
    						},
    			            error:function(data){
    			            	Ad74aUtils.desBloquearInterfaz();
    					    	tipificar_dialog_feedback.rup_feedback('set', data.responseText, "error");
    					    	
    			            }
    			        });
                    	
 					}
                 },
				{
					text : $.rup.i18n.app.botonera.cancelar,
					click : () => {
						tipificar_dialog.rup_dialog("close");
					},
					btnType : $.rup.dialog.LINK
				}
			],
			open: function(){
				Ad74aUtils.cerrarFeedbacks();
				const documento = documentos_table.rup_table("getSelectedRows");  
				const idTipoProceso = $("#tipoProceso12Detail").rup_combo('getRupValue');
				const procedureID = entrada.procedureid12;
				const roleID = documento.idTipoDoc13;
				
				Ad74aUtils.configCombo($("#idTipoDoc_tipificar"), {
					source: $.rup.CTX_PATH + 'combo/getRolDocuments?procedureID='+procedureID+'&idTipoProceso='+idTipoProceso+'&roleID='+roleID,
					sourceParam: {value: "value", label:idioma == 'es' ? "descripcionEs" : "descripcionEu"},
					loadFromSelect:false,						
				});
	
			},
			close: function(){
				$("#idTipoDoc_tipificar").rup_combo("destroy");
				
			}		    
		});	
			
	}
	
	$.downloadDocument = function(oid, nombreDoc){		
		if (oid != null && oid != ''){
			const url = $.rup.CTX_PATH+"bandejapapel0/openOrDownloadDocument/"+oid+"?nombreDoc="+nombreDoc;
			window.open($.rup_utils.setNoPortalParam(encodeURI(url)));	
		}
	}
	
//	const initTiposDocumento = () => {
//		
//		const url = '../combo/tiposDocumentos';		
//		const ajaxData = {
//			'url': url,
//			'type': 'GET',
//			'contentType': 'application/json',
//			'dataType': 'json',
//			success: function (res) {
//				tiposDocumento = [];
//				res.forEach( t => {
//					tiposDocumento.push({label: idioma == 'es' ? t.descEs36 : t.descEs36, value: t.idTipoDoc36, style:""});
//				});
//				//tiposDocumento = JSON.stringify(tiposDocumento);
//			},
//			error: function (error) {
//				$("#" + tableName + "_processing").hide();
//				$('#dialogBandejaPapel0').rup_dialog('close');
//				$("#rup_feedback_bandejapapel0").rup_feedback('set', error.responseJSON  || error.responseText, "error");
//			}
//		};
//		
//		$.rup_ajax(ajaxData);
//		
//	}
	
	const procesarEntrada = () => {		
		let data = {};
		$("#observaciones00Detail").val($("#observacionesDetail").val());
		data.bandejaPapel0 = window.form2object($('#bandejapapel0_dialog_form')[0]);		
		data.bandejaPapel0.numRegistro12 = $('#numeroRegistroDetailPapel0').text();
		console.log(data);
		//Añadir un if que compruebe si el estado es en curso y hacer el window open del success
		if (data.estado12 == 'P'){
			let _idExpediente = $('#idExpediente00Detail').val()
			window.open('../bandejapapel0/solicitud/' + _idExpediente, "exp_"+_idExpediente);
		}else{
			data = JSON.stringify(data);
			
			const url = '../bandejapapel0/process';
			
	    	$.rup_ajax({
	    		'url': url,
				'type': 'POST',
				'data': data,
				'contentType': 'application/json',
				'dataType': 'json',         	
	            success: function (res){  
	            	$('#dialogBandejaPapel0').rup_dialog('close'); 
	            	$("#bandejapapel0").rup_table("reload")
	            	Ad74aUtils.desBloquearInterfaz();
	            	$("#rup_feedback_bandejapapel0").rup_feedback('set', $.rup.i18n.app.feedback.operacionOK, "ok");
	            	window.open('../bandejapapel0/solicitud/' + res.expediente.idExpediente00, "exp_"+res.expediente.idExpediente00);
	            	
	            },
	            beforeSend: function(){
	            	Ad74aUtils.cerrarFeedbacks();
	            	Ad74aUtils.bloquearInterfaz();
				},
	            error:function(error){
	            	Ad74aUtils.desBloquearInterfaz();
	            	$("#bandejapapel0_detail_feedback").rup_feedback('set', error.responseText, "error");	
	            }
	        });
		}
		//const idExpediente = data.bandejaTelematica.expediente.idExpediente00;
		//console.log(idExpediente);
		
		
		
	}

});
