/// <summary> /// Método auxiliar para cadastrar datas no calendário do wex /// </summary> /// <param name="descricao">descrição da data cadastrada</param> /// <param name="tipoCalendario">tipo de data (Folga ou Trabalho)</param> /// <param name="tipoVigencia">tipo de vigência da data do calendário</param> /// <param name="dataInicio">data de inicio</param> /// <param name="dataTermino">data de término do período (Opcional, usado apenas quando a vigência for por período)</param> private void AdicionarCalendario(string descricao, CsCalendarioDomain tipoCalendario, CsVigenciaDomain tipoVigencia, DateTime dataInicio, DateTime?dataTermino = null) { //TODO: REVER SE DEVERÁ SER PASSADO PARA O CalendarioBo Calendario calendario = new Calendario() { CsCalendario = tipoCalendario.ToInt(), CsVigencia = tipoVigencia.ToInt(), DtInicio = dataInicio.Date, Periodo = dataInicio.Date, Oid = Guid.NewGuid(), TxDescricao = descricao, CsSituacao = CsSituacaoDomain.Ativo.ToInt() }; switch (tipoVigencia) { case CsVigenciaDomain.PorDiaMes: calendario.CsMes = dataInicio.Month; calendario.NbDia = dataInicio.Day; break; case CsVigenciaDomain.PorDiaMesAno: break; case CsVigenciaDomain.PorPeriodo: if (!dataTermino.HasValue) { throw new ArgumentException("Deveria ter preenchido a data de término do período."); } calendario.DtTermino = dataTermino.Value.Date; break; default: break; } contexto.Calendarios.Add(calendario); contexto.SaveChanges(); }
private Calendario CriarCalendario(string descricao, CsCalendarioDomain tipoCalendario, CsVigenciaDomain tipoVigencia, DateTime dataInicio, CsSituacaoDomain situacao, DateTime?dataTermino = null) { Calendario calendario = new Calendario() { CsCalendario = tipoCalendario.ToInt(), CsVigencia = tipoVigencia.ToInt(), DtInicio = dataInicio.Date, Periodo = dataInicio.Date, Oid = Guid.NewGuid(), TxDescricao = descricao, CsSituacao = situacao.ToInt() }; switch (tipoVigencia) { case CsVigenciaDomain.PorDiaMes: calendario.CsMes = dataInicio.Month; calendario.NbDia = dataInicio.Day; break; case CsVigenciaDomain.PorDiaMesAno: break; case CsVigenciaDomain.PorPeriodo: if (!dataTermino.HasValue) { throw new ArgumentException("Deveria ter preenchido a data de término do período."); } calendario.DtTermino = dataTermino.Value.Date; break; default: break; } return(calendario); }