TFS_ANTIGUO/SInCathay/ULA.Cathay.Credito/Ultimus.Framework/Ultimus.API.DocumentosAdjuntos.js

315 lines
No EOL
11 KiB
JavaScript

var modelDocumentosAdjuntos = {}
var IdDocumentoEspecifico = null;
var MetodoIdentificadorGuardado = null;
var FunctionCallBackAdjunto = null;
var CategoriaDocumentoAdjunto = null;
var IdClienteLoaded = null;
var UseModal = null;
var MultiDoc = null;
var AttacmentJSONParameters = null;
var ReferenciaCrediticia = null;
var ReferenciasCCSS = null;
var BitacoraDocumentosIngresoCliente = {}
if (typeof GlobalEsExpedienteClienteSolicitudAnterior !== 'undefined') {
var GlobalEsExpedienteClienteSolicitudAnterior = false;
}
var EtapasDocumentos = {
FR_Asig_Notario_Comer: ($("#hiddenStep").val() == "FR_Asig_Notario_Comer" ? true : false),
DE_Crear_Expediente: ($("#hiddenStep").val() == "DE_Crear_Expediente" ? true : false),
DE_Realizar_Control_Calidad: ($("#hiddenStep").val() == "DE_Realizar_Control_Calidad" ? true : false),
};
this.CargarAdjuntos = function (DocEspecifico, MetodoIdentificador, FunctionCallBack, Multiple, Modal, CategoriaDocumento, IdCliente) {
Ultimus.LoadMessage();
IdDocumentoEspecifico = DocEspecifico;
MetodoIdentificadorGuardado = MetodoIdentificador;
FunctionCallBackAdjunto = FunctionCallBack;
UseModal = Modal == false ? false : true;
MultiDoc = Multiple == true ? true : false;
CategoriaDocumentoAdjunto = CategoriaDocumento;
IdClienteLoaded = IdCliente;
$("#ParametroExtraAdjunto").val("");
AttacmentJSONParameters = JSON.parse($("#AttacmentJSONParameters").val());
$("#ddlClasificacion").enable();
modelDocumentosAdjuntos.Solicitud = {
IdSolicitud: ($("#hiddenProcess").val() == "Desembolso" && GlobalEsExpedienteClienteSolicitudAnterior == true) ? $("#hidden_IdSolicitudCredito").val() : $("#hidden_co_solicitud").val(),
ListaDocumentos: {}
};
modelDocumentosAdjuntos = LeerControlesUltimus(modelDocumentosAdjuntos);
//$('#TableAttacmentListFiles_adjuntos').off('draw.dt');
//$('#TableAttacmentListFiles_adjuntos').on('draw.dt', function () {
// CargarListaDocumentos();
//});
$("#btn_upload_file_adjuntos").unbind('click');
$("#btn_upload_file_adjuntos").click(function () {
var Parametros = $.parseJSON($("#AttacmentJSONParameters").val());
Parametros.FormAction = server + 'api/DocumentosAPI/AdjuntarDocumento?IdCategoria=' + $("#ddlClasificacion option:selected").val();
if (!IsNullOrEmpty(MetodoIdentificadorGuardado))
Parametros.FormAction += '&MetodoIdentificadorGuardado=' + encodeURIComponent(MetodoIdentificadorGuardado);
if (!IsNullOrEmpty(IdClienteLoaded))
Parametros.FormAction += '&IdCliente=' + encodeURIComponent(IdClienteLoaded);
$("#btn_browse_file_adjuntos").closest('form').attr("action", Parametros.FormAction);
$("#AttacmentJSONParameters").val(JSON.stringify(Parametros));
$("#AttacmentJSONParametersAdjunto").val(JSON.stringify(Parametros));
$(this).closest('form').trigger("submit");
});
$("#GridAdjuntosCategoria").Grid('Set', {
setCustomSettings: function (Settings) {
var ListaColumnasOcultas = new Array();
if (MetodoIdentificadorGuardado == "DocsAdicionales")
ListaColumnasOcultas = ["Etapas.DescripcionEtapa", "Fecha"];
else
ListaColumnasOcultas = ["Etapas.DescripcionEtapa", "Comentarios", "Fecha"];
//oculta columnas
$.each(Settings.ColumnDefinition, function (id, item) {
if ($.inArray(item.data, ListaColumnasOcultas) != -1)
item.bVisible = false;
else
item.bVisible = true;
Settings.ColumnDefinition[id] = item;
});
if (Settings.data != null)
$.each(Settings.data, function (id, item) {
item.opciones = '<span id="download_file" class=" fa fa-2x fa-download primary HandCursor" onclick=" window.open(\'' + ($("#hiddenUltimusAttachmentUrl").val() + item.RutaDescarga) + '\');"></span >';
if ($("#hiddenStep").val() != "RE_Valid_Excep_Cumplimiento" && $("#hiddenStep").val() != "RE_Valid_Excep_Analisis")
item.opciones += (AttacmentJSONParameters.DeleteEnable == 1 && AttacmentJSONParameters.TaskStatus == 1 && AttacmentJSONParameters.Disabled == false ? '&nbsp;&nbsp;<span id="delete_file_' + item.CodDocumento + '" class="fa-2x fa fa-trash primary HandCursor" onclick=" EliminarDocumento(' + item.CodDocumento + ');" ></span>' : '');
item.cFecha = Ultimus.GetDateFormatNoTime(item.Fecha);
Settings.data[id] = item;
});
return Settings;
},
RowEvent: function (IdControl, DataRow) { }
});
if (!MultiDoc) {
$("#ddlClasificacion").unbind('change');
$("#ddlClasificacion").change(function () {
var ListaCategoria = $.grep(modelDocumentosAdjuntos.ListaDocumentos, function (item, id) {
return item.IdCategoria == $("#ddlClasificacion option:selected").val();
});
$("#GridAdjuntosCategoria").Grid('RenderGrid', ListaCategoria);
});
}
CargarClasificacionAdjuntos();
if (UseModal)
$('#modalAdjuntos').modal('show');
}
this.CargarClasificacionAdjuntos = function () {
$("#ddlClasificacion").empty();
Ultimus.AjaxGetData(server + 'api/DocumentosAPI/ObtenerClasificacionAdjuntos', false, false, function (data) {
if (data != null) {
$("#ddlClasificacion").empty();
$.each(data, function (id, item) {
$('#ddlClasificacion').append($("<option></option>")
.attr("value", item.IdCategoriaTipoDocumento)
.text(item.Descripcion));
});
CargarListaDocumentos();
}
})
}
this.CargarListaDocumentos = function () {
modelDocumentosAdjuntos.ListaDocumentos = null;
modelDocumentosAdjuntos.ClasicacionEspecificaDocumentos = {
CodDocumento: (((!IsNullOrEmpty(IdDocumentoEspecifico) || !IsNullOrEmpty(MetodoIdentificadorGuardado)) && !MultiDoc) && MetodoIdentificadorGuardado != "DocsAdicionales" ? (IsNullOrEmpty(IdDocumentoEspecifico) ? -1 : IdDocumentoEspecifico) : null),
IdCategoria: (((!IsNullOrEmpty(IdDocumentoEspecifico) || !IsNullOrEmpty(MetodoIdentificadorGuardado)) && !MultiDoc) || MetodoIdentificadorGuardado == "DocsAdicionales" ? null :
(CategoriaDocumentoAdjunto == 0 || IsNullOrEmpty(CategoriaDocumentoAdjunto) ? $("#ddlClasificacion option:selected").val() : CategoriaDocumentoAdjunto)),
}
modelDocumentosAdjuntos.Solicitud = IsNullOrEmpty(modelDocumentosAdjuntos.Solicitud) ? {} : modelDocumentosAdjuntos.Solicitud;
modelDocumentosAdjuntos.Solicitud.IdSolicitud = ($("#hiddenProcess").val() == "Desembolso" && GlobalEsExpedienteClienteSolicitudAnterior == true) ? $("#hidden_IdSolicitudCredito").val() : $("#hidden_co_solicitud").val();
modelDocumentosAdjuntos.DocumentosIngresoCliente = BitacoraDocumentosIngresoCliente;
Ultimus.AjaxPostData(server + 'api/DocumentosAPI/CargarDocumentosAdjuntos', modelDocumentosAdjuntos, false, false, function (data) {
if (data != null) {
modelDocumentosAdjuntos.ListaDocumentos = data.ListaDocumentos;
var ListaCategoria = null;
if ((!IsNullOrEmpty(IdDocumentoEspecifico) || !IsNullOrEmpty(MetodoIdentificadorGuardado)) && !MultiDoc) {
ListaCategoria = $.grep(modelDocumentosAdjuntos.ListaDocumentos, function (item, id) {
return item.CodDocumento == IdDocumentoEspecifico;
});
if (ListaCategoria != null && ListaCategoria.length > 0) {
DisableAttachment(true);
}
else {
DisableAttachment(false);
}
} else {
var categoria = CategoriaDocumentoAdjunto == 0 || IsNullOrEmpty(CategoriaDocumentoAdjunto) ? $("#ddlClasificacion option:selected").val() : CategoriaDocumentoAdjunto;
ListaCategoria = $.grep(modelDocumentosAdjuntos.ListaDocumentos, function (item, id) {
return item.IdCategoria.toString() == categoria
});
}
if (EtapasDocumentos.FR_Asig_Notario_Comer) {
modelDocumentosAdjuntos.ListaDocumentos = $.grep(modelDocumentosAdjuntos.ListaDocumentos, function (item, id) {
return item.Etapas.DescripcionEtapa == "FR_Asig_Notario_Comer";
});
}
if (MetodoIdentificadorGuardado != "DocsAdicionales")
$("#GridAdjuntosCategoria").Grid('RenderGrid', ListaCategoria);
else
$("#GridAdjuntosCategoria").Grid('RenderGrid', modelDocumentosAdjuntos.ListaDocumentos);
}
if (CategoriaDocumentoAdjunto != null) {
$("#ddlClasificacion option[value=" + CategoriaDocumentoAdjunto + "]").attr("selected", "selected");
$("#ddlClasificacion").disable();
}
else {
$("#ddlClasificacion").enable();
}
ENDREQUEST();
});
if ($("#hiddenTaskStatus").val() == 3) {
$("#btn_upload_file_adjuntos").attr("disabled", true);
$("#btn_browse_file_adjuntos").attr("disabled", true);
}
if ($("#hiddenProcess").val() == "Desembolso" && GlobalEsExpedienteClienteSolicitudAnterior == true) {
DisableAttachment(true, true);
}
}
this.EliminarDocumento = function (id) {
if (!confirm("¿Desea eliminar este documento?")) return;
var Doc = {};
Doc.CodDocumento = id;
Doc.IdSolicitud = $("#hidden_co_solicitud").val();
//Doc.IdSolicitud = ($("#hiddenProcess").val() == "Desembolso") ? $("#hidden_IdSolicitudCredito").val() : $("#hidden_co_solicitud").val();
var uri = 'api/DocumentosAPI/EliminarDocumentoAdjunto';
if (!IsNullOrEmpty(MetodoIdentificadorGuardado))
uri += '?MetodoIdentificadorGuardado=' + encodeURIComponent(MetodoIdentificadorGuardado);
Ultimus.AjaxPostData(server + uri, Doc, true, true, function (data) {
var ExistCallBack = (typeof EliminarDocumentoCallBack !== 'undefined' && EliminarDocumentoCallBack != null && $.isFunction(EliminarDocumentoCallBack)) ? true : false;
if (ExistCallBack)
EliminarDocumentoCallBack(data);
else
CargarListaDocumentos();
});
}
this.DetallesDocumentoAdjuntado = function (resp) {
if (!IsNullOrEmpty(MetodoIdentificadorGuardado) || !IsNullOrEmpty(IdDocumentoEspecifico))
IdDocumentoEspecifico = resp.CodDocumento;
if (FunctionCallBackAdjunto != null)
FunctionCallBackAdjunto(resp);
}
this.DisableAttachment = function (Disable, _WithOutDelete) {
if (Disable) {
$("#ddlClasificacion").disable();
$("#btn_browse_file_adjuntos").disable();
$("#btn_upload_file_adjuntos").disable();
$("#attachmentControl_adjuntos").disable();
}
else {
$("#ddlClasificacion").enable();
$("#btn_browse_file_adjuntos").enable();
$("#btn_upload_file_adjuntos").enable();
$("#attachmentControl_adjuntos").enable();
}
if (_WithOutDelete == true) {
$('span[id^="delete_file"]').each(function () {
$("#"+this.id+"").attr("style", "display:none;");
});
}
}
this.CargarTablaDocumentos = function (n) {
if ($("#GridAdjuntosCategoria").is(":visible"))
CargarListaDocumentos();
//no debe hacer nada aqui esto es un override
}