public cxc_LiquidacionTarjeta_Info get_info(int IdEmpresa, int IdSucursal, decimal IdLiquidacion)
        {
            try
            {
                cxc_LiquidacionTarjeta_Info info = new cxc_LiquidacionTarjeta_Info();
                using (Entities_cuentas_por_cobrar Context = new Entities_cuentas_por_cobrar())
                {
                    cxc_LiquidacionTarjeta Entity = Context.cxc_LiquidacionTarjeta.Where(q => q.IdLiquidacion == IdLiquidacion && q.IdSucursal == IdSucursal && q.IdEmpresa == IdEmpresa).FirstOrDefault();

                    if (Entity == null)
                    {
                        return(null);
                    }
                    info = new cxc_LiquidacionTarjeta_Info
                    {
                        IdEmpresa     = Entity.IdEmpresa,
                        IdSucursal    = Entity.IdSucursal,
                        IdLiquidacion = Entity.IdSucursal,
                        IdBanco       = Entity.IdBanco,
                        Valor         = Entity.Valor,
                        Fecha         = Entity.Fecha,
                        Estado        = Entity.Estado,
                        IdEmpresa_ct  = Entity.IdEmpresa_ct,
                        IdTipoCbte_ct = Entity.IdTipoCbte_ct,
                        IdCbteCble_ct = Entity.IdCbteCble_ct,
                        Observacion   = Entity.Observacion,
                        Lote          = Entity.Lote
                    };
                }

                return(info);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool guardarDB(cxc_LiquidacionTarjeta_Info info)
        {
            try
            {
                using (Entities_cuentas_por_cobrar db = new Entities_cuentas_por_cobrar())
                {
                    var Entity = new cxc_LiquidacionTarjeta
                    {
                        IdEmpresa         = info.IdEmpresa,
                        IdSucursal        = info.IdSucursal,
                        IdLiquidacion     = info.IdLiquidacion = get_id(info.IdEmpresa, info.IdSucursal),
                        Lote              = info.Lote,
                        Fecha             = info.Fecha,
                        IdBanco           = info.IdBanco,
                        Observacion       = info.Observacion,
                        Estado            = info.Estado = true,
                        Valor             = info.Valor = Math.Round(info.ListaCobros.Sum(q => q.Valor), 2, MidpointRounding.AwayFromZero),
                        IdUsuarioCreacion = info.IdUsuarioCreacion,
                        FechaCreacion     = DateTime.Now
                    };
                    int Secuencia = 1;
                    foreach (var item in info.ListaCobros)
                    {
                        db.cxc_LiquidacionTarjeta_x_cxc_cobro.Add(new cxc_LiquidacionTarjeta_x_cxc_cobro
                        {
                            IdEmpresa     = info.IdEmpresa,
                            IdSucursal    = info.IdSucursal,
                            IdLiquidacion = info.IdLiquidacion,
                            Secuencia     = Secuencia++,
                            Valor         = item.Valor,
                            IdCobro       = item.IdCobro
                        });
                    }
                    Secuencia = 1;
                    foreach (var item in info.ListaDet)
                    {
                        var motivo = db.cxc_MotivoLiquidacionTarjeta_x_tb_sucursal.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdMotivo == item.IdMotivo).FirstOrDefault();
                        if (motivo != null)
                        {
                            item.IdCtaCble = motivo.IdCtaCble;
                        }
                        db.cxc_LiquidacionTarjetaDet.Add(new cxc_LiquidacionTarjetaDet
                        {
                            IdEmpresa     = info.IdEmpresa,
                            IdSucursal    = info.IdSucursal,
                            IdLiquidacion = info.IdLiquidacion,
                            Secuencia     = Secuencia++,
                            IdMotivo      = item.IdMotivo,
                            Porcentaje    = item.Porcentaje,
                            Valor         = item.Valor
                        });
                    }
                    db.cxc_LiquidacionTarjeta.Add(Entity);
                    db.SaveChanges();
                    var cobro_tipo = db.cxc_cobro_tipo_Param_conta_x_sucursal.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdCobro_tipo == "TARJ").FirstOrDefault();
                    if (cobro_tipo != null)
                    {
                        var CbteBan = ArmarDiario(info, cobro_tipo.IdCtaCble);
                        if (CbteBan != null)
                        {
                            if (data_cbteban.guardarDB(CbteBan, Info.Helps.cl_enumeradores.eTipoCbteBancario.NCBA))
                            {
                                Entity.IdEmpresa_ct  = info.IdEmpresa_ct = CbteBan.IdEmpresa;
                                Entity.IdTipoCbte_ct = info.IdTipoCbte_ct = CbteBan.IdTipocbte;
                                Entity.IdCbteCble_ct = info.IdCbteCble_ct = CbteBan.IdCbteCble;
                                db.SaveChanges();
                            }
                        }
                    }
                }

                return(true);
            }
            catch (Exception ex)
            {
                tb_LogError_Data LogData = new tb_LogError_Data();
                LogData.GuardarDB(new tb_LogError_Info {
                    Descripcion = ex.Message, InnerException = ex.InnerException == null ? null : ex.InnerException.Message, Clase = "cxc_LiquidacionTarjeta_Data", Metodo = "guardarDB", IdUsuario = info.IdUsuarioCreacion
                });
                return(false);
            }
        }