summaryrefslogtreecommitdiff
path: root/Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs
diff options
context:
space:
mode:
authorLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 13:38:18 +0000
committerLucas Faria Mendes <lucas.fariamo08@gmail.com>2026-03-30 13:38:18 +0000
commit1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1 (patch)
treee1c3b20ea08f0cf71122a1e73f0d395f8fd83874 /Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs
parent674ca83ba9243a9e95a7568c797668dab6aee26a (diff)
downloadgestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.tar.gz
gestor-1f4e14b2e973ee7de337fd4866d9a5ceff5cb6d1.zip
chore: location
Diffstat (limited to 'Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs')
-rw-r--r--Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs362
1 files changed, 362 insertions, 0 deletions
diff --git a/Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs b/Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs
new file mode 100644
index 0000000..68c9a50
--- /dev/null
+++ b/Codemerx/Gestor.Application/Servicos/Financeiro/BancosContasServico.cs
@@ -0,0 +1,362 @@
+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.Financeiro;
+using Gestor.Model.Domain.Generic;
+using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
+
+namespace Gestor.Application.Servicos.Financeiro
+{
+ internal class BancosContasServico : BaseServico
+ {
+ public BancosContasServico()
+ {
+ }
+
+ public async Task<List<BancosContas>> BuscarBancos()
+ {
+ int num = 3;
+ List<BancosContas> bancosContas1 = await Task.Run<List<BancosContas>>(() => {
+ List<BancosContas> bancosContas;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ bancosContas = read.get_BancosContasRepository().Find();
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 145, num, null, true);
+ continue;
+ }
+ return bancosContas;
+ }
+ return new List<BancosContas>();
+ });
+ return bancosContas1;
+ }
+
+ public async Task<Saldo> BuscarSaldo(DateTime inicio, long id)
+ {
+ int num = 3;
+ Saldo saldo1 = await Task.Run<Saldo>(() => {
+ Saldo saldo;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ saldo = read.get_SaldoRepository().BuscarPorData(inicio, id);
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 151, num, new { inicio = inicio, id = id }, true);
+ continue;
+ }
+ return saldo;
+ }
+ return new Saldo();
+ });
+ return saldo1;
+ }
+
+ public async Task<Saldo> BuscarSaldoAberto(long id)
+ {
+ int num = 3;
+ Saldo saldo1 = await Task.Run<Saldo>(() => {
+ Saldo saldo;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ saldo = read.get_SaldoRepository().BuscarAberto(id);
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 147, num, id, true);
+ continue;
+ }
+ return saldo;
+ }
+ return new Saldo();
+ });
+ return saldo1;
+ }
+
+ public async Task<List<Saldo>> BuscarSaldoAberto(List<long> ids)
+ {
+ int num = 3;
+ List<Saldo> saldos2 = await Task.Run<List<Saldo>>(() => {
+ List<Saldo> saldos;
+ while (num > 0)
+ {
+ try
+ {
+ List<Saldo> saldos1 = new List<Saldo>();
+ using (UnitOfWork read = Instancia.Read)
+ {
+ ids.ForEach((long id) => {
+ Saldo saldo = read.get_SaldoRepository().BuscarAberto(id);
+ if (saldo == null)
+ {
+ return;
+ }
+ saldos1.Add(saldo);
+ });
+ }
+ saldos = saldos1;
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 148, num, ids, true);
+ continue;
+ }
+ return saldos;
+ }
+ return new List<Saldo>();
+ });
+ return saldos2;
+ }
+
+ public async Task<Saldo> BuscarSaldoInicial(long id)
+ {
+ int num = 3;
+ Saldo saldo1 = await Task.Run<Saldo>(() => {
+ Saldo saldo;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ saldo = read.get_SaldoRepository().BuscarPorMenorData(id);
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 151, num, new { id = id }, true);
+ continue;
+ }
+ return saldo;
+ }
+ return new Saldo();
+ });
+ return saldo1;
+ }
+
+ public async Task<List<Saldo>> BuscarSaldos(long id)
+ {
+ int num = 3;
+ List<Saldo> saldos1 = await Task.Run<List<Saldo>>(() => {
+ List<Saldo> saldos;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ saldos = read.get_SaldoRepository().BuscarPorConta(id);
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 150, num, id, true);
+ continue;
+ }
+ return saldos;
+ }
+ return new List<Saldo>();
+ });
+ return saldos1;
+ }
+
+ public async Task<bool> Delete(BancosContas bancosContas)
+ {
+ int num = 3;
+ bool flag1 = await Task.Run<bool>(() => {
+ bool flag;
+ while (num > 0)
+ {
+ List<RegistroLog> registroLogs = new List<RegistroLog>();
+ try
+ {
+ using (UnitOfWork commited = Instancia.Commited)
+ {
+ registroLogs.Add(base.CreateLog(bancosContas.get_Id(), bancosContas.GetValorOriginal(), 26, 2));
+ commited.get_BancosContasRepository().Delete(bancosContas.get_Id());
+ base.SaveLog(registroLogs, commited);
+ commited.Commit();
+ flag = true;
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 246, num, bancosContas, true);
+ continue;
+ }
+ return flag;
+ }
+ return false;
+ });
+ return flag1;
+ }
+
+ public async Task<bool> DeleteSaldo(Saldo saldo)
+ {
+ int num = 3;
+ bool flag1 = await Task.Run<bool>(() => {
+ bool flag;
+ while (num > 0)
+ {
+ List<RegistroLog> registroLogs = new List<RegistroLog>();
+ try
+ {
+ using (UnitOfWork commited = Instancia.Commited)
+ {
+ registroLogs.Add(base.CreateLog(saldo.get_Id(), saldo.GetValorOriginal(), 26, 2));
+ commited.get_SaldoRepository().Delete(saldo.get_Id());
+ base.SaveLog(registroLogs, commited);
+ commited.Commit();
+ flag = true;
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 248, num, saldo, true);
+ continue;
+ }
+ return flag;
+ }
+ return false;
+ });
+ return flag1;
+ }
+
+ public async Task<Saldo> FecharSaldo(Saldo saldo)
+ {
+ int num = 3;
+ Saldo saldo1 = await Task.Run<Saldo>(() => {
+ Saldo saldo2;
+ while (num > 0)
+ {
+ try
+ {
+ using (UnitOfWork read = Instancia.Read)
+ {
+ saldo2 = read.get_LancamentoRepository().FecharSaldo(saldo);
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 149, num, saldo, true);
+ continue;
+ }
+ return saldo2;
+ }
+ return new Saldo();
+ });
+ return saldo1;
+ }
+
+ public async Task<BancosContas> Save(BancosContas bancosContas)
+ {
+ int num = 3;
+ base.Sucesso = true;
+ BancosContas bancosConta1 = bancosContas;
+ BancosContas bancosConta2 = await Task.Run<BancosContas>(() => {
+ BancosContas bancosConta;
+ bool flag;
+ while (num > 0)
+ {
+ List<RegistroLog> registroLogs = new List<RegistroLog>();
+ bancosContas = bancosConta1;
+ try
+ {
+ using (UnitOfWork commited = Instancia.Commited)
+ {
+ flag = (bancosContas.get_Id() == 0 ? false : true);
+ if (flag)
+ {
+ registroLogs.Add(base.CreateLog(bancosContas.get_Id(), bancosContas, 26));
+ }
+ bancosContas = (bancosContas.get_Id() == 0 ? commited.get_BancosContasRepository().SaveOrUpdate(bancosContas) : commited.get_BancosContasRepository().Merge(bancosContas));
+ if (!flag)
+ {
+ registroLogs.Add(base.CreateLog(bancosContas.get_Id(), bancosContas.GetValorOriginal(), 26, 0));
+ }
+ base.SaveLog(registroLogs, commited);
+ commited.Commit();
+ bancosConta = bancosContas;
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 245, num, bancosContas, true);
+ continue;
+ }
+ return bancosConta;
+ }
+ return bancosConta1;
+ });
+ return bancosConta2;
+ }
+
+ public async Task<Saldo> Save(Saldo saldo)
+ {
+ int num = 3;
+ base.Sucesso = true;
+ Saldo saldo1 = saldo;
+ Saldo saldo2 = await Task.Run<Saldo>(() => {
+ Saldo saldo3;
+ bool flag;
+ while (num > 0)
+ {
+ List<RegistroLog> registroLogs = new List<RegistroLog>();
+ saldo = saldo1;
+ try
+ {
+ using (UnitOfWork commited = Instancia.Commited)
+ {
+ flag = (saldo.get_Id() == 0 ? false : true);
+ if (flag)
+ {
+ registroLogs.Add(base.CreateLog(saldo.get_Conta().get_Id(), saldo, 26));
+ }
+ saldo = (saldo.get_Id() == 0 ? commited.get_SaldoRepository().SaveOrUpdate(saldo) : commited.get_SaldoRepository().Merge(saldo));
+ if (!flag)
+ {
+ registroLogs.Add(base.CreateLog(saldo.get_Conta().get_Id(), saldo.GetValorOriginal(), 26, 0));
+ }
+ base.SaveLog(registroLogs, commited);
+ commited.Commit();
+ saldo3 = saldo;
+ }
+ }
+ catch (Exception exception)
+ {
+ num = base.Registrar(exception, 247, num, saldo, true);
+ continue;
+ }
+ return saldo3;
+ }
+ return saldo1;
+ });
+ return saldo2;
+ }
+ }
+} \ No newline at end of file