TFS_ANTIGUO/SInCathay/ULA.Cathay.ModuloMantenimiento/Ultimus.Framework/Ultimus.API.ControlCartera.js

597 lines
20 KiB
JavaScript

$("#formCatalogo").EnableValidationToolTip();
var DataCatalogo;
var id_column = 1;
var Item = {};
var _decision = null;
var idSolicitud = getUrlParameter('IdSolicitud');
var EnumCategoria = { Estudio_Seguimiento: { codigo: 2, descripcion: "Estudio de Seguimiento" } };
var EnumClasificacionCliente = { Actual: { codigo: 1, descripcion: "Actual" } };
var EnumTipoSolicitante = { Deudor: { codigo: 1, descripcion: "Deudor" } };
//#region READY
jQuery(document).ready(function () {
GetControlsSettings("Cathay_ControlCartera", "Cathay_ControlCartera", "formCatalogo", false);
$('#btnIdentificacion').click(function () {
BuscarClienteSAP();
});
$('#btnGuardar').hide();
$('#btnInsertar').show();
$('#btnLimpiar').click(function () {
limpiar();
$('#btnGuardar').hide();
$('#btnInsertar').show();
});
$('#btnGuardar').click(function () {
ActualizarItem();
});
$('#btnInsertar').click(function () {
InsertarItem();
});
$("#btnsFiltraTipoRegistro").ButtonSwitch('set', "0");
$('#btnsFiltraTipoRegistro').change(function () {
var IsGeneradas = $('#btnsFiltraTipoRegistro').val() == 0 ? false : true;
obtenerItems(IsGeneradas);
});
$('#ddtipo_Identificacion').unbind('change');
$('#ddtipo_Identificacion').change(function () {
CleanIdentificacion();
ShowDiv('Identificacion');
//TipoIdentificacionOnChange(false, null);
});
limpiar();
obtenerItems(false);
//$("#btnsForzarRenovacion").ButtonSwitch('set', _decision);
//limpiar();
});
//#endregion
this.obtenerItems = function (IsGeneradas) {
var uri = 'api/ControlCarteraAPI/ObtenerControlCartera?Generada=' + IsGeneradas;
var CatalogoItem = [];
$.getJSON(server + uri).done(function (data) {
TableItems = $('#TableItems').DataTable();
TableItems.clear().draw();
if (data != null) {
$.each(data, function (key, item) {
var fechaCreacion = moment(item.FechaCreacion).format("DD-MMMM-YYYY");
var fechaVenc = moment(item.FechaVencimiento).format("DD-MMMM-YYYY");
var monto = CustomNumberFormat(item.MontoLinea == null ? 0 : item.MontoLinea, 2, item.IdMoneda == 1 ? "$ " : "¢ ", ".", ",")
CatalogoItem.push({
IdCartera: item.IdCartera,
IdLinea: item.IdLinea,
NombreCliente: item.NombreCliente,
MontoSinFormato: item.MontoLinea,
MontoLinea: monto,
IdMoneda: item.IdMoneda,
Moneda: item.Moneda != null && item.Moneda.Descripcion != null ? item.Moneda.Descripcion : "",
FechaVencimiento: fechaVenc == "Invalid date" ? item.FechaVencimiento : fechaVenc,
Comentarios: item.Comentarios,
UsuarioCreador: item.UsuarioCreador,
FechaCreacion: fechaCreacion == "Invalid date" ? item.FechaCreacion : fechaCreacion,
SolicitudGenerada: item.SolicitudGenerada == true ? "Si" : "No",
IdSolicitud: item.IdSolicitud,
Incidente: item.Incidente,
FechaIncidente: item.FechaIncidente,
ForzarRenovacion: item.ForzarRenovacion,
IdTipoCategoria: item.IdTipoCategoria,
TipoCategoria: item.TipoCategoria != null && item.TipoCategoria.Descripcion != null ? item.TipoCategoria.Descripcion : "",
IdTipoCliente: item.IdTipoCliente,
TipoCliente: item.TipoCliente != null && item.TipoCliente.Descripcion != null ? item.TipoCliente.Descripcion : "",
IdClasificacionCliente: item.IdClasificacionCliente,
ClasificacionCliente: item.ClasificacionCliente != null && item.ClasificacionCliente.Descripcion != null ? item.ClasificacionCliente.Descripcion : "",
IdTipoIngreso: item.IdTipoIngreso,
TipoIngreso: item.TipoFuenteIngreso != null && item.TipoFuenteIngreso.Descripcion != null ? item.TipoFuenteIngreso.Descripcion : "",
IdTipoSolicitante: item.IdTipoSolicitante,
TipoSolicitante: item.TipoSolicitante != null && item.TipoSolicitante.Descripcion != null ? item.TipoSolicitante.Descripcion : "",
IdTipoIdentificacion: item.IdTipoIdentificacion != null ? item.IdTipoIdentificacion : "",
NumeroIdentificacion: item.NumeroIdentificacion != null ? item.NumeroIdentificacion : ""
});
});
}
var Seleccionar = "";
if (IsGeneradas == false)
Seleccionar = $("#ucItemsCatalogo").html();
var columnDefinition = [
{ "data": null, className: "center", defaultContent: Seleccionar },
{ "data": "IdLinea" },
{ "data": "NombreCliente" },
{ "data": "MontoLinea" },
{ "data": "Moneda" },
{ "data": "FechaVencimiento" },
{ "data": "Comentarios" },
{ "data": "UsuarioCreador" },
{ "data": "FechaCreacion" },
{ "data": "SolicitudGenerada" },
{ "data": "IdSolicitud" },
{ "data": "Incidente" },
{ "data": "TipoCategoria" },
{ "data": "ClasificacionCliente" },
{ "data": "TipoCliente" },
{ "data": "TipoIngreso" },
{ "data": "TipoSolicitante" }
];
$('#TableItems').TableInitSpanish(1, true, true, true, true, columnDefinition, CatalogoItem);
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo mas tarde");
}).then(function (value) {
ENDREQUEST();
});
}
this.ActualizarItem = function () {
if (!$("#formCatalogo").valid()) {
toastr.warning("Ingresar todos los campos que son requeridos.");
return false;
}
if (!confirm("Se guardarán los cambios.\n ¿Desea continuar?"))
{ return; }
TableItems = $('#TableItems').DataTable();
Item = {
IdCartera: $("#hiddenId").val(),
IdLinea: $('#txtNumLinea').val(),
NombreCliente: $('#txtNombreCliente').val(),
MontoLinea: $('#txtMontoLinea').autoNumeric('get'),
IdMoneda: $("#hiddenMoneda").val(),
FechaVencimiento: moment($("#txtFeVencimiento").val(), "DD-MMMM-YYYY").toJSON(),
Comentarios: $('#txtComentarios').val(),
IdSolicitud: idSolicitud,
Incidente: ' ',
UsuarioCreador: $("#hiddenUserID").val(),
IdTipoCategoria: $("#hiddenCategoriaOferta").val() == "" ? null : $("#hiddenCategoriaOferta").val(),
IdTipoCliente: $("#hiddenTipoCliente").val() == "" ? null : $("#hiddenTipoCliente").val(),
IdClasificacionCliente: $("#hiddenClasificacionCliente").val() == "" ? null : $("#hiddenClasificacionCliente").val(),
IdTipoIngreso: $("#hiddenTipoIngreso").val() == "" ? null : $("#hiddenTipoIngreso").val(),
IdTipoSolicitante: $("#hiddenParticipantesTipoParticipacion").val() == "" ? null : $("#hiddenParticipantesTipoParticipacion").val(),
IdTipoIdentificacion: GetIdTipoIdentificacion(),
NumeroIdentificacion: GetIdentificacion()
}
var uri = 'api/ControlCarteraAPI/ModificarItem/';
var DTO = JSON.stringify(Item);
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DTO,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data.CodigoRespuesta == "EXITOSO") {
toastr.info('Información guardada con exito', 'Completado');
limpiar();
$('#btnGuardar').hide();
$('#btnInsertar').show();
TableItems.clear().draw();
obtenerItems(false);
}
else if (data.CodigoRespuesta == "ADVERTENCIA") {
toastr.warning(data.DescripcionRespuesta, 'Advertencia');
ENDREQUEST();
}
else {
toastr.warning('Ha ocurrido un error inesperado al tratar de Registrar el Control de Cartera<br>Por favor contactar al Administrador del Sistema', 'Error');
ENDREQUEST();
}
}
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo.");
}).then(function (value) {
});
}
this.InsertarItem = function () {
if (!$("#formCatalogo").valid()) {
toastr.warning("Ingresar todos los campos que son requeridos.");
return false;
}
if (!confirm("Va a ingresar un nuevo Control Cartera.\n ¿Desea continuar?"))
{ return; }
TableItems = $('#TableItems').DataTable();
Item = {
IdCartera: $("#hiddenId").val(),
IdLinea: $('#txtNumLinea').val(),
NombreCliente: $('#txtNombreCliente').val(),
MontoLinea: $('#txtMontoLinea').autoNumeric('get'),
IdMoneda: $("#hiddenMoneda").val(),
FechaVencimiento: moment($("#txtFeVencimiento").val(), "DD-MMMM-YYYY").toJSON(),
Comentarios: $('#txtComentarios').val(),
IdSolicitud: idSolicitud,
Incidente: ' ',
UsuarioCreador: $("#hiddenUserID").val(),
IdTipoCategoria: $("#hiddenCategoriaOferta").val() == "" ? null : $("#hiddenCategoriaOferta").val(),
IdTipoCliente: $("#hiddenTipoCliente").val() == "" ? null : $("#hiddenTipoCliente").val(),
IdClasificacionCliente: $("#hiddenClasificacionCliente").val() == "" ? null : $("#hiddenClasificacionCliente").val(),
IdTipoIngreso: $("#hiddenTipoIngreso").val() == "" ? null : $("#hiddenTipoIngreso").val(),
IdTipoSolicitante: $("#hiddenParticipantesTipoParticipacion").val() == "" ? null : $("#hiddenParticipantesTipoParticipacion").val(),
IdTipoIdentificacion: GetIdTipoIdentificacion(),
NumeroIdentificacion: GetIdentificacion()
}
var uri = 'api/ControlCarteraAPI/InsertarItem/';
var DTO = JSON.stringify(Item);
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DTO,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data.CodigoRespuesta == "EXITOSO") {
toastr.info('Información guardada con exito', 'Completado');
limpiar();
$('#btnGuardar').hide();
$('#btnInsertar').show();
TableItems.clear().draw();
obtenerItems(false);
}
else if (data.CodigoRespuesta == "ADVERTENCIA") {
toastr.warning(data.DescripcionRespuesta, 'Advertencia');
ENDREQUEST();
}
else {
toastr.warning('Ha ocurrido un error inesperado al tratar de Registrar el Control de Cartera<br>Por favor contactar al Administrador del Sistema', 'Error');
ENDREQUEST();
}
}
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo.");
}).then(function (value) {
});
}
this.limpiar = function () {
$('#lbTituloAccion').empty();
$('#lbTituloAccion').append('Ingresar Nuevo Control Cartera');
$('#txtNumLinea').val('');
$('#txtNombreCliente').val('');
$('#txtMoneda').val('');
$('#txtMontoLinea').val('');
$('#txtDescripcionDivisionCIIU').val('');
$('#txtFeVencimiento').val('');
$('#txtComentarios').val('');
$('#btnsForzarRenovacion').empty();
$('#hiddenId').val('')
$("#hiddenTipoIngreso").val('');
$("#hiddenTipoCliente").val('');
$("#hiddenCategoriaOferta").val(EnumCategoria.Estudio_Seguimiento.codigo);
$("#hiddenClasificacionCliente").val(EnumClasificacionCliente.Actual.codigo)
$("#hiddenParticipantesTipoParticipacion").val(EnumTipoSolicitante.Deudor.codigo);
$("#txtTipoIngreso").val('');
//$("#txtTipoCliente").val('');
$("#txtCategoriaOferta").val(EnumCategoria.Estudio_Seguimiento.descripcion);
$("#txtClasificacionCliente").val(EnumClasificacionCliente.Actual.descripcion);
$("#txtParticipantesTipoParticipacion").val(EnumTipoSolicitante.Deudor.descripcion);
$("#formCatalogo").validateElement("#txtNumLinea");
$("#formCatalogo").validateElement("#txtNombreCliente");
$("#formCatalogo").validateElement("#txtMontoLinea");
$("#formCatalogo").validateElement("#txtMoneda");
$("#formCatalogo").validateElement("#txtFeVencimiento");
$("#formCatalogo").validateElement("#txtComentarios");
$("#formCatalogo").validateElement("#txtCategoriaOferta");
//$("#formCatalogo").validateElement("#txtTipoCliente");
$("#formCatalogo").validateElement("#txtClasificacionCliente");
$("#formCatalogo").validateElement("#txtTipoIngreso");
$("#formCatalogo").validateElement("#txtParticipantesTipoParticipacion");
}
$('#TableItems').on('click', 'button', function () {
var data = $('#TableItems').DataTable().row($(this).parents('tr')).data();
if ($('#hiddenActualizar').val() == "true") {
$("#hiddenMoneda").val(data.IdMoneda)
ToggleMoneda();
$('#txtNumLinea').val(data.IdLinea);
$('#txtNombreCliente').val(data.NombreCliente);
$('#txtMontoLinea').val(data.MontoLinea);
$('#txtMoneda').val(data.Moneda);
$('#txtFeVencimiento').val(data.FechaVencimiento);
$('#txtComentarios').val(data.Comentarios);
$("#hiddenCategoriaOferta").val(data.IdTipoCategoria)
$("#hiddenTipoCliente").val(data.IdTipoCliente)
$("#hiddenClasificacionCliente").val(data.IdClasificacionCliente)
$("#hiddenTipoIngreso").val(data.IdTipoIngreso)
$("#hiddenParticipantesTipoParticipacion").val(data.IdTipoSolicitante)
$("#txtCategoriaOferta").val(data.TipoCategoria)
$("#txtClasificacionCliente").val(data.ClasificacionCliente)
$("#txtTipoIngreso").val(data.TipoIngreso)
$("#txtParticipantesTipoParticipacion").val(data.TipoSolicitante)
$('#hiddenId').val(data.IdCartera)
CargarDatosDeudoresInicio(data);
$("#formCatalogo").validateElement("#txtNumLinea");
$("#formCatalogo").validateElement("#txtNombreCliente");
$("#formCatalogo").validateElement("#txtMontoLinea");
$("#formCatalogo").validateElement("#txtMoneda");
$("#formCatalogo").validateElement("#txtFeVencimiento");
$("#formCatalogo").validateElement("#txtComentarios");
$("#formCatalogo").validateElement("#txtCategoriaOferta");
//$("#formCatalogo").validateElement("#txtTipoCliente");
$("#formCatalogo").validateElement("#txtClasificacionCliente");
$("#formCatalogo").validateElement("#txtTipoIngreso");
$("#formCatalogo").validateElement("#txtParticipantesTipoParticipacion");
$('#lbTituloAccion').empty();
$('#lbTituloAccion').append('Editar Valor de Campo ID: ' + data.IdCartera);
$('#btnInsertar').hide();
$('#btnGuardar').show();
}
if ($('#hiddenEliminar').val() == "true") {
}
$('#hiddenActualizar').val('false');
$('#hiddenEliminar').val('false');
ToggleTipoCliente();
});
this.DataCatalogo = function (SelectedCatalog, data) {
if (SelectedCatalog == "Moneda") {
ToggleMoneda();
}
}
this.ToggleMoneda = function () {
if ($("#hiddenMoneda").val() == "1") {
$("#txtMontoLinea").autoNumeric('update', { aSign: '$ ' });
}
else {
$("#txtMontoLinea").autoNumeric('update', { aSign: '¢ ' });
}
}
this.ToggleTipoCliente = function () {
if ($("#hiddenTipoCliente").val() == "2") {
$("#txtTipoIngreso").noRequired();
$("#btnTipoIngreso").disable();
}
else {
$("#txtTipoIngreso").required();
$("#btnTipoIngreso").enable();
}
}
this.BuscarClienteSAP = function () {
var uri = "api/SAPServicioIntegracionAPI/ConsultaBP/"
var DTO = JSON.stringify({
NumeroCliente: null,
Identificacion: GetIdentificacion(),
NumeroLinea: null,
NumeroSolicitud: null
});
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DTO,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data != null) {
if ((data.Identificacion != null || data.Identificacion != "") && GetIdTipoIdentificacion() == "9") {
ConsultaRegistroNacional(DTO, data);
}
else if ((data.Identificacion != null || data.Identificacion != "") && (GetIdTipoIdentificacion() == "1" || GetIdTipoIdentificacion() == "2" || GetIdTipoIdentificacion() == "3")) {
ConsultaRegistroCivil(DTO, data);
}
}
}
}).fail(function (jqxhr, textStatus, error) {
if (typeof AjaxFailEvent !== 'undefined' && $.isFunction(AjaxFailEvent) && !AjaxFailEvent(jqxhr, textStatus, error))
return;
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo mas tarde");
ENDREQUEST();
}).then(function (value) {
ENDREQUEST();
});
}
this.ConsultaRegistroCivil = function (DatosEntrada, data) {
var uri = "api/SAPServicioIntegracionAPI/ConsultaRegistroCivil/"
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DatosEntrada,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: false,
success: function (DataSalida) {
if (DataSalida != null) {
if (DataSalida.Nombre != null && DataSalida.Nombre != "") {
$('#txtNombreCliente').val(DataSalida.Nombre + " " + DataSalida.Apellido1 + " " + DataSalida.Apellido2)
$("#hiddenTipoCliente").val("1")
$("#formCatalogo").validateElement("#txtNombreCliente");
ToggleTipoCliente();
}
else {
toastr.warning("No se encontro información para la identificación.");
}
}
}
}).fail(function (jqxhr, textStatus, error) {
if (typeof AjaxFailEvent !== 'undefined' && $.isFunction(AjaxFailEvent) && !AjaxFailEvent(jqxhr, textStatus, error))
return;
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo mas tarde");
ENDREQUEST();
}).then(function (value) {
ENDREQUEST();
});
}
this.ConsultaRegistroNacional = function (DatosEntrada, data) {
var uri = "api/SAPServicioIntegracionAPI/ConsultaRegistroNacional/"
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DatosEntrada,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
async: false,
success: function (DataSalida) {
if (DataSalida != null) {
if (DataSalida.RazonSocial != null && DataSalida.RazonSocial != "") {
$('#txtNombreCliente').val(DataSalida.RazonSocial)
$("#hiddenTipoCliente").val("2")
$("#formCatalogo").validateElement("#txtNombreCliente");
ToggleTipoCliente();
}
} else {
toastr.warning("No se encontro información para la identificación.");
}
}
}).fail(function (jqxhr, textStatus, error) {
if (typeof AjaxFailEvent !== 'undefined' && $.isFunction(AjaxFailEvent) && !AjaxFailEvent(jqxhr, textStatus, error))
return;
toastr.error("Ha ocurrido un error inesperado. Vuela a intentarlo mas tarde");
ENDREQUEST();
}).then(function (value) {
ENDREQUEST();
});
}
this.SetIdTipoIdentificacion = function (valor) {
impostar_tipo_identificacion('Identificacion', valor);
}
this.SetIdentificacion = function (valor) {
impostar_identificacion('Identificacion', valor);
}
this.CleanIdentificacion = function () {
limpiar_identificacion('Identificacion');
}
this.GetIdTipoIdentificacion = function () {
return obtener_tipo_identificacion('Identificacion')
}
this.GetIdentificacion = function () {
return obtener_identificacion('Identificacion');
}
this.CargarDatosDeudoresInicio = function (data) {
if (data.IdTipoIdentificacion != null) {
SetIdTipoIdentificacion(data.IdTipoIdentificacion);
SetIdentificacion(data.NumeroIdentificacion);
}
}