public bool guardarDB(ba_Catalogo_Info info)
 {
     try
     {
         using (Entities_banco Context = new Entities_banco())
         {
             ba_Catalogo Entity = new ba_Catalogo
             {
                 IdTipoCatalogo = info.IdTipoCatalogo,
                 IdCatalogo     = info.IdCatalogo,
                 ca_descripcion = info.ca_descripcion,
                 ca_estado      = info.ca_estado = "A"
             };
             Context.ba_Catalogo.Add(Entity);
             Context.SaveChanges();
         }
         return(true);
     }
     catch (Exception)
     {
         throw;
     }
 }
        public bool modificarDB(ba_Talonario_cheques_x_banco_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    ba_Talonario_cheques_x_banco Entity = Context.ba_Talonario_cheques_x_banco.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdBanco == info.IdBanco && q.Num_cheque == info.Num_cheque);
                    if (Entity == null)
                    {
                        return(false);
                    }

                    Entity.Usado  = info.Usado;
                    Entity.Estado = info.Estado_bool == true ? "A" : "I";

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool guardarDB(ba_parametros_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    ba_parametros Entity = Context.ba_parametros.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa);
                    if (Entity == null)
                    {
                        Entity = new ba_parametros
                        {
                            IdEmpresa = info.IdEmpresa,
                            CiudadDefaultParaCrearCheques = info.CiudadDefaultParaCrearCheques,
                            DiasTransaccionesAFuturo      = info.DiasTransaccionesAFuturo,
                            IdUsuario    = info.IdUsuario,
                            FechaTransac = DateTime.Now
                        };
                        Context.ba_parametros.Add(Entity);
                    }
                    else
                    {
                        Entity.CiudadDefaultParaCrearCheques = info.CiudadDefaultParaCrearCheques;
                        Entity.DiasTransaccionesAFuturo      = info.DiasTransaccionesAFuturo;

                        Entity.IdUsuarioUltMod = info.IdUsuarioUltMod;
                        Entity.FechaUltMod     = DateTime.Now;
                    }
                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
 public bool GuardarDbImportacion(List <ba_Banco_Cuenta_Info> Lista_Banco)
 {
     try
     {
         using (Entities_banco Context = new Entities_banco())
         {
             if (Lista_Banco.Count > 0)
             {
                 foreach (var item in Lista_Banco)
                 {
                     ba_Banco_Cuenta Entity = new ba_Banco_Cuenta
                     {
                         IdEmpresa               = item.IdEmpresa,
                         IdBanco                 = item.IdBanco,
                         IdBanco_Financiero      = item.IdBanco_Financiero,
                         ba_Tipo                 = item.ba_Tipo,
                         ba_Num_Cuenta           = item.ba_Num_Cuenta,
                         ba_num_digito_cheq      = item.ba_num_digito_cheq,
                         IdCtaCble               = item.IdCtaCble,
                         Estado                  = item.Estado = "A",
                         ba_descripcion          = item.ba_descripcion,
                         Imprimir_Solo_el_cheque = item.Imprimir_Solo_el_cheque,
                         EsFlujoObligatorio      = item.EsFlujoObligatorio
                     };
                     Context.ba_Banco_Cuenta.Add(Entity);
                     Context.SaveChanges();
                 }
             }
         }
         return(true);
     }
     catch (Exception)
     {
         throw;
     }
 }
        public bool anularDB(ba_Catalogo_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    ba_Catalogo Entity = Context.ba_Catalogo.FirstOrDefault(q => q.IdTipoCatalogo == info.IdTipoCatalogo && q.IdCatalogo == info.IdCatalogo);
                    if (Entity == null)
                    {
                        return(false);
                    }
                    Entity.ca_estado = info.ca_estado = "I";

                    Entity.IdUsuarioUltAnu = info.IdUsuarioUltAnu;
                    Entity.Fecha_UltAnu    = DateTime.Now;
                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #6
0
        public bool ContabilizarDB(ba_Archivo_Transferencia_Info info)
        {
            try
            {
                ba_Cbte_Ban_Data odata_cbte = new ba_Cbte_Ban_Data();
                tb_banco_procesos_bancarios_x_empresa_Data odataProceso = new tb_banco_procesos_bancarios_x_empresa_Data();
                using (Entities_banco db = new Entities_banco())
                {
                    var proceso = odataProceso.get_info(info.IdEmpresa, info.IdProceso_bancario);
                    if (proceso == null)
                    {
                        return(false);
                    }

                    var cbte = new ba_Cbte_Ban_Info
                    {
                        IdEmpresa      = info.IdEmpresa,
                        cb_Fecha       = info.Fecha,
                        IdSucursal     = info.IdSucursal,
                        IdBanco        = info.IdBanco,
                        cb_Observacion = "Archivo # " + info.IdArchivo.ToString() + " " + info.Observacion,
                        IdTipoNota     = proceso.IdTipoNota,
                        IdUsuario      = info.IdUsuario,
                        list_det       = new List <ba_Cbte_Ban_x_ba_TipoFlujo_Info>(info.Lst_Flujo.Select(q => new ba_Cbte_Ban_x_ba_TipoFlujo_Info
                        {
                            IdTipoFlujo = q.IdTipoFlujo,
                            Valor       = q.Valor,
                            Porcentaje  = q.Porcentaje,
                            IdEmpresa   = info.IdEmpresa
                        }).ToList()),
                        lst_det_ct = new List <ct_cbtecble_det_Info>(info.Lst_diario.Select(q => new ct_cbtecble_det_Info
                        {
                            IdCtaCble           = q.IdCtaCble,
                            dc_Valor            = q.dc_Valor,
                            dc_para_conciliar   = q.dc_para_conciliar,
                            IdCentroCosto       = q.IdCentroCosto,
                            IdPunto_cargo       = q.IdPunto_cargo,
                            IdPunto_cargo_grupo = q.IdPunto_cargo_grupo
                        }).ToList()),
                        lst_det_canc_op = new List <cp_orden_pago_cancelaciones_Info>(info.Lst_det.Select(q => new cp_orden_pago_cancelaciones_Info
                        {
                            IdEmpresa_op   = q.IdEmpresa_OP,
                            IdOrdenPago_op = q.IdOrdenPago,
                            Secuencia_op   = q.Secuencia_OP,

                            IdEmpresa_cxp  = q.IdEmpresa_cxp,
                            IdTipoCbte_cxp = q.IdTipoCbte_cxp,
                            IdCbteCble_cxp = q.IdCbteCble_cxp,
                            MontoAplicado  = q.Valor,

                            Observacion = "Archivo # " + info.IdArchivo.ToString() + " " + q.Referencia
                        }).ToList())
                    };
                    if (odata_cbte.guardarDB(cbte, Info.Helps.cl_enumeradores.eTipoCbteBancario.NDBA))
                    {
                        var Entity = db.ba_Archivo_Transferencia.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdArchivo == info.IdArchivo).FirstOrDefault();
                        if (Entity != null)
                        {
                            Entity.Contabilizado        = true;
                            Entity.Fecha_Proceso        = DateTime.Now;
                            Entity.IdUsuarioContabiliza = info.IdUsuario;
                            Entity.IdTipoCbte           = cbte.IdTipocbte;
                            Entity.IdCbteCble           = cbte.IdCbteCble;
                            db.SaveChanges();
                        }
                    }
                }


                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #7
0
        public bool ModificarDB(ba_Archivo_Transferencia_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    ba_Archivo_Transferencia Entity = Context.ba_Archivo_Transferencia.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdArchivo == info.IdArchivo).FirstOrDefault();
                    if (Entity == null)
                    {
                        return(false);
                    }

                    Entity.Nom_Archivo     = info.Nom_Archivo ?? " ";
                    Entity.Observacion     = info.Observacion;
                    Entity.IdUsuarioUltMod = info.IdUsuarioUltMod;
                    Entity.Fecha_UltMod    = DateTime.Now;

                    var Lst_det = Context.ba_Archivo_Transferencia_Det.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdArchivo == info.IdArchivo).ToList();
                    Context.ba_Archivo_Transferencia_Det.RemoveRange(Lst_det);
                    if (info.Lst_det.Count() > 0)
                    {
                        foreach (var item in info.Lst_det)
                        {
                            Context.ba_Archivo_Transferencia_Det.Add(new ba_Archivo_Transferencia_Det
                            {
                                IdEmpresa                = info.IdEmpresa,
                                IdArchivo                = info.IdArchivo,
                                Estado                   = item.Estado,
                                IdOrdenPago              = item.IdOrdenPago,
                                IdEmpresa_OP             = info.IdEmpresa,
                                Secuencia                = item.Secuencia,
                                Secuencial_reg_x_proceso = item.Secuencial_reg_x_proceso,
                                Secuencia_OP             = item.Secuencia_OP,
                                Valor      = item.Valor,
                                Referencia = item.Referencia
                            });
                        }
                    }
                    int Secuencia = 1;
                    info.Lst_Flujo = info.Lst_Flujo == null ? new List <ba_archivo_transferencia_x_ba_tipo_flujo_Info>() : info.Lst_Flujo;
                    var Lst_flujo = Context.ba_archivo_transferencia_x_ba_tipo_flujo.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdArchivo == info.IdArchivo).ToList();
                    Context.ba_archivo_transferencia_x_ba_tipo_flujo.RemoveRange(Lst_flujo);
                    if (info.Lst_Flujo.Count() > 0)
                    {
                        foreach (var item in info.Lst_Flujo)
                        {
                            Context.ba_archivo_transferencia_x_ba_tipo_flujo.Add(new ba_archivo_transferencia_x_ba_tipo_flujo
                            {
                                IdEmpresa   = info.IdEmpresa,
                                IdArchivo   = info.IdArchivo,
                                IdTipoFlujo = item.IdTipoFlujo,
                                Porcentaje  = item.Porcentaje,
                                Secuencia   = Secuencia++,
                                Valor       = item.Valor
                            });
                        }
                    }

                    Context.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 = "ba_Archivo_Transferencia_Data", Metodo = "ModificarDB", IdUsuario = info.IdUsuario
                });
                return(false);
            }
        }
Beispiel #8
0
        public bool GuardarDB(ba_Archivo_Transferencia_Info info)
        {
            try
            {
                info.Nom_Archivo = "PAGOS_MULTICASH_" + info.Fecha.ToString("yyyyMMdd") + "_01";
                using (Entities_banco Context = new Entities_banco())
                {
                    Context.ba_Archivo_Transferencia.Add(new ba_Archivo_Transferencia
                    {
                        IdEmpresa          = info.IdEmpresa,
                        IdArchivo          = info.IdArchivo = GetId(info.IdEmpresa),
                        cod_archivo        = info.cod_archivo ?? " ",
                        Cod_Empresa        = info.Cod_Empresa = "",
                        Contabilizado      = info.Contabilizado,
                        Estado             = true,
                        Fecha              = info.Fecha.Date,
                        IdBanco            = info.IdBanco,
                        IdProceso_bancario = info.IdProceso_bancario,
                        Nom_Archivo        = info.Nom_Archivo,
                        Observacion        = info.Observacion,
                        IdUsuario          = info.IdUsuario,
                        Fecha_Transac      = DateTime.Now,
                        IdSucursal         = info.IdSucursal,
                        SecuencialInicial  = info.SecuencialInicial
                    });

                    int Secuencia = 1;
                    if (info.Lst_det.Count() > 0)
                    {
                        foreach (var item in info.Lst_det)
                        {
                            Context.ba_Archivo_Transferencia_Det.Add(new ba_Archivo_Transferencia_Det
                            {
                                IdEmpresa                = info.IdEmpresa,
                                IdArchivo                = info.IdArchivo,
                                Estado                   = item.Estado,
                                IdOrdenPago              = item.IdOrdenPago,
                                IdEmpresa_OP             = info.IdEmpresa,
                                Secuencia                = Secuencia++,
                                Secuencial_reg_x_proceso = item.Secuencial_reg_x_proceso,
                                Secuencia_OP             = item.Secuencia_OP,
                                Referencia               = item.Referencia,

                                Valor = item.Valor
                            });
                        }
                    }

                    info.Lst_Flujo = info.Lst_Flujo == null ? new List <ba_archivo_transferencia_x_ba_tipo_flujo_Info>() : info.Lst_Flujo;
                    if (info.Lst_Flujo.Count() > 0)
                    {
                        foreach (var item in info.Lst_Flujo)
                        {
                            Context.ba_archivo_transferencia_x_ba_tipo_flujo.Add(new ba_archivo_transferencia_x_ba_tipo_flujo
                            {
                                IdEmpresa   = info.IdEmpresa,
                                IdArchivo   = info.IdArchivo,
                                IdTipoFlujo = item.IdTipoFlujo,
                                Porcentaje  = item.Porcentaje,
                                Secuencia   = Secuencia++,
                                Valor       = item.Valor
                            });
                        }
                    }


                    Context.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 = "ba_Archivo_Transferencia_Data", Metodo = "GuardarDB", IdUsuario = info.IdUsuario
                });
                return(false);
            }
        }
        public bool modificarDB(ba_Conciliacion_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    var Entity = Context.ba_Conciliacion.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdConciliacion == info.IdConciliacion).FirstOrDefault();
                    if (Entity == null)
                    {
                        return(false);
                    }
                    Entity.co_Fecha                = info.co_Fecha;
                    Entity.IdEstado_Concil_Cat     = info.IdEstado_Concil_Cat;
                    Entity.co_SaldoContable_MesAnt = info.co_SaldoContable_MesAnt;
                    Entity.co_totalIng             = info.co_totalIng;
                    Entity.co_totalEgr             = info.co_totalEgr;
                    Entity.co_SaldoContable_MesAct = info.co_SaldoContable_MesAct;
                    Entity.co_SaldoBanco_EstCta    = info.co_SaldoBanco_EstCta;
                    Entity.co_SaldoBanco_anterior  = info.co_SaldoBanco_anterior;
                    Entity.co_Observacion          = info.co_Observacion;

                    var lst = Context.ba_Conciliacion_det_IngEgr.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdConciliacion == info.IdConciliacion);
                    Context.ba_Conciliacion_det_IngEgr.RemoveRange(lst);

                    int secuencia = 1;
                    foreach (var item in info.lst_det)
                    {
                        Context.ba_Conciliacion_det_IngEgr.Add(new ba_Conciliacion_det_IngEgr
                        {
                            IdEmpresa         = info.IdEmpresa,
                            IdConciliacion    = info.IdConciliacion,
                            Secuencia         = secuencia++,
                            tipo_IngEgr       = item.tipo_IngEgr,
                            IdTipocbte        = item.IdTipocbte,
                            IdCbteCble        = item.IdCbteCble,
                            SecuenciaCbteCble = item.SecuenciaCbteCble,
                            Estado            = "A",
                            @checked          = item.seleccionado
                        });
                        if (info.IdEstado_Concil_Cat == "CONCILIADO")
                        {
                            var cbte = Context.ba_Cbte_Ban.Where(q => q.IdEmpresa == info.IdEmpresa && item.IdTipocbte == q.IdTipocbte && q.IdCbteCble == item.IdCbteCble).FirstOrDefault();
                            if (cbte != null)
                            {
                                cbte.IdEstado_cheque_cat = "ESTCBCOB";
                            }
                        }
                    }
                    var lstd = Context.ba_Conciliacion_det.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdConciliacion == info.IdConciliacion);
                    Context.ba_Conciliacion_det.RemoveRange(lstd);

                    if (info.List_detalle.Count() > 0)
                    {
                        foreach (var item in info.List_detalle)
                        {
                            Context.ba_Conciliacion_det.Add(new ba_Conciliacion_det
                            {
                                IdEmpresa      = info.IdEmpresa,
                                IdConciliacion = info.IdConciliacion,
                                IdTipocbte     = item.IdTipocbte,
                                Fecha          = item.Fecha,
                                Observacion    = item.Observacion,
                                Referencia     = item.Referencia,
                                Secuencia      = item.Secuencia,
                                Seleccionado   = item.Seleccionado,
                                tipo_IngEgr    = item.tipo_IngEgr,
                                Valor          = item.Valor
                            });
                        }
                    }
                    Context.SaveChanges();
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #10
0
        public bool modificarDB(ba_Cbte_Ban_Info info, cl_enumeradores.eTipoCbteBancario TipoCbteBanco)
        {
            Entities_banco             Context_b   = new Entities_banco();
            Entities_contabilidad      Context_ct  = new Entities_contabilidad();
            Entities_cuentas_por_pagar Context_cxp = new Entities_cuentas_por_pagar();

            try
            {
                #region Variables
                string  TipoCbteBancoS = TipoCbteBanco.ToString();
                int     secuencia      = 1;
                decimal Idcancelacion  = 0;
                #endregion

                #region Diario
                var diario = Context_ct.ct_cbtecble.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipoCbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble).FirstOrDefault();
                if (diario == null)
                {
                    return(false);
                }

                diario.cb_Fecha         = info.cb_Fecha.Date;
                diario.cb_Observacion   = info.cb_Observacion;
                diario.IdPeriodo        = info.IdPeriodo = Convert.ToInt32(info.cb_Fecha.Date.ToString("yyyyMM"));
                diario.IdSucursal       = info.IdSucursal;
                diario.cb_Valor         = info.cb_Valor;
                diario.cb_FechaUltModi  = DateTime.Now;
                diario.IdUsuarioUltModi = info.IdUsuario;

                var lst_diario_det = Context_ct.ct_cbtecble_det.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipoCbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble).ToList();
                Context_ct.ct_cbtecble_det.RemoveRange(lst_diario_det);
                foreach (var item in info.lst_det_ct)
                {
                    Context_ct.ct_cbtecble_det.Add(new ct_cbtecble_det
                    {
                        IdEmpresa           = info.IdEmpresa,
                        IdTipoCbte          = info.IdTipocbte,
                        IdCbteCble          = info.IdCbteCble,
                        secuencia           = secuencia++,
                        IdCtaCble           = item.IdCtaCble,
                        dc_Valor            = Math.Round(item.dc_Valor, 2, MidpointRounding.AwayFromZero),
                        dc_para_conciliar   = item.dc_para_conciliar,
                        IdPunto_cargo       = item.IdPunto_cargo,
                        IdPunto_cargo_grupo = item.IdPunto_cargo_grupo,
                        IdCentroCosto       = item.IdCentroCosto,
                        dc_Observacion      = item.dc_Observacion
                    });
                }
                #endregion
                var list_det = Context_b.ba_Cbte_Ban_x_ba_TipoFlujo.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipocbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble).ToList();
                Context_b.ba_Cbte_Ban_x_ba_TipoFlujo.RemoveRange(list_det);
                info.list_det = info.list_det == null ? new List <ba_Cbte_Ban_x_ba_TipoFlujo_Info>() : info.list_det;
                if (info.list_det.Count > 0)
                {
                    foreach (var item in info.list_det)
                    {
                        Context_b.ba_Cbte_Ban_x_ba_TipoFlujo.Add(new ba_Cbte_Ban_x_ba_TipoFlujo
                        {
                            IdEmpresa   = info.IdEmpresa,
                            IdTipocbte  = info.IdTipocbte,
                            IdCbteCble  = info.IdCbteCble,
                            IdTipoFlujo = item.IdTipoFlujo,
                            Valor       = item.Valor,
                            Porcentaje  = item.Porcentaje,
                            Secuencia   = item.Secuencia
                        });
                    }
                }

                #region Cbte bancario
                var mov_ban = Context_b.ba_Cbte_Ban.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipocbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble).FirstOrDefault();
                if (mov_ban == null)
                {
                    Context_b.ba_Cbte_Ban.Add(new ba_Cbte_Ban
                    {
                        IdEmpresa                = info.IdEmpresa,
                        IdCbteCble               = info.IdCbteCble,
                        IdTipocbte               = info.IdTipocbte,
                        Cod_Cbtecble             = info.Cod_Cbtecble,
                        IdPeriodo                = info.IdPeriodo,
                        IdBanco                  = info.IdBanco,
                        cb_Fecha                 = info.cb_Fecha,
                        cb_Observacion           = info.cb_Observacion,
                        cb_Valor                 = info.cb_Valor,
                        cb_Cheque                = info.cb_Cheque,
                        Estado                   = "A",
                        IdPersona_Girado_a       = info.IdPersona_Girado_a,
                        cb_giradoA               = info.cb_giradoA,
                        cb_ciudadChq             = info.cb_ciudadChq,
                        IdTipoFlujo              = info.IdTipoFlujo,
                        IdTipoNota               = info.IdTipoNota,
                        ValorEnLetras            = info.ValorEnLetras,
                        IdSucursal               = info.IdSucursal,
                        IdEstado_Cbte_Ban_cat    = info.IdEstado_Cbte_Ban_cat,
                        IdEstado_Preaviso_ch_cat = info.IdEstado_Preaviso_ch_cat,
                        IdEstado_cheque_cat      = info.IdEstado_cheque_cat,
                        IdPersona                = info.IdPersona,
                        IdEntidad                = info.IdEntidad,
                        IdTipo_Persona           = info.IdTipo_Persona,
                        IdSolicitudPago          = info.IdSolicitudPago,
                        IdUsuarioUltMod          = info.IdUsuarioUltMod,
                        Fecha_UltMod             = DateTime.Now,
                        cb_FechaCheque           = info.cb_FechaCheque,
                    });
                }
                else
                {
                    mov_ban.Cod_Cbtecble             = info.Cod_Cbtecble;
                    mov_ban.IdPeriodo                = info.IdPeriodo;
                    mov_ban.IdBanco                  = info.IdBanco;
                    mov_ban.cb_Fecha                 = info.cb_Fecha;
                    mov_ban.cb_Observacion           = info.cb_Observacion;
                    mov_ban.cb_Valor                 = info.cb_Valor;
                    mov_ban.cb_Cheque                = info.cb_Cheque;
                    mov_ban.IdPersona_Girado_a       = info.IdPersona_Girado_a;
                    mov_ban.cb_giradoA               = info.cb_giradoA;
                    mov_ban.cb_ciudadChq             = info.cb_ciudadChq;
                    mov_ban.IdTipoFlujo              = info.IdTipoFlujo;
                    mov_ban.IdTipoNota               = info.IdTipoNota;
                    mov_ban.ValorEnLetras            = info.ValorEnLetras;
                    mov_ban.IdSucursal               = info.IdSucursal;
                    mov_ban.IdEstado_Cbte_Ban_cat    = info.IdEstado_Cbte_Ban_cat;
                    mov_ban.IdEstado_Preaviso_ch_cat = info.IdEstado_Preaviso_ch_cat;
                    mov_ban.IdEstado_cheque_cat      = info.IdEstado_cheque_cat;
                    mov_ban.IdPersona                = info.IdPersona;
                    mov_ban.IdEntidad                = info.IdEntidad;
                    mov_ban.IdTipo_Persona           = info.IdTipo_Persona;
                    mov_ban.IdUsuarioUltMod          = info.IdUsuarioUltMod;
                    mov_ban.Fecha_UltMod             = DateTime.Now;
                    mov_ban.IdSolicitudPago          = info.IdSolicitudPago;
                }
                #endregion

                switch (TipoCbteBanco)
                {
                case cl_enumeradores.eTipoCbteBancario.CHEQ:
                    #region Guardo cancelaciones
                    var lst_cancelaciones = Context_cxp.cp_orden_pago_cancelaciones.Where(q => q.IdEmpresa_pago == info.IdEmpresa && q.IdTipoCbte_pago == info.IdTipocbte && q.IdCbteCble_pago == info.IdCbteCble).ToList();
                    Context_cxp.cp_orden_pago_cancelaciones.RemoveRange(lst_cancelaciones);
                    Idcancelacion = odata_can.get_id(info.IdEmpresa);
                    secuencia     = 1;
                    foreach (var item in info.lst_det_canc_op)
                    {
                        Context_cxp.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                        {
                            IdEmpresa     = info.IdEmpresa,
                            Idcancelacion = Idcancelacion,
                            Secuencia     = secuencia++,

                            IdEmpresa_op   = item.IdEmpresa_op,
                            IdOrdenPago_op = item.IdOrdenPago_op,
                            Secuencia_op   = item.Secuencia_op,

                            IdEmpresa_cxp  = item.IdEmpresa_cxp,
                            IdTipoCbte_cxp = item.IdTipoCbte_cxp,
                            IdCbteCble_cxp = item.IdCbteCble_cxp,

                            IdEmpresa_pago  = info.IdEmpresa,
                            IdTipoCbte_pago = info.IdTipocbte,
                            IdCbteCble_pago = info.IdCbteCble,

                            MontoAplicado    = item.MontoAplicado,
                            SaldoActual      = 0,
                            SaldoAnterior    = 0,
                            fechaTransaccion = DateTime.Now,
                            Observacion      = item.Observacion
                        });
                    }
                    #endregion
                    break;

                case cl_enumeradores.eTipoCbteBancario.DEPO:
                    #region Guardo ingresos
                    var lst_ing = Context_b.ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito.Where(q => q.mba_IdEmpresa == info.IdEmpresa && q.mba_IdTipocbte == info.IdTipocbte && q.mba_IdCbteCble == info.IdCbteCble).ToList();
                    Context_b.ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito.RemoveRange(lst_ing);
                    foreach (var item in info.lst_det_ing)
                    {
                        Context_b.ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito.Add(new ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito
                        {
                            mba_IdEmpresa  = info.IdEmpresa,
                            mba_IdTipocbte = info.IdTipocbte,
                            mba_IdCbteCble = info.IdCbteCble,

                            mcj_IdEmpresa  = item.mcj_IdEmpresa,
                            mcj_IdTipocbte = item.mcj_IdTipocbte,
                            mcj_IdCbteCble = item.mcj_IdCbteCble,
                            mcj_Secuencia  = item.mcj_Secuencia
                        });
                    }
                    #endregion
                    break;

                case cl_enumeradores.eTipoCbteBancario.NCBA:
                    break;

                case cl_enumeradores.eTipoCbteBancario.NDBA:
                    #region Guardo cancelaciones
                    var lst_cancelaciones_ndba = Context_cxp.cp_orden_pago_cancelaciones.Where(q => q.IdEmpresa_pago == info.IdEmpresa && q.IdTipoCbte_pago == info.IdTipocbte && q.IdCbteCble_pago == info.IdCbteCble).ToList();
                    Context_cxp.cp_orden_pago_cancelaciones.RemoveRange(lst_cancelaciones_ndba);
                    Idcancelacion = odata_can.get_id(info.IdEmpresa);
                    secuencia     = 1;
                    foreach (var item in info.lst_det_canc_op)
                    {
                        Context_cxp.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                        {
                            IdEmpresa     = info.IdEmpresa,
                            Idcancelacion = Idcancelacion,
                            Secuencia     = secuencia++,

                            IdEmpresa_op   = item.IdEmpresa_op,
                            IdOrdenPago_op = item.IdOrdenPago_op,
                            Secuencia_op   = item.Secuencia_op,

                            IdEmpresa_cxp  = item.IdEmpresa_cxp,
                            IdTipoCbte_cxp = item.IdTipoCbte_cxp,
                            IdCbteCble_cxp = item.IdCbteCble_cxp,

                            IdEmpresa_pago  = info.IdEmpresa,
                            IdTipoCbte_pago = info.IdTipocbte,
                            IdCbteCble_pago = info.IdCbteCble,

                            MontoAplicado    = item.MontoAplicado,
                            SaldoActual      = 0,
                            SaldoAnterior    = 0,
                            fechaTransaccion = DateTime.Now,
                            Observacion      = item.Observacion
                        });
                    }
                    #endregion
                    break;
                }

                Context_ct.SaveChanges();
                Context_b.SaveChanges();
                Context_cxp.SaveChanges();

                Context_ct.Dispose();
                Context_b.Dispose();
                Context_cxp.Dispose();
                return(true);
            }
            catch (Exception ex)
            {
                Context_ct.Dispose();
                Context_b.Dispose();
                Context_cxp.Dispose();
                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 = "ba_Cbte_Ban_Data", Metodo = "modificarDB", IdUsuario = info.IdUsuario
                });
                return(false);
            }
        }
Beispiel #11
0
        public bool guardarDB(ba_Cbte_Ban_Info info, cl_enumeradores.eTipoCbteBancario TipoCbteBanco)
        {
            Entities_banco             Context_b   = new Entities_banco();
            Entities_contabilidad      Context_ct  = new Entities_contabilidad();
            Entities_cuentas_por_pagar Context_cxp = new Entities_cuentas_por_pagar();

            try
            {
                #region Variables
                string  TipoCbteBancoS = TipoCbteBanco.ToString();
                int     secuencia      = 1;
                decimal Idcancelacion  = 0;
                #endregion

                #region Datos para el diario
                var e_TipoCbteBan = Context_b.ba_Cbte_Ban_tipo_x_ct_CbteCble_tipo.Where(q => q.CodTipoCbteBan == TipoCbteBancoS && q.IdEmpresa == info.IdEmpresa).FirstOrDefault();
                if (e_TipoCbteBan == null)
                {
                    return(false);
                }
                info.IdTipocbte = e_TipoCbteBan.IdTipoCbteCble;
                info.IdCbteCble = odata_ct.get_id(info.IdEmpresa, info.IdTipocbte);
                #endregion

                #region Diario
                Context_ct.ct_cbtecble.Add(new ct_cbtecble
                {
                    IdEmpresa      = info.IdEmpresa,
                    IdTipoCbte     = info.IdTipocbte,
                    IdCbteCble     = info.IdCbteCble,
                    cb_Fecha       = info.cb_Fecha.Date,
                    cb_Observacion = info.cb_Observacion,
                    IdPeriodo      = info.IdPeriodo = Convert.ToInt32(info.cb_Fecha.Date.ToString("yyyyMM")),
                    IdSucursal     = info.IdSucursal,

                    cb_FechaTransac = DateTime.Now,
                    cb_Estado       = "A",
                    cb_Valor        = Math.Round(info.lst_det_ct.Where(q => q.dc_Valor > 0).Sum(q => q.dc_Valor), 2, MidpointRounding.AwayFromZero),
                    IdUsuario       = info.IdUsuario
                });

                foreach (var item in info.lst_det_ct)
                {
                    Context_ct.ct_cbtecble_det.Add(new ct_cbtecble_det
                    {
                        IdEmpresa           = info.IdEmpresa,
                        IdTipoCbte          = info.IdTipocbte,
                        IdCbteCble          = info.IdCbteCble,
                        secuencia           = secuencia++,
                        IdCtaCble           = item.IdCtaCble,
                        dc_Valor            = Math.Round(item.dc_Valor, 2, MidpointRounding.AwayFromZero),
                        dc_para_conciliar   = item.dc_para_conciliar,
                        IdPunto_cargo       = item.IdPunto_cargo,
                        IdPunto_cargo_grupo = item.IdPunto_cargo_grupo,
                        IdCentroCosto       = item.IdCentroCosto,
                        dc_Observacion      = item.dc_Observacion
                    });
                }
                #endregion

                #region Cbte bancario
                Context_b.ba_Cbte_Ban.Add(new ba_Cbte_Ban
                {
                    IdEmpresa                = info.IdEmpresa,
                    IdCbteCble               = info.IdCbteCble,
                    IdTipocbte               = info.IdTipocbte,
                    Cod_Cbtecble             = info.Cod_Cbtecble,
                    IdPeriodo                = info.IdPeriodo,
                    IdBanco                  = info.IdBanco,
                    cb_Fecha                 = info.cb_Fecha,
                    cb_Observacion           = info.cb_Observacion,
                    cb_Valor                 = info.cb_Valor = Math.Round(info.lst_det_ct.Where(q => q.dc_Valor > 0).Sum(q => q.dc_Valor), 2, MidpointRounding.AwayFromZero),
                    cb_Cheque                = info.cb_Cheque,
                    Estado                   = "A",
                    IdPersona_Girado_a       = info.IdPersona_Girado_a,
                    cb_giradoA               = info.cb_giradoA,
                    cb_ciudadChq             = info.cb_ciudadChq,
                    IdTipoFlujo              = info.IdTipoFlujo,
                    IdTipoNota               = info.IdTipoNota,
                    ValorEnLetras            = info.ValorEnLetras,
                    IdSucursal               = info.IdSucursal,
                    IdEstado_Cbte_Ban_cat    = info.IdEstado_Cbte_Ban_cat,
                    IdEstado_Preaviso_ch_cat = info.IdEstado_Preaviso_ch_cat,
                    IdEstado_cheque_cat      = info.IdEstado_cheque_cat = "ESTCBEMI",
                    IdPersona                = info.IdPersona,
                    IdEntidad                = info.IdEntidad,
                    IdTipo_Persona           = info.IdTipo_Persona,
                    IdSolicitudPago          = info.IdSolicitudPago,
                    cb_FechaCheque           = info.cb_FechaCheque,

                    IdUsuario     = info.IdUsuario,
                    Fecha_Transac = DateTime.Now,
                });
                #endregion

                #region Flujo
                info.list_det = info.list_det == null ? new List <ba_Cbte_Ban_x_ba_TipoFlujo_Info>() : info.list_det;
                if (info.list_det.Count > 0)
                {
                    int Secuencia = 1;
                    foreach (var item in info.list_det)
                    {
                        Context_b.ba_Cbte_Ban_x_ba_TipoFlujo.Add(new ba_Cbte_Ban_x_ba_TipoFlujo
                        {
                            IdEmpresa   = info.IdEmpresa,
                            IdTipocbte  = info.IdTipocbte,
                            IdCbteCble  = info.IdCbteCble,
                            IdTipoFlujo = item.IdTipoFlujo,
                            Valor       = item.Valor,
                            Porcentaje  = item.Porcentaje,
                            Secuencia   = Secuencia++
                        });
                    }
                }
                #endregion
                switch (TipoCbteBanco)
                {
                case cl_enumeradores.eTipoCbteBancario.CHEQ:
                    #region Guardo cancelaciones
                    Idcancelacion = odata_can.get_id(info.IdEmpresa);
                    secuencia     = 1;
                    foreach (var item in info.lst_det_canc_op)
                    {
                        Context_cxp.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                        {
                            IdEmpresa     = info.IdEmpresa,
                            Idcancelacion = Idcancelacion,
                            Secuencia     = secuencia++,

                            IdEmpresa_op   = item.IdEmpresa_op,
                            IdOrdenPago_op = item.IdOrdenPago_op,
                            Secuencia_op   = item.Secuencia_op,

                            IdEmpresa_cxp  = item.IdEmpresa_cxp,
                            IdTipoCbte_cxp = item.IdTipoCbte_cxp,
                            IdCbteCble_cxp = item.IdCbteCble_cxp,

                            IdEmpresa_pago  = info.IdEmpresa,
                            IdTipoCbte_pago = info.IdTipocbte,
                            IdCbteCble_pago = info.IdCbteCble,

                            MontoAplicado    = item.MontoAplicado,
                            SaldoActual      = 0,
                            SaldoAnterior    = 0,
                            fechaTransaccion = DateTime.Now,
                            Observacion      = item.Observacion
                        });
                    }
                    #endregion

                    var cheque = Context_b.ba_Talonario_cheques_x_banco.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdBanco == info.IdBanco && q.Num_cheque == info.cb_Cheque).FirstOrDefault();
                    if (cheque != null)
                    {
                        cheque.IdEmpresa_cbtecble_Usado  = info.IdEmpresa;
                        cheque.IdTipoCbte_cbtecble_Usado = info.IdTipocbte;
                        cheque.IdCbteCble_cbtecble_Usado = info.IdCbteCble;
                        cheque.Usado = true;
                    }
                    break;

                case cl_enumeradores.eTipoCbteBancario.DEPO:
                    #region Guardo ingresos
                    foreach (var item in info.lst_det_ing)
                    {
                        Context_b.ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito.Add(new ba_Caja_Movimiento_x_Cbte_Ban_x_Deposito
                        {
                            mba_IdEmpresa  = info.IdEmpresa,
                            mba_IdTipocbte = info.IdTipocbte,
                            mba_IdCbteCble = info.IdCbteCble,

                            mcj_IdEmpresa  = item.mcj_IdEmpresa,
                            mcj_IdTipocbte = item.mcj_IdTipocbte,
                            mcj_IdCbteCble = item.mcj_IdCbteCble,
                            mcj_Secuencia  = item.mcj_Secuencia
                        });
                    }
                    #endregion
                    break;

                case cl_enumeradores.eTipoCbteBancario.NCBA:
                    break;

                case cl_enumeradores.eTipoCbteBancario.NDBA:
                    #region Guardo cancelaciones
                    Idcancelacion = odata_can.get_id(info.IdEmpresa);
                    secuencia     = 1;
                    foreach (var item in info.lst_det_canc_op)
                    {
                        Context_cxp.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                        {
                            IdEmpresa     = info.IdEmpresa,
                            Idcancelacion = Idcancelacion,
                            Secuencia     = secuencia++,

                            IdEmpresa_op   = item.IdEmpresa_op,
                            IdOrdenPago_op = item.IdOrdenPago_op,
                            Secuencia_op   = item.Secuencia_op,

                            IdEmpresa_cxp  = item.IdEmpresa_cxp,
                            IdTipoCbte_cxp = item.IdTipoCbte_cxp,
                            IdCbteCble_cxp = item.IdCbteCble_cxp,

                            IdEmpresa_pago  = info.IdEmpresa,
                            IdTipoCbte_pago = info.IdTipocbte,
                            IdCbteCble_pago = info.IdCbteCble,

                            MontoAplicado    = item.MontoAplicado,
                            SaldoActual      = 0,
                            SaldoAnterior    = 0,
                            fechaTransaccion = DateTime.Now,
                            Observacion      = item.Observacion
                        });
                    }
                    #endregion
                    break;
                }

                Context_ct.SaveChanges();
                Context_b.SaveChanges();
                Context_cxp.SaveChanges();

                Context_ct.Dispose();
                Context_b.Dispose();
                Context_cxp.Dispose();
                return(true);
            }
            catch (Exception ex)
            {
                Context_ct.Dispose();
                Context_b.Dispose();
                Context_cxp.Dispose();
                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 = "ba_Cbte_Ban_Data", Metodo = "guardarDB", IdUsuario = info.IdUsuario
                });
                return(false);
            }
        }
Beispiel #12
0
        public bool guardarDB(ba_Conciliacion_Info info)
        {
            try
            {
                using (Entities_banco Context = new Entities_banco())
                {
                    var id = get_id(info.IdEmpresa);
                    Context.ba_Conciliacion.Add(new ba_Conciliacion
                    {
                        IdEmpresa               = info.IdEmpresa,
                        IdConciliacion          = info.IdConciliacion = id,
                        IdBanco                 = info.IdBanco,
                        IdPeriodo               = info.IdPeriodo,
                        co_Fecha                = info.co_Fecha,
                        IdEstado_Concil_Cat     = info.IdEstado_Concil_Cat,
                        co_SaldoContable_MesAnt = info.co_SaldoContable_MesAnt,
                        co_totalIng             = info.co_totalIng,
                        co_totalEgr             = info.co_totalEgr,
                        co_SaldoContable_MesAct = info.co_SaldoContable_MesAct,
                        co_SaldoBanco_EstCta    = info.co_SaldoBanco_EstCta,
                        co_SaldoBanco_anterior  = info.co_SaldoBanco_anterior,
                        co_Observacion          = info.co_Observacion,
                        Estado = info.Estado = "A",
                    });
                    int secuencia = 1;
                    foreach (var item in info.lst_det)
                    {
                        Context.ba_Conciliacion_det_IngEgr.Add(new ba_Conciliacion_det_IngEgr
                        {
                            IdEmpresa         = info.IdEmpresa,
                            IdConciliacion    = info.IdConciliacion,
                            Secuencia         = secuencia++,
                            tipo_IngEgr       = item.tipo_IngEgr,
                            IdTipocbte        = item.IdTipocbte,
                            IdCbteCble        = item.IdCbteCble,
                            SecuenciaCbteCble = item.SecuenciaCbteCble,
                            Estado            = "A",
                            @checked          = item.seleccionado
                        });
                        if (info.IdEstado_Concil_Cat == "CONCILIADO")
                        {
                            var cbte = Context.ba_Cbte_Ban.Where(q => q.IdEmpresa == info.IdEmpresa && item.IdTipocbte == q.IdTipocbte && q.IdCbteCble == item.IdCbteCble).FirstOrDefault();
                            if (cbte != null)
                            {
                                cbte.IdEstado_cheque_cat = "ESTCBCOB";
                            }
                        }
                    }
                    if (info.List_detalle.Count() > 0)
                    {
                        foreach (var item in info.List_detalle)
                        {
                            Context.ba_Conciliacion_det.Add(new ba_Conciliacion_det
                            {
                                IdEmpresa      = info.IdEmpresa,
                                IdConciliacion = info.IdConciliacion,
                                IdTipocbte     = item.IdTipocbte,
                                Fecha          = item.Fecha,
                                Observacion    = item.Observacion,
                                Referencia     = item.Referencia,
                                Secuencia      = secuencia++,
                                Seleccionado   = item.Seleccionado,
                                tipo_IngEgr    = item.tipo_IngEgr,
                                Valor          = item.Valor
                            });
                        }
                    }
                    Context.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 = "ba_Conciliacion_Data", Metodo = "guardarDB", IdUsuario = info.IdUsuario
                });
                return(false);
            }
        }