示例#1
0
        public void RemoverMapa(EstruturaMapaEsquematico mapa)
        {
            try
            {
                bd.IniciarTransacao();
                var mes = new MapaEsquematicoSetor(this.Control.UsuarioID);

                bd.Executar(
                    @"UPDATE tEvento SET tEvento.MapaEsquematicoID = 0 WHERE MapaEsquematicoID = " + mapa.ID);

                bd.Executar(
                    @"UPDATE tApresentacao SET tApresentacao.MapaEsquematicoID = 0 WHERE MapaEsquematicoID = " + mapa.ID);


                foreach (EstruturaMapaEsquematicoSetor itemSetor in mapa.MapasSetor)
                {
                    mes.Excluir(bd, itemSetor.ID);
                }

                this.Excluir(bd, mapa.ID);

                bd.FinalizarTransacao();
            }
            catch (Exception)
            {
                bd.DesfazerTransacao();
                throw;
            }
            finally
            {
                bd.Fechar();
            }
        }
示例#2
0
        public EstruturaMapaEsquematico InserirNovoMapa(EstruturaMapaEsquematico item)
        {
            try
            {
                bd.IniciarTransacao();

                this.LocalID.Valor = item.LocalID;
                this.Nome.Valor    = item.Nome;
                this.Inserir(bd);

                var mes = new MapaEsquematicoSetor(this.Control.UsuarioID);
                foreach (var itemSetor in item.MapasSetor)
                {
                    if (itemSetor.InnerAcao == EnumMapaEsquematicoInnerAcao.Remover ||
                        itemSetor.InnerAcao == EnumMapaEsquematicoInnerAcao.Removido || !itemSetor.Fechado)
                    {
                        continue;
                    }
                    mes.Limpar();
                    mes.MapaID.Valor      = this.Control.ID;
                    mes.SetorID.Valor     = itemSetor.SetorID;
                    mes.Coordenadas.Valor = itemSetor.PontosToString();
                    mes.Inserir(bd);

                    itemSetor.InnerAcao = EnumMapaEsquematicoInnerAcao.Manter;
                    itemSetor.MapaID    = this.Control.ID;
                    item.ID             = mes.Control.ID;
                }

                item.ID = this.Control.ID;

                item.InnerAcao = EnumMapaEsquematicoInnerAcao.Manter;
                bd.FinalizarTransacao();

                return(item);
            }
            catch (Exception)
            {
                bd.DesfazerTransacao();
                throw;
            }
            finally
            {
                bd.Fechar();
            }
        }
示例#3
0
        public EstruturaMapaEsquematico AlterarMapa(EstruturaMapaEsquematico item)
        {
            try
            {
                bd.IniciarTransacao();

                this.Control.ID    = item.ID;
                this.Nome.Valor    = item.Nome;
                this.LocalID.Valor = item.LocalID;

                MapaEsquematicoSetor mes = new MapaEsquematicoSetor(this.Control.UsuarioID);
                foreach (EstruturaMapaEsquematicoSetor itemSetor in item.MapasSetor)
                {
                    mes.Limpar();
                    mes.MapaID.Valor      = item.ID;
                    mes.SetorID.Valor     = itemSetor.SetorID;
                    mes.Coordenadas.Valor = itemSetor.PontosToString();

                    if (itemSetor.SetorID == 0)
                    {
                        continue;
                    }

                    switch (itemSetor.InnerAcao)
                    {
                    case EnumMapaEsquematicoInnerAcao.Editar:
                        mes.Control.ID = itemSetor.ID;
                        mes.Atualizar(bd);
                        itemSetor.InnerAcao = EnumMapaEsquematicoInnerAcao.Manter;
                        break;

                    case EnumMapaEsquematicoInnerAcao.Novo:
                        mes.Inserir(bd);
                        itemSetor.ID        = mes.Control.ID;
                        itemSetor.InnerAcao = EnumMapaEsquematicoInnerAcao.Manter;
                        break;
                        //case EnumMapaEsquematicoInnerAcao.Remover:
                        //    mes.Excluir(bd, itemSetor.ID);
                        //    itemSetor.InnerAcao = EnumMapaEsquematicoInnerAcao.Removido;
                        //    break;
                        //default:
                        //    //Ignora!
                        //    break;
                    }
                }

                for (int i = 0; i < item.IdsRemover.Count; i++)
                {
                    if (item.IdsRemover[i] > 0)
                    {
                        mes.Excluir(bd, item.IdsRemover[i]);
                    }
                }

                item.IdsRemover.Clear();
                item.MapasSetor.RemoveAll(c => c.SetorID == 0);
                bd.FinalizarTransacao();

                return(item);
            }
            catch (Exception)
            {
                bd.DesfazerTransacao();
                throw;
            }
            finally
            {
                bd.Fechar();
            }
        }
 // passar o Usuario logado no sistema
 public MapaEsquematicoSetorLista_B(int usuarioIDLogado)
 {
     mapaEsquematicoSetor = new MapaEsquematicoSetor(usuarioIDLogado);
 }
 // passar o Usuario logado no sistema
 public MapaEsquematicoSetorLista_B()
 {
     mapaEsquematicoSetor = new MapaEsquematicoSetor();
 }