hc-energy-ui 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +38 -0
- package/dist/components/Button/Button.vue.d.ts +43 -0
- package/dist/components/Button/index.d.ts +70 -0
- package/dist/components/DatePicker/DatePicker.vue.d.ts +69 -0
- package/dist/components/DatePicker/index.d.ts +143 -0
- package/dist/components/DatePicker/utils.d.ts +10 -0
- package/dist/components/EnergyAnalysis/EnergyAnalysis.vue.d.ts +92 -0
- package/dist/components/EnergyAnalysis/index.d.ts +165 -0
- package/dist/components/EnergyAnalysis/internal/BoxTitle.vue.d.ts +17 -0
- package/dist/components/EnergyAnalysis/internal/ChartLine.vue.d.ts +104 -0
- package/dist/components/EnergyAnalysis/internal/ModulePanel.vue.d.ts +24 -0
- package/dist/components/EnergyAnalysis/internal/TimeControl.vue.d.ts +100 -0
- package/dist/components/EnergyAnalysis/transform.d.ts +40 -0
- package/dist/components/EnergyAnalysis/types.d.ts +38 -0
- package/dist/hc-energy-ui.cjs.js +11 -0
- package/dist/hc-energy-ui.es.js +933 -0
- package/dist/index.d.ts +12 -0
- package/dist/style.css +1 -0
- package/dist/utils/format.d.ts +7 -0
- package/package.json +44 -0
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
2
|
+
chartData: {
|
|
3
|
+
type: ObjectConstructor;
|
|
4
|
+
default: () => {
|
|
5
|
+
xAxisData: string[];
|
|
6
|
+
yAxisData: number[][];
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
typeData: {
|
|
10
|
+
type: () => Array<{
|
|
11
|
+
name: string;
|
|
12
|
+
color: string;
|
|
13
|
+
unit?: string;
|
|
14
|
+
}>;
|
|
15
|
+
default: () => never[];
|
|
16
|
+
};
|
|
17
|
+
unit: {
|
|
18
|
+
type: StringConstructor;
|
|
19
|
+
default: string;
|
|
20
|
+
};
|
|
21
|
+
xUnit: {
|
|
22
|
+
type: StringConstructor;
|
|
23
|
+
default: string;
|
|
24
|
+
};
|
|
25
|
+
left: {
|
|
26
|
+
type: NumberConstructor;
|
|
27
|
+
default: number;
|
|
28
|
+
};
|
|
29
|
+
right: {
|
|
30
|
+
type: NumberConstructor;
|
|
31
|
+
default: number;
|
|
32
|
+
};
|
|
33
|
+
bottom: {
|
|
34
|
+
type: NumberConstructor;
|
|
35
|
+
default: number;
|
|
36
|
+
};
|
|
37
|
+
unitLeft: {
|
|
38
|
+
type: NumberConstructor;
|
|
39
|
+
default: number;
|
|
40
|
+
};
|
|
41
|
+
legendLeft: {
|
|
42
|
+
type: NumberConstructor;
|
|
43
|
+
default: number;
|
|
44
|
+
};
|
|
45
|
+
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
46
|
+
chartData: {
|
|
47
|
+
type: ObjectConstructor;
|
|
48
|
+
default: () => {
|
|
49
|
+
xAxisData: string[];
|
|
50
|
+
yAxisData: number[][];
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
typeData: {
|
|
54
|
+
type: () => Array<{
|
|
55
|
+
name: string;
|
|
56
|
+
color: string;
|
|
57
|
+
unit?: string;
|
|
58
|
+
}>;
|
|
59
|
+
default: () => never[];
|
|
60
|
+
};
|
|
61
|
+
unit: {
|
|
62
|
+
type: StringConstructor;
|
|
63
|
+
default: string;
|
|
64
|
+
};
|
|
65
|
+
xUnit: {
|
|
66
|
+
type: StringConstructor;
|
|
67
|
+
default: string;
|
|
68
|
+
};
|
|
69
|
+
left: {
|
|
70
|
+
type: NumberConstructor;
|
|
71
|
+
default: number;
|
|
72
|
+
};
|
|
73
|
+
right: {
|
|
74
|
+
type: NumberConstructor;
|
|
75
|
+
default: number;
|
|
76
|
+
};
|
|
77
|
+
bottom: {
|
|
78
|
+
type: NumberConstructor;
|
|
79
|
+
default: number;
|
|
80
|
+
};
|
|
81
|
+
unitLeft: {
|
|
82
|
+
type: NumberConstructor;
|
|
83
|
+
default: number;
|
|
84
|
+
};
|
|
85
|
+
legendLeft: {
|
|
86
|
+
type: NumberConstructor;
|
|
87
|
+
default: number;
|
|
88
|
+
};
|
|
89
|
+
}>> & Readonly<{}>, {
|
|
90
|
+
left: number;
|
|
91
|
+
chartData: Record<string, any>;
|
|
92
|
+
typeData: {
|
|
93
|
+
name: string;
|
|
94
|
+
color: string;
|
|
95
|
+
unit?: string | undefined;
|
|
96
|
+
}[];
|
|
97
|
+
unit: string;
|
|
98
|
+
xUnit: string;
|
|
99
|
+
right: number;
|
|
100
|
+
bottom: number;
|
|
101
|
+
unitLeft: number;
|
|
102
|
+
legendLeft: number;
|
|
103
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
104
|
+
export default _default;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
2
|
+
title: string;
|
|
3
|
+
mountNum?: string | undefined;
|
|
4
|
+
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<{
|
|
5
|
+
title: string;
|
|
6
|
+
mountNum?: string | undefined;
|
|
7
|
+
}>>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
|
|
8
|
+
default?(_: {}): any;
|
|
9
|
+
}>;
|
|
10
|
+
export default _default;
|
|
11
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
12
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
13
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
14
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
15
|
+
} : {
|
|
16
|
+
type: import('vue').PropType<T[K]>;
|
|
17
|
+
required: true;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
21
|
+
new (): {
|
|
22
|
+
$slots: S;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
2
|
+
activeTime?: string | undefined;
|
|
3
|
+
time?: (string | Date)[] | undefined;
|
|
4
|
+
day?: (string | Date)[] | undefined;
|
|
5
|
+
month?: (string | Date)[] | undefined;
|
|
6
|
+
showLj?: boolean | undefined;
|
|
7
|
+
showY?: boolean | undefined;
|
|
8
|
+
showM?: boolean | undefined;
|
|
9
|
+
showD?: boolean | undefined;
|
|
10
|
+
showTime?: boolean | undefined;
|
|
11
|
+
activeTimeModel1?: string | undefined;
|
|
12
|
+
typeNumber?: string | undefined;
|
|
13
|
+
titleOne?: string | undefined;
|
|
14
|
+
}>, {
|
|
15
|
+
activeTime: string;
|
|
16
|
+
showLj: boolean;
|
|
17
|
+
showY: boolean;
|
|
18
|
+
showM: boolean;
|
|
19
|
+
showD: boolean;
|
|
20
|
+
showTime: boolean;
|
|
21
|
+
typeNumber: string;
|
|
22
|
+
time: () => never[];
|
|
23
|
+
day: () => never[];
|
|
24
|
+
month: () => never[];
|
|
25
|
+
titleOne: string;
|
|
26
|
+
activeTimeModel1: string;
|
|
27
|
+
}>>, {
|
|
28
|
+
onTimeFn: (time: string) => void;
|
|
29
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
30
|
+
"update:activeTime": (value: string) => void;
|
|
31
|
+
"update:time": (value: (string | Date)[]) => void;
|
|
32
|
+
"update:day": (value: (string | Date)[]) => void;
|
|
33
|
+
"update:month": (value: (string | Date)[]) => void;
|
|
34
|
+
"update:activeTimeModel1": (value: string) => void;
|
|
35
|
+
dateChange: (value: (string | Date)[] | null) => void;
|
|
36
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{
|
|
37
|
+
activeTime?: string | undefined;
|
|
38
|
+
time?: (string | Date)[] | undefined;
|
|
39
|
+
day?: (string | Date)[] | undefined;
|
|
40
|
+
month?: (string | Date)[] | undefined;
|
|
41
|
+
showLj?: boolean | undefined;
|
|
42
|
+
showY?: boolean | undefined;
|
|
43
|
+
showM?: boolean | undefined;
|
|
44
|
+
showD?: boolean | undefined;
|
|
45
|
+
showTime?: boolean | undefined;
|
|
46
|
+
activeTimeModel1?: string | undefined;
|
|
47
|
+
typeNumber?: string | undefined;
|
|
48
|
+
titleOne?: string | undefined;
|
|
49
|
+
}>, {
|
|
50
|
+
activeTime: string;
|
|
51
|
+
showLj: boolean;
|
|
52
|
+
showY: boolean;
|
|
53
|
+
showM: boolean;
|
|
54
|
+
showD: boolean;
|
|
55
|
+
showTime: boolean;
|
|
56
|
+
typeNumber: string;
|
|
57
|
+
time: () => never[];
|
|
58
|
+
day: () => never[];
|
|
59
|
+
month: () => never[];
|
|
60
|
+
titleOne: string;
|
|
61
|
+
activeTimeModel1: string;
|
|
62
|
+
}>>> & Readonly<{
|
|
63
|
+
"onUpdate:activeTime"?: ((value: string) => any) | undefined;
|
|
64
|
+
"onUpdate:time"?: ((value: (string | Date)[]) => any) | undefined;
|
|
65
|
+
"onUpdate:day"?: ((value: (string | Date)[]) => any) | undefined;
|
|
66
|
+
"onUpdate:month"?: ((value: (string | Date)[]) => any) | undefined;
|
|
67
|
+
"onUpdate:activeTimeModel1"?: ((value: string) => any) | undefined;
|
|
68
|
+
onDateChange?: ((value: (string | Date)[] | null) => any) | undefined;
|
|
69
|
+
}>, {
|
|
70
|
+
time: (string | Date)[];
|
|
71
|
+
month: (string | Date)[];
|
|
72
|
+
activeTime: string;
|
|
73
|
+
day: (string | Date)[];
|
|
74
|
+
showLj: boolean;
|
|
75
|
+
showY: boolean;
|
|
76
|
+
showM: boolean;
|
|
77
|
+
showD: boolean;
|
|
78
|
+
showTime: boolean;
|
|
79
|
+
activeTimeModel1: string;
|
|
80
|
+
typeNumber: string;
|
|
81
|
+
titleOne: string;
|
|
82
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
83
|
+
export default _default;
|
|
84
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
85
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
|
86
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
87
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
88
|
+
} : {
|
|
89
|
+
type: import('vue').PropType<T[K]>;
|
|
90
|
+
required: true;
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
type __VLS_WithDefaults<P, D> = {
|
|
94
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
|
|
95
|
+
default: D[K];
|
|
96
|
+
}> : P[K];
|
|
97
|
+
};
|
|
98
|
+
type __VLS_Prettify<T> = {
|
|
99
|
+
[K in keyof T]: T[K];
|
|
100
|
+
} & {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export type EnergySeriesItem = {
|
|
2
|
+
name: string;
|
|
3
|
+
dataPoints?: Array<{
|
|
4
|
+
timeLabel: string;
|
|
5
|
+
energyKwh: number | null;
|
|
6
|
+
}>;
|
|
7
|
+
};
|
|
8
|
+
export type EnergyDashboardData = {
|
|
9
|
+
summary?: Record<string, number>;
|
|
10
|
+
series?: EnergySeriesItem[];
|
|
11
|
+
};
|
|
12
|
+
export type ChartViewModel = {
|
|
13
|
+
typeData: Array<{
|
|
14
|
+
name: string;
|
|
15
|
+
color: string;
|
|
16
|
+
unit?: string;
|
|
17
|
+
}>;
|
|
18
|
+
chartData: {
|
|
19
|
+
xAxisData: string[];
|
|
20
|
+
yAxisData: Array<Array<number | null>>;
|
|
21
|
+
};
|
|
22
|
+
xUnit: string;
|
|
23
|
+
};
|
|
24
|
+
/** 组装接口查询参数 */
|
|
25
|
+
export declare function buildEnergyQueryParams(info: {
|
|
26
|
+
activeTime1: string;
|
|
27
|
+
time1: Array<string | Date>;
|
|
28
|
+
day1: Array<string | Date>;
|
|
29
|
+
month1: Array<string | Date>;
|
|
30
|
+
}): {
|
|
31
|
+
selectedDate: string | Date;
|
|
32
|
+
timeDimension: string;
|
|
33
|
+
};
|
|
34
|
+
/** 将接口返回转成图表展示数据 */
|
|
35
|
+
export declare function transformEnergyDashboard(data: EnergyDashboardData | null | undefined, options: {
|
|
36
|
+
activeTime: string;
|
|
37
|
+
typeIndex: number;
|
|
38
|
+
unit: string;
|
|
39
|
+
monthDate?: Date | string;
|
|
40
|
+
}): ChartViewModel;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export type EnergyTypeItem = {
|
|
2
|
+
label: string;
|
|
3
|
+
value: string;
|
|
4
|
+
unit: string;
|
|
5
|
+
};
|
|
6
|
+
export type TypeListItem = {
|
|
7
|
+
name: string;
|
|
8
|
+
unit: string;
|
|
9
|
+
value: string;
|
|
10
|
+
date?: string;
|
|
11
|
+
};
|
|
12
|
+
/** 筛选项状态:父组件用一个对象 v-model:query 绑定即可 */
|
|
13
|
+
export type EnergyQueryState = {
|
|
14
|
+
activeTime: string;
|
|
15
|
+
time: Array<string | Date>;
|
|
16
|
+
day: Array<string | Date>;
|
|
17
|
+
month: Array<string | Date>;
|
|
18
|
+
activeTimeModel1: string;
|
|
19
|
+
activeEnergy: string;
|
|
20
|
+
typeIndex: number;
|
|
21
|
+
unit: string;
|
|
22
|
+
};
|
|
23
|
+
/** 展示数据:接口结果整理后一次性传入 */
|
|
24
|
+
export type EnergyViewData = {
|
|
25
|
+
summary: Record<string, number>;
|
|
26
|
+
typeData: Array<{
|
|
27
|
+
name: string;
|
|
28
|
+
color: string;
|
|
29
|
+
unit?: string;
|
|
30
|
+
}>;
|
|
31
|
+
chartData: {
|
|
32
|
+
xAxisData: string[];
|
|
33
|
+
yAxisData: Array<Array<number | null>>;
|
|
34
|
+
};
|
|
35
|
+
xUnit: string;
|
|
36
|
+
};
|
|
37
|
+
export declare function createDefaultEnergyQuery(): EnergyQueryState;
|
|
38
|
+
export declare function createDefaultEnergyView(): EnergyViewData;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue"),J=require("echarts");function ee(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const l in t)if(l!=="default"){const o=Object.getOwnPropertyDescriptor(t,l);Object.defineProperty(n,l,o.get?o:{enumerable:!0,get:()=>t[l]})}}return n.default=t,Object.freeze(n)}const te=ee(J),ne=["disabled"],ae=e.defineComponent({__name:"Button",props:{type:{default:"default"},disabled:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:n}){const l=n,o=c=>{l("click",c)};return(c,r)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["hc-button",[`hc-button--${t.type}`]]),disabled:t.disabled,onClick:o},[e.renderSlot(c.$slots,"default",{},void 0,!0)],10,ne))}}),M=(t,n)=>{const l=t.__vccOpts||t;for(const[o,c]of n)l[o]=c;return l},G=M(ae,[["__scopeId","data-v-c0879ce0"]]),I=G;I.install=t=>{t.component("HcButton",G)};function Y(t){return String(t).padStart(2,"0")}function oe(t,n){const l=t.getFullYear(),o=Y(t.getMonth()+1),c=Y(t.getDate());return n==="year"?`${l}-01-01`:n==="month"?`${l}-${o}-01`:`${l}-${o}-${c}`}function Q(t){if(!t)return null;if(t instanceof Date)return Number.isNaN(t.getTime())?null:t;const n=new Date(t);return Number.isNaN(n.getTime())?null:n}function le(t,n){if(!t)return"";const l=t.getFullYear(),o=Y(t.getMonth()+1),c=Y(t.getDate());return n==="year"?`${l}`:n==="month"?`${l}-${o}`:`${l}-${o}-${c}`}function K(t,n){return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()}function re(t,n){const o=new Date(t,n,1).getDay(),c=new Date(t,n+1,0).getDate(),r=new Date(t,n,0).getDate(),g=[];for(let i=o-1;i>=0;i--)g.push({date:new Date(t,n-1,r-i),current:!1});for(let i=1;i<=c;i++)g.push({date:new Date(t,n,i),current:!0});const E=42-g.length;for(let i=1;i<=E;i++)g.push({date:new Date(t,n+1,i),current:!1});return g}const ie=["value","placeholder","disabled"],se={class:"hc-date-picker__header"},ce={class:"hc-date-picker__header-label"},ue={key:0,class:"hc-date-picker__body"},de={class:"hc-date-picker__weeks"},me={class:"hc-date-picker__days"},pe=["onClick"],fe={key:1,class:"hc-date-picker__body hc-date-picker__body--month"},ye=["onClick"],ve={key:2,class:"hc-date-picker__body hc-date-picker__body--year"},he=["onClick"],ge=e.defineComponent({name:"HcDatePicker",__name:"DatePicker",props:{modelValue:{default:""},type:{default:"date"},placeholder:{default:"选择日期"},disabled:{type:Boolean,default:!1},clearable:{type:Boolean,default:!0},size:{default:"default"},dark:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:n}){var j,R;const l=t,o=n,c=["日","一","二","三","四","五","六"],r=new Date,g=e.ref(null),E=e.ref(null),i=e.ref(!1),b=e.ref({}),p=e.computed(()=>Q(l.modelValue)),m=e.computed(()=>le(p.value,l.type)),u=e.ref(((j=p.value)==null?void 0:j.getFullYear())??r.getFullYear()),D=e.ref(((R=p.value)==null?void 0:R.getMonth())??r.getMonth());e.watch(()=>[l.modelValue,l.type],()=>{const w=Q(l.modelValue);w&&(u.value=w.getFullYear(),D.value=w.getMonth())});const k=e.computed(()=>re(u.value,D.value)),y=e.computed(()=>Math.floor(u.value/10)*10),d=e.computed(()=>Array.from({length:12},(w,B)=>y.value-1+B)),a=e.computed(()=>l.type==="year"?`${y.value} 年 - ${y.value+9} 年`:l.type==="month"?`${u.value} 年`:`${u.value} 年 ${D.value+1} 月`);function s(){if(!g.value)return;const w=g.value.getBoundingClientRect(),B=w.bottom+4+window.scrollY;let h=w.left+window.scrollX;const N=292;h+N>window.innerWidth-8&&(h=Math.max(8,window.innerWidth-N-8)),b.value={position:"absolute",top:`${B}px`,left:`${h}px`,zIndex:"3000"}}async function v(){l.disabled||(i.value=!0,await e.nextTick(),s())}function _(){i.value=!1}function $(){l.disabled||(i.value?_():v())}function V(){o("update:modelValue",""),o("change",null)}function F(w){const B=oe(w,l.type);o("update:modelValue",B),o("change",B),_()}function f(w){F(w)}function T(w){F(new Date(u.value,w,1))}function x(w){F(new Date(w,0,1))}function C(){D.value===0?(D.value=11,u.value-=1):D.value-=1}function L(){D.value===11?(D.value=0,u.value+=1):D.value+=1}function S(){l.type==="year"?u.value-=10:u.value-=1}function A(){l.type==="year"?u.value+=10:u.value+=1}function H(w){var h,N;if(!i.value)return;const B=w.target;(h=g.value)!=null&&h.contains(B)||(N=E.value)!=null&&N.contains(B)||_()}function P(){i.value&&s()}return e.onMounted(()=>{document.addEventListener("mousedown",H),window.addEventListener("scroll",P,!0),window.addEventListener("resize",P)}),e.onBeforeUnmount(()=>{document.removeEventListener("mousedown",H),window.removeEventListener("scroll",P,!0),window.removeEventListener("resize",P)}),(w,B)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"rootRef",ref:g,class:e.normalizeClass(["hc-date-picker",[`hc-date-picker--${t.size}`,{"hc-date-picker--dark":t.dark,"is-disabled":t.disabled}]])},[e.createElementVNode("div",{class:e.normalizeClass(["hc-date-picker__trigger",{"is-focus":i.value,"is-disabled":t.disabled}]),onClick:$},[e.createElementVNode("input",{class:"hc-date-picker__inner",type:"text",readonly:"",value:m.value,placeholder:t.placeholder,disabled:t.disabled},null,8,ie),t.clearable&&m.value&&!t.disabled?(e.openBlock(),e.createElementBlock("span",{key:0,class:"hc-date-picker__clear",onClick:e.withModifiers(V,["stop"])}," × ")):e.createCommentVNode("",!0)],2),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"popperRef",ref:E,class:e.normalizeClass(["hc-date-picker__popper",{"is-dark":t.dark}]),style:e.normalizeStyle(b.value),onMousedown:B[0]||(B[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",se,[e.createElementVNode("button",{type:"button",class:"hc-date-picker__icon-btn",onClick:S},"«"),t.type==="date"?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"hc-date-picker__icon-btn",onClick:C}," ‹ ")):e.createCommentVNode("",!0),e.createElementVNode("span",ce,e.toDisplayString(a.value),1),t.type==="date"?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"hc-date-picker__icon-btn",onClick:L}," › ")):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"hc-date-picker__icon-btn",onClick:A},"»")]),t.type==="date"?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("div",de,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(c,h=>e.createElementVNode("span",{key:h},e.toDisplayString(h),1)),64))]),e.createElementVNode("div",me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(h,N)=>(e.openBlock(),e.createElementBlock("button",{key:N,type:"button",class:e.normalizeClass(["hc-date-picker__cell",{"is-other":!h.current,"is-selected":p.value&&e.unref(K)(h.date,p.value),"is-today":e.unref(K)(h.date,e.unref(r))}]),onClick:at=>f(h.date)},e.toDisplayString(h.date.getDate()),11,pe))),128))])])):t.type==="month"?(e.openBlock(),e.createElementBlock("div",fe,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(12,h=>e.createElementVNode("button",{key:h,type:"button",class:e.normalizeClass(["hc-date-picker__cell hc-date-picker__cell--month",{"is-selected":p.value&&p.value.getFullYear()===u.value&&p.value.getMonth()===h-1}]),onClick:N=>T(h-1)},e.toDisplayString(h)+"月 ",11,ye)),64))])):(e.openBlock(),e.createElementBlock("div",ve,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,h=>(e.openBlock(),e.createElementBlock("button",{key:h,type:"button",class:e.normalizeClass(["hc-date-picker__cell hc-date-picker__cell--year",{"is-selected":p.value&&p.value.getFullYear()===h}]),onClick:N=>x(h)},e.toDisplayString(h),11,he))),128))]))],38)):e.createCommentVNode("",!0)]))],2))}}),z=M(ge,[["__scopeId","data-v-b2bff9b8"]]),W=z;W.install=t=>{t.component("HcDatePicker",z),t.component("DatePicker",z)};const ke={class:"box-title"},De={class:"text"},be={key:0,class:"text-num"},we={class:"num"},Ce=e.defineComponent({__name:"BoxTitle",props:{title:{},mountNum:{}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",ke,[e.createElementVNode("span",De,e.toDisplayString(t.title),1),t.mountNum?(e.openBlock(),e.createElementBlock("p",be,[l[0]||(l[0]=e.createTextVNode(" 挂载总量:",-1)),e.createElementVNode("span",we,e.toDisplayString(t.mountNum||"--"),1),l[1]||(l[1]=e.createTextVNode("个 ",-1))])):e.createCommentVNode("",!0)]))}}),Ee=M(Ce,[["__scopeId","data-v-bc025af7"]]),xe={class:"module-panel"},Be={class:"panel-content"},_e=e.defineComponent({__name:"ModulePanel",props:{title:{},mountNum:{}},setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",xe,[e.createVNode(Ee,{title:t.title,mountNum:t.mountNum},null,8,["title","mountNum"]),e.createElementVNode("div",Be,[e.renderSlot(n.$slots,"default",{},void 0,!0)])]))}}),$e=M(_e,[["__scopeId","data-v-c6a014b4"]]),Ne={class:"time-control"},Te={key:0,class:"filter-group"},Me={class:"dateStyl"},Ve={key:0,class:"title"},Fe=e.defineComponent({name:"HcTimeControl",__name:"TimeControl",props:{activeTime:{default:"日"},time:{default:()=>[]},day:{default:()=>[]},month:{default:()=>[]},showLj:{type:Boolean,default:!0},showY:{type:Boolean,default:!0},showM:{type:Boolean,default:!0},showD:{type:Boolean,default:!0},showTime:{type:Boolean,default:!0},activeTimeModel1:{default:"选择时间"},typeNumber:{default:""},titleOne:{default:"日"}},emits:["update:activeTime","update:time","update:day","update:month","update:activeTimeModel1","dateChange"],setup(t,{expose:n,emit:l}){const o=t,c=l,r=d=>{const a=d.getFullYear(),s=String(d.getMonth()+1).padStart(2,"0"),v=String(d.getDate()).padStart(2,"0");return`${a}-${s}-${v}`},g=d=>{d.length===0&&c("update:activeTimeModel1","选择时间")};e.watch(()=>o.day,g,{deep:!0}),e.watch(()=>o.time,g,{deep:!0}),e.watch(()=>o.month,g,{deep:!0}),(()=>{const d=new Date,a=new Date(d.getFullYear(),d.getMonth(),d.getDate()),s=new Date(a);s.setHours(23,59,59,999);const v=new Date(d.getFullYear(),d.getMonth(),1),_=new Date(d.getFullYear(),0,1);o.time.length===0&&c("update:time",[r(a),r(s)]),o.day.length===0&&c("update:day",[r(v),r(s)]),o.month.length===0&&c("update:month",[r(_),r(s)])})();const i=e.computed({get:()=>o.activeTime,set:d=>c("update:activeTime",d)}),b=e.computed(()=>i.value==="月"?"month":i.value==="年"||i.value==="累计"?"year":"date"),p=e.computed(()=>["日","周",o.titleOne,"月","年","累计"].includes(i.value)),m=e.computed(()=>i.value==="月"?"选择月份":i.value==="年"?"选择年份":i.value==="累计"?"累计":"选择时间"),u=e.computed({get:()=>i.value==="月"?Array.isArray(o.day)&&o.day.length>0?String(o.day[0]):"":i.value==="年"||i.value==="累计"?Array.isArray(o.month)&&o.month.length>0?String(o.month[0]):"":Array.isArray(o.time)&&o.time.length>0?String(o.time[0]):"",set:d=>{if(!d){i.value==="月"?c("update:day",[]):i.value==="年"||i.value==="累计"?c("update:month",[]):c("update:time",[]);return}const a=new Date(d);if(i.value==="月"){const s=new Date(a.getFullYear(),a.getMonth(),1),v=new Date(a.getFullYear(),a.getMonth()+1,0);c("update:day",[r(s),r(v)])}else if(i.value==="年"||i.value==="累计"){const s=a.getFullYear();c("update:month",[`${s}-01-01`,`${s}-12-31`])}else{const s=r(a);c("update:time",[s,s])}}}),D=d=>{const a=new Date;if(d===o.titleOne){const s=new Date(a.getFullYear(),a.getMonth(),a.getDate()),v=new Date(s);v.setHours(23,59,59,999),c("update:time",[r(s),r(v)]),c("dateChange",[r(s),r(v)])}else if(d==="月"){const s=new Date(a.getFullYear(),a.getMonth(),1);c("update:day",[r(s),r(a)]),c("dateChange",[r(s),r(a)])}else if(d==="年"){const s=new Date(a.getFullYear(),0,1);c("update:month",[r(s),r(a)]),c("dateChange",[r(s),r(a)])}else if(d==="累计")c("dateChange",null);else{const s=new Date(a.getFullYear(),0,1);c("dateChange",[r(s),r(a)])}},k=d=>{if(!d){c("dateChange",null);return}const a=new Date(d);if(i.value===o.titleOne||i.value==="日"){const s=new Date(a.getFullYear(),a.getMonth(),a.getDate()),v=new Date(a.getFullYear(),a.getMonth(),a.getDate(),23,59,59,999);c("update:time",[r(s),r(v)]),c("dateChange",[r(s),r(v)])}else if(i.value==="月"){const s=new Date(a.getFullYear(),a.getMonth(),1),v=new Date(a.getFullYear(),a.getMonth()+1,0,23,59,59,999);c("update:day",[r(s),r(v)]),c("dateChange",[r(s),r(v)])}else if(i.value==="年"){const s=new Date(a.getFullYear(),0,1),v=new Date(a.getFullYear(),11,31,23,59,59,999);c("update:month",[r(s),r(v)]),c("dateChange",[r(s),r(v)])}},y=d=>{i.value=d,D(d)};return n({onTimeFn:y}),(d,a)=>(e.openBlock(),e.createElementBlock("div",Ne,[t.showTime?(e.openBlock(),e.createElementBlock("div",Te,[t.showD?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(["filter-btn",{active:i.value===t.titleOne}]),onClick:a[0]||(a[0]=s=>y(t.titleOne))},e.toDisplayString(t.titleOne),3)):e.createCommentVNode("",!0),t.showM?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(["filter-btn",{active:i.value==="月"}]),onClick:a[1]||(a[1]=s=>y("月"))}," 月 ",2)):e.createCommentVNode("",!0),t.showY?(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(["filter-btn",{active:i.value==="年"}]),onClick:a[2]||(a[2]=s=>y("年"))}," 年 ",2)):e.createCommentVNode("",!0),t.showLj?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(["filter-btn",{active:i.value==="累计"}]),onClick:a[3]||(a[3]=s=>y("累计"))}," 累计 ",2)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Me,[t.titleOne!="周"?(e.openBlock(),e.createElementBlock("span",Ve,"选择时间:")):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createBlock(z,{key:b.value,modelValue:u.value,"onUpdate:modelValue":a[4]||(a[4]=s=>u.value=s),type:b.value,placeholder:m.value,disabled:i.value==="累计",clearable:"",size:"small",dark:"",onChange:k},null,8,["modelValue","type","placeholder","disabled"])):e.createCommentVNode("",!0)])]))}}),Le=M(Fe,[["__scopeId","data-v-e501d06e"]]),O=t=>{const n=t.toString();if(n.replace(".","").length>4){const l=Math.abs(t);return l>=1e8?{value:(t/1e8).toFixed(2),unit:"亿"}:l>=1e7?{value:(t/1e7).toFixed(2),unit:"千万"}:l>=1e4?{value:(t/1e4).toFixed(2),unit:"万"}:{value:Number(t.toFixed(2)).toString(),unit:""}}return{value:n,unit:""}},Se={class:"echsrtLine"},Ae=e.defineComponent({__name:"ChartLine",props:{chartData:{type:Object,default:()=>({xAxisData:[],yAxisData:[]})},typeData:{type:Array,default:()=>[]},unit:{type:String,default:""},xUnit:{type:String,default:""},left:{type:Number,default:2},right:{type:Number,default:3},bottom:{type:Number,default:10},unitLeft:{type:Number,default:9},legendLeft:{type:Number,default:0}},setup(t){const n=t,l=e.computed(()=>n.typeData.map((k,y)=>{var d,a;return{type:k.name,data:((a=(d=n.chartData)==null?void 0:d.yAxisData)==null?void 0:a[y])||[],color:k.color||"#00ff88",unit:k.unit||n.unit}})),o=e.computed(()=>l.value.some(k=>(k.data||[]).some(y=>y!=null&&!Number.isNaN(Number(y))))),c=e.ref(null);let r=null,g=null,E=0;const i=()=>{var y,d;const k=l.value.map(a=>({name:a.type,type:"line",smooth:!0,symbol:"none",data:a.data,lineStyle:{width:3,color:a.color},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:a.color},{offset:1,color:"transparent"}]}}}));return{backgroundColor:"transparent",color:l.value.map(a=>a.color),tooltip:{trigger:"axis",appendToBody:!0,backgroundColor:"rgba(0,0,0,0.8)",borderColor:"#00ffff",extraCssText:"z-index: 1000; pointer-events: auto;",textStyle:{color:"#fff",fontSize:12},axisPointer:{type:"line",lineStyle:{color:"#00ffff",type:"dashed"}},formatter:a=>{const s=a;if(!(s!=null&&s.length))return"";const v=s[0].name??"";let _=`<div style="margin-bottom: 5px;">${v}${v?n.xUnit:""}</div>`;return s.forEach($=>{const V=$.value!==void 0&&$.value!==null?O($.value).value+O($.value).unit:"-";_+=`
|
|
2
|
+
<div style="display: flex; justify-content: space-between; align-items: center; gap: 15px; margin-bottom: 3px">
|
|
3
|
+
<span style="display: flex; align-items: center; gap: 4px;">
|
|
4
|
+
${$.marker||""}
|
|
5
|
+
<span style="color: #ccc;">${$.seriesName||""}</span>
|
|
6
|
+
</span>
|
|
7
|
+
<span style="font-weight: bold;">
|
|
8
|
+
${V} <span style="font-size: 10px; font-weight: normal; color: #888;">${n.unit||""}</span>
|
|
9
|
+
</span>
|
|
10
|
+
</div>
|
|
11
|
+
`}),_}},legend:{data:((y=n.typeData)==null?void 0:y.map(a=>a.name))||[],icon:"path://M4,0 L12,0 Q16,0 16,4 L16,4 Q16,8 12,8 L4,8 Q0,8 0,4 L0,4 Q0,0 4,0 Z",itemWidth:12,itemHeight:6,align:"left",textStyle:{color:"#fff",fontSize:12},top:20,left:n.legendLeft?n.legendLeft:"center"},grid:{left:`${n.left}%`,right:`${n.right}%`,top:57,bottom:`${n.bottom}%`,containLabel:!0},xAxis:{type:"category",data:((d=n.chartData)==null?void 0:d.xAxisData)||[],boundaryGap:!1,axisLine:{lineStyle:{color:"#333"}},axisTick:{show:!1},axisLabel:{color:"rgba(255,255,255,0.8)",fontSize:11,fontWeight:300,margin:10,rotate:0}},yAxis:{type:"value",min:o.value?void 0:0,max:o.value?void 0:100,interval:o.value?void 0:25,splitNumber:4,nameGap:0,axisLine:{show:!1},axisTick:{show:!1},splitLine:{lineStyle:{color:"rgba(255,255,255,0.08)"}},axisLabel:{color:"rgba(255,255,255,0.8)",fontSize:12,fontWeight:300,formatter:a=>a>=1e8?a/1e8+"亿":a>=1e6?a/1e6+"百万":a>=1e4?a/1e4+"万":String(a)}},series:k}},b=()=>{g&&(clearInterval(g),g=null)},p=()=>{r&&(b(),r.dispatchAction({type:"showTip",seriesIndex:0,dataIndex:0}),g=setInterval(()=>{var y,d;const k=((d=(y=n.chartData)==null?void 0:y.xAxisData)==null?void 0:d.length)||0;k&&(E=(E+1)%k,r==null||r.dispatchAction({type:"showTip",seriesIndex:0,dataIndex:E}))},5e3))},m=()=>{var k,y;c.value&&(r=te.init(c.value),r.setOption(i()),(y=(k=n.chartData)==null?void 0:k.yAxisData)!=null&&y.length&&setTimeout(()=>p(),5e3))},u=()=>{r&&r.setOption(i(),!0)},D=()=>{r==null||r.resize()};return e.onMounted(()=>{m(),window.addEventListener("resize",D)}),e.onUnmounted(()=>{b(),r==null||r.dispose(),window.removeEventListener("resize",D)}),e.watch(()=>[n.chartData,n.typeData,n.unit,n.xUnit],()=>u(),{deep:!0,flush:"post"}),(k,y)=>(e.openBlock(),e.createElementBlock("div",Se,[e.createElementVNode("div",{ref_key:"chartRef",ref:c,class:"chart-container"},null,512),e.createElementVNode("div",{class:"unit",style:e.normalizeStyle({left:t.unitLeft+"px"})},e.toDisplayString(t.unit),5)]))}}),Pe=M(Ae,[["__scopeId","data-v-35a8b884"]]);function Ye(){return{activeTime:"日",time:[],day:[],month:[],activeTimeModel1:"",activeEnergy:"0",typeIndex:1,unit:"kW·h"}}function Z(){return{summary:{originalEnergy:0,realtimeEnergy:0,monthCumulativeEnergy:0,yearCumulativeEnergy:0,totalCumulativeEnergy:0},typeData:[{name:"原始能耗",color:"#F2993D"},{name:"实时能耗",color:"#FFFC3F"},{name:"节能量",color:"#28FF87"}],chartData:{xAxisData:[],yAxisData:[]},xUnit:"日"}}const ze={class:"leftBottom"},Oe={key:0,class:"hc-loading"},Ue={class:"typeList"},Ie=["onClick"],We={class:"num"},qe={class:"unit-small"},He={class:"name"},je={class:"unit"},Re={class:"chart-wrapper"},Qe={class:"energy-tabs"},Ke=["onClick"],Xe=e.defineComponent({name:"HcEnergyAnalysis",__name:"EnergyAnalysis",props:e.mergeModels({title:{default:"能耗分析"},loading:{type:Boolean,default:!1},view:{default:()=>Z()},energyTypes:{default:()=>[{label:"电",value:"0",unit:"kW·h"},{label:"水",value:"1",unit:"m³"},{label:"气",value:"2",unit:"m³"}]},typeList:{default:()=>[{name:"原始能耗",unit:"(kW·h)",value:"originalEnergy"},{name:"实时能耗",unit:"(kW·h)",date:"日",value:"realtimeEnergy"},{name:"月累计能耗",unit:"(kW·h)",value:"monthCumulativeEnergy",date:"月"},{name:"年累计能耗",unit:"(kW·h)",value:"yearCumulativeEnergy",date:"年"},{name:"累计总能耗",unit:"(kW·h)",value:"totalCumulativeEnergy",date:"累计"}]}},{query:{required:!0},queryModifiers:{}}),emits:e.mergeModels(["query-change"],["update:query"]),setup(t,{emit:n}){const l=t,o=e.useModel(t,"query"),c=n,r=e.ref(l.typeList.map(p=>({...p})));e.watch(()=>o.value.unit,p=>{r.value=r.value.map(m=>({...m,unit:`(${p})`}))},{immediate:!0}),e.watch(()=>l.typeList,p=>{r.value=p.map(m=>({...m,unit:`(${o.value.unit})`}))},{deep:!0});const g=e.ref(null);function E(){c("query-change")}function i(p){o.value.activeEnergy=p;const m=l.energyTypes.find(u=>u.value===p);m&&(o.value.unit=m.unit),c("query-change")}function b(p,m){var u;o.value.typeIndex=m,p.date?(u=g.value)==null||u.onTimeFn(p.date):c("query-change")}return(p,m)=>(e.openBlock(),e.createBlock($e,{title:t.title},{default:e.withCtx(()=>[e.createElementVNode("div",ze,[t.loading?(e.openBlock(),e.createElementBlock("div",Oe,[...m[5]||(m[5]=[e.createElementVNode("span",{class:"hc-loading__spinner"},null,-1)])])):e.createCommentVNode("",!0),e.withDirectives(e.createVNode(Le,{activeTime:o.value.activeTime,"onUpdate:activeTime":m[0]||(m[0]=u=>o.value.activeTime=u),time:o.value.time,"onUpdate:time":m[1]||(m[1]=u=>o.value.time=u),day:o.value.day,"onUpdate:day":m[2]||(m[2]=u=>o.value.day=u),month:o.value.month,"onUpdate:month":m[3]||(m[3]=u=>o.value.month=u),activeTimeModel1:o.value.activeTimeModel1,"onUpdate:activeTimeModel1":m[4]||(m[4]=u=>o.value.activeTimeModel1=u),"type-number":"2",ref_key:"timeControlRef",ref:g,onDateChange:E},null,8,["activeTime","time","day","month","activeTimeModel1"]),[[e.vShow,o.value.typeIndex!==0]]),e.createElementVNode("div",null,[e.createElementVNode("ul",Ue,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(u,D)=>(e.openBlock(),e.createElementBlock("li",{key:u.name,onClick:k=>b(u,D)},[e.createElementVNode("p",We,[e.createElementVNode("span",null,e.toDisplayString(e.unref(O)(t.view.summary[u.value]||0).value),1),e.createElementVNode("span",qe,e.toDisplayString(e.unref(O)(t.view.summary[u.value]||0).unit),1)]),e.createElementVNode("div",{class:e.normalizeClass(["name_main",{active:o.value.typeIndex!==0?u.date===o.value.activeTime:D===0}])},[e.createElementVNode("p",He,e.toDisplayString(u.name),1),e.createElementVNode("p",je,e.toDisplayString(u.unit),1)],2)],8,Ie))),128))]),e.createElementVNode("div",Re,[e.createElementVNode("div",Qe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.energyTypes,u=>(e.openBlock(),e.createElementBlock("span",{key:u.value,class:e.normalizeClass(["energy-tab",{active:o.value.activeEnergy===u.value}]),onClick:D=>i(u.value)},e.toDisplayString(u.label),11,Ke))),128))]),e.createVNode(Pe,{typeData:t.view.typeData,legendLeft:70,right:4,unitLeft:9,unit:o.value.unit,xUnit:t.view.xUnit,chartData:t.view.chartData},null,8,["typeData","unit","xUnit","chartData"])])])])]),_:1},8,["title"]))}}),U=M(Xe,[["__scopeId","data-v-076a9047"]]),X={日:"时",月:"日",年:"月",累计:"月"},Ge=t=>{const n=t?new Date(t):new Date;return Number.isNaN(n.getTime())?31:new Date(n.getFullYear(),n.getMonth()+1,0).getDate()},Ze=(t,n)=>{if(t==="日")return Array.from({length:24},(l,o)=>`${o}`.padStart(2,"0"));if(t==="月"){const l=Ge(n);return Array.from({length:l},(o,c)=>`${c+1}`)}return Array.from({length:12},(l,o)=>`${o+1}`)};function Je(t){let n="",l="";return t.activeTime1==="日"?(l="hourly",n=t.time1[0]):t.activeTime1==="月"?(l="daily",n=t.day1[0]):t.activeTime1==="年"?(l="monthly",n=t.month1[0]):t.activeTime1==="累计"?(l="cumulative",n=t.month1[0]):(l="monthly",n=t.month1[0]),{selectedDate:n,timeDimension:l}}function et(t,n){var y,d,a,s,v,_,$,V,F;const l=(t==null?void 0:t.series)||[],{activeTime:o,typeIndex:c,unit:r,monthDate:g}=n,E=Ze(o,g);if(o==="累计"){let f=[];if(l.length>0){const x=[...l].sort((C,L)=>{var S,A;return(((S=L.dataPoints)==null?void 0:S.length)||0)-(((A=C.dataPoints)==null?void 0:A.length)||0)})[0];(y=x==null?void 0:x.dataPoints)!=null&&y.length&&(f=x.dataPoints.map(C=>C.timeLabel))}f.length||(f=E);const T=["#28FF87","#F2993D","#0783FA","#1CC767"];return{xUnit:X[o]||"月",typeData:l.map((x,C)=>({name:x.name,color:T[C%T.length]})),chartData:{xAxisData:f,yAxisData:l.map(x=>{var C;return(C=x.dataPoints)!=null&&C.length?x.dataPoints.map(L=>L.energyKwh):f.map(()=>null)})}}}if(c===0){const f=l.find(C=>C.name==="原始能耗"),T=((d=f==null?void 0:f.dataPoints)==null?void 0:d.map(C=>C.timeLabel))||E,x=((a=f==null?void 0:f.dataPoints)==null?void 0:a.map(C=>C.energyKwh))||[];return{xUnit:"月",typeData:[{name:"原始能耗",color:"#F2993D",unit:r}],chartData:{xAxisData:T,yAxisData:x.length?[x]:[T.map(()=>null)]}}}const i=l.find(f=>f.name==="实时能耗"),b=l.find(f=>f.name==="原始能耗"),p=l.find(f=>f.name==="节能量");let m=[];(s=b==null?void 0:b.dataPoints)!=null&&s.length?m=b.dataPoints.map(f=>f.timeLabel):(v=i==null?void 0:i.dataPoints)!=null&&v.length?m=i.dataPoints.map(f=>f.timeLabel):(_=p==null?void 0:p.dataPoints)!=null&&_.length&&(m=p.dataPoints.map(f=>f.timeLabel)),m.length||(m=E);const u=(($=i==null?void 0:i.dataPoints)==null?void 0:$.map(f=>f.energyKwh))||[],D=((V=b==null?void 0:b.dataPoints)==null?void 0:V.map(f=>f.energyKwh))||[],k=((F=p==null?void 0:p.dataPoints)==null?void 0:F.map(f=>f.energyKwh))||[];return{xUnit:X[o]||"日",typeData:[{name:"原始能耗",color:"#F2993D",unit:r},{name:"实时能耗",color:"#FFFC3F",unit:r},{name:"节能量",color:"#28FF87",unit:r}],chartData:{xAxisData:m,yAxisData:[D.length?D:m.map(()=>null),u.length?u:m.map(()=>null),k.length?k:m.map(()=>null)]}}}const q=U;q.install=t=>{t.component("HcEnergyAnalysis",U),t.component("EnergyAnalysis",U)};const tt=[I,W,q],nt={install(t){tt.forEach(n=>{t.use(n)})}};exports.Button=I;exports.DatePicker=W;exports.EnergyAnalysis=q;exports.buildEnergyQueryParams=Je;exports.createDefaultEnergyQuery=Ye;exports.createDefaultEnergyView=Z;exports.default=nt;exports.transformEnergyDashboard=et;
|