57bcef75605094f9fe066afca762722fea36036f.svn-base 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. package com.kingdee.eas.custom.erp.util;
  2. import java.io.File;
  3. import java.io.IOException;
  4. import java.sql.SQLException;
  5. import java.text.SimpleDateFormat;
  6. import java.util.Calendar;
  7. import java.util.Date;
  8. import java.util.Properties;
  9. import javax.servlet.http.HttpServletRequest;
  10. import com.kingdee.bos.BOSException;
  11. import com.kingdee.bos.Context;
  12. import com.kingdee.eas.util.app.DbUtil;
  13. import com.kingdee.jdbc.rowset.IRowSet;
  14. import com.kingdee.shr.base.syssetting.util.SHRSyssettingUtil;
  15. public class SynPublicUtils {
  16. private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  17. // 创建SimpleDateFormat实例来格式化日期
  18. private static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  19. private static Properties properties = null;
  20. /**
  21. *
  22. * 更新时间记录表为当前时间
  23. * @throws BOSException
  24. */
  25. public static void updateSynTimeTable(Context ctx,String evenName) throws BOSException{
  26. String sql = "update T_HR_SynTimeTable set event_timestamp = now() where event_name = '"+evenName+"'";
  27. DbUtil.execute(ctx, sql.toString());
  28. }
  29. /**
  30. * 获取上次同步结束的时间
  31. * @param ctx
  32. * @param evenName
  33. * @throws BOSException
  34. * @throws SQLException
  35. */
  36. public static String getLastUpdateSynTableTimeStrByEvenName(Context ctx,String evenName) throws BOSException, SQLException{
  37. String sql = "select event_timestamp as evenTimeStamp from T_HR_SynTimeTable where event_name = '"+evenName+"'";
  38. IRowSet executeQuery = DbUtil.executeQuery(ctx, sql);
  39. Date evenTimeStamp = null;
  40. if(executeQuery.size()>0){
  41. while(executeQuery.next()){
  42. evenTimeStamp = executeQuery.getDate("evenTimeStamp");
  43. }
  44. }
  45. String lastUpdateTimeStr = "";
  46. if(evenTimeStamp != null){
  47. lastUpdateTimeStr = dateFormat.format(evenTimeStamp);
  48. }
  49. return lastUpdateTimeStr;
  50. }
  51. /**
  52. * 获取当前时间的字符串
  53. * @return
  54. */
  55. public static String getNowTimeStr(){
  56. // 获取当前时间
  57. Date now = new Date();
  58. // 创建SimpleDateFormat实例来格式化日期
  59. // 这里使用"yyyy-MM-dd HH:mm:ss"作为日期时间格式
  60. // 格式化日期并获取字符串
  61. String formattedDateTime = dateFormat.format(now);
  62. return formattedDateTime;
  63. }
  64. /**
  65. * 获取前一天的00:00:00时间
  66. * @return
  67. */
  68. public static String getLastDateZeroTime(){
  69. // 获取当前日期的Calendar实例
  70. Calendar calendar = Calendar.getInstance();
  71. // 计算前一天
  72. calendar.add(Calendar.DAY_OF_MONTH, -1);
  73. // 设置时间为当天的开始(对于前一天来说,也是00:00:00)
  74. calendar.set(Calendar.HOUR_OF_DAY, 0);
  75. calendar.set(Calendar.MINUTE, 0);
  76. calendar.set(Calendar.SECOND, 0);
  77. calendar.set(Calendar.MILLISECOND, 0);
  78. // 格式化日期并获取字符串
  79. String formattedDateTime = dateFormat.format(calendar.getTime());
  80. return formattedDateTime;
  81. }
  82. public static Properties getConfig() {
  83. if (properties != null) {
  84. return properties;
  85. } else {
  86. StringBuffer sb = new StringBuffer();
  87. sb.append(SHRSyssettingUtil.getShrPropertiesPath())
  88. .append(File.separator).append("shr-xhClient.properties");
  89. Properties properties = null;
  90. try {
  91. properties = SHRSyssettingUtil.getPropertiesFileByPath(sb.toString());
  92. } catch (IOException e) {
  93. e.printStackTrace();
  94. return null;
  95. }
  96. return properties;
  97. }
  98. }
  99. }