public ActionResult Atualizar(VMTerceiro entidade) { if (ModelState.IsValid) { try { EmpregadoContratado empTerceiro = EmpregadoContratadoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(entidade.UKEmpregado)); if (empTerceiro == null) { throw new Exception("Não foi possível encontrar o envolvido."); } else { if (!empTerceiro.Nome.ToUpper().Equals(entidade.Nome.ToUpper().Trim()) || !empTerceiro.Nascimento.Equals(entidade.Nascimento)) { empTerceiro.DataExclusao = DateTime.Now; empTerceiro.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; EmpregadoContratadoBusiness.Alterar(empTerceiro); EmpregadoContratado empTerceiro2 = new EmpregadoContratado(); empTerceiro2.UniqueKey = empTerceiro.UniqueKey; empTerceiro2.UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; empTerceiro2.CPF = empTerceiro.CPF; empTerceiro2.Nome = entidade.Nome; empTerceiro2.Nascimento = entidade.Nascimento; EmpregadoContratadoBusiness.Inserir(empTerceiro2); } } //############################################################################################################################################## RegistroEmpregadoContratado relEmpTerceiro = RegistroEmpregadoContratadoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(entidade.UKRel)); if (relEmpTerceiro == null) { throw new Exception("Não foi possível encontrar o vínculo entre o envolvimento e o incidente."); } if (!string.IsNullOrEmpty(entidade.UKLesaoDoenca)) { LesaoDoenca lesao = LesaoDoencaBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.UniqueKey.Equals(entidade.UKLesaoDoenca)); if (lesao == null) { throw new Exception("Não foi possível encontrar as informações de lesão / doença."); } else { if (!entidade.DescricaoLesao.ToUpper().Trim().Equals(lesao.DescricaoLesao.ToUpper().Trim()) || !entidade.UKLocalizacaoLesaoPrincipal.Equals(lesao.UKLocalizacaoLesaoPrincipal) || !entidade.UKLocalizacaoLesaoSecundaria.Equals(lesao.UKLocalizacaoLesaoSecundaria) || !entidade.UKNaturezaLesaoPrincipal.Equals(lesao.UKNaturezaLesaoPrincipal) || !entidade.UKNaturezaLesaoSecundaria.Equals(lesao.UKNaturezaLesaoSecundaria)) { lesao.DataExclusao = DateTime.Now; lesao.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; LesaoDoencaBusiness.Alterar(lesao); LesaoDoenca lesao2 = new LesaoDoenca(); lesao2.UniqueKey = lesao.UniqueKey; lesao2.DescricaoLesao = entidade.DescricaoLesao; lesao2.UKLocalizacaoLesaoPrincipal = entidade.UKLocalizacaoLesaoPrincipal; lesao2.UKLocalizacaoLesaoSecundaria = entidade.UKLocalizacaoLesaoSecundaria; lesao2.UKNaturezaLesaoPrincipal = entidade.UKNaturezaLesaoPrincipal; lesao2.UKNaturezaLesaoSecundaria = entidade.UKNaturezaLesaoSecundaria; lesao2.UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; LesaoDoencaBusiness.Inserir(lesao2); } } } else { LesaoDoenca lesaodoencaTemp = new LesaoDoenca() { UniqueKey = Guid.NewGuid().ToString(), DescricaoLesao = entidade.DescricaoLesao, UKNaturezaLesaoPrincipal = entidade.UKNaturezaLesaoPrincipal, UKLocalizacaoLesaoPrincipal = entidade.UKLocalizacaoLesaoPrincipal, UKNaturezaLesaoSecundaria = entidade.UKNaturezaLesaoSecundaria, UKLocalizacaoLesaoSecundaria = entidade.UKLocalizacaoLesaoSecundaria, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login }; LesaoDoencaBusiness.Inserir(lesaodoencaTemp); entidade.UKLesaoDoenca = lesaodoencaTemp.UniqueKey; } if (!relEmpTerceiro.Funcao.ToUpper().Trim().Equals(entidade.Funcao.ToUpper().Trim()) || !relEmpTerceiro.UKLesaoDoenca.Equals(entidade.UKLesaoDoenca) || !relEmpTerceiro.UKFornecedor.Equals(entidade.UKFornecedor)) { relEmpTerceiro.DataExclusao = DateTime.Now; relEmpTerceiro.UsuarioExclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; RegistroEmpregadoContratadoBusiness.Alterar(relEmpTerceiro); RegistroEmpregadoContratado relEmpTerceiro2 = new RegistroEmpregadoContratado(); relEmpTerceiro2.UniqueKey = relEmpTerceiro.UniqueKey; relEmpTerceiro2.UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login; relEmpTerceiro2.Funcao = entidade.Funcao; relEmpTerceiro2.UKLesaoDoenca = entidade.UKLesaoDoenca; relEmpTerceiro2.UKEmpregadoContratado = entidade.UKEmpregado; relEmpTerceiro2.UKCodificacao = entidade.UKCodificacao; relEmpTerceiro2.UKCAT = entidade.UKCAT; relEmpTerceiro2.UKRegistro = entidade.UKIncidente; relEmpTerceiro2.UKFornecedor = entidade.UKFornecedor; RegistroEmpregadoContratadoBusiness.Inserir(relEmpTerceiro2); } return(Json(new { resultado = new RetornoJSON() { Sucesso = "Empregado terceiro '" + entidade.Nome + "' atualizado 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 } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult Cadastrar(VMTerceiro entidade) { if (ModelState.IsValid) { try { EmpregadoContratado empTerceiro = EmpregadoContratadoBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.CPF.Equals(entidade.CPF.ToUpper().Trim())); if (empTerceiro == null) { empTerceiro = new EmpregadoContratado() { UniqueKey = Guid.NewGuid().ToString(), Nome = entidade.Nome, CPF = entidade.CPF.ToUpper().Trim(), DataInclusao = DateTime.Now, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login, Nascimento = entidade.Nascimento }; EmpregadoContratadoBusiness.Inserir(empTerceiro); } LesaoDoenca lesaodoencaTemp = null; if (!string.IsNullOrEmpty(entidade.DescricaoLesao) || !string.IsNullOrEmpty(entidade.UKNaturezaLesaoPrincipal) || !string.IsNullOrEmpty(entidade.UKLocalizacaoLesaoPrincipal) || !string.IsNullOrEmpty(entidade.UKNaturezaLesaoSecundaria) || !string.IsNullOrEmpty(entidade.UKLocalizacaoLesaoSecundaria)) { lesaodoencaTemp = new LesaoDoenca() { UniqueKey = Guid.NewGuid().ToString(), DescricaoLesao = entidade.DescricaoLesao, UKNaturezaLesaoPrincipal = entidade.UKNaturezaLesaoPrincipal, UKLocalizacaoLesaoPrincipal = entidade.UKLocalizacaoLesaoPrincipal, UKNaturezaLesaoSecundaria = entidade.UKNaturezaLesaoSecundaria, UKLocalizacaoLesaoSecundaria = entidade.UKLocalizacaoLesaoSecundaria, DataInclusao = DateTime.Now, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login }; LesaoDoencaBusiness.Inserir(lesaodoencaTemp); } RegistroEmpregadoContratadoBusiness.Inserir(new RegistroEmpregadoContratado() { UniqueKey = Guid.NewGuid().ToString(), DataInclusao = DateTime.Now, UsuarioInclusao = CustomAuthorizationProvider.UsuarioAutenticado.Login, Funcao = entidade.Funcao, UKLesaoDoenca = lesaodoencaTemp?.UniqueKey, UKRegistro = entidade.UKIncidente, UKEmpregadoContratado = empTerceiro.UniqueKey, UKFornecedor = entidade.UKFornecedor }); return(Json(new { resultado = new RetornoJSON() { Sucesso = "Empregado contratado '" + entidade.Nome + "' cadastrado 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 } })); } } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }