示例#1
0
        public List <InformacoesColetaDTO> ObterSolicitacoesTransporte()
        {
            List <InformacoesColetaDTO> listaIformacoesColeta = new List <InformacoesColetaDTO>();

            List <SolicitacaoTransporte> solicitacoes = new SolicitacaoTransporteDAL().Listar().ToList();

            foreach (SolicitacaoTransporte solicitacao in solicitacoes)
            {
                var sol = ObterSolicitacaoTransporte(solicitacao.IdSolicitacao);
                if (sol != null)
                {
                    listaIformacoesColeta.Add(sol);
                }
            }

            return(listaIformacoesColeta);
        }
示例#2
0
        public Expedicao CriarNovaExpedicao(long _idSolicitacao)
        {
            using (var dbs = new dabbawalaContext())
            {
                //  Busca a solicitação
                SolicitacaoTransporte solicitacao = new SolicitacaoTransporteDAL().Obter(_idSolicitacao);
                if (solicitacao == null)
                {
                    throw new Exception("Não foi encontrado solicitação de transporte com ID [" + _idSolicitacao.ToString() + "]");
                }

                using (var trans = dbs.Database.BeginTransaction())
                {
                    // Gera uma data de previsão (aleatória)
                    DateTime dataPrevisao = DateTime.Now;
                    Random   random       = new Random();
                    dataPrevisao = dataPrevisao.AddDays(random.Next(0, 3));
                    dataPrevisao = dataPrevisao.AddHours(random.Next(1, 23));
                    dataPrevisao = dataPrevisao.AddMinutes(random.Next(1, 59));
                    dataPrevisao = dataPrevisao.AddSeconds(random.Next(1, 59));

                    // Cria a nova expedição
                    var expedicao = new Expedicao
                    {
                        IdSolicitacao   = solicitacao.IdSolicitacao,
                        PrevisaoEntrega = dataPrevisao,
                        Status          = "1"
                    };

                    // Salva e commita as alterações
                    dbs.Expedicao.Add(expedicao);
                    dbs.SaveChanges();
                    trans.Commit();

                    return(expedicao);
                }
            }
        }
示例#3
0
        public InformacoesColetaDTO ObterSolicitacaoTransporte(long _id)
        {
            InformacoesColetaDTO  informacoesColeta = new InformacoesColetaDTO();
            SolicitacaoTransporte solicitacao       = new SolicitacaoTransporteDAL().Obter(_id);

            if (solicitacao == null)
            {
                return(null);
            }

            informacoesColeta.ID               = solicitacao.IdSolicitacao;
            informacoesColeta.CNPJCliente      = new PessoaJuridicaDAL().Obter(new ClienteDAL().Obter(solicitacao.IdCliente).IdPessoa).Cnpj.ToString();
            informacoesColeta.CNPJDestinatario = new PessoaJuridicaDAL().Obter(solicitacao.IdDestinatario).Cnpj.ToString();
            if (solicitacao.IdTransportador != null)
            {
                Fornecedor fornecedor = new FornecedorDAL().Obter(solicitacao.IdTransportador);
                if (fornecedor != null)
                {
                    informacoesColeta.CNPJTransportador = new PessoaJuridicaDAL().Obter(fornecedor.IdPessoa).Cnpj.ToString();
                }
            }
            informacoesColeta.Observacoes = solicitacao.Observacoes;


            EnderecoColetaDTO enderecoColetaDTO = new EnderecoColetaDTO();
            Endereco          enderecoColeta    = new EnderecoDAL().Obter(solicitacao.IdLocalColeta);

            enderecoColetaDTO.ID         = enderecoColeta.IdEndereco;
            enderecoColetaDTO.Logradouro = enderecoColeta.Logradouro;
            enderecoColetaDTO.Numero     = enderecoColeta.Numero;
            Bairro bairro = new DALControl <Bairro>().Obter(enderecoColeta.IdBairro);

            enderecoColetaDTO.Bairro = bairro.Nome;
            Municipio municipio = new DALControl <Municipio>().Obter(bairro.IdMunicipio);

            enderecoColetaDTO.Municipio = municipio.Nome;
            Estado uf = new DALControl <Estado>().Obter(municipio.IdEstado);

            enderecoColetaDTO.UF          = uf.Sigla;
            informacoesColeta.LocalColeta = enderecoColetaDTO;

            EnderecoColetaDTO enderecoEntregaDTO = new EnderecoColetaDTO();
            Endereco          enderecoEntrega    = new EnderecoDAL().Obter(solicitacao.IdLocalEntrega);

            enderecoEntregaDTO.ID         = enderecoEntrega.IdEndereco;
            enderecoEntregaDTO.Logradouro = enderecoEntrega.Logradouro;
            enderecoEntregaDTO.Numero     = enderecoEntrega.Numero;
            Bairro bairroEnt = new DALControl <Bairro>().Obter(enderecoEntrega.IdBairro);

            enderecoEntregaDTO.Bairro = bairroEnt.Nome;
            Municipio municipioEnt = new DALControl <Municipio>().Obter(bairroEnt.IdMunicipio);

            enderecoEntregaDTO.Municipio = municipioEnt.Nome;
            Estado ufEnt = new DALControl <Estado>().Obter(municipioEnt.IdEstado);

            enderecoEntregaDTO.UF          = ufEnt.Sigla;
            informacoesColeta.LocalEntrega = enderecoEntregaDTO;

            informacoesColeta.Itens = new ItensSolicitacaoDAL().GetInformacoesItensSolicitacao(solicitacao.IdSolicitacao);

            return(informacoesColeta);
        }