public Resultado InsertarContableBancos()
        {
            var result = new Resultado();

            try
            {
                using (var ctx = new dBEntities(_cn.ConnectionString))
                {
                    using (var ts = new TransactionScope())
                    {
                        var entLista = ctx.bancos.ToList();
                        foreach (var cp in entLista)
                        {
                            var r   = 0;
                            var ent = new contabilidad_banco
                            {
                                idPlanCta  = -1,
                                auto_banco = cp.auto
                            };

                            if (cp.idPlanCta.HasValue)
                            {
                                ent.idPlanCta = cp.idPlanCta.Value; r = 1;
                            }

                            if (r == 1)
                            {
                                ctx.contabilidad_banco.Add(ent);
                                ctx.SaveChanges();
                            }
                        }

                        ts.Complete();
                    }
                }
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DTO.EnumResult.isError;
            }

            return(result);
        }
Exemplo n.º 2
0
        public Resultado Bancos_Banco_Actualizar(DTO.Bancos.Banco.Actualizar ficha)
        {
            var result = new Resultado();

            try
            {
                using (var ctx = new dBEntities(_cn.ConnectionString))
                {
                    using (var ts = new TransactionScope())
                    {
                        //if (ficha.IdCtaContable.HasValue)
                        //{
                        //}
                        //else
                        //{
                        //    var entContBanco = ctx.contabilidad_banco.FirstOrDefault(b => b.auto_banco == ficha.AutoBanco);
                        //    ctx.contabilidad_banco.Remove(entContBanco);
                        //}

                        var entContBanco = ctx.contabilidad_banco.FirstOrDefault(b => b.auto_banco == ficha.AutoBanco);
                        if (entContBanco == null)
                        {
                            entContBanco = new contabilidad_banco()
                            {
                                idPlanCta      = ficha.IdCtaContable.Value,
                                idPlanCta_IGTF = ficha.IdCtaIGTF.Value,
                                auto_banco     = ficha.AutoBanco,
                            };
                            ctx.contabilidad_banco.Add(entContBanco);
                            ctx.SaveChanges();
                        }
                        else
                        {
                            var entReglaIntPago = ctx.contabilidad_reglas_integracion_detalle.FirstOrDefault(w =>
                                                                                                             w.idReglaIntegracion == 3 &&
                                                                                                             w.referencia.Trim().ToUpper() == "BANCO" &&
                                                                                                             w.idPlanCta == entContBanco.idPlanCta);
                            if (entReglaIntPago != null)
                            {
                                ctx.contabilidad_reglas_integracion_detalle.Remove(entReglaIntPago);
                                ctx.SaveChanges();
                            }

                            var entReglaIntBanco = ctx.contabilidad_reglas_integracion_detalle.FirstOrDefault(w =>
                                                                                                              w.idReglaIntegracion == 6 &&
                                                                                                              w.referencia.Trim().ToUpper() == "BANCO MOV" &&
                                                                                                              w.idPlanCta == entContBanco.idPlanCta);
                            if (entReglaIntBanco != null)
                            {
                                ctx.contabilidad_reglas_integracion_detalle.Remove(entReglaIntBanco);
                                ctx.SaveChanges();
                            }

                            entContBanco.idPlanCta = null;
                            if (ficha.IdCtaContable.HasValue)
                            {
                                entContBanco.idPlanCta = ficha.IdCtaContable.Value;
                            }
                            entContBanco.idPlanCta_IGTF = null;
                            if (ficha.IdCtaIGTF.HasValue)
                            {
                                entContBanco.idPlanCta_IGTF = ficha.IdCtaIGTF.Value;
                            }
                            ctx.SaveChanges();

                            if (ficha.IdCtaContable.HasValue)
                            {
                                entContBanco.idPlanCta = ficha.IdCtaContable.Value;
                            }
                            if (ficha.IdCtaIGTF.HasValue)
                            {
                                entContBanco.idPlanCta_IGTF = ficha.IdCtaIGTF.Value;
                            }
                            ctx.SaveChanges();
                        }

                        if (ficha.IdCtaContable.HasValue)
                        {
                            var reglaPago = new contabilidad_reglas_integracion_detalle()
                            {
                                idReglaIntegracion = 3,
                                idPlanCta          = ficha.IdCtaContable.Value,
                                signo      = -1,
                                referencia = "BANCO",
                                idSucursal = 0,
                            };
                            ctx.contabilidad_reglas_integracion_detalle.Add(reglaPago);
                            ctx.SaveChanges();

                            var reglaBanco = new contabilidad_reglas_integracion_detalle()
                            {
                                idReglaIntegracion = 6,
                                idPlanCta          = ficha.IdCtaContable.Value,
                                signo      = 1,
                                referencia = "BANCO MOV",
                                idSucursal = 0,
                            };
                            ctx.contabilidad_reglas_integracion_detalle.Add(reglaBanco);
                            ctx.SaveChanges();
                        }

                        ctx.SaveChanges();
                        ts.Complete();
                    }
                }
            }
            catch (Exception e)
            {
                result.Mensaje = e.Message;
                result.Result  = DTO.EnumResult.isError;
            }

            return(result);
        }