public ContratoDeRemuneracaoBD ConverterDe(IContratoDeRemuneracao contrato) { ContratoDeRemuneracaoBD contratoConvertido = new ContratoDeRemuneracaoBD(TipoDeContratoDeRemuneracaoBancoDeDados.Padrao); if (!(contrato is ContratoDeRemuneracao)) { throw new ArgumentException(); } var contratoPadrao = contrato as ContratoDeRemuneracao; contratoConvertido.Id = contrato.Id; contratoConvertido.Nome = contrato.NomePrincipal; contratoConvertido.Deleted = contrato.Deleted; if (contrato.Favorecimento != null) { contratoConvertido.Favorecimento = TipoDeFavorecimentoBD.Get(contrato.Favorecimento.Tipo.Id).ConverteDe(contrato.Favorecimento, contrato.Id, Definicoes.ID_VINCULO_FAVORECIMENTO_CONTRATO); } if (contrato.Regras != null) { contratoConvertido.Regras = contrato.Regras.Select(reg => TipoDeRegraBD.Get(reg.Tipo.Id).ConverteDe(reg)); } contratoConvertido.Vigencia = contratoPadrao.Vigencia; return(contratoConvertido); }
public RegraDeRemuneracaoBD(TipoDeRegraBD tipo, IRegraDeRemuneracao regra) : this() { Vigencia = new PeriodoSimples(regra.Vigencia.Inicio.Date, regra.Vigencia.Fim.Date); Id = regra.Id; IdContrato = regra.Parametros.IdContrato; Nome = regra.NomePrincipal; this.tipo = tipo.Id; }
public RegraDeRemuneracaoBD(TipoDeRegraBD tipo, ParametrosDeRegraDeRemuneracao parametros) : this() { Vigencia = new PeriodoSimples(parametros.Vigencia.Inicio.Date, parametros.Vigencia.Fim.Date); Id = parametros.Id; IdContrato = parametros.IdContrato; Nome = parametros.NomePrincipal; this.tipo = tipo.Id; this.Percentual = parametros.PercentualARemunerar; this.PercentualDesconto = parametros.PercentualDesconto; }