nxd-plugin 1.8.21 → 1.8.22

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.
Files changed (93) hide show
  1. package/dist/chunks/YCServiceSummary-PPstZeY5.mjs +2 -0
  2. package/dist/chunks/{component-AiChat-C_DePYiS.mjs → component-AiChat-AMGDZOnM.mjs} +691 -691
  3. package/dist/chunks/{component-AqiMonitor-B4ZLQZOd.mjs → component-AqiMonitor-CbRqtu9p.mjs} +1 -1
  4. package/dist/chunks/{component-ChartCumulativePre-DQqNwEkp.mjs → component-ChartCumulativePre-BTqI2llc.mjs} +2 -2
  5. package/dist/chunks/{component-ChartServiceMaterial-BSXCSmjT.mjs → component-ChartServiceMaterial-B09CYvj1.mjs} +2 -2
  6. package/dist/chunks/{component-Duty-DnkxgYav.mjs → component-Duty-B_xLIwLc.mjs} +2 -2
  7. package/dist/chunks/{component-EarlyWarningStatistic-DZIISSb4.mjs → component-EarlyWarningStatistic-CuEZKyRd.mjs} +2 -2
  8. package/dist/chunks/{component-EarlyWarningStatistic2-vSCEWtaq.mjs → component-EarlyWarningStatistic2-CwxVVXDz.mjs} +2 -2
  9. package/dist/chunks/{component-Forecast72h-DicwnEaB.mjs → component-Forecast72h-DWuJmxhN.mjs} +2 -2
  10. package/dist/chunks/{component-GeologyLiveAlarm-DcLkKxQi.mjs → component-GeologyLiveAlarm-D0Qp3NkC.mjs} +2 -2
  11. package/dist/chunks/{component-GridForecastMsg-B1J5xBf1.mjs → component-GridForecastMsg-CACyyiD4.mjs} +2 -2
  12. package/dist/chunks/{component-HDSeaLegend-ubUWj-K6.mjs → component-HDSeaLegend-BKmNgyVy.mjs} +1 -1
  13. package/dist/chunks/{component-HdCameraList-DE5T_NCe.mjs → component-HdCameraList-CjERf58T.mjs} +4 -4
  14. package/dist/chunks/{component-HdFarmStation-Dr16UrnR.mjs → component-HdFarmStation-B7LiZJNn.mjs} +5 -4
  15. package/dist/chunks/{component-HdFarmStationDialog-DNAo261X.mjs → component-HdFarmStationDialog-DGaloDuc.mjs} +266 -282
  16. package/dist/chunks/{component-HdForecastProducts-DW94eZkZ.mjs → component-HdForecastProducts-Cqm11AZJ.mjs} +2 -2
  17. package/dist/chunks/{component-HdHeatChart-QyRCV140.mjs → component-HdHeatChart-DBrkJ7wc.mjs} +2 -2
  18. package/dist/chunks/{component-HdHeatChartDialog-CwUk9qQm.mjs → component-HdHeatChartDialog-COXAQ7bQ.mjs} +3 -3
  19. package/dist/chunks/{component-HdHeatService-Cbsa46Kg.mjs → component-HdHeatService-BytLjsOH.mjs} +2 -2
  20. package/dist/chunks/{component-HdInsectDetailList-Br06iK7W.mjs → component-HdInsectDetailList-Burje-lq.mjs} +2 -2
  21. package/dist/chunks/{component-HdInsectList-Djo-0pVh.mjs → component-HdInsectList-BmvZhDkG.mjs} +2 -2
  22. package/dist/chunks/component-HdMajorActivity-fd-kVYVY.mjs +221 -0
  23. package/dist/chunks/{component-HdObservation-5k_0GZGV.mjs → component-HdObservation-CEBvwX20.mjs} +4 -4
  24. package/dist/chunks/{component-HdPreSituation-B0yXJZVG.mjs → component-HdPreSituation-C9k5S8xb.mjs} +4 -4
  25. package/dist/chunks/{component-HdQxServiceEffects-Ds1vj_DV.mjs → component-HdQxServiceEffects-afWY5O0D.mjs} +2 -2
  26. package/dist/chunks/{component-HdRadarList-NLZ0YNV8.mjs → component-HdRadarList-CcQfA_IK.mjs} +3 -3
  27. package/dist/chunks/{component-HdRadarTime-D7-YoOkE.mjs → component-HdRadarTime-BinpFlES.mjs} +2 -2
  28. package/dist/chunks/{component-HdRadarTimeLine-CJ0_ejKf.mjs → component-HdRadarTimeLine-DsMjdctK.mjs} +2 -2
  29. package/dist/chunks/{component-HdRisk-fuJNWgJD.mjs → component-HdRisk-CtU4tAFm.mjs} +3 -3
  30. package/dist/chunks/{component-HdSeaCase-D21rq9pv.mjs → component-HdSeaCase-BSUlsIx4.mjs} +2 -2
  31. package/dist/chunks/{component-HdServiceMarterial-CgcHHy6J.mjs → component-HdServiceMarterial-BVRAV14z.mjs} +3 -3
  32. package/dist/chunks/{component-HdServiceRequirements-D2EdgZjN.mjs → component-HdServiceRequirements-CuKHpG2x.mjs} +3 -3
  33. package/dist/chunks/{component-HdSoil-D58PIu6D.mjs → component-HdSoil-Cg5eJ24C.mjs} +3 -3
  34. package/dist/chunks/{component-HdSoilDetailList-BpbPwCjd.mjs → component-HdSoilDetailList-BXkegoW8.mjs} +2 -2
  35. package/dist/chunks/{component-HdStationTem-qqZ5UXom.mjs → component-HdStationTem-BDWsPUTr.mjs} +4 -4
  36. package/dist/chunks/{component-HdSuggestion-Dbdlr5zS.mjs → component-HdSuggestion-Z8vAFQcx.mjs} +3 -3
  37. package/dist/chunks/{component-HdThreeWeatherTrend-zSmR2LIO.mjs → component-HdThreeWeatherTrend-D76c14hh.mjs} +4 -4
  38. package/dist/chunks/{component-HdWaveForcast-DllKzNgu.mjs → component-HdWaveForcast-BqdcmF-9.mjs} +3 -3
  39. package/dist/chunks/{component-HighQuality-BNVnCK0d.mjs → component-HighQuality-CxiEeJ6T.mjs} +2 -2
  40. package/dist/chunks/{component-HighWayEarlyWarningRed-CwzMQCqp.mjs → component-HighWayEarlyWarningRed-CXddcWf3.mjs} +2 -2
  41. package/dist/chunks/{component-HighWayFreeze-Ds2Hz7pR.mjs → component-HighWayFreeze-Ce2mS-fo.mjs} +2 -2
  42. package/dist/chunks/{component-HighwayLiveAlarm-Do4pwmnJ.mjs → component-HighwayLiveAlarm-cmXVG7kx.mjs} +2 -2
  43. package/dist/chunks/{component-HighwayLiveAlarmNew-DoWns_RH.mjs → component-HighwayLiveAlarmNew-DIh8-E-a.mjs} +3 -3
  44. package/dist/chunks/{component-HighwayStations-BBQa33JX.mjs → component-HighwayStations-DeOsPYJ4.mjs} +2 -2
  45. package/dist/chunks/{component-HighwayWeatherForecast-C-kwyE6Q.mjs → component-HighwayWeatherForecast-OTwm4aUB.mjs} +5 -5
  46. package/dist/chunks/{component-IframeWeb-uP8unwJj.mjs → component-IframeWeb-DJpLhA93.mjs} +1 -1
  47. package/dist/chunks/{component-ImageGeneration-CLAge4U1.mjs → component-ImageGeneration-CPp8qG9P.mjs} +1 -1
  48. package/dist/chunks/{component-IntroducePic-C8X8Y6hx.mjs → component-IntroducePic-DMbanecs.mjs} +2 -2
  49. package/dist/chunks/{component-LithiumBatteryMiningArea-xc5REiPe.mjs → component-LithiumBatteryMiningArea-BHUIxPQA.mjs} +2 -2
  50. package/dist/chunks/{component-MapPopup-DXRLi4wJ.mjs → component-MapPopup-CG1DlFH_.mjs} +1 -1
  51. package/dist/chunks/{component-MaterialPreview-B9iSbEIO.mjs → component-MaterialPreview-DFtr5Zsw.mjs} +2 -2
  52. package/dist/chunks/{component-PieLegend-DPwAQJxO.mjs → component-PieLegend-CUhuvyyt.mjs} +1 -1
  53. package/dist/chunks/{component-PrecipitationRanking-CwP3NZlf.mjs → component-PrecipitationRanking-CvuHO8-L.mjs} +4 -4
  54. package/dist/chunks/{component-RadarChart-BxEzHVOE.mjs → component-RadarChart-BtV2B9NQ.mjs} +2 -2
  55. package/dist/chunks/{component-RadarLegend-DVoe6ojQ.mjs → component-RadarLegend-uI-vbK2B.mjs} +1 -1
  56. package/dist/chunks/{component-RadarShortTerm-7v_EauV4.mjs → component-RadarShortTerm-C3yIFfjc.mjs} +4 -4
  57. package/dist/chunks/{component-RadarTime-CT8WOoJR.mjs → component-RadarTime-Cy5ezbus.mjs} +2 -2
  58. package/dist/chunks/{component-RenderMarkdown-CxAwaqBM.mjs → component-RenderMarkdown-Cf79iCPF.mjs} +2 -2
  59. package/dist/chunks/{component-ReservoirLiveAlarm-CWkaa2z8.mjs → component-ReservoirLiveAlarm-DvMi5KuT.mjs} +3 -3
  60. package/dist/chunks/{component-ServiceMaterial-CNjEwMGZ.mjs → component-ServiceMaterial-tM5xlUk5.mjs} +2 -2
  61. package/dist/chunks/{component-ServiceMaterialsBtn-DWBa1Hpa.mjs → component-ServiceMaterialsBtn-CkBLC8_V.mjs} +1 -1
  62. package/dist/chunks/{component-StationDialog-usekZclX.mjs → component-StationDialog-ThXd8RYz.mjs} +3 -3
  63. package/dist/chunks/{component-StationList-B0bav8JG.mjs → component-StationList-CTE-wJJe.mjs} +4 -4
  64. package/dist/chunks/{component-TimeBasedForecast-l0RpjVYi.mjs → component-TimeBasedForecast-BH14WI1X.mjs} +4 -4
  65. package/dist/chunks/{component-Typhoon-Cf8qko_n.mjs → component-Typhoon-BAh6wD79.mjs} +2 -2
  66. package/dist/chunks/{component-WarningLine-B2HyTDUW.mjs → component-WarningLine-DXy9x9WQ.mjs} +2 -2
  67. package/dist/chunks/{component-WarningSignal-Cy8MQ6oC.mjs → component-WarningSignal-omOhQ4Oe.mjs} +3 -3
  68. package/dist/chunks/{component-WeatherForecast-B-MV7oqR.mjs → component-WeatherForecast-CdccA6XY.mjs} +4 -4
  69. package/dist/chunks/{component-YCDataMonitor-p7tSzU_b.mjs → component-YCDataMonitor-b_yLhnlt.mjs} +2 -2
  70. package/dist/chunks/{component-YCDataService-BBVuyu-D.mjs → component-YCDataService-BuXN9Hbm.mjs} +4 -4
  71. package/dist/chunks/{component-YCHighWaySummary-BH34LVVj.mjs → component-YCHighWaySummary-BJ5NCRVX.mjs} +2 -2
  72. package/dist/chunks/{component-YCHome-CtSa__qB.mjs → component-YCHome-KZ-r1BIn.mjs} +4 -4
  73. package/dist/chunks/{component-YCHomeLegend-DqzGcZgD.mjs → component-YCHomeLegend-CI9bN8C9.mjs} +1 -1
  74. package/dist/chunks/{component-YCLoginNew-zgG8m4VV.mjs → component-YCLoginNew-BwaX10Om.mjs} +13 -13
  75. package/dist/chunks/component-YCServiceSummary-DyWhK07a.mjs +509 -0
  76. package/dist/components/HdFarmStationDialog/HdFarmStationDialog.vue.d.ts +0 -69
  77. package/dist/components/HdMajorActivity/HdMajorActivity.vue.d.ts +30 -0
  78. package/dist/components/YCServiceSummary/YCAIChatPanel.vue.d.ts +20 -2
  79. package/dist/components/YCServiceSummary/YCServiceSummary.vue.d.ts +19 -2
  80. package/dist/components/YCServiceSummary/YCServiceSummaryRefineAnalysis.vue.d.ts +21 -2
  81. package/dist/components/YCServiceSummary/YCServiceSummaryTrafficAnalysis.vue.d.ts +21 -2
  82. package/dist/index.d.ts +2 -1
  83. package/dist/nxd-plugin.mjs +75 -74
  84. package/dist/styles/component-HdCameraList.css +1 -1
  85. package/dist/styles/component-HdFarmStation.css +1 -1
  86. package/dist/styles/component-HdFarmStationDialog.css +1 -1
  87. package/dist/styles/component-HdMajorActivity.css +1 -0
  88. package/dist/styles/component-YCLoginNew.css +1 -1
  89. package/dist/styles/component-YCServiceSummary.css +1 -1
  90. package/package.json +1 -1
  91. package/dist/chunks/YCServiceSummary-9W7E-cRv.mjs +0 -2
  92. package/dist/chunks/component-YCServiceSummary-KF3yjd4u.mjs +0 -354
  93. package/dist/components/YCServiceSummary/types.d.ts +0 -14
@@ -0,0 +1,509 @@
1
+ import { n as e } from "./component-AqiMonitor-CbRqtu9p.mjs";
2
+ import { a as t } from "./component-AiChat-AMGDZOnM.mjs";
3
+ import { Fragment as n, computed as r, createCommentVNode as i, createElementBlock as a, createElementVNode as o, createStaticVNode as s, createTextVNode as c, createVNode as l, defineComponent as u, guardReactiveProps as d, mergeProps as f, nextTick as p, normalizeClass as m, normalizeProps as h, onBeforeUnmount as g, onMounted as _, openBlock as v, ref as y, renderList as b, toDisplayString as x, vModelText as S, watch as C, withDirectives as w } from "vue";
4
+ import * as T from "echarts";
5
+ //#region src/components/YCServiceSummary/YCAIChatPanel.vue?vue&type=script&setup=true&lang.ts
6
+ var E = { class: "YCAIChatPanel" }, D = {
7
+ key: 0,
8
+ class: "YCAIChatPanel-message-avatar"
9
+ }, O = { class: "YCAIChatPanel-message-body" }, k = {
10
+ key: 0,
11
+ class: "YCAIChatPanel-message-tip"
12
+ }, A = {
13
+ key: 0,
14
+ class: "YCAIChatPanel-subMenu"
15
+ }, j = ["onClick"], M = { class: "YCAIChatPanel-footer" }, N = { class: "YCAIChatPanel-mainMenu" }, P = ["onClick"], F = { class: "YCAIChatPanel-inputBar" }, ee = ["disabled"], I = /* @__PURE__ */ e(/* @__PURE__ */ u({
16
+ __name: "YCAIChatPanel",
17
+ props: [
18
+ "appKey",
19
+ "appSalt",
20
+ "baseHttp",
21
+ "interfaceBaseHttp",
22
+ "onlyofficeCallbackUrl",
23
+ "username",
24
+ "password",
25
+ "ids"
26
+ ],
27
+ setup(e) {
28
+ let t = y(null), c = y(null), l = y(""), u = y("data"), d = [
29
+ {
30
+ key: "data",
31
+ label: "查数据"
32
+ },
33
+ {
34
+ key: "material",
35
+ label: "查材料"
36
+ },
37
+ {
38
+ key: "knowledge",
39
+ label: "查知识"
40
+ }
41
+ ], f = {
42
+ data: [
43
+ {
44
+ id: "d1",
45
+ title: "近3小时最大降水",
46
+ content: "查询近3小时最大降水分布"
47
+ },
48
+ {
49
+ id: "d2",
50
+ title: "未来24小时降水预报",
51
+ content: "查询未来24小时降水预报"
52
+ },
53
+ {
54
+ id: "d3",
55
+ title: "当前风速风向",
56
+ content: "查询当前风速风向"
57
+ }
58
+ ],
59
+ material: [
60
+ {
61
+ id: "m1",
62
+ title: "交通气象服务材料",
63
+ content: "生成交通气象服务材料"
64
+ },
65
+ {
66
+ id: "m2",
67
+ title: "地质灾害风险材料",
68
+ content: "生成地质灾害风险材料"
69
+ },
70
+ {
71
+ id: "m3",
72
+ title: "水库灾害风险材料",
73
+ content: "生成水库灾害风险材料"
74
+ }
75
+ ],
76
+ knowledge: [
77
+ {
78
+ id: "k1",
79
+ title: "公路气象服务规范",
80
+ content: "查询公路气象服务规范"
81
+ },
82
+ {
83
+ id: "k2",
84
+ title: "预警等级定义",
85
+ content: "查询预警等级定义"
86
+ },
87
+ {
88
+ id: "k3",
89
+ title: "气象服务流程",
90
+ content: "查询气象服务流程"
91
+ }
92
+ ]
93
+ }, h = r(() => f[u.value] || []), g = r(() => !!l.value.trim()), _ = y([{
94
+ role: "ai",
95
+ lines: ["已接入实况与短临预报数据,请问需要什么帮助?"]
96
+ }]), C = async () => {
97
+ await p();
98
+ let e = c.value;
99
+ e && (e.scrollTop = e.scrollHeight);
100
+ }, T = (e) => {
101
+ u.value = e;
102
+ }, I = (e) => {
103
+ l.value = e.content || "", p(() => {
104
+ R(), t.value?.focus();
105
+ });
106
+ }, L = () => {
107
+ let e = l.value.trim();
108
+ e && (_.value.push({
109
+ role: "user",
110
+ lines: [e]
111
+ }), _.value.push({
112
+ role: "ai",
113
+ lines: ["已收到您的问题,正在为您查询相关数据…"]
114
+ }), l.value = "", p(() => {
115
+ R(), C();
116
+ }));
117
+ }, R = () => {
118
+ let e = t.value;
119
+ if (!e) return;
120
+ e.style.height = "auto", e.style.overflowY = "hidden";
121
+ let n = Math.min(e.scrollHeight, 300);
122
+ e.style.height = `${n}px`, e.style.overflowY = e.scrollHeight > 300 ? "auto" : "hidden";
123
+ }, z = () => {
124
+ R();
125
+ }, B = (e) => {
126
+ e.key === "Enter" && !e.shiftKey && (e.preventDefault(), L());
127
+ };
128
+ return (e, r) => (v(), a("div", E, [
129
+ r[4] ||= s("<div class=\"YCAIChatPanel-head\" data-v-b1d5df1f><div class=\"YCAIChatPanel-head-title\" data-v-b1d5df1f><span class=\"YCAIChatPanel-head-icon\" data-v-b1d5df1f></span><span data-v-b1d5df1f>智能助手</span></div><div class=\"YCAIChatPanel-head-status\" data-v-b1d5df1f><span class=\"YCAIChatPanel-head-dot\" data-v-b1d5df1f></span><span data-v-b1d5df1f>在线</span></div></div>", 1),
130
+ o("div", {
131
+ class: "YCAIChatPanel-messages",
132
+ ref_key: "messagesRef",
133
+ ref: c
134
+ }, [(v(!0), a(n, null, b(_.value, (e, t) => (v(), a("div", {
135
+ key: `${e.role}-${t}`,
136
+ class: m(["YCAIChatPanel-message", `YCAIChatPanel-message--${e.role}`])
137
+ }, [e.role === "ai" ? (v(), a("div", D, [...r[1] ||= [o("span", null, "AI", -1)]])) : i("", !0), o("div", O, [(v(!0), a(n, null, b(e.lines, (e, t) => (v(), a("div", {
138
+ key: t,
139
+ class: "YCAIChatPanel-message-line"
140
+ }, x(e), 1))), 128)), e.tip ? (v(), a("div", k, x(e.tip), 1)) : i("", !0)])], 2))), 128))], 512),
141
+ h.value.length ? (v(), a("div", A, [(v(!0), a(n, null, b(h.value, (e) => (v(), a("div", {
142
+ key: e.id || e.title,
143
+ class: "YCAIChatPanel-subMenu-item",
144
+ onClick: (t) => I(e)
145
+ }, [o("span", null, x(e.title), 1), r[2] ||= o("img", {
146
+ class: "YCAIChatPanel-subMenu-arrow",
147
+ src: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADIAgMAAADQNkYNAAAACVBMVEVHcEz////////mcEUwAAAAAnRSTlMAfVgnwLkAAAD9SURBVHja7dmhDcMwAETRJmoNwks8QqcwLgrpEpnGuCjAJDdlyVXFH4RUd/yDF8WSJV+yLMuyLDtxtxUn26DFLDWYFKnDZJEGTKp08ESNJ50mGFOEMUUYM4ljNo6pwQQTTDDBBBNMMMEEE0wwp2KuK8Y8DoqZpAYxs9QBxvUOMYs0AIYkxpDEGJIYQxJjUGIMSYwhiTEkMQYlxjghGCcE44RgnCCME4JxQjBOCMYJwjghGCcE44RgnBDM0wnAvJ0AjFhSeVJ4MqHEGJ5UnhSeTE4wZiC5QDILJwtPKk+2P0oe+m3nX6yDH9Jr6HSJXBnvr+/WPANlWZZl2Yn7ANxo7eonko39AAAAAElFTkSuQmCC",
148
+ alt: ""
149
+ }, null, -1)], 8, j))), 128))])) : i("", !0),
150
+ o("div", M, [o("div", N, [(v(), a(n, null, b(d, (e) => o("button", {
151
+ key: e.key,
152
+ class: m(["YCAIChatPanel-mainMenu-btn", { "is-active": u.value === e.key }]),
153
+ onClick: (t) => T(e.key)
154
+ }, x(e.label), 11, P)), 64))]), o("div", F, [w(o("textarea", {
155
+ ref_key: "textareaRef",
156
+ ref: t,
157
+ "onUpdate:modelValue": r[0] ||= (e) => l.value = e,
158
+ class: "YCAIChatPanel-textarea",
159
+ placeholder: "请输入问题",
160
+ rows: "1",
161
+ onInput: z,
162
+ onKeydown: B
163
+ }, null, 544), [[S, l.value]]), o("button", {
164
+ class: "YCAIChatPanel-send",
165
+ disabled: !g.value,
166
+ onClick: L,
167
+ title: "发送"
168
+ }, [...r[3] ||= [o("svg", {
169
+ viewBox: "0 0 24 24",
170
+ width: "16",
171
+ height: "16",
172
+ fill: "currentColor"
173
+ }, [o("path", { d: "M2.01 21L23 12 2.01 3 2 10l15 2-15 2z" })], -1)]], 8, ee)])])
174
+ ]));
175
+ }
176
+ }), [["__scopeId", "data-v-b1d5df1f"]]), L = { class: "YCServiceSummaryRefineAnalysis" }, R = /* @__PURE__ */ e(/* @__PURE__ */ u({
177
+ __name: "YCServiceSummaryRefineAnalysis",
178
+ props: [
179
+ "appKey",
180
+ "appSalt",
181
+ "baseHttp",
182
+ "interfaceBaseHttp",
183
+ "onlyofficeCallbackUrl",
184
+ "username",
185
+ "password",
186
+ "ids",
187
+ "theme"
188
+ ],
189
+ setup(e) {
190
+ let t = e, n = [
191
+ {
192
+ name: "沪宁高速沿线一段",
193
+ value: 1,
194
+ color: "#52c41a"
195
+ },
196
+ {
197
+ name: "沪宁高速沿线二段",
198
+ value: 1,
199
+ color: "#52c41a"
200
+ },
201
+ {
202
+ name: "沪宁高速沿线三段",
203
+ value: 1,
204
+ color: "#ff9b3d"
205
+ },
206
+ {
207
+ name: "沪宁高速沿线四段",
208
+ value: 1,
209
+ color: "#ff9b3d"
210
+ },
211
+ {
212
+ name: "一区一段",
213
+ value: 1,
214
+ color: "#52c41a"
215
+ },
216
+ {
217
+ name: "一区二段",
218
+ value: 1,
219
+ color: "#ff9b3d"
220
+ },
221
+ {
222
+ name: "一区三段",
223
+ value: 1,
224
+ color: "#52c41a"
225
+ },
226
+ {
227
+ name: "一区四段",
228
+ value: 1,
229
+ color: "#ff9b3d"
230
+ }
231
+ ], r = y(null), i = null, s = () => {
232
+ let e = r.value;
233
+ return e && getComputedStyle(e).getPropertyValue("--yc-chart-label").trim() || "#333";
234
+ }, c = () => {
235
+ if (!r.value) return;
236
+ let e = s();
237
+ i ||= T.init(r.value), i.setOption({
238
+ tooltip: {
239
+ trigger: "item",
240
+ formatter: "{b}"
241
+ },
242
+ series: [{
243
+ type: "pie",
244
+ radius: ["30%", "65%"],
245
+ center: ["50%", "50%"],
246
+ label: {
247
+ show: !0,
248
+ position: "outside",
249
+ fontSize: 11,
250
+ color: e,
251
+ formatter: "{b}"
252
+ },
253
+ labelLine: {
254
+ length: 10,
255
+ length2: 8
256
+ },
257
+ data: n.map((e) => ({
258
+ value: e.value,
259
+ name: e.name,
260
+ itemStyle: { color: e.color }
261
+ }))
262
+ }]
263
+ });
264
+ };
265
+ C(() => t.theme, async () => {
266
+ await p(), c();
267
+ });
268
+ let l = () => {
269
+ i?.resize();
270
+ };
271
+ return _(() => {
272
+ p(c), window.addEventListener("resize", l);
273
+ }), g(() => {
274
+ window.removeEventListener("resize", l), i && i.dispose();
275
+ }), (e, t) => (v(), a("div", L, [o("div", {
276
+ class: "YCServiceSummaryRefineAnalysis-chart",
277
+ ref_key: "chartRef",
278
+ ref: r
279
+ }, null, 512)]));
280
+ }
281
+ }), [["__scopeId", "data-v-db6111f2"]]), z = { class: "YCServiceSummaryTrafficAnalysis" }, B = /* @__PURE__ */ e(/* @__PURE__ */ u({
282
+ __name: "YCServiceSummaryTrafficAnalysis",
283
+ props: [
284
+ "appKey",
285
+ "appSalt",
286
+ "baseHttp",
287
+ "interfaceBaseHttp",
288
+ "onlyofficeCallbackUrl",
289
+ "username",
290
+ "password",
291
+ "ids",
292
+ "theme"
293
+ ],
294
+ setup(e) {
295
+ let t = e, n = [
296
+ {
297
+ name: "沪宁高速沿线一段",
298
+ value: 1,
299
+ color: "#52c41a"
300
+ },
301
+ {
302
+ name: "沪宁高速沿线二段",
303
+ value: 1,
304
+ color: "#ff9b3d"
305
+ },
306
+ {
307
+ name: "沪宁高速沿线三段",
308
+ value: 1,
309
+ color: "#52c41a"
310
+ },
311
+ {
312
+ name: "沪宁高速沿线四段",
313
+ value: 1,
314
+ color: "#ff9b3d"
315
+ },
316
+ {
317
+ name: "一区一段",
318
+ value: 1,
319
+ color: "#52c41a"
320
+ },
321
+ {
322
+ name: "一区二段",
323
+ value: 1,
324
+ color: "#ff9b3d"
325
+ },
326
+ {
327
+ name: "一区三段",
328
+ value: 1,
329
+ color: "#52c41a"
330
+ },
331
+ {
332
+ name: "一区四段",
333
+ value: 1,
334
+ color: "#ff9b3d"
335
+ }
336
+ ], r = y(null), i = null, s = () => {
337
+ let e = r.value;
338
+ return e && getComputedStyle(e).getPropertyValue("--yc-chart-label").trim() || "#333";
339
+ }, c = () => {
340
+ if (!r.value) return;
341
+ let e = s();
342
+ i ||= T.init(r.value), i.setOption({
343
+ tooltip: {
344
+ trigger: "item",
345
+ formatter: "{b}"
346
+ },
347
+ series: [{
348
+ type: "pie",
349
+ radius: ["30%", "65%"],
350
+ center: ["50%", "50%"],
351
+ label: {
352
+ show: !0,
353
+ position: "outside",
354
+ fontSize: 11,
355
+ color: e,
356
+ formatter: "{b}"
357
+ },
358
+ labelLine: {
359
+ length: 10,
360
+ length2: 8
361
+ },
362
+ data: n.map((e) => ({
363
+ value: e.value,
364
+ name: e.name,
365
+ itemStyle: { color: e.color }
366
+ }))
367
+ }]
368
+ });
369
+ };
370
+ C(() => t.theme, async () => {
371
+ await p(), c();
372
+ });
373
+ let l = () => {
374
+ i?.resize();
375
+ };
376
+ return _(() => {
377
+ p(c), window.addEventListener("resize", l);
378
+ }), g(() => {
379
+ window.removeEventListener("resize", l), i && i.dispose();
380
+ }), (e, t) => (v(), a("div", z, [o("div", {
381
+ class: "YCServiceSummaryTrafficAnalysis-chart",
382
+ ref_key: "chartRef",
383
+ ref: r
384
+ }, null, 512)]));
385
+ }
386
+ }), [["__scopeId", "data-v-2227475d"]]), V = { class: "YCServiceSummary-themeToggle" }, H = { class: "YCServiceSummary-left" }, U = { class: "YCServiceSummary-statPanel" }, W = { class: "YCServiceSummary-statPanel-content" }, G = ["onClick"], K = { class: "YCServiceSummary-statCard-label" }, q = { class: "YCServiceSummary-statCard-list" }, J = { class: "value" }, Y = { class: "YCServiceSummary-aiPanel" }, X = { class: "YCServiceSummary-aiPanel-head" }, Z = { class: "YCServiceSummary-aiPanel-title" }, Q = { class: "YCServiceSummary-aiPanel-summary" }, te = { class: "YCServiceSummary-aiPanel-charts" }, ne = { class: "YCServiceSummary-aiPanel-chartItem" }, re = { class: "YCServiceSummary-aiPanel-chartItem" }, ie = { class: "YCServiceSummary-material" }, ae = { class: "YCServiceSummary-material-head" }, oe = { class: "YCServiceSummary-material-title" }, $ = { class: "YCServiceSummary-material-actions" }, se = { class: "YCServiceSummary-material-body" }, ce = ["src", "alt"], le = { class: "YCServiceSummary-right" }, ue = /* @__PURE__ */ e(/* @__PURE__ */ u({
387
+ __name: "YCServiceSummary",
388
+ props: [
389
+ "appKey",
390
+ "appSalt",
391
+ "baseHttp",
392
+ "interfaceBaseHttp",
393
+ "onlyofficeCallbackUrl",
394
+ "username",
395
+ "password",
396
+ "ids"
397
+ ],
398
+ setup(e) {
399
+ let i = e, s = y([]), u = y(0), p = r(() => s.value[u.value]?.title || ""), g = r(() => s.value[u.value]?.warnInfo || ""), S = y(!1), w = y([]), T = y("交通气象服务材料"), E = (e) => e && (e.split("/").pop() || "").replace(/\.[^.]+$/, "") || "交通气象服务材料", D = (e) => !e || typeof e != "object" ? [] : Object.entries(e).map(([e, t]) => ({
400
+ label: e.includes(":") ? e : `${e}:`,
401
+ value: String(t)
402
+ })), O = () => {
403
+ let e = s.value[u.value];
404
+ e && (w.value = e.imgUrl ? String(e.imgUrl).split(",").map((e) => e.trim()).filter(Boolean) : [], T.value = E(e.workUrl));
405
+ };
406
+ C(u, () => {
407
+ O();
408
+ });
409
+ let k = async () => {
410
+ let e = i.ids?.baseData;
411
+ if (!e?.id) {
412
+ console.warn("[YCServiceSummary] ids.baseData 未配置");
413
+ return;
414
+ }
415
+ try {
416
+ let n = (await t({
417
+ appKey: i.appKey,
418
+ appSalt: i.appSalt,
419
+ id: e.id,
420
+ variables: {},
421
+ baseHttp: i.baseHttp,
422
+ reqType: e.reqType,
423
+ isFormData: e.isFormData
424
+ }))?.data?.result?.output;
425
+ if (!Array.isArray(n) || n.length === 0) {
426
+ console.warn("[YCServiceSummary] baseData 返回为空");
427
+ return;
428
+ }
429
+ s.value = n.map((e) => ({
430
+ title: e.分类 || "",
431
+ rows: D(e.数据),
432
+ warnInfo: e.预警信息 || "",
433
+ workUrl: e.workUrl || "",
434
+ imgUrl: e.imgUrl || ""
435
+ })), u.value = 0, O();
436
+ } catch (e) {
437
+ console.error("[YCServiceSummary] baseData 加载失败", e);
438
+ }
439
+ };
440
+ _(() => {
441
+ k();
442
+ });
443
+ let A = (e) => {
444
+ console.log(`[YCServiceSummary] material action: ${e}`);
445
+ };
446
+ return (e, t) => (v(), a("div", { class: m(["YCServiceSummary", { "is-dark": S.value }]) }, [
447
+ o("div", V, [o("button", {
448
+ class: m(["YCServiceSummary-themeBtn", { "is-active": !S.value }]),
449
+ onClick: t[0] ||= (e) => S.value = !1,
450
+ title: "浅色"
451
+ }, [...t[4] ||= [o("svg", {
452
+ viewBox: "0 0 24 24",
453
+ width: "12",
454
+ height: "12",
455
+ fill: "currentColor"
456
+ }, [o("path", { d: "M6.76 4.84l-1.8-1.79-1.41 1.41 1.79 1.79 1.42-1.41zM4 10.5H1v2h3v-2zm9-9.95h-2V3.5h2V.55zm7.45 3.91l-1.41-1.41-1.79 1.79 1.41 1.41 1.79-1.79zm-3.21 13.7l1.79 1.8 1.41-1.41-1.8-1.79-1.4 1.4zM20 10.5v2h3v-2h-3zm-8-5c-3.31 0-6 2.69-6 6s2.69 6 6 6 6-2.69 6-6-2.69-6-6-6zm-1 16.95h2V22h-2v5.45zm-7.45-3.91l1.41 1.41 1.79-1.8-1.41-1.41-1.79 1.8z" })], -1), c(" 浅色 ", -1)]], 2), o("button", {
457
+ class: m(["YCServiceSummary-themeBtn", { "is-active": S.value }]),
458
+ onClick: t[1] ||= (e) => S.value = !0,
459
+ title: "深色"
460
+ }, [...t[5] ||= [o("svg", {
461
+ viewBox: "0 0 24 24",
462
+ width: "12",
463
+ height: "12",
464
+ fill: "currentColor"
465
+ }, [o("path", { d: "M9 2c-1.05 0-2.05.16-3 .46 1.69 1.2 2.86 3.06 2.86 5.21 0 3.58-2.9 6.48-6.48 6.48-.63 0-1.25-.09-1.83-.26.52 2.64 2.28 4.85 4.59 5.93C7.21 21.22 9.46 22 12 22c5.52 0 10-4.48 10-10S17.52 2 12 2c-1 0-1.97.15-2.89.42C8.43 2.15 8.73 2 9 2z" })], -1), c(" 深色 ", -1)]], 2)]),
466
+ o("div", H, [
467
+ o("div", U, [t[7] ||= o("div", { class: "YCServiceSummary-statPanel-title" }, "宜春气象服务", -1), o("div", W, [(v(!0), a(n, null, b(s.value, (e, r) => (v(), a("div", {
468
+ key: e.title,
469
+ class: m(["YCServiceSummary-statCard", { "is-active": u.value === r }]),
470
+ onClick: (e) => u.value = r
471
+ }, [o("div", K, [t[6] ||= o("span", { class: "dot" }, null, -1), c(" " + x(e.title), 1)]), o("div", q, [(v(!0), a(n, null, b(e.rows, (e) => (v(), a("div", {
472
+ key: e.label,
473
+ class: "row"
474
+ }, [o("span", null, x(e.label), 1), o("span", J, x(e.value), 1)]))), 128))])], 10, G))), 128))])]),
475
+ o("div", Y, [
476
+ o("div", X, [o("div", Z, [t[8] ||= o("span", { class: "icon" }, null, -1), c(" " + x(p.value) + " AI 分析 ", 1)])]),
477
+ t[11] ||= o("div", { class: "YCServiceSummary-aiPanel-warningTitle" }, "预警信号", -1),
478
+ o("div", Q, x(g.value), 1),
479
+ o("div", te, [o("div", ne, [t[9] ||= o("div", { class: "YCServiceSummary-aiPanel-chartTitle" }, "高速公路实况状态", -1), l(R, f(i, { theme: S.value ? "dark" : "light" }), null, 16, ["theme"])]), o("div", re, [t[10] ||= o("div", { class: "YCServiceSummary-aiPanel-chartTitle" }, "高速公路预报状态", -1), l(B, f(i, { theme: S.value ? "dark" : "light" }), null, 16, ["theme"])])])
480
+ ]),
481
+ o("div", ie, [o("div", ae, [o("span", oe, x(T.value), 1), o("div", $, [o("button", {
482
+ class: "YCServiceSummary-material-btn YCServiceSummary-material-btn--edit",
483
+ onClick: t[2] ||= (e) => A("edit")
484
+ }, [...t[12] ||= [o("svg", {
485
+ viewBox: "0 0 24 24",
486
+ width: "12",
487
+ height: "12",
488
+ fill: "currentColor"
489
+ }, [o("path", { d: "M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a.996.996 0 000-1.41l-2.34-2.34a.996.996 0 00-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z" })], -1), c(" 编辑 ", -1)]]), o("button", {
490
+ class: "YCServiceSummary-material-btn YCServiceSummary-material-btn--download",
491
+ onClick: t[3] ||= (e) => A("download")
492
+ }, [...t[13] ||= [o("svg", {
493
+ viewBox: "0 0 24 24",
494
+ width: "12",
495
+ height: "12",
496
+ fill: "currentColor"
497
+ }, [o("path", { d: "M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z" })], -1), c(" 下载 ", -1)]])])]), o("div", se, [(v(!0), a(n, null, b(w.value, (e, t) => (v(), a("img", {
498
+ key: t,
499
+ class: "YCServiceSummary-material-image",
500
+ src: e,
501
+ alt: T.value
502
+ }, null, 8, ce))), 128))])])
503
+ ]),
504
+ o("div", le, [l(I, h(d(i)), null, 16)])
505
+ ], 2));
506
+ }
507
+ }), [["__scopeId", "data-v-25864f80"]]);
508
+ //#endregion
509
+ export { ue as t };
@@ -3,81 +3,14 @@ interface WorkflowConfig {
3
3
  reqType: 'get' | 'post';
4
4
  isFormData: boolean;
5
5
  }
6
- interface StationBaseInfo {
7
- stationName: string;
8
- stationCode: string;
9
- address: string;
10
- stationStatus: string;
11
- monitorElement: string;
12
- serviceType: string;
13
- }
14
- interface StationRealTimeInfo {
15
- temperature?: number | string | null;
16
- humidity?: number | string | null;
17
- windSpeed?: number | string | null;
18
- windDirection?: number | string | null;
19
- hourPrecipitation?: number | string | null;
20
- pressure?: number | string | null;
21
- visibility?: number | string | null;
22
- evaporation?: number | string | null;
23
- lightIntensity?: number | string | null;
24
- par?: number | string | null;
25
- monitorTime?: string;
26
- }
27
- interface StationStatisticsInfo {
28
- dailyMinTemp?: number | string | null;
29
- dailyMaxTemp?: number | string | null;
30
- dailyPrecipitation?: number | string | null;
31
- historyMinTemp?: number | string | null;
32
- historyMaxTemp?: number | string | null;
33
- historyMaxPrecipitation?: number | string | null;
34
- }
35
- interface ChartSeries {
36
- name: string;
37
- data: number[];
38
- directions?: number[];
39
- color?: string;
40
- type?: 'line' | 'bar';
41
- threshold?: number[];
42
- thresholdRange?: {
43
- min: number;
44
- max: number;
45
- };
46
- }
47
- interface ChartData {
48
- times: string[];
49
- unit: string;
50
- series: ChartSeries[];
51
- }
52
- interface HistoryItem {
53
- datetime_bj?: string | null;
54
- pre_time_0808?: number | string | null;
55
- pre_time_2020?: number | string | null;
56
- tem_max?: number | string | null;
57
- tem_min?: number | string | null;
58
- win_s_inst_max?: number | string | null;
59
- }
60
- interface HdFarmStationDialogData {
61
- baseInfo?: StationBaseInfo;
62
- realTimeInfo?: StationRealTimeInfo;
63
- statisticsInfo?: StationStatisticsInfo;
64
- chartData?: Record<string, ChartData>;
65
- dataTime?: string;
66
- historyData?: {
67
- day?: HistoryItem[];
68
- month?: HistoryItem[];
69
- };
70
- }
71
6
  interface Props {
72
7
  componentStyle?: Record<string, any>;
73
8
  stationCode: string;
74
9
  stationName?: string;
75
- mock?: boolean;
76
10
  baseHttp?: string;
77
11
  appKey?: string;
78
12
  appSalt?: string;
79
13
  ids?: Record<string, WorkflowConfig>;
80
- mockData?: HdFarmStationDialogData;
81
14
  }
82
15
  declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {
83
16
  baseHttp: string;
@@ -85,9 +18,7 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
85
18
  appSalt: string;
86
19
  ids: Record<string, WorkflowConfig>;
87
20
  stationName: string;
88
- mock: boolean;
89
21
  componentStyle: Record<string, any>;
90
- mockData: HdFarmStationDialogData;
91
22
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
92
23
  chartRef: HTMLDivElement;
93
24
  }, any>;
@@ -0,0 +1,30 @@
1
+ interface WorkflowConfig {
2
+ id: string | number;
3
+ reqType: 'get' | 'post';
4
+ isFormData: boolean;
5
+ }
6
+ interface Props {
7
+ mock?: boolean;
8
+ baseHttp?: string;
9
+ appKey?: string;
10
+ appSalt?: string;
11
+ imgBaseUrl?: string;
12
+ ids?: Record<string, WorkflowConfig>;
13
+ refreshInterval?: number;
14
+ yearField?: string;
15
+ }
16
+ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
17
+ close: (...args: any[]) => void;
18
+ }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
19
+ onClose?: ((...args: any[]) => any) | undefined;
20
+ }>, {
21
+ baseHttp: string;
22
+ appKey: string;
23
+ appSalt: string;
24
+ ids: Record<string, WorkflowConfig>;
25
+ imgBaseUrl: string;
26
+ mock: boolean;
27
+ refreshInterval: number;
28
+ yearField: string;
29
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
30
+ export default _default;
@@ -1,5 +1,23 @@
1
- import { YCServiceSummaryProps } from './types';
2
- declare const _default: import('vue').DefineComponent<YCServiceSummaryProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<YCServiceSummaryProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
1
+ declare const _default: import('vue').DefineComponent<{
2
+ baseHttp?: any;
3
+ appKey?: any;
4
+ appSalt?: any;
5
+ ids?: any;
6
+ username?: any;
7
+ password?: any;
8
+ interfaceBaseHttp?: any;
9
+ onlyofficeCallbackUrl?: any;
10
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
11
+ baseHttp?: any;
12
+ appKey?: any;
13
+ appSalt?: any;
14
+ ids?: any;
15
+ username?: any;
16
+ password?: any;
17
+ interfaceBaseHttp?: any;
18
+ onlyofficeCallbackUrl?: any;
19
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
3
20
  messagesRef: HTMLDivElement;
21
+ textareaRef: HTMLTextAreaElement;
4
22
  }, HTMLDivElement>;
5
23
  export default _default;
@@ -1,3 +1,20 @@
1
- import { YCServiceSummaryProps } from './types';
2
- declare const _default: import('vue').DefineComponent<YCServiceSummaryProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<YCServiceSummaryProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
1
+ declare const _default: import('vue').DefineComponent<{
2
+ baseHttp?: any;
3
+ appKey?: any;
4
+ appSalt?: any;
5
+ ids?: any;
6
+ username?: any;
7
+ password?: any;
8
+ interfaceBaseHttp?: any;
9
+ onlyofficeCallbackUrl?: any;
10
+ }, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{
11
+ baseHttp?: any;
12
+ appKey?: any;
13
+ appSalt?: any;
14
+ ids?: any;
15
+ username?: any;
16
+ password?: any;
17
+ interfaceBaseHttp?: any;
18
+ onlyofficeCallbackUrl?: any;
19
+ }> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
3
20
  export default _default;