public ActionResult Terminar(string IDEmpregado) { try { Empregado oEmpregado = EmpregadoBusiness.Consulta.FirstOrDefault(p => string.IsNullOrEmpty(p.UsuarioExclusao) && p.ID.Equals(IDEmpregado)); if (oEmpregado == null) { return(Json(new { resultado = new RetornoJSON() { Erro = "Não foi possível excluir o empregado, pois o mesmo não foi localizado." } })); } else { oEmpregado.DataExclusao = DateTime.Now; //oEmpregado.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Usuario.Login; EmpregadoBusiness.Excluir(oEmpregado); return(Json(new { resultado = new RetornoJSON() { Sucesso = "O empregado '" + oEmpregado.Nome + "' foi excluído com sucesso." } })); } } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } }
public ActionResult Cadastrar(Empregado empregado) { if (ModelState.IsValid) { try { empregado.UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; empregado.Status = "Atualmente sem admissão"; EmpregadoBusiness.Inserir(empregado); Extensions.GravaCookie("MensagemSucesso", "O empregado '" + empregado.Nome + "' foi cadastrado com sucesso.", 10); return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Novo", "Empregado") } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult Atualizar(Empregado empregado) { if (ModelState.IsValid) { try { EmpregadoBusiness.Alterar(empregado); Extensions.GravaCookie("MensagemSucesso", "O empregado '" + empregado.Nome + "' foi atualizado com sucesso.", 10); return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Index", "Empregado") } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult Atualizar(Empregado empregado) { if (ModelState.IsValid) { try { //empregado.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Usuario.Login; EmpregadoBusiness.Alterar(empregado); TempData["MensagemSucesso"] = "O empregado '" + empregado.Nome + "' foi atualizado com sucesso."; return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Index", "Empregado") } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult Cadastrar(Empregado empregado) { if (ModelState.IsValid) { try { EmpregadoBusiness.Inserir(empregado); TempData["MensagemSucesso"] = "O empregado '" + empregado.Nome + "' foi cadastrado com sucesso."; return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("ListaEmpregado", "Empregado", new { id = empregado.IDEmpregado }) } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult Demitir(string id) { try { //###################################################################################################### if (string.IsNullOrEmpty(id)) { throw new Exception("Não foi possível localizar a identificação da admissão para prosseguir com a operação."); } Guid UKAdmissao = Guid.Parse(id); Admissao adm = AdmissaoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(UKAdmissao)); if (adm == null) { throw new Exception("Não foi possível encontrar a admissão na base de dados."); } Empregado oEmp = EmpregadoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(adm.UKEmpregado)); if (oEmp == null) { throw new Exception("Não foi possível encontrar o empregado na base de dados."); } //###################################################################################################### List <Alocacao> als = AlocacaoBusiness.Consulta.Where(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UKAdmissao.Equals(UKAdmissao)).ToList(); if (als.Count > 0) { foreach (Alocacao al in als) { al.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; AlocacaoBusiness.Terminar(al); } } adm.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; AdmissaoBusiness.Terminar(adm); oEmp.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; EmpregadoBusiness.Terminar(oEmp); EmpregadoBusiness.Inserir(new Empregado() { CPF = oEmp.CPF, Nome = oEmp.Nome, DataNascimento = oEmp.DataNascimento, Email = oEmp.Email, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login, UniqueKey = oEmp.UniqueKey, Status = "Já admitido alguma vez" }); Extensions.GravaCookie("MensagemSucesso", "O empregado foi demitido com sucesso.", 10); return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Perfil", "Empregado", new { id = adm.UKEmpregado.ToString() }) } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } }
public ActionResult Cadastrar(Admissao entidade) { if (ModelState.IsValid) { try { Empregado oEmp = EmpregadoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(entidade.UKEmpregado)); if (oEmp == null) { throw new Exception("Não foi possível encontrar o empregado relacionado a admissão."); } entidade.Status = GISModel.Enums.Situacao.Ativo; entidade.UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; AdmissaoBusiness.Inserir(entidade); oEmp.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; EmpregadoBusiness.Terminar(oEmp); EmpregadoBusiness.Inserir(new Empregado() { CPF = oEmp.CPF, Nome = oEmp.Nome, DataNascimento = oEmp.DataNascimento, Email = oEmp.Email, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login, UniqueKey = oEmp.UniqueKey, Status = "Atualmente admitido" }); var adm = @"select top 1 UniqueKey, DataInclusao from tbAdmissao LAST_INSET_ID ORDER BY DataInclusao DESC "; List <Admissao> lista1 = new List <Admissao>(); DataTable result1 = DocumentosPessoalBusiness.GetDataTable(adm); if (result1.Rows.Count > 0) { Admissao UkAdm = null; Guid ukadmissao = Guid.Empty; foreach (DataRow row in result1.Rows) { if (UkAdm == null) { UkAdm = new Admissao() { UniqueKey = Guid.Parse(row["UniqueKey"].ToString()) }; } } if (UkAdm != null) { lista1.Add(UkAdm); } foreach (var item in lista1) { if (item != null) { ukadmissao = item.UniqueKey; } } //ukad = Uniquekey da ultima admissao List <Admissao> lista = new List <Admissao>(); // aqui faço uma pesquisa de documentos relacionados a admissao var sql = @"select UniqueKey as UKad, NomeDocumento as nome from tbDocumentosPessoal where Tipo = 1"; DataTable result = DocumentosPessoalBusiness.GetDataTable(sql); //abaixo monto uma lista de objetos com a Uniquekey da alocação e a relação de documentos relacionados a atividade alocada if (result.Rows.Count > 0) { Admissao obj = null; DocumentosPessoal oDoc = null; foreach (DataRow row in result.Rows) { if (obj == null) { obj = new Admissao() { UniqueKey = ukadmissao, DocumentosPessoal = new List <DocumentosPessoal>() }; if (!string.IsNullOrEmpty(row["UKad"].ToString())) { oDoc = new DocumentosPessoal() { UniqueKey = ukadmissao, NomeDocumento = row["nome"].ToString(), }; obj.DocumentosPessoal.Add(oDoc); } } else if (obj.UniqueKey.Equals(Guid.Parse(row["UKad"].ToString()))) { if (!string.IsNullOrEmpty(row["UKad"].ToString())) { if (oDoc == null) { oDoc = new DocumentosPessoal() { UniqueKey = ukadmissao, NomeDocumento = row["nome"].ToString(), }; obj.DocumentosPessoal.Add(oDoc); } else { oDoc = new DocumentosPessoal() { UniqueKey = ukadmissao, NomeDocumento = row["nome"].ToString(), }; obj.DocumentosPessoal.Add(oDoc); } } } else { lista.Add(obj); obj = new Admissao() { UniqueKey = ukadmissao, DocumentosPessoal = new List <DocumentosPessoal>() }; if (!string.IsNullOrEmpty(row["UKad"].ToString())) { oDoc = new DocumentosPessoal() { UniqueKey = ukadmissao, NomeDocumento = row["nome"].ToString(), }; obj.DocumentosPessoal.Add(oDoc); } } } if (obj != null) { lista.Add(obj); } if (lista == null) { throw new Exception("Nenhum Documento para vincular."); } string documento = string.Empty; foreach (var item in lista) { if (item != null) { foreach (var item2 in item.DocumentosPessoal) { documento += item2.NomeDocumento + ","; } } } // se vier uma array entra aqui neste if if (documento.Contains(",")) { documento = documento.Remove(documento.Length - 1); foreach (string ativ in documento.Split(',')) { if (!string.IsNullOrEmpty(ativ.Trim())) { DocumentosPessoal pTemp = DocumentosPessoalBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.NomeDocumento.Equals(ativ.Trim())); if (pTemp != null) { if (Rel_DocAdmissaoBusiness.Consulta.Where(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UKDocumento.Equals(pTemp.UniqueKey) && a.UKAdmissoa.Equals(ukadmissao)).Count() == 0) { Rel_DocAdmissaoBusiness.Inserir(new Rel_DocAdmissao() { Posicao = 0, UKAdmissoa = ukadmissao, UKDocumento = pTemp.UniqueKey, DataDocumento = DateTime.MaxValue, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login }); } //else //{ // return Json(new { resultado = new RetornoJSON() { Erro = "Este documento já está cadastrado para esta alocação!." } }); //} } } } } // se vier somente um documento entre aqui else { DocumentosPessoal pTemp = DocumentosPessoalBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.NomeDocumento.Equals(documento.Trim())); if (pTemp != null) { if (Rel_DocAdmissaoBusiness.Consulta.Where(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UKDocumento.Equals(pTemp.UniqueKey) && a.UKAdmissoa.Equals(ukadmissao)).Count() == 0) { Rel_DocAdmissaoBusiness.Inserir(new Rel_DocAdmissao() { UKAdmissoa = ukadmissao, UKDocumento = pTemp.UniqueKey, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login }); } } } } } Extensions.GravaCookie("MensagemSucesso", "Admissão realizada com sucesso.", 10); return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Perfil", "Empregado", new { id = entidade.UKEmpregado.ToString() }) } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }