Beispiel #1
0
    //根据时间条目类型取活动时间类型
    public static ActiveTime getActiveTimeByType(TimeInfoSample sample)
    {
        if (sample == null)
        {
            return(null);
        }
        int type = sample.type;

        if (type == ActiveTime.TYPEOF_ABSOLUTE)
        {
            return(new ActiveAbsTime(sample));
        }
        else if (type == ActiveTime.TYPEOF_ONLINE)
        {
            return(new ActiveOnlineTime(sample));
        }
        else if (type == ActiveTime.TYPEOF_WEEK)
        {
            return(new ActiveWeekTime(sample));
        }
        else if (type == ActiveTime.TYPEOF_MONTH)
        {
            return(new ActiveMonthTime(sample));
        }
        return(null);
    }
Beispiel #2
0
    public void initTime()
    {
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(timeID);

        activeTime = ActiveTime.getActiveTimeByType(tsample);
        activeTime.initTime(ServerTimeKit.getSecondTime());
    }
    //需要修改 data samples 如果存在就覆盖,不存在添加
    public void updataSample(int sid, string dataStr)
    {
        //if (dataStr == "reset") {
        //	int index = localTimeInfoList.FindIndex (( a ) => { return a.sid == sid; });
        //	if (index != -1)
        //		localTimeInfoList.RemoveAt (index);
        //	parseConfig (data[sid] as string);
        //	return;
        //}

        if (data [sid] == null)
        {
            data.Add(sid, dataStr);
        }
        TimeInfoSample time = getTimeInfoSampleBySid(sid);

        if (time == null)
        {
            localTimeInfoList.Add(new TimeInfoSample(dataStr));
        }
        else
        {
            time.updataData(dataStr);
        }
    }
    //解析本地配置
    public override void parseConfig(string str)
    {
        TimeInfoSample be = new TimeInfoSample(str);

        if (localTimeInfoList == null)
        {
            localTimeInfoList = new List <TimeInfoSample> ();
        }
        localTimeInfoList.Add(be);
    }
Beispiel #5
0
    public void setStarMultiple(int timeId, int hit)
    {
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(timeId);

        if (starTime == null)
        {
            starTime = ActiveTime.getActiveTimeByType(tsample);
            //starTime.initTime (ServerTimeKit.getSecondTime ());
        }
        this.starHit = hit;
    }
Beispiel #6
0
    // 显示活动时间区间文本//
    public void showTimeLabel()
    {
        tsample   = TimeConfigManager.Instance.getTimeInfoSampleBySid(ns.timeID);
        startTime = tsample.mainTimeInfo[0];
        endTime   = tsample.mainTimeInfo[0] + tsample.mainTimeInfo[1];
        DateTime startTimeDate = TimeKit.getDateTime(startTime);
        DateTime endTimeDate   = TimeKit.getDateTime(endTime);

        timeLabel.text = startTimeDate.Year + "." + startTimeDate.Month + "." + startTimeDate.Day + "--" + endTimeDate.Year + "." + endTimeDate.Month + "." + endTimeDate.Day;

        //Debug.Log(startTimeDate.Year + "." + startTimeDate.Month + "." + startTimeDate.Day + "~" + endTimeDate.Year + "." + endTimeDate.Month + "." + endTimeDate.Day);
    }
Beispiel #7
0
    public static ActiveTime getActiveTimeByID(int activeID)
    {
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(activeID);

        if (tsample == null)
        {
            return(null);
        }
        ActiveTime activeTime = getActiveTimeByType(tsample);

        activeTime.initTime(ServerTimeKit.getSecondTime());
        return(activeTime);
    }
Beispiel #8
0
    public override bool isValid()
    {
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(getSample().timeID);

        if (activeTime == null)
        {
            activeTime = ActiveTime.getActiveTimeByType(tsample);
            activeTime.initTime(ServerTimeKit.getSecondTime());
        }
        if (activeTime.getIsFinish())
        {
            return(false);
        }
        return(ServerTimeKit.getSecondTime() >= activeTime.getPreShowTime());
    }
    public void initTime(int _timeId)
    {
        timeId    = _timeId;
        timeLimit = new TimeLimit(null);
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(timeId);

        days       = tsample.mainTimeInfoo;
        activeTime = ActiveTime.getActiveTimeByType(tsample);
        activeTime.initTime(ServerTimeKit.getSecondTime());
        times = new long[] {
            activeTime.getDetailStartTime(),
                activeTime.getDetailEndTime()
        };
        updateTime();
    }
Beispiel #10
0
    /// <summary>
    /// 获得时间描述
    /// </summary>
    public string getTimeDesc()
    {
        int        nowTime    = ServerTimeKit.getSecondTime();
        ExamSample examSample = QuizManagerment.Instance.getExamSampleBySid(this);

        if (examSample == null)
        {
            return(LanguageConfigManager.Instance.getLanguage("notice_quiz01"));            //活动已经结束
        }
        SidNoticeContent content = getSample().content as SidNoticeContent;
        TimeInfoSample   tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(getSample().timeID);

        if (activeTime == null)
        {
            activeTime = ActiveTime.getActiveTimeByType(tsample);
            activeTime.initTime(ServerTimeKit.getSecondTime());
        }
        else
        {
            activeTime.doRefresh();
        }
        //具体开始时间
        int detailStartTime = activeTime.getDetailStartTime();
        //具体结束时间
        int detailEndTime = activeTime.getDetailEndTime();

        if (detailStartTime < nowTime && detailEndTime > nowTime && examSample.getAwardType == 1)
        {
            return(LanguageConfigManager.Instance.getLanguage("notice09"));            //可以答题
        }
        else if (DateKit.isInSameDay(detailStartTime, nowTime) && detailStartTime > nowTime)
        {
            return(LanguageConfigManager.Instance.getLanguage("notice08", TimeKit.dateToFormat(detailStartTime, LanguageConfigManager.Instance.getLanguage("notice05"))));              //尚未开启
        }
        else if (activeTime.getIsFinish())
        {
            return(LanguageConfigManager.Instance.getLanguage("notice_quiz01"));            //活动已经结束
        }
        else if (detailEndTime < nowTime)
        {
            return(LanguageConfigManager.Instance.getLanguage("notice_quiz01"));            //活动已经结束
        }
        else
        {
            return(LanguageConfigManager.Instance.getLanguage("notice_quiz01"));            //活动已经结束
        }
    }
    //解析其他配置
    public List <TimeInfoSample> parseServerConfig(string text)
    {
        List <TimeInfoSample> List = new List <TimeInfoSample> ();

        string[] strArr = text.Replace("\r", "").Split('\n');
        for (int i = 0; i < strArr.Length; i++)
        {
            string str = strArr [i];
            if (!(str.IndexOf("#") == 0) && str != "")
            {
                TimeInfoSample be = new TimeInfoSample(str);
                localTimeInfoList.Add(be);
            }
        }

        return(List);
    }
Beispiel #12
0
    /// <summary>
    /// 能否答题
    /// </summary>
    public bool isCanAnswer()
    {
        int              nowTime    = ServerTimeKit.getSecondTime();
        ExamSample       examSample = QuizManagerment.Instance.getExamSampleBySid(this);
        SidNoticeContent content    = getSample().content as SidNoticeContent;
        TimeInfoSample   tsample    = TimeConfigManager.Instance.getTimeInfoSampleBySid(getSample().timeID);

        if (activeTime == null)
        {
            activeTime = ActiveTime.getActiveTimeByType(tsample);
            activeTime.initTime(ServerTimeKit.getSecondTime());
        }
        else
        {
            activeTime.doRefresh();
        }
        //具体开始时间
        int detailStartTime = activeTime.getDetailStartTime();
        //具体结束时间
        int detailEndTime = activeTime.getDetailEndTime();

        if (examSample == null)
        {
            if (detailStartTime < nowTime && detailEndTime > nowTime)
            {
                return(true);               //可以答题
            }
            else
            {
                return(false);
            }
        }
        else
        {
            if (detailStartTime < nowTime && detailEndTime > nowTime && examSample.getAwardType == 1)
            {
                return(true);               //可以答题
            }
            else
            {
                return(false);
            }
        }
    }
    /// <summary>
    /// 得到结束时间
    /// </summary>
    public string getEndTime()
    {
        TimeInfoSample tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(getSample().timeID);

        if (activeTime == null)
        {
            activeTime = ActiveTime.getActiveTimeByType(tsample);
            //activeTime.initTime (ServerTimeKit.getSecondTime ());
        }
        else
        {
            activeTime.doRefresh();
        }
        //具体结束时间
        int endTime = activeTime.getEndTime();         //+ServerTimeKit.onlineTime;

        System.DateTime date = TimeKit.getDateTime(endTime);
        return(LanguageConfigManager.Instance.getLanguage("s0125", date.Month.ToString(), date.Day.ToString()));
    }
Beispiel #14
0
    public void initContent(Notice notice, WindowBase win)
    {
        this.win      = win;
        this.ns       = notice.getSample();
        this.m_notice = notice;
        tsample       = TimeConfigManager.Instance.getTimeInfoSampleBySid(ns.timeID);
        startTime     = tsample.mainTimeInfo[0];
        endTime       = tsample.mainTimeInfo[0] + tsample.mainTimeInfo[1];

        closeDetailButton.fatherWindow = win;
        receiveButton.fatherWindow     = win;
        checkRuleButton.fatherWindow   = win;
        closeRule.fatherWindow         = win;

        closeDetailButton.onClickEvent = closeDetail;
        receiveButton.onClickEvent     = receiveButtonClick;
        checkRuleButton.onClickEvent   = checkRuleClick;
        closeRule.onClickEvent         = closeRuleClick;

        //showTimeLabel();
        showDescribLabel();

        RebateInfoFPort rifp = FPortManager.Instance.getFPort("RebateInfoFPort") as RebateInfoFPort;

//		List<int> ids = RebateSampleManager.Instance.getAllIDs();
//		diamondSample = RebateSampleManager.Instance.getDiamondSampleByIDs(ids);
//		goldSample = RebateSampleManager.Instance.getGoldSampleByIDs(ids);
        if (rifp.diamondSample == null && rifp.goldSample == null)
        {
            List <int> ids = RebateSampleManager.Instance.getAllIDs();
            rifp.setDiamondSample(RebateSampleManager.Instance.getDiamondSampleByIDs(ids));
            rifp.setGoldSample(RebateSampleManager.Instance.getGoldSampleByIDs(ids));
        }
        rifp.RebateInfoAccess(getRebateInfoCallBack);

        initeRulePanel(rifp.diamondSample, rifp.goldSample);
    }
Beispiel #15
0
    /// <summary>
    /// 获得答题活动开放时间
    /// </summary>
    public string getOpenTimeDesc()
    {
        SidNoticeContent content = getSample().content as SidNoticeContent;
        TimeInfoSample   tsample = TimeConfigManager.Instance.getTimeInfoSampleBySid(getSample().timeID);

        if (activeTime == null)
        {
            activeTime = ActiveTime.getActiveTimeByType(tsample);
            activeTime.initTime(ServerTimeKit.getSecondTime());
        }
        else
        {
            activeTime.doRefresh();
        }
        //具体开始时间
        int startTime = activeTime.getStartTime();
        //具体结束时间
        int      endTime  = activeTime.getEndTime();
        DateTime dt       = TimeKit.getDateTime(endTime);
        int      currTime = dt.Hour * 3600 + dt.Minute * 60 + dt.Second;

        if (currTime == 0)
        {
            endTime -= 1;
        }

        if (DateKit.isInSameDay(startTime, endTime))
        {
            return(LanguageConfigManager.Instance.getLanguage("notice11", TimeKit.dateToFormat(startTime, LanguageConfigManager.Instance.getLanguage("notice04"))));
        }
        else
        {
            return(LanguageConfigManager.Instance.getLanguage("notice02", TimeKit.dateToFormat(startTime, LanguageConfigManager.Instance.getLanguage("notice04")),
                                                              TimeKit.dateToFormat(endTime, LanguageConfigManager.Instance.getLanguage("notice04"))));
        }
    }
Beispiel #16
0
 public ActiveAbsTime(TimeInfoSample sample) : base(sample)
 {
     sTime     = sample.mainTimeInfo [0];
     duration  = sample.mainTimeInfo [1];
     cycleTime = sample.mainTimeInfo [2];
 }
Beispiel #17
0
 public ActiveTime(TimeInfoSample sample)
 {
     timeSample     = sample;
     preheatingTime = sample.preheatingTime;
 }
Beispiel #18
0
 public ActiveOnlineTime(TimeInfoSample sample) : base(sample)
 {
     sTime     = sample.mainTimeInfo [0] + ServerTimeKit.onlineTime;
     duration  = sample.mainTimeInfo [1];
     cycleTime = sample.mainTimeInfo [2];
 }
Beispiel #19
0
 public ActiveMonthTime(TimeInfoSample sample) : base(sample)
 {
     monthDay = sample.mainTimeInfo;
 }
Beispiel #20
0
 public ActiveWeekTime(TimeInfoSample sample) : base(sample)
 {
     weekDay = sample.mainTimeInfo;
 }