TFS_ANTIGUO/PrendarioDavivienda/SlnDavivienda/ULA.Davivienda.PrestamoAutos/Ultimus.Framework/Ultimus.API.BeneficiarioSeguro.js

296 lines
8.4 KiB
JavaScript

//#region GLOBALES
var tableItemsBeneficiario = null;
var infoBeneficiario = [];
var readOnlyForm = false;
var idRubroSeguro = null;
//#endregion
jQuery(document).ready(function () {
try {
tableItemsBeneficiario = $('#TableItemsBeneficiariosPoliza').DataTable();
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al inicializar el formulario de beneficiarios de seguro. Vuelva a intentarlo mas tarde", Message_Error);
}
});
$("#btnAgregarBeneficiario").click(function () {
try {
guardarBeneficiario();
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al invocar el metodo de guardar el beneficiario. Vuelva a intentarlo.");
}
});
this.initializeFormBeneficiarios = function (_IsReadOnly, _form, _idRubroSeguro) {
try {
readOnlyForm = _IsReadOnly;
idRubroSeguro = _idRubroSeguro;
switch (_IsReadOnly) {
case true:
$("#divSelectorBeneficiarioAgregar").attr("disabled", true);
$("#divSelectorBeneficiarioAgregar").attr("style", "display:none;");
break;
case false:
$("#divSelectorBeneficiarioAgregar").attr("disabled", false);
$("#divSelectorBeneficiarioAgregar").attr("style", "display:block;");
break;
}
GetControlsSettings("_BeneficiarioSeguro", "_BeneficiarioSeguro", _form, false);
getDataModelBeneficiario();
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al cargar los beneficiarios de seguro. Vuelva a intentarlo mas tarde", Message_Error);
}
}
this.limpiarBeneficiario = function(){
try {
//Identificacion
impostar_identificacion('IdentificacionBeneficiarioPoliza', "00-0000-0000");
//TipoIdentificacion
impostar_tipo_identificacion('IdentificacionBeneficiarioPoliza', 0);
//NombreBeneficiarioPoliza
$("#txtNombreBeneficiarioPoliza").val("");
//ParentescoBeneficiarioPoliza
$("#txtParentescoBeneficiarioPoliza").val("");
//TelefonoBeneficiarioPoliza
$("#txtTelefonoBeneficiarioPoliza").val("");
//DireccionBeneficiarioPoliza
$("#txtDireccionBeneficiarioPoliza").val("");
//FechaNacimientoBeneficiarioPoliza
$("#txtFechaNacimientoBeneficiarioPoliza").val("");
//PorcBeneficiarioPoliza
$("#txtPorcBeneficiarioPoliza").autoNumeric('set', "0.00");
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al limpiar los campos de beneficiario del formulario. Vuelva a intentarlo mas tarde", Message_Error);
}
}
this.getDataModelBeneficiario = function () {
var uri = 'api/BeneficiarioAPI/ObtenerBeneficiarioSeguroSolicitud?IdSolicitud=' + $("#hiddensol_co_solicitud").val();
$.getJSON(server + uri).done(function (data) {
/*
var item = $("#ddlBeneficiario option:selected");
if (item.val().trim() == "" || item.val().trim() == "-1") {
toastr.error("Por favor seleccione una opción de la lista de Beneficiarios antes de agregar.");
return false;
}
var option = $("#ucItemsBeneficiario").html();
option = replaceAll("[$CodItem]", item.val(), option);
tableItemsBeneficiario.row.add([item.val(), item.text(), option]).draw();
*/
infoBeneficiario = data;
tableItemsBeneficiario.clear().draw();
var option = $("#ucItemsBeneficiario").html();
var buttonItem = { "data": null, className: "center", defaultContent: option };
//Si es solo lectura oculta el boton de accion
if (readOnlyForm) {
buttonItem.className = "hidden";
}
var columnDefinition = [
buttonItem,
{ "data": "IdBeneficiarioSeguro", className: "hidden" },
{ "data": "IdSolicitud", className: "hidden" },
{ "data": "IdRubroSeguro", className: "hidden" },
{ "data": "Identificacion" },
{ "data": "NombreCompleto" },
{ "data": "Porcentaje" },
];
$('#TableItemsBeneficiariosPoliza').TableInit(0, false, true, false, false, columnDefinition, infoBeneficiario);
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo mas tarde");
}).then(function (value) {
ENDREQUEST();
});
}
this.guardarBeneficiario = function () {
try {
var _model = {
IdBeneficiarioSeguro: null,
IdSolicitud: $("#hiddensol_co_solicitud").val(),
IdRubroSeguro: idRubroSeguro,
IdTipoIdentificacion: obtener_tipo_identificacion('IdentificacionBeneficiarioPoliza'),
Identificacion: obtener_identificacion('IdentificacionBeneficiarioPoliza'),
NombreCompleto: $("#txtNombreBeneficiarioPoliza").val().toUpperCase(),
Parentesco: $("#txtParentescoBeneficiarioPoliza").val().toUpperCase(),
Telefono: $("#txtTelefonoBeneficiarioPoliza").val(),
Direccion: $("#txtDireccionBeneficiarioPoliza").val(),
FechaNacimiento: $('#txtFechaNacimientoBeneficiarioPoliza').val() == "" ? null : moment($('#txtFechaNacimientoBeneficiarioPoliza').val(), "DD/MM/YYYY").toJSON(),
Porcentaje: $("#txtPorcBeneficiarioPoliza").autoNumeric('get')
}
if (_model.IdTipoIdentificacion == "0") {
toastr.warning("Por favor seleccione el tipo de identificación del beneficiario.", Message_Warning);
return false;
}
if (_model.Identificacion == "") {
toastr.warning("Por favor llene la identificación del beneficiario.", Message_Warning);
return false;
}
if (_model.NombreCompleto == "") {
toastr.warning("Por favor llene el nombre del beneficiario.", Message_Warning);
return false;
}
if (_model.Parentesco == "") {
toastr.warning("Por favor llene el parentesco del beneficiario.", Message_Warning);
return false;
}
if (_model.Telefono == "") {
toastr.warning("Por favor llene el teléfono del beneficiario.", Message_Warning);
return false;
}
if (_model.Direccion == "") {
toastr.warning("Por favor llene la dirección del beneficiario.", Message_Warning);
return false;
}
if (_model.FechaNacimiento == "") {
toastr.warning("Por favor llene la fecha de nacimiento del beneficiario.", Message_Warning);
return false;
}
if (_model.Porcentaje == "0") {
toastr.warning("Por favor llene el porcentaje del beneficiario.", Message_Warning);
return false;
}
var uri = 'api/BeneficiarioAPI/InsertarBeneficiarioSeguroSolicitud/';
var DTO = JSON.stringify(_model);
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DTO,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data == "EXITOSO") {
toastr.info('Información guardada con exito', 'Completado');
limpiarBeneficiario();
getDataModelBeneficiario();
}
else {
toastr.error(data);
}
}
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo.");
ENDREQUEST();
}).then(function (value) {
ENDREQUEST();
});
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al guardar el beneficiario. Vuelva a intentarlo.");
}
}
this.eliminarBeneficiario = function (_button) {
try
{
var _data = $('#TableItemsBeneficiariosPoliza').DataTable().row($(_button).parents('tr')).data();
var _model = {
IdBeneficiarioSeguro: _data.IdBeneficiarioSeguro
}
var uri = 'api/BeneficiarioAPI/EliminarBeneficiarioSeguroSolicitud/';
var DTO = JSON.stringify(_model);
$.ajax({
type: 'POST',
url: server + uri,
cache: false,
data: DTO,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
if (data == "EXITOSO") {
toastr.info('Información eliminada con exito', 'Completado');
limpiarBeneficiario();
getDataModelBeneficiario();
}
else {
toastr.error("Ha ocurrido un error inesperado al eliminar el beneficiario. Vuelva a intentarlo.");
}
}
}).fail(function (jqxhr, textStatus, error) {
toastr.error("Ha ocurrido un error inesperado. Vuelva a intentarlo.");
ENDREQUEST();
}).then(function (value) {
ENDREQUEST();
});
} catch (e) {
toastr.error("Ha ocurrido un error inesperado al eliminar el beneficiario. Vuelva a intentarlo.");
}
}