Ejemplo n.º 1
0
        /// <summary></summary>
        private void excluido()
        {
            // REMOVER CAMPOS

            // 1º - Remover na Tabela Opcoes
            var opcoes_rm = (from o in _context.Opcoes
                             join co in _context.CamposOpcoes on o.Id equals co.OpcoesId
                             join c in _context.Campos on co.CamposId equals c.Id
                             join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                             where fc.FormularioId == _formulario.Id
                             select o).ToList();

            // 2º - Remover na Tabela CamposOpcoes
            var camposOpcoes_rm = (from co in _context.CamposOpcoes
                                   join c in _context.Campos on co.CamposId equals c.Id
                                   join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                                   where fc.FormularioId == _formulario.Id
                                   select co).ToList();

            _context.CamposOpcoes.RemoveRange(camposOpcoes_rm);
            _context.SaveChanges();

            _context.Opcoes.RemoveRange(opcoes_rm);
            _context.SaveChanges();

            // 3º - Remover na Tabela Campos
            var campos = (from c in _context.Campos
                          join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                          where fc.FormularioId == _formulario.Id
                          select c).ToList();

            _context.Campos.RemoveRange(campos);
            _context.SaveChanges();

            // 4º - RRemover na Tabela FormularioCampos
            var formulariosCampos = _context.FormularioCampos.Where(x => x.FormularioId == _formulario.Id).ToList();

            _context.FormularioCampos.RemoveRange(formulariosCampos);
            _context.SaveChanges();

            // 5º - Remover na Tabela EmpresaFormularios
            var empresaFormularios = _context.EmpresaFormularios.Where(x => x.FormularioId == _formulario.Id).ToList();

            _context.EmpresaFormularios.RemoveRange(empresaFormularios);
            _context.SaveChanges();

            //var local = this._context.Formulario.FirstOrDefault(x => x.Id == _formulario.Id);

            //// SOLUÇÃO PARA O PROBLEMA DE INSTANCIA DUPLICADA
            //this._context.Entry(local).State = EntityState.Detached;
            //this._context.Entry(_formulario).State = EntityState.Deleted;

            // 6º - Remover na Tabela Formulario
            this._context.Formulario.Remove(_formulario);
            this._context.SaveChanges();
        }
Ejemplo n.º 2
0
        public void excluir()
        {
            var usuarioId = this._cadastroUsuarioDTO.Id;
            var empresaId = this._cadastroUsuarioDTO.IdEmpresaSelecionada;

            var usuarioEmpresa = _context.UsuarioEmpresa.Where(ue => ue.UsuarioId.Equals(usuarioId) && ue.EmpresaId.Equals(empresaId)).FirstOrDefault();

            if (usuarioEmpresa != null)
            {
                var qtd = _context.UsuarioEmpresa.Where(ue => ue.UsuarioId.Equals(usuarioId)).Count();

                if (qtd > 1)
                {
                    _context.UsuarioEmpresa.Remove(usuarioEmpresa);
                    _context.SaveChanges();
                }
                else
                {
                    var usuario = new Usuario()
                    {
                        Id = _cadastroUsuarioDTO.Id
                    };

                    var isAuditoria = _context.Auditoria.Where(x => x.UsuarioId.Equals(usuario.Id)).Count();

                    if (isAuditoria > 1)
                    {
                        usuario.Status = 0;

                        _context.Usuario.Update(usuario);
                        _context.SaveChanges();
                    }
                    else
                    {
                        _context.Usuario.Remove(usuario);
                        _context.SaveChanges();
                    }
                }
            }
        }
Ejemplo n.º 3
0
 /// <summary>Commit do Regitsro</summary>
 /// <returns></returns>
 public bool SaveChanges()
 {
     return(_context.SaveChanges() > 0);
 }
Ejemplo n.º 4
0
        private void editarFormularioBaseDto(FormularioDTO formularioDTO)
        {
            var formulario = _context.Formulario.Where(x => x.Id == formularioDTO.Id).FirstOrDefault();

            formulario.Nome = formularioDTO.Nome;

            this._context.Formulario.Update(formulario);
            this._context.SaveChanges();

            // REMOVER CAMPOS
            // 1º - REMOVER NA TABELA CamposOpcoes
            var camposOpcoes_rm = (from co in _context.CamposOpcoes
                                   join c in _context.Campos on co.CamposId equals c.Id
                                   join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                                   where fc.FormularioId == formulario.Id
                                   select co).ToList();

            // 2º - REMOVER NA TABELA CamposOpcoes
            var opcoes_rm = (from o in _context.Opcoes
                             join co in _context.CamposOpcoes on o.Id equals co.OpcoesId
                             join c in _context.Campos on co.CamposId equals c.Id
                             join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                             where fc.FormularioId == formulario.Id
                             select o).ToList();

            _context.CamposOpcoes.RemoveRange(camposOpcoes_rm);
            _context.SaveChanges();

            _context.Opcoes.RemoveRange(opcoes_rm);
            _context.SaveChanges();

            // 3º - REMOVER NA TABELA Campos
            var campos = (from c in _context.Campos
                          join fc in _context.FormularioCampos on c.Id equals fc.CamposId
                          where fc.FormularioId == formulario.Id
                          select c).ToList();

            _context.Campos.RemoveRange(campos);
            _context.SaveChanges();

            // 4º - REMOVER NA TABELA FormularioCampos
            var formulariosCampos = _context.FormularioCampos.Where(x => x.FormularioId == formulario.Id).ToList();

            _context.FormularioCampos.RemoveRange(formulariosCampos);
            _context.SaveChanges();

            // 5º - ADICIONAR NA TABELA Opcoes
            foreach (CamposDTO item in formularioDTO.CamposDTO)
            {
                Campos campo = new Campos(item.Value, item.Key, item.Label, item.Required, item.Order, item.ControlType, item.Type, item.Mask, item.Placeholder);
                this._context.Campos.Add(campo);
                this._context.SaveChanges();

                var formularioCampos = new FormularioCampos();
                formularioCampos.FormularioId = formulario.Id;
                formularioCampos.CamposId     = campo.Id;
                this._context.FormularioCampos.Add(formularioCampos);
                this._context.SaveChanges();

                foreach (Opcoes opcao in item.Options)
                {
                    Opcoes opcoes = new Opcoes(opcao.Key, opcao.Value);
                    this._context.Opcoes.Add(opcoes);
                    this._context.SaveChanges();

                    // 5º - ADICIONAR NA TABELA CamposOpcoes
                    CamposOpcoes camposOpcoes = new CamposOpcoes(campo.Id, opcoes.Id);
                    this._context.CamposOpcoes.Add(camposOpcoes);
                    this._context.SaveChanges();
                }
            }
        }