vue2-client 1.16.97 → 1.16.98

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 (326) hide show
  1. package/.claude/settings.local.json +20 -20
  2. package/.cursorrules +19 -19
  3. package/.env.apply +19 -19
  4. package/.env.gaslink +19 -19
  5. package/.env.his +19 -19
  6. package/.env.liuli +20 -20
  7. package/.env.message +19 -19
  8. package/.env.scada +19 -19
  9. package/.eslintrc.js +90 -90
  10. package/CHANGELOG.md +830 -830
  11. package/CLAUDE.md +97 -97
  12. package/Components.md +60 -60
  13. package/docs/LowCode/lowcode.md +155 -155
  14. package/docs/LowCode/lowcodeForDeveloper.md +230 -230
  15. package/docs/index.md +30 -30
  16. package/index.js +31 -31
  17. package/jest-transform-stub.js +8 -8
  18. package/jest.setup.js +7 -7
  19. package/jsconfig.json +19 -19
  20. package/package.json +112 -112
  21. package/public/his/editor/editor.html +51 -51
  22. package/public/his/editor/mock/bind_data.html +779 -779
  23. package/public/his/editor/mock/data_table.html +40 -40
  24. package/public/his/editor/mock/sign.html +75 -75
  25. package/public/his/editor/vender/JsBarcode.all.js +3669 -3669
  26. package/public/his/editor/vender/date97/My97DatePicker.htm +65 -65
  27. package/public/his/editor/vender/date97/WdatePicker.js +677 -677
  28. package/public/his/editor/vender/date97/calendar.js +4 -4
  29. package/public/his/editor/vender/date97/lang/en.js +13 -13
  30. package/public/his/editor/vender/date97/lang/zh-cn.js +13 -13
  31. package/public/his/editor/vender/date97/lang/zh-tw.js +13 -13
  32. package/public/his/editor/vender/date97/skin/WdatePicker.css +10 -10
  33. package/public/his/editor/vender/date97/skin/default/datepicker.css +328 -328
  34. package/public/his/editor/vender/date97/skin/ext/datepicker.css +308 -308
  35. package/public/his/editor/vender/date97/skin/whyGreen/datepicker.css +255 -255
  36. package/public/his/editor/vender/diff.js +1627 -1627
  37. package/public/his/editor/vender/editor.js +1 -1
  38. package/public/his/editor/vender/fabric.js +31187 -31187
  39. package/public/his/editor/vender/jquery/jquery.base64.js +190 -190
  40. package/public/his/editor/vender/jquery/jquery.js +10872 -10872
  41. package/public/his/editor/vender/jquery/jquery.print.js +255 -255
  42. package/public/his/editor/vender/jquery/zTreeStyle/zTreeStyle.css +96 -96
  43. package/public/his/editor/vender/mui/mui.min.css +4 -4
  44. package/public/his/editor/vender/mui/mui.min.js +5 -5
  45. package/public/his/editor/vender/mui/mui.picker.min.css +6 -6
  46. package/public/his/editor/vender/mui/mui.picker.min.js +6 -6
  47. package/public/his/editor/vender/qrcode.js +7 -7
  48. package/public/his/editor/vender/requirejs/require.js +2145 -2145
  49. package/public/his/editor/vender/signature/jSignature.CompressorSVG.js +518 -518
  50. package/public/his/editor/vender/signature/jSignature.UndoButton.js +164 -164
  51. package/public/his/editor/vender/signature/jSignature.js +1486 -1486
  52. package/public/his/editor/vender/validator.js +5094 -5094
  53. package/public/his/editor/vender/weui/weui.css +5659 -5659
  54. package/public/his/editor/vender/weui/weui.min.css +4 -4
  55. package/public/his/editor/vender/weui/weui.min.js +11 -11
  56. package/src/assets/img/querySlotDemo.svg +15 -15
  57. package/src/assets/svg/badtwo.svg +1 -1
  58. package/src/assets/svg/goodtwo.svg +1 -1
  59. package/src/base-client/components/AI/AskAiBtn.vue +136 -136
  60. package/src/base-client/components/AI/demo.vue +31 -31
  61. package/src/base-client/components/common/AddressSearchCombobox/IcMapIcon.vue +16 -16
  62. package/src/base-client/components/common/AddressSearchCombobox/demo.vue +36 -36
  63. package/src/base-client/components/common/AddressSearchCombobox/ic_map.svg +6 -6
  64. package/src/base-client/components/common/AmapMarker/AmapPointRendering.vue +120 -120
  65. package/src/base-client/components/common/CitySelect/index.js +3 -3
  66. package/src/base-client/components/common/CitySelect/index.md +109 -109
  67. package/src/base-client/components/common/CreateQuery/CreateQuery.vue +669 -669
  68. package/src/base-client/components/common/CreateQuery/CreateQueryItem.vue +1014 -1014
  69. package/src/base-client/components/common/CreateQuery/index.js +3 -3
  70. package/src/base-client/components/common/CreateQuery/index.md +42 -42
  71. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQuery.vue +452 -452
  72. package/src/base-client/components/common/CreateSimpleFormQuery/CreateSimpleFormQueryItem.vue +511 -511
  73. package/src/base-client/components/common/CreateSimpleFormQuery/index.js +3 -3
  74. package/src/base-client/components/common/CreateSimpleFormQuery/index.md +42 -42
  75. package/src/base-client/components/common/FormGroupEdit/index.js +3 -3
  76. package/src/base-client/components/common/FormGroupEdit/index.md +43 -43
  77. package/src/base-client/components/common/FormGroupQuery/FormGroupQuery.vue +166 -166
  78. package/src/base-client/components/common/FormGroupQuery/index.js +3 -3
  79. package/src/base-client/components/common/FormGroupQuery/index.md +43 -43
  80. package/src/base-client/components/common/HIS/demo.vue +61 -61
  81. package/src/base-client/components/common/JSONToTree/jsontotree.vue +271 -271
  82. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorModal.vue +108 -108
  83. package/src/base-client/components/common/LowCodeComponent/LowCodeEditorPanel.vue +413 -413
  84. package/src/base-client/components/common/LowCodeComponent/LowCodePageOrganization.vue +502 -502
  85. package/src/base-client/components/common/LowCodeComponent/LowCodeRender.vue +728 -728
  86. package/src/base-client/components/common/LowCodeComponent/LowCodeRenderEnter.vue +29 -29
  87. package/src/base-client/components/common/LowCodeComponent/LowCodeUIStore.vue +219 -219
  88. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeAddPageModal.vue +117 -117
  89. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeCustomJSModal.vue +80 -80
  90. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeEventEditorModal.vue +398 -398
  91. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLifeCycleModal.vue +65 -65
  92. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicCallbackModal.vue +64 -64
  93. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeLogicParamModal.vue +73 -73
  94. package/src/base-client/components/common/LowCodeComponent/modal/lowCodeRunFunctionParamModal.vue +76 -76
  95. package/src/base-client/components/common/PersonSetting/PersonSetting.vue +208 -208
  96. package/src/base-client/components/common/PersonSetting/index.js +3 -3
  97. package/src/base-client/components/common/Recording/Recording.vue +243 -243
  98. package/src/base-client/components/common/Recording/index.js +3 -3
  99. package/src/base-client/components/common/Tree/Tree.vue +149 -149
  100. package/src/base-client/components/common/Tree/index.js +2 -2
  101. package/src/base-client/components/common/Upload/Upload.vue +334 -334
  102. package/src/base-client/components/common/Upload/index.js +3 -3
  103. package/src/base-client/components/common/XAddForm/XAddForm.vue +113 -113
  104. package/src/base-client/components/common/XAddNativeForm/XAddNativeForm.vue +1292 -1292
  105. package/src/base-client/components/common/XAddNativeForm/index.md +146 -146
  106. package/src/base-client/components/common/XAddNativeFormOA/XAddNativeFormOA.vue +304 -304
  107. package/src/base-client/components/common/XAddNativeFormOA/index.js +3 -3
  108. package/src/base-client/components/common/XAddNativeFormOA/index.md +146 -146
  109. package/src/base-client/components/common/XAddReport/index.js +3 -3
  110. package/src/base-client/components/common/XAddReport/index.md +56 -56
  111. package/src/base-client/components/common/XBadge/XBadge.vue +94 -94
  112. package/src/base-client/components/common/XButtons/XButtonDemo.vue +28 -28
  113. package/src/base-client/components/common/XButtons/index.js +3 -3
  114. package/src/base-client/components/common/XButtons/index.md +61 -61
  115. package/src/base-client/components/common/XCalendar/XCalendar.vue +4 -4
  116. package/src/base-client/components/common/XCard/XCard.vue +64 -64
  117. package/src/base-client/components/common/XCheckList/XCheckList.vue +106 -106
  118. package/src/base-client/components/common/XCheckList/XCheckListDemo.vue +41 -41
  119. package/src/base-client/components/common/XDataCard/index.js +3 -3
  120. package/src/base-client/components/common/XDataCard/index.md +1 -1
  121. package/src/base-client/components/common/XDataDrawer/XDataDrawer.vue +180 -180
  122. package/src/base-client/components/common/XDataDrawer/index.js +3 -3
  123. package/src/base-client/components/common/XDataDrawer/index.md +41 -41
  124. package/src/base-client/components/common/XDatePicker/demo.vue +153 -153
  125. package/src/base-client/components/common/XDescriptions/index.js +3 -3
  126. package/src/base-client/components/common/XDescriptions/index.md +83 -83
  127. package/src/base-client/components/common/XDetailsView/XDetailsView.vue +238 -238
  128. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  129. package/src/base-client/components/common/XForm/XFormItem.vue +1530 -1530
  130. package/src/base-client/components/common/XForm/XStatusButton.vue +54 -54
  131. package/src/base-client/components/common/XForm/index.md +178 -178
  132. package/src/base-client/components/common/XForm/itemComponent/XClickChangeBtn/index.vue +49 -49
  133. package/src/base-client/components/common/XFormGroup/index.js +3 -3
  134. package/src/base-client/components/common/XFormGroup/index.md +38 -38
  135. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  136. package/src/base-client/components/common/XFormTable/demo.vue +89 -89
  137. package/src/base-client/components/common/XFormTable/index.md +92 -92
  138. package/src/base-client/components/common/XLabelSelect/XLabelSelect.vue +110 -110
  139. package/src/base-client/components/common/XLabelSelect/XLabelSelectDemo.vue +35 -35
  140. package/src/base-client/components/common/XLicensePlate/XLicensePlate.vue +193 -193
  141. package/src/base-client/components/common/XLicensePlate/XLicensePlateDemo.vue +48 -48
  142. package/src/base-client/components/common/XPrint/OpenInvoice.vue +21 -21
  143. package/src/base-client/components/common/XPrint/PrintHtml.js +98 -98
  144. package/src/base-client/components/common/XPrint/css/hiPrintCss.js +359 -359
  145. package/src/base-client/components/common/XPrint/css/lodopCss.js +26 -26
  146. package/src/base-client/components/common/XPrint/css/print-lock.css +351 -351
  147. package/src/base-client/components/common/XPrint/index.vue +97 -97
  148. package/src/base-client/components/common/XReport/XReportDesign.vue +463 -463
  149. package/src/base-client/components/common/XReport/XReportJsonRender.vue +381 -381
  150. package/src/base-client/components/common/XReport/index.js +3 -3
  151. package/src/base-client/components/common/XReport/print.js +186 -186
  152. package/src/base-client/components/common/XReportDrawer/index.js +3 -3
  153. package/src/base-client/components/common/XReportGrid/index.js +3 -3
  154. package/src/base-client/components/common/XReportGrid/index.md +44 -44
  155. package/src/base-client/components/common/XReportSlot/XReportSlot.vue +110 -110
  156. package/src/base-client/components/common/XReportSlot/index.js +3 -3
  157. package/src/base-client/components/common/XReportSlot/index.md +48 -48
  158. package/src/base-client/components/common/XSimpleDescriptions/XSimpleDescriptions.vue +166 -166
  159. package/src/base-client/components/common/XSimpleDescriptions/index.js +3 -3
  160. package/src/base-client/components/common/XSimpleDescriptions/index.md +7 -7
  161. package/src/base-client/components/common/XStepView/XStepView.vue +252 -252
  162. package/src/base-client/components/common/XStepView/index.js +3 -3
  163. package/src/base-client/components/common/XStepView/index.md +31 -31
  164. package/src/base-client/components/common/XTab/XTabDemo.vue +22 -22
  165. package/src/base-client/components/common/XTab/index.js +3 -3
  166. package/src/base-client/components/common/XTable/CustomFuncCel.vue +51 -51
  167. package/src/base-client/components/common/XTable/TableCellRenderer.vue +161 -161
  168. package/src/base-client/components/common/XTable/XTable.vue +2 -1
  169. package/src/base-client/components/common/XTable/index.md +255 -255
  170. package/src/base-client/components/common/XTagGroup/index.vue +52 -52
  171. package/src/base-client/components/common/XTree/XTree.vue +424 -424
  172. package/src/base-client/components/common/XTree/index.js +3 -3
  173. package/src/base-client/components/common/XTree/index.md +36 -36
  174. package/src/base-client/components/common/XTreeOne/XTreeOne.vue +113 -113
  175. package/src/base-client/components/common/XTreeOne/XTreeOnePro.vue +128 -128
  176. package/src/base-client/components/common/richTextModal/index.vue +56 -56
  177. package/src/base-client/components/common/richTextModal/richDemo.vue +48 -48
  178. package/src/base-client/components/his/XCharge/XChargeDemo.vue +145 -145
  179. package/src/base-client/components/his/XHisEditor/index.js +3 -3
  180. package/src/base-client/components/index.js +51 -51
  181. package/src/base-client/components/layout/XTreeView/XTreeView.vue +130 -130
  182. package/src/base-client/components/layout/XTreeView/index.js +3 -3
  183. package/src/base-client/components/layout/XTreeView/index.md +46 -46
  184. package/src/base-client/components/system/DictionaryDetailsView/DictionaryDetailsView.vue +232 -232
  185. package/src/base-client/components/system/QueryParamsDetailsView/QueryParamsDetailsView.vue +281 -281
  186. package/src/base-client/plugins/Config.js +19 -19
  187. package/src/base-client/plugins/GetLoginInfoService.js +183 -183
  188. package/src/base-client/plugins/Recording.js +258 -258
  189. package/src/base-client/plugins/index.js +23 -23
  190. package/src/base-client/plugins/tabs-page-plugin.js +39 -39
  191. package/src/components/Charts/Bar.vue +62 -62
  192. package/src/components/Charts/ChartCard.vue +134 -134
  193. package/src/components/Charts/Liquid.vue +67 -67
  194. package/src/components/Charts/MiniArea.vue +39 -39
  195. package/src/components/Charts/MiniBar.vue +39 -39
  196. package/src/components/Charts/MiniProgress.vue +75 -75
  197. package/src/components/Charts/MiniSmoothArea.vue +40 -40
  198. package/src/components/Charts/Radar.vue +68 -68
  199. package/src/components/Charts/RankList.vue +77 -77
  200. package/src/components/Charts/TagCloud.vue +113 -113
  201. package/src/components/Charts/TransferBar.vue +64 -64
  202. package/src/components/Charts/Trend.vue +82 -82
  203. package/src/components/Charts/chart.less +12 -12
  204. package/src/components/Charts/smooth.area.less +13 -13
  205. package/src/components/CodeMirror/inedx.vue +118 -118
  206. package/src/components/CodeMirror/setting.js +40 -40
  207. package/src/components/NumberInfo/NumberInfo.vue +54 -54
  208. package/src/components/NumberInfo/index.js +3 -3
  209. package/src/components/NumberInfo/index.less +54 -54
  210. package/src/components/NumberInfo/index.md +43 -43
  211. package/src/components/card/ChartCard.vue +79 -79
  212. package/src/components/chart/Bar.vue +60 -60
  213. package/src/components/chart/MiniArea.vue +67 -67
  214. package/src/components/chart/MiniBar.vue +59 -59
  215. package/src/components/chart/MiniProgress.vue +57 -57
  216. package/src/components/chart/Radar.vue +80 -80
  217. package/src/components/chart/RankingList.vue +60 -60
  218. package/src/components/chart/Trend.vue +79 -79
  219. package/src/components/chart/index.less +9 -9
  220. package/src/components/checkbox/ColorCheckbox.vue +157 -157
  221. package/src/components/checkbox/ImgCheckbox.vue +117 -117
  222. package/src/components/checkbox/ImgCheckboxGroup.vue +76 -76
  223. package/src/components/checkbox/index.js +9 -9
  224. package/src/components/exception/ExceptionPage.vue +70 -70
  225. package/src/components/g2Charts/constants.js +202 -202
  226. package/src/components/g2Charts/demo.vue +808 -808
  227. package/src/components/g2Charts/designer.vue +228 -228
  228. package/src/components/g2Charts/designerBaseConfig.vue +61 -61
  229. package/src/components/g2Charts/designerDataConfig.vue +259 -259
  230. package/src/components/g2Charts/designerStyleConfig.vue +16 -16
  231. package/src/components/g2Charts/index.vue +397 -397
  232. package/src/components/index.js +36 -36
  233. package/src/components/input/IInput.vue +66 -66
  234. package/src/components/menu/SideMenu.vue +75 -75
  235. package/src/components/menu/menu.js +273 -273
  236. package/src/components/setting/Setting.vue +234 -234
  237. package/src/components/tool/AStepItem.vue +60 -60
  238. package/src/config/CreateQueryConfig.js +325 -325
  239. package/src/config/default/antd.config.js +89 -89
  240. package/src/config/default/setting.config.js +55 -55
  241. package/src/font-style/font.css +60 -60
  242. package/src/layouts/CommonLayout.vue +56 -56
  243. package/src/layouts/PageLayout.vue +151 -151
  244. package/src/layouts/SinglePageView.vue +136 -136
  245. package/src/layouts/header/AdminHeader.vue +132 -132
  246. package/src/layouts/header/HeaderNotice.vue +177 -177
  247. package/src/layouts/header/InstitutionDetail.vue +181 -181
  248. package/src/layouts/tabs/TabsHead.vue +189 -189
  249. package/src/lib.js +1 -1
  250. package/src/mock/extend/index.js +84 -84
  251. package/src/mock/goods/index.js +108 -108
  252. package/src/pages/DefaultExample/index.vue +77 -77
  253. package/src/pages/DynamicStatistics/ChartSelector.vue +331 -331
  254. package/src/pages/DynamicStatistics/DataTabs.vue +83 -83
  255. package/src/pages/DynamicStatistics/DynamicTable.vue +128 -128
  256. package/src/pages/DynamicStatistics/EvaluationArea.vue +69 -69
  257. package/src/pages/DynamicStatistics/FavoriteList.vue +50 -50
  258. package/src/pages/DynamicStatistics/QuestionHistoryAndFavorites.vue +591 -591
  259. package/src/pages/DynamicStatistics/SearchBar.vue +192 -192
  260. package/src/pages/DynamicStatistics/index.vue +282 -282
  261. package/src/pages/Example/childIndex.vue +15 -15
  262. package/src/pages/Example/index.vue +30 -30
  263. package/src/pages/NewDynamicStatistics/ChartSelector.vue +331 -331
  264. package/src/pages/NewDynamicStatistics/DataTabs.vue +122 -122
  265. package/src/pages/NewDynamicStatistics/DynamicTable.vue +128 -128
  266. package/src/pages/NewDynamicStatistics/EvaluationArea.vue +69 -69
  267. package/src/pages/NewDynamicStatistics/FavoriteList.vue +50 -50
  268. package/src/pages/NewDynamicStatistics/QuestionHistoryAndFavorites.vue +289 -289
  269. package/src/pages/NewDynamicStatistics/SearchBar.vue +193 -193
  270. package/src/pages/NewDynamicStatistics/index.vue +258 -258
  271. package/src/pages/Recording/index.vue +77 -77
  272. package/src/pages/ServiceReview/index.vue +284 -284
  273. package/src/pages/SubExample/index.vue +26 -26
  274. package/src/pages/WorkflowDetail/WorkflowPageDetail/TrimTextTail.vue +23 -23
  275. package/src/pages/XReportView/index.vue +64 -64
  276. package/src/pages/XTreeOneProExample/index.vue +67 -67
  277. package/src/pages/dashboard/workplace/WorkPlace.vue +141 -141
  278. package/src/pages/login/Login.vue +379 -379
  279. package/src/pages/login/LoginV3.vue +389 -389
  280. package/src/pages/lowCode/lowCodeEditor.vue +1219 -1219
  281. package/src/pages/lowCode/lowCodeRenderPage.vue +43 -43
  282. package/src/pages/report/ReportTable.js +124 -124
  283. package/src/pages/resourceManage/orgListManage.vue +98 -98
  284. package/src/pages/system/dictionary/index.vue +44 -44
  285. package/src/pages/system/monitor/loginInfor/index.vue +37 -37
  286. package/src/pages/system/monitor/operLog/index.vue +37 -37
  287. package/src/pages/system/settings/modifyPassword.vue +117 -117
  288. package/src/pages/system/ticket/index.vue +480 -480
  289. package/src/pages/system/ticket/submitTicketSuccess.vue +484 -484
  290. package/src/pages/userInfoDetailManage/ChangeMeterRecordQuery/index.vue +64 -64
  291. package/src/pages/userInfoDetailManage/InfoChangeRecordQuery/index.vue +64 -64
  292. package/src/pages/userInfoDetailManage/InstructRecordQuery/index.vue +64 -64
  293. package/src/pages/userInfoDetailManage/MeterParamRecordQuery/index.vue +64 -64
  294. package/src/pages/userInfoDetailManage/TransferRecordQuery/index.vue +66 -66
  295. package/src/pages/userInfoDetailManage/WatchCollectionRecordQuery/index.vue +64 -64
  296. package/src/plugins/EventLogPlugin.js +33 -33
  297. package/src/plugins/FindParentsData.js +17 -17
  298. package/src/services/DataModel.js +30 -30
  299. package/src/services/LodopFuncs.js +137 -137
  300. package/src/services/api/TicketDetailsViewApi.js +46 -46
  301. package/src/services/api/cas.js +79 -79
  302. package/src/services/api/entity.js +18 -18
  303. package/src/services/api/index.js +17 -17
  304. package/src/store/modules/account.js +115 -115
  305. package/src/store/modules/index.js +5 -5
  306. package/src/store/modules/lowCode.js +33 -33
  307. package/src/store/modules/setting.js +119 -119
  308. package/src/theme/default/style.less +58 -58
  309. package/src/utils/authority-utils.js +85 -85
  310. package/src/utils/errorCode.js +6 -6
  311. package/src/utils/formatter.js +74 -74
  312. package/src/utils/htmlToPDF.js +108 -108
  313. package/src/utils/htmlToPDFApi.js +5 -5
  314. package/src/utils/login.js +188 -188
  315. package/src/utils/lowcode/lowcodeComponentMixin.js +120 -120
  316. package/src/utils/lowcode/lowcodeLog.js +29 -29
  317. package/src/utils/lowcode/lowcodeUtils.js +373 -373
  318. package/src/utils/lowcode/registerComponentForEditor.js +1 -1
  319. package/src/utils/lowcode/registerComponentForRender.js +11 -11
  320. package/src/utils/map-utils.js +47 -47
  321. package/src/utils/reg.js +95 -95
  322. package/src/utils/runEvalFunction.js +14 -14
  323. package/src/utils/theme-color-replacer-extend.js +92 -92
  324. package/src/utils/util.js +329 -329
  325. package/src/utils/waterMark.js +31 -31
  326. package//350/277/201/347/247/273/346/227/245/345/277/227.md +15 -15
@@ -1,122 +1,122 @@
1
- <template>
2
- <a-collapse :active-key="activeKey">
3
- <a-collapse-panel
4
- :key="value"
5
- v-for="(item, value) in questionList">
6
- <!-- 使用具名插槽#header来自定义头部内容 -->
7
- <template #header>
8
- <!-- 这里可以根据需要设计你的标题结构 -->
9
- <div class="custom-header">
10
- {{ item.question }}
11
- <!-- 假设你想在标题后显示一个状态图标,可以根据item.sql的存在与否来决定 -->
12
- <a-icon v-if="!item.sql" type="close-circle" style="color: red; margin-left: 5px;" />
13
- </div>
14
- </template>
15
- <a-row v-if="item.sql && item.data">
16
- <DynamicTable :title="item.question" :table-data="item.data" />
17
- <ChartSelector :rawData="item.data"/>
18
- </a-row>
19
- <a-row v-else>
20
- <a-result
21
- status="error"
22
- title="请求失败"
23
- sub-title="这通常是因为网络波动或程序故障导致的"
24
- >
25
-
26
- <div class="desc">
27
- <p style="font-size: 16px;">
28
- <strong>我如何解决这个问题:</strong>
29
- </p>
30
- <p>
31
- <a-icon :style="{ color: 'red' }" type="close-circle" /> 尝试重新发起请求
32
- </p>
33
- <p>
34
- <a-icon :style="{ color: 'red' }" type="close-circle" /> 调整提问方式
35
- </p>
36
- </div>
37
- </a-result>
38
- </a-row>
39
- <a-icon slot="extra" type="delete" @click.stop="handleClick(item)" />
40
- </a-collapse-panel>
41
- </a-collapse>
42
- </template>
43
-
44
- <script>
45
- import ChartSelector from './ChartSelector.vue'
46
- import EvaluationArea from './EvaluationArea.vue'
47
- import Ellipsis from '@vue2-client/components/Ellipsis/Ellipsis.vue'
48
- import DynamicTable from './DynamicTable.vue'
49
- import { indexedDB } from '@vue2-client/utils/indexedDB'
50
-
51
- export default {
52
- components: {
53
- DynamicTable,
54
- Ellipsis,
55
- ChartSelector,
56
- EvaluationArea
57
- },
58
- data () {
59
- return {
60
- dataTypeActiveKey: '0',
61
- pane: {},
62
- questionList: [],
63
- currentKey: '',
64
- activeKey: 0
65
- }
66
- },
67
- mounted () {
68
- this.pane = {}
69
- },
70
- methods: {
71
- async show (obj) {
72
- this.questionList = obj.questionList
73
- this.currentKey = obj.key
74
- },
75
- handleClick (item) {
76
- indexedDB.get(this.currentKey, (data) => {
77
- let index = 0
78
- // 使用while循环以避免在遍历过程中修改数组长度导致的问题
79
- while (index < data.questionList.length) {
80
- if (data.questionList[index].uuid === item.uuid) {
81
- // 找到匹配的uuid,使用splice方法移除该元素
82
- data.questionList.splice(index, 1)
83
- break
84
- } else {
85
- // 如果uuid不匹配,则索引加1继续检查下一个元素
86
- index++
87
- }
88
- }
89
- // 回更indexedDB库中的数据
90
- indexedDB.update(this.currentKey, data)
91
- // 刷新数据
92
- this.$emit('afterDelDialogOfOne', data)
93
- this.questionList = data.questionList
94
- })
95
- }
96
- }
97
- }
98
- </script>
99
- <style lang="less" scoped>
100
- .tab-title {
101
- font-size: 20px;
102
- font-weight: bold;
103
- color: #333;
104
- }
105
-
106
- .chart-card {
107
- margin-top: 20px;
108
- }
109
-
110
- .data-content {
111
- min-height: 100%;
112
- background-color: #fff;
113
- padding: 20px;
114
- border-radius: 8px;
115
- }
116
- :deep(.ant-tabs-bar) {
117
- margin-bottom: 0px;
118
- }
119
- :deep(.ant-collapse-extra) {
120
- margin-top: -20px
121
- }
122
- </style>
1
+ <template>
2
+ <a-collapse :active-key="activeKey">
3
+ <a-collapse-panel
4
+ :key="value"
5
+ v-for="(item, value) in questionList">
6
+ <!-- 使用具名插槽#header来自定义头部内容 -->
7
+ <template #header>
8
+ <!-- 这里可以根据需要设计你的标题结构 -->
9
+ <div class="custom-header">
10
+ {{ item.question }}
11
+ <!-- 假设你想在标题后显示一个状态图标,可以根据item.sql的存在与否来决定 -->
12
+ <a-icon v-if="!item.sql" type="close-circle" style="color: red; margin-left: 5px;" />
13
+ </div>
14
+ </template>
15
+ <a-row v-if="item.sql && item.data">
16
+ <DynamicTable :title="item.question" :table-data="item.data" />
17
+ <ChartSelector :rawData="item.data"/>
18
+ </a-row>
19
+ <a-row v-else>
20
+ <a-result
21
+ status="error"
22
+ title="请求失败"
23
+ sub-title="这通常是因为网络波动或程序故障导致的"
24
+ >
25
+
26
+ <div class="desc">
27
+ <p style="font-size: 16px;">
28
+ <strong>我如何解决这个问题:</strong>
29
+ </p>
30
+ <p>
31
+ <a-icon :style="{ color: 'red' }" type="close-circle" /> 尝试重新发起请求
32
+ </p>
33
+ <p>
34
+ <a-icon :style="{ color: 'red' }" type="close-circle" /> 调整提问方式
35
+ </p>
36
+ </div>
37
+ </a-result>
38
+ </a-row>
39
+ <a-icon slot="extra" type="delete" @click.stop="handleClick(item)" />
40
+ </a-collapse-panel>
41
+ </a-collapse>
42
+ </template>
43
+
44
+ <script>
45
+ import ChartSelector from './ChartSelector.vue'
46
+ import EvaluationArea from './EvaluationArea.vue'
47
+ import Ellipsis from '@vue2-client/components/Ellipsis/Ellipsis.vue'
48
+ import DynamicTable from './DynamicTable.vue'
49
+ import { indexedDB } from '@vue2-client/utils/indexedDB'
50
+
51
+ export default {
52
+ components: {
53
+ DynamicTable,
54
+ Ellipsis,
55
+ ChartSelector,
56
+ EvaluationArea
57
+ },
58
+ data () {
59
+ return {
60
+ dataTypeActiveKey: '0',
61
+ pane: {},
62
+ questionList: [],
63
+ currentKey: '',
64
+ activeKey: 0
65
+ }
66
+ },
67
+ mounted () {
68
+ this.pane = {}
69
+ },
70
+ methods: {
71
+ async show (obj) {
72
+ this.questionList = obj.questionList
73
+ this.currentKey = obj.key
74
+ },
75
+ handleClick (item) {
76
+ indexedDB.get(this.currentKey, (data) => {
77
+ let index = 0
78
+ // 使用while循环以避免在遍历过程中修改数组长度导致的问题
79
+ while (index < data.questionList.length) {
80
+ if (data.questionList[index].uuid === item.uuid) {
81
+ // 找到匹配的uuid,使用splice方法移除该元素
82
+ data.questionList.splice(index, 1)
83
+ break
84
+ } else {
85
+ // 如果uuid不匹配,则索引加1继续检查下一个元素
86
+ index++
87
+ }
88
+ }
89
+ // 回更indexedDB库中的数据
90
+ indexedDB.update(this.currentKey, data)
91
+ // 刷新数据
92
+ this.$emit('afterDelDialogOfOne', data)
93
+ this.questionList = data.questionList
94
+ })
95
+ }
96
+ }
97
+ }
98
+ </script>
99
+ <style lang="less" scoped>
100
+ .tab-title {
101
+ font-size: 20px;
102
+ font-weight: bold;
103
+ color: #333;
104
+ }
105
+
106
+ .chart-card {
107
+ margin-top: 20px;
108
+ }
109
+
110
+ .data-content {
111
+ min-height: 100%;
112
+ background-color: #fff;
113
+ padding: 20px;
114
+ border-radius: 8px;
115
+ }
116
+ :deep(.ant-tabs-bar) {
117
+ margin-bottom: 0px;
118
+ }
119
+ :deep(.ant-collapse-extra) {
120
+ margin-top: -20px
121
+ }
122
+ </style>
@@ -1,128 +1,128 @@
1
- <template>
2
- <div class="table-main">
3
- <template v-if="title">
4
- <a-table
5
- v-if="tableData"
6
- :scroll="{ x: scrollXWidth, y: scrollYHeight }"
7
- size="middle"
8
- :columns="tableColumns"
9
- :dataSource="tableData"
10
- :rowKey="record => record.id">
11
- <template slot="footer">
12
- <a-space>
13
- <span>
14
- <strong>{{ `总行数 : ${tableData.length}` }}</strong>
15
- </span>
16
- <span v-for="column in tableColumns" :key="column.key">
17
- <strong v-if="column.sum !== undefined">{{ `${column.key} : ${column.sum}` }}</strong>
18
- </span>
19
- </a-space>
20
- </template>
21
- </a-table>
22
- <a-result
23
- v-else
24
- status="error"
25
- title="请求失败"
26
- sub-title="这通常是因为网络波动或程序故障导致的"
27
- >
28
-
29
- <div class="desc">
30
- <p style="font-size: 16px;">
31
- <strong>我如何解决这个问题:</strong>
32
- </p>
33
- <p>
34
- <a-icon :style="{ color: 'red' }" type="close-circle" /> 尝试重新发起请求
35
- </p>
36
- <p>
37
- <a-icon :style="{ color: 'red' }" type="close-circle" /> 调整提问方式
38
- </p>
39
- </div>
40
- </a-result>
41
- </template>
42
- </div></template>
43
-
44
- <script>
45
-
46
- export default {
47
- name: 'DynamicTable',
48
- data () {
49
- return {
50
- tableColumns: [],
51
- // x滚动条宽度
52
- scrollXWidth: 1600,
53
- scrollYHeight: 400
54
- }
55
- },
56
- mounted () {
57
- this.initData()
58
- },
59
- props: {
60
- title: {
61
- type: String,
62
- default: undefined
63
- },
64
- tableData: {
65
- type: Array,
66
- default: () => null
67
- }
68
- },
69
- watch: {
70
- tableData: {
71
- deep: true,
72
- handler (newVal) {
73
- this.initData()
74
- }
75
- }
76
- },
77
- methods: {
78
- async initData () {
79
- try {
80
- if (!this.tableData) {
81
- return
82
- }
83
- // 从数据第一项推断列信息
84
- if (this.tableData.length === 0) {
85
- this.tableColumns = []
86
- return
87
- }
88
- const sample = this.tableData[0]
89
- this.tableColumns = Object.keys(sample).map(key => {
90
- // 检查是否所有的值都是数字
91
- const allNumbers = this.tableData.every(item => typeof item[key] === 'number')
92
- let sum = 0
93
- if (allNumbers) {
94
- // 计算总和
95
- sum = this.tableData.reduce((total, item) => total + item[key], 0)
96
- }
97
- return {
98
- title: key, // 使用键名作为列标题
99
- dataIndex: key, // 数据索引与键名相同
100
- key: key,
101
- ellipsis: true,
102
- sum: allNumbers ? sum : undefined, // 如果所有的值都是数字,添加总和
103
- }
104
- })
105
- let totalWidth = 0
106
- // 设置表格宽度
107
- for (let i = 0; i < this.tableColumns.length; i++) {
108
- totalWidth = totalWidth + 180
109
- }
110
- // 设置表格高度为固定值
111
- this.scrollYHeight = 'calc(100vh - 35rem)'
112
- // 横向滚动长度大于所有宽度,才能实现固定表头
113
- this.scrollXWidth = totalWidth
114
- } catch (error) {
115
- console.error('Fetching data failed:', error)
116
- }
117
- },
118
- }
119
- }
120
- </script>
121
- <style lang="less" scoped>
122
- .table-main {
123
- margin-top: 8px;
124
- :deep(.ant-table) {
125
- background-color: #fff;
126
- }
127
- }
128
- </style>
1
+ <template>
2
+ <div class="table-main">
3
+ <template v-if="title">
4
+ <a-table
5
+ v-if="tableData"
6
+ :scroll="{ x: scrollXWidth, y: scrollYHeight }"
7
+ size="middle"
8
+ :columns="tableColumns"
9
+ :dataSource="tableData"
10
+ :rowKey="record => record.id">
11
+ <template slot="footer">
12
+ <a-space>
13
+ <span>
14
+ <strong>{{ `总行数 : ${tableData.length}` }}</strong>
15
+ </span>
16
+ <span v-for="column in tableColumns" :key="column.key">
17
+ <strong v-if="column.sum !== undefined">{{ `${column.key} : ${column.sum}` }}</strong>
18
+ </span>
19
+ </a-space>
20
+ </template>
21
+ </a-table>
22
+ <a-result
23
+ v-else
24
+ status="error"
25
+ title="请求失败"
26
+ sub-title="这通常是因为网络波动或程序故障导致的"
27
+ >
28
+
29
+ <div class="desc">
30
+ <p style="font-size: 16px;">
31
+ <strong>我如何解决这个问题:</strong>
32
+ </p>
33
+ <p>
34
+ <a-icon :style="{ color: 'red' }" type="close-circle" /> 尝试重新发起请求
35
+ </p>
36
+ <p>
37
+ <a-icon :style="{ color: 'red' }" type="close-circle" /> 调整提问方式
38
+ </p>
39
+ </div>
40
+ </a-result>
41
+ </template>
42
+ </div></template>
43
+
44
+ <script>
45
+
46
+ export default {
47
+ name: 'DynamicTable',
48
+ data () {
49
+ return {
50
+ tableColumns: [],
51
+ // x滚动条宽度
52
+ scrollXWidth: 1600,
53
+ scrollYHeight: 400
54
+ }
55
+ },
56
+ mounted () {
57
+ this.initData()
58
+ },
59
+ props: {
60
+ title: {
61
+ type: String,
62
+ default: undefined
63
+ },
64
+ tableData: {
65
+ type: Array,
66
+ default: () => null
67
+ }
68
+ },
69
+ watch: {
70
+ tableData: {
71
+ deep: true,
72
+ handler (newVal) {
73
+ this.initData()
74
+ }
75
+ }
76
+ },
77
+ methods: {
78
+ async initData () {
79
+ try {
80
+ if (!this.tableData) {
81
+ return
82
+ }
83
+ // 从数据第一项推断列信息
84
+ if (this.tableData.length === 0) {
85
+ this.tableColumns = []
86
+ return
87
+ }
88
+ const sample = this.tableData[0]
89
+ this.tableColumns = Object.keys(sample).map(key => {
90
+ // 检查是否所有的值都是数字
91
+ const allNumbers = this.tableData.every(item => typeof item[key] === 'number')
92
+ let sum = 0
93
+ if (allNumbers) {
94
+ // 计算总和
95
+ sum = this.tableData.reduce((total, item) => total + item[key], 0)
96
+ }
97
+ return {
98
+ title: key, // 使用键名作为列标题
99
+ dataIndex: key, // 数据索引与键名相同
100
+ key: key,
101
+ ellipsis: true,
102
+ sum: allNumbers ? sum : undefined, // 如果所有的值都是数字,添加总和
103
+ }
104
+ })
105
+ let totalWidth = 0
106
+ // 设置表格宽度
107
+ for (let i = 0; i < this.tableColumns.length; i++) {
108
+ totalWidth = totalWidth + 180
109
+ }
110
+ // 设置表格高度为固定值
111
+ this.scrollYHeight = 'calc(100vh - 35rem)'
112
+ // 横向滚动长度大于所有宽度,才能实现固定表头
113
+ this.scrollXWidth = totalWidth
114
+ } catch (error) {
115
+ console.error('Fetching data failed:', error)
116
+ }
117
+ },
118
+ }
119
+ }
120
+ </script>
121
+ <style lang="less" scoped>
122
+ .table-main {
123
+ margin-top: 8px;
124
+ :deep(.ant-table) {
125
+ background-color: #fff;
126
+ }
127
+ }
128
+ </style>
@@ -1,69 +1,69 @@
1
- <template>
2
- <div class="evaluation-card">
3
- <div v-if="!action">
4
- <p>您对这次搜索结果满意吗?</p>
5
- <a-button-group>
6
- <a-space>
7
- <a-button type="primary" icon="like" @click="submitEvaluation(0)">满意</a-button>
8
- <a-button type="danger" icon="dislike" @click="submitEvaluation(1)">不满意</a-button>
9
- <a-button type="default" icon="frown" @click="submitEvaluation(3)">问题不明确</a-button>
10
- </a-space>
11
- </a-button-group>
12
- </div>
13
- </div>
14
- </template>
15
-
16
- <script>
17
- import { post } from '@vue2-client/services/api'
18
- import { indexedDB } from '@vue2-client/utils/indexedDB'
19
-
20
- export default {
21
- data () {
22
- return {
23
- action: false
24
- }
25
- },
26
- props: {
27
- uuid: {
28
- type: String,
29
- required: true
30
- }
31
- },
32
- methods: {
33
- submitEvaluation (result) {
34
- const key = 'question-' + this.uuid
35
- let flag = true
36
- indexedDB.get(key, (item) => {
37
- flag = false
38
- // 收藏状态不存储到库里
39
- delete item.isFavorite
40
- const content = Object.assign(item, {
41
- evaluation: result
42
- })
43
- // 保存到数据库中
44
- post('/api/af-system/logic/openapi/updateCommonData', {
45
- type: 'ai-question',
46
- content: this.uuid,
47
- newContent: content
48
- }).then(res => {
49
- this.action = true
50
- this.$message.success('评论成功')
51
- indexedDB.delete(key)
52
- indexedDB.add(key, content)
53
- })
54
- })
55
- // 如果 indexedDB 没有获取到说明是对话库的数据
56
- if (flag) {
57
- this.$emit('submitEvaluationLib', result, this.uuid)
58
- }
59
- }
60
- }
61
- }
62
- </script>
63
- <style lang="less" scoped>
64
- .evaluation-card {
65
- width: 50%;
66
- text-align: center;
67
- margin: 20px auto 0 auto;
68
- }
69
- </style>
1
+ <template>
2
+ <div class="evaluation-card">
3
+ <div v-if="!action">
4
+ <p>您对这次搜索结果满意吗?</p>
5
+ <a-button-group>
6
+ <a-space>
7
+ <a-button type="primary" icon="like" @click="submitEvaluation(0)">满意</a-button>
8
+ <a-button type="danger" icon="dislike" @click="submitEvaluation(1)">不满意</a-button>
9
+ <a-button type="default" icon="frown" @click="submitEvaluation(3)">问题不明确</a-button>
10
+ </a-space>
11
+ </a-button-group>
12
+ </div>
13
+ </div>
14
+ </template>
15
+
16
+ <script>
17
+ import { post } from '@vue2-client/services/api'
18
+ import { indexedDB } from '@vue2-client/utils/indexedDB'
19
+
20
+ export default {
21
+ data () {
22
+ return {
23
+ action: false
24
+ }
25
+ },
26
+ props: {
27
+ uuid: {
28
+ type: String,
29
+ required: true
30
+ }
31
+ },
32
+ methods: {
33
+ submitEvaluation (result) {
34
+ const key = 'question-' + this.uuid
35
+ let flag = true
36
+ indexedDB.get(key, (item) => {
37
+ flag = false
38
+ // 收藏状态不存储到库里
39
+ delete item.isFavorite
40
+ const content = Object.assign(item, {
41
+ evaluation: result
42
+ })
43
+ // 保存到数据库中
44
+ post('/api/af-system/logic/openapi/updateCommonData', {
45
+ type: 'ai-question',
46
+ content: this.uuid,
47
+ newContent: content
48
+ }).then(res => {
49
+ this.action = true
50
+ this.$message.success('评论成功')
51
+ indexedDB.delete(key)
52
+ indexedDB.add(key, content)
53
+ })
54
+ })
55
+ // 如果 indexedDB 没有获取到说明是对话库的数据
56
+ if (flag) {
57
+ this.$emit('submitEvaluationLib', result, this.uuid)
58
+ }
59
+ }
60
+ }
61
+ }
62
+ </script>
63
+ <style lang="less" scoped>
64
+ .evaluation-card {
65
+ width: 50%;
66
+ text-align: center;
67
+ margin: 20px auto 0 auto;
68
+ }
69
+ </style>