Exemplo n.º 1
0
        public void AtualizaSegmentos(ContaSegmento contaSegmento)
        {
            CanalVerdeService     canalverdeService     = new CanalVerdeService(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline);
            FamiliaProdutoService familiaProdutoService = new FamiliaProdutoService(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline);
            ContaService          contaService          = new ContaService(RepositoryService.NomeDaOrganizacao, RepositoryService.IsOffline);

            var listaVerde          = canalverdeService.listarPorContaTodos(contaSegmento.Conta.Id);
            var listaFamiliaProduto = familiaProdutoService.ListarPorSegmento(contaSegmento.Segmento.Id, true, null, null);
            var conta = contaService.BuscaConta(contaSegmento.Conta.Id);

            //MaisVerde = Sim
            if (contaSegmento.MaisVerde)
            {
                //percorre a lista de produtos
                foreach (var item in listaFamiliaProduto)
                {
                    var verde = listaVerde.Where(x => x.FamiliaProduto.Id.Equals(item.ID)).FirstOrDefault();
                    if (verde != null)
                    {
                        //se esta inativo, ativa e salva
                        if (verde.Status.Equals(1))
                        {
                            verde.Status = 0;
                            canalverdeService.Persistir(verde);
                        }
                    }
                    else
                    {
                        //cria um novo registro
                        CanalVerde canalVerde = new CanalVerde();
                        canalVerde.Canal          = contaSegmento.Conta;
                        canalVerde.Segmento       = item.Segmento;
                        canalVerde.FamiliaProduto = new SDKore.DomainModel.Lookup()
                        {
                            Id = item.Id
                        };
                        canalVerde.Nome   = conta.CodigoMatriz + " | " + item.Segmento.Name + " | " + item.Nome;
                        canalVerde.Status = 0;

                        canalverdeService.Persistir(canalVerde);
                    }
                }
            }
            else
            {
                //percorre a lista de produtos
                foreach (var item in listaFamiliaProduto)
                {
                    var verde = listaVerde.Where(x => x.FamiliaProduto.Id.Equals(item.ID)).FirstOrDefault();
                    if (verde != null)
                    {
                        //se esta ativo, inativa e salva
                        if (verde.Status.Equals(0))
                        {
                            verde.Status = 1;
                            canalverdeService.Persistir(verde);
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
 public ContaSegmento Persistir(ContaSegmento contaSegmento)
 {
     return(null);
 }