public Response Update(Cuentas item, string empresaDB)
        {
            try
            {
                Cuentas cuenta = GetCuenta(item.CodCta, empresaDB);
                if (cuenta == null)
                {
                    throw new ArgumentException($"La cuenta bancaria {item.CodCta.Trim()} no existe.");
                }

                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                item.Rowguid         = cuenta.Rowguid;
                item.RowId           = cuenta.RowId;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = $"Cuenta bancaria {item.CodCta.Trim()} actualizada con éxito"
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #2
0
        public Response Save(SubLin item, string empresaDB)
        {
            try
            {
                LinArt linea = new LineasArticulosRepositorio().Find(item.CoLin, empresaDB);
                if (linea == null)
                {
                    throw new ArgumentException($"La línea {item.CoLin.Trim()} no existe.");
                }

                SubLin sublinea = Find(item.CoSubl, empresaDB);
                if (sublinea != null)
                {
                    throw new ArgumentException($"La Sublínea {item.CoSubl.Trim()} ya existe y esta asociada a la línea {sublinea.CoLin.Trim()}.");
                }

                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                item.Rowguid         = Guid.NewGuid();
                db.Entry(item).State = EntityState.Added;
                db.SaveChanges();

                return(new Response {
                    Status = "OK", Message = "Transacción realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
        public Response Update(LinArt item, string empresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
                LinArt linea = Find(item.CoLin, empresaDB);
                if (linea == null)
                {
                    throw new ArgumentException($"La línea {item.CoLin.Trim()} no existe.");
                }

                item.RowId           = linea.RowId;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = "Actualización realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #4
0
        public Response Update(Clientes item, string empresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                var rowID = GetCliente(item.CoCli.Trim(), empresaDB);

                if (rowID == null)
                {
                    throw new ArgumentException($"El cliente {item.CoCli.Trim()} no existe.");
                }

                ValidarCliente(item, empresaDB, false);

                item.RowId           = rowID.RowId;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = "Actualización realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #5
0
        public Response Save(Clientes item, string empresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                #region Validar datos cliente
                ValidarCliente(item, empresaDB, true);
                #endregion

                item.Rowguid         = Guid.NewGuid();
                item.FechaReg        = DateTime.Now;
                item.FecUltVe        = DateTime.Now;
                db.Entry(item).State = EntityState.Added;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = "Transacción realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
        public Response Update(CatArt item, string empresaDB)
        {
            try
            {
                CatArt categoria = Find(item.CoCat, empresaDB);
                if (categoria == null)
                {
                    throw new ArgumentException($"La categoría {item.CoCat.Trim()} no existe.");
                }

                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                item.Rowguid         = categoria.Rowguid;
                db.Entry(item).State = EntityState.Modified;
                return(new Response {
                    Status = "OK", Message = "Transacción realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #7
0
        public Response Update(Colores item, string empresaDB)
        {
            try
            {
                Colores color = Find(item.CoCol, empresaDB);
                if (color == null)
                {
                    throw new ArgumentException($"El color {item.CoCol.Trim()} no existe.");
                }

                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                item.Rowguid         = color.Rowguid;
                db.Entry(item).State = EntityState.Modified;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = "Actualización realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #8
0
        public void ActualizarNroControl(string numeroc, string sucursal_act, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            string valor = string.Empty;

            if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
            {
                Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);
                valor      = numeroc.Substring(numeroc.IndexOf("-") + 1, numeroc.Length - (numeroc.IndexOf("-") + 1));
                obj.Campo4 = valor;
            }
            else
            {
                List <Auxiliar> NroControl = (from control in db.Auxiliar where control.GrupAux == "NroControl" select control).ToList();
                foreach (var iNroControl in NroControl)
                {
                    switch (iNroControl.NomAux.Trim())
                    {
                    case "Control":
                        valor = Convert.ToInt32(numeroc.Substring(numeroc.IndexOf("-") + 1, numeroc.Length - (numeroc.IndexOf("-") + 1))).ToString();
                        break;

                    case "Prefijo":
                        valor = Convert.ToInt32(numeroc.Substring(0, numeroc.IndexOf("-"))).ToString();
                        break;

                    default:
                        break;
                    }
                    iNroControl.ValAux          = valor;
                    db.Entry(iNroControl).State = EntityState.Modified;
                }
            }
            db.SaveChanges();
        }
Пример #9
0
        private void ValidarAjuste(EncabAjuste obj, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

            #region Verificar sucursal
            new Utilitarios().GetSucursal(obj.CoSucu, empresaDB);
            #endregion

            #region Verficar renglones
            foreach (var iRengAju in obj.DetaAjuste)
            {
                #region Verificar articulo
                Art articulo = new ArticulosRepositorio().Find(iRengAju.CoArt, empresaDB);
                if (articulo == null)
                {
                    throw new ArgumentException($"El artículo {iRengAju.CoArt.Trim()} indicado en el renglón {iRengAju.RengNum} del ajuste no existe.");
                }
                #endregion

                #region Verificar cantidad
                if (iRengAju.TotalArt <= 0)
                {
                    throw new ArgumentException($"Cantidad indicada en el renglón {iRengAju.RengNum} es inválida. (Valor indicado: {iRengAju.TotalArt}).");
                }
                #endregion

                #region Verificar unidad primaria
                Unidades unidadPpal = db.Unidades.FirstOrDefault(u => u.CoUni.Trim() == iRengAju.UniVenta.Trim());
                if (unidadPpal == null)
                {
                    throw new ArgumentException($"La unidad primaria indicada en el renglón {iRengAju.RengNum} no existe.");
                }
                #endregion

                #region Verificar unidad secundaria
                Unidades unidadSecd = db.Unidades.FirstOrDefault(u => u.CoUni.Trim() == iRengAju.SuniCompr.Trim());
                if (unidadSecd == null)
                {
                    throw new ArgumentException($"La unidad secundaria indicada en el renglón {iRengAju.RengNum} no existe.");
                }
                #endregion

                #region Verificar almacen
                SubAlma almacen = db.SubAlma.FirstOrDefault(a => a.CoSub == iRengAju.CoAlma);
                if (almacen == null)
                {
                    throw new ArgumentException($"El almacén {iRengAju.CoAlma.Trim()} suministrado en el renglón {iRengAju.RengNum} no existe.");
                }
                else
                {
                    if (almacen.CoAlma.Trim() != obj.CoSucu.Trim())
                    {
                        throw new ArgumentException($"El almacén {iRengAju.CoAlma.Trim()} suministrado en el renglón {iRengAju.RengNum} no está permitido utilizarlo en la sucursal suministrada {obj.CoSucu.Trim()}.");
                    }
                }
                #endregion
            }
            #endregion
        }
Пример #10
0
 public Response Update(MovCaj item, string empresaDB)
 {
     using var db         = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
     db.Entry(item).State = EntityState.Modified;
     db.SaveChanges();
     return(new Response {
         Status = "OK", Message = "Movimiento de caja actualizado con éxito"
     });
 }
        private void ValidarProveedor(Prov obj, string empresaDB, bool isGuardar)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            Prov proveedor = db.Prov.FirstOrDefault(p => p.CoProv.Trim() == obj.CoProv.Trim());

            if (proveedor == null || !isGuardar)
            {
                #region Tipo proveedor
                TipoPro tipoPro = db.TipoPro.FirstOrDefault(tp => tp.TipPro.Trim() == obj.Tipo.Trim());
                if (tipoPro == null)
                {
                    throw new ArgumentException($"El tipo de proveedor [{obj.Tipo.Trim()}] indicado no existe.");
                }
                #endregion

                #region Zona
                Zona zona = db.Zona.FirstOrDefault(z => z.CoZon.Trim() == obj.CoZon.Trim());
                if (zona == null)
                {
                    throw new ArgumentException($"La zona {obj.CoZon.Trim()} indicada no existe.");
                }
                #endregion

                #region Segmento
                Segmento segmento = db.Segmento.FirstOrDefault(s => s.CoSeg.Trim() == obj.CoSeg.Trim());
                if (segmento == null)
                {
                    throw new ArgumentException($"El segmento {obj.CoSeg.Trim()} indicado no existe.");
                }
                #endregion

                #region Cuenta ingr/egre
                CtaIngr ctaIngr = db.CtaIngr.FirstOrDefault(f => f.CoIngr.Trim() == obj.CoIngr.Trim());
                if (ctaIngr == null)
                {
                    throw new ArgumentException($"La cuenta ingreso/egreso {obj.CoIngr.Trim()} indicada no existe.");
                }
                #endregion

                #region Sucursal
                Utilitarios utilitarios = new Utilitarios();
                utilitarios.GetSucursal(obj.CoSucu, empresaDB);
                #endregion

                #region Tabulador ISLR
                TabIslr tabulador = db.TabIslr.FirstOrDefault(t => t.CoTab == obj.CoTab);
                if (tabulador == null)
                {
                    throw new ArgumentException($"El tabulador de ISLR {obj.CoTab} indicado no existe.");
                }
                #endregion
            }
            else
            {
                throw new ArgumentException($"El Proveedor {obj.CoProv.Trim()} indicado ya existe.");
            }
        }
Пример #12
0
        public Almacen GetSucursal(string codSucursal, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            Almacen sucu = db.Almacen.FirstOrDefault(s => s.CoAlma.Trim() == codSucursal.Trim());

            if (sucu == null)
            {
                throw new ArgumentException($"La sucursal {codSucursal.Trim()} indicada no existe.");
            }
            return(sucu);
        }
Пример #13
0
        public decimal BuscarISV(string tipoTasa, DateTime fecha, string tipoDoc, string EmpresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(EmpresaDB));
            var Qry = (from tab in
                       db.TabEnc
                       .Where(t => tipoDoc == "V" ? t.TipoImp == 1 : t.TipoImp == 2 && t.Fecha >= fecha)
                       orderby tab.Fecha descending
                       select tipoTasa == "1" ? tab.Tasa : tipoTasa == "2" ? tab.Tasag10 : tab.Tasag20).Take(1);

            return(Qry.FirstOrDefault());
        }
Пример #14
0
        public void ActualizarStockArticuloAlmacen(string CodigoArticulo, string CodigoAlmacen, decimal Cantidad, bool SumaStock, string EmpresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(EmpresaDB));

                Art  ArtVentaServicio = db.Art.FirstOrDefault(a => a.CoArt == CodigoArticulo);
                bool result;

                if (ArtVentaServicio.Tipo == "V")
                {
                    var StockxAlmacen = db.StAlmac.FirstOrDefault(a => a.CoArt == ArtVentaServicio.CoArt && a.CoAlma == CodigoAlmacen);

                    decimal StockNuevo = (Cantidad * (SumaStock ? 1 : -1));

                    if (StockxAlmacen != null)
                    {
                        #region Actualizando stock en almacen
                        StockxAlmacen.StockAct       += StockNuevo;
                        db.Entry(StockxAlmacen).State = EntityState.Modified;
                        db.SaveChanges();
                        result = true;
                        #endregion
                    }
                    else
                    {
                        #region Agregar nuevo stock en almacen
                        StAlmac NuevoStAlmac = new StAlmac
                        {
                            CoAlma   = CodigoAlmacen,
                            CoArt    = CodigoArticulo,
                            StockAct = StockNuevo
                        };
                        db.Entry(NuevoStAlmac).State = EntityState.Added;
                        db.SaveChanges();
                        result = true;
                        #endregion
                    }

                    #region Actualizando stock en articulo
                    if (result) // Validar que la transacción anterior se haya completado
                    {
                        ArtVentaServicio.StockAct       += StockNuevo;
                        db.Entry(ArtVentaServicio).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                    #endregion
                }
            }
            catch (Exception ex)
            {
                throw new ArgumentException(ex.Message);
            }
        }
 public ICollection <Art> GetAll(string empresaDB)
 {
     try
     {
         using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
         return(db.Art.ToList());
     }
     catch (Exception ex)
     {
         throw new ArgumentException(ex.Message);
     }
 }
Пример #16
0
        public Moneda GetMoneda(string codMoneda, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

            Moneda moneda = db.Moneda.FirstOrDefault(m => m.CoMone.Trim() == codMoneda.Trim());

            if (moneda == null)
            {
                throw new ArgumentException($"La moneda indicada {codMoneda.Trim()} no existe.");
            }
            return(moneda);
        }
 public Art Find(string key, string empresaDB)
 {
     try
     {
         using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
         //var Qry= db.Art.FirstOrDefault(a => a.CoArt.Trim() == key);
         return(db.Art.FirstOrDefault(a => a.CoArt.Trim() == key));
     }
     catch (Exception ex)
     {
         throw new ArgumentException(ex.Message);
     }
 }
Пример #18
0
 public void ActualizarConsecutivo(int numero, string tipoDoc, string sucursal_act, string empresaDB)
 {
     using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
     if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
     {
         Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);
         ActualizarNumeroConsecutivoTabla(obj, numero, tipoDoc, empresaDB);
     }
     else
     {
         ParEmp obj = db.ParEmp.FirstOrDefault();
         ActualizarNumeroConsecutivoTabla(obj, numero, tipoDoc, empresaDB);
     }
 }
        public Response Save(DocumCc item, string empresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
                Utilitarios utilitarios = new Utilitarios();

                #region Buscar consecutivo
                int numeroDocumento = utilitarios.BuscarConsecutivo(item.TipoDoc.Trim(), item.CoSucu, empresaDB);
                #endregion

                Clientes cliente = new ClientesRepositorio().GetCliente(item.CoCli, empresaDB);
                if (cliente == null)
                {
                    throw new ArgumentException($"El cliente {item.CoCli.Trim()} no existe.");
                }
                Vendedor vendedor = new VendedoresRepositorio().Find(item.CoVen, empresaDB);
                if (vendedor == null)
                {
                    throw new ArgumentException($"El vendedor {item.CoVen.Trim()} no existe.");
                }

                #region Construcción de DisCen
                string DisCen = utilitarios.ArmarDisCen(item.FecEmis, item.MontoBru, item.MontoImp, (item.Tipo == "6") ? item.MontoNet : 0, empresaDB);
                #endregion

                item.NroDoc          = numeroDocumento;
                item.Contrib         = cliente.Contribu;
                item.DisCen          = DisCen;
                db.Entry(item).State = EntityState.Added;
                db.SaveChanges();

                #region Actualizar consecutivo
                utilitarios.ActualizarConsecutivo(numeroDocumento, item.TipoDoc.Trim(), item.CoSucu, empresaDB);
                #endregion

                return(new Response {
                    Status = "OK", Message = "Transacción realizada con éxito", FacturaID = item.NroDoc.ToString()
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #20
0
        private void ActualizarNumeroConsecutivoTabla(object tabla, int numero, string tipoDoc, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            switch (tipoDoc)
            {
            case "N/CR":
                tabla.GetType().GetProperty("NcNum").SetValue(tabla, numero);
                break;

            case "DEVO":
                tabla.GetType().GetProperty("DevcNum").SetValue(tabla, numero);
                break;

            case "AJUS":
                tabla.GetType().GetProperty("AjusNum").SetValue(tabla, numero);
                break;

            case "FACT":
                tabla.GetType().GetProperty("FactNum").SetValue(tabla, numero);
                break;

            case "COBR":
                tabla.GetType().GetProperty("CbNum").SetValue(tabla, numero);
                break;

            case "MOVC":
                tabla.GetType().GetProperty("MovcNum").SetValue(tabla, numero);
                break;

            case "MOVB":
                tabla.GetType().GetProperty("MovbNum").SetValue(tabla, numero);
                break;

            case "ADEL":
                tabla.GetType().GetProperty("PostNum").SetValue(tabla, numero);
                break;

            case "NREC":
                tabla.GetType().GetProperty("NdrNum").SetValue(tabla, numero);
                break;

            default:
                break;
            }
            db.Entry(tabla).State = EntityState.Modified;
            db.SaveChanges();
        }
Пример #21
0
        public Response Update(SubLin item, string empresaDB)
        {
            try
            {
                LinArt linea = new LineasArticulosRepositorio().Find(item.CoLin, empresaDB);
                if (linea == null)
                {
                    throw new ArgumentException($"La Linea {item.CoLin.Trim()} suministrada no existe.");
                }

                SubLin sublinea = FindxLinea(item.CoSubl, item.CoLin, empresaDB);
                if (sublinea == null)
                {
                    throw new ArgumentException($"La Sublinea {item.CoSubl.Trim()} asociada a una Línea {item.CoLin.Trim()} no existe.");
                }

                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                FormattableString UpdateSubLinea = $@"UPDATE [sub_lin] SET 
                           [subl_des] = {item.SublDes} ,[co_lin] = {item.CoLin},[campo1] = {item.Campo1},[campo2] = {item.Campo2}
                          ,[campo3] = {item.Campo3},[campo4] = {item.Campo4},[co_us_in] = {item.CoUsIn},[fe_us_in] = {item.FeUsIn}
                          ,[co_us_mo] = {item.CoUsMo},[fe_us_mo] = {item.FeUsMo},[co_us_el] = {item.CoUsEl},[fe_us_el] = {item.FeUsEl}
                          ,[revisado] = {item.Revisado},[trasnfe] = {item.Trasnfe},[co_sucu] = {item.CoSucu},[co_imun] = {item.CoImun}
                          ,[co_reten] = {item.CoReten},[i_subl_des] = {item.ISublDes},[movil] = {item.Movil} 
                          WHERE rowguid = {sublinea.Rowguid}";
                int result = db.Database.ExecuteSqlInterpolated(UpdateSubLinea);

                if (result == 1)
                {
                    return(new Response {
                        Status = "OK", Message = "Actualización realizada con éxito."
                    });
                }
                else
                {
                    throw new ArgumentException($"No se actualizó el registro.");
                }
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
 public Response Update(DocumCc item, string empresaDB)
 {
     try
     {
         using var db         = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
         db.Entry(item).State = EntityState.Modified;
         db.SaveChanges();
         return(new Response {
             Status = "OK", Message = $"Actualizado el documento {item.TipoDoc} {item.NroDoc}."
         });
     }
     catch (Exception ex)
     {
         return(new Response {
             Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
         });
     }
 }
Пример #23
0
 public Response Save(MovBan item, string empresaDB)
 {
     try
     {
         using var db         = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
         db.Entry(item).State = EntityState.Added;
         db.SaveChanges();
         return(new Response {
             Status = "OK", Message = "Movimiento de banco creado satisfactoriamente"
         });
     }
     catch (Exception ex)
     {
         return(new Response {
             Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
         });
     }
 }
        public ICollection <LinArt> GetAll(string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

            var Qry = db.LinArt.Select(i => new LinArt
            {
                #region Campos
                CoLin    = i.CoLin,
                LinDes   = i.LinDes,
                DisCen   = i.DisCen,
                Campo1   = i.Campo1,
                Campo2   = i.Campo2,
                Campo3   = i.Campo3,
                Campo4   = i.Campo4,
                CoUsIn   = i.CoUsIn,
                FeUsIn   = i.FeUsIn,
                CoUsMo   = i.CoUsMo,
                FeUsMo   = i.FeUsMo,
                CoUsEl   = i.CoUsEl,
                FeUsEl   = i.FeUsEl,
                Revisado = i.Revisado,
                Trasnfe  = i.Trasnfe,
                CoSucu   = i.CoSucu,
                Rowguid  = i.Rowguid,
                CoImun   = i.CoImun,
                CoReten  = i.CoReten,
                ComiLin  = i.ComiLin,
                ComiLin2 = i.ComiLin2,
                RowId    = i.RowId,
                Va       = i.Va,
                ILinDes  = i.ILinDes,
                Movil    = i.Movil,
                SubLin   = i.SubLin,
                //Art = i.Art
                #endregion
            }).ToList();

            return(Qry);
        }
        public Response Save(Prov item, string empresaDB)
        {
            try
            {
                using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));

                ValidarProveedor(item, empresaDB, true);

                item.Rowguid         = Guid.NewGuid();
                db.Entry(item).State = EntityState.Added;
                db.SaveChanges();
                return(new Response {
                    Status = "OK", Message = "Transacción realizada con éxito."
                });
            }
            catch (Exception ex)
            {
                return(new Response {
                    Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
                });
            }
        }
Пример #26
0
 public Response Update(EncabFacturaVenta item, string empresaDB)
 {
     try
     {
         using var db         = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
         db.Entry(item).State = EntityState.Modified;
         db.SaveChanges();
         foreach (var iRengFac in item.DetaFacturaVenta)
         {
             db.Entry(iRengFac).State = EntityState.Modified;
         }
         db.SaveChanges();
         return(new Response {
             Status = "OK", Message = "Actualización realizada con éxito."
         });
     }
     catch (Exception ex)
     {
         return(new Response {
             Status = "ERROR", Message = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message
         });
     }
 }
Пример #27
0
        public string BuscarNroControl(string sucursal_act, string EmpresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(EmpresaDB));

            string prefijo = string.Empty, numeroc = string.Empty;
            string mask = string.Empty;

            #region Verificar si maneja sucursales
            if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
            {
                Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);

                if (string.IsNullOrEmpty(obj.Campo3.Trim()))
                {
                    throw new ArgumentException($"No existe configurado el prefijo del número de control en la sucursal {sucursal_act.Trim()} (Campo3)");
                }

                if (string.IsNullOrEmpty(obj.Campo4.Trim()))
                {
                    throw new ArgumentException($"No existe configurado el número de control en la sucursal {sucursal_act.Trim()} (Campo4)");
                }

                prefijo = obj.Campo3.Trim();

                var len = obj.Campo4.Trim().Length;
                var con = Convert.ToInt32(obj.Campo4.Trim()) + 1;

                mask    = new String('0', len);
                numeroc = con.ToString($"{mask}");
            }
            #endregion

            else

            #region Buscar en Configuracion adicional de la empresa la carpeta correspondiente (NroControl).
            {
                List <Auxiliar> NroControl = (from control in db.Auxiliar where control.GrupAux == "NroControl" select control).ToList();
                if (NroControl.Count == 0)
                {
                    throw new ArgumentException("No existe la carpeta 'NroControl' configurada en datos adicionales de la empresa.");
                }
                else
                {
                    foreach (var iControl in NroControl)
                    {
                        switch (iControl.NomAux.Trim())
                        {
                        case "Prefijo":
                            mask    = iControl.FormAux.Trim().Replace("9", "0");
                            prefijo = (Convert.ToInt32(iControl.ValAux.Trim())).ToString($"{mask}");
                            //prefijo = $"{(Convert.ToInt32(iControl.ValAux.Trim()) + 1): 00 }";
                            break;

                        case "Control":
                            mask    = iControl.FormAux.Trim().Replace("9", "0");
                            numeroc = (Convert.ToInt32(iControl.ValAux.Trim()) + 1).ToString($"{mask}");
                            //numeroc = $"{(Convert.ToInt32(iControl.ValAux.Trim()) + 1): 000000}";
                            break;

                        default:
                            break;
                        }
                    }
                }
            }
            #endregion

            return($@"{prefijo}-{numeroc}".Trim());
        }
 public IEnumerable <DocumCc> GetAllbyTipoDoc(string TipoDoc, string empresaDB)
 {
     using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
     return(db.DocumCc.Where(dc => dc.TipoDoc.Trim() == TipoDoc.Trim()).ToList());
 }
 public IEnumerable <DocumCc> GetAll(string empresaDB)
 {
     using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
     return(db.DocumCc.ToList());
 }
Пример #30
0
        public int BuscarConsecutivo(string tipoDoc, string sucursal_act, string empresaDB)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            int numero = 0;

            #region Verificar si maneja sucursales
            if (db.ParEmp.Select(p => p.PFactAlm).FirstOrDefault())
            {
                Almacen obj = db.Almacen.FirstOrDefault(a => a.CoAlma == sucursal_act);
                numero = BuscarCampoProximoNumeroTabla(obj, tipoDoc);
            }
            else
            {
                ParEmp obj = db.ParEmp.FirstOrDefault();
                numero = BuscarCampoProximoNumeroTabla(obj, tipoDoc);
            }
            #endregion

            #region Buscar consecutivo en tablas
            while (true)
            {
                #region Busqueda movimientos en documentos
                if (tipoDoc != "DEVO" && tipoDoc != "AJUS" && tipoDoc != "COBR" && tipoDoc != "MOVC" && tipoDoc != "MOVB" && tipoDoc != "NREC")
                {
                    DocumCc documcc = DocumCCRepositorio.GetDocumento(numero, tipoDoc, empresaDB);
                    if (documcc != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en ajustes de inventario
                if (tipoDoc == "AJUS")
                {
                    Ajuste ajuste = db.Ajuste.FirstOrDefault(a => a.AjueNum == numero);
                    if (ajuste != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en devoluciones de clientes
                if (tipoDoc == "DEVO")
                {
                    DevCli devCli = db.DevCli.FirstOrDefault(dc => dc.FactNum == numero);
                    if (devCli != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en cobros
                if (tipoDoc == "COBR")
                {
                    //EncabCobro cobro = cobrosRepositorio.Find(numero, empresaDB);
                    Cobros cobro = db.Cobros.FirstOrDefault(c => c.CobNum == numero);
                    if (cobro != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en caja
                if (tipoDoc == "MOVC")
                {
                    MovCaj movcaja = MovCRepositorio.Find(numero, empresaDB);
                    if (movcaja != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda movimientos en bancos
                if (tipoDoc == "MOVB")
                {
                    MovBan movbanco = MovBRepositorio.Find(numero, empresaDB);
                    if (movbanco != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion

                #region Busqueda notas de recepcion
                if (tipoDoc == "NREC")
                {
                    EncabNotRec notRec = NotRRepositorio.Find(numero, empresaDB);
                    if (notRec != null)
                    {
                        numero++;
                    }
                    else
                    {
                        break;
                    }
                }
                #endregion
            }
            #endregion

            return(numero);
        }