コード例 #1
0
        //public static List<BillingReceptionModel> GetAll()
        //{
        //    try
        //    {
        //        using (var ctx = new SuchDBContext())
        //        {
        //            return ctx.RececaoFaturacao
        //                .OrderByDescending(x => x.Id)
        //                .ToList()
        //                .ParseToViewModel();
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        return null;
        //    }
        //}

        //public static BillingReceptionModel GetById(string id)
        //{
        //    try
        //    {
        //        using (var ctx = new SuchDBContext())
        //        {
        //            return ctx.RececaoFaturacao
        //                .SingleOrDefault(x => x.Id == id)
        //                .ParseToViewModel();
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        return null;
        //    }
        //}

        //public static BillingReceptionModel Create(BillingReceptionModel item)
        //{
        //    if (item == null)
        //        throw new ArgumentNullException("item");
        //    try
        //    {
        //        using (var ctx = new SuchDBContext())
        //        {
        //            item.Estado = BillingReceptionStates.Rececao;
        //            item.DataCriacao = DateTime.Now;
        //            item.DataUltimaInteracao = DateTime.Now.ToString();
        //            ctx.RececaoFaturacao.Add(item.ParseToDB());

        //            RececaoFaturacaoWorkflow wf = new RececaoFaturacaoWorkflow();
        //            wf.IdRecFaturacao = item.Id;
        //            wf.AreaWorkflow = "Contabilidade";//TODO: Identificar áres possivels
        //            wf.Descricao = "Entrada fatura em receção";
        //            wf.CriadoPor = item.CriadoPor;
        //            wf.Data = DateTime.Now;
        //            wf.DataCriacao = DateTime.Now;
        //            wf.Estado = (int)BillingReceptionStates.Rececao;//TODO: Identificar estados possivels “Receção/Conferência”
        //            wf.Utilizador = item.CriadoPor;
        //            ctx.RececaoFaturacaoWorkflow.Add(wf);

        //            ctx.SaveChanges();
        //        }
        //        return item;
        //    }
        //    catch (Exception ex)
        //    {
        //        return null;
        //    }
        //}

        //public static BillingReceptionModel Update(BillingReceptionModel item)
        //{
        //    if (item == null)
        //        throw new ArgumentNullException("item");
        //    try
        //    {
        //        using (var ctx = new SuchDBContext())
        //        {
        //            item.DataModificacao = DateTime.Now;
        //            item.DataUltimaInteracao = DateTime.Now.ToString();
        //            ctx.RececaoFaturacao.Update(item.ParseToDB());
        //            ctx.SaveChanges();
        //        }

        //        return item;
        //    }
        //    catch (Exception ex)
        //    {
        //        return null;
        //    }
        //}

        //public static bool Delete(BillingReceptionModel item)
        //{
        //    if (item == null)
        //        throw new ArgumentNullException("item");
        //    try
        //    {
        //        using (var ctx = new SuchDBContext())
        //        {
        //            ctx.RececaoFaturacao.Remove(item.ParseToDB());
        //            ctx.SaveChanges();
        //        }
        //        return true;
        //    }
        //    catch (Exception ex)
        //    {
        //        return false;
        //    }
        //}

        #endregion

        #region Parse Utilities
        public static BillingReceptionModel ParseToViewModel(this RececaoFaturacao item)
        {
            if (item != null)
            {
                var parsedItem = new BillingReceptionModel();
                parsedItem.Id                            = item.Id;
                parsedItem.IdAreaPendente                = item.IdAreaPendente.HasValue ? (BillingReceptionAreas)item.IdAreaPendente : (BillingReceptionAreas?)null;
                parsedItem.AreaPendente                  = item.AreaPendente;
                parsedItem.AreaPendente2                 = item.AreaPendente2;
                parsedItem.CodAreaFuncional              = item.CodAreaFuncional;
                parsedItem.CodCentroResponsabilidade     = item.CodCentroResponsabilidade;
                parsedItem.CodFornecedor                 = item.CodFornecedor;
                parsedItem.CodLocalizacao                = string.IsNullOrEmpty(item.CodLocalizacao) ? item.CodLocalizacao : item.CodLocalizacao.Trim();
                parsedItem.CodRegiao                     = item.CodRegiao;
                parsedItem.CriadoPor                     = item.CriadoPor;
                parsedItem.DataCriacao                   = item.DataCriacao;
                parsedItem.DataDocFornecedor             = !item.DataDocFornecedor.HasValue ? "" : item.DataDocFornecedor.Value.ToString("yyyy-MM-dd");
                parsedItem.DataModificacao               = item.DataModificacao;
                parsedItem.DataRececao                   = !item.DataRececao.HasValue ? "" : item.DataRececao.Value.ToString("yyyy-MM-dd");
                parsedItem.DataUltimaInteracao           = !item.DataUltimaInteracao.HasValue ? "" : item.DataUltimaInteracao.Value.ToString("yyyy-MM-dd");
                parsedItem.Destinatario                  = item.Destinatario;
                parsedItem.Estado                        = (Enumerations.BillingReceptionStates)item.Estado;
                parsedItem.Local                         = item.Local;
                parsedItem.ModificadoPor                 = item.ModificadoPor;
                parsedItem.NumAcordoFornecedor           = item.NumAcordoFornecedor;
                parsedItem.NumDocFornecedor              = item.NumDocFornecedor;
                parsedItem.NumEncomenda                  = item.NumEncomenda;
                parsedItem.NumEncomendaManual            = item.NumEncomendaManual;
                parsedItem.QuantidadeEncomenda           = item.QuantidadeEncomenda;
                parsedItem.QuantidadeRecebida            = item.QuantidadeRecebida;
                parsedItem.TipoDocumento                 = (Enumerations.BillingDocumentTypes)item.TipoDocumento;
                parsedItem.Valor                         = item.Valor;
                parsedItem.ValorEncomendaOriginal        = item.ValorEncomendaOriginal;
                parsedItem.ValorRecebidoNaoContabilizado = item.ValorRecebidoNaoContabilizado;
                parsedItem.DocumentoCriadoEm             = item.DocumentoCriadoEm;
                parsedItem.DocumentoCriadoPor            = item.DocumentoCriadoPor;
                parsedItem.DataPassaPendente             = !item.DataPassaPendente.HasValue ? "" : item.DataPassaPendente.Value.ToString("dd-MM-yyyy");
                parsedItem.Descricao                     = item.Descricao;
                parsedItem.DescricaoProblema             = item.DescricaoProblema;
                parsedItem.TipoProblema                  = item.TipoProblema;
                parsedItem.WorkflowItems                 = item.RececaoFaturacaoWorkflow.ToList().ParseToViewModel();
                parsedItem.DataResolucao                 = !item.DataResolucao.HasValue ? "" : item.DataResolucao.Value.ToString("yyyy-MM-dd");
                parsedItem.AreaUltimaInteracao           = item.AreaUltimaInteracao;
                parsedItem.UserUltimaInteracao           = item.UserUltimaInteracao;
                parsedItem.ValorEncomendaActual          = item.ValorEncomendaActual;
                parsedItem.DescricaoStatus               = Convert.ToString((Enumerations.BillingReceptionStates)item.Estado);

                return(parsedItem);
            }
            return(null);
        }
コード例 #2
0
 public static RececaoFaturacao ParseToDB(this BillingReceptionModel item)
 {
     if (item != null)
     {
         var parsedItem = new RececaoFaturacao();
         parsedItem.Id                            = item.Id;
         parsedItem.IdAreaPendente                = (int)item.IdAreaPendente;
         parsedItem.AreaPendente                  = item.AreaPendente;
         parsedItem.AreaPendente2                 = item.AreaPendente2;
         parsedItem.CodAreaFuncional              = item.CodAreaFuncional;
         parsedItem.CodCentroResponsabilidade     = item.CodCentroResponsabilidade;
         parsedItem.CodFornecedor                 = item.CodFornecedor;
         parsedItem.CodLocalizacao                = string.IsNullOrEmpty(item.CodLocalizacao) ? item.CodLocalizacao : item.CodLocalizacao.Trim();
         parsedItem.CodRegiao                     = item.CodRegiao;
         parsedItem.CriadoPor                     = item.CriadoPor;
         parsedItem.DataCriacao                   = item.DataCriacao;
         parsedItem.DataDocFornecedor             = string.IsNullOrEmpty(item.DataDocFornecedor) ? (DateTime?)null : DateTime.Parse(item.DataDocFornecedor);
         parsedItem.DataModificacao               = item.DataModificacao;
         parsedItem.DataRececao                   = string.IsNullOrEmpty(item.DataRececao) ? (DateTime?)null : DateTime.Parse(item.DataRececao);
         parsedItem.DataUltimaInteracao           = string.IsNullOrEmpty(item.DataUltimaInteracao) ? (DateTime?)null : DateTime.Parse(item.DataUltimaInteracao);
         parsedItem.Destinatario                  = item.Destinatario;
         parsedItem.Estado                        = (int)item.Estado;
         parsedItem.Local                         = item.Local;
         parsedItem.ModificadoPor                 = item.ModificadoPor;
         parsedItem.NumAcordoFornecedor           = item.NumAcordoFornecedor;
         parsedItem.NumDocFornecedor              = item.NumDocFornecedor;
         parsedItem.NumEncomenda                  = item.NumEncomenda;
         parsedItem.NumEncomendaManual            = item.NumEncomendaManual;
         parsedItem.QuantidadeEncomenda           = item.QuantidadeEncomenda;
         parsedItem.QuantidadeRecebida            = item.QuantidadeRecebida;
         parsedItem.TipoDocumento                 = (int)item.TipoDocumento;
         parsedItem.Valor                         = item.Valor;
         parsedItem.ValorEncomendaOriginal        = item.ValorEncomendaOriginal;
         parsedItem.ValorRecebidoNaoContabilizado = item.ValorRecebidoNaoContabilizado;
         parsedItem.DocumentoCriadoEm             = item.DocumentoCriadoEm;
         parsedItem.DocumentoCriadoPor            = item.DocumentoCriadoPor;
         parsedItem.DataPassaPendente             = string.IsNullOrEmpty(item.DataPassaPendente) ? (DateTime?)null : DateTime.Parse(item.DataPassaPendente);
         parsedItem.Descricao                     = item.Descricao;
         parsedItem.DescricaoProblema             = item.DescricaoProblema;
         parsedItem.TipoProblema                  = item.TipoProblema;
         parsedItem.DataResolucao                 = string.IsNullOrEmpty(item.DataResolucao) ? (DateTime?)null : DateTime.Parse(item.DataResolucao);
         parsedItem.AreaUltimaInteracao           = item.AreaUltimaInteracao;
         parsedItem.UserUltimaInteracao           = item.UserUltimaInteracao;
         parsedItem.ValorEncomendaActual          = item.ValorEncomendaActual;
         return(parsedItem);
     }
     return(null);
 }