public EntregaDeHoraRecebida ConverterDe(EntregaDeHorasRecebidasBD entrega) { EntregaDeHoraRecebida entregaHora = new EntregaDeHoraRecebida() { Id = entrega.Id, DataDaEfetivacao = entrega.DataDaEfetivacao, Executor = new Profissional(entrega.IdFuncionario, null, null), Vinculacao = entrega.Vinculacao, PercentualDisponivel = entrega.Percentual, QuantidadeDeMinutos = entrega.QtdtMinutos, Procedimentos = entrega.Procedimentos == null ? new List <ProcedimentoBD>().Select(proc => proc.ConverteParaModelo()).ToArray() : entrega.Procedimentos.Select(proc => proc.ConverteParaModelo()).ToArray(), //Competencia = _gerenciadorFinanceiro.ConverteStringEmCompetenciasAsync(new string[] { entrega.Competencia.ToString() }).Result.First(), //instanciar objetos Categoria = new Categoria() { IdCategoria = entrega.IdCategoria }, //Faturamento = ConverterDe(entrega.Faturamento), //IdRecebimento = new Recebimento(){}, IdTabelaPreco = entrega.IdTabelaPreco, TipoDeEvento = entrega.TipoDeEvento, valorHora = entrega.valorHora, valorRecebido = entrega.valorRecebido }; return(entregaHora); }
//private IGerenciadorDeRequisicoesFinanceiras _gerenciadorFinanceiro; //public ConversorDeEntregaDeHoraRecebida(IGerenciadorDeRequisicoesFinanceiras gerenciadorFinanceiro) //{ // _gerenciadorFinanceiro = gerenciadorFinanceiro; //} public IEntregaBD ConverteDe(IEntrega entrega) { if (!(entrega is EntregaDeHoraRecebida)) { throw new ArgumentException("Necessário entrada de regras por hora recebida para este conversor"); } EntregaDeHorasRecebidasBD entregaConvertida = new EntregaDeHorasRecebidasBD(TipoDeEntregaModeloBD.HoraRecebida); EntregaDeHoraRecebida entragaHora = entrega as EntregaDeHoraRecebida; entregaConvertida.Id = entragaHora.Id; entregaConvertida.DataDaEfetivacao = entragaHora.DataDaEfetivacao; throw new NotImplementedException(); return(entregaConvertida); }
public IEntrega ConverteParaEntrega(IEntregaBD entregaModeloBanco) { //Em regra tem ParametrosDeRegraDeRemuneracaoPorHora, criado a partir do argumento do método, provavelmente será assim com entrega também if (entregaModeloBanco is EntregaDeHorasRecebidasBD) { EntregaDeHorasRecebidasBD entregaDeHorasDoBanco = (EntregaDeHorasRecebidasBD)entregaModeloBanco; EntregaDeHoraRecebida entregaHora = new EntregaDeHoraRecebida() { Id = entregaDeHorasDoBanco.Id, DataDaEfetivacao = entregaDeHorasDoBanco.DataDaEfetivacao, Executor = new Profissional(entregaDeHorasDoBanco.IdFuncionario, null, null), Vinculacao = entregaDeHorasDoBanco.Vinculacao, PercentualDisponivel = entregaDeHorasDoBanco.Percentual, QuantidadeDeMinutos = entregaDeHorasDoBanco.QtdtMinutos, Procedimentos = entregaDeHorasDoBanco.Procedimentos == null ? new List <ProcedimentoBD>().Select(proc => proc.ConverteParaModelo()).ToArray() : entregaDeHorasDoBanco.Procedimentos.Select(proc => proc.ConverteParaModelo()).ToArray(), //Competencia = _gerenciadorFinanceiro.ConverteStringEmCompetenciasAsync(new string[] { entregaDeHorasDoBanco.Competencia.ToString() }).Result.First(), Categoria = new Categoria() { IdCategoria = entregaDeHorasDoBanco.IdCategoria }, Faturamento = ConverterDe(entregaDeHorasDoBanco.Faturamento), Recebimento = new Recebimento() { IdRecebimento = entregaDeHorasDoBanco.IdRecebimento, ValorRecebido = entregaDeHorasDoBanco.valorRecebido }, IdTabelaPreco = entregaDeHorasDoBanco.IdTabelaPreco, TipoDeEvento = entregaDeHorasDoBanco.TipoDeEvento, HistoricoPagamento = entregaDeHorasDoBanco.HistoricoPagamento, IdHistoricoPagamento = entregaDeHorasDoBanco.IdHistoricoPagamento, valorHora = entregaDeHorasDoBanco.valorHora, valorRecebido = entregaDeHorasDoBanco.valorRecebido, ValorMaximoRegra = entregaDeHorasDoBanco.ValorMaximoRegra, ValorMinimoRegra = entregaDeHorasDoBanco.ValorMinimoRegra }; return(entregaHora); } throw new InvalidOperationException("Conversão de entrega de horas recebida chamada para converter entrega que não é de horas recebidas"); }