This commit is contained in:
ylj20011123 2026-01-30 18:29:28 +08:00
parent 6f8d811054
commit 5a63f9a0b0
3 changed files with 491 additions and 445 deletions

View File

@ -3945,7 +3945,7 @@ export default {
}, },
data() { data() {
const lastDay = this.$util.cutDate(new Date(), "YYYY-MM-DD", -1); const lastDay = this.$util.cutDate(new Date(), "YYYY-MM-DD", -1);
// const lastDay = '2026-01-01' // const lastDay = '2026-02-02'
const nowDay = this.$util.cutDate(new Date(), "YYYY-MM-DD"); const nowDay = this.$util.cutDate(new Date(), "YYYY-MM-DD");
// const nowDay = '2026-01-01' // const nowDay = '2026-01-01'
return { return {

View File

@ -240,6 +240,50 @@ let chineseCalendar2025 = [
'正月廿五', '正月廿五',
] ]
// 2026年农历日历
let chineseCalendar2026 = [
'腊月十五',
'腊月十六',
'腊月十七',
'腊月十八',
'腊月十九',
'腊月二十',
'腊月廿一',
'腊月廿二',
'北小年',
'南小年',
'腊月廿五',
'腊月廿六',
'腊月廿七',
'腊月廿八',
'除夕',
'春节',
'正月初二',
'正月初三',
'正月初四',
'正月初五',
'正月初六',
'正月初七',
'正月初八',
'正月初九',
'正月初十',
'正月十一',
'正月十二',
'正月十三',
'正月十四',
'正月十五',
'正月十六',
'正月十七',
'正月十八',
'正月十九',
'正月二十',
'正月廿一',
'正月廿二',
'正月廿三',
'正月廿四',
'正月廿五',
]
// 2023年节假日安排表 // 2023年节假日安排表
let festivalObj2023 = { let festivalObj2023 = {
"2023-01-01": "元旦", "2023-01-01": "元旦",
@ -306,7 +350,7 @@ const formatDateTime = (timeStamp, returnType) => {
return [y, m, d, h, minute, second]; return [y, m, d, h, minute, second];
} }
const cfu = { const cfu = {
//demotype为自定义图表类型一般不需要自定义图表类型只需要改根节点上对应的类型即可 //demotype为自定义图表类型一般不需要自定义图表类型只需要改根节点上对应的类型即可
"type": ["pie", "ring", "rose", "word", "funnel", "map", "arcbar", "line", "column", "mount", "bar", "area", "radar", "gauge", "candle", "mix", "tline", "tarea", "scatter", "bubble", "demotype"], "type": ["pie", "ring", "rose", "word", "funnel", "map", "arcbar", "line", "column", "mount", "bar", "area", "radar", "gauge", "candle", "mix", "tline", "tarea", "scatter", "bubble", "demotype"],
"range": ["饼状图", "圆环图", "玫瑰图", "词云图", "漏斗图", "地图", "圆弧进度条", "折线图", "柱状图", "山峰图", "条状图", "区域图", "雷达图", "仪表盘", "K线图", "混合图", "时间轴折线", "时间轴区域", "散点图", "气泡图", "自定义类型"], "range": ["饼状图", "圆环图", "玫瑰图", "词云图", "漏斗图", "地图", "圆弧进度条", "折线图", "柱状图", "山峰图", "条状图", "区域图", "雷达图", "仪表盘", "K线图", "混合图", "时间轴折线", "时间轴区域", "散点图", "气泡图", "自定义类型"],
@ -314,9 +358,9 @@ const cfu = {
//自定义类型时需要注意"tline","tarea","scatter","bubble"等时间轴矢量x轴类图表没有categories不需要加入categories //自定义类型时需要注意"tline","tarea","scatter","bubble"等时间轴矢量x轴类图表没有categories不需要加入categories
"categories": ["line", "column", "mount", "bar", "area", "radar", "gauge", "candle", "mix", "demotype"], "categories": ["line", "column", "mount", "bar", "area", "radar", "gauge", "candle", "mix", "demotype"],
//instance为实例变量承载属性不要删除 //instance为实例变量承载属性不要删除
"instance": {}, "instance": { },
//option为opts及eopts承载属性不要删除 //option为opts及eopts承载属性不要删除
"option": {}, "option": { },
//下面是自定义format配置因除H5端外的其他端无法通过props传递函数只能通过此属性对应下标的方式来替换 //下面是自定义format配置因除H5端外的其他端无法通过props传递函数只能通过此属性对应下标的方式来替换
"formatter": { "formatter": {
"yAxisDemo1": function (val, index, opts) { "yAxisDemo1": function (val, index, opts) {
@ -371,7 +415,7 @@ const cfu = {
if (index === 6 || index === 8 || index === 14 || index === 15 || index === 20 || index === 22 || index === 24 || index === 25 || index === 29 || index === 30) { if (index === 6 || index === 8 || index === 14 || index === 15 || index === 20 || index === 22 || index === 24 || index === 25 || index === 29 || index === 30) {
realDate = dateList[index] realDate = dateList[index]
} }
return item.name + "" + getMoney(data / 10000, 2) + '万元' + `${realDate?realDate:''}` return item.name + "" + getMoney(data / 10000, 2) + '万元' + `${realDate ? realDate : ''}`
} }
} else { } else {
let indexList = "6,8,14,15,20,22,24,25,29,30" let indexList = "6,8,14,15,20,22,24,25,29,30"
@ -386,7 +430,7 @@ const cfu = {
let compareData = opts.series.filter(subItem => subItem.name === '23年')[0].real[index] let compareData = opts.series.filter(subItem => subItem.name === '23年')[0].real[index]
let add = Number(((curData / compareData) - 1) * 100).toFixed(2) let add = Number(((curData / compareData) - 1) * 100).toFixed(2)
if (index < day) { if (index < day) {
return `${item.name}${getMoney(data / 10000,2)}万元${add>0?'+':add<0?'':''}${add?add+'%':''}${realDate?realDate:''}` return `${item.name}${getMoney(data / 10000, 2)}万元${add > 0 ? '+' : add < 0 ? '' : ''}${add ? add + '%' : ''}${realDate ? realDate : ''}`
} else { } else {
return ' ' return ' '
} }
@ -408,12 +452,12 @@ const cfu = {
let add = Number(((curData / compareData) - 1) * 100).toFixed(2) let add = Number(((curData / compareData) - 1) * 100).toFixed(2)
if (item.name === '24年') { if (item.name === '24年') {
if (data) { if (data) {
return `${festivalType===2?curDate:item.name}${data?getMoney(data / 10000,2):''}万元${add>0?'+':add<0?'':''}${add?add+'%':''}${festivalType===1 && index===1?'(清明节)':''}` return `${festivalType === 2 ? curDate : item.name}${data ? getMoney(data / 10000, 2) : ''}万元${add > 0 ? '+' : add < 0 ? '' : ''}${add ? add + '%' : ''}${festivalType === 1 && index === 1 ? '(清明节)' : ''}`
} else { } else {
return `${curDate}` return `${curDate}`
} }
} else { } else {
return `${festivalType===2?realDate:item.name}${data?getMoney(data / 10000,2):''}万元${festivalType===1 && index===1?'(清明节)':''}` return `${festivalType === 2 ? realDate : item.name}${data ? getMoney(data / 10000, 2) : ''}万元${festivalType === 1 && index === 1 ? '(清明节)' : ''}`
} }
} else if (type === 2) { } else if (type === 2) {
let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index] let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index]
@ -433,12 +477,12 @@ const cfu = {
let add = Number(((curData / compareData) - 1) * 100).toFixed(2) let add = Number(((curData / compareData) - 1) * 100).toFixed(2)
if (item.name === '24年') { if (item.name === '24年') {
if (data) { if (data) {
return `${curDate}${data?getMoney(data / 10000,2):''}万元${add>0?'+':add<0?'':''}${add?add+'%':''}${festivalType===1 && index===1?'(劳动节)':''}` return `${curDate}${data ? getMoney(data / 10000, 2) : ''}万元${add > 0 ? '+' : add < 0 ? '' : ''}${add ? add + '%' : ''}${festivalType === 1 && index === 1 ? '(劳动节)' : ''}`
} else { } else {
return `${curDate}` return `${curDate}`
} }
} else { } else {
return `${realDate}${data?getMoney(data / 10000,2):''}万元${festivalType===1 && index===1?'(劳动节)':''}` return `${realDate}${data ? getMoney(data / 10000, 2) : ''}万元${festivalType === 1 && index === 1 ? '(劳动节)' : ''}`
} }
} else if (type === 3) { } else if (type === 3) {
let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index] let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index]
@ -458,12 +502,12 @@ const cfu = {
let add = Number(((curData / compareData) - 1) * 100).toFixed(2) let add = Number(((curData / compareData) - 1) * 100).toFixed(2)
if (item.name === '24年') { if (item.name === '24年') {
if (data) { if (data) {
return `${curDate}${data?getMoney(data / 10000,2):''}万元${add>0?'+':add<0?'':''}${add?add+'%':''}${index===3?'(端午节)':''}` return `${curDate}${data ? getMoney(data / 10000, 2) : ''}万元${add > 0 ? '+' : add < 0 ? '' : ''}${add ? add + '%' : ''}${index === 3 ? '(端午节)' : ''}`
} else { } else {
return `${curDate}` return `${curDate}`
} }
} else { } else {
return `${realDate}${data?getMoney(data / 10000,2):''}万元${index===1?'(端午节)':''}` return `${realDate}${data ? getMoney(data / 10000, 2) : ''}万元${index === 1 ? '(端午节)' : ''}`
} }
} else { } else {
let festivalType = opts.series[0].selectFestival let festivalType = opts.series[0].selectFestival
@ -478,23 +522,23 @@ const cfu = {
let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index] let data = opts.series.filter(subItem => subItem.name === item.name)[0].real[index]
if (item.name === '24年') { if (item.name === '24年') {
if (data) { if (data) {
return `${curDate}${data?getMoney(data / 10000,2):''}万元${add>0?'+':add<0?'':''}${add?add+'%':''}${ return `${curDate}${data ? getMoney(data / 10000, 2) : ''}万元${add > 0 ? '+' : add < 0 ? '' : ''}${add ? add + '%' : ''}${
festivalType===1 && index===1?'(清明节)': festivalType === 1 && index === 1 ? '(清明节)' :
festivalType===2 && index===2?'(劳动节)': festivalType === 2 && index === 2 ? '(劳动节)' :
festivalType===3 && index===3?'(端午节)': festivalType === 3 && index === 3 ? '(端午节)' :
festivalType===5 && index===3?'(中秋节)': festivalType === 5 && index === 3 ? '(中秋节)' :
festivalType===6 && index===1?'(国庆节)': festivalType === 6 && index === 1 ? '(国庆节)' :
''}` ''}`
} else { } else {
return `${curDate}` return `${curDate}`
} }
} else { } else {
return `${realDate}${data?getMoney(data / 10000,2):''}万元${ return `${realDate}${data ? getMoney(data / 10000, 2) : ''}万元${
festivalType===1 && index===1?'(清明节)': festivalType === 1 && index === 1 ? '(清明节)' :
festivalType===2 && index===3?'(劳动节)': festivalType === 2 && index === 3 ? '(劳动节)' :
festivalType===3 && index===1?'(端午节)': festivalType === 3 && index === 1 ? '(端午节)' :
festivalType===5 && index===1?'(中秋节)': festivalType === 5 && index === 1 ? '(中秋节)' :
festivalType===6 && index===3?'(国庆节)': festivalType === 6 && index === 3 ? '(国庆节)' :
''}` ''}`
} }
} }
@ -522,11 +566,13 @@ const cfu = {
resObj = chineseCalendar2024 resObj = chineseCalendar2024
} else if (item.name === 2025) { } else if (item.name === 2025) {
resObj = chineseCalendar2025 resObj = chineseCalendar2025
}else if (item.name === 2026) {
resObj = chineseCalendar2026
} }
otherFestivalTest = resObj[index] otherFestivalTest = resObj[index]
} else if (festival === 1 || festival === 3 || festival === 4 || festival === 5 || festival === 7 || festival === 8) { } else if (festival === 1 || festival === 3 || festival === 4 || festival === 5 || festival === 7 || festival === 8) {
// 非春节和暑期 // 非春节和暑期
let resObj = {} let resObj = { }
if (item.name === 2023) { if (item.name === 2023) {
resObj = festivalObj2023 resObj = festivalObj2023
} else if (item.name === 2024) { } else if (item.name === 2024) {
@ -565,7 +611,7 @@ const cfu = {
add = (((currentYearObj.real[index] - lastYearObj.real[index]) / lastYearObj.real[index]) * 100).toFixed(2) + '%' add = (((currentYearObj.real[index] - lastYearObj.real[index]) / lastYearObj.real[index]) * 100).toFixed(2) + '%'
} }
return `${dateText}${otherFestivalTest?`(${otherFestivalTest})`:'' } ${detail.data[index].toFixed(2)}万元${add?detail.data[index]>0?''+add:'':''}` return `${dateText}${otherFestivalTest ? `(${otherFestivalTest})` : ''} ${detail.data[index].toFixed(2)}万元${add ? detail.data[index] > 0 ? '' + add : '' : ''}`
// return item.name // return item.name
// let data = opts.series.filter(subItem=> subItem.name === item.name)[0].real[index] // let data = opts.series.filter(subItem=> subItem.name === item.name)[0].real[index]
@ -627,20 +673,20 @@ const cfu = {
if (type === '车流量') { if (type === '车流量') {
if (`${time}年车流量` === item.name) { if (`${time}年车流量` === item.name) {
let showTime = opts.series[0].info[index].year.toString().slice(2, 5) let showTime = opts.series[0].info[index].year.toString().slice(2, 5)
text = `${showTime}年入区 ${opts.series[0].info[index].allCarCount?fmoney(opts.series[0].info[index].allCarCount):''}` text = `${showTime}年入区 ${opts.series[0].info[index].allCarCount ? fmoney(opts.series[0].info[index].allCarCount) : ''}`
} else { } else {
let showTime = opts.series[1].info[index].year.toString().slice(2, 5) let showTime = opts.series[1].info[index].year.toString().slice(2, 5)
text = `${showTime}年入区 ${opts.series[1].info[index].allCarCount?fmoney(opts.series[1].info[index].allCarCount):''}` text = `${showTime}年入区 ${opts.series[1].info[index].allCarCount ? fmoney(opts.series[1].info[index].allCarCount) : ''}`
} }
return text return text
} else { } else {
if (`${time}年交易额` === item.name) { if (`${time}年交易额` === item.name) {
let showTime = opts.series[2].year.toString().slice(2, 5) let showTime = opts.series[2].year.toString().slice(2, 5)
console.log('showTime', showTime) console.log('showTime', showTime)
text = `${showTime}年金额 ${opts.series[2].info[index].money?fmoney(opts.series[2].info[index].money):''} 元, 单车消费 ${opts.series[0].info[index].allCarCount?((opts.series[0].info[index].money) / opts.series[0].info[index].allCarCount).toFixed(2):''}` text = `${showTime}年金额 ${opts.series[2].info[index].money ? fmoney(opts.series[2].info[index].money) : ''} 元, 单车消费 ${opts.series[0].info[index].allCarCount ? ((opts.series[0].info[index].money) / opts.series[0].info[index].allCarCount).toFixed(2) : ''}`
} else { } else {
let showTime = opts.series[3].year.toString().slice(2, 5) let showTime = opts.series[3].year.toString().slice(2, 5)
text = `${showTime}年金额 ${opts.series[3].info[index].money?fmoney(opts.series[3].info[index].money):''} 元, 单车消费 ${opts.series[1].info[index].allCarCount?((opts.series[1].info[index].money) / opts.series[1].info[index].allCarCount).toFixed(2):''}` text = `${showTime}年金额 ${opts.series[3].info[index].money ? fmoney(opts.series[3].info[index].money) : ''} 元, 单车消费 ${opts.series[1].info[index].allCarCount ? ((opts.series[1].info[index].money) / opts.series[1].info[index].allCarCount).toFixed(2) : ''}`
} }
return text return text
} }
@ -816,7 +862,7 @@ const cfu = {
"gridType": "dash", "gridType": "dash",
"dashLength": 2, "dashLength": 2,
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"line": { "line": {
"type": "curve", "type": "curve",
@ -976,7 +1022,7 @@ const cfu = {
"gridType": "dash", "gridType": "dash",
"dashLength": 2, "dashLength": 2,
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"line": { "line": {
"type": "straight", "type": "straight",
@ -1001,7 +1047,7 @@ const cfu = {
"max": 80 "max": 80
}] }]
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"line": { "line": {
"type": "curve", "type": "curve",
@ -1026,7 +1072,7 @@ const cfu = {
"max": 80 "max": 80
}] }]
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"area": { "area": {
"type": "curve", "type": "curve",
@ -1050,7 +1096,7 @@ const cfu = {
"min": 0 "min": 0
}] }]
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"column": { "column": {
"type": "group", "type": "group",
@ -1072,7 +1118,7 @@ const cfu = {
"min": 0 "min": 0
}] }]
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"mount": { "mount": {
"type": "mount", "type": "mount",
@ -1090,8 +1136,8 @@ const cfu = {
"min": 0, "min": 0,
"axisLine": false "axisLine": false
}, },
"yAxis": {}, "yAxis": { },
"legend": {}, "legend": { },
"extra": { "extra": {
"bar": { "bar": {
"type": "group", "type": "group",
@ -1114,7 +1160,7 @@ const cfu = {
"gridType": "dash", "gridType": "dash",
"dashLength": 2, "dashLength": 2,
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"area": { "area": {
"type": "straight", "type": "straight",
@ -1206,8 +1252,8 @@ const cfu = {
"scrollColor": "#A6A6A6", "scrollColor": "#A6A6A6",
"scrollBackgroundColor": "#EFEBEF" "scrollBackgroundColor": "#EFEBEF"
}, },
"yAxis": {}, "yAxis": { },
"legend": {}, "legend": { },
"extra": { "extra": {
"candle": { "candle": {
"color": { "color": {
@ -1258,7 +1304,7 @@ const cfu = {
"showTitle": true, "showTitle": true,
"data": [] "data": []
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"mix": { "mix": {
"column": { "column": {
@ -1283,9 +1329,9 @@ const cfu = {
"disableGrid": false, "disableGrid": false,
"gridType": "dash", "gridType": "dash",
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"scatter": {}, "scatter": { },
} }
}, },
"bubble": { "bubble": {
@ -1308,7 +1354,7 @@ const cfu = {
"max": 150 "max": 150
}] }]
}, },
"legend": {}, "legend": { },
"extra": { "extra": {
"bubble": { "bubble": {
"border": 2, "border": 2,
@ -1318,4 +1364,4 @@ const cfu = {
} }
} }
export default cfu; export default cfu;

View File

@ -3426,7 +3426,7 @@ export default {
// //
this.lastDay = uni.getStorageSync("lastDay"); this.lastDay = uni.getStorageSync("lastDay");
// this.lastDay = '2026-09-30'; // this.lastDay = '2026-02-02';
const currentDate = new Date(this.lastDay); const currentDate = new Date(this.lastDay);
let currentY = currentDate.getFullYear(); // let currentY = currentDate.getFullYear(); //
let currentM = currentDate.getMonth() + 1; // let currentM = currentDate.getMonth() + 1; //