Ejemplo n.º 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();
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Exclui o item corrente da lista
        /// </summary>
        /// <returns></returns>
        public override bool Excluir()
        {
            try
            {
                bool ok = mapaEsquematicoSetor.Excluir();
                if (ok)
                {
                    lista.RemoveAt(Indice);
                }

                return(ok);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 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();
            }
        }