mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 17:23:26 +08:00
【优化】定时任务处理微信交互accesstoken时,如果缓存不存在,也从数据库再去拿一份最新的进行缓存。
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
|
|
||||||
using System;
|
using System;
|
||||||
|
using CoreCms.Net.Caching.AccressToken;
|
||||||
using CoreCms.Net.Caching.AutoMate.RedisCache;
|
using CoreCms.Net.Caching.AutoMate.RedisCache;
|
||||||
using CoreCms.Net.Configuration;
|
using CoreCms.Net.Configuration;
|
||||||
using CoreCms.Net.IServices;
|
using CoreCms.Net.IServices;
|
||||||
@@ -113,7 +114,7 @@ namespace CoreCms.Net.Task
|
|||||||
await _redisOperationRepository.SetAsync(GlobalEnumVars.JsApiTicketEnum.WeiXinJsApiTicket.ToString(), responseJsTicket, TimeSpan.FromMinutes(120));
|
await _redisOperationRepository.SetAsync(GlobalEnumVars.JsApiTicketEnum.WeiXinJsApiTicket.ToString(), responseJsTicket, TimeSpan.FromMinutes(120));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//插入日志
|
//插入日志
|
||||||
var model = new SysTaskLog
|
var model = new SysTaskLog
|
||||||
{
|
{
|
||||||
@@ -127,6 +128,17 @@ namespace CoreCms.Net.Task
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
var accessToken = WeChatCacheAccessTokenHelper.GetWeChatAccessToken();
|
||||||
|
if (accessToken == null)
|
||||||
|
{
|
||||||
|
// 将时间戳转换为DateTime
|
||||||
|
var expireTime = DateTimeOffset.FromUnixTimeSeconds(entity.expireTimestamp).DateTime;
|
||||||
|
// 计算两个时间的时间差
|
||||||
|
var timeDifference = expireTime - DateTime.Now;
|
||||||
|
|
||||||
|
await _redisOperationRepository.SetAsync(GlobalEnumVars.AccessTokenEnum.WeiXinAccessToken.ToString(), entity, TimeSpan.FromMinutes(timeDifference.TotalMinutes));
|
||||||
|
}
|
||||||
|
|
||||||
//插入日志
|
//插入日志
|
||||||
var model = new SysTaskLog
|
var model = new SysTaskLog
|
||||||
{
|
{
|
||||||
@@ -174,9 +186,7 @@ namespace CoreCms.Net.Task
|
|||||||
await _weChatAccessTokenServices.UpdateAsync(entity);
|
await _weChatAccessTokenServices.UpdateAsync(entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
await _redisOperationRepository.SetAsync(
|
await _redisOperationRepository.SetAsync(GlobalEnumVars.AccessTokenEnum.WxOpenAccessToken.ToString(), entity, TimeSpan.FromMinutes(120));
|
||||||
GlobalEnumVars.AccessTokenEnum.WxOpenAccessToken.ToString(), entity,
|
|
||||||
TimeSpan.FromMinutes(120));
|
|
||||||
|
|
||||||
//插入日志
|
//插入日志
|
||||||
var model = new SysTaskLog
|
var model = new SysTaskLog
|
||||||
@@ -203,6 +213,17 @@ namespace CoreCms.Net.Task
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
var accessToken = WeChatCacheAccessTokenHelper.GetWxOpenAccessToken();
|
||||||
|
if (accessToken == null)
|
||||||
|
{
|
||||||
|
// 将时间戳转换为DateTime
|
||||||
|
var expireTime = DateTimeOffset.FromUnixTimeSeconds(entity.expireTimestamp).DateTime;
|
||||||
|
// 计算两个时间的时间差
|
||||||
|
var timeDifference = expireTime - DateTime.Now;
|
||||||
|
|
||||||
|
await _redisOperationRepository.SetAsync(GlobalEnumVars.AccessTokenEnum.WxOpenAccessToken.ToString(), entity, TimeSpan.FromMinutes(timeDifference.TotalMinutes));
|
||||||
|
}
|
||||||
|
|
||||||
//插入日志
|
//插入日志
|
||||||
var model = new SysTaskLog
|
var model = new SysTaskLog
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user