public bool anularDB(cp_orden_giro_Info info)
        {
            try
            {
                using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar())
                {
                    cp_orden_giro Entity = Context.cp_orden_giro.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa &&
                                                                                q.IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro &&
                                                                                q.IdCbteCble_Ogiro == info.IdCbteCble_Ogiro);
                    if (Entity == null)
                    {
                        return(false);
                    }

                    Entity.IdUsuarioUltAnu = info.IdUsuarioUltAnu;
                    Entity.Fecha_UltAnu    = info.Fecha_UltAnu;
                    Entity.Estado          = "I";

                    var rel = Context.cp_orden_giro_x_in_Ing_Egr_Inven.Where(q => q.og_IdEmpresa == info.IdEmpresa && q.og_IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro && q.og_IdCbteCble_Ogiro == info.IdCbteCble_Ogiro).FirstOrDefault();
                    if (rel != null)
                    {
                        data_inv.anularDB(new in_Ing_Egr_Inven_Info {
                            IdEmpresa = rel.inv_IdEmpresa, IdSucursal = rel.inv_IdSucursal, IdMovi_inven_tipo = rel.inv_IdMovi_inven_tipo, IdNumMovi = rel.inv_IdNumMovi, IdusuarioUltAnu = info.IdUsuarioUltAnu
                        });
                    }

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #2
0
        public bool ModificarDBCabecera(cp_orden_giro_Info info)
        {
            try
            {
                using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar())
                {
                    cp_orden_giro Entity = Context.cp_orden_giro.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro && q.IdCbteCble_Ogiro == info.IdCbteCble_Ogiro).FirstOrDefault();
                    if (Entity == null)
                    {
                        return(false);
                    }

                    Entity.co_observacion      = info.co_observacion;
                    Entity.Tipodoc_a_Modificar = info.Tipodoc_a_Modificar;
                    Entity.co_plazo            = info.co_plazo;
                    Entity.IdProveedor         = info.IdProveedor;
                    Entity.IdIden_credito      = info.IdIden_credito;
                    Entity.IdOrden_giro_Tipo   = info.IdOrden_giro_Tipo;
                    Entity.PagoLocExt          = info.PagoLocExt;
                    Entity.Num_Autorizacion    = info.Num_Autorizacion;
                    Entity.co_serie            = info.co_serie;
                    Entity.co_factura          = info.co_factura;

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
 public cp_orden_giro_Info get_info(int IdEmpresa, int IdTipoCbte_Ogiro, decimal IdCbteCble_Ogiro)
 {
     try
     {
         cp_orden_giro_Info info = new cp_orden_giro_Info();
         using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar())
         {
             cp_orden_giro Entity = Context.cp_orden_giro.FirstOrDefault(q => q.IdEmpresa == IdEmpresa &&
                                                                         q.IdTipoCbte_Ogiro == IdTipoCbte_Ogiro &&
                                                                         q.IdCbteCble_Ogiro == IdCbteCble_Ogiro);
             if (Entity == null)
             {
                 return(null);
             }
             info = new cp_orden_giro_Info
             {
                 IdEmpresa                     = Entity.IdEmpresa,
                 IdCbteCble_Ogiro              = Entity.IdCbteCble_Ogiro,
                 IdTipoCbte_Ogiro              = Entity.IdTipoCbte_Ogiro,
                 IdOrden_giro_Tipo             = Entity.IdOrden_giro_Tipo,
                 IdProveedor                   = Entity.IdProveedor,
                 co_fechaOg                    = Entity.co_fechaOg,
                 co_serie                      = Entity.co_serie,
                 co_factura                    = Entity.co_factura,
                 co_FechaFactura               = Entity.co_FechaFactura,
                 co_FechaContabilizacion       = Entity.co_FechaContabilizacion,
                 co_FechaFactura_vct           = Entity.co_FechaFactura_vct,
                 co_plazo                      = Entity.co_plazo,
                 co_observacion                = Entity.co_observacion,
                 co_subtotal_iva               = Entity.co_subtotal_iva,
                 co_subtotal_siniva            = Entity.co_subtotal_siniva,
                 co_baseImponible              = Entity.co_baseImponible,
                 co_Por_iva                    = Entity.co_Por_iva,
                 co_valoriva                   = Entity.co_valoriva,
                 IdCod_ICE                     = Entity.IdCod_ICE,
                 co_total                      = Entity.co_total,
                 co_valorpagar                 = Entity.co_valorpagar,
                 co_vaCoa                      = Entity.co_vaCoa,
                 IdIden_credito                = Entity.IdIden_credito,
                 IdCod_101                     = Entity.IdCod_101,
                 IdTipoFlujo                   = Entity.IdTipoFlujo,
                 IdTipoServicio                = Entity.IdTipoServicio,
                 IdSucursal                    = Entity.IdSucursal,
                 PagoLocExt                    = Entity.PagoLocExt,
                 PaisPago                      = Entity.PaisPago,
                 ConvenioTributacion_bool      = Entity.ConvenioTributacion == "SI" ? true : false,
                 PagoSujetoRetencion_bool      = Entity.PagoSujetoRetencion == "SI" ? true : false,
                 BseImpNoObjDeIva              = Entity.BseImpNoObjDeIva,
                 fecha_autorizacion            = Entity.fecha_autorizacion,
                 Num_Autorizacion              = Entity.Num_Autorizacion,
                 Num_Autorizacion_Imprenta     = Entity.Num_Autorizacion_Imprenta,
                 cp_es_comprobante_electronico = Entity.cp_es_comprobante_electronico,
                 Tipodoc_a_Modificar           = Entity.Tipodoc_a_Modificar,
                 estable_a_Modificar           = Entity.estable_a_Modificar,
                 ptoEmi_a_Modificar            = Entity.ptoEmi_a_Modificar,
                 num_docu_Modificar            = Entity.num_docu_Modificar,
                 aut_doc_Modificar             = Entity.aut_doc_Modificar,
                 IdTipoMovi                    = Entity.IdTipoMovi,
                 Estado         = Entity.Estado,
                 IdBodega       = Entity.IdBodega,
                 IdSucursal_cxp = Entity.IdSucursal_cxp
             };
         }
         return(info);
     }
     catch (Exception)
     {
         throw;
     }
 }
        public bool guardarDB(cp_orden_giro_Info info)
        {
            try
            {
                using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar())
                {
                    cp_orden_giro Entity = new cp_orden_giro
                    {
                        IdEmpresa                     = info.IdEmpresa,
                        IdCbteCble_Ogiro              = info.IdCbteCble_Ogiro,
                        IdTipoCbte_Ogiro              = info.IdTipoCbte_Ogiro,
                        IdOrden_giro_Tipo             = info.IdOrden_giro_Tipo,
                        IdProveedor                   = info.IdProveedor,
                        co_fechaOg                    = info.co_fechaOg,
                        co_serie                      = info.co_serie,
                        co_factura                    = info.co_factura,
                        co_FechaFactura               = info.co_FechaFactura,
                        co_FechaContabilizacion       = info.co_FechaContabilizacion,
                        co_FechaFactura_vct           = info.co_FechaFactura_vct,
                        co_plazo                      = info.co_plazo,
                        co_observacion                = info.co_observacion,
                        co_subtotal_iva               = info.co_subtotal_iva,
                        co_subtotal_siniva            = info.co_subtotal_siniva,
                        co_baseImponible              = info.co_baseImponible,
                        co_Por_iva                    = info.co_Por_iva,
                        co_valoriva                   = info.co_valoriva,
                        IdCod_ICE                     = info.IdCod_ICE,
                        co_total                      = info.co_total,
                        co_valorpagar                 = info.co_valorpagar,
                        co_vaCoa                      = "S",
                        IdIden_credito                = info.IdIden_credito,
                        IdCod_101                     = info.IdCod_101,
                        IdTipoFlujo                   = info.IdTipoFlujo,
                        IdTipoServicio                = info.IdTipoServicio,
                        IdSucursal                    = info.IdSucursal,
                        PagoLocExt                    = info.PagoLocExt,
                        PaisPago                      = info.PaisPago,
                        ConvenioTributacion           = info.ConvenioTributacion_bool == true ? "SI" : "NO",
                        PagoSujetoRetencion           = info.PagoSujetoRetencion_bool == true ? "SI" : "NO",
                        BseImpNoObjDeIva              = info.BseImpNoObjDeIva,
                        fecha_autorizacion            = info.fecha_autorizacion,
                        Num_Autorizacion              = info.Num_Autorizacion,
                        Num_Autorizacion_Imprenta     = info.Num_Autorizacion_Imprenta,
                        cp_es_comprobante_electronico = info.cp_es_comprobante_electronico,
                        Tipodoc_a_Modificar           = info.Tipodoc_a_Modificar,
                        estable_a_Modificar           = info.estable_a_Modificar,
                        ptoEmi_a_Modificar            = info.ptoEmi_a_Modificar,
                        num_docu_Modificar            = info.num_docu_Modificar,
                        aut_doc_Modificar             = info.aut_doc_Modificar,
                        IdTipoMovi                    = info.IdTipoMovi,
                        Estado         = "A",
                        IdUsuario      = info.IdUsuario,
                        Fecha_Transac  = info.Fecha_Transac = DateTime.Now,
                        IdBodega       = info.IdBodega,
                        IdSucursal_cxp = info.IdSucursal_cxp
                    };

                    if (info.lst_det.Count > 0)
                    {
                        int secuencia = 1;
                        foreach (var item in info.lst_det)
                        {
                            Context.cp_orden_giro_det.Add(new cp_orden_giro_det
                            {
                                IdEmpresa          = info.IdEmpresa,
                                IdTipoCbte_Ogiro   = info.IdTipoCbte_Ogiro,
                                IdCbteCble_Ogiro   = info.IdCbteCble_Ogiro,
                                Secuencia          = secuencia++,
                                IdProducto         = item.IdProducto,
                                Cantidad           = item.Cantidad,
                                CostoUni           = item.CostoUni,
                                PorDescuento       = item.PorDescuento,
                                PorIva             = item.PorIva,
                                DescuentoUni       = item.DescuentoUni,
                                IdUnidadMedida     = item.IdUnidadMedida,
                                CostoUniFinal      = item.CostoUniFinal,
                                IdCod_Impuesto_Iva = item.IdCod_Impuesto_Iva,
                                Subtotal           = item.Subtotal,
                                ValorIva           = item.ValorIva,
                                Total        = item.Total,
                                IdCtaCbleInv = item.IdCtaCbleInv,

                                IdEmpresa_oc  = item.IdEmpresa_oc,
                                IdSucursal_oc = item.IdSucursal_oc,
                                IdOrdenCompra = item.IdOrdenCompra,
                                Secuencia_oc  = item.Secuencia_oc
                            });
                        }

                        var movi = armar_movi_inven(info, null);
                        if (movi != null)
                        {
                            if (data_inv.guardarDB(movi, "+"))
                            {
                                Context.cp_orden_giro_x_in_Ing_Egr_Inven.Add(new cp_orden_giro_x_in_Ing_Egr_Inven
                                {
                                    og_IdEmpresa        = info.IdEmpresa,
                                    og_IdTipoCbte_Ogiro = info.IdTipoCbte_Ogiro,
                                    og_IdCbteCble_Ogiro = info.IdCbteCble_Ogiro,

                                    inv_IdEmpresa         = movi.IdEmpresa,
                                    inv_IdSucursal        = movi.IdSucursal,
                                    inv_IdMovi_inven_tipo = movi.IdMovi_inven_tipo,
                                    inv_IdNumMovi         = movi.IdNumMovi
                                });
                            }
                        }
                    }

                    Context.cp_orden_giro.Add(Entity);

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
        public bool modificarDB(cp_orden_giro_Info info)
        {
            try
            {
                using (Entities_cuentas_por_pagar Context = new Entities_cuentas_por_pagar())
                {
                    cp_orden_giro Entity = Context.cp_orden_giro.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa &&
                                                                                q.IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro &&
                                                                                q.IdCbteCble_Ogiro == info.IdCbteCble_Ogiro);
                    if (Entity == null)
                    {
                        return(false);
                    }
                    {
                        Entity.IdProveedor                   = info.IdProveedor;
                        Entity.co_fechaOg                    = info.co_fechaOg;
                        Entity.co_serie                      = info.co_serie;
                        Entity.co_factura                    = info.co_factura;
                        Entity.co_FechaFactura               = info.co_FechaFactura;
                        Entity.co_FechaContabilizacion       = info.co_FechaContabilizacion;
                        Entity.co_FechaFactura_vct           = info.co_FechaFactura_vct;
                        Entity.co_plazo                      = info.co_plazo;
                        Entity.co_observacion                = info.co_observacion;
                        Entity.co_subtotal_iva               = info.co_subtotal_iva;
                        Entity.co_subtotal_siniva            = info.co_subtotal_siniva;
                        Entity.co_baseImponible              = info.co_baseImponible;
                        Entity.co_Por_iva                    = info.co_Por_iva;
                        Entity.co_valoriva                   = info.co_valoriva;
                        Entity.IdCod_ICE                     = info.IdCod_ICE;
                        Entity.co_total                      = info.co_total;
                        Entity.co_valorpagar                 = info.co_valorpagar;
                        Entity.co_vaCoa                      = "S";
                        Entity.IdIden_credito                = info.IdIden_credito;
                        Entity.IdCod_101                     = info.IdCod_101;
                        Entity.IdTipoFlujo                   = info.IdTipoFlujo;
                        Entity.IdOrden_giro_Tipo             = info.IdOrden_giro_Tipo;
                        Entity.IdTipoServicio                = info.IdTipoServicio;
                        Entity.IdSucursal                    = info.IdSucursal;
                        Entity.PagoLocExt                    = info.PagoLocExt;
                        Entity.PaisPago                      = info.PaisPago;
                        Entity.ConvenioTributacion           = info.ConvenioTributacion_bool == true ? "SI" : "NO";
                        Entity.PagoSujetoRetencion           = info.PagoSujetoRetencion_bool == true ? "SI" : "NO";
                        Entity.BseImpNoObjDeIva              = info.BseImpNoObjDeIva;
                        Entity.fecha_autorizacion            = info.fecha_autorizacion;
                        Entity.Num_Autorizacion              = info.Num_Autorizacion;
                        Entity.Num_Autorizacion_Imprenta     = info.Num_Autorizacion_Imprenta;
                        Entity.cp_es_comprobante_electronico = info.cp_es_comprobante_electronico;
                        Entity.Tipodoc_a_Modificar           = info.Tipodoc_a_Modificar;
                        Entity.estable_a_Modificar           = info.estable_a_Modificar;
                        Entity.ptoEmi_a_Modificar            = info.ptoEmi_a_Modificar;
                        Entity.num_docu_Modificar            = info.num_docu_Modificar;
                        Entity.aut_doc_Modificar             = info.aut_doc_Modificar;
                        Entity.IdTipoMovi                    = info.IdTipoMovi;
                        Entity.IdBodega                      = info.IdBodega;
                        Entity.IdSucursal_cxp                = info.IdSucursal_cxp;
                    }

                    if (info.lst_det.Count > 0)
                    {
                        var lst_det = Context.cp_orden_giro_det.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro && q.IdCbteCble_Ogiro == info.IdCbteCble_Ogiro).ToList();
                        Context.cp_orden_giro_det.RemoveRange(lst_det);
                        int secuencia = 1;
                        foreach (var item in info.lst_det)
                        {
                            Context.cp_orden_giro_det.Add(new cp_orden_giro_det
                            {
                                IdEmpresa          = info.IdEmpresa,
                                IdTipoCbte_Ogiro   = info.IdTipoCbte_Ogiro,
                                IdCbteCble_Ogiro   = info.IdCbteCble_Ogiro,
                                Secuencia          = secuencia++,
                                IdProducto         = item.IdProducto,
                                Cantidad           = item.Cantidad,
                                CostoUni           = item.CostoUni,
                                PorDescuento       = item.PorDescuento,
                                PorIva             = item.PorIva,
                                DescuentoUni       = item.DescuentoUni,
                                IdUnidadMedida     = item.IdUnidadMedida,
                                CostoUniFinal      = item.CostoUniFinal,
                                IdCod_Impuesto_Iva = item.IdCod_Impuesto_Iva,
                                Subtotal           = item.Subtotal,
                                ValorIva           = item.ValorIva,
                                Total         = item.Total,
                                IdCtaCbleInv  = item.IdCtaCbleInv,
                                IdEmpresa_oc  = item.IdEmpresa_oc,
                                IdSucursal_oc = item.IdSucursal_oc,
                                IdOrdenCompra = item.IdOrdenCompra,
                                Secuencia_oc  = item.Secuencia_oc
                            });
                        }

                        var rel  = Context.cp_orden_giro_x_in_Ing_Egr_Inven.Where(q => q.og_IdEmpresa == info.IdEmpresa && q.og_IdTipoCbte_Ogiro == info.IdTipoCbte_Ogiro && q.og_IdCbteCble_Ogiro == info.IdCbteCble_Ogiro).FirstOrDefault();
                        var movi = armar_movi_inven(info, rel);
                        if (movi != null)
                        {
                            if (rel == null)
                            {
                                if (data_inv.guardarDB(movi, "+"))
                                {
                                    Context.cp_orden_giro_x_in_Ing_Egr_Inven.Add(new cp_orden_giro_x_in_Ing_Egr_Inven
                                    {
                                        og_IdEmpresa        = info.IdEmpresa,
                                        og_IdTipoCbte_Ogiro = info.IdTipoCbte_Ogiro,
                                        og_IdCbteCble_Ogiro = info.IdCbteCble_Ogiro,

                                        inv_IdEmpresa         = movi.IdEmpresa,
                                        inv_IdSucursal        = movi.IdSucursal,
                                        inv_IdMovi_inven_tipo = movi.IdMovi_inven_tipo,
                                        inv_IdNumMovi         = movi.IdNumMovi
                                    });
                                }
                            }
                            else
                            {
                                data_inv.modificarDB(movi);
                            }
                        }
                    }

                    Context.SaveChanges();
                }
                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }