示例#1
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
                });
            }
        }
示例#2
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 IActionResult Actualizar([FromBody] SubLin sublinea, string Emp)
        {
            sublinea.CoUsMo = string.IsNullOrEmpty(sublinea.CoUsMo) ? "999" : sublinea.CoUsMo;
            sublinea.FeUsMo = DateTime.Now;
            sublinea.CoUsEl = string.Empty;
            sublinea.FeUsEl = Convert.ToDateTime("01/01/1900");

            resultado = metodo.Update(sublinea, Emp);

            if (resultado.Status == "OK")
            {
                return(Ok(resultado));
            }
            else
            {
                return(BadRequest(resultado));
            }
        }
        private void ValidarArticulo(Art obj, string empresaDB, bool isGuardar)
        {
            using var db = new ProfitAdmin2K8(conn.GetDbContextOptions(empresaDB));
            Art articulo = db.Art.FirstOrDefault(a => a.CoArt.Trim() == obj.CoArt.Trim());

            /*El parametro isGuardar se estable para validar registros inclusive editando*/

            if (articulo == null || !isGuardar)
            {
                #region Verificar linea
                LinArt linea = db.LinArt.FirstOrDefault(l => l.CoLin.Trim() == obj.CoLin.Trim());
                if (linea == null)
                {
                    throw new ArgumentException($"La línea {obj.CoLin.Trim()} indicada no existe.");
                }
                #endregion

                #region Verificar sublinea
                SubLin sublinea = db.SubLin.FirstOrDefault(sl => sl.CoSubl.Trim() == obj.CoSubl.Trim() && sl.CoLin.Trim() == obj.CoLin.Trim());
                if (sublinea == null)
                {
                    throw new ArgumentException($"La Sublínea {obj.CoSubl.Trim()} indicada no existe ó no pertenece a la línea {obj.CoLin.Trim()} verifique.");
                }
                #endregion

                #region Varificar catergoria
                CatArt categoria = db.CatArt.FirstOrDefault(c => c.CoCat.Trim() == obj.CoCat.Trim());
                if (categoria == null)
                {
                    throw new ArgumentException($"La categoría {obj.CoCat.Trim()} indicada no existe.");
                }
                #endregion

                #region Verificar color
                Colores color = db.Colores.FirstOrDefault(c => c.CoCol.Trim() == obj.CoColor.Trim());
                if (color == null)
                {
                    throw new ArgumentException($"El coloro {obj.CoColor.Trim()} indicado no existe.");
                }
                #endregion

                #region Verificar procedencia
                Proceden procedencia = db.Proceden.FirstOrDefault(p => p.CodProc.Trim() == obj.Procedenci.Trim());
                if (procedencia == null)
                {
                    throw new ArgumentException($"La procedencia {obj.Procedenci.Trim()} indicada no existe.");
                }
                #endregion

                #region Verificar proveedor
                Prov proveedor = db.Prov.FirstOrDefault(p => p.CoProv.Trim() == obj.CoProv.Trim());
                if (proveedor == null)
                {
                    throw new ArgumentException($"El proveedor {obj.CoProv.Trim()} indicado no existe.");
                }
                #endregion

                #region VErificar unidad primaria
                Unidades unidad = db.Unidades.FirstOrDefault(u => u.CoUni.Trim() == obj.UniVenta.Trim());
                if (unidad == null)
                {
                    throw new ArgumentException($"La unidad primaria {obj.UniVenta.Trim()} indicada no existe.");
                }
                #endregion

                #region Verificar sucursal
                Utilitarios utilitarios = new Utilitarios();
                utilitarios.GetSucursal(obj.CoSucu, empresaDB);
                #endregion
            }
            else
            {
                throw new ArgumentException($"El artículo {obj.CoArt.Trim()} indicado ya existe.");
            }
        }