180 lines
No EOL
6.2 KiB
C#
180 lines
No EOL
6.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web.Http;
|
|
using Ultimus.Utilitarios;
|
|
using ULA.Cathay.CreditoModel.Credito;
|
|
using ULA.Cathay.CreditoModel.DAL.Credito;
|
|
using ULA.Cathay.Credito.Json;
|
|
using Ultimus.Interfaces;
|
|
using ULA.Cathay.CreditoModel.Entidades;
|
|
|
|
|
|
namespace ULA.Cathay.Credito.ControllersWebApi.RecopilacionInformacion
|
|
{
|
|
public class ValidarExcepcionesAPIController : ApiController
|
|
{
|
|
UltimusLogs logs = new UltimusLogs("ValidarExcepcionesAPIController");
|
|
|
|
|
|
[HttpPost]
|
|
public JsonSolicitud GuardarValidarExcepciones(JsonSolicitud model)
|
|
{
|
|
try
|
|
{
|
|
|
|
#region DetalleRequisitos
|
|
|
|
model.Solicitud.DetalleRequisitos = new DetalleRequisitosDAL().InsertasActualizar(model.Solicitud.DetalleRequisitos, model.UltimusStep);
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region BitacoraDocumentos
|
|
|
|
|
|
foreach (Solicitante _modelSolicitante in model.Solicitud.Solicitante)
|
|
{
|
|
var _modelBitacoraDocumentos = _modelSolicitante != null && _modelSolicitante.Cliente != null ? _modelSolicitante.Cliente.BitacoraDocumentosCliente : null;
|
|
|
|
if (_modelBitacoraDocumentos != null)
|
|
{
|
|
new BitacoraDocumentosClienteDAL().Actualizar(_modelBitacoraDocumentos.ToList(), model.UltimusStep, _modelSolicitante.Cliente);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
model.CodigoRespuesta = TipoCodigoRespuesta.EXITOSO.ToString();
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
model.CodigoRespuesta = TipoCodigoRespuesta.ERROR.ToString();
|
|
}
|
|
|
|
return model;
|
|
|
|
}
|
|
|
|
|
|
[HttpPost]
|
|
public BaseJson GuardarBitacoraValidarExcepciones(BitacoraEncValidarExcepciones model)
|
|
{
|
|
BaseJson _Resultado = new BaseJson();
|
|
try
|
|
{
|
|
using (CreditoContex db = new CreditoContex())
|
|
{
|
|
if (model != null)
|
|
{
|
|
#region BitacoraValidarExcepciones
|
|
|
|
//Obtiene los ID con que debe cargar el objeto
|
|
model.IdEtapa = db.Etapas.Where(x => x.DescripcionEtapa == model.Etapas.DescripcionEtapa).Select(x => x.IdEtapa).FirstOrDefault();
|
|
if (model.IdEtapa == 0 || model.IdEtapa == null) { throw new Exception("No fue posible obtener la información de registro para la etapa " + model.Etapas.DescripcionEtapa); }
|
|
|
|
|
|
int _IdTipoObservacion = 0;
|
|
|
|
switch (model.Etapas.DescripcionEtapa)
|
|
{
|
|
case EnumEtapas.Etapa_RE_ValidExcepAnalisis:
|
|
_IdTipoObservacion = EnumTipoObservacion.Analisis;
|
|
break;
|
|
case EnumEtapas.Etapa_RE_ValidExcepCumplimiento:
|
|
_IdTipoObservacion = EnumTipoObservacion.Cumplimiento;
|
|
break;
|
|
default:
|
|
_IdTipoObservacion = EnumTipoObservacion.Negocio;
|
|
break;
|
|
|
|
}
|
|
|
|
//Arma el objeto que se va a insertar
|
|
var _modalBitacoraEncValidarExcepciones = new BitacoraEncValidarExcepciones()
|
|
{
|
|
IdCliente = model.IdCliente,
|
|
IdEtapa = model.IdEtapa,
|
|
IdTipoObservacion = _IdTipoObservacion,
|
|
IdSolicitud = model.IdSolicitud,
|
|
JustificacionRechazo = model.JustificacionRechazo,
|
|
Decision = model.Decision,
|
|
BitacoraDetValidarExcepciones = model.BitacoraDetValidarExcepciones,
|
|
};
|
|
|
|
|
|
//Invoca el metodo de registro de la condicion
|
|
var _ResultBitacoraEncValidarExcepciones = new BitacoraEncValidarExcepcionesDAL().InsertarActualizar(_modalBitacoraEncValidarExcepciones);
|
|
|
|
|
|
//Evalua la respuesta del registro de la condicion
|
|
if (_ResultBitacoraEncValidarExcepciones.CodigoRespuesta != TipoCodigoRespuesta.EXITOSO.ToString())
|
|
{
|
|
throw new Exception(_ResultBitacoraEncValidarExcepciones.DescripcionRespuesta);
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
|
|
_Resultado.CodigoRespuesta = TipoCodigoRespuesta.EXITOSO.ToString();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
_Resultado.CodigoRespuesta = TipoCodigoRespuesta.ERROR.ToString();
|
|
}
|
|
|
|
return _Resultado;
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
public JsonSolicitud CargarBitacoraDocumentosSolicitante(JsonSolicitud model)
|
|
{
|
|
SolicitanteDAL SolicitanteDal;
|
|
ConsultaEpowerDAL ConsultaEpowerDal;
|
|
|
|
try
|
|
{
|
|
model = GuardarValidarExcepciones(model);
|
|
|
|
ConsultaEpowerDal = new ConsultaEpowerDAL();
|
|
SolicitanteDal = new SolicitanteDAL();
|
|
|
|
model.Solicitud.Solicitante = new List<Solicitante>();
|
|
|
|
model.ListaClientes = SolicitanteDal.ObtenerTipoSolicitantes(model.SolicitanteDocumento.IdSolicitud, model.SolicitanteDocumento.IdTipoSolicitante);
|
|
|
|
model.Solicitud.Solicitante.Add(SolicitanteDal.ObtenerSolicitanteDocumentos(model.SolicitanteDocumento));
|
|
|
|
model.Solicitud = ConsultaEpowerDal.ObtenerRutaConsultaDocumentos(model.Solicitud);
|
|
|
|
model.CodigoRespuesta = TipoCodigoRespuesta.EXITOSO.ToString();
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
model.CodigoRespuesta = TipoCodigoRespuesta.ERROR.ToString();
|
|
}
|
|
finally
|
|
{
|
|
SolicitanteDal = null;
|
|
ConsultaEpowerDal = null;
|
|
}
|
|
|
|
|
|
return model;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
} |