@bdsoft/element 1.1.26 → 1.1.28

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 (184) hide show
  1. package/dist/BdElement.js +22921 -0
  2. package/dist/cjs/_virtual/_plugin-vue_export-helper.cjs +9 -0
  3. package/dist/cjs/global/index.cjs +14 -0
  4. package/dist/cjs/index.cjs +18276 -0
  5. package/dist/cjs/node_modules/.pnpm/splitpanes@4.0.4_vue@3.5.25_typescript@5.4.5_/node_modules/splitpanes/dist/splitpanes.css.cjs +1 -0
  6. package/dist/cjs/src/assets/css/element.scss.cjs +1 -0
  7. package/dist/cjs/src/assets/css/layout.scss.cjs +1 -0
  8. package/dist/cjs/src/assets/css/tailwind.scss.cjs +1 -0
  9. package/dist/cjs/src/assets/images/ff.png.cjs +3 -0
  10. package/dist/cjs/src/assets/images/menu/add.png.cjs +3 -0
  11. package/dist/cjs/src/assets/images/menu/del.png.cjs +3 -0
  12. package/dist/cjs/src/assets/images/menu/edit.png.cjs +3 -0
  13. package/dist/cjs/src/components/3dcloudwords/index.cjs +344 -0
  14. package/dist/cjs/src/components/3dcloudwords/index.vue.cjs +125 -0
  15. package/dist/cjs/src/components/badge/index.vue.cjs +96 -0
  16. package/dist/cjs/src/components/badge/index.vue2.cjs +1 -0
  17. package/dist/cjs/src/components/basic/Finish.vue.cjs +55 -0
  18. package/dist/cjs/src/components/basic/Finish.vue2.cjs +1 -0
  19. package/dist/cjs/src/components/button/index.vue.cjs +44 -0
  20. package/dist/cjs/src/components/carousel/index.vue.cjs +97 -0
  21. package/dist/cjs/src/components/carousel/index.vue2.cjs +1 -0
  22. package/dist/cjs/src/components/chartconfig/index.vue.cjs +330 -0
  23. package/dist/cjs/src/components/contextMenu/index.vue.cjs +152 -0
  24. package/dist/cjs/src/components/contextMenu/index.vue2.cjs +1 -0
  25. package/dist/cjs/src/components/countup/countUp.cjs +165 -0
  26. package/dist/cjs/src/components/countup/index.vue.cjs +116 -0
  27. package/dist/cjs/src/components/empty/assets/build.png.cjs +3 -0
  28. package/dist/cjs/src/components/empty/assets/emptybg.gif.cjs +3 -0
  29. package/dist/cjs/src/components/empty/assets/emptybg.png.cjs +3 -0
  30. package/dist/cjs/src/components/empty/assets/emptybg2.jpg.cjs +3 -0
  31. package/dist/cjs/src/components/empty/assets/emptybg3.jpg.cjs +3 -0
  32. package/dist/cjs/src/components/empty/assets/wuxiao.png.cjs +3 -0
  33. package/dist/cjs/src/components/empty/assets/wuxiao.webp.cjs +3 -0
  34. package/dist/cjs/src/components/empty/building.vue.cjs +95 -0
  35. package/dist/cjs/src/components/empty/building.vue2.cjs +1 -0
  36. package/dist/cjs/src/components/empty/empty.vue.cjs +108 -0
  37. package/dist/cjs/src/components/empty/empty.vue2.cjs +1 -0
  38. package/dist/cjs/src/components/empty/invalid.vue.cjs +20 -0
  39. package/dist/cjs/src/components/empty/invalid.vue2.cjs +1 -0
  40. package/dist/cjs/src/components/error/Error.vue.cjs +47 -0
  41. package/dist/cjs/src/components/error/Error.vue2.cjs +1 -0
  42. package/dist/cjs/src/components/form/Form.vue.cjs +92 -0
  43. package/dist/cjs/src/components/form/FormItem.vue.cjs +107 -0
  44. package/dist/cjs/src/components/form/FormItem.vue2.cjs +3 -0
  45. package/dist/cjs/src/components/layout/bar.vue.cjs +45 -0
  46. package/dist/cjs/src/components/layout/bar.vue2.cjs +1 -0
  47. package/dist/cjs/src/components/layout/layout1.vue.cjs +79 -0
  48. package/dist/cjs/src/components/layout/layout2.vue.cjs +174 -0
  49. package/dist/cjs/src/components/layout/layout2.vue2.cjs +1 -0
  50. package/dist/cjs/src/components/layout/layout3.vue.cjs +111 -0
  51. package/dist/cjs/src/components/layout/layout3.vue2.cjs +1 -0
  52. package/dist/cjs/src/components/layout/layout4.vue.cjs +70 -0
  53. package/dist/cjs/src/components/layout/layout4.vue2.cjs +1 -0
  54. package/dist/cjs/src/components/layout/nav.vue.cjs +222 -0
  55. package/dist/cjs/src/components/layout/nav.vue2.cjs +1 -0
  56. package/dist/cjs/src/components/layout/nav.vue3.cjs +1 -0
  57. package/dist/cjs/src/components/loading/index.vue.cjs +26 -0
  58. package/dist/cjs/src/components/loading/index.vue2.cjs +1 -0
  59. package/dist/cjs/src/components/notice/NoticeList.vue.cjs +202 -0
  60. package/dist/cjs/src/components/notice/NoticeList.vue2.cjs +1 -0
  61. package/dist/cjs/src/components/notice/NoticeListPaging.vue.cjs +343 -0
  62. package/dist/cjs/src/components/notice/NoticeListPaging.vue2.cjs +1 -0
  63. package/dist/cjs/src/components/notice/NoticeView.vue.cjs +134 -0
  64. package/dist/cjs/src/components/notice/NoticeView.vue2.cjs +1 -0
  65. package/dist/cjs/src/components/pagination/index.vue.cjs +97 -0
  66. package/dist/cjs/src/components/pagination/index.vue2.cjs +1 -0
  67. package/dist/cjs/src/components/pagination/scroll-to.cjs +40 -0
  68. package/dist/cjs/src/components/progress/bar.vue.cjs +64 -0
  69. package/dist/cjs/src/components/progress/bar.vue2.cjs +1 -0
  70. package/dist/cjs/src/components/progress/progress.vue.cjs +51 -0
  71. package/dist/cjs/src/components/progress/progress.vue2.cjs +1 -0
  72. package/dist/cjs/src/components/statisticalCount/index.vue.cjs +88 -0
  73. package/dist/cjs/src/components/statisticalCount/index.vue2.cjs +1 -0
  74. package/dist/cjs/src/components/username/index.vue.cjs +59 -0
  75. package/dist/cjs/src/components/username/index.vue2.cjs +1 -0
  76. package/dist/cjs/src/index.cjs +68 -0
  77. package/dist/cjs/src/utils/coms/load.cjs +23 -0
  78. package/dist/cjs/src/utils/func.cjs +48 -0
  79. package/dist/cjs/src/utils/hookDialog.cjs +27 -0
  80. package/dist/cjs/src/utils/hookPage.cjs +42 -0
  81. package/dist/cjs/src/utils/message.cjs +164 -0
  82. package/dist/cjs/src/xm_components/HeadSearch/hook/hookSearch.cjs +64 -0
  83. package/dist/cjs/src/xm_components/HeadSearch/index.vue.cjs +139 -0
  84. package/dist/cjs/src/xm_components/HeadSearch/index.vue2.cjs +1 -0
  85. package/dist/cjs/src/xm_components/Milestone/index.vue.cjs +88 -0
  86. package/dist/cjs/src/xm_components/Milestone/index.vue2.cjs +1 -0
  87. package/dist/cjs/src/xm_components/MultiStatisticalCard/index.vue.cjs +88 -0
  88. package/dist/cjs/src/xm_components/MultiStatisticalCard/index.vue2.cjs +1 -0
  89. package/dist/cjs/src/xm_components/StatisticalCard/index.vue.cjs +163 -0
  90. package/dist/cjs/src/xm_components/StatisticalCard/index.vue2.cjs +1 -0
  91. package/dist/es/_virtual/_plugin-vue_export-helper.js +10 -0
  92. package/dist/es/global/index.js +14 -0
  93. package/dist/es/index.js +18247 -0
  94. package/dist/es/node_modules/.pnpm/splitpanes@4.0.4_vue@3.5.25_typescript@5.4.5_/node_modules/splitpanes/dist/splitpanes.css.js +1 -0
  95. package/dist/es/src/assets/css/element.scss.js +1 -0
  96. package/dist/es/src/assets/css/layout.scss.js +1 -0
  97. package/dist/es/src/assets/css/tailwind.scss.js +1 -0
  98. package/dist/es/src/assets/images/ff.png.js +4 -0
  99. package/dist/es/src/assets/images/menu/add.png.js +4 -0
  100. package/dist/es/src/assets/images/menu/del.png.js +4 -0
  101. package/dist/es/src/assets/images/menu/edit.png.js +4 -0
  102. package/dist/es/src/components/3dcloudwords/index.js +345 -0
  103. package/dist/es/src/components/3dcloudwords/index.vue.js +126 -0
  104. package/dist/es/src/components/badge/index.vue.js +97 -0
  105. package/dist/es/src/components/badge/index.vue2.js +1 -0
  106. package/dist/es/src/components/basic/Finish.vue.js +56 -0
  107. package/dist/es/src/components/basic/Finish.vue2.js +1 -0
  108. package/dist/es/src/components/button/index.vue.js +45 -0
  109. package/dist/es/src/components/carousel/index.vue.js +98 -0
  110. package/dist/es/src/components/carousel/index.vue2.js +1 -0
  111. package/dist/es/src/components/chartconfig/index.vue.js +331 -0
  112. package/dist/es/src/components/contextMenu/index.vue.js +153 -0
  113. package/dist/es/src/components/contextMenu/index.vue2.js +1 -0
  114. package/dist/es/src/components/countup/countUp.js +165 -0
  115. package/dist/es/src/components/countup/index.vue.js +117 -0
  116. package/dist/es/src/components/empty/assets/build.png.js +4 -0
  117. package/dist/es/src/components/empty/assets/emptybg.gif.js +4 -0
  118. package/dist/es/src/components/empty/assets/emptybg.png.js +4 -0
  119. package/dist/es/src/components/empty/assets/emptybg2.jpg.js +4 -0
  120. package/dist/es/src/components/empty/assets/emptybg3.jpg.js +4 -0
  121. package/dist/es/src/components/empty/assets/wuxiao.png.js +4 -0
  122. package/dist/es/src/components/empty/assets/wuxiao.webp.js +4 -0
  123. package/dist/es/src/components/empty/building.vue.js +95 -0
  124. package/dist/es/src/components/empty/building.vue2.js +1 -0
  125. package/dist/es/src/components/empty/empty.vue.js +108 -0
  126. package/dist/es/src/components/empty/empty.vue2.js +1 -0
  127. package/dist/es/src/components/empty/invalid.vue.js +21 -0
  128. package/dist/es/src/components/empty/invalid.vue2.js +1 -0
  129. package/dist/es/src/components/error/Error.vue.js +48 -0
  130. package/dist/es/src/components/error/Error.vue2.js +1 -0
  131. package/dist/es/src/components/form/Form.vue.js +93 -0
  132. package/dist/es/src/components/form/FormItem.vue.js +108 -0
  133. package/dist/es/src/components/form/FormItem.vue2.js +4 -0
  134. package/dist/es/src/components/layout/bar.vue.js +46 -0
  135. package/dist/es/src/components/layout/bar.vue2.js +1 -0
  136. package/dist/es/src/components/layout/layout1.vue.js +80 -0
  137. package/dist/es/src/components/layout/layout2.vue.js +175 -0
  138. package/dist/es/src/components/layout/layout2.vue2.js +1 -0
  139. package/dist/es/src/components/layout/layout3.vue.js +112 -0
  140. package/dist/es/src/components/layout/layout3.vue2.js +1 -0
  141. package/dist/es/src/components/layout/layout4.vue.js +71 -0
  142. package/dist/es/src/components/layout/layout4.vue2.js +1 -0
  143. package/dist/es/src/components/layout/nav.vue.js +223 -0
  144. package/dist/es/src/components/layout/nav.vue2.js +1 -0
  145. package/dist/es/src/components/layout/nav.vue3.js +1 -0
  146. package/dist/es/src/components/loading/index.vue.js +27 -0
  147. package/dist/es/src/components/loading/index.vue2.js +1 -0
  148. package/dist/es/src/components/notice/NoticeList.vue.js +203 -0
  149. package/dist/es/src/components/notice/NoticeList.vue2.js +1 -0
  150. package/dist/es/src/components/notice/NoticeListPaging.vue.js +344 -0
  151. package/dist/es/src/components/notice/NoticeListPaging.vue2.js +1 -0
  152. package/dist/es/src/components/notice/NoticeView.vue.js +135 -0
  153. package/dist/es/src/components/notice/NoticeView.vue2.js +1 -0
  154. package/dist/es/src/components/pagination/index.vue.js +98 -0
  155. package/dist/es/src/components/pagination/index.vue2.js +1 -0
  156. package/dist/es/src/components/pagination/scroll-to.js +40 -0
  157. package/dist/es/src/components/progress/bar.vue.js +65 -0
  158. package/dist/es/src/components/progress/bar.vue2.js +1 -0
  159. package/dist/es/src/components/progress/progress.vue.js +52 -0
  160. package/dist/es/src/components/progress/progress.vue2.js +1 -0
  161. package/dist/es/src/components/statisticalCount/index.vue.js +89 -0
  162. package/dist/es/src/components/statisticalCount/index.vue2.js +1 -0
  163. package/dist/es/src/components/username/index.vue.js +60 -0
  164. package/dist/es/src/components/username/index.vue2.js +1 -0
  165. package/dist/es/src/index.js +68 -0
  166. package/dist/es/src/utils/coms/load.js +24 -0
  167. package/dist/es/src/utils/func.js +48 -0
  168. package/dist/es/src/utils/hookDialog.js +27 -0
  169. package/dist/es/src/utils/hookPage.js +42 -0
  170. package/dist/es/src/utils/message.js +153 -0
  171. package/dist/es/src/xm_components/HeadSearch/hook/hookSearch.js +65 -0
  172. package/dist/es/src/xm_components/HeadSearch/index.vue.js +140 -0
  173. package/dist/es/src/xm_components/HeadSearch/index.vue2.js +1 -0
  174. package/dist/es/src/xm_components/Milestone/index.vue.js +89 -0
  175. package/dist/es/src/xm_components/Milestone/index.vue2.js +1 -0
  176. package/dist/es/src/xm_components/MultiStatisticalCard/index.vue.js +89 -0
  177. package/dist/es/src/xm_components/MultiStatisticalCard/index.vue2.js +1 -0
  178. package/dist/es/src/xm_components/StatisticalCard/index.vue.js +164 -0
  179. package/dist/es/src/xm_components/StatisticalCard/index.vue2.js +1 -0
  180. package/package.json +28 -10
  181. package/src/components/chartconfig/index.vue +8 -5
  182. package/src/utils/coms/load.jsx +22 -9
  183. package/index.html +0 -13
  184. package/vite.config.js +0 -51
@@ -0,0 +1,48 @@
1
+ function getUrlKey(name, url) {
2
+ return decodeURIComponent((new RegExp("[?|&]" + name + "=([^&;]+?)(&|#|;|$)").exec(url || location.href) || [, ""])[1].replace(/\+/g, "%20")) || null;
3
+ }
4
+ function S4() {
5
+ return ((1 + Math.random()) * 65536 | 0).toString(16).substring(1);
6
+ }
7
+ function NewGuid() {
8
+ return S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4();
9
+ }
10
+ const debounce = (func, delay) => {
11
+ let timer;
12
+ return (...args) => {
13
+ clearTimeout(timer);
14
+ timer = setTimeout(() => {
15
+ func(...args);
16
+ }, delay);
17
+ };
18
+ };
19
+ function parseTime(time, format) {
20
+ if (!time)
21
+ return "";
22
+ let t = new Date(time);
23
+ let tf = function(i) {
24
+ return (i < 10 ? "0" : "") + i;
25
+ };
26
+ return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function(a) {
27
+ switch (a) {
28
+ case "yyyy":
29
+ return tf(t.getFullYear());
30
+ case "MM":
31
+ return tf(t.getMonth() + 1);
32
+ case "mm":
33
+ return tf(t.getMinutes());
34
+ case "dd":
35
+ return tf(t.getDate());
36
+ case "HH":
37
+ return tf(t.getHours());
38
+ case "ss":
39
+ return tf(t.getSeconds());
40
+ }
41
+ });
42
+ }
43
+ export {
44
+ NewGuid,
45
+ debounce,
46
+ getUrlKey,
47
+ parseTime
48
+ };
@@ -0,0 +1,27 @@
1
+ import { ref, nextTick } from "vue";
2
+ function useDialog(showFn) {
3
+ const visible = ref(false);
4
+ const openParms = ref({});
5
+ const extParms = ref({});
6
+ const showDialog = (parm, ext) => {
7
+ visible.value = true;
8
+ openParms.value = parm;
9
+ extParms.value = ext;
10
+ nextTick(() => {
11
+ showFn && showFn();
12
+ });
13
+ };
14
+ const hideDialog = () => {
15
+ visible.value = false;
16
+ };
17
+ return {
18
+ visible,
19
+ openParms,
20
+ extParms,
21
+ showDialog,
22
+ hideDialog
23
+ };
24
+ }
25
+ export {
26
+ useDialog
27
+ };
@@ -0,0 +1,42 @@
1
+ import { reactive, toRefs } from "vue";
2
+ function usePage(changeFn) {
3
+ let page = reactive({
4
+ // 数据服务分页参数值
5
+ pageHeader: {
6
+ startindex: 0,
7
+ pagesize: 30,
8
+ carrytotal: true
9
+ },
10
+ currentPage: 1,
11
+ pageSizes: [30, 60, 90],
12
+ pageSize: 30,
13
+ total: 0
14
+ });
15
+ function handleSizeChange(val) {
16
+ page.pageSize = val;
17
+ changeFn();
18
+ }
19
+ function handleCurrentChange(val) {
20
+ page.currentPage = val;
21
+ page.pageHeader.startindex = val - 1;
22
+ changeFn();
23
+ }
24
+ function handlePagination(pageobj) {
25
+ let pageIndex = pageobj.page;
26
+ let pageSize = pageobj.pageSize;
27
+ page.currentPage = pageIndex;
28
+ page.pageSize = pageSize;
29
+ page.pageHeader.startindex = (pageIndex - 1) * pageSize;
30
+ page.pageHeader.pagesize = pageSize;
31
+ changeFn();
32
+ }
33
+ return {
34
+ ...toRefs(page),
35
+ handleSizeChange,
36
+ handleCurrentChange,
37
+ handlePagination
38
+ };
39
+ }
40
+ export {
41
+ usePage
42
+ };
@@ -0,0 +1,153 @@
1
+ import { ElMessage, ElMessageBox, ElNotification, ElButton, ElIcon, ElLoading } from "element-plus";
2
+ import { ElLoading as ElLoading2, ElMessage as ElMessage2, ElMessageBox as ElMessageBox2, ElNotification as ElNotification2 } from "element-plus";
3
+ import { Warning } from "@element-plus/icons-vue";
4
+ import { h } from "vue";
5
+ function showsuccess(msg, duration = 3e3, showClose = true) {
6
+ ElMessage({
7
+ message: msg || "保存成功",
8
+ type: "success",
9
+ duration,
10
+ showClose
11
+ });
12
+ }
13
+ function showerror(msg, duration = 3e3, showClose = true) {
14
+ ElMessage({
15
+ message: msg || "保存失败",
16
+ type: "error",
17
+ duration,
18
+ showClose
19
+ });
20
+ }
21
+ function showwarning(msg, duration = 3e3, showClose = true, clostFn) {
22
+ ElMessage({
23
+ message: msg || "警告内容",
24
+ type: "warning",
25
+ duration,
26
+ showClose,
27
+ onClose: clostFn
28
+ });
29
+ }
30
+ function showinfo(msg, duration = 3e3, showClose = true) {
31
+ ElMessage({
32
+ message: msg || "提示信息",
33
+ duration,
34
+ showClose
35
+ });
36
+ }
37
+ function hideloading(msg) {
38
+ ElMessage.closeAll();
39
+ }
40
+ function showconfirm(done, confirmtitle = "确认关闭?", showtext = { title: "提示", confirmButtonText: "确定", cancelButtonText: "取消" }, cancle) {
41
+ return ElMessageBox.confirm(confirmtitle, showtext.title, {
42
+ confirmButtonText: showtext.confirmButtonText,
43
+ cancelButtonText: showtext.cancelButtonText,
44
+ distinguishCancelAndClose: true,
45
+ type: "warning"
46
+ }).then((_) => {
47
+ done(_);
48
+ }).catch((_) => {
49
+ console.info("showconfirm catch");
50
+ console.info(_);
51
+ cancle && cancle(_);
52
+ });
53
+ }
54
+ function shownotiinfo(msg, type = "info", title = "提示", position = "bottom-right", dangerouslyUseHTMLString = false) {
55
+ ElNotification({
56
+ title,
57
+ position,
58
+ message: msg,
59
+ dangerouslyUseHTMLString,
60
+ type
61
+ });
62
+ }
63
+ function showconfirminfo(msg = "确认删除?", showtext = { type: "", position: "bottom-right", title: "提示", dangerouslyUseHTMLString: true }, fn1, fn2) {
64
+ const btn1 = h(ElButton, {
65
+ innerText: "立即刷新",
66
+ type: "primary",
67
+ size: "small",
68
+ style: { marginLeft: "16px", float: "right" },
69
+ onclick: (_) => {
70
+ fn1(_);
71
+ }
72
+ });
73
+ const btn2 = h(ElButton, {
74
+ innerText: "暂不更新",
75
+ style: { float: "right" },
76
+ size: "small",
77
+ onclick: (_) => {
78
+ fn2(_);
79
+ }
80
+ });
81
+ const div = h("div", { style: { marginLeft: "8px", marginBottom: "16px", marginTop: "16px" } }, msg);
82
+ const icon1 = h(Warning);
83
+ const icon = h(ElIcon, { style: { fontSize: "18px" } }, [icon1]);
84
+ const msgDiv = h("div", { style: { display: "flex", alignItems: "center" } }, [icon, div]);
85
+ ElNotification({
86
+ class: "custom-notification",
87
+ title: showtext.title,
88
+ position: showtext.position,
89
+ dangerouslyUseHTMLString: showtext.dangerouslyUseHTMLString,
90
+ message: h("div", [msgDiv, btn1, btn2]),
91
+ type: showtext.type,
92
+ duration: 0,
93
+ showClose: false
94
+ });
95
+ }
96
+ function showalert(done, alertMsg = "This is a message", type = "info", showtext = { title: "提示", confirmButtonText: "确定" }) {
97
+ return ElMessageBox.alert(alertMsg, showtext.title, {
98
+ confirmButtonText: showtext.confirmButtonText,
99
+ type
100
+ }).then((_) => {
101
+ done(_);
102
+ }).catch((_) => {
103
+ console.info("showalert catch");
104
+ console.info(_);
105
+ });
106
+ }
107
+ function confirm(confirmtitle = "确认关闭?") {
108
+ return ElMessageBox.confirm(confirmtitle);
109
+ }
110
+ function showloading(msg, duration = 0, showClose = true) {
111
+ ElMessage({
112
+ // <svg viewBox="0 0 1024 1024" focusable="false" data-icon="loading" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"></path></svg>
113
+ icon: "loadsvg",
114
+ message: msg || "正在保存,请稍后...",
115
+ duration,
116
+ showClose
117
+ });
118
+ }
119
+ let loadingObj = null;
120
+ function showLoading(msg, parm) {
121
+ let _parm = parm || {};
122
+ loadingObj = ElLoading.service({
123
+ // 默认配置
124
+ lock: true,
125
+ text: "加载中...",
126
+ spinner: "el-icon-loading",
127
+ background: "rgba(0, 0, 0, 0.7)",
128
+ // 展开 _parm,其属性会覆盖上面的默认配置
129
+ ..._parm
130
+ });
131
+ }
132
+ function closeLoading() {
133
+ loadingObj.close();
134
+ }
135
+ export {
136
+ ElLoading2 as ElLoading,
137
+ ElMessage2 as ElMessage,
138
+ ElMessageBox2 as ElMessageBox,
139
+ ElNotification2 as ElNotification,
140
+ closeLoading,
141
+ confirm,
142
+ hideloading,
143
+ showLoading,
144
+ showalert,
145
+ showconfirm,
146
+ showconfirminfo,
147
+ showerror,
148
+ showinfo,
149
+ showloading,
150
+ shownotiinfo,
151
+ showsuccess,
152
+ showwarning
153
+ };
@@ -0,0 +1,65 @@
1
+ import { ref, nextTick } from "vue";
2
+ function useSearrch(prefix = "") {
3
+ const searchkeysArr = ref([]);
4
+ const search_drop = ref(false);
5
+ const keyName = ref("");
6
+ const getStorageKeys = () => {
7
+ var keys = localStorage.getItem("searchRerportkeys");
8
+ if (keys && keys !== "undefined" && keys !== "null") {
9
+ keys = JSON.parse(keys);
10
+ return keys;
11
+ }
12
+ return [];
13
+ };
14
+ const focusfns = (type) => {
15
+ searchkeysArr.value = getStorageKeys();
16
+ if (type === 1 && searchkeysArr.value.length > 0) {
17
+ search_drop.value = true;
18
+ } else {
19
+ setTimeout(function() {
20
+ nextTick(function() {
21
+ search_drop.value = false;
22
+ });
23
+ }, 200);
24
+ }
25
+ };
26
+ const setSearchKeys = (key) => {
27
+ if (!key || key == null || key == "" || key == "null")
28
+ return;
29
+ let keys = localStorage.getItem("searchRerportkeys");
30
+ if (keys && keys !== "undefined" && keys !== "{}") {
31
+ keys = JSON.parse(keys);
32
+ if (keys.length > 5 && keys instanceof Array) {
33
+ keys.splice(0, 1);
34
+ }
35
+ keys.push(key);
36
+ let keys2 = [...new Set(keys)];
37
+ localStorage.setItem("searchRerportkeys", JSON.stringify(keys2));
38
+ } else {
39
+ keys = [];
40
+ keys.push(key);
41
+ localStorage.setItem("searchRerportkeys", JSON.stringify(keys));
42
+ }
43
+ };
44
+ const deleteSearchItem = (index) => {
45
+ debugger;
46
+ searchkeysArr.value.splice(index, 1);
47
+ localStorage.setItem("searchRerportkeys", JSON.stringify(searchkeysArr.value));
48
+ };
49
+ const setTxt = (val) => {
50
+ keyName.value = val;
51
+ };
52
+ return {
53
+ keyName,
54
+ searchkeysArr,
55
+ search_drop,
56
+ focusfns,
57
+ setTxt,
58
+ deleteSearchItem,
59
+ setSearchKeys,
60
+ getStorageKeys
61
+ };
62
+ }
63
+ export {
64
+ useSearrch as default
65
+ };
@@ -0,0 +1,140 @@
1
+ import { onMounted, resolveComponent, createElementBlock, openBlock, Fragment, createElementVNode, createCommentVNode, createVNode, withDirectives, withKeys, unref, isRef, withCtx, createTextVNode, renderList, toDisplayString, withModifiers, vShow } from "vue";
2
+ import { getUrlKey, debounce } from "../../utils/func.js";
3
+ import useSearrch from "./hook/hookSearch.js";
4
+ import "./index.vue2.js";
5
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
6
+ const _hoisted_1 = { class: "search_warp" };
7
+ const _hoisted_2 = ["src"];
8
+ const _hoisted_3 = { class: "ipt_search" };
9
+ const _hoisted_4 = {
10
+ key: 0,
11
+ class: "search_drop"
12
+ };
13
+ const _hoisted_5 = ["onClick"];
14
+ const _hoisted_6 = {
15
+ key: 0,
16
+ class: "ipt_search_tip"
17
+ };
18
+ const _sfc_main = {
19
+ __name: "index",
20
+ props: {
21
+ ismodule: {
22
+ type: Boolean,
23
+ default: false
24
+ },
25
+ // logo url
26
+ logoUrl: {
27
+ type: String
28
+ // default: 'http://123.129.65.205:18012/RabbitDocService/Doc/ptIcon/View?filePath=20250911/006.png'
29
+ },
30
+ placeholderTxt: {
31
+ type: String,
32
+ default: "请输入搜索内容"
33
+ },
34
+ groupData: {
35
+ type: Object
36
+ },
37
+ searchNum: {
38
+ type: Number
39
+ }
40
+ },
41
+ emits: ["getSearchList"],
42
+ setup(__props, { expose: __expose, emit: __emit }) {
43
+ const emits = __emit;
44
+ const { keyName, searchkeysArr, search_drop, focusfns, setSearchKeys, deleteSearchItem, setTxt } = useSearrch();
45
+ const props = __props;
46
+ const gohome = () => {
47
+ };
48
+ onMounted(() => {
49
+ let keymc = getUrlKey("txtKey") || "";
50
+ setTxt(keymc);
51
+ });
52
+ const getModuleList = (isfirst = false) => {
53
+ focusfns(-1);
54
+ setSearchKeys(keyName.value || "");
55
+ emits("getSearchList", keyName.value, isfirst);
56
+ };
57
+ const debouncedClick = debounce(getModuleList, 500);
58
+ __expose({
59
+ setTxt,
60
+ debouncedClick
61
+ });
62
+ return (_ctx, _cache) => {
63
+ const _component_el_button = resolveComponent("el-button");
64
+ const _component_el_input = resolveComponent("el-input");
65
+ const _component_Delete = resolveComponent("Delete");
66
+ const _component_el_icon = resolveComponent("el-icon");
67
+ return openBlock(), createElementBlock(Fragment, null, [
68
+ createElementVNode("div", _hoisted_1, [
69
+ __props.logoUrl ? (openBlock(), createElementBlock("img", {
70
+ key: 0,
71
+ src: __props.logoUrl,
72
+ style: { "width": "40px", "height": "40px", "margin-right": "5px", "vertical-align": "middle", "cursor": "pointer" },
73
+ alt: "",
74
+ onClick: gohome
75
+ }, null, 8, _hoisted_2)) : createCommentVNode("", true),
76
+ createElementVNode("div", _hoisted_3, [
77
+ createVNode(_component_el_input, {
78
+ placeholder: __props.placeholderTxt,
79
+ modelValue: unref(keyName),
80
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(keyName) ? keyName.value = $event : null),
81
+ clearable: "",
82
+ onFocus: _cache[1] || (_cache[1] = ($event) => unref(focusfns)(1)),
83
+ onBlur: _cache[2] || (_cache[2] = ($event) => unref(focusfns)(-1)),
84
+ onKeyup: withKeys(unref(debouncedClick), ["enter"])
85
+ }, {
86
+ append: withCtx(() => [
87
+ createVNode(_component_el_button, {
88
+ class: "SearchBtn",
89
+ onClick: unref(debouncedClick),
90
+ type: "primary",
91
+ icon: "Search"
92
+ }, {
93
+ default: withCtx(() => [..._cache[3] || (_cache[3] = [
94
+ createTextVNode("搜索", -1)
95
+ ])]),
96
+ _: 1
97
+ }, 8, ["onClick"])
98
+ ]),
99
+ _: 1
100
+ }, 8, ["placeholder", "modelValue", "onKeyup"]),
101
+ unref(searchkeysArr) && unref(searchkeysArr) != "" ? withDirectives((openBlock(), createElementBlock("div", _hoisted_4, [
102
+ createElementVNode("ul", null, [
103
+ (openBlock(true), createElementBlock(Fragment, null, renderList(unref(searchkeysArr), (item, index2) => {
104
+ return openBlock(), createElementBlock("li", { key: index2 }, [
105
+ createElementVNode("span", {
106
+ class: "search-item-text",
107
+ onClick: ($event) => unref(setTxt)(item)
108
+ }, toDisplayString(item), 9, _hoisted_5),
109
+ createVNode(_component_el_icon, {
110
+ class: "delete-btn",
111
+ onClick: withModifiers(($event) => unref(deleteSearchItem)(index2), ["stop"])
112
+ }, {
113
+ default: withCtx(() => [
114
+ createVNode(_component_Delete)
115
+ ]),
116
+ _: 1
117
+ }, 8, ["onClick"])
118
+ ]);
119
+ }), 128))
120
+ ])
121
+ ], 512)), [
122
+ [vShow, unref(search_drop)]
123
+ ]) : createCommentVNode("", true)
124
+ ])
125
+ ]),
126
+ __props.groupData && __props.groupData != "" ? (openBlock(), createElementBlock("div", _hoisted_6, [
127
+ _cache[4] || (_cache[4] = createTextVNode(" 搜索结果数: ", -1)),
128
+ withDirectives(createElementVNode("span", null, toDisplayString(Object.keys(__props.groupData).length) + "个系统, ", 513), [
129
+ [vShow, props.ismodule]
130
+ ]),
131
+ createTextVNode(" " + toDisplayString(__props.searchNum) + " 个相关页面模块 ", 1)
132
+ ])) : createCommentVNode("", true)
133
+ ], 64);
134
+ };
135
+ }
136
+ };
137
+ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4f36646f"]]);
138
+ export {
139
+ index as default
140
+ };
@@ -0,0 +1,89 @@
1
+ import { useCssVars, computed, createElementBlock, openBlock, createBlock, createElementVNode, Fragment, renderList, normalizeStyle, normalizeClass, toDisplayString } from "vue";
2
+ import BdEmpty from "../../components/empty/empty.vue.js";
3
+ import "./index.vue2.js";
4
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
5
+ const _hoisted_1 = { class: "milestone-container" };
6
+ const _hoisted_2 = {
7
+ key: 0,
8
+ class: "milestone-track"
9
+ };
10
+ const _hoisted_3 = { class: "milestone-info" };
11
+ const _hoisted_4 = { class: "milestone-name" };
12
+ const _hoisted_5 = { class: "milestone-info" };
13
+ const _hoisted_6 = { class: "milestone-name" };
14
+ const _sfc_main = {
15
+ __name: "index",
16
+ props: {
17
+ // 标注色
18
+ bgColor: {
19
+ type: String,
20
+ default: "radial-gradient(circle, rgba(78, 171, 237, 1) 0%, rgb(81, 151, 244) 51%, rgba(78, 171, 237, 1) 100%)"
21
+ },
22
+ milestones: {
23
+ type: Array,
24
+ required: true,
25
+ default: () => []
26
+ },
27
+ hideLast: {
28
+ type: Boolean,
29
+ default: true
30
+ }
31
+ },
32
+ setup(__props) {
33
+ useCssVars((_ctx) => ({
34
+ "c05aa1d0": __props.bgColor
35
+ }));
36
+ const props = __props;
37
+ computed(() => !props.hideLast);
38
+ const calculatePosition = (startDate) => {
39
+ if (props.milestones.length === 0)
40
+ return 0;
41
+ const firstDate = new Date(props.milestones[0].rq);
42
+ const lastDate = new Date(props.milestones[props.milestones.length - 1].rq);
43
+ const currentDate = new Date(startDate);
44
+ const totalDays = (lastDate - firstDate) / (1e3 * 60 * 60 * 24);
45
+ const daysPassed = (currentDate - firstDate) / (1e3 * 60 * 60 * 24);
46
+ return daysPassed / totalDays * 100;
47
+ };
48
+ return (_ctx, _cache) => {
49
+ return openBlock(), createElementBlock("div", _hoisted_1, [
50
+ __props.milestones && __props.milestones != "" ? (openBlock(), createElementBlock("div", _hoisted_2, [
51
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.milestones, (item, index2) => {
52
+ return openBlock(), createElementBlock("div", {
53
+ key: index2,
54
+ class: normalizeClass(["milestone-item", { "odd-item": index2 % 2 === 0, "even-item": index2 % 2 !== 0 }]),
55
+ style: normalizeStyle({
56
+ left: `${calculatePosition(item.rq)}%`,
57
+ opacity: index2 === __props.milestones.length - 1 && __props.hideLast ? "0" : "1"
58
+ })
59
+ }, [
60
+ index2 % 2 === 0 ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
61
+ createElementVNode("div", _hoisted_3, [
62
+ createElementVNode("div", _hoisted_4, toDisplayString(item.name), 1)
63
+ ]),
64
+ _cache[0] || (_cache[0] = createElementVNode("div", { class: "milestone-line" }, null, -1)),
65
+ _cache[1] || (_cache[1] = createElementVNode("div", { class: "milestone-dot" }, null, -1))
66
+ ], 64)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
67
+ _cache[2] || (_cache[2] = createElementVNode("div", { class: "milestone-dot" }, null, -1)),
68
+ _cache[3] || (_cache[3] = createElementVNode("div", { class: "milestone-line" }, null, -1)),
69
+ createElementVNode("div", _hoisted_5, [
70
+ createElementVNode("div", _hoisted_6, toDisplayString(item.name), 1)
71
+ ])
72
+ ], 64))
73
+ ], 6);
74
+ }), 128)),
75
+ _cache[4] || (_cache[4] = createElementVNode("div", { class: "with-arrow" }, null, -1))
76
+ ])) : (openBlock(), createBlock(BdEmpty, {
77
+ key: 1,
78
+ imgType: "svg",
79
+ imgSize: 50,
80
+ des: "没有查询到相关数据"
81
+ }))
82
+ ]);
83
+ };
84
+ }
85
+ };
86
+ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-66562b87"]]);
87
+ export {
88
+ index as default
89
+ };
@@ -0,0 +1,89 @@
1
+ import { ref, watch, onMounted, resolveComponent, createBlock, openBlock, normalizeStyle, withCtx, createElementBlock, Fragment, renderList, createVNode } from "vue";
2
+ import _sfc_main$1 from "../../components/countup/index.vue.js";
3
+ import "./index.vue2.js";
4
+ import _export_sfc from "../../../_virtual/_plugin-vue_export-helper.js";
5
+ const _sfc_main = {
6
+ __name: "index",
7
+ props: {
8
+ height: {
9
+ type: String,
10
+ default: "200px"
11
+ },
12
+ // 指标数据列表
13
+ indicators: {
14
+ type: Array,
15
+ default: () => []
16
+ }
17
+ },
18
+ emits: ["indicator-click"],
19
+ setup(__props, { emit: __emit }) {
20
+ const emit = __emit;
21
+ ref({});
22
+ const props = __props;
23
+ const handleItemClick = (item, index2) => {
24
+ if (item.onClick) {
25
+ item.onClick(item, index2);
26
+ }
27
+ };
28
+ const handleIndicatorClick = (item, index2) => {
29
+ emit("indicator-click", {
30
+ item,
31
+ // 点击的指标项完整数据
32
+ index: index2
33
+ // 点击的指标项索引
34
+ });
35
+ };
36
+ watch(
37
+ () => props.indicators,
38
+ (newIndicators) => {
39
+ if (newIndicators && newIndicators.length > 0)
40
+ ;
41
+ },
42
+ {
43
+ immediate: true
44
+ }
45
+ );
46
+ onMounted(() => {
47
+ });
48
+ return (_ctx, _cache) => {
49
+ const _component_el_col = resolveComponent("el-col");
50
+ const _component_el_row = resolveComponent("el-row");
51
+ return openBlock(), createBlock(_component_el_row, {
52
+ gutter: 0,
53
+ class: "basicwarp",
54
+ style: normalizeStyle({ height: __props.height })
55
+ }, {
56
+ default: withCtx(() => [
57
+ (openBlock(true), createElementBlock(Fragment, null, renderList(__props.indicators, (item, index2) => {
58
+ return openBlock(), createBlock(_component_el_col, {
59
+ key: index2,
60
+ onClick: ($event) => handleIndicatorClick(item, index2),
61
+ md: item.colSize || 4,
62
+ class: "text-center mb-4",
63
+ style: { "cursor": "pointer" }
64
+ }, {
65
+ default: withCtx(() => [
66
+ createVNode(_sfc_main$1, {
67
+ class: "infor-intro-num user-created-count",
68
+ title: item.title,
69
+ "id-name": item.key,
70
+ endVal: item.value,
71
+ countSize: "30px",
72
+ color: item.valueColor || "",
73
+ countWeight: 700,
74
+ onClick: ($event) => handleItemClick(item, index2)
75
+ }, null, 8, ["title", "id-name", "endVal", "color", "onClick"])
76
+ ]),
77
+ _: 2
78
+ }, 1032, ["onClick", "md"]);
79
+ }), 128))
80
+ ]),
81
+ _: 1
82
+ }, 8, ["style"]);
83
+ };
84
+ }
85
+ };
86
+ const index = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-3ca6df40"]]);
87
+ export {
88
+ index as default
89
+ };