Пример #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);
                }
            }
        }
Пример #2
0
        static void GerarScriptCorreios()
        {
            try
            {
                var listaCorreios = LerArquivoCorreios(false);
                foreach (var item in listaCorreios)
                {
                    var repoAreaCobertura = new RepositorioAreaCobertura();
                    var repoPesoValor     = new RepositorioPesoValor();
                    var areacoberturas    = repoAreaCobertura.ListarAreas().Where(x => x.CepInicio == item.CepInicio & x.CepTermino == item.CepFim & x.TransportadoraId == 1).FirstOrDefault();

                    if (areacoberturas != null)
                    {
                        var pesoValor = repoPesoValor.Listar().Where(x => x.AreaCoberturaId == areacoberturas.Id & x.PesoMaximo == (Convert.ToDecimal(item.PesoAte) / 1000) & x.PesoMinimo == (Convert.ToDecimal(item.PesoDe) / 1000)).FirstOrDefault();

                        if (pesoValor != null)
                        {
                            if (item.Origem == "SAO PAULO")
                            {
                                pesoValor.Valor = item.Custo;
                            }
                            else
                            {
                                pesoValor.ValorCuritiba = item.Custo;
                            }

                            repoPesoValor.Alterar(pesoValor);
                        }
                        else
                        {
                            var pesoValorEntidate = CriarEntidadePesoValor(item, areacoberturas.Id);
                            repoPesoValor.Inserir(pesoValorEntidate);
                        }
                    }
                    else
                    {
                        var areaCoberturaEntidade = CriarEntidadeAreaCobertura(item);
                        repoAreaCobertura.Inserir(areaCoberturaEntidade);
                        var idAreaCobertura = repoAreaCobertura.Listar().Where(x => x.CepInicio == areaCoberturaEntidade.CepInicio && x.CepTermino == areaCoberturaEntidade.CepTermino && x.TransportadoraId == 1).FirstOrDefault().Id;

                        var pesoValorEntidate = CriarEntidadePesoValor(item, idAreaCobertura);
                        repoPesoValor.Inserir(pesoValorEntidate);
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }