public void Debitar(decimal valor, string conta, TipoConta tipoConta) { if (tipoConta == TipoConta.Corrente) { // Debita Conta Corrente } if (tipoConta == TipoConta.Poupanca) { // Valida Aniversário da Conta // Debita Conta Poupança } }
public void Debitar(decimal valor, TipoConta tipoConta) { if (tipoConta == TipoConta.Corrente) { //Debitar do saldo } if (tipoConta == TipoConta.Poupanca) { //Validar aniversário da conta //Debitar do saldo } }
public static TipoContaResource ModelToResource(TipoConta tipoConta) { var tipoContaResource = new TipoContaResource() { Descricao = tipoConta.Descricao, Id = tipoConta.Id, IsAtivo = tipoConta.IsAtivo, CriadoPor = tipoConta.CriadoPor, DataRegistro = tipoConta.DataRegistro }; return(tipoContaResource); }
public Conta(TipoConta tipoConta, double saldo, double credito, string nome, int[] senha) { TipoConta = tipoConta; Saldo = saldo; Credito = credito; Nome = nome; //Como evitar que o nome digitado seja um espaço vazio? Senha = senha; //Tem como eu mudar a visibilidade após setar esse valor??? NumeroConta = gerarNumeroDaConta(); Console.Clear(); Console.WriteLine($"Conta criada com sucesso! O número da sua conta é {NumeroConta}."); Console.WriteLine("Anote-o para que possa realizar transações mais tarde."); Console.ReadLine(); }
public static ContaBase Criar(TipoConta tipoConta) { switch (tipoConta) { case TipoConta.Especial: return(new ContaEspecial()); case TipoConta.Corrente: return(new ContaCorrente()); default: throw new InvalidOperationException("Tipo de conta não identificado"); } }
public void ProcessRequest(HttpContext context) { try { this.RefreshFromParameters(context.Request, System.Globalization.CultureInfo.GetCultureInfo("pt-BR")); var dominioFluxo = ServiceLocator.Current.GetInstance <Negocios.IDominioFluxo>(); var arq = new Negocios.Entidades.Dominio.Arquivo(); if (Receber) { var Recebida = ExibirAReceber == true ? (bool?)null : true; var trocador1 = 0; var tiposConta = TipoConta.Split(',').Select(f => int.TryParse(f, out trocador1)).Select(f => trocador1); arq = dominioFluxo.GerarArquivoRecebidas(IdPedido, IdLiberarPedido, IdAcerto, IdAcertoParcial, IdTrocaDevolucao, NumeroNfe, IdLoja, IdFuncionario, IdFuncionarioRecebido, IdCliente, TipoEntrega, NomeCliente, DataInicioVencimento, DataFimVencimento, DataInicioRecebimento, DataFimRecebimento, null, null, IdFormaPagto, TipoBoleto, ValorInicial, ValorFinal, IdContaBancoRecebimento, Renegociadas, Recebida, IdComissionado, IdRota, Obs, Ordenar, tiposConta, NumArqRemessa, RefObra, ContasCnab, IdVendedorAssociado, IdVendedorObra, IdComissao, NumCte, Protestadas, ContasVinculadas); } else { arq = dominioFluxo.GerarArquivoPagas(IdContaPg, IdCompra, Nf, IdLoja, IdCustoFixo, IdImpostoServ, IdFornec, NomeFornec, FormaPagto, DataInicioCadastro, DataFimCadastro, DataIniPago, DataFimPago, DataIniVenc, DataFimVenc, ValorInicial, ValorFinal, Tipo, Comissao == true, Renegociadas == true, PlanoConta, CustoFixo == true, ExibirAPagar == true, IdComissao, NumeroCte, Observacao); } if (arq == null) { throw new Exception("Nenhuma conta encontrada."); } var data = DateTime.Now; var nomeArquivo = "DOMINIO_" + data.Day + "_" + data.Month + "_" + data.Year + "_" + data.Millisecond + ".txt"; context.Response.AddHeader("Content-Disposition", "attachment; filename=\"" + nomeArquivo + "\""); arq.Salvar(context.Response.OutputStream); } catch (Exception ex) { // Devolve o erro context.Response.ContentType = "text/html"; context.Response.Write(GetErrorResponse(ex)); } }
// GET: /TipoConta/Edit/5 public ActionResult Edit(int?id) { Seguranca.ValidaAcesso(28); if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TipoConta tipoconta = db.TiposConta.Find(id); if (tipoconta == null) { return(HttpNotFound()); } return(View(tipoconta)); }
public void Debitar(decimal valor, string conta, TipoConta tipoConta) { if (tipoConta == TipoConta.Corrente) { // Debita conta corrente } if (tipoConta == TipoConta.Poupanca) { // Valida aniversário da conta // Debita conta poupança } // Se entrar mais um tipo de conta, vamos ter que adicionar mais um if e assim o código fica aberto }
public void Debitar(decimal valor, string conta, TipoConta tipoConta) { if (tipoConta == TipoConta.Corrente) { //debita conta corrente } if (tipoConta == TipoConta.Poupanca) { //valida aniversario //debita poupança } //caso precise adicionar mais um tipo de conta, quebro tudo! }
public async Task <ContaCorrente> ObterContaPorDadosBancariosAsync(string agencia, string numeroConta, int digitoVerificador, string numeroDocumento, TipoConta tipoConta, CancellationToken cancellationToken) { using var session = _documentStoreResolver.ReadableDocumentStore.LightweightSession(); var result = await session.Query <ContaCorrente>().Where(x => x.Agencia == agencia && x.NumeroConta == numeroConta && x.DigitoVerificadorConta == digitoVerificador && x.NumeroDocumento == numeroDocumento) .FirstOrDefaultAsync(); return(result); }
public void Debitar(decimal valor, string conta, TipoConta tipoConta) { if (tipoConta == TipoConta.Corrente) { // lógica para debitar da conta corrente aqui Console.WriteLine("Efetuando Débito em conta corrente!!"); Console.WriteLine("Débito em conta corrente efetuado com sucesso!!"); } if (tipoConta == TipoConta.Poupanca) { // lógica para debitar da conta poupança aqui Console.WriteLine("Efetuando Débito em conta poupança!!"); Console.WriteLine("Débito em conta poupança efetuado com sucesso!!"); } }
internal int Alterar(TipoConta tcAlterado) { try { using (avrasContext contexto = new avrasContext()) { var tcAtual = contexto.TipoConta.Where(p => p.Id == tcAlterado.Id).FirstOrDefault(); tcAtual.Nome = tcAlterado.Nome; tcAtual.Descricao = tcAlterado.Descricao; return(contexto.SaveChanges()); } } catch (Exception ex) { return(-1); } }
private void AddTipoConta() { var corrente = new TipoConta { Tipo = "Conta Corrente" }; var poupanca = new TipoConta { Tipo = "Conta Poupança" }; var investimento = new TipoConta { Tipo = "Investimentos" }; var outros = new TipoConta { Tipo = "Outros" }; this.context.TipoContas.AddRange(corrente, poupanca, investimento, outros); }
public Conta Adicionar(TipoConta tipoConta, int CpfOuCnpj, string nome, double saldo, double credito) { Conta novaConta; if (tipoConta.Equals(TipoConta.PessoaFisica)) { novaConta = new ContaPessoaFisica(); } else { novaConta = new ContaPessoaJuridica(); } novaConta.Adicionar(CpfOuCnpj, nome, saldo, credito); listContas.Add(novaConta); return(novaConta); }
private static void CadastrarConta() { Console.WriteLine("Cadastrando Nova Conta"); Console.Write("Nome do Titular: "); string nomeConta = Console.ReadLine(); Console.Write("Informe 1 para Pessoa Fisica ou 2 para Pessoa Juridica: "); ModeloConta modeloConta = Enum.Parse <ModeloConta>(Console.ReadLine()); Console.Write("Informa 1 para Conta Corrente ou 2 para ContaPoupanca: "); TipoConta tipoConta = Enum.Parse <TipoConta>(Console.ReadLine()); Console.Write("Saldo inicial: R$ "); double saldoConta = double.Parse(Console.ReadLine()); ListaConta.Add(new Conta(nomeConta, modeloConta, tipoConta, saldoConta)); Console.WriteLine(""); }
private void InserirConta() { Console.Write("Digite 1 para conta física ou 2 para jurídica: "); TipoConta tipoConta = (TipoConta)int.Parse(Console.ReadLine()); Console.Write("Digite o nome do cliente: "); string nomeCliente = Console.ReadLine().Trim(); Console.Write("Digite o saldo inicial: "); double saldoInicial = double.Parse(Console.ReadLine()); Console.Write("Digite o limite de crédito: "); double limiteCredito = double.Parse(Console.ReadLine()); Conta novaConta = new Conta(tipoConta, saldoInicial, limiteCredito, nomeCliente); listContas.Add(novaConta); }
public IActionResult save([FromBody] TipoConta tipoConta) { try { int tipoContaId = tipoConta.TipoContaCodigo; var registeredTipoConta = _TipoContaRepository.listById(tipoContaId); if (registeredTipoConta == null || registeredTipoConta.TipoContaCodigo != tipoContaId) { _TipoContaRepository.save(tipoConta); return(Created("/api/tipoConta", tipoConta)); } return(Ok(null)); } catch (Exception error) { return(BadRequest("Error: " + error)); } }
private static void Adicionar() { Console.WriteLine("- Nova Conta"); TipoConta entradaTipoConta = (TipoConta)validarEntradaTipoConta(); int entradaCpfOuCnpj = entradaTipoConta.Equals(TipoConta.PessoaFisica) ? validarEntradaInt("cpf") : validarEntradaInt("cnpj"); Console.Write("Digite seu nome: "); string entradaNome = Console.ReadLine(); double entradaSaldo = validarEntradaDouble("saldo"); double entradaCredito = validarEntradaDouble("crédito"); ContaController contaController = new ContaController(); var conta = contaController.Adicionar(entradaTipoConta, entradaCpfOuCnpj, entradaNome, entradaSaldo, entradaCredito); Console.WriteLine($"> Conta criada: { conta.ToString() }"); Console.ReadKey(); }
public CadastrarContaEntrada( int idUsuario, string nome, TipoConta tipo, decimal?valorSaldoInicial = null, string nomeInstituicao = null, string numeroAgencia = null, string numero = null) { this.IdUsuario = idUsuario; this.Nome = nome; this.Tipo = tipo; this.ValorSaldoInicial = valorSaldoInicial; this.NomeInstituicao = nomeInstituicao; this.NumeroAgencia = numeroAgencia; this.Numero = numero; this.Validar(); }
public List <TipoContaViewModel> Listar() { var tipoContas = new TipoConta().BuscarTipoConta(); if (tipoContas != null && tipoContas.Count > 0) { return((from tipoConta in tipoContas select new TipoContaViewModel() { Id = tipoConta.Id, Nome = tipoConta.Nome, Descricao = tipoConta.Descricao, }).ToList()); } else { return(null); } }
private static void CriarConta() { Console.WriteLine("Inserir nova Conta"); Console.Write("Digite 1 para Conta Fisica e 2 para Conta Juridica: "); TipoConta tipoConta = (TipoConta)int.Parse(Console.ReadLine()); Console.Write("Digite o nome do Cliente: "); string nome = Console.ReadLine(); Console.Write("Digite o saldo inicial do Cliente: "); double saldo = double.Parse(Console.ReadLine()); Console.Write("Digite o crédito: "); double credito = double.Parse(Console.ReadLine()); Conta conta = new Conta(nome, saldo, credito, tipoConta); contas.Add(conta); }
public Conta(string titulo, string descricao, double valor, TipoConta tipoConta, string data) { Titulo = titulo; Descricao = descricao; Valor = valor; TipoConta = tipoConta; if (TipoConta == TipoConta.SAIDA) { Cor = Color.Red; ImagemCaminho = "sair.png"; } else { Cor = Color.Green; ImagemCaminho = "entrar.png"; } Data = data; }
private void tipoContaComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (tipoContaComboBox.SelectedIndex == -1) { return; } TipoConta tipoConta = (TipoConta)tipoContaComboBox.SelectedItem; if (tipoConta == TipoConta.ContaEspecial) { limiteDockPanel.Visibility = Visibility.Visible; limiteTextBox.Focus(); } else { limiteDockPanel.Visibility = Visibility.Collapsed; limiteTextBox.Clear(); } }
public ContaSaida( int id, string nome, TipoConta tipo, decimal?valorSaldoInicial, string nomeInstituicao, string numeroAgencia, string numero, decimal?valorSaldoAtual = null) { Id = id; Nome = nome; CodigoTipo = (int)tipo; DescricaoTipo = tipo.ObterDescricao(); ValorSaldoInicial = valorSaldoInicial; NomeInstituicao = nomeInstituicao; NumeroAgencia = numeroAgencia; Numero = numero; ValorSaldoAtual = valorSaldoAtual; }
public Conta(Cliente cliente, Agencia agencia, TipoConta tipoConta, double credito) { Cliente = cliente; if (Enum.IsDefined(typeof(Agencia), agencia) == false) { throw new ArgumentOutOfRangeException("agencia", String.Format("{0} é uma opção inválida!", agencia)); } Agencia = agencia; if (Enum.IsDefined(typeof(TipoConta), tipoConta) == false) { throw new ArgumentOutOfRangeException("tipoConta", String.Format("{0} é uma opção inválida!", tipoConta)); } TipoConta = tipoConta; Saldo = 0; Credito = credito; }
public ContaEntrada( int idUsuario, string nome, TipoConta tipo, decimal?valorSaldoInicial = null, string nomeInstituicao = null, string numeroAgencia = null, string numero = null) { this.IdUsuario = idUsuario; this.Nome = tipo == TipoConta.Acoes ? nome.ToUpper() : nome; this.Tipo = tipo; this.ValorSaldoInicial = valorSaldoInicial.HasValue && valorSaldoInicial.Value == 0 ? null : valorSaldoInicial; this.NomeInstituicao = nomeInstituicao; this.NumeroAgencia = numeroAgencia; this.Numero = numero; this.Validar(); }
public void Debitar(decimal valor, string conta, TipoConta tipoConta) { if (tipoConta == TipoConta.Poupanca) { // Valida Aniversário da Conta // Lógica para Debita da Poupança Console.WriteLine($"A conta poupança, número: {conta}, foi debitado um valor de {valor}."); } if (tipoConta == TipoConta.Corrente) { // Lógica para Debita da Conta Corrente Console.WriteLine($"A conta corrente, número: {conta}, foi debitado um valor de {valor}."); } /* * if (tipoConta == TipoConta.Investimento) * { * Console.WriteLine($"A conta investimento, número: {conta}, foi debitado um valor de {valor}."); * } */ }
private static void InserirConta() { Console.WriteLine("Inserir nova conta."); Console.WriteLine("Digite 1 para conta fisica, 2 para conta juridica:"); TipoConta tipoConta = (TipoConta)Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Digite o nome do cliente:"); string nome = Console.ReadLine(); Console.WriteLine("Digite o saldo inicial:"); double saldoInicial = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Digite o credito:"); double credito = Convert.ToDouble(Console.ReadLine()); Conta novaConta = new Conta(nome, tipoConta, saldoInicial, credito); listContas.Add(novaConta); }
public async Task <ActionResult <TipoConta> > Post( [FromServices] DataContext context, [FromBody] TipoConta model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { context.TipoConta.Add(model); await context.SaveChangesAsync(); return(Ok(model)); } catch { return(BadRequest(new { message = "Não foi possivel concluir o cadastro" })); } }
public void CriarConta(List <Conta> listaContas) { Console.WriteLine("\nFaltam apenas alguns passos para você ser mais um dos nossos clientes!\n"); Thread.Sleep(2000); Console.WriteLine("Agora, digite seu nome completo por favor..\n"); string nome = Console.ReadLine(); Thread.Sleep(1000); Console.WriteLine("Digite sua idade por favor..\n"); int idade = int.Parse(Console.ReadLine()); Thread.Sleep(1000); Console.WriteLine("Digite o saldo que inicial de sua conta..\n"); double saldo = double.Parse(Console.ReadLine()); Console.WriteLine("{0} deseja obter uma linha de credito?", nome); Console.WriteLine("\n\t[1] Sim, desejo!\n\t[0] Não nesse momento."); int cred = int.Parse(Console.ReadLine()); Console.WriteLine("Qual o tipo de conta desejada ?"); Console.WriteLine("\n\t[1] Pessoa Fisica \n\t [2] Pessoa Juridica"); TipoConta entradaTipoConta = (TipoConta)int.Parse(Console.ReadLine()); Console.WriteLine("\nAguarde um momento, estamos criando sua conta em nosso banco!\n"); Conta novaConta = new Conta(tipoConta: entradaTipoConta, saldo: saldo, idade: idade, nome: nome); if (cred == 1) { Console.WriteLine("Estamos avaliando sua linha de crédito.. aguarde mais alguns minutos."); var creditoService = new CreditoService(); novaConta.ObterCredito(creditoService); } contas.Add(novaConta); Console.WriteLine("\nParabéns {0}, nosso mais novo cliente no DIO Bank!", novaConta.Nome); }
private void ValidaContas(EstruturaOrcamentariaExcel estruturaOrcamentariaExcel) { tipoContaOutras = TiposContaRepositorio.ObterPor((int)TipoContaEnum.Outros); Conta conta = null; if (Contas.Any(c => c.CodigoDaConta == estruturaOrcamentariaExcel.CodigoDaConta)) conta = Contas.First(c => c.CodigoDaConta == estruturaOrcamentariaExcel.CodigoDaConta); else conta = ContasRepositorio.ObterContaPor(estruturaOrcamentariaExcel.CodigoDaConta); Especificacao especificacaoConta = FabricaDeEspecificacaoCargaValidaEstruturaOrcamentariaConta.ObterEspecificacao(estruturasOrcamentariasExcel, estruturaOrcamentariaExcel, conta); especificacaoConta.IsSatisfiedBy(carga); estruturaOrcamentariaExcel.Conta = conta; if (!Contas.Any(c => c.CodigoDaConta == estruturaOrcamentariaExcel.CodigoDaConta) && conta != null) Contas.Add(conta); }
public void c_integrar_dados_do_excel_test() { var tiposConta = new TiposConta(); var tipoContaOutras = new TipoConta { Nome = "Outras" }; tiposConta.Adicionar(tipoContaOutras); string _conectionstring; _conectionstring = @"Provider=Microsoft.Jet.OLEDB.4.0;"; _conectionstring += String.Format("Data Source={0};", "D:\\Hospital2.xls"); _conectionstring += "Extended Properties='Excel 8.0;HDR=NO;'"; OleDbConnection cn = new OleDbConnection(_conectionstring); OleDbCommand cmd = new OleDbCommand("Select * from [HOSPITAL x CENTRO CUSTO MOD$]", cn); cn.Open(); OleDbDataReader reader = cmd.ExecuteReader(); List<RegistroExcel> documento = new List<RegistroExcel>(); List<Conta> listaContas = new List<Conta>(); List<CentroDeCusto> listaCentrosDeCusto = new List<CentroDeCusto>(); Hospitais repositorioDeHospitais = new Hospitais(); CentrosDeCusto repositorioDeCusto = new CentrosDeCusto(); Contas repositorioContas = new Contas(); int i = 0; while (reader.Read()) { if (i == 0) { i++; continue; } if (reader[0] == DBNull.Value) break; RegistroExcel registroExcel = new RegistroExcel() { NomeHospital = (string)reader[0], CodigoCentroDeCusto = (string)reader[1], DescricaoCentroDeCusto = (string)reader[2] }; if (reader[3] != DBNull.Value) { registroExcel.DescricaoConta = (string)reader[3]; registroExcel.CodigoConta = (string)reader[4]; registroExcel.GrupoResumoNome = (string)reader[5]; } documento.Add(registroExcel); } cn.Close(); cn.Dispose(); cmd.Dispose(); var gruposDeConta = documento.Select(x => x.GrupoResumoNome).Distinct(); var codigosDeConta = documento.Select(x => x.CodigoConta).Distinct(); foreach (var codigoDeConta in codigosDeConta) { string descricaoDaConta = documento.Where(x => x.CodigoConta == codigoDeConta).Select(y => y.DescricaoConta).Distinct().First(); Conta conta; if (!listaContas.Any(c => c.CodigoDaConta == codigoDeConta)) { conta = new Conta(descricaoDaConta, tipoContaOutras) { CodigoDaConta = codigoDeConta }; repositorioContas.Salvar(conta); listaContas.Add(conta); } else conta = listaContas.Where(c => c.CodigoDaConta == codigoDeConta).FirstOrDefault(); } GruposDeConta grupos = new GruposDeConta(); List<GrupoDeConta> gruposDeContaLista = new List<GrupoDeConta>(); foreach (var grupo in gruposDeConta) { GrupoDeConta grupoDeConta = new GrupoDeConta(grupo); var contasDoGrupo = documento.Where(x => x.GrupoResumoNome == grupo).Select(y => y.CodigoConta).Distinct(); foreach (var codigoConta in contasDoGrupo) { var conta = listaContas.Where(c => c.CodigoDaConta == codigoConta).FirstOrDefault(); grupoDeConta.Adicionar(conta); } gruposDeContaLista.Add(grupoDeConta); grupos.Salvar(grupoDeConta); } var codigosDecentrosDeCusto = documento.Select(x => x.CodigoCentroDeCusto).Distinct(); foreach (var codigoDeCentro in codigosDecentrosDeCusto) { var descricaoDeCentroDeCusto = documento.Where(x => x.CodigoCentroDeCusto == codigoDeCentro).Select(y => y.DescricaoCentroDeCusto).Distinct().First(); CentroDeCusto centroDeCusto = new CentroDeCusto(descricaoDeCentroDeCusto) { CodigoDoCentroDeCusto = codigoDeCentro }; var contas = documento.Where(x => x.CodigoCentroDeCusto == codigoDeCentro).Select(y => y.CodigoConta).Distinct(); foreach (var conta in contas) { centroDeCusto.AdicionarConta(listaContas.Where(x => x.CodigoDaConta == conta).SingleOrDefault()); } repositorioDeCusto.Salvar(centroDeCusto); listaCentrosDeCusto.Add(centroDeCusto); } var hospitais = documento.Select(x => x.NomeHospital).Distinct(); foreach (var nomeHospital in hospitais) { Hospital hospital = new Hospital(); hospital.Nome = nomeHospital; var centrosDeCusto = documento.Where(x => x.NomeHospital == hospital.Nome).Select(y => y.CodigoCentroDeCusto).Distinct(); foreach (var codigoCentroCusto in centrosDeCusto) { hospital.AdicionarCentroDeCusto(listaCentrosDeCusto.Where(x => x.CodigoDoCentroDeCusto == codigoCentroCusto).SingleOrDefault()); } repositorioDeHospitais.Salvar(hospital); } }
public void s_inserir_novo_centro_de_custo_hospitalar() { var tiposConta = new TiposConta(); var tipoContaOutras = new TipoConta { Nome = "Outras" }; tiposConta.Adicionar(tipoContaOutras); string _conectionstring; _conectionstring = @"Provider=Microsoft.Jet.OLEDB.4.0;"; _conectionstring += String.Format("Data Source={0};", "D:\\CentroDeCustoHospitalarOutro.xls"); _conectionstring += "Extended Properties='Excel 8.0;HDR=NO;'"; OleDbConnection cn = new OleDbConnection(_conectionstring); OleDbCommand cmd = new OleDbCommand("Select * from [centro$]", cn); cn.Open(); OleDbDataReader reader = cmd.ExecuteReader(); List<RegistroExcel> documento = new List<RegistroExcel>(); List<Conta> listaContas = new List<Conta>(); List<CentroDeCusto> listaCentrosDeCusto = new List<CentroDeCusto>(); Hospitais repositorioDeHospitais = new Hospitais(); CentrosDeCusto repositorioDeCusto = new CentrosDeCusto(); Contas repositorioContas = new Contas(); int i = 0; while (reader.Read()) { if (i < 2) { i++; continue; } if (reader[0] == DBNull.Value) break; RegistroExcel registroExcel = new RegistroExcel() { NomeHospital = (string)reader[0], CodigoCentroDeCusto = (string)reader[1], DescricaoCentroDeCusto = (string)reader[2] }; if (reader[3] != DBNull.Value) { registroExcel.DescricaoConta = (string)reader[3]; registroExcel.CodigoConta = (string)reader[4]; registroExcel.GrupoResumoNome = (string)reader[5]; } documento.Add(registroExcel); } cn.Close(); cn.Dispose(); cmd.Dispose(); var gruposDeConta = documento.Select(x => x.GrupoResumoNome).Distinct(); var codigosDeConta = documento.Select(x => x.CodigoConta).Distinct(); foreach (var codigoDeConta in codigosDeConta) { string descricaoDaConta = documento.Where(x => x.CodigoConta == codigoDeConta).Select(y => y.DescricaoConta).Distinct().First(); var conta = repositorioContas.ObterContaPor(codigoDeConta); if (conta == null) Assert.Fail(); listaContas.Add(conta); } var codigosDecentrosDeCusto = documento.Select(x => x.CodigoCentroDeCusto).Distinct(); foreach (var codigoDeCentro in codigosDecentrosDeCusto) { var descricaoDeCentroDeCusto = documento.Where(x => x.CodigoCentroDeCusto == codigoDeCentro).Select(y => y.DescricaoCentroDeCusto).Distinct().First(); CentroDeCusto centroDeCusto = new CentroDeCusto(descricaoDeCentroDeCusto) { CodigoDoCentroDeCusto = codigoDeCentro }; var contas = documento.Where(x => x.CodigoCentroDeCusto == codigoDeCentro).Select(y => y.CodigoConta).Distinct(); foreach (var conta in contas) { centroDeCusto.AdicionarConta(listaContas.Where(x => x.CodigoDaConta == conta).SingleOrDefault()); } repositorioDeCusto.Salvar(centroDeCusto); listaCentrosDeCusto.Add(centroDeCusto); } var hospitais = documento.Select(x => x.NomeHospital).Distinct(); foreach (var nomeHospital in hospitais) { Hospital hospital = repositorioDeHospitais.ObterPor(nomeHospital); if (hospital == null) Assert.Fail(); var centrosDeCusto = documento.Where(x => x.NomeHospital == hospital.Nome).Select(y => y.CodigoCentroDeCusto).Distinct(); foreach (var codigoCentroCusto in centrosDeCusto) { hospital.AdicionarCentroDeCusto(listaCentrosDeCusto.Where(x => x.CodigoDoCentroDeCusto == codigoCentroCusto).SingleOrDefault()); } repositorioDeHospitais.Salvar(hospital); } }
public void Adicionar(TipoConta tipoConta) { Session.Save(tipoConta); }
public void l_InserirContasEGrupoDeContasNosDepartamentos() { var tiposConta = new TiposConta(); var tipoContaBeneficios = new TipoConta { Nome = "Beneficios" }; tiposConta.Adicionar(tipoContaBeneficios); Departamentos departamentos = new Departamentos(); var listaDepartamentos = departamentos.Todos(); var tipoContaFGTS = new TipoConta { Nome = "FGTS" }; var tipoContaINSS = new TipoConta { Nome = "INSS" }; var tipoContaFerias = new TipoConta { Nome = "Férias" }; var tipoContaIndenizacao = new TipoConta { Nome = "Indenização" }; var tipoContaDecimoTerceiro = new TipoConta { Nome = "Décimo Terceiro" }; var tipoContaSalario = new TipoConta { Nome = "Salário" }; var tipoContaBolsasDeEstagio = new TipoConta { Nome = "Bolsas de Estágio" }; var tipoContaExtras = new TipoConta { Nome = "Extras" }; tiposConta.Adicionar(tipoContaFGTS); tiposConta.Adicionar(tipoContaINSS); tiposConta.Adicionar(tipoContaFerias); tiposConta.Adicionar(tipoContaIndenizacao); tiposConta.Adicionar(tipoContaDecimoTerceiro); tiposConta.Adicionar(tipoContaSalario); tiposConta.Adicionar(tipoContaBolsasDeEstagio); tiposConta.Adicionar(tipoContaExtras); var gruposDeConta = new GruposDeConta(); var encargosSociais = new GrupoDeConta("Encargos Sociais"); var remuneracao = new GrupoDeConta("Remuneração"); var beneficios = new GrupoDeConta("Benefícios"); gruposDeConta.Salvar(beneficios); gruposDeConta.Salvar(remuneracao); gruposDeConta.Salvar(encargosSociais); var contaAlimentacao = new Conta("Alimentação", tipoContaBeneficios); contaAlimentacao.Adicionar(TipoTicketDePessoal.Alimentação); var contaAssistenciaMedica = new Conta("Assistência Médica", tipoContaBeneficios); contaAssistenciaMedica.Adicionar(TipoTicketDePessoal.AssistenciaMedica); var contaOutrosBeneficios = new Conta("Outros Benefícios", tipoContaBeneficios); contaOutrosBeneficios.Adicionar(TipoTicketDePessoal.OutrosBeneficios); var contaTreinamentoPessoal = new Conta("Treinamento Pessoal", tipoContaBeneficios); contaTreinamentoPessoal.Adicionar(TipoTicketDePessoal.TreinamentoPessoal); var contaValeDeTransporte = new Conta("Vale de Transporte", tipoContaBeneficios); contaValeDeTransporte.Adicionar(TipoTicketDePessoal.ValeDeTransporte); var contaOutrasDespesas = new Conta("Outras Despesas", tipoContaBeneficios); contaOutrasDespesas.Adicionar(TipoTicketDePessoal.OutrasDespesas); var contaAssistenciaOdontologica = new Conta("Assistência Odontológica", tipoContaBeneficios); contaAssistenciaOdontologica.Adicionar(TipoTicketDePessoal.AssistenciaOdontologica); beneficios.Adicionar(contaAlimentacao); beneficios.Adicionar(contaAssistenciaMedica); beneficios.Adicionar(contaAssistenciaOdontologica); beneficios.Adicionar(contaOutrosBeneficios); beneficios.Adicionar(contaTreinamentoPessoal); beneficios.Adicionar(contaValeDeTransporte); beneficios.Adicionar(contaOutrasDespesas); var contaFGTS = new Conta("FGTS", tipoContaFGTS); contaFGTS.Adicionar(TipoTicketDePessoal.FGTS); encargosSociais.Adicionar(contaFGTS); var contaINSS = new Conta("INSS", tipoContaINSS); contaINSS.Adicionar(TipoTicketDePessoal.INSS); encargosSociais.Adicionar(contaINSS); var contaFerias = new Conta("Férias", tipoContaFerias); encargosSociais.Adicionar(contaFerias); var contaIndenizacao = new Conta("Indenização", tipoContaIndenizacao); encargosSociais.Adicionar(contaIndenizacao); var contaDecimoTerceiro = new Conta("Décimo Terceiro", tipoContaDecimoTerceiro); encargosSociais.Adicionar(contaDecimoTerceiro); foreach (var conta in encargosSociais.Contas) { if (conta.Nome == "Indenização") { conta.Adicionar(TipoTicketDePessoal.Indenizacao); } else { if (conta.Nome == "INSS" || conta.Nome == "FGTS") conta.Adicionar(TipoTicketDePessoal.AdicionalDeSobreaviso); conta.Adicionar(TipoTicketDePessoal.AdicionalNoturno); conta.Adicionar(TipoTicketDePessoal.AdicionalDeInsalubridade); conta.Adicionar(TipoTicketDePessoal.AdicionaDePericulosidade); conta.Adicionar(TipoTicketDePessoal.Gratificacoes); conta.Adicionar(TipoTicketDePessoal.HorasExtras); } } remuneracao.Adicionar(new Conta("Salário", tipoContaSalario)); var contaBolsaDeEstagio = new Conta("Bolsas Estágio", tipoContaBolsasDeEstagio); contaBolsaDeEstagio.Adicionar(TipoTicketDePessoal.BolsaDeEstagio); remuneracao.Adicionar(contaBolsaDeEstagio); var contaAdicionalNoturno = new Conta("Adicional Noturno", tipoContaExtras); contaAdicionalNoturno.Adicionar(TipoTicketDePessoal.AdicionalNoturno); remuneracao.Adicionar(contaAdicionalNoturno); var contaPericulosidade = new Conta("Periculosidade", tipoContaExtras); contaPericulosidade.Adicionar(TipoTicketDePessoal.AdicionaDePericulosidade); remuneracao.Adicionar(contaPericulosidade); var contaInsalubridade = new Conta("Insalubridade", tipoContaExtras); contaInsalubridade.Adicionar(TipoTicketDePessoal.AdicionalDeInsalubridade); remuneracao.Adicionar(contaInsalubridade); var contaHorasExtras = new Conta("Horas Extras", tipoContaExtras); contaHorasExtras.Adicionar(TipoTicketDePessoal.HorasExtras); remuneracao.Adicionar(contaHorasExtras); var contaGratificacoes = new Conta("Gratificações", tipoContaExtras); contaGratificacoes.Adicionar(TipoTicketDePessoal.Gratificacoes); remuneracao.Adicionar(contaGratificacoes); Contas contas = new Orcamento.Domain.Contas(); contas.Salvar(contaGratificacoes); contas.Salvar(contaHorasExtras); contas.Salvar(contaInsalubridade); contas.Salvar(contaPericulosidade); contas.Salvar(contaAdicionalNoturno); contas.Salvar(contaBolsaDeEstagio); contas.Salvar(contaDecimoTerceiro); contas.Salvar(contaIndenizacao); contas.Salvar(contaFerias); contas.Salvar(contaINSS); contas.Salvar(contaFGTS); contas.Salvar(contaAssistenciaOdontologica); contas.Salvar(contaOutrasDespesas); contas.Salvar(contaValeDeTransporte); contas.Salvar(contaTreinamentoPessoal); contas.Salvar(contaOutrosBeneficios); contas.Salvar(contaAssistenciaMedica); contas.Salvar(contaAlimentacao); contas.Salvar(contaAssistenciaMedica); contas.Salvar(contaAssistenciaMedica); contas.Salvar(contaAssistenciaMedica); contas.Salvar(contaAssistenciaMedica); TicketsDeProducao tickets = new TicketsDeProducao(); NovosOrcamentosPessoais orcamentos = new NovosOrcamentosPessoais(); foreach (var departamento in listaDepartamentos) { var ticketDeAlimentacao = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.Alimentação, Descricao = "Alimentação", Valor = 300 }; var ticketDeAssistenciaMedica = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AssistenciaMedica, Descricao = "Assistência Médica", Valor = 300 }; var ticketAssistencia = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AssistenciaOdontologica, Descricao = "Assistência Odontológica", Valor = 50 }; var ticketDeBeneficios = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.OutrosBeneficios, Descricao = "Outros Benefícios", Valor = 50 }; var ticketTreinamentoPessoal = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.TreinamentoPessoal, Descricao = "Treinamento Pessoal", Valor = 50 }; var ticketValeTransporte = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.ValeDeTransporte, Descricao = "Vale de Transporte", Valor = 150 }; var ticketDeOutrasDespesas = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.OutrasDespesas, Descricao = "Outras Despesas", Valor = 50 }; var adicionalNoturno = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AdicionalNoturno, Descricao = "Adicional Noturno", Valor = 4 }; var insalubridade = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AdicionalDeInsalubridade, Descricao = "Adicional de Insalubridade", Valor = 10 }; var periculosidade = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AdicionaDePericulosidade, Descricao = "Adicional de Periculosidade", Valor = 1 }; var gratificacoes = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.Gratificacoes, Descricao = "Gratificações", Valor = 1 }; var horasExtras = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.HorasExtras, Descricao = "Horas Extras", Valor = 2 }; var sobreaviso = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.AdicionalDeSobreaviso, Descricao = "Adicional de Sobreaviso", Valor = 0 }; var indenizacao = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.Indenizacao, Descricao = "Indenização", Valor = 235 }; var bolsaDeEstagio = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.BolsaDeEstagio, Descricao = "Bolsa de Estágio", Valor = 0 }; var fgts = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.FGTS, Descricao = "FGTS", Valor = 8 }; var inss = new TicketDeOrcamentoPessoal(departamento) { Ticket = TipoTicketDePessoal.INSS, Descricao = "INSS", Valor = 28 }; foreach (var centroDeCusto in departamento.CentrosDeCusto) { if (!centroDeCusto.GrupoDeContas.Any(g => g.Id == beneficios.Id)) centroDeCusto.Adicionar(beneficios); if (!centroDeCusto.GrupoDeContas.Any(g => g.Id == remuneracao.Id)) centroDeCusto.Adicionar(remuneracao); if (!centroDeCusto.GrupoDeContas.Any(g => g.Id == encargosSociais.Id)) centroDeCusto.Adicionar(encargosSociais); } tickets.Salvar(ticketDeAlimentacao); tickets.Salvar(ticketDeAssistenciaMedica); tickets.Salvar(ticketAssistencia); tickets.Salvar(ticketDeBeneficios); tickets.Salvar(ticketTreinamentoPessoal); tickets.Salvar(ticketValeTransporte); tickets.Salvar(ticketDeOutrasDespesas); tickets.Salvar(adicionalNoturno); tickets.Salvar(insalubridade); tickets.Salvar(periculosidade); tickets.Salvar(gratificacoes); tickets.Salvar(horasExtras); tickets.Salvar(sobreaviso); tickets.Salvar(indenizacao); tickets.Salvar(bolsaDeEstagio); tickets.Salvar(fgts); tickets.Salvar(inss); List<NovoOrcamentoPessoal> orcamentosPessoais = new List<NovoOrcamentoPessoal>(); foreach (var centroDeCusto in departamento.CentrosDeCusto) { var orcamento = new NovoOrcamentoPessoal(departamento, centroDeCusto, 2014); orcamento.Adicionar(ticketDeAlimentacao); orcamento.Adicionar(ticketDeAssistenciaMedica); orcamento.Adicionar(ticketAssistencia); orcamento.Adicionar(ticketDeBeneficios); orcamento.Adicionar(ticketTreinamentoPessoal); orcamento.Adicionar(ticketValeTransporte); orcamento.Adicionar(ticketDeOutrasDespesas); orcamento.Adicionar(adicionalNoturno); orcamento.Adicionar(insalubridade); orcamento.Adicionar(periculosidade); orcamento.Adicionar(gratificacoes); orcamento.Adicionar(horasExtras); orcamento.Adicionar(sobreaviso); orcamento.Adicionar(indenizacao); orcamento.Adicionar(bolsaDeEstagio); orcamento.Adicionar(fgts); orcamento.Adicionar(inss); orcamentosPessoais.Add(orcamento); } orcamentos.SalvarLista(orcamentosPessoais); departamentos.Salvar(departamento); } }