コード例 #1
0
 public ActionResult AlterarFuncionario(int id, FuncionarioVM funcVM)
 {
     if (HttpContext.User != null && HttpContext.User.Identity.IsAuthenticated)
     {
         EditarVM         viewModel = new EditarVM();
         EtramiteIdentity func      = User.Identity as EtramiteIdentity;
         if (func == null || func.FuncionarioTipo != 3)                 // se não for "funcionário" mostra mensagem
         {
             Validacao.Add(Mensagem.Funcionario.SemPermissao);
         }
         else
         {
             if (_bus.VerificarAlterarFuncionario(id))
             {
                 viewModel.Funcionario = _bus.Obter((User.Identity as EtramiteIdentity).FuncionarioId);
                 _bus.AlterarSenhaFuncionario(viewModel.Funcionario, funcVM.Senha, funcVM.ConfirmarSenha);
             }
         }
         return(View("AlterarFuncionario", viewModel));
     }
     else
     {
         return(Redirect(FormsAuthentication.LoginUrl));
     }
 }
コード例 #2
0
        public ActionResult Edit([Bind(Include = "nombre,ci,mail,apellido,celular,password,rol,horario_id")] FuncionarioVM funcionarioVM)
        {
            using (db_SRI context = new db_SRI())
            {
                Funcionario funcionario = context.Funcionario.FirstOrDefault(a => a.mail.Equals(funcionarioVM.mail));

                Horario horario = context.Horario.FirstOrDefault(e => e.Id == funcionarioVM.horario_id);

                funcionario.Horario  = horario;
                funcionario.nombre   = funcionarioVM.nombre;
                funcionario.apellido = funcionarioVM.apellido;
                funcionario.ci       = funcionarioVM.ci;
                funcionario.mail     = funcionarioVM.mail;
                funcionario.celular  = funcionarioVM.celular;
                funcionario.password = funcionarioVM.password;
                funcionario.rol      = (int)funcionarioVM.rol;
                if (ModelState.IsValid)
                {
                    context.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }

            ViewBag.Horarios = fh.GetListaHorarios(funcionarioVM.horario_id);

            return(View(funcionarioVM));
        }
コード例 #3
0
        public async Task <ResponseResult> CadastrarFuncionario(FuncionarioVM FuncionarioVM)
        {
            var content  = ObterConteudo(FuncionarioVM);
            var response = await _httpClient.PostAsync("api/funcionario/", content);

            if (!TratarErrosResponse(response))
            {
                return(await DeserializarObjetoResponse <ResponseResult>(response));
            }
            return(new ResponseResult());
        }
コード例 #4
0
        private ActionResult GetView(int id)
        {
            FuncionarioDAO funcionario = new FuncionarioDAO();
            CargoDAO       cargo       = new CargoDAO();
            CidadeDAO      cidade      = new CidadeDAO();
            var            obj         = funcionario.DAOGetFuncionario(id);
            var            result      = new FuncionarioVM
            {
                IdModelPai = obj.IdFuncionario,
                nmPessoa   = obj.nmFuncionario,

                nrCEP         = obj.nrCEP,
                dsLogradouro  = obj.dsLogradouro,
                nrResidencial = obj.nrResidencial,
                dsComplemento = obj.dsComplemento,
                dsBairro      = obj.dsBairro,
                idCidade      = obj.IdCidade,
                nrTelefone    = obj.nrTelefone,
                nrCelular     = obj.nrCelular,
                dsEmail       = obj.dsEmail,
                idCargo       = obj.IdCargo,

                Fisica = new FuncionarioVM.PessoaFisicaVM
                {
                    nmApelido   = obj.nmApelido,
                    nrCPF       = obj.nrCPF,
                    nrRG        = obj.nrRG,
                    dtNasc      = obj.dtNasc,
                    flSexo      = obj.flSexo,
                    dsLogin     = obj.dsLogin,
                    senha       = obj.senha,
                    vlSalario   = obj.vlSalario,
                    dtAdimissao = obj.dtAdimissao,
                    dtDemissao  = obj.dtDemissao,
                },

                dtCadastro     = obj.dtCadastro,
                dtUltAlteracao = obj.dtUltAlteracao
            };
            var objCargo = cargo.GetCargo(result.idCargo);

            result.Cargo = new ViewModels.Cargos.SelectCargoVM {
                Id = objCargo.IdCargo, Text = objCargo.dsCargo
            };
            var objCidade = cidade.GetCidade(result.idCidade);

            result.Cidade = new ViewModels.Cidades.SelectCidadeVM {
                Id = objCidade.IdCidade, Text = objCidade.nmCidade
            };
            return(View(result));
        }
コード例 #5
0
        // GET: Funcionario
        public ActionResult Index()
        {
            List <Funcionario> listFuncionarios = db.Funcionario.Where(x => x.is_eliminado == false).ToList();

            List <FuncionarioVM> listFuncionariosVM = new List <FuncionarioVM>();

            foreach (Funcionario funcionario in listFuncionarios)
            {
                FuncionarioVM funcionarioVM = (FuncionarioVM)funcionario;
                listFuncionariosVM.Add(funcionarioVM);
            }

            return(View(listFuncionariosVM));
        }
コード例 #6
0
        // GET: Funcionario/Delete/5
        public ActionResult Delete(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Funcionario funcionario = db.Funcionario.Find(id);

            if (funcionario == null)
            {
                return(HttpNotFound());
            }
            FuncionarioVM funcionarioVM = (FuncionarioVM)funcionario;

            return(View(funcionarioVM));
        }
コード例 #7
0
        // GET: Funcionario/Edit/5
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Funcionario funcionario = db.Funcionario.Find(id);

            if (funcionario == null)
            {
                return(HttpNotFound());
            }
            FuncionarioVM funcionarioVM = (FuncionarioVM)funcionario;

            ViewBag.Horarios = fh.GetListaHorarios(funcionarioVM.horario_id);
            return(View(funcionarioVM));
        }
コード例 #8
0
        public async Task <IActionResult> Create(FuncionarioVM funcionarioVM)
        {
            ViewBag.Empresas = await GetEmpresas();

            if (!ModelState.IsValid)
            {
                return(View(funcionarioVM));
            }

            var resposta = await _funcionarioService.CadastrarFuncionario(funcionarioVM);

            if (ResponsePossuiErros(resposta))
            {
                return(View(funcionarioVM));
            }

            return(RedirectToAction(nameof(Index)));
        }
コード例 #9
0
        public ActionResult Create([Bind(Include = "nombre,ci,mail,apellido,celular,password,rol,horario_id")] FuncionarioVM funcionarioVM)
        {
            Funcionario funcionario = new Funcionario();
            Horario     horario     = db.Horario.SingleOrDefault(e => e.Id == funcionarioVM.horario_id);

            funcionario.Horario  = horario;
            funcionario.nombre   = funcionarioVM.nombre;
            funcionario.apellido = funcionarioVM.apellido;
            funcionario.ci       = funcionarioVM.ci;
            funcionario.mail     = funcionarioVM.mail;
            funcionario.celular  = funcionarioVM.celular;
            funcionario.password = funcionarioVM.password;
            funcionario.rol      = (int)funcionarioVM.rol;

            var func_mail = fh.GetFuncionarioByMail(funcionario.mail);
            var func_ci   = db.Funcionario.FirstOrDefault(x => x.ci == funcionario.ci);

            if (func_mail == null && func_ci == null)
            {
                if (ModelState.IsValid)
                {
                    db.Funcionario.Add(funcionario);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }
            }
            else if (func_mail != null)
            {
                ModelState.AddModelError(string.Empty, "Ya existe un usuario con este mail");
            }
            else if (func_ci != null)
            {
                ModelState.AddModelError(string.Empty, "Ya existe un usuario con este numero de documento");
            }



            ViewBag.Horarios = fh.GetListaHorarios();

            return(View(funcionarioVM));
        }
コード例 #10
0
        public async Task <IActionResult> Edit(int id, FuncionarioVM funcionarioVM)
        {
            ViewBag.Empresas = await GetEmpresas();

            if (id != funcionarioVM.Id)
            {
                return(NotFound());
            }
            if (!ModelState.IsValid)
            {
                return(View(funcionarioVM));
            }

            var resposta = await _funcionarioService.AtualizarFuncionario(id, funcionarioVM);

            if (ResponsePossuiErros(resposta))
            {
                return(View(funcionarioVM));
            }

            return(RedirectToAction(nameof(Index)));
        }
コード例 #11
0
        public ActionResult Create(FuncionarioVM model)
        {
            //if (ModelState.IsValid)
            //{
            try
            {
                var bean = model.GetFuncionario(new Funcionario());
                var dao  = new FuncionarioDAO();

                bean.dtCadastro     = DateTime.Now;
                bean.dtUltAlteracao = DateTime.Now;

                dao.InsertFuncionario(bean);

                this.AddFlashMessage("Registro Salvo com sucesso!");
                return(RedirectToAction("index"));
            }
            catch
            {
                return(View(model));
            }
            //}
            //return View(model);
        }
コード例 #12
0
        public ActionResult Edit(int id, FuncionarioVM model)
        {
            //if (ModelState.IsValid)
            //{

            try
            {
                FuncionarioDAO dao         = new FuncionarioDAO();
                var            funcionario = dao.DAOGetFuncionario(id);

                var bean = model.GetFuncionario(funcionario);
                bean.dtUltAlteracao = DateTime.Now;

                dao.UpdateFuncionario(bean);
                this.AddFlashMessage("Registro Alterado com sucesso!");
                return(RedirectToAction("index"));
            }
            catch
            {
                return(View(model));
            }
            //}
            //return View(model);
        }
コード例 #13
0
        public ActionResult Editar(FuncionarioVM funcVM)
        {
            Funcionario funcionario = _bus.Obter(funcVM.Cpf) ?? new Funcionario();

            if (funcionario.Arquivo.Id.HasValue && !funcVM.ArquivoId.HasValue)
            {
                Validacao.Add(Mensagem.Funcionario.AssinaturaObrigatoria);
            }

            funcionario.AlterarSenha  = funcVM.AlterarSenha;
            funcionario.Usuario.Login = funcVM.Login;
            funcionario.Nome          = funcVM.Nome;
            funcionario.Email         = funcVM.Email;

            funcionario.Arquivo.ContentType    = funcVM.ArquivoContentType;
            funcionario.Arquivo.Extensao       = funcVM.ArquivoExtensao;
            funcionario.Arquivo.Id             = funcVM.ArquivoId;
            funcionario.Arquivo.Nome           = funcVM.ArquivoNome;
            funcionario.Arquivo.TemporarioNome = funcVM.ArquivoTemporarioNome;

            //funcionario.ArquivoJSon = ViewModelHelper.JsSerializer.Serialize(funcionario.Arquivo);

            //vm.Modelo.Arquivo = vm.Modelo.Arquivo ?? new Arquivo();
            //vm.ArquivoJSon = ViewModelHelper.JsSerializer.Serialize(vm.Modelo.Arquivo);
            //ViewModelHelper.JsSerializer.Deserialize<Arquivo>(anexo.ArquivoJson);



            funcVM.ListaCargos  = funcVM.ListaCargos ?? new List <String>();
            funcVM.ListaSetores = funcVM.ListaSetores ?? new List <Setor>();
            funcVM.papeis       = funcVM.papeis ?? new List <PapeisVME>();

            funcionario.Cargos.RemoveAll(x => !funcVM.ListaCargos.Exists(y => y == x.Id.ToString()));
            funcionario.Cargos.AddRange(
                _busLista.Cargos
                .Where(x =>
                       funcVM.ListaCargos.Contains(x.Id.ToString()) &&
                       !funcionario.Cargos.Exists(y => y.Id == x.Id)));

            funcionario.Setores.RemoveAll(x => !funcVM.ListaSetores.Exists(y => y.Id == x.Id));
            funcionario.Setores.AddRange(
                funcVM.ListaSetores
                .Where(x => !funcionario.Setores.Exists(y => y.Id == x.Id)));
            List <Setor> lstSetorAtual = _busLista.SetoresComSiglaAtuais;

            foreach (var item in funcionario.Setores)
            {
                item.EhResponsavel = funcVM.ListaSetores.Single(x => x.Id == item.Id).EhResponsavel;

                item.Nome = lstSetorAtual.Single(x => x.Id == item.Id).Nome;
                if (item.EhResponsavel)
                {
                    item.Responsavel = funcionario.Id;
                }
                else
                {
                    item.Responsavel = lstSetorAtual.Single(x => x.Id == item.Id).Responsavel;
                }
            }

            if (funcVM.ListaSetores.Count == 0)
            {
                funcionario.Setores.Clear();
            }

            foreach (var item in funcVM.papeis)
            {
                if (item.IsAtivo)
                {
                    if (!funcionario.Papeis.Exists(x => x.Id == item.Papel.Id) &&
                        _bus.PapeisFuncionario.Exists(y => y.Id == item.Papel.Id))
                    {
                        funcionario.Papeis.Add(item.Papel);
                    }
                }
                else
                {
                    funcionario.Papeis.RemoveAll(x => x.Id == item.Papel.Id);
                }
            }

            if (_bus.Salvar(funcionario, funcVM.Senha, funcVM.ConfirmarSenha))
            {
                return(RedirectToAction("Index", Validacao.QueryParamSerializer()));
            }

            EditarVM viewModel = new EditarVM(_busLista.Cargos, _busLista.SetoresComSigla);

            viewModel.Funcionario = funcionario;

            viewModel.Papeis = _bus.PapeisFuncionario.
                               Select(x => new PapeisVME()
            {
                Papel = x, IsAtivo = viewModel.Funcionario.Papeis.Any(y => y.Id == x.Id)
            }).ToList();

            viewModel.TextoPermissoes = TextoPermissoes(viewModel.Papeis);

            return(View(viewModel));
        }
コード例 #14
0
        public ActionResult Criar(FuncionarioVM funcVM)
        {
            Funcionario funcionario = _bus.Obter(funcVM.Cpf) ?? new Funcionario();

            funcionario.Usuario.Login = (funcVM.Login ?? string.Empty).Trim();
            funcionario.Cpf           = (funcVM.Cpf ?? string.Empty).Trim();
            funcionario.Nome          = (funcVM.Nome ?? string.Empty).Trim();
            funcionario.Email         = (funcVM.Email ?? string.Empty).Trim();

            funcionario.Arquivo.ContentType    = funcVM.ArquivoContentType;
            funcionario.Arquivo.Extensao       = funcVM.ArquivoExtensao;
            funcionario.Arquivo.Id             = funcVM.ArquivoId;
            funcionario.Arquivo.Nome           = funcVM.ArquivoNome;
            funcionario.Arquivo.TemporarioNome = funcVM.ArquivoTemporarioNome;

            funcVM.ListaCargos  = funcVM.ListaCargos ?? new List <String>();
            funcVM.ListaSetores = funcVM.ListaSetores ?? new List <Setor>();
            funcVM.papeis       = funcVM.papeis ?? new List <PapeisVME>();

            funcionario.Cargos.RemoveAll(x => !funcVM.ListaCargos.Exists(y => y == x.Id.ToString()));
            funcionario.Cargos.AddRange(
                _busLista.Cargos
                .Where(x =>
                       funcVM.ListaCargos.Contains(x.Id.ToString()) &&
                       !funcionario.Cargos.Exists(y => y.Id == x.Id)));

            funcVM.ListaSetores.ForEach(x => x.Nome = _busLista.SetoresComSigla.Single(y => y.Id == x.Id).Nome);
            funcionario.Setores.RemoveAll(x => !funcVM.ListaSetores.Exists(y => y.Id == x.Id));
            funcionario.Setores.AddRange(
                funcVM.ListaSetores
                .Where(x => !funcionario.Setores.Exists(y => y.Id == x.Id)));

            foreach (var item in funcVM.papeis)
            {
                if (item.IsAtivo)
                {
                    if (!funcionario.Papeis.Exists(x => x.Id == item.Papel.Id) &&
                        _bus.PapeisFuncionario.Exists(y => y.Id == item.Papel.Id))
                    {
                        funcionario.Papeis.Add(_bus.PapeisFuncionario.Single(y => y.Id == item.Papel.Id));
                    }
                }
                else
                {
                    funcionario.Papeis.RemoveAll(x => x.Id == item.Papel.Id);
                }
            }

            if (_bus.Salvar(funcionario, funcVM.Senha, funcVM.ConfirmarSenha))
            {
                return(RedirectToAction("Criar", Validacao.QueryParamSerializer()));
            }

            CriarVM viewModel = new CriarVM(_busLista.Cargos, _busLista.SetoresComSigla);

            viewModel.Funcionario = funcionario;
            viewModel.CpfValido   = true;

            viewModel.Papeis = _bus.PapeisFuncionario.
                               Select(x => new PapeisVME()
            {
                Papel = x, IsAtivo = viewModel.Funcionario.Papeis.Any(y => y.Id == x.Id)
            }).ToList();

            viewModel.TextoPermissoes = TextoPermissoes(viewModel.Papeis);

            return(View(viewModel));
        }