示例#1
0
        public void SalvarItem(ItemFaturacaoDTO item)
        {
            GuiaItemDTO dto;

            try
            {
                ComandText = "stp_COM_GUIA_ENTREGA_ITEM_ADICIONAR";

                AddParameter("@GUIA_ID", item.Codigo);
                AddParameter("@ARTIGO", item.Artigo);
                AddParameter("@QUANTIDADE", item.QuantidadeSatisfeita);
                AddParameter("@ROLOS", item.QuantidadeRolo);
                AddParameter("@POR_ROLO", item.QuantidadeReservada);

                ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                dto = new GuiaItemDTO
                {
                    MensagemErro = ex.Message.Replace("'", string.Empty)
                };
            }
            finally
            {
                FecharConexao();
            }
        }
示例#2
0
        public void SalvarItems(ItemFaturacaoDTO item)
        {
            GuiaItemDTO dto;

            try
            {
                ComandText = "stp_COM_GUIA_ENTREGA_ITEMS_ADICIONAR";

                AddParameter("@ARTIGO", item.Artigo);
                AddParameter("@DELIVERMAN", item.DesignacaoEntidade);
                AddParameter("@DATA_ENTREGA", item.DataEntrega);
                AddParameter("@UTILIZADOR", item.Utilizador);
                AddParameter("@DOCUMENT_ID", item.Fatura);
                AddParameter("@QUANTIDADE", item.QuantidadeSatisfeita);
                AddParameter("@ITEM_CODIGO", item.Codigo);
                AddParameter("@GUIA_ID", item.DocOrigemID);

                ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                dto = new GuiaItemDTO
                {
                    MensagemErro = ex.Message.Replace("'", string.Empty)
                };
            }
            finally
            {
                FecharConexao();
            }
        }
示例#3
0
        public ItemFaturacaoDTO TerminarServico(ItemFaturacaoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_FATURA_CLIENTE_ITEM_SETREADY";

                AddParameter("@ITEM_ID", dto.Codigo);
                AddParameter("@DATA_TERMINO", dto.ReadyDate == DateTime.MinValue ? DateTime.Now : dto.ReadyDate);
                AddParameter("@UTILIZADOR", dto.Utilizador);

                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
示例#4
0
        public ItemFaturacaoDTO AbateStockArtigo(ItemFaturacaoDTO dto, int Armazem)
        {
            try
            {
                ComandText = "stp_COM_STOCK_UPDATE_QTD_ARTIGO";

                decimal qtdAtual = new StockDAO().StockActual(dto.Artigo, Armazem);

                AddParameter("@ARMAZEM", Armazem);
                AddParameter("@ARTIGO", dto.Artigo);
                AddParameter("@QUANTIDADE", qtdAtual - dto.Quantidade);

                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
示例#5
0
 public void SavePlanilhaCalculo(ItemFaturacaoDTO dto)
 {
     try
     {
         ComandText = "stp_COM_PLANILHA_CALCULO_ROTULO_ADICIONAR";
         AddParameter("@CODIGO", dto.Codigo);
         AddParameter("@HEIGHT", dto.HeightSize);
         AddParameter("@WIDTH", dto.WidthSize);
         AddParameter("@QUANTITY", dto.Quantidade);
         AddParameter("@CARREIRA", dto.Carreira);
         AddParameter("@M2", dto.QuantidadeM2);
         AddParameter("@DESPERDICIO", dto.Desperdicio);
         AddParameter("@DESPERDICIO_M2", dto.TotalDesperdicioM2);
         AddParameter("@ROLO", dto.QuantidadeRolo);
         AddParameter("@MATERIAL", dto.MaterialMM);
         AddParameter("@AQUISICAO", dto.PrecoCompra);
         AddParameter("@SUSTRATO", dto.CustoSubstractoM2);
         AddParameter("@CLICHE", dto.CustoCliche);
         AddParameter("@CILINDRO", dto.CustoCilindro);
     }
     catch (Exception ex)
     {
         dto.MensagemErro = ex.Message.Replace("'", string.Empty);
     }
     finally
     {
         FecharConexao();
     }
 }
示例#6
0
        public List <ItemFaturacaoDTO> GetComposeItemList(ArtigoDTO dto, List <ItemFaturacaoDTO> productList)
        {
            int OrderNumber = productList.Count + 1;

            foreach (var item in new ComposicaoDAO().ObterPorFiltro(dto))
            {
                ItemFaturacaoDTO _item = new ItemFaturacaoDTO();

                _item.NroOrdenacao = OrderNumber;
                OrderNumber++;
                _item.ComposeID      = item.ArtigoVirtualID;
                _item.Artigo         = item.Codigo;
                _item.Referencia     = item.Referencia;
                _item.Designacao     = item.Designacao;
                _item.PrecoUnitario  = item.PrecoVenda;
                _item.Quantidade     = item.Quantidade;
                _item.Desconto       = item.Desconto;
                _item.Imposto        = item.PercentualImposto;
                _item.TotalLiquido   = item.PrecoCusto;
                _item.MovimentaStock = item.MovimentaStock;
                _item.Notas          = string.Empty;
                _item.ArmazemID      = int.Parse(item.WareHouseName);
                _item.Composicao     = false;

                productList.Add(_item);
            }


            return(productList);
        }
示例#7
0
        public List <ItemFaturacaoDTO> ObterMapaIVAResumido(ItemFaturacaoDTO dto)
        {
            List <ItemFaturacaoDTO> lista = new List <ItemFaturacaoDTO>();

            try
            {
                AddParameter("PERIODO_INI", dto.LookupDate1);
                AddParameter("PERIODO_TERM", dto.LookupDate2);
                AddParameter("COMPANY_ID", dto.Filial);

                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    dto = new ItemFaturacaoDTO();

                    dto.Designacao = dr[0].ToString();
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
示例#8
0
 private void ReporStock(AtendimentoDTO dto)
 {
     foreach (var item in ObterItensAtendimento(dto))
     {
         ArtigoDTO artigo = ArtigoRN.GetInstance().ObterPorPK(new ArtigoDTO(item.Artigo));
         if (artigo.MovimentaStock)
         {
             ItemFaturacaoDTO stock = new ItemFaturacaoDTO();
             stock.Quantidade = item.Quantidade;
             stock.Artigo     = item.Artigo;
             new ItemFaturacaoDAO().ReposicaoStockArtigo(stock);
         }
     }
 }
示例#9
0
        public List <ItemFaturacaoDTO> ObterLucro(FaturaDTO pInvoice)
        {
            ItemFaturacaoDTO dto = new ItemFaturacaoDTO();
            var productsList     = new List <ItemFaturacaoDTO>();

            try
            {
                ComandText = "stp_COM_OBTERLUCROPORARTIGO";

                AddParameter("@FATURA", pInvoice.Codigo);
                AddParameter("@DE", pInvoice.EmissaoIni);
                AddParameter("@ATE", pInvoice.EmissaoTerm);


                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    dto = new ItemFaturacaoDTO();

                    dto.Artigo        = int.Parse(dr[0].ToString());
                    dto.Referencia    = dr[1].ToString();
                    dto.Designacao    = dr[2].ToString();
                    dto.PrecoCusto    = decimal.Parse(dr[3].ToString());
                    dto.Quantidade    = decimal.Parse(dr[6].ToString());
                    dto.PrecoUnitario = decimal.Parse(dr[7].ToString());
                    dto.PrecoCusto    = dto.PrecoCusto <= 0 ? decimal.Parse(dr[4].ToString()) : dto.PrecoCusto;
                    dto.PrecoCusto    = dto.PrecoCusto <= 0 ? decimal.Parse(dr[5].ToString()) : dto.PrecoCusto;
                    dto.Lucro         = (dto.Quantidade * dto.PrecoUnitario) - (dto.PrecoCusto * dto.Quantidade);
                    productsList.Add(dto);
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(productsList);
        }
示例#10
0
        public List <ItemFaturacaoDTO> ObterSalesExtract(ItemFaturacaoDTO dto)
        {
            var ExtractList = daoProduct.ObterSalesExtract(dto);

            if (dto.LookupDate1 != DateTime.MinValue && dto.LookupDate2 != DateTime.MinValue)
            {
                ExtractList = ExtractList.Where(t => t.DataEntrada >= dto.LookupDate1 && t.DataEntrada <= dto.LookupDate2).ToList();
            }
            else if (dto.LookupDate1 != DateTime.MinValue && dto.LookupDate2 == DateTime.MinValue)
            {
                ExtractList = ExtractList.Where(t => t.DataEntrada >= dto.LookupDate1).ToList();
            }
            else
            if (dto.LookupDate1 == DateTime.MinValue && dto.LookupDate2 != DateTime.MinValue)
            {
                ExtractList = ExtractList.Where(t => t.DataEntrada <= dto.LookupDate2).ToList();
            }

            return(ExtractList);
        }
示例#11
0
        public void ReposicaoStockArtigo(ItemFaturacaoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_STOCK_UPDATE_QTD_ARTIGO";

                AddParameter("@ARTIGO", dto.Artigo);
                AddParameter("@QUANTIDADE", new StockDAO().StockActual(dto.Artigo, 1) + dto.Quantidade);

                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }
        }
示例#12
0
        public List <ItemFaturacaoDTO> ObterListaDeArtigosVendidosEntreDatas(FaturaDTO dto)
        {
            List <ItemFaturacaoDTO> lista = new List <ItemFaturacaoDTO>();
            ItemFaturacaoDTO        item;

            try
            {
                ComandText = "stp_COM_OBTERARTIGOS_VENDIDOS_ENTRE_DATAS";
                AddParameter("@FILIAL", dto.Filial);
                AddParameter("@DATA_INI", dto.Emissao);
                AddParameter("@DATA_FIN", dto.Validade);

                MySqlDataReader dr = ExecuteReader();

                while (dr.Read())
                {
                    item = new ItemFaturacaoDTO();

                    item.Designacao    = dr[0].ToString();
                    item.Quantidade    = decimal.Parse(dr[1].ToString());
                    item.PrecoUnitario = decimal.Parse(dr[2].ToString());
                    item.ValorDesconto = decimal.Parse(dr[3].ToString());
                    item.ValorImposto  = decimal.Parse(dr[4].ToString());
                    item.TotalLiquido  = decimal.Parse(dr[5].ToString());

                    lista.Add(item);
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }
            return(lista);
        }
示例#13
0
        public ItemFaturacaoDTO Excluir(ItemFaturacaoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_FATURA_CLIENTE_ITEM_EXCLUIR";

                AddParameter("@ARTIGO", dto.Artigo);
                AddParameter("@FATURA", dto.Fatura);

                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
示例#14
0
        public List <ItemFaturacaoDTO> ObterPorFiltro(ItemFaturacaoDTO dto)
        {
            List <ItemFaturacaoDTO> lista = new List <ItemFaturacaoDTO>();

            try
            {
                ComandText = "stp_COM_FATURA_CLIENTE_ITEM_OBTERPORFILTRO";


                AddParameter("@FATURA", dto.Fatura);
                AddParameter("@INICIO", dto.LookupDate1 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate1);
                AddParameter("@FINAL", dto.LookupDate2 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate2);

                MySqlDataReader dr = ExecuteReader();


                while (dr.Read())
                {
                    dto = new ItemFaturacaoDTO
                    {
                        Codigo                  = int.Parse(dr[0].ToString()),
                        Artigo                  = int.Parse(dr[1].ToString()),
                        Fatura                  = int.Parse(dr[2].ToString()),
                        Quantidade              = decimal.Parse(dr[3].ToString()),
                        PrecoUnitario           = decimal.Parse(dr[4].ToString()),
                        Desconto                = decimal.Parse(dr[5].ToString()), /*(decimal.Parse(dr[5].ToString()) * 100) / (decimal.Parse(dr[4].ToString()) * decimal.Parse(dr[3].ToString())),*/
                        DescontoFatura          = decimal.Parse(dr[6].ToString()),
                        Imposto                 = decimal.Parse(dr[7].ToString()) <= 0 ? 0 : decimal.Parse(dr[7].ToString()),
                        ValorDesconto           = decimal.Parse(dr[8].ToString()),
                        ValorImposto            = decimal.Parse(dr[9].ToString()),
                        TotalLiquido            = decimal.Parse(dr[10].ToString()),
                        Notas                   = dr[11].ToString(),
                        NroOrdenacao            = int.Parse(dr[12].ToString()),
                        ItemStatus              = dr[13].ToString() != "" ? dr[13].ToString() : "0",
                        ComposeID               = !string.IsNullOrEmpty(dr[14].ToString()) ? int.Parse(dr[14].ToString()) : 0,
                        LoteID                  = !string.IsNullOrEmpty(dr[15].ToString()) ? int.Parse(dr[15].ToString()) : 0,
                        DimensaoID              = !string.IsNullOrEmpty(dr[16].ToString()) ? int.Parse(dr[16].ToString()) : 0,
                        QuantidadeSatisfeita    = !string.IsNullOrEmpty(dr[17].ToString()) ? decimal.Parse(dr[17].ToString()) : 0,
                        QuantidadeReservada     = !string.IsNullOrEmpty(dr[18].ToString()) ? decimal.Parse(dr[18].ToString()) : 0,
                        Retencao                = !string.IsNullOrEmpty(dr[19].ToString()) ? decimal.Parse(dr[19].ToString()) : 0,
                        DocOrigemID             = !string.IsNullOrEmpty(dr[20].ToString()) ? int.Parse(dr[20].ToString()) : 0,
                        DocOrigemLineNumber     = !string.IsNullOrEmpty(dr[21].ToString()) ? int.Parse(dr[21].ToString()) : 0,
                        DocEnvioID              = !string.IsNullOrEmpty(dr[22].ToString()) ? int.Parse(dr[22].ToString()) : 0,
                        DocEnvioLineNumber      = !string.IsNullOrEmpty(dr[23].ToString()) ? int.Parse(dr[23].ToString()) : 0,
                        DataEntrega             = !string.IsNullOrEmpty(dr[24].ToString()) ? DateTime.Parse(dr[24].ToString()) : DateTime.MinValue,
                        DescontoFinanceiro      = !string.IsNullOrEmpty(dr[25].ToString()) ? decimal.Parse(dr[25].ToString()) : 0,
                        ValorDescontoFinanceiro = !string.IsNullOrEmpty(dr[26].ToString()) ? decimal.Parse(dr[26].ToString()) : 0,
                        DescontoNumerario       = !string.IsNullOrEmpty(dr[27].ToString()) ? decimal.Parse(dr[27].ToString()) : 0,
                        SerialNumberID          = !string.IsNullOrEmpty(dr[28].ToString()) ? int.Parse(dr[28].ToString()) : 0,
                        Designacao              = dr["ART_DESIGNACAO"].ToString(),
                        Referencia              = dr["ART_REFERENCIA"].ToString(),
                        BarCode                 = dr["ART_CODIGO_BARRAS"].ToString(),
                        Unidade                 = dr["UNI_SIGLA"].ToString(),
                        MovimentaStock          = dr["ART_MOVIMENTA_STOCK"].ToString() == "1" ? true : false,
                        ArmazemID               = dr["FAT_ITEM_WAREHOUSE_ID"].ToString() == "" ? int.Parse(dr["FAT_CODIGO_ARMAZEM"].ToString()) : int.Parse(dr["FAT_ITEM_WAREHOUSE_ID"].ToString()),
                        DesignacaoEntidade      = dr["FAT_NOME_CLIENTE"].ToString(),
                        SocialName              = dr["FAT_RECEPCAO"].ToString(),
                        LookupField1            = dr["FAT_LOCAL_DESCARGA"].ToString(),
                        TituloDocumento         = dr["DOC_DESCRICAO"].ToString(),
                        LookupField2            = dr["FAT_REFERENCIA"].ToString(),
                        DataEntrada             = !string.IsNullOrEmpty(dr["FAT_DATA_EMISSAO"].ToString()) ? DateTime.Parse(dr["FAT_DATA_EMISSAO"].ToString()) : DateTime.MinValue,
                        LookupDate1             = !string.IsNullOrEmpty(dr["FAT_DATA_ENTREGA"].ToString()) ? DateTime.Parse(dr["FAT_DATA_ENTREGA"].ToString()) : DateTime.MinValue,
                        LookupField3            = dr["DOC_FORMATO"].ToString(),
                        TaxID                   = dr["FAT_ITEM_IMPOSTO_ID"].ToString() != "" ? int.Parse(dr["FAT_ITEM_IMPOSTO_ID"].ToString()) : 0,
                        UnidadeID               = dr["UNI_SIGLA"].ToString(),

                        WidthSize = !string.IsNullOrEmpty(dr["FAT_ITEM_LARGURA"].ToString()) ? decimal.Parse(dr["FAT_ITEM_LARGURA"].ToString()) : 0,
                        PrecoUnitarioOriginalCurrency = !string.IsNullOrEmpty(dr["FAT_ORIGINAL_PRICE"].ToString()) ? decimal.Parse(dr["FAT_ORIGINAL_PRICE"].ToString()) : 0,
                        HeightSize         = !string.IsNullOrEmpty(dr["FAT_ITEM_COMPRIMENTO"].ToString()) ? decimal.Parse(dr["FAT_ITEM_COMPRIMENTO"].ToString()) : 0,
                        OriginalCurrencyID = !string.IsNullOrEmpty(dr["FAT_ORIGINAL_CURRENCY_ID"].ToString()) ? int.Parse(dr["FAT_ORIGINAL_CURRENCY_ID"].ToString()) : 1,
                    };
                    dto.PrecoMilheiro   = dr["FAT_PRECO_MILHEIRO"].ToString() == "" ? 0 : decimal.Parse(dr["FAT_PRECO_MILHEIRO"].ToString());
                    dto.FactorConversao = dr["UNI_FACTOR_CONVERSAO"].ToString();
                    dto.ValorConversao  = dr["UNI_QUANTIDADE"].ToString() == "" ? 0 : decimal.Parse(dr["UNI_QUANTIDADE"].ToString());
                    if (dto.PrecoMilheiro > 0)
                    {
                        dto.TotalLiquido = (dto.Quantidade * dto.PrecoMilheiro) - dto.ValorDesconto + dto.ValorImposto;
                    }
                    else
                    {
                        dto.TotalLiquido = (dto.Quantidade * dto.PrecoUnitario) - dto.ValorDesconto + dto.ValorImposto;
                    }

                    dto.CookerID            = dr["GAR_CODIGO_ENTIDADE"].ToString() != "" ? int.Parse(dr["GAR_CODIGO_ENTIDADE"].ToString()) : -1;
                    dto.FuncionarioID       = dr["NOME_TECNICO_EXECUTOR"].ToString();
                    dto.DataPrevisaoEntrega = !string.IsNullOrEmpty(dr["FAT_ITEM_PREVISAO_ENTREGA"].ToString()) ? DateTime.Parse(dr["FAT_ITEM_PREVISAO_ENTREGA"].ToString()) : DateTime.MinValue;
                    dto.ReadyDate           = !string.IsNullOrEmpty(dr["FAT_ITEM_DATA_TERMINO"].ToString()) ? DateTime.Parse(dr["FAT_ITEM_DATA_TERMINO"].ToString()) : DateTime.MinValue;
                    dto.ItemNotes           = dr["FAT_ITEM_TITULO"].ToString();
                    dto.PrecoEntidade       = string.IsNullOrEmpty(dr["FAT_ITEM_VALOR_ENTIDADE"].ToString()) ? 0 : decimal.Parse(dr["FAT_ITEM_VALOR_ENTIDADE"].ToString());
                    dto.PrecoUtente         = string.IsNullOrEmpty(dr["FAT_ITEM_VALOR_UTENTE"].ToString()) ? 0 : decimal.Parse(dr["FAT_ITEM_VALOR_UTENTE"].ToString());
                    dto.RetencaoID          = string.IsNullOrEmpty(dr["FAT_ITEM_RETENCAO_ID"].ToString()) ? 0 : int.Parse(dr["FAT_ITEM_RETENCAO_ID"].ToString());
                    dto.Url             = File.Exists(dr["ART_IMAGEM"].ToString()) ? dr["ART_IMAGEM"].ToString() : "../imagens/SemFoto.jpg";
                    dto.QuantidadeItens = (int)decimal.Parse(dr["UNI_QUANTIDADE"].ToString());

                    if (dto.QuantidadeItens == 0)
                    {
                        dto.QuantidadeItens = 1;
                    }

                    dto.Weight      = decimal.Parse(dr["FAT_ITEM_PESO"].ToString() == "" ? "0" : dr["FAT_ITEM_PESO"].ToString());
                    dto.ProductType = dr["ART_TIPO"].ToString();
                    lista.Add(dto);
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
示例#15
0
        public List <ItemFaturacaoDTO> ObterEncomendaItensPorFiltro(FaturaDTO dto)
        {
            List <ItemFaturacaoDTO> lista = new List <ItemFaturacaoDTO>();

            try
            {
                ComandText = "stp_COM_ENCOMENDA_OBTER_ITENS";


                AddParameter("@CUSTOMER_ID", dto.Entidade);
                AddParameter("@TELEFONE", dto.LookupField1 ?? string.Empty);
                AddParameter("@DELIVERYMAN_ID", -1);
                AddParameter("@EMISSAO_INI", dto.LookupDate1 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate1);
                AddParameter("@EMISSAO_TERM", dto.LookupDate2 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate2);
                AddParameter("@ESTADO", dto.Status);
                AddParameter("@ORDER_ID", dto.Codigo);
                AddParameter("@EMPLOYEE_ID", dto.FuncionarioID ?? "-1");
                AddParameter("@ORDER_NUMBER", dto.Numeracao);

                MySqlDataReader dr = ExecuteReader();


                while (dr.Read())
                {
                    var item = new ItemFaturacaoDTO();
                    item.Codigo                  = int.Parse(dr[0].ToString());
                    item.Artigo                  = int.Parse(dr[1].ToString());
                    item.Fatura                  = int.Parse(dr[2].ToString());
                    item.Quantidade              = decimal.Parse(dr[3].ToString());
                    item.PrecoUnitario           = decimal.Parse(dr[4].ToString());
                    item.Desconto                = decimal.Parse(dr[5].ToString()); /*(decimal.Parse(dr[5].ToString()) * 100) / (decimal.Parse(dr[4].ToString()) * decimal.Parse(dr[3].ToString()));*/
                    item.DescontoFatura          = decimal.Parse(dr[6].ToString());
                    item.Imposto                 = decimal.Parse(dr[7].ToString()) <= 0 ? 0 : decimal.Parse(dr[7].ToString());
                    item.ValorDesconto           = decimal.Parse(dr[8].ToString());
                    item.ValorImposto            = decimal.Parse(dr[9].ToString());
                    item.TotalLiquido            = decimal.Parse(dr[10].ToString());
                    item.Notas                   = dr[11].ToString();
                    item.NroOrdenacao            = int.Parse(dr[12].ToString());
                    item.ItemStatus              = dr[13].ToString() != "" ? dr[13].ToString() : "0";
                    item.ComposeID               = !string.IsNullOrEmpty(dr[14].ToString()) ? int.Parse(dr[14].ToString()) : 0;
                    item.LoteID                  = !string.IsNullOrEmpty(dr[15].ToString()) ? int.Parse(dr[15].ToString()) : 0;
                    item.DimensaoID              = !string.IsNullOrEmpty(dr[16].ToString()) ? int.Parse(dr[16].ToString()) : 0;
                    item.QuantidadeSatisfeita    = !string.IsNullOrEmpty(dr[17].ToString()) ? decimal.Parse(dr[17].ToString()) : 0;
                    item.QuantidadeReservada     = !string.IsNullOrEmpty(dr[18].ToString()) ? decimal.Parse(dr[18].ToString()) : 0;
                    item.Retencao                = !string.IsNullOrEmpty(dr[19].ToString()) ? decimal.Parse(dr[19].ToString()) : 0;
                    item.DocOrigemID             = !string.IsNullOrEmpty(dr[20].ToString()) ? int.Parse(dr[20].ToString()) : 0;
                    item.DocOrigemLineNumber     = !string.IsNullOrEmpty(dr[21].ToString()) ? int.Parse(dr[21].ToString()) : 0;
                    item.DocEnvioID              = !string.IsNullOrEmpty(dr[22].ToString()) ? int.Parse(dr[22].ToString()) : 0;
                    item.DocEnvioLineNumber      = !string.IsNullOrEmpty(dr[23].ToString()) ? int.Parse(dr[23].ToString()) : 0;
                    item.DataEntrega             = !string.IsNullOrEmpty(dr[24].ToString()) ? DateTime.Parse(dr[24].ToString()) : DateTime.MinValue;
                    item.DescontoFinanceiro      = !string.IsNullOrEmpty(dr[25].ToString()) ? decimal.Parse(dr[25].ToString()) : 0;
                    item.ValorDescontoFinanceiro = !string.IsNullOrEmpty(dr[26].ToString()) ? decimal.Parse(dr[26].ToString()) : 0;
                    item.DescontoNumerario       = !string.IsNullOrEmpty(dr[27].ToString()) ? decimal.Parse(dr[27].ToString()) : 0;
                    item.SerialNumberID          = !string.IsNullOrEmpty(dr[28].ToString()) ? int.Parse(dr[28].ToString()) : 0;
                    item.Designacao              = dr["ART_DESIGNACAO"].ToString();
                    item.Referencia              = dr["ART_REFERENCIA"].ToString();
                    item.BarCode                 = dr["ART_CODIGO_BARRAS"].ToString();
                    item.Unidade                 = dr["UNI_SIGLA"].ToString();
                    item.MovimentaStock          = dr["ART_MOVIMENTA_STOCK"].ToString() == "1" ? true : false;
                    item.ArmazemID               = dr["FAT_ITEM_WAREHOUSE_ID"].ToString() == "" ? int.Parse(dr["FAT_CODIGO_ARMAZEM"].ToString()) : int.Parse(dr["FAT_ITEM_WAREHOUSE_ID"].ToString());
                    item.DesignacaoEntidade      = dr["FAT_NOME_CLIENTE"].ToString();
                    item.SocialName              = dr["FAT_RECEPCAO"].ToString();
                    item.LookupField1            = dr["FAT_LOCAL_DESCARGA"].ToString();
                    item.TituloDocumento         = dr["DOC_DESCRICAO"].ToString();
                    item.LookupField2            = dr["FAT_REFERENCIA"].ToString() + " - " + item.NroOrdenacao;
                    item.DataEntrada             = !string.IsNullOrEmpty(dr["FAT_DATA_EMISSAO"].ToString()) ? DateTime.Parse(dr["FAT_DATA_EMISSAO"].ToString()) : DateTime.MinValue;
                    item.LookupDate1             = !string.IsNullOrEmpty(dr["FAT_DATA_ENTREGA"].ToString()) ? DateTime.Parse(dr["FAT_DATA_ENTREGA"].ToString()) : DateTime.MinValue;
                    item.LookupField3            = dr["DOC_FORMATO"].ToString();
                    item.TaxID                   = dr["FAT_ITEM_IMPOSTO_ID"].ToString() != "" ? int.Parse(dr["FAT_ITEM_IMPOSTO_ID"].ToString()) : 0;
                    item.UnidadeID               = dr["UNI_SIGLA"].ToString();

                    item.WidthSize = !string.IsNullOrEmpty(dr["FAT_ITEM_LARGURA"].ToString()) ? decimal.Parse(dr["FAT_ITEM_LARGURA"].ToString()) : 0;
                    item.PrecoUnitarioOriginalCurrency = !string.IsNullOrEmpty(dr["FAT_ORIGINAL_PRICE"].ToString()) ? decimal.Parse(dr["FAT_ORIGINAL_PRICE"].ToString()) : 0;
                    item.HeightSize          = !string.IsNullOrEmpty(dr["FAT_ITEM_COMPRIMENTO"].ToString()) ? decimal.Parse(dr["FAT_ITEM_COMPRIMENTO"].ToString()) : 0;
                    item.OriginalCurrencyID  = !string.IsNullOrEmpty(dr["FAT_ORIGINAL_CURRENCY_ID"].ToString()) ? int.Parse(dr["FAT_ORIGINAL_CURRENCY_ID"].ToString()) : 1;
                    item.PrecoMilheiro       = dr["FAT_PRECO_MILHEIRO"].ToString() == "" ? 0 : decimal.Parse(dr["FAT_PRECO_MILHEIRO"].ToString());
                    item.FactorConversao     = dr["UNI_FACTOR_CONVERSAO"].ToString();
                    item.ValorConversao      = dr["UNI_QUANTIDADE"].ToString() == "" ? 0 : decimal.Parse(dr["UNI_QUANTIDADE"].ToString());
                    item.CookerID            = dr["GAR_CODIGO_ENTIDADE"].ToString() != "" ? int.Parse(dr["GAR_CODIGO_ENTIDADE"].ToString()) : -1;
                    item.FuncionarioID       = dr["NOME_TECNICO_EXECUTOR"].ToString();
                    item.DataPrevisaoEntrega = !string.IsNullOrEmpty(dr["FAT_ITEM_PREVISAO_ENTREGA"].ToString()) ? DateTime.Parse(dr["FAT_ITEM_PREVISAO_ENTREGA"].ToString()) : DateTime.MinValue;
                    item.ReadyDate           = !string.IsNullOrEmpty(dr["FAT_ITEM_DATA_TERMINO"].ToString()) ? DateTime.Parse(dr["FAT_ITEM_DATA_TERMINO"].ToString()) : DateTime.MinValue;
                    item.ItemNotes           = dr["FAT_ITEM_TITULO"].ToString();
                    item.PrecoEntidade       = string.IsNullOrEmpty(dr["FAT_ITEM_VALOR_ENTIDADE"].ToString()) ? 0 : decimal.Parse(dr["FAT_ITEM_VALOR_ENTIDADE"].ToString());
                    item.PrecoUtente         = string.IsNullOrEmpty(dr["FAT_ITEM_VALOR_UTENTE"].ToString()) ? 0 : decimal.Parse(dr["FAT_ITEM_VALOR_UTENTE"].ToString());
                    item.RetencaoID          = string.IsNullOrEmpty(dr["FAT_ITEM_RETENCAO_ID"].ToString()) ? 0 : int.Parse(dr["FAT_ITEM_RETENCAO_ID"].ToString());
                    item.QuantidadeItens     = dr["UNI_QUANTIDADE"].ToString() == "" ? 1 : (int)decimal.Parse(dr["UNI_QUANTIDADE"].ToString());
                    item.Entidade            = int.Parse(dr["FAT_CODIGO_CLIENTE"].ToString());

                    if (item.PrecoMilheiro > 0)
                    {
                        item.TotalLiquido = (item.Quantidade * item.PrecoMilheiro) - item.ValorDesconto + item.ValorImposto;
                    }
                    else
                    {
                        item.TotalLiquido = (item.Quantidade * item.PrecoUnitario) - item.ValorDesconto + item.ValorImposto;
                    }


                    lista.Add(item);
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
示例#16
0
        public List <ItemFaturacaoDTO> ObterPorFiltro(ItemFaturacaoDTO dto)
        {
            List <ItemFaturacaoDTO> lista = new List <ItemFaturacaoDTO>();

            try
            {
                ComandText = "stp_COM_FATURA_FORNECEDOR_ITEM_OBTERPORFILTRO";


                AddParameter("@COMPRA", dto.Fatura);
                AddParameter("@INICIO", dto.LookupDate1 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate1);
                AddParameter("@FINAL", dto.LookupDate2 == DateTime.MinValue ? (object)DBNull.Value : dto.LookupDate2);

                MySqlDataReader dr = ExecuteReader();


                while (dr.Read())
                {
                    dto = new ItemFaturacaoDTO
                    {
                        Codigo                  = int.Parse(dr[0].ToString()),
                        Artigo                  = int.Parse(dr[1].ToString()),
                        Fatura                  = int.Parse(dr[2].ToString()),
                        Quantidade              = decimal.Parse(dr[3].ToString()),
                        PrecoCompra             = decimal.Parse(dr[4].ToString()),
                        Desconto                = decimal.Parse(dr[5].ToString()), /*(decimal.Parse(dr[5].ToString()) * 100) / (decimal.Parse(dr[4].ToString()) * decimal.Parse(dr[3].ToString())),*/
                        DescontoFatura          = decimal.Parse(dr[6].ToString()),
                        Imposto                 = decimal.Parse(dr[7].ToString()) <= 0 ? 0 : decimal.Parse(dr[7].ToString()),
                        ValorDesconto           = decimal.Parse(dr[8].ToString()),
                        ValorImposto            = decimal.Parse(dr[9].ToString()),
                        TotalLiquido            = decimal.Parse(dr[10].ToString()),
                        Comentarios             = dr[11].ToString(),
                        NroOrdenacao            = int.Parse(dr[12].ToString()),
                        ItemStatus              = dr[13].ToString() != "" ? dr[13].ToString() : "0",
                        ComposeID               = !string.IsNullOrEmpty(dr[14].ToString()) ? int.Parse(dr[14].ToString()) : 0,
                        LoteID                  = !string.IsNullOrEmpty(dr[15].ToString()) ? int.Parse(dr[15].ToString()) : 0,
                        DimensaoID              = !string.IsNullOrEmpty(dr[16].ToString()) ? int.Parse(dr[16].ToString()) : 0,
                        QuantidadeSatisfeita    = !string.IsNullOrEmpty(dr[17].ToString()) ? decimal.Parse(dr[17].ToString()) : 0,
                        QuantidadeReservada     = !string.IsNullOrEmpty(dr[18].ToString()) ? decimal.Parse(dr[18].ToString()) : 0,
                        Retencao                = !string.IsNullOrEmpty(dr[19].ToString()) ? decimal.Parse(dr[19].ToString()) : 0,
                        DocOrigemID             = !string.IsNullOrEmpty(dr[20].ToString()) ? int.Parse(dr[20].ToString()) : 0,
                        DocOrigemLineNumber     = !string.IsNullOrEmpty(dr[21].ToString()) ? int.Parse(dr[21].ToString()) : 0,
                        DocEnvioID              = !string.IsNullOrEmpty(dr[22].ToString()) ? int.Parse(dr[22].ToString()) : 0,
                        DocEnvioLineNumber      = !string.IsNullOrEmpty(dr[23].ToString()) ? int.Parse(dr[23].ToString()) : 0,
                        DataEntrega             = !string.IsNullOrEmpty(dr[24].ToString()) ? DateTime.Parse(dr[24].ToString()) : DateTime.MinValue,
                        DescontoFinanceiro      = !string.IsNullOrEmpty(dr[25].ToString()) ? decimal.Parse(dr[25].ToString()) : 0,
                        ValorDescontoFinanceiro = !string.IsNullOrEmpty(dr[26].ToString()) ? decimal.Parse(dr[26].ToString()) : 0,
                        DescontoNumerario       = !string.IsNullOrEmpty(dr[27].ToString()) ? decimal.Parse(dr[27].ToString()) : 0,
                        SerialNumberID          = !string.IsNullOrEmpty(dr[28].ToString()) ? int.Parse(dr[28].ToString()) : 0,
                        Designacao              = dr["ART_DESIGNACAO"].ToString(),
                        Referencia              = dr["ART_REFERENCIA"].ToString(),
                        BarCode                 = dr["ART_CODIGO_BARRAS"].ToString(),
                        Unidade                 = dr["UNI_SIGLA"].ToString(),
                        MovimentaStock          = dr["ART_MOVIMENTA_STOCK"].ToString() == "1" ? true : false,
                        ArmazemID               = dr["FAT_ITEM_WAREHOUSE_ID"].ToString() == "" ? int.Parse(dr["FAT_CODIGO_ARMAZEM"].ToString()) : int.Parse(dr["FAT_ITEM_WAREHOUSE_ID"].ToString()),
                        DesignacaoEntidade      = dr["FAT_NOME_FORNECEDOR"].ToString(),
                        SocialName              = dr["FAT_RECEPCAO"].ToString(),
                        LookupField1            = dr["FAT_LOCAL_DESCARGA"].ToString(),
                        TituloDocumento         = dr["DOC_DESCRICAO"].ToString(),
                        LookupField2            = dr["FAT_REFERENCIA"].ToString(),
                        DataEntrada             = !string.IsNullOrEmpty(dr["FAT_DATA_EMISSAO"].ToString()) ? DateTime.Parse(dr["FAT_DATA_EMISSAO"].ToString()) : DateTime.MinValue,
                        LookupDate1             = !string.IsNullOrEmpty(dr["FAT_DATA_ENTREGA"].ToString()) ? DateTime.Parse(dr["FAT_DATA_ENTREGA"].ToString()) : DateTime.MinValue,
                        LookupField3            = dr["DOC_FORMATO"].ToString(),
                        TaxID                    = dr["FAT_ITEM_IMPOSTO_ID"].ToString() != "" ? int.Parse(dr["FAT_ITEM_IMPOSTO_ID"].ToString()) : 0,
                        UnidadeID                = dr["UNI_SIGLA"].ToString(),
                        ItemValorFrete           = dr["FAT_ITEM_VALOR_FRETE"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_FRETE"].ToString()) : 0,
                        ItemValorSeguro          = dr["FAT_ITEM_VALOR_SEGURO"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_SEGURO"].ToString()) : 0,
                        ItemValorIva             = dr["FAT_ITEM_VALOR_IVA_IMPORTACAO"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_IVA_IMPORTACAO"].ToString()) : 0,
                        ItemValorAduaneiro       = dr["FAT_ITEM_VALOR_ADUANEIRO"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_ADUANEIRO"].ToString()) : 0,
                        ItemHonorarioDespachante = dr["FAT_ITEM_VALOR_HONORARIO_DESPACHANTE"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_HONORARIO_DESPACHANTE"].ToString()) : 0,
                        ItemFreteTransporteLocal = dr["FAT_ITEM_VALOR_TRANSPORTACAO_LOCAL"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_TRANSPORTACAO_LOCAL"].ToString()) : 0,
                        ItemOutrosEncargos       = dr["FAT_ITEM_VALOR_OUTROS_ENCARGOS"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_VALOR_OUTROS_ENCARGOS"].ToString()) : 0,
                        TotalEncargos            = dr["FAT_ITEM_TOTAL_ENCARGOS"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_TOTAL_ENCARGOS"].ToString()) : 0,
                        PrecoCusto               = dr["FAT_ITEM_PRECO_CUSTO"].ToString() != "" ? decimal.Parse(dr["FAT_ITEM_PRECO_CUSTO"].ToString()) : 0,
                        Notas                    = dr["FAT_ITEM_COMENTARIOS"].ToString()
                    };
                    dto.PrecoMilheiro = 0;
                    dto.Comentarios   = dto.Comentarios == string.Empty ? dto.Notas : dto.Comentarios;
                    dto.CookerID      = -1;
                    dto.PrecoUnitario = dto.PrecoCusto == 0 ? dto.PrecoCompra + dto.TotalEncargos : dto.PrecoCusto;
                    lista.Add(dto);
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(lista);
        }
示例#17
0
        public ItemFaturacaoDTO Adicionar(ItemFaturacaoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_FATURA_FORNECEDOR_ITEM_ADICIONAR";


                AddParameter("@ARTIGO", dto.Artigo);
                AddParameter("@COMPRA", dto.Fatura);
                AddParameter("@PRECO", dto.PrecoCompra);
                AddParameter("@QUANTIDADE", dto.Quantidade);
                AddParameter("@DESCONTO", dto.Desconto);
                AddParameter("@DESC_COMPRA", dto.DescontoFatura);
                AddParameter("@IMPOSTOS", dto.Imposto);
                AddParameter("@VALOR_DESC", dto.ValorDesconto);
                AddParameter("@VALOR_IMP", dto.ValorImposto);
                AddParameter("@TOTAL", dto.TotalLiquido);
                AddParameter("@COMENTARIOS", dto.Notas);
                AddParameter("@ORDEM", dto.NroOrdenacao);
                AddParameter("@ITEM_STATUS", dto.ItemStatus ?? (object)DBNull.Value);
                AddParameter("@COMPOSICAO_ID", dto.ComposeID);
                AddParameter("@LOTE_ID", dto.LoteID);
                AddParameter("@DIMENSAO_ID", dto.DimensaoID);
                AddParameter("@QTD_ENCOMENDADA", dto.QuantidadeSatisfeita);
                AddParameter("@QTD_RESERVADA", dto.QuantidadeReservada);
                AddParameter("@RETENCAO", dto.Retencao);
                AddParameter("@ORIGEM_ID", dto.DocOrigemID == 0 ? -1 : dto.DocOrigemID);
                AddParameter("@ORIGEM_LINE", dto.DocOrigemLineNumber);
                AddParameter("@ENVIO_ID", dto.DocEnvioID == 0 ? -1 : dto.DocEnvioID);
                AddParameter("@ENVIO_LINE", dto.DocEnvioLineNumber);
                AddParameter("@DATA_ENTREGA", dto.DataEntrega == DateTime.MinValue ? (object)DBNull.Value : dto.DataEntrega);
                AddParameter("@DESC_FIN", dto.DescontoFinanceiro);
                AddParameter("@VALOR_DESC_FIN", dto.ValorDescontoFinanceiro);
                AddParameter("@DESCONTO_NUMERARIO", dto.DescontoNumerario);
                AddParameter("@SERIALNUMBER_ID", dto.SerialNumberID);
                AddParameter("@WAREHOUSE_ID", dto.ArmazemID);
                AddParameter("@PRECO_CUSTO", dto.PrecoCusto);
                AddParameter("@TAX_ID", dto.TaxID <= 0 ? (object)DBNull.Value : dto.TaxID);
                AddParameter("@VALOR_FRETE", dto.ItemValorFrete);
                AddParameter("@VALOR_SEGURO", dto.ItemValorSeguro);
                AddParameter("@IVA_IMPORTACAO", dto.ItemValorIva);
                AddParameter("@VALOR_ADUANEIRO", dto.ItemValorAduaneiro);
                AddParameter("@HONORARIO_DESPACHANTE", dto.ItemHonorarioDespachante);
                AddParameter("@TRANSPORTACAO_LOCAL", dto.ItemFreteTransporteLocal);
                AddParameter("@OUTROS_ENCARGOS", dto.ItemOutrosEncargos);


                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
            }

            return(dto);
        }
示例#18
0
        public ItemFaturacaoDTO Adicionar(ItemFaturacaoDTO dto)
        {
            try
            {
                ComandText = "stp_COM_FATURA_CLIENTE_ITEM_ADICIONAR";


                AddParameter("@ARTIGO", dto.Artigo);
                AddParameter("@FATURA", dto.Fatura);
                AddParameter("@PRECO", dto.PrecoUnitario);
                AddParameter("@QUANTIDADE", dto.Quantidade);
                AddParameter("@DESCONTO", dto.Desconto);
                AddParameter("@DESC_FATURA", dto.DescontoFatura);
                AddParameter("@IMPOSTOS", dto.Imposto);
                AddParameter("@VALOR_DESC", dto.ValorDesconto);
                AddParameter("@VALOR_IMP", dto.ValorImposto);
                AddParameter("@TOTAL", dto.TotalLiquido);
                AddParameter("@COMENTARIOS", dto.Notas != null ? dto.Notas.Replace(";", "\n") : dto.Notas);
                AddParameter("@ORDEM", dto.NroOrdenacao);
                AddParameter("@ITEM_STATUS", dto.ItemStatus ?? (object)DBNull.Value);
                AddParameter("@COMPOSICAO_ID", dto.ComposeID);
                AddParameter("@LOTE_ID", dto.LoteID);
                AddParameter("@DIMENSAO_ID", dto.DimensaoID);
                AddParameter("@QTD_SATISFEITA", dto.QuantidadeSatisfeita);
                AddParameter("@QTD_RESERVADA", dto.QuantidadeReservada);
                AddParameter("@RETENCAO", dto.Retencao);
                AddParameter("@ORIGEM_ID", dto.DocOrigemID == 0 ? -1: dto.DocOrigemID);
                AddParameter("@ORIGEM_LINE", dto.DocOrigemLineNumber);
                AddParameter("@ENVIO_ID", dto.DocEnvioID == 0 ? -1 : dto.DocEnvioID);
                AddParameter("@ENVIO_LINE", dto.DocEnvioLineNumber);
                AddParameter("@DATA_ENTREGA", dto.DataEntrega == DateTime.MinValue ? (object)DBNull.Value : dto.DataEntrega);
                AddParameter("@DESC_FIN", dto.DescontoFinanceiro);
                AddParameter("@VALOR_DESC_FIN", dto.ValorDescontoFinanceiro);
                AddParameter("@DESCONTO_NUMERARIO", dto.DescontoNumerario);
                AddParameter("@SERIALNUMBER_ID", dto.SerialNumberID);
                AddParameter("@WAREHOUSE_ID", dto.ArmazemID);
                AddParameter("@PRECO_CUSTO", dto.PrecoCusto);
                AddParameter("@TAX_ID", dto.TaxID <= 0 ? (object)DBNull.Value : dto.TaxID);
                AddParameter("@PRIOR_STOCK", dto.ExistenciaAnterior);
                AddParameter("@ORIGINAL_PRICE", dto.PrecoUnitarioOriginalCurrency);
                AddParameter("@COMPRIMENTO", dto.HeightSize);
                AddParameter("@LARGURA", dto.WidthSize);
                AddParameter("@ACUMULA", dto.Acumula ? 1 : 0);
                AddParameter("@CODIGO", dto.Codigo);
                AddParameter("CURRENCY_ID", dto.OriginalCurrencyID);
                AddParameter("VENDEDOR_ID", string.IsNullOrEmpty(dto.FuncionarioID) ? (object)DBNull.Value : dto.FuncionarioID);
                AddParameter("PRECO_MILHEIRO", dto.PrecoMilheiro);
                AddParameter("COMISSAO", dto.Comissao);
                AddParameter("VALOR_COMISSAO", dto.TotalComissaoLinha);
                AddParameter("@DOC_ORIGEM_TYPE_ID", dto.DocOrigemTypeID <= 0 ? (object)DBNull.Value : dto.DocOrigemTypeID);
                AddParameter("@DOC_ENVIO_TYPE_ID", dto.DocEnvioTypeID <= 0 ? (object)DBNull.Value : dto.DocEnvioTypeID);
                AddParameter("@DATA_PREVISAO", dto.DataPrevisaoEntrega == DateTime.MinValue ? (object)DBNull.Value : dto.DataPrevisaoEntrega);
                AddParameter("@VALOR_UTENTE", dto.PrecoUtente);
                AddParameter("@VALOR_ENTIDADE", dto.PrecoEntidade);
                AddParameter("@TITULO", dto.ItemNotes);
                AddParameter("@RETENCAO_ID", dto.RetencaoID <= 0 ? (object)DBNull.Value : dto.RetencaoID);
                AddParameter("@GENERAL_COMMENT", dto.Comentarios);
                AddParameter("@PESO", dto.Weight);
                AddParameter("@QUANTIDADE_ITENS", dto.QuantidadeItens);
                ExecuteNonQuery();

                dto.Sucesso = true;
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
                SavePlanilhaCalculo(dto);
            }

            return(dto);
        }
示例#19
0
        public FaturaDTO ObterPorPK(FaturaDTO dto)
        {
            try
            {
                ComandText = "stp_COM_FATURA_FORNECEDOR_OBTERPORPK";

                AddParameter("@CODIGO", dto.Codigo);

                MySqlDataReader dr = ExecuteReader();

                dto = new FaturaDTO();
                if (dr.Read())
                {
                    dto.Codigo                  = int.Parse(dr[0].ToString());
                    dto.Filial                  = dr[1].ToString();
                    dto.Armazem                 = int.Parse(dr[2].ToString() ?? "-1");
                    dto.Documento               = int.Parse(dr[3].ToString());
                    dto.Serie                   = int.Parse(dr[4].ToString() ?? "-1");
                    dto.Entidade                = int.Parse(dr[5].ToString());
                    dto.Emissao                 = DateTime.Parse(dr[6].ToString());
                    dto.Validade                = DateTime.Parse(dr[7].ToString());
                    dto.Moeda                   = int.Parse(dr[8].ToString());
                    dto.Cambio                  = decimal.Parse(dr[9].ToString());
                    dto.PrazoPagto              = int.Parse(dr[10].ToString() ?? "-1");
                    dto.Expedicao               = int.Parse(dr[11].ToString() ?? "-1");
                    dto.Desconto                = decimal.Parse(dr[12].ToString());
                    dto.Numeracao               = int.Parse(dr[13].ToString() == string.Empty ? "0" : dr[13].ToString());
                    dto.Referencia              = dr[14].ToString();
                    dto.StatusDocumento         = int.Parse(dr[15].ToString());
                    dto.TotalIliquido           = decimal.Parse(dr[16].ToString()); // Valor Bruto
                    dto.TotalDescontos          = decimal.Parse(dr[17].ToString());
                    dto.TotalImpostos           = decimal.Parse(dr[18].ToString());
                    dto.ValorTotal              = decimal.Parse(dr[19].ToString());
                    dto.StatusPagamento         = dr[20].ToString();
                    dto.Observacoes             = dr[21].ToString();
                    dto.DocumentoOrigem         = int.Parse(dr[22].ToString() == string.Empty ? "-1" : dr[22].ToString());
                    dto.NumeroDocOrigem         = dr[23].ToString();
                    dto.ValorPago               = decimal.Parse(dr[24].ToString());
                    dto.Saldo                   = decimal.Parse(dr[25].ToString());
                    dto.Troco                   = decimal.Parse(dr[26].ToString());
                    dto.NomeEntidade            = dr[27].ToString();
                    dto.DescontoEntidade        = decimal.Parse(dr[28].ToString() == string.Empty ? "0" : dr[28].ToString());
                    dto.DataCarga               = DateTime.Parse(dr[29].ToString() == string.Empty || dr[29].ToString() == null ? DateTime.MinValue.ToString() : dr[29].ToString());
                    dto.EnderecoCarga           = dr[30].ToString();
                    dto.LocalCarga              = dr[31].ToString();
                    dto.DataDescarga            = DateTime.Parse(dr[32].ToString() == string.Empty || dr[32].ToString() == null ? DateTime.MinValue.ToString() : dr[32].ToString());
                    dto.EnderecoDescarga        = dr[33].ToString();
                    dto.LocalDescarga           = dr[34].ToString();
                    dto.EnderecoDescarga        = dr[35].ToString();
                    dto.Activo                  = dr[36].ToString() == "0" ? false : true;
                    dto.TituloDocumento         = dr[38].ToString();
                    dto.StatusDocumento         = int.Parse(dr[39].ToString());
                    dto.Parcela                 = int.Parse(dr[40].ToString());
                    dto.NotasComerciais         = dr[41].ToString();
                    dto.ResponsavelCarregamento = dr[42].ToString() == "-1" ? "" : dr[42].ToString();
                    dto.DeliveryMan             = dr[43].ToString();
                    dto.Saldo                   = dto.ValorTotal - dto.ValorPago;
                    dto.Destinatario            = dr[44].ToString();
                    dto.ContactoDestinatario    = dr[45].ToString();
                    dto.LookupField1            = dr[46].ToString();
                    dto.EntityBillingID         = int.Parse(dr[47].ToString() == string.Empty ? "1" : dr[47].ToString());
                    dto.Matricula               = dr[48].ToString();
                    dto.DocumentBarcode         = dr[49].ToString();
                    dto.VendedorID              = int.Parse(dr[50].ToString() == "" ? "-1" : dr[50].ToString());
                    dto.FuncionarioID           = dr[51].ToString();
                    dto.SocialName              = dr[52].ToString();
                    dto.CreatedDate             = DateTime.Parse(dr[53].ToString());
                    dto.ValorFrete              = dr["FAT_VALOR_FRETE"].ToString() != "" ? decimal.Parse(dr["FAT_VALOR_FRETE"].ToString()) : 0;
                    dto.ValorSeguro             = dr["FAT_VALOR_SEGURO"].ToString() != "" ? decimal.Parse(dr["FAT_VALOR_SEGURO"].ToString()) : 0;
                    dto.ValorIVAImportacao      = dr["FAT_IVA_IMPORTACAO"].ToString() != "" ? decimal.Parse(dr["FAT_IVA_IMPORTACAO"].ToString()) : 0;
                    dto.ValorAduaneiro          = dr["FAT_VALOR_ADUANEIRA"].ToString() != "" ? decimal.Parse(dr["FAT_VALOR_ADUANEIRA"].ToString()) : 0;
                    dto.HonorarioDespachante    = dr["FAT_VALOR_HONORARIO_DESPACHANTE"].ToString() != "" ? decimal.Parse(dr["FAT_VALOR_HONORARIO_DESPACHANTE"].ToString()) : 0;
                    dto.TransportacaoLocal      = dr["FAT_VALOR_TRANSPORTACAO_LOCAL"].ToString() != "" ? decimal.Parse(dr["FAT_VALOR_TRANSPORTACAO_LOCAL"].ToString()) : 0;
                    dto.OutrosEncargos          = dr["FAT_OUTROS_ENCARGOS"].ToString() != "" ? decimal.Parse(dr["FAT_OUTROS_ENCARGOS"].ToString()) : 0;
                    dto.TotalEncargos           = dr["FAT_TOTAL_ENCARGOS"].ToString() != "" ? decimal.Parse(dr["FAT_TOTAL_ENCARGOS"].ToString()) : 0;
                    dto.NIF            = dr["ENT_IDENTIFICACAO"].ToString();
                    dto.Requisicao     = dr["FAT_REQUISICAO"].ToString();
                    dto.Marca          = dr["FAT_MARCA"].ToString();
                    dto.Modelo         = dr["FAT_MODELO"].ToString();
                    dto.Chassi         = dr["FAT_CHASSI"].ToString();
                    dto.AnoFabrico     = dr["FAT_ANO_FABRICO"].ToString();
                    dto.CompanyAddress = dr["MORADA"].ToString();
                    dto.CompanyPhone   = dr["ENT_TELEFONE"].ToString();
                }
            }
            catch (Exception ex)
            {
                dto.MensagemErro = ex.Message.Replace("'", string.Empty);
            }
            finally
            {
                FecharConexao();
                ItemFaturacaoDTO item = new ItemFaturacaoDTO();
                item.Fatura      = dto.Codigo;
                dto.ListaArtigos = new ItemCompraDAO().ObterPorFiltro(item);
                dto.Parcelas     = ObterParcelas(dto);
            }

            return(dto);
        }