AcquisitionTime.java 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. package com.xcgl.weeklyMeeting.util;
  2. import java.sql.Timestamp;
  3. import java.text.ParseException;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Calendar;
  6. import java.util.Date;
  7. public class AcquisitionTime {
  8. static final SimpleDateFormat F = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  9. // 获取本周的开始时间
  10. public static String getBeginDayOfWeek() {
  11. Date date = new Date();
  12. if (date == null) {
  13. return null;
  14. }
  15. Calendar cal = Calendar.getInstance();
  16. cal.setTime(date);
  17. int dayofweek = cal.get(Calendar.DAY_OF_WEEK);
  18. if (dayofweek == 1) {
  19. dayofweek += 7;
  20. }
  21. cal.add(Calendar.DATE, 2 - dayofweek);
  22. return F.format(getDayStartTime(cal.getTime()));
  23. }
  24. // 获取本周的结束时间
  25. public static String getEndDayOfWeek(){
  26. Calendar cal = Calendar.getInstance();
  27. try{
  28. cal.setTime(F.parse(getBeginDayOfWeek()));
  29. }catch (ParseException e){
  30. }
  31. cal.add(Calendar.DAY_OF_WEEK, 6);
  32. Date weekEndSta = cal.getTime();
  33. return F.format(getDayEndTime(weekEndSta));
  34. }
  35. // 获取上周的开始时间
  36. public static String getBeginDayOfLastWeek() {
  37. Date date = new Date();
  38. if (date == null) {
  39. return null;
  40. }
  41. Calendar cal = Calendar.getInstance();
  42. cal.setTime(date);
  43. int dayofweek = cal.get(Calendar.DAY_OF_WEEK);
  44. if (dayofweek == 1) {
  45. dayofweek += 7;
  46. }
  47. cal.add(Calendar.DATE, 2 - dayofweek - 7);
  48. return F.format(getDayStartTime(cal.getTime()));
  49. }
  50. // 获取上周的结束时间
  51. public static String getEndDayOfLastWeek() {
  52. Calendar cal = Calendar.getInstance();
  53. try{
  54. cal.setTime(F.parse(getBeginDayOfLastWeek()));
  55. }catch (ParseException e){
  56. }
  57. cal.add(Calendar.DAY_OF_WEEK, 6);
  58. Date weekEndSta = cal.getTime();
  59. return F.format(getDayEndTime(weekEndSta));
  60. }
  61. // 获取某个日期的开始时间
  62. public static Timestamp getDayStartTime(Date d) {
  63. Calendar calendar = Calendar.getInstance();
  64. if (null != d)
  65. calendar.setTime(d);
  66. calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),
  67. calendar.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
  68. calendar.set(Calendar.MILLISECOND, 0);
  69. return new Timestamp(calendar.getTimeInMillis());
  70. }
  71. // 获取某个日期的结束时间
  72. public static Timestamp getDayEndTime(Date d) {
  73. Calendar calendar = Calendar.getInstance();
  74. if (null != d)
  75. calendar.setTime(d);
  76. calendar.set(calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),
  77. calendar.get(Calendar.DAY_OF_MONTH), 23, 59, 59);
  78. calendar.set(Calendar.MILLISECOND, 999);
  79. return new Timestamp(calendar.getTimeInMillis());
  80. }
  81. }