using Gestor.Application.Helpers; using Gestor.Application.Servicos.Generic; using Gestor.Infrastructure.Repository.Interface; using Gestor.Infrastructure.UnitOfWork.Generic; using Gestor.Infrastructure.UnitOfWork.Logic; using Gestor.Model.Domain.Common; using Gestor.Model.Domain.Generic; using System; using System.Diagnostics; using System.Runtime.CompilerServices; using System.Threading.Tasks; namespace Gestor.Application.Servicos.Seguros { internal class ProfissaoServico : BaseServico { public ProfissaoServico() { } public async Task FindLastId() { int num1 = 3; long num2 = await Task.Run(() => { long num; while (num1 > 0) { try { using (UnitOfWork read = Instancia.Read) { num = read.get_ProfissaoRepository().FindLastId(); } } catch (Exception exception) { num1 = base.Registrar(exception, 17, num1, null, true); continue; } return num; } return (long)0; }); return num2; } public async Task Save(Profissao profissao) { int num = 3; base.Sucesso = true; Profissao profissao1 = profissao; Profissao profissao2 = await Task.Run(() => { Profissao profissao3; while (num > 0) { profissao = profissao1; try { using (UnitOfWork commited = Instancia.Commited) { profissao = (profissao.get_Id() == (long)0 ? commited.get_ProfissaoRepository().SaveOrUpdate(profissao) : commited.get_ProfissaoRepository().Merge(profissao)); commited.Commit(); profissao3 = profissao; } } catch (Exception exception) { num = base.Registrar(exception, 214, num, profissao, true); continue; } return profissao3; } return profissao1; }); return profissao2; } } }