62 lines
2.0 KiB
C#
62 lines
2.0 KiB
C#
using Microsoft.AspNetCore.Html;
|
|
using System.Collections;
|
|
using YLErp.Events;
|
|
|
|
namespace YLErp
|
|
{
|
|
/// <summary>
|
|
/// HTML帮助类
|
|
/// </summary>
|
|
public static class HtmlUtil
|
|
{
|
|
/// <summary>
|
|
/// JS版本(每次启动后更新,不要用于layout中的js版本设置)
|
|
/// </summary>
|
|
public static readonly string JsVersion;
|
|
|
|
//bin目录文件版本
|
|
public static readonly DateTime BinFileVersion;
|
|
|
|
static long _dataCacheUpdateTime;
|
|
|
|
static HtmlUtil()
|
|
{
|
|
//获取bin目录中YLErp开头的文件最后修改日期作为JS和CSS文件版本
|
|
var binDir = new DirectoryInfo(AppContext.BaseDirectory);
|
|
var files = binDir.GetFiles("YLErp*");
|
|
BinFileVersion = files.Any() ? files.Max(n => n.LastWriteTime) : DateTime.MinValue;
|
|
JsVersion = BinFileVersion.ToString("yyMMddHHmmss");
|
|
|
|
EventBus.Subscribe<DataCacheUpdateEvent>(t =>
|
|
{
|
|
_dataCacheUpdateTime = DateTimeOffset.Now.ToUnixTimeSeconds();
|
|
});
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取基础数据JS连接
|
|
/// </summary>
|
|
public static IHtmlContent BasicDataJs(params string[] types)
|
|
{
|
|
return new HtmlString(types == null ? "/front/basicData" :
|
|
$"/front/basicData?types={string.Join("&types=", types)}&t={_dataCacheUpdateTime}");
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取基础数据JS连接(无缓存版本)
|
|
/// </summary>
|
|
public static IHtmlContent BasicDataJsV2(params string[] types)
|
|
{
|
|
return new HtmlString(types == null ? "/front/basicData" :
|
|
$"/front/basicData?types={string.Join("&types=", types)}&t={DateTime.Now.Ticks}");
|
|
}
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public static string DateStr(DateTime dt)
|
|
{
|
|
return dt.Year < 1000 ? string.Empty : dt.ToString("yyyy-MM-dd");
|
|
}
|
|
}
|
|
} |