好久没来这里发帖了,最近工作遇到这样个问题,请各位大侠帮忙 谢谢    问题:系统要自动判断 如果某人的在“4个工作小时”内还没回复,系统会自动做一些事(自动回复,不需此人手动回复)
     
      我想问的就事,怎么统计这 “4个工作小时”      工作小时数 要求(除去周末、中午休息。上班时间为 早9:00-11:30  下午1:30-5:30)
      
      最好给段代码,小弟谢谢各位大侠了。

解决方案 »

  1.   

    希望这段代码能帮助你public class Test
    {
        public static void main(String[] args)
        {
            long MinuteFor4Hour = 240;        Calendar start = Calendar.getInstance();
            Calendar now = Calendar.getInstance();        start.set(2009, 5, 4, 9, 15, 55);//2009/5/4 09:15:55        long conter = 0;
            boolean wt = false;
            while(conter <= MinuteFor4Hour || start.before(now))
            {
                wt = false;
                if(start.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY && start.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY)
                {
                    if(start.get(Calendar.HOUR_OF_DAY)>=9 && (start.get(Calendar.HOUR_OF_DAY) <= 11 && start.get(Calendar.MINUTE) <= 30)) wt = true;
                    if((start.get(Calendar.HOUR_OF_DAY)>=13 && start.get(Calendar.MINUTE) <= 30) && (start.get(Calendar.HOUR_OF_DAY) <= 17 && start.get(Calendar.MINUTE) <= 30)) wt = true;
                }
                if(wt)
                    conter++;
                start.add(Calendar.MINUTE, 1);
                System.out.println(org.rhs.util.CommonTools.getSimpleDate("dd HH:mm:ss W", start.getTimeInMillis()));
            }
            System.out.println(conter);
        }
    }
      

  2.   

    休息日就非常麻烦,Java 不可能知道国定假日的。
      

  3.   

    用个类似时间图的东西先做一个你公司今年或者这个星期的工作时间分布图,然后取当前时间,利用之前的图算一下“4个工作小时”后是什么时候。然后做一个类似线程(Java)或计划(SQL Agent)的东西来检测是否符合要求。