Пример #1
0
        public List <ItemMovimentoStockDTO> GetAllProductToInventoryList(string pWarehouseID, string pFilial, string pFamily, int pLoteID, int pSerialID, int pSizeID)
        {
            StockInfoDTO dto = new StockInfoDTO();

            dto.ArmazemID        = Convert.ToInt32(pWarehouseID);
            dto.DesignacaoArtigo = string.Empty;
            dto.Filial           = pFilial;
            var product = new ArtigoDTO();

            product.LoteID         = pLoteID;
            product.DimesaoID      = pSizeID;
            product.SerialNumberID = pSerialID;
            product.SemelhanteID   = -1;
            product.Categoria      = pFamily;
            product.Utilizador     = string.Empty;
            dto.Product            = product;
            if (dto.ArmazemID > 0)
            {
                return(daoStock.GetToInventory(dto));
            }
            else
            {
                return(new List <ItemMovimentoStockDTO>());
            }
        }
Пример #2
0
        public StockInfoDTO StockActualArmazem(int pCodigo, int pArmazem, DateTime pInicio, DateTime pTermino)
        {
            StockInfoDTO dto = new StockInfoDTO();

            try
            {
                // ESTA MÉTODO DEVERÁ SER ALTERADO PARA PEGAR A INFORMAÇÃO NA TABELA DE MOVIMENTOS DIRECTOS DE STOCK

                ComandText = "stp_COM_STOCK_ACTUAL_ARMAZEM";
                AddParameter("@ARTIGO", pCodigo);
                AddParameter("@ARMAZEM", pArmazem);
                MySqlDataReader dr = ExecuteReader();

                if (dr.Read())
                {
                    dto.Actual        = decimal.Parse(dr[0].ToString());
                    dto.ArmazemID     = int.Parse(dr[1].ToString());
                    dto.WareHouseName = dr[2].ToString();
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", "");
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
Пример #3
0
        public StockInfoDTO Adicionar(StockInfoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_STOCK_ADICIONAR";

                AddParameter("ARTIGO", dto.ArtigoID);
                AddParameter("ARMAZEM", dto.ArmazemID);
                AddParameter("QUANTIDADE", dto.Actual);
                AddParameter("CONTAGEM", dto.ContagemFisica);
                AddParameter("MAXIMA", dto.Maxima);
                AddParameter("MINIMO", dto.Minima);
                ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
Пример #4
0
        public List <ArtigoDTO> ListarStock(string pArmazem, string pArtigo, string pFilial)
        {
            StockInfoDTO dto = new StockInfoDTO();

            dto.ArmazemID        = Convert.ToInt32(pArmazem);
            dto.DesignacaoArtigo = pArtigo;
            dto.Filial           = pFilial;
            return(daoStock.ObterPorFiltro(dto));
        }
Пример #5
0
        public List <ArtigoDTO> GetStockLote(LoteDTO dto)
        {
            var Product = new StockInfoDTO();

            Product.LookupNumericField1 = dto.Codigo;
            Product.ArmazemID           = int.Parse(dto.WareHouseName);
            Product.Filial           = "-1";
            Product.DesignacaoArtigo = "";
            Product.Reference        = "";
            Product.BarCode          = "";
            return(daoProduct.ObterStock(Product));
        }
Пример #6
0
        public List <ArtigoDTO> ObterPorFiltro(StockInfoDTO dto)
        {
            List <ArtigoDTO> lista = new List <ArtigoDTO>();
            ArtigoDTO        objArtigo;

            try
            {
                ComandText = "stp_COM_STOCK_OBTERPORFILTRO";

                AddParameter("ARMAZEM", dto.ArmazemID);
                AddParameter("ARTIGO", dto.DesignacaoArtigo);
                AddParameter("@REFERENCIA", dto.Reference == null ? string.Empty : dto.Reference);
                AddParameter("@CODIGO_BARRAS", dto.BarCode == null ? string.Empty : dto.BarCode);
                AddParameter("FILIAL", dto.Filial);
                AddParameter("LOTE_ID", dto.LookupNumericField1);
                AddParameter("DIMENSAO_ID", dto.LookupNumericField2);
                AddParameter("SERIE_ID", dto.LookupNumericField3);
                AddParameter("SEMELHANTE_ID", dto.LookupNumericField4);

                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    objArtigo = new ArtigoDTO
                    {
                        Codigo        = int.Parse(dr[0].ToString()),
                        Referencia    = dr[1].ToString(),
                        Designacao    = dr[2].ToString(),
                        Categoria     = dr[3].ToString(),
                        Quantidade    = Convert.ToDecimal(dr[4].ToString()),
                        PrecoCusto    = Convert.ToDecimal(dr[5].ToString()),
                        PrecoVenda    = Convert.ToDecimal(dr[6].ToString()),
                        WareHouseName = dr[7].ToString(),
                        FotoArtigo    = dr[8].ToString(),
                        CodigoBarras  = dr[9].ToString()
                    };
                    lista.Add(objArtigo);
                }
            }
            catch (Exception ex)
            {
                objArtigo = new ArtigoDTO();
                objArtigo.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
Пример #7
0
        public List <StockInfoDTO> GetDefaultProductWarehouseList()
        {
            var lista = new List <StockInfoDTO>();

            foreach (var warehouse in ArmazemRN.GetInstance().ObterPorFiltro(new ArmazemDTO(-1, "", "")))
            {
                var dto = new StockInfoDTO();
                dto.ArmazemID     = warehouse.Codigo;
                dto.WareHouseName = warehouse.Descricao;
                dto.ArtigoID      = -1;
                dto.Actual        = 0;
                dto.Minima        = 0;
                dto.Maxima        = 0;

                lista.Add(dto);
            }

            return(lista);
        }
Пример #8
0
        public List <StockInfoDTO> ObterPorArtigo(ArtigoDTO pArtigo)
        {
            List <StockInfoDTO> lista = new List <StockInfoDTO>();
            StockInfoDTO        dto;

            try
            {
                ComandText = "stp_COM_STOCK_OBTERPORARTIGO";

                AddParameter("ARTIGO", pArtigo.Codigo);

                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    dto                = new StockInfoDTO();
                    dto.ArtigoID       = int.Parse(dr[0].ToString());
                    dto.ArmazemID      = int.Parse(dr[1].ToString());
                    dto.WareHouseName  = dr[2].ToString();
                    dto.Actual         = Convert.ToDecimal(dr[3].ToString() ?? "0");
                    dto.ContagemFisica = Convert.ToDecimal(dr[4].ToString() ?? "0");
                    dto.Minima         = Convert.ToDecimal(dr[5].ToString() ?? "0");
                    dto.Maxima         = Convert.ToDecimal(dr[6].ToString() ?? "0");
                    dto.IsWarehousePOS = dr["ARM_POS"].ToString() == "1" ? true : false;
                    dto.UltimaContagem = dr["STOCK_DATA_ULTIMA_CONTAGEM"].ToString() != "" ? DateTime.Parse(dr["STOCK_DATA_ULTIMA_CONTAGEM"].ToString()) : DateTime.MinValue;
                    lista.Add(dto);
                }
            }
            catch (Exception ex)
            {
                dto = new StockInfoDTO();
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
Пример #9
0
 public List <ArtigoDTO> ConsultaStock(StockInfoDTO dto) => daoProduct.ObterStock(dto);
Пример #10
0
        public List <ItemMovimentoStockDTO> GetToInventory(StockInfoDTO dto)
        {
            List <ItemMovimentoStockDTO> lista = new List <ItemMovimentoStockDTO>();
            ItemMovimentoStockDTO        _artigo;

            try
            {
                ComandText = "stp_COM_STOCK_OBTERPORFILTRO";

                AddParameter("WAREHOUSE_ID", dto.ArmazemID);
                AddParameter("ARTIGO", dto.DesignacaoArtigo);
                AddParameter("@REFERENCIA", dto.Reference == null ? string.Empty : dto.Reference);
                AddParameter("@CODIGO_BARRAS", dto.BarCode == null ? string.Empty : dto.BarCode);
                AddParameter("FILIAL", dto.Filial);
                AddParameter("LOTE_ID", dto.Product.LoteID <= 0 ?(object)DBNull.Value : dto.Product.LoteID);
                AddParameter("DIMENSAO_ID", dto.Product.DimesaoID <= 0 ? (object)DBNull.Value : dto.Product.DimesaoID);
                AddParameter("SERIAL_ID", dto.Product.SerialNumberID <= 0 ? (object)DBNull.Value : dto.Product.SerialNumberID);
                AddParameter("SEMELHANTE_ID", dto.Product.SemelhanteID <= 0 ? (object)DBNull.Value : dto.Product.SemelhanteID);
                AddParameter("FAMILIA_ID", dto.Product.Categoria == "-1" ? (object)DBNull.Value : dto.Product.Categoria);
                AddParameter("UTILIZADOR", dto.Utilizador);

                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    _artigo                = new ItemMovimentoStockDTO();
                    _artigo.ArtigoID       = int.Parse(dr[0].ToString());
                    _artigo.Referencia     = dr[1].ToString();
                    _artigo.Designacao     = dr[2].ToString();
                    _artigo.Classificacao  = dr[3].ToString();
                    _artigo.Quantidade     = Convert.ToDecimal(dr[4].ToString());
                    _artigo.PrecoCusto     = Convert.ToDecimal(dr[5].ToString());
                    _artigo.PrecoVenda     = Convert.ToDecimal(dr[6].ToString());
                    _artigo.Armazem        = dr[7].ToString();
                    _artigo.FotoArtigo     = dr[8].ToString();
                    _artigo.BarCode        = dr[9].ToString();
                    _artigo.Existencia     = _artigo.Quantidade;
                    _artigo.ContagemFisica = -1;
                    _artigo.Unidade        = dr[14].ToString();
                    _artigo.LoteID         = int.Parse(dr[10].ToString());
                    _artigo.DimensaoID     = int.Parse(dr[12].ToString());
                    _artigo.SerialNumberID = int.Parse(dr[15].ToString());
                    _artigo.Designacao     = dr[11].ToString() != "" ? (_artigo.Designacao + "-" + dr[11].ToString()) : _artigo.Designacao;
                    _artigo.Designacao     = dr[13].ToString() != "" ? (_artigo.Designacao + "-" + dr[13].ToString()) : _artigo.Designacao;
                    _artigo.Designacao     = dr[16].ToString() != "" ? (_artigo.Designacao + "-" + dr[16].ToString()) : _artigo.Designacao;

                    if (!GetInCounting(_artigo).Item1)
                    {
                        lista.Add(_artigo);
                    }
                }
            }
            catch (Exception ex)
            {
                _artigo = new ItemMovimentoStockDTO();
                _artigo.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }