You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
151 lines
4.4 KiB
151 lines
4.4 KiB
layui.use(function () {
|
|
const laydate = layui.laydate;
|
|
let year = new Date().getFullYear() . toString();
|
|
let month = new Date().getMonth() + 1;
|
|
let day = new Date().getDate();
|
|
month = getStandardNum(month)
|
|
day = getStandardNum(day)
|
|
let currMonth = year + month.toString();
|
|
let initDateParam = localStorage.getItem('initDateParam')
|
|
if(initDateParam){
|
|
$('.dateBlock .right .time').html('当前日期:' + initDateParam.substring(0,4) + '-' + initDateParam.substring(4,6) + '-' + initDateParam.substring(6,8))
|
|
}else{
|
|
$('.dateBlock .right .time').html('当前日期:' + year + '-' + month + '-' + day)
|
|
}
|
|
let layDateMark = {};
|
|
// 获取有公告的日期
|
|
$.ajax({
|
|
type: 'GET',
|
|
url: '/calendar/mark',
|
|
data: {currMonth},
|
|
success: function(res){
|
|
if(res.code == 0){
|
|
layDateMark = res.data
|
|
laydate.render({
|
|
elem: '#ID-laydate-static-1',
|
|
position: 'static',
|
|
format: 'yyyy-MM-dd',
|
|
value: initDateParam ? initDateParam.substring(0,4) + '-' + initDateParam.substring(4,6) + '-' + initDateParam.substring(6,8) : '',
|
|
ready: function (date) {
|
|
localStorage.setItem('currDate', getDateStr(date))
|
|
let dateParam = getDateParam(date);
|
|
if(initDateParam){
|
|
dateParam = initDateParam
|
|
localStorage.removeItem('initDateParam')
|
|
}
|
|
getDateContent(dateParam)
|
|
let markValue = layDateMark;
|
|
$(this.elem).find('[lay-ymd]').each(function () {
|
|
// 日历页面上的日期:如2023-9-19
|
|
var ymd = $(this).attr('lay-ymd');
|
|
let ymdArr = ymd.split('-');
|
|
let day = getStandardNum(ymdArr[2])
|
|
let month = getStandardNum(ymdArr[1])
|
|
let ymdStr = `${ymdArr[0]}-${month}-${day}`
|
|
if (markValue.indexOf(ymdStr) != -1) {
|
|
var p = $(`<div class="customdate-content"><div class="day">
|
|
<span class='laydate-day-mark'>${ymdArr[2]}</span></div></div>`);
|
|
$(this).html(p);
|
|
}
|
|
});
|
|
},
|
|
change: function (value, date) {
|
|
let changeDate = value
|
|
if(localStorage.getItem('currDate') !== changeDate){
|
|
localStorage.setItem('currDate', changeDate);
|
|
let currDate = getDateParam(date);
|
|
getDateContent(currDate)
|
|
}
|
|
// 切换月份
|
|
let currMonth = getMonthParam(date)
|
|
$.ajax({
|
|
type: 'GET',
|
|
url: '/calendar/mark',
|
|
data: {currMonth},
|
|
success: function (res) {
|
|
if (res.code == 0) {
|
|
let markValue = res.data
|
|
$('.layui-laydate-content').find('[lay-ymd]').each(function () {
|
|
var ymd = $(this).attr('lay-ymd');
|
|
let ymdArr = ymd.split('-');
|
|
let day = getStandardNum(ymdArr[2])
|
|
let month = getStandardNum(ymdArr[1])
|
|
let ymdStr = `${ymdArr[0]}-${month}-${day}`
|
|
if (markValue.indexOf(ymdStr) != -1) {
|
|
var p = $(`<div class="customdate-content"><div class="day">
|
|
<span class='laydate-day-mark'>${ymdArr[2]}</span></div></div>`);
|
|
$(this).html(p);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
})
|
|
let textStr = '当前日期:' + value
|
|
$('.time').text(textStr)
|
|
},
|
|
});
|
|
}
|
|
}
|
|
})
|
|
// 获取日期参数
|
|
function getDateParam(date)
|
|
{
|
|
let layMonth = date.month;
|
|
layMonth = getStandardNum(layMonth)
|
|
let layDay = date.date;
|
|
layDay = getStandardNum(layDay)
|
|
// 获取点击的日期
|
|
return date.year.toString() + layMonth + layDay
|
|
}
|
|
|
|
// 获取月份参数
|
|
function getMonthParam(date)
|
|
{
|
|
let layMonth = date.month;
|
|
layMonth = getStandardNum(layMonth)
|
|
return date.year.toString() + layMonth;
|
|
}
|
|
|
|
// 获取日期字符
|
|
function getDateStr(date)
|
|
{
|
|
return `${date.year}${date.month}${date.date}`;
|
|
}
|
|
|
|
// 获取月份字符
|
|
function getMonthStr(date)
|
|
{
|
|
return `${date.year}${date.month}`;
|
|
}
|
|
|
|
// 获取当前日期的公告详情
|
|
function getDateContent(currDate){
|
|
$.ajax({
|
|
type: 'GET',
|
|
url: '/calendar/content',
|
|
data: {currDate},
|
|
success: function(res){
|
|
if(res.code == 0){
|
|
setDateContent(res.data.content);
|
|
}
|
|
}
|
|
})
|
|
}
|
|
|
|
// 设置当前日期公告详情
|
|
function setDateContent(content){
|
|
if(!content){
|
|
content = '<p>暂无交易提示</p>'
|
|
}
|
|
$('.dateBlock .right .info').html(content);
|
|
}
|
|
|
|
// 获取标准数字
|
|
function getStandardNum(num){
|
|
if(num < 10){
|
|
num = '0' + num;
|
|
}
|
|
return num;
|
|
}
|
|
|
|
});
|