Browse Source

修改k线时间

master
liaoxinyu 1 year ago
parent
commit
681f4ea4b0
  1. 29
      static/chart_main/sevencoin.js

29
static/chart_main/sevencoin.js

@ -253,9 +253,7 @@ $(function () {
tvQuoter.find('[data-name="zhangdiee"]').css('color',zhangdiee>0?'#53b987':'#eb4d5c'); tvQuoter.find('[data-name="zhangdiee"]').css('color',zhangdiee>0?'#53b987':'#eb4d5c');
} }
timestampToTime(timestamp) { timestampToTime(timestamp) {
const dates = new Date(timestamp); const date = this.adjustToEasternTime(timestamp);
const resolutionTime = this.getResolutionTime()
const date = resolutionTime === 1 ? dates : this.adjustToEasternTime(dates);
const yyyy = `${date.getFullYear()}`; const yyyy = `${date.getFullYear()}`;
const yy = `${date.getFullYear()}`.substr(2); const yy = `${date.getFullYear()}`.substr(2);
@ -274,34 +272,31 @@ $(function () {
return dateStr return dateStr
} }
adjustToEasternTime(date) { adjustToEasternTime(date) {
// 将给定日期转换为时间戳 let timestamp;
const timestamp = date.getTime();
// 获取美国东部时区偏移值(以分钟为单位) // let easternOffset = 46800000; // 标准时间(EST)
// const easternOffset = -240; // 美国东部时区偏移值为 -240 分钟 // if (this.dateIsInEDT(date)) {
// 获取东部时间的偏移值(分钟) // easternOffset = 43200000; // 夏令时(EDT)
let easternOffset = 1260; // 标准时间(EST) // }
if (this.dateIsInEDT(date)) {
easternOffset = 1200; // 夏令时(EDT)
}
// 调整时间为美国东部时间 // 调整时间为美国东部时间
const adjustedTime = timestamp - (date.getTimezoneOffset() + easternOffset) * 60 * 1000; timestamp = date - (-28800000)+(new Date(new Date().getTime()).getTimezoneOffset()* 60 * 1000) - 46800000;
// 创建新的日期对象,并使用调整后的时间戳 // 创建新的日期对象,并使用调整后的时间戳
const adjustedDate = new Date(adjustedTime); const adjustedDate = new Date(timestamp);
// 返回调整后的日期对象 // 返回调整后的日期对象
return adjustedDate; return adjustedDate;
} }
// 判断日期是否在夏令时(简化的逻辑,实际应用中需要考虑更多的边界情况) // 判断日期是否在夏令时(简化的逻辑,实际应用中需要考虑更多的边界情况)
dateIsInEDT(date) { dateIsInEDT(date) {
const year = date.getUTCFullYear(); const dates = new Date();
const year = dates.getUTCFullYear();
const start = new Date(Date.UTC(year, 2, 13, 7)); // March, 2nd Sunday const start = new Date(Date.UTC(year, 2, 13, 7)); // March, 2nd Sunday
const end = new Date(Date.UTC(year, 10, 6, 6)); // November, 1st Sunday const end = new Date(Date.UTC(year, 10, 6, 6)); // November, 1st Sunday
start.setUTCDate(14 - start.getUTCDay()); start.setUTCDate(14 - start.getUTCDay());
end.setUTCDate(7 - end.getUTCDay()); end.setUTCDate(7 - end.getUTCDay());
console.log(dates);
return date >= start && date < end; return dates >= start && dates < end;
} }
getResolutionTime() { getResolutionTime() {
const resolution = this.TView.chart().resolution(); const resolution = this.TView.chart().resolution();

Loading…
Cancel
Save