/// <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();
        }
示例#2
0
        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);
        }