private ClienteParticipante DefineDataDeVigencia(ClienteParticipante clienteParticipante, TipoDeVigencia vigencia, int duracao, DateTime dataInicioVigencia) { //DateTime agora = DateTime.Now; DateTime agora = dataInicioVigencia; if (!clienteParticipante.InicioVigencia.HasValue) { clienteParticipante.InicioVigencia = agora; //clienteParticipante.FimVigencia = agora.AddDays(ObterDuracao(this.Id)); clienteParticipante.FimVigencia = agora.AddDays(duracao); } else { Contrato contrato = new RepositoryService().Contrato.Retrieve(this.Id); clienteParticipante.FimVigencia = clienteParticipante.InicioVigencia.Value.AddDays((contrato.DuracaoDias.HasValue ? contrato.DuracaoDias.Value : 0)); } clienteParticipante.SalvarDataDeVigencia(clienteParticipante, vigencia); return(clienteParticipante); }
public void DefineVigenciaClienteParticipante(Model.Conta cliente, Endereco endereco, DateTime dataInicioVigencia) { if (this.TipoVigencia == TipoDeVigencia.Cliente || this.TipoVigencia == TipoDeVigencia.Endereco) { ClienteParticipante participante = this.ObterParticipante(this, cliente, endereco, this.TipoVigencia); if (participante != null) { if (!participante.FimVigencia.HasValue) { int duracao = (this.FimRealVigencia.Value - this.InicioVigencia.Value).Days; participante.InicioVigencia = dataInicioVigencia; participante.FimVigencia = dataInicioVigencia.AddDays(duracao); participante.SalvarDataDeVigencia(participante, this.TipoVigencia); } } } }