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

295 lines
10 KiB
JavaScript

$("#formObservacion").EnableValidationToolTip();
var ExisteObservacion = false;
var EtapasObservaciones = {
FR_Rev_Info_Caso: ($("#hiddenStep").val() == "FR_Rev_Info_Caso" ? true : false),
FR_Enviar_Doc_Cliente: ($("#hiddenStep").val() == "FR_Enviar_Doc_Cliente" ? true : false),
FR_Trans_Oferta_Contrato: ($("#hiddenStep").val() == "FR_Trans_Oferta_Contrato" ? true : false)
};
jQuery(document).ready(function () {
$('#btnGuardarObservacion').click(function () {
InsertarObservacion();
});
});
this.ObtenerObservacion = function (IdTipoDocumento, IdTipoObservacion, IdCliente, ConsecutivoPeriodo, _IsReadOnly) {
if (_IsReadOnly == false || typeof _IsReadOnly === 'undefined')
$("#formObservacion").attr("style", "display:block");
else
$("#formObservacion").attr("style", "display:none");
$("#hiddenIdTipoObservacion").val("");
$("#hiddenIdCliente").val("");
$("#hiddenIdTipoDocumento").val("");
Ultimus.LoadMessage();
var ListaObservacion = [];
switch (IdTipoObservacion) {
case 1:
$("#titulo_observacion").text("Observaciones de Negocio");
break;
case 2:
$("#titulo_observacion").text("Observaciones de Excepciones de Análisis");
break;
case 3:
$("#titulo_observacion").text("Observaciones de Excepciones de Cumplimiento");
break;
case 4:
$("#titulo_observacion").text("Observaciones de Excepciones");
break;
case 5:
$("#titulo_observacion").text("Observaciones de Análisis");
break;
case 6:
$("#titulo_observacion").text("Observaciones de Cumplimiento");
break;
case 7:
$("#titulo_observacion").text("Observaciones de Control Calidad de Expediente");
break;
}
var uri = "";
if ($("#hiddenProcess").val() == "Credito" || EtapasObservaciones.FR_Rev_Info_Caso || EtapasObservaciones.FR_Enviar_Doc_Cliente || EtapasObservaciones.FR_Trans_Oferta_Contrato) // $("#hiddenStep").val() == "FR_Rev_Info_Caso"
uri = "api/ObservacionAPI/ObtenerObservacion?IdTipoDocumento=" + IdTipoDocumento + "&IdTipoObservacion=" + IdTipoObservacion + "&IdCliente=" + IdCliente + "&ConsecutivoPeriodo=" + ConsecutivoPeriodo;
else
uri = "api/ObservacionFormalizacionAPI/ObtenerObservacion?IdTipoDocumento=" + IdTipoDocumento + "&IdTipoObservacion=" + IdTipoObservacion + "&IdCliente=" + IdCliente + "&IdSolicitud=" + $("#hidden_co_solicitud").val() + "&NombreProceso="+ $("#hiddenProcess").val() +"&ConsecutivoPeriodo=" + ConsecutivoPeriodo;
Ultimus.AjaxGetData(server + uri, false, false, function (data) {
if (data != null) {
$.each(data, function (key, item) {
if (item.FechaObservacion != undefined || item.FechaObservacion != null) {
var fecha = moment(item.FechaObservacion).format("DD-MMMM-YYYY");
item.FechaObservacion = fecha;
}
ListaObservacion.push({
Documento: $("#hiddenProcess").val() == "Credito" || EtapasObservaciones.FR_Rev_Info_Caso || EtapasObservaciones.FR_Enviar_Doc_Cliente || EtapasObservaciones.FR_Trans_Oferta_Contrato ? item.BitacoraDocumentosCliente.TipoDocumento.Descripcion : item.BitacoraDocumentosFormalizacion.TipoDocumento.Descripcion,
Observacion: item.DescripcionObservacion,
Usuario: item.Usuario,
Etapa: item.Etapa,
Fecha: item.FechaObservacion,
IdObservacion: item.IdObservacion,
ConsecutivoPeriodo: item.ConsecutivoPeriodo
})
});
var Seleccionar = $("#ucItems").html();
var columnDefinition = [
{ "data": "Documento" },
{ "data": "Observacion" },
{ "data": "Usuario" },
{ "data": "Etapa" },
{ "data": "Fecha" },
{ "data": null, className: "center", defaultContent: Seleccionar }
];
$('#tableComentario').TableInit(0, false, true, false, false, columnDefinition, ListaObservacion);
$('#modalObservacion').modal('show')
ENDREQUEST();
}
});
$("#hiddenIdTipoObservacion").val(IdTipoObservacion);
$("#hiddenIdCliente").val(IdCliente);
$("#hiddenIdTipoDocumento").val(IdTipoDocumento);
$("#hiddenConsecutivoPeriodo").val(ConsecutivoPeriodo);
}
this.InsertarObservacion = function () {
var uri = "";
if ($("#hiddenProcess").val() == "Credito") {
Observacion = {
IdTipoObservacion: $("#hiddenIdTipoObservacion").val(),
IdCliente: $("#hiddenIdCliente").val(),
IdTipoDocumento: $("#hiddenIdTipoDocumento").val(),
ConsecutivoPeriodo: $("#hiddenConsecutivoPeriodo").val(),
Usuario: $("#hiddenUserFullName").val(),
DescripcionObservacion: $("#txtObservacion").val(),
Etapa: $("#hiddenStep").val()
};
uri = "api/ObservacionAPI/InsertarObservacion";
}
else {
Observacion = {
IdTipoObservacion: $("#hiddenIdTipoObservacion").val(),
IdCliente: $("#hiddenIdCliente").val(),
IdSolicitud: $("#hidden_co_solicitud").val(),
Incidente: $("#hiddenIncident").val(),
Procesos: { NombreProceso: $("#hiddenProcess").val() },
IdTipoDocumento: $("#hiddenIdTipoDocumento").val(),
ConsecutivoPeriodo: $("#hiddenConsecutivoPeriodo").val(),
Usuario: $("#hiddenUserFullName").val(),
DescripcionObservacion: $("#txtObservacion").val(),
Etapa: $("#hiddenStep").val()
};
uri = "api/ObservacionFormalizacionAPI/InsertarObservacion";
}
Ultimus.AjaxPostData(server + uri, Observacion, true, false, function (data) {
if (data.CodigoRespuesta == "EXITOSO")
toastr.success("El Comentario fue guardado satisfactoriamente", Message_Success);
else
toastr.error(Ultimus.MessageFull_Error, Ultimus.Message_Error);
ENDREQUEST();
ObtenerObservacion($("#hiddenIdTipoDocumento").val(), $("#hiddenIdTipoObservacion").val(), $("#hiddenIdCliente").val(), $("#hiddenConsecutivoPeriodo").val())
$("#txtObservacion").val("");
}, "ERROR");
}
this.ValidarObservacionRequerida = function (IdCliente, Etapa, ListaBitacoraDocumentos, ValidateMode, End) {
var respuesta = true;
try {
Ultimus.LoadMessage();
Ultimus.AjaxGetData(server + "api/ObservacionAPI/ObtenerObservacion?IdCliente=" + IdCliente + "&Etapa=" + Etapa, false, null, function (data) {
var ListaObservaciones = data = null ? {} : data;
switch (ValidateMode) {
case ValidateModeBitacoraDocumentos.ObservacionSatisfacePoliticaCumplimiento:
case ValidateModeBitacoraDocumentos.ObservacionExcepcion:
$.each(ListaBitacoraDocumentos, function (key, item) {
var listaMatch = $.grep(ListaObservaciones, function (item2, id) {
return (item2.IdTipoDocumento == item.IdTipoDocumento && item2.ConsecutivoPeriodo == item.ConsecutivoPeriodo);
});
if (listaMatch == null || listaMatch.length == 0) {
respuesta = false;
return false;
}
});
break;
default:
respuesta = true;
break;
}
if (End == undefined || End == null || End == false)
ENDREQUEST();
});
} catch (e) {
respuesta = false;
}
return respuesta;
}
$('#tableComentario').on('click', 'button', function () {
var data = $('#tableComentario').DataTable().row($(this).parents('tr')).data();
if (!confirm("Va a eliminar un comentario.\n ¿Desea continuar?"))
{ return; }
if ($("#hiddenUserFullName").val().toUpperCase().trim() == data.Usuario.toUpperCase().trim() && data.Etapa == $("#hiddenStep").val()) {
Observacion = {
IdObservacion: data.IdObservacion,
ConsecutivoPeriodo: data.ConsecutivoPeriodo,
Usuario: data.Usuario,
Etapa: data.Etapa
}
Eliminar(Observacion);
} else {
toastr.warning("El comentario no se puede eliminar porque le pertenece al usuario " + data.Usuario + " y fue ingresado en la etapa: " + data.Etapa);
return false;
}
});
this.Eliminar = function (Observacion) {
var uri = "";
if ($("#hiddenProcess").val() == "Credito")
uri = "api/ObservacionAPI/Eliminar";
else
uri = "api/ObservacionFormalizacionAPI/Eliminar";
Ultimus.AjaxPostData(server + uri, Observacion, true, false, function (data) {
if (data.CodigoRespuesta == "EXITOSO")
toastr.success("El Comentario fue eliminado", Message_Success);
else
toastr.error(Ultimus.MessageFull_Error, Ultimus.Message_Error);
ENDREQUEST();
ObtenerObservacion($("#hiddenIdTipoDocumento").val(), $("#hiddenIdTipoObservacion").val(), $("#hiddenIdCliente").val(), $("#hiddenConsecutivoPeriodo").val())
}, "ERROR");
}
this.ConsultaObservacion = function (IdTipoDocumento, IdTipoObservacion, IdCliente, ConsecutivoPeriodo,Proceso) {
Observaciones = false;
ExisteObservacion = false;
var uri = "";
if (Proceso == "Credito") //$("#hiddenProcess").val() ==
uri = "api/ObservacionAPI/ObtenerObservacion?IdTipoDocumento=" + IdTipoDocumento + "&IdTipoObservacion=" + IdTipoObservacion + "&IdCliente=" + IdCliente + "&ConsecutivoPeriodo=" + ConsecutivoPeriodo;
else
uri = "api/ObservacionFormalizacionAPI/ObtenerObservacion?IdTipoDocumento=" + IdTipoDocumento + "&IdTipoObservacion=" + IdTipoObservacion + "&IdCliente=" + IdCliente + "&IdSolicitud=" + $("#hidden_co_solicitud").val() + "&NombreProceso=" + $("#hiddenProcess").val() + "&ConsecutivoPeriodo=" + ConsecutivoPeriodo;
Ultimus.AjaxGetData(server + uri, false, false, function (data) {
if (data != null && data.length > 0) {
ExisteObservacion = true;
ENDREQUEST();
}
});
}