122 lines
3.9 KiB
C#
122 lines
3.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using Ultimus.Utilitarios;
|
|
using ULA.Cathay.CreditoModel.Credito;
|
|
using System.Data.Entity;
|
|
using System.Data.Entity.Validation;
|
|
|
|
namespace ULA.Cathay.CreditoModel.DAL.Credito
|
|
{
|
|
public class FomalizacionInfoAdicional_CuentasCartaMisivaDAL
|
|
{
|
|
UltimusLogs logs = new UltimusLogs("FomalizacionInfoAdicional_CuentasCartaMisivaDAL");
|
|
|
|
public List<FomalizacionInfoAdicional_CuentasCartaMisiva> Obtener(FormaliacionInformacionAdicional model)
|
|
{
|
|
List<FomalizacionInfoAdicional_CuentasCartaMisiva> lista;
|
|
try
|
|
{
|
|
using (CreditoContex db = new CreditoContex())
|
|
{
|
|
lista = db.FomalizacionInfoAdicional_CuentasCartaMisiva.Where(c => c.IdSolicitud == model.IdSolicitud &&
|
|
model.Incident == c.Incident ).ToList();
|
|
}
|
|
|
|
}
|
|
catch (DbEntityValidationException ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
|
|
return lista;
|
|
}
|
|
|
|
public FomalizacionInfoAdicional_CuentasCartaMisiva InsertarActualizar(FomalizacionInfoAdicional_CuentasCartaMisiva model)
|
|
{
|
|
try
|
|
{
|
|
using (CreditoContex db = new CreditoContex())
|
|
{
|
|
var lista_actual = db.FomalizacionInfoAdicional_CuentasCartaMisiva.AsNoTracking().Where(c => c.IdSolicitud == model.IdSolicitud &&
|
|
model.Incident == c.Incident && c.IdCuenta == model.IdCuenta).FirstOrDefault();
|
|
|
|
if (lista_actual == null)
|
|
{
|
|
int? MaxID = db.FomalizacionInfoAdicional_CuentasCartaMisiva.Max(c => (int?)c.IdCuenta);
|
|
|
|
|
|
model.IdCuenta = MaxID.HasValue ? MaxID.Value + 1 : 1;
|
|
model.Fecha = DateTime.Now;
|
|
db.FomalizacionInfoAdicional_CuentasCartaMisiva.Add(model);
|
|
}
|
|
else
|
|
{
|
|
db.FomalizacionInfoAdicional_CuentasCartaMisiva.Attach(model);
|
|
db.Entry<FomalizacionInfoAdicional_CuentasCartaMisiva>(model).State = EntityState.Modified;
|
|
}
|
|
|
|
db.SaveChanges();
|
|
|
|
}
|
|
|
|
}
|
|
catch (DbEntityValidationException ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
|
|
return model;
|
|
}
|
|
|
|
public FomalizacionInfoAdicional_CuentasCartaMisiva Remover(FomalizacionInfoAdicional_CuentasCartaMisiva model)
|
|
{
|
|
FomalizacionInfoAdicional_CuentasCartaMisiva actual;
|
|
try
|
|
{
|
|
using (CreditoContex db = new CreditoContex())
|
|
{
|
|
actual = db.FomalizacionInfoAdicional_CuentasCartaMisiva.Where(c => c.IdSolicitud == model.IdSolicitud &&
|
|
model.Incident == c.Incident && c.IdCuenta == model.IdCuenta).FirstOrDefault();
|
|
|
|
if (actual != null)
|
|
{
|
|
db.FomalizacionInfoAdicional_CuentasCartaMisiva.Remove(actual);
|
|
db.SaveChanges();
|
|
}
|
|
}
|
|
|
|
}
|
|
catch (DbEntityValidationException ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
logs.Error(ex);
|
|
throw ex;
|
|
}
|
|
finally
|
|
{
|
|
actual = null;
|
|
}
|
|
|
|
return model;
|
|
}
|
|
|
|
|
|
}
|
|
}
|