예제 #1
0
        public bool modificarDB(cp_nota_DebCre_Info info)
        {
            try
            {
                info.info_comrobante.IdEmpresa      = info.IdEmpresa;
                info.info_comrobante.IdTipoCbte     = info.IdTipoCbte_Nota;
                info.info_comrobante.IdCbteCble     = info.IdCbteCble_Nota;
                info.info_comrobante.cb_Fecha       = (DateTime)info.Fecha_contable;
                info.info_comrobante.IdSucursal     = info.IdSucursal;
                info.info_comrobante.cb_Estado      = "A";
                info.info_comrobante.IdPeriodo      = Convert.ToInt32(info.info_comrobante.cb_Fecha.Year.ToString() + info.info_comrobante.cb_Fecha.Month.ToString().PadLeft(2, '0'));
                info.info_comrobante.IdEmpresa      = info.IdEmpresa;
                info.info_comrobante.cb_Observacion = info.cn_observacion;

                info.cn_baseImponible = info.cn_subtotal_iva + info.cn_subtotal_siniva;
                if (bus_contabilidad.modificarDB(info.info_comrobante))
                {
                    data = new cp_nota_DebCre_Data();
                    if (data.modificarDB(info))
                    {
                        data_cancelacion = new cp_orden_pago_cancelaciones_Data();
                        data_cancelacion.ElimarDB(info.IdEmpresa, info.IdTipoCbte_Nota, info.IdCbteCble_Nota);
                        if (info.lst_det_canc_op == null)
                        {
                            return(true);
                        }
                        foreach (var item in info.lst_det_canc_op)
                        {
                            info_cancelacion.IdEmpresa     = info.IdEmpresa;
                            info_cancelacion.Idcancelacion = 0;
                            info_cancelacion.Secuencia     = 1;

                            info_cancelacion.IdEmpresa_op   = info.IdEmpresa;
                            info_cancelacion.IdOrdenPago_op = item.IdOrdenPago_op;
                            info_cancelacion.Secuencia_op   = item.Secuencia_op;

                            info_cancelacion.IdEmpresa_cxp   = info.IdEmpresa;
                            info_cancelacion.IdTipoCbte_cxp  = item.IdTipoCbte_cxp;
                            info_cancelacion.IdCbteCble_cxp  = item.IdCbteCble_cxp;
                            info_cancelacion.IdEmpresa_pago  = info.IdEmpresa;
                            info_cancelacion.IdTipoCbte_pago = info.IdTipoCbte_Nota;
                            info_cancelacion.IdCbteCble_pago = info.IdCbteCble_Nota;
                            info_cancelacion.Observacion     = info.cn_observacion;
                            info_cancelacion.MontoAplicado   = item.MontoAplicado;
                            data_cancelacion.guardarDB(info_cancelacion);
                        }
                    }
                }


                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
예제 #2
0
        public Boolean GrabarDB(ref cp_conciliacion_Info Info, ct_Cbtecble_Info CbteCble_I, ref string mensaje)
        {
            try
            {
                Boolean res = false;

                if (Info.lista_Orden_Pago_Cancel.Count != 0)
                {
                    foreach (var item2 in Info.lista_Orden_Pago_Cancel)
                    {
                        item2.IdEmpresa_op   = item2.IdEmpresa_op;
                        item2.IdOrdenPago_op = item2.IdOrdenPago_op;
                        item2.Secuencia_op   = item2.Secuencia_op;

                        item2.IdEmpresa_op_padre   = item2.IdEmpresa_op_padre == 0 ? null : item2.IdEmpresa_op_padre;
                        item2.IdOrdenPago_op_padre = item2.IdOrdenPago_op_padre == 0 ? null : item2.IdOrdenPago_op_padre;
                        item2.Secuencia_op_padre   = item2.Secuencia_op_padre == 0 ? null : item2.Secuencia_op_padre;

                        item2.IdEmpresa_cxp  = item2.IdEmpresa_cxp == 0 ? null : item2.IdEmpresa_cxp;
                        item2.IdTipoCbte_cxp = item2.IdTipoCbte_cxp == 0 ? null : item2.IdTipoCbte_cxp;
                        item2.IdCbteCble_cxp = item2.IdCbteCble_cxp == 0 ? null : item2.IdCbteCble_cxp;

                        item2.IdEmpresa_pago  = item2.IdEmpresa_pago == 0 ? null : item2.IdEmpresa_pago;
                        item2.IdTipoCbte_pago = item2.IdTipoCbte_pago == 0 ? null : item2.IdTipoCbte_pago;
                        item2.IdCbteCble_pago = item2.IdCbteCble_pago == 0 ? null : item2.IdCbteCble_pago;
                    }

                    cp_orden_pago_cancelaciones_Data oCance = new cp_orden_pago_cancelaciones_Data();

                    if (oCance.GuardarDB(Info.lista_Orden_Pago_Cancel, Info.IdEmpresa, ref mensaje))
                    {
                        foreach (var item in Info.lista_Orden_Pago_Cancel)
                        {
                            Info.IdCancelacion = item.Idcancelacion;
                        }


                        if (Data.GrabarDB(ref Info, ref mensaje))
                        {
                            res = true;
                        }
                    }
                }



                if (Info.tipo == "ANTPROV")
                {
                }

                return(res);
            }
            catch (Exception ex)
            {
                Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
                throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "GrabarDB", ex.Message), ex)
                      {
                          EntityType = typeof(cp_conciliacion_Bus)
                      };
            }
        }
예제 #3
0
        public bool guardarDB(cp_nota_DebCre_Info info)
        {
            try
            {
                cp_proveedor_Bus bus_proveedor = new cp_proveedor_Bus();
                var prov = bus_proveedor.get_info(info.IdEmpresa, info.IdProveedor);

                info.info_comrobante.IdEmpresa  = info.IdEmpresa;
                info.info_comrobante.IdSucursal = info.IdSucursal;
                info.info_comrobante.cb_Fecha   = (DateTime)info.Fecha_contable;
                info.info_comrobante.cb_Estado  = "A";
                info.info_comrobante.IdPeriodo  = Convert.ToInt32(info.info_comrobante.cb_Fecha.Year.ToString() + info.info_comrobante.cb_Fecha.Month.ToString().PadLeft(2, '0'));
                info.info_comrobante.IdEmpresa  = info.IdEmpresa;
                if (prov != null)
                {
                    if (info.cn_observacion == null)
                    {
                        info.cn_observacion = "";
                    }
                    info.info_comrobante.cb_Observacion = "Prov: " + prov.info_persona.pe_nombreCompleto + " " + info.cn_observacion;
                }
                else
                {
                    info.info_comrobante.cb_Observacion = info.cn_observacion;
                }
                if (bus_contabilidad.guardarDB(info.info_comrobante))
                {
                    data = new cp_nota_DebCre_Data();
                    info.IdTipoCbte_Nota = info.info_comrobante.IdTipoCbte;
                    info.IdCbteCble_Nota = info.info_comrobante.IdCbteCble;
                    info.Estado          = "A";
                    info.cn_vaCoa        = "N";
                    info.IdTipoNota      = info.IdTipoNota;
                    if (data.guardarDB(info))
                    {
                        if (info.lst_det_canc_op == null)
                        {
                            return(true);
                        }
                        data_cancelacion = new cp_orden_pago_cancelaciones_Data();
                        foreach (var item in info.lst_det_canc_op)
                        {
                            info_cancelacion.IdEmpresa     = info.IdEmpresa;
                            info_cancelacion.Idcancelacion = 0;
                            info_cancelacion.Secuencia     = 1;

                            info_cancelacion.IdEmpresa_op   = info.IdEmpresa;
                            info_cancelacion.IdOrdenPago_op = item.IdOrdenPago_op;
                            info_cancelacion.Secuencia_op   = item.Secuencia_op;

                            info_cancelacion.IdEmpresa_cxp   = info.IdEmpresa;
                            info_cancelacion.IdTipoCbte_cxp  = item.IdTipoCbte_cxp;
                            info_cancelacion.IdCbteCble_cxp  = item.IdCbteCble_cxp;
                            info_cancelacion.IdEmpresa_pago  = info.IdEmpresa;
                            info_cancelacion.IdTipoCbte_pago = info.IdTipoCbte_Nota;
                            info_cancelacion.IdCbteCble_pago = info.IdCbteCble_Nota;
                            info_cancelacion.Observacion     = info.cn_observacion;
                            info_cancelacion.MontoAplicado   = item.MontoAplicado;
                            data_cancelacion.guardarDB(info_cancelacion);
                        }
                    }
                }


                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool modificarDB(caj_Caja_Movimiento_Info info)
        {
            try
            {
                using (Entities_caja Context = new Entities_caja())
                {
                    caj_Caja_Movimiento Entity = Context.caj_Caja_Movimiento.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdTipocbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble);
                    if (Entity == null)
                    {
                        return(false);
                    }

                    Entity.cm_fecha       = info.cm_fecha.Date;
                    Entity.IdPeriodo      = info.IdPeriodo = Convert.ToInt32(info.cm_fecha.ToString("yyyyMM"));
                    Entity.cm_observacion = info.cm_observacion;
                    Entity.CodMoviCaja    = info.CodMoviCaja;
                    Entity.cm_valor       = info.cm_valor;
                    Entity.IdPersona      = info.IdPersona;
                    Entity.IdTipo_Persona = info.IdTipo_Persona;
                    Entity.IdEntidad      = info.IdEntidad;
                    Entity.IdCaja         = info.IdCaja;
                    Entity.IdTipoMovi     = info.IdTipoMovi;
                    caj_Caja_Movimiento_det Entity_det = Context.caj_Caja_Movimiento_det.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdTipocbte == info.IdTipocbte && q.IdCbteCble == info.IdCbteCble);
                    if (Entity_det == null)
                    {
                        return(false);
                    }

                    Entity_det.IdCobro_tipo = info.info_caj_Caja_Movimiento_det.IdCobro_tipo;
                    Entity_det.cr_Valor     = info.info_caj_Caja_Movimiento_det.cr_Valor;


                    Entity.IdUsuarioUltMod = info.IdUsuarioUltMod;
                    Entity.Fecha_UltMod    = DateTime.Now;
                    Context.SaveChanges();
                }

                using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar())
                {
                    var lst = db.cp_orden_pago_cancelaciones.Where(q => q.IdEmpresa_pago == info.IdEmpresa && q.IdTipoCbte_pago == info.IdTipocbte && q.IdCbteCble_pago == info.IdCbteCble).ToList();
                    db.cp_orden_pago_cancelaciones.RemoveRange(lst);

                    cp_orden_pago_cancelaciones_Data odata_can = new cp_orden_pago_cancelaciones_Data();
                    int     secuencia     = 1;
                    decimal IdCancelacion = odata_can.get_id(info.IdEmpresa);
                    if (info.lst_det_canc_op != null)
                    {
                        foreach (var item in info.lst_det_canc_op)
                        {
                            db.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                            {
                                IdEmpresa        = info.IdEmpresa,
                                Idcancelacion    = IdCancelacion,
                                Secuencia        = secuencia++,
                                fechaTransaccion = DateTime.Now,
                                IdEmpresa_op     = info.IdEmpresa,
                                IdOrdenPago_op   = item.IdOrdenPago_op,
                                Secuencia_op     = 1,

                                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,

                                SaldoActual   = 0,
                                SaldoAnterior = 0,
                                MontoAplicado = item.MontoAplicado,
                                Observacion   = "Pago chaja chica"
                            });
                            db.SaveChanges();
                        }
                    }
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool guardarDB(caj_Caja_Movimiento_Info info)
        {
            try
            {
                using (Entities_caja Context = new Entities_caja())
                {
                    caj_Caja_Movimiento Entity = new caj_Caja_Movimiento
                    {
                        IdEmpresa      = info.IdEmpresa,
                        IdCaja         = info.IdCaja,
                        IdTipocbte     = info.IdTipocbte,
                        IdCbteCble     = info.IdCbteCble,
                        IdEntidad      = info.IdEntidad,
                        IdPeriodo      = info.IdPeriodo = Convert.ToInt32(info.cm_fecha.ToString("yyyyMM")),
                        IdPersona      = info.IdPersona,
                        IdTipoFlujo    = info.IdTipoFlujo,
                        IdTipoMovi     = info.IdTipoMovi,
                        IdTipo_Persona = info.IdTipo_Persona,
                        cm_fecha       = info.cm_fecha.Date,
                        cm_observacion = info.cm_observacion,
                        cm_Signo       = info.cm_Signo,
                        cm_valor       = info.cm_valor,
                        CodMoviCaja    = info.CodMoviCaja,
                        Estado         = info.Estado = "A",

                        IdUsuario     = info.IdUsuario,
                        Fecha_Transac = DateTime.Now
                    };
                    caj_Caja_Movimiento_det Entity_det = new caj_Caja_Movimiento_det
                    {
                        IdEmpresa    = info.IdEmpresa,
                        IdTipocbte   = info.IdTipocbte,
                        IdCbteCble   = info.IdCbteCble,
                        cr_Valor     = info.info_caj_Caja_Movimiento_det.cr_Valor,
                        IdCobro_tipo = info.info_caj_Caja_Movimiento_det.IdCobro_tipo,
                        Secuencia    = 1
                    };
                    Context.caj_Caja_Movimiento.Add(Entity);
                    Context.caj_Caja_Movimiento_det.Add(Entity_det);
                    Context.SaveChanges();
                }

                using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar())
                {
                    cp_orden_pago_cancelaciones_Data odata_can = new cp_orden_pago_cancelaciones_Data();
                    int     secuencia     = 1;
                    decimal IdCancelacion = odata_can.get_id(info.IdEmpresa);
                    if (info.lst_det_canc_op != null)
                    {
                        foreach (var item in info.lst_det_canc_op)
                        {
                            db.cp_orden_pago_cancelaciones.Add(new cp_orden_pago_cancelaciones
                            {
                                IdEmpresa        = info.IdEmpresa,
                                Idcancelacion    = IdCancelacion,
                                Secuencia        = secuencia++,
                                fechaTransaccion = DateTime.Now,
                                IdEmpresa_op     = info.IdEmpresa,
                                IdOrdenPago_op   = item.IdOrdenPago_op,
                                Secuencia_op     = 1,

                                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,

                                SaldoActual   = 0,
                                SaldoAnterior = 0,
                                MontoAplicado = item.MontoAplicado,
                                Observacion   = "Pago chaja chica"
                            });
                            db.SaveChanges();
                        }
                    }
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }