Example #1
0
        static void GerarScriptTransportadoras()
        {
            var listaTransportadoras = LerArquivoTransportadora();

            foreach (var item in listaTransportadoras)
            {
                var           repoAreaCobertura = new RepositorioAreaCobertura();
                var           repoPesoValor     = new RepositorioPesoValor();
                int           idTransportadora  = 0;
                AreaCobertura areascoberturas   = new AreaCobertura();
                switch (item.NomeTransportadora)
                {
                case "FLASH COURIER":
                    areascoberturas  = repoAreaCobertura.ListarAreas().Where(x => x.CepInicio == item.CepDe & x.CepTermino == item.CepAte & x.TransportadoraId == Convert.ToInt32(Transportadoras.FlashCourier)).FirstOrDefault();
                    idTransportadora = Convert.ToInt32(Transportadoras.FlashCourier);
                    break;

                case "INTERLOG DISTR.":
                    areascoberturas  = repoAreaCobertura.ListarAreas().Where(x => x.CepInicio == item.CepDe & x.CepTermino == item.CepAte & x.TransportadoraId == Convert.ToInt32(Transportadoras.InterlogDristr)).FirstOrDefault();
                    idTransportadora = Convert.ToInt32(Transportadoras.InterlogDristr);
                    break;

                case "TREX LOGISTICA":
                    areascoberturas  = repoAreaCobertura.ListarAreas().Where(x => x.CepInicio == item.CepDe & x.CepTermino == item.CepAte & x.TransportadoraId == Convert.ToInt32(Transportadoras.TrexLogistica)).FirstOrDefault();
                    idTransportadora = Convert.ToInt32(Transportadoras.TrexLogistica);
                    break;

                default:
                    break;
                }

                if (areascoberturas != null)
                {
                    var pesoValor = repoPesoValor.Listar().Where(x => x.AreaCoberturaId == areascoberturas.Id & x.PesoMaximo == item.ValorMax & x.PesoMinimo == item.ValorMin).FirstOrDefault();

                    if (pesoValor != null)
                    {
                        pesoValor.Valor = item.ValorCusto;
                        repoPesoValor.Alterar(pesoValor);
                    }
                    else
                    {
                        var pesoValorEntidate = CriarEntidadePesoValor(item, areascoberturas.Id);
                        repoPesoValor.Inserir(pesoValorEntidate);
                    }
                }
                else
                {
                    var areaCoberturaEntidade = CriarEntidadeAreaCobertura(item, idTransportadora);
                    repoAreaCobertura.Inserir(areaCoberturaEntidade);
                    var idAreaCobertura = repoAreaCobertura.Listar().Where(x => x.CepInicio == areaCoberturaEntidade.CepInicio && x.CepTermino == areaCoberturaEntidade.CepTermino && x.TransportadoraId == areaCoberturaEntidade.TransportadoraId).FirstOrDefault().Id;

                    var pesoValorEntidate = CriarEntidadePesoValor(item, idAreaCobertura);
                    repoPesoValor.Inserir(pesoValorEntidate);
                }
            }
        }
Example #2
0
        static AreaCobertura CriarEntidadeAreaCobertura(Transportadora transportadora, int idTransportadora)
        {
            AreaCobertura retorno = new AreaCobertura();

            retorno.CepInicio         = transportadora.CepDe;
            retorno.CepTermino        = transportadora.CepAte;
            retorno.DataCriacao       = DateTime.Now;
            retorno.TransportadoraId  = idTransportadora;
            retorno.UltimaAtualizacao = DateTime.Now;

            return(retorno);
        }
Example #3
0
        static AreaCobertura CriarEntidadeAreaCobertura(Correios correio)
        {
            AreaCobertura retorno = new AreaCobertura();

            retorno.CepInicio         = correio.CepInicio;
            retorno.CepTermino        = correio.CepFim;
            retorno.DataCriacao       = DateTime.Now.Date;
            retorno.TransportadoraId  = 1;
            retorno.UltimaAtualizacao = DateTime.Now.Date;

            return(retorno);
        }