|
@@ -982,8 +982,11 @@ export default defineComponent({
|
|
|
|
|
|
//数据列
|
|
|
data.forEach((item: { Value: number; Name: string; Date: string; Color: string;NameEn: string }) => {
|
|
|
+ //处理首或/尾全是无效数据的以null填充
|
|
|
+ let filterData = filterInvalidData(item)
|
|
|
+
|
|
|
let serie_item = {
|
|
|
- data: item.Value,
|
|
|
+ data: filterData,
|
|
|
type: 'spline',
|
|
|
yAxis: 0,
|
|
|
name: language.value === 'ch' ? item.Name : item.NameEn,
|
|
@@ -1006,12 +1009,22 @@ export default defineComponent({
|
|
|
if(language.value === 'ch') {
|
|
|
str = `<strong>${ commodityEdbList.find(_ => _.EdbAliasName === ctx.x).EdbName }</strong>`;
|
|
|
ctx.points.forEach((item:{ series:{name: string},y: number }) => {
|
|
|
- str += `<br>${data.find((_:any) => _.Name === item.series.name).Date}: ${item.y}`
|
|
|
+ let obj_item = data.find((_:any) => _.Name === item.series.name);
|
|
|
+ if(!obj_item.NoDataEdbList.includes(commodityEdbList.find(_ => _.EdbAliasName === ctx.x).EdbInfoId)) {
|
|
|
+ str += `<br>${obj_item.Date}: ${item.y}`
|
|
|
+ }else {
|
|
|
+ str += `<br>${obj_item.Date}: 无`
|
|
|
+ }
|
|
|
})
|
|
|
}else {
|
|
|
str = `<strong>${ commodityEdbList.find(_ => _.EdbAliasNameEn === ctx.x).EdbNameEn }</strong>`
|
|
|
ctx.points.forEach((item:{ series:{name: string},y: number }) => {
|
|
|
- str += `<br>${data.find((_:any) => _.NameEn === item.series.name).Date}: ${item.y}`
|
|
|
+ let obj_item = data.find((_:any) => _.NameEn === item.series.name);
|
|
|
+ if(!obj_item.NoDataEdbList.includes(commodityEdbList.find(_ => _.EdbAliasNameEn === ctx.x).EdbInfoId)) {
|
|
|
+ str += `<br>${obj_item.Date}: ${item.y}`
|
|
|
+ }else {
|
|
|
+ str += `<br>${obj_item.Date}: 无`
|
|
|
+ }
|
|
|
})
|
|
|
}
|
|
|
|
|
@@ -1031,6 +1044,27 @@ export default defineComponent({
|
|
|
}
|
|
|
};
|
|
|
|
|
|
+ /* 处理无效数据为null */
|
|
|
+ const filterInvalidData = (item:any)=> {
|
|
|
+ const { commodityEdbList } = state;
|
|
|
+ let validateArr = commodityEdbList.filter(_ =>!item.NoDataEdbList.includes(_.EdbInfoId));
|
|
|
+
|
|
|
+ let first_index = commodityEdbList.findIndex(_ => _.EdbInfoId === validateArr[0].EdbInfoId);
|
|
|
+ let last_index = commodityEdbList.findIndex(_ => _.EdbInfoId === validateArr[validateArr.length-1].EdbInfoId);
|
|
|
+ console.log('first_index',first_index)
|
|
|
+ console.log('last_index',last_index)
|
|
|
+
|
|
|
+ let arr = item.Value.map((item:any,index:number) => {
|
|
|
+ if(index < first_index || index > last_index) {
|
|
|
+ return null
|
|
|
+ }else {
|
|
|
+ return item
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+ return arr;
|
|
|
+ }
|
|
|
+
|
|
|
/* 设置options */
|
|
|
const setOptions = () => {
|
|
|
// ChartType: 1曲线图 2季节图 3面积图 4柱状图 5散点图 6组合图 季节图中公历和农历数据结构不同
|