zbcx_ckyc 1.0.0

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 (249) hide show
  1. package/README.md +3 -0
  2. package/package.json +90 -0
  3. package/src/plugins/app/com/CesiumTool.js +730 -0
  4. package/src/plugins/app/com/MapMethods.js +355 -0
  5. package/src/plugins/app/com/MapTool.vue +772 -0
  6. package/src/plugins/app/com/MenuRouter.vue +157 -0
  7. package/src/plugins/app/com/ParamsDes.vue +35 -0
  8. package/src/plugins/app/com/SelCoorSys.vue +235 -0
  9. package/src/plugins/app/com/WebProj4.js +32 -0
  10. package/src/plugins/app/com/measure.js +127 -0
  11. package/src/plugins/app/com/yx.js +238 -0
  12. package/src/plugins/app/modelmanagement/D3DrawGraph.js +708 -0
  13. package/src/plugins/app/modelmanagement/MineralGo.vue +241 -0
  14. package/src/plugins/app/modelmanagement/MineralModel.vue +1203 -0
  15. package/src/plugins/app/modelmanagement/ModelCloudmap.vue +69 -0
  16. package/src/plugins/app/modelmanagement/ModelMst.vue +60 -0
  17. package/src/plugins/app/modelmanagement/ModelSy.vue +173 -0
  18. package/src/plugins/app/modelmanagement/ModelTp.vue +51 -0
  19. package/src/plugins/app/modelmanagement/ModelUpload.vue +774 -0
  20. package/src/plugins/app/znycpjxt/Api.js +714 -0
  21. package/src/plugins/app/znycpjxt/Bf/AttFactory.js +25 -0
  22. package/src/plugins/app/znycpjxt/Bf/IAnomalyhandle.js +102 -0
  23. package/src/plugins/app/znycpjxt/Bf/IComposeanomaly.js +140 -0
  24. package/src/plugins/app/znycpjxt/Bf/IContinueanaly.js +138 -0
  25. package/src/plugins/app/znycpjxt/Bf/IContrastanaly.js +138 -0
  26. package/src/plugins/app/znycpjxt/Bf/ICustomNode.js +145 -0
  27. package/src/plugins/app/znycpjxt/Bf/IDerivanaly.js +139 -0
  28. package/src/plugins/app/znycpjxt/Bf/IFilterananly.js +141 -0
  29. package/src/plugins/app/znycpjxt/Bf/IMeananaly.js +137 -0
  30. package/src/plugins/app/znycpjxt/Bf/IModelNodeBase.js +135 -0
  31. package/src/plugins/app/znycpjxt/Bf/IMoveaverage.js +135 -0
  32. package/src/plugins/app/znycpjxt/Bf/IReducepole.js +141 -0
  33. package/src/plugins/app/znycpjxt/Bf/ISmoothanaly.js +135 -0
  34. package/src/plugins/app/znycpjxt/Bf/ITrendanaly.js +144 -0
  35. package/src/plugins/app/znycpjxt/Bf/IVector2grd.js +144 -0
  36. package/src/plugins/app/znycpjxt/Bf/IYcfj.js +84 -0
  37. package/src/plugins/app/znycpjxt/Bf/IYcxxjs.js +105 -0
  38. package/src/plugins/app/znycpjxt/Bf/IYgsbtq.js +112 -0
  39. package/src/plugins/app/znycpjxt/Bf/IYgtxrh.js +112 -0
  40. package/src/plugins/app/znycpjxt/Bf/Iinteranaly.js +135 -0
  41. package/src/plugins/app/znycpjxt/Bf/index.js +44 -0
  42. package/src/plugins/app/znycpjxt/Bf/input/InputData.js +21 -0
  43. package/src/plugins/app/znycpjxt/Bf/input/InputExcel.js +28 -0
  44. package/src/plugins/app/znycpjxt/Bf/input/InputKd.js +31 -0
  45. package/src/plugins/app/znycpjxt/Bqqd/Bqqd.vue +380 -0
  46. package/src/plugins/app/znycpjxt/Bqqd/BqqdMap.vue +1046 -0
  47. package/src/plugins/app/znycpjxt/Bqqd/SetOpacity.vue +101 -0
  48. package/src/plugins/app/znycpjxt/Bqqd/SjzxTree.vue +244 -0
  49. package/src/plugins/app/znycpjxt/Bqqd/YclsjjTree.vue +212 -0
  50. package/src/plugins/app/znycpjxt/Bqqd/api/DsjzxApi.js +37 -0
  51. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmx.vue +161 -0
  52. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgGloalParams.vue +92 -0
  53. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgNodeFlds.vue +102 -0
  54. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/CfgNodeParams.vue +277 -0
  55. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/Ckycmxgl.vue +303 -0
  56. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/SetLabelParam.vue +68 -0
  57. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxgl/SetModelParam.vue +69 -0
  58. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Ckycmxtab.vue +107 -0
  59. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Dtzzylwl.vue +156 -0
  60. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Jjsjwl.vue +230 -0
  61. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Sjsl.vue +126 -0
  62. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zcxlj.vue +128 -0
  63. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zjq.vue +123 -0
  64. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zstp.vue +271 -0
  65. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/Zzylwl.vue +149 -0
  66. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/ParamsData.vue +323 -0
  67. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/ParamsDataNew.vue +336 -0
  68. package/src/plugins/app/znycpjxt/Ckycmx/Ckycmxtab/coms/QqtEcharts.vue +137 -0
  69. package/src/plugins/app/znycpjxt/Ckycmx/Ckycrwgl/Ckycrwgl.vue +290 -0
  70. package/src/plugins/app/znycpjxt/CusTools/CodeApi.js +83 -0
  71. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/CodeEditor.md +36 -0
  72. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/CodeEditor.vue +227 -0
  73. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/PlugCodeEditor.vue +78 -0
  74. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/demo/basic.png +0 -0
  75. package/src/plugins/app/znycpjxt/CusTools/CodeEditor/demo/basic.vue +27 -0
  76. package/src/plugins/app/znycpjxt/CusTools/DmbjForm.vue +76 -0
  77. package/src/plugins/app/znycpjxt/CusTools/DmfbForm.vue +351 -0
  78. package/src/plugins/app/znycpjxt/CusTools/GjForm.vue +206 -0
  79. package/src/plugins/app/znycpjxt/CusTools/Gjbjyfb.vue +200 -0
  80. package/src/plugins/app/znycpjxt/CusTools/ParamSelect.vue +222 -0
  81. package/src/plugins/app/znycpjxt/CusTools/ParamSelect2.vue +204 -0
  82. package/src/plugins/app/znycpjxt/CusTools/Zngjj.vue +105 -0
  83. package/src/plugins/app/znycpjxt/DataAnlyModel/DataAnlyModel.vue +134 -0
  84. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx/HgfxEcharts.vue +98 -0
  85. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx/HgfxTab.vue +73 -0
  86. package/src/plugins/app/znycpjxt/DataAnlyModel/Hgfx.vue +101 -0
  87. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj/JctjjgTab.vue +70 -0
  88. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj/Plzft.vue +154 -0
  89. package/src/plugins/app/znycpjxt/DataAnlyModel/Jctj.vue +118 -0
  90. package/src/plugins/app/znycpjxt/DataAnlyModel/Jlfx/JlfxImg.vue +80 -0
  91. package/src/plugins/app/znycpjxt/DataAnlyModel/Jlfx.vue +91 -0
  92. package/src/plugins/app/znycpjxt/DataAnlyModel/PCAfx/PcaTab.vue +161 -0
  93. package/src/plugins/app/znycpjxt/DataAnlyModel/PCAfx.vue +101 -0
  94. package/src/plugins/app/znycpjxt/DataAnlyModel/Qqt/QqtEcharts.vue +202 -0
  95. package/src/plugins/app/znycpjxt/DataAnlyModel/Qqt.vue +88 -0
  96. package/src/plugins/app/znycpjxt/DataAnlyModel/Xgxfx/XgxfxImg.vue +80 -0
  97. package/src/plugins/app/znycpjxt/DataAnlyModel/Xgxfx.vue +96 -0
  98. package/src/plugins/app/znycpjxt/DatasetMan/CreateDataset.vue +296 -0
  99. package/src/plugins/app/znycpjxt/DatasetMan/DatasetMan.vue +141 -0
  100. package/src/plugins/app/znycpjxt/DatasetMan/PreData.js +91 -0
  101. package/src/plugins/app/znycpjxt/DatasetMan/PreData.vue +545 -0
  102. package/src/plugins/app/znycpjxt/DatasetMan/PreDataApi.js +101 -0
  103. package/src/plugins/app/znycpjxt/DatasetMan/SelData.vue +186 -0
  104. package/src/plugins/app/znycpjxt/DatasetMan/SjTree.vue +130 -0
  105. package/src/plugins/app/znycpjxt/DatasetMan/Sjj.vue +478 -0
  106. package/src/plugins/app/znycpjxt/DatasetMan/Yclsjj.vue +445 -0
  107. package/src/plugins/app/znycpjxt/DatasetMan/Yssjj.vue +389 -0
  108. package/src/plugins/app/znycpjxt/DocList/DocList.vue +496 -0
  109. package/src/plugins/app/znycpjxt/DocList/unit/DocItem.vue +137 -0
  110. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Dchj.vue +107 -0
  111. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/GeophysicalAnomaly.vue +115 -0
  112. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Jxyt.vue +98 -0
  113. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Lbjs.vue +127 -0
  114. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Pjcjs.vue +103 -0
  115. package/src/plugins/app/znycpjxt/ExceptHandlModel/AnomalyExtraction/Qdjs.vue +103 -0
  116. package/src/plugins/app/znycpjxt/ExceptHandlModel/ExceptHandlModel.vue +163 -0
  117. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Cdjs.vue +102 -0
  118. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Czfx.vue +163 -0
  119. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/GetFormData.vue +343 -0
  120. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Hdpj.vue +100 -0
  121. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Pjtd.vue +90 -0
  122. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Qsfx.vue +109 -0
  123. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/ResultOnlyData.vue +121 -0
  124. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/ResultTable.vue +231 -0
  125. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/UniversalComputing.vue +139 -0
  126. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Xgxsjs.vue +93 -0
  127. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Xxsjs.vue +90 -0
  128. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Ycfj.vue +116 -0
  129. package/src/plugins/app/znycpjxt/ExceptHandlModel/GeneralCalculation/Yhcl.vue +100 -0
  130. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/AnomalsGard.vue +91 -0
  131. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Dqhxycht.vue +113 -0
  132. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/GeocAnomalies.vue +99 -0
  133. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/JgTableList.vue +203 -0
  134. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Lszcl.vue +110 -0
  135. package/src/plugins/app/znycpjxt/ExceptHandlModel/extgeoanomalies/Ycxxjs.vue +116 -0
  136. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/GeoAnomalyExtraction.vue +108 -0
  137. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/AttWeight.vue +99 -0
  138. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/Ckdctq.vue +98 -0
  139. package/src/plugins/app/znycpjxt/ExceptHandlModel/geoAnomalyExtraction/coms/LeftForm.vue +266 -0
  140. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/Ygsbtq.vue +150 -0
  141. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/Ygtxrh.vue +107 -0
  142. package/src/plugins/app/znycpjxt/ExceptHandlModel/ygyctq/ygyctq.vue +98 -0
  143. package/src/plugins/app/znycpjxt/Index/DataCard.vue +45 -0
  144. package/src/plugins/app/znycpjxt/Index/Index.vue +123 -0
  145. package/src/plugins/app/znycpjxt/Rzgl/Rzgl.vue +156 -0
  146. package/src/plugins/app/znycpjxt/coms/CmapColor.vue +70 -0
  147. package/src/plugins/app/znycpjxt/coms/CustomFileView.vue +343 -0
  148. package/src/plugins/app/znycpjxt/coms/CustomForm.vue +220 -0
  149. package/src/plugins/app/znycpjxt/coms/GrdView.vue +355 -0
  150. package/src/plugins/app/znycpjxt/coms/LeftForm.vue +195 -0
  151. package/src/plugins/app/znycpjxt/coms/MakeData.js +472 -0
  152. package/src/plugins/app/znycpjxt/coms/PreView.js +55 -0
  153. package/src/plugins/app/znycpjxt/coms/RightContent.vue +71 -0
  154. package/src/plugins/app/znycpjxt/coms/TableEarth.vue +259 -0
  155. package/src/plugins/app/znycpjxt/intellPred/ModelList.vue +200 -0
  156. package/src/plugins/app/znycpjxt/intellPred/coms/D3DrawGraph.js +634 -0
  157. package/src/plugins/app/znycpjxt/intellPred/coms/MineralGo.vue +249 -0
  158. package/src/plugins/app/znycpjxt/intellPred/coms/ModelCard.vue +298 -0
  159. package/src/plugins/app/znycpjxt/intellPred/coms/ModelEdit.vue +292 -0
  160. package/src/plugins/app/znycpjxt/intellPred/coms/ModelSpecif.vue +46 -0
  161. package/src/plugins/app/znycpjxt/intellPred/intellPred.vue +71 -0
  162. package/src/plugins/bf/BfApi.js +92 -0
  163. package/src/plugins/bf/BfColAdd.vue +78 -0
  164. package/src/plugins/bf/BfColEdit.vue +68 -0
  165. package/src/plugins/bf/BfColFilter.vue +112 -0
  166. package/src/plugins/bf/BfDataGroup.vue +80 -0
  167. package/src/plugins/bf/BfDataPreview.vue +118 -0
  168. package/src/plugins/bf/BfDataStat.vue +81 -0
  169. package/src/plugins/bf/BfDuplicateDel.vue +82 -0
  170. package/src/plugins/bf/BfProcCall.vue +82 -0
  171. package/src/plugins/bf/BfRunHis.vue +289 -0
  172. package/src/plugins/bf/BfRunParams.vue +94 -0
  173. package/src/plugins/bf/BfSaveFlow.vue +186 -0
  174. package/src/plugins/bf/BfSelFlow.vue +123 -0
  175. package/src/plugins/bf/BfTabCombine.vue +127 -0
  176. package/src/plugins/bf/BfTabJoin.vue +108 -0
  177. package/src/plugins/bf/BfTabMerge.vue +68 -0
  178. package/src/plugins/bf/BfTabReader.vue +126 -0
  179. package/src/plugins/bf/BfValFormat.vue +68 -0
  180. package/src/plugins/bf/BfValNumber.vue +68 -0
  181. package/src/plugins/bf/BfValProc.vue +78 -0
  182. package/src/plugins/bf/BfValSort.vue +78 -0
  183. package/src/plugins/bf/BiFlow.vue +1177 -0
  184. package/src/plugins/bf/IBfPlug.js +205 -0
  185. package/src/plugins/bf/coms/ColAdd.vue +75 -0
  186. package/src/plugins/bf/coms/ColEdit.vue +52 -0
  187. package/src/plugins/bf/coms/ColList.vue +91 -0
  188. package/src/plugins/bf/coms/DataGroup.vue +90 -0
  189. package/src/plugins/bf/coms/DataStat.vue +67 -0
  190. package/src/plugins/bf/coms/EditTable.vue +161 -0
  191. package/src/plugins/bf/coms/NodeTree.vue +105 -0
  192. package/src/plugins/bf/coms/PlugCmd.vue +95 -0
  193. package/src/plugins/bf/coms/RunParams.vue +68 -0
  194. package/src/plugins/bf/coms/TabCombine.vue +60 -0
  195. package/src/plugins/bf/coms/TabJoin.vue +69 -0
  196. package/src/plugins/bf/coms/ValFormat.vue +53 -0
  197. package/src/plugins/bf/coms/ValProc.vue +77 -0
  198. package/src/plugins/bf/coms/ValSort.vue +89 -0
  199. package/src/plugins/bf/parts/Icon.vue +105 -0
  200. package/src/plugins/bf/parts/Rect.vue +98 -0
  201. package/src/plugins/bf/parts/index.js +11 -0
  202. package/src/plugins/cxMixin/IAttBase.js +78 -0
  203. package/src/plugins/cxMixin/IAttDlg.js +45 -0
  204. package/src/plugins/cxMixin/IAttProc.js +98 -0
  205. package/src/plugins/cxMixin/IComBase.js +42 -0
  206. package/src/plugins/cxMixin/IContextMenu.js +74 -0
  207. package/src/plugins/cxMixin/IDataAcce.js +1106 -0
  208. package/src/plugins/cxMixin/IDataList.js +775 -0
  209. package/src/plugins/cxMixin/IDataMan.js +1670 -0
  210. package/src/plugins/cxMixin/IDataMan2.js +2561 -0
  211. package/src/plugins/cxMixin/IDataProc.js +379 -0
  212. package/src/plugins/cxMixin/IDatagrid.js +234 -0
  213. package/src/plugins/cxMixin/IEditableDg.js +477 -0
  214. package/src/plugins/cxMixin/IExpBase.js +51 -0
  215. package/src/plugins/cxMixin/IFormBase.js +29 -0
  216. package/src/plugins/cxMixin/IGridBpm.js +732 -0
  217. package/src/plugins/cxMixin/IGridData.js +109 -0
  218. package/src/plugins/cxMixin/IOperMore.js +323 -0
  219. package/src/plugins/cxMixin/IPlugBase.js +341 -0
  220. package/src/plugins/cxMixin/ISendCode.js +86 -0
  221. package/src/plugins/cxMixin/ISinglePage.js +112 -0
  222. package/src/plugins/cxMixin/ITags.js +81 -0
  223. package/src/plugins/cxe/CxeMap.vue +61 -0
  224. package/src/plugins/home/HeadNav.vue +194 -0
  225. package/src/plugins/home/Home.vue +59 -0
  226. package/src/plugins/home/HomePage.vue +237 -0
  227. package/src/plugins/home/Login.vue +139 -0
  228. package/src/plugins/zbcxCesium/coms/GraDrawBarWgt.vue +176 -0
  229. package/src/plugins/zbcxCesium/coms/baseMapSwitch/BaseMap.scss +42 -0
  230. package/src/plugins/zbcxCesium/coms/baseMapSwitch/BaseMap.vue +59 -0
  231. package/src/plugins/zbcxCesium/coms/dataPreview/DataPreview.vue +526 -0
  232. package/src/plugins/zbcxCesium/coms/dataPreview/DataPreviewPlug.vue +79 -0
  233. package/src/plugins/zbcxCesium/coms/dataPreview/ReadShpFile.js +42 -0
  234. package/src/plugins/zbcxCesium/coms/legend/Legend.vue +78 -0
  235. package/src/plugins/zbcxCesium/coms/popup/dialog-left-bg.png +0 -0
  236. package/src/plugins/zbcxCesium/coms/popup/index.js +88 -0
  237. package/src/plugins/zbcxCesium/coms/popup/index.vue +93 -0
  238. package/src/plugins/zbcxCesium/pub/LoadGeojson.js +44 -0
  239. package/src/plugins/zbcxCesium/pub/LoadModel.js +128 -0
  240. package/src/plugins/zbcxCesium/pub/LoadOgc.js +226 -0
  241. package/src/plugins/zbcxCesium/pub/Opacity.vue +139 -0
  242. package/src/plugins/zbcxCesium/pub/PubCxe.js +97 -0
  243. package/src/plugins/zbcxCesium/pub/SceneSet.vue +178 -0
  244. package/src/plugins/zbcxCesium/pub/ShowEffect.vue +216 -0
  245. package/src/plugins/zbcxCesium/pub/TMeasure.vue +122 -0
  246. package/src/plugins/zbcxCesium/pub/ToDefView3.vue +109 -0
  247. package/src/plugins/zbcxCesium/pub/getWmsGetCapabilities.js +127 -0
  248. package/src/plugins/zbcxCesium/utils/ShpToGeoJson.js +24 -0
  249. package/src/plugins/zbcxCesium/utils/WebProj4.js +32 -0
@@ -0,0 +1,227 @@
1
+ <style lang="scss" scoped>
2
+ .body {
3
+ position: relative;
4
+ height: inherit;
5
+
6
+ .code-editor {
7
+ width: 100%;
8
+ height: calc(100% - 0.01rem)
9
+ }
10
+
11
+ .tools {
12
+ position: absolute;
13
+ width: 100%;
14
+ bottom: .1rem;
15
+ display: flex;
16
+ justify-content: center;
17
+ overflow: hidden;
18
+ pointer-events: none;
19
+ }
20
+
21
+ .button {
22
+ pointer-events: all;
23
+ }
24
+ }
25
+ </style>
26
+
27
+ <template>
28
+ <main class="body">
29
+ <section class="code-editor" ref="codeEditor"></section>
30
+ <section class="tools">
31
+ <el-tooltip v-for="tool in tools" :key="tool.title" effect="dark" :content="tool.title" placement="top-start">
32
+ <cx-button class="button" type="text" :icon="tool.icon" @click="tool.click"></cx-button>
33
+ </el-tooltip>
34
+ </section>
35
+ </main>
36
+ </template>
37
+
38
+ <script>
39
+ /**
40
+ * 组件: 前端代码编辑器
41
+ * npm install monaco-editor@0.52.0 monaco-editor-webpack-plugin@7.1.0 --force
42
+ */
43
+
44
+ import * as monaco from 'monaco-editor'
45
+ const DefFontSize = 16
46
+ export default
47
+ {
48
+ mixins: [cx.mixin.IComBase],
49
+ props:
50
+ {
51
+ modelValue: String,
52
+ language: { type: String, default: 'javascript' },
53
+ readonly: { type: Boolean, default: false },
54
+ option: Object,
55
+ filterTools: Function
56
+ },
57
+ emits: ['update:modelValue', 'change'],
58
+ data()
59
+ {
60
+ return {
61
+ fontSize: DefFontSize,
62
+ tools: this.makeTools()
63
+ }
64
+ },
65
+ // watch:
66
+ // {
67
+ // code:
68
+ // {
69
+ // handler(newValue)
70
+ // {
71
+ // // 当 code 变化时,更新 Monaco 编辑器的内容
72
+ // if (this.editor)
73
+ // this.editor.getModel().setValue(newValue)
74
+ // },
75
+ // immediate: true
76
+ // }
77
+ // },
78
+ mounted()
79
+ {
80
+ this.init()
81
+ },
82
+ beforeUnmount()
83
+ {
84
+ if (this.editor)
85
+ this.editor.dispose()
86
+
87
+ // 移除对dom容器元素的监听事件
88
+ if (this.resizeObserver)
89
+ this.resizeObserver.disconnect()
90
+ },
91
+ methods:
92
+ {
93
+ init()
94
+ {
95
+ cx.base.watch(() => !!this.$refs.codeEditor && this.$refs.codeEditor.clientWidth > 0, () =>
96
+ {
97
+ // 实例化编辑器
98
+ this.editorOption =
99
+ {
100
+ value: this.modelValue || '',
101
+ language: this.language || 'javascript',
102
+
103
+ acceptSuggestionOnCommitCharacter: true, // 接受关于提交字符的建议
104
+ acceptSuggestionOnEnter: 'on', // 接受输入建议 "on" | "off" | "smart"
105
+ accessibilityPageSize: 10, // 辅助功能页面大小 Number 说明:控制编辑器中可由屏幕阅读器读出的行数。警告:这对大于默认值的数字具有性能含义。
106
+ accessibilitySupport: 'on', // 辅助功能支持 控制编辑器是否应在为屏幕阅读器优化的模式下运行。
107
+ autoClosingBrackets: 'always', // 是否自动添加结束括号(包括中括号) "always" | "languageDefined" | "beforeWhitespace" | "never"
108
+ autoClosingDelete: 'always', // 是否自动删除结束括号(包括中括号) "always" | "never" | "auto"
109
+ autoClosingOvertype: 'always', // 是否关闭改写 即使用insert模式时是覆盖后面的文字还是不覆盖后面的文字 "always" | "never" | "auto"
110
+ autoClosingQuotes: 'always', // 是否自动添加结束的单引号 双引号 "always" | "languageDefined" | "beforeWhitespace" | "never"
111
+ autoIndent: 'None', // 控制编辑器在用户键入、粘贴、移动或缩进行时是否应自动调整缩进
112
+ codeLens: false, // 是否显示codeLens 通过 CodeLens,你可以在专注于工作的同时了解代码所发生的情况 – 而无需离开编辑器。 可以查找代码引用、代码更改、关联的 Bug、工作项、代码评审和单元测试。
113
+ codeLensFontFamily: '', // codeLens的字体样式
114
+ codeLensFontSize: 14, // codeLens的字体大小
115
+ comments: {
116
+ ignoreEmptyLines: true, // 插入行注释时忽略空行。默认为真。
117
+ insertSpace: true // 在行注释标记之后和块注释标记内插入一个空格。默认为真。
118
+ }, // 注释配置
119
+ contextmenu: true, // 启用上下文菜单
120
+ columnSelection: false, // 启用列编辑 按下shift键位然后按↑↓键位可以实现列选择 然后实现列编辑
121
+ autoSurround: 'never', // 是否应自动环绕选择
122
+ copyWithSyntaxHighlighting: true, // 是否应将语法突出显示复制到剪贴板中 即 当你复制到word中是否保持文字高亮颜色
123
+ cursorBlinking: 'Solid', // 光标动画样式
124
+ cursorSmoothCaretAnimation: true, // 是否启用光标平滑插入动画 当你在快速输入文字的时候 光标是直接平滑的移动还是直接"闪现"到当前文字所处位置
125
+ cursorStyle: 'UnderlineThin', // "Block"|"BlockOutline"|"Line"|"LineThin"|"Underline"|"UnderlineThin" 光标样式
126
+ cursorSurroundingLines: 0, // 光标环绕行数 当文字输入超过屏幕时 可以看见右侧滚动条中光标所处位置是在滚动条中间还是顶部还是底部 即光标环绕行数 环绕行数越大 光标在滚动条中位置越居中
127
+ cursorSurroundingLinesStyle: 'all', // "default" | "all" 光标环绕样式
128
+ cursorWidth: 2, // <=25 光标宽度
129
+ folding: true, // 是否启用代码折叠
130
+ links: true, // 是否点击链接
131
+ overviewRulerBorder: false, // 是否应围绕概览标尺绘制边框
132
+ renderLineHighlight: 'gutter', // 当前行突出显示方式
133
+ roundedSelection: false, // 选区是否有圆角
134
+ scrollBeyondLastLine: false, // 设置编辑器是否可以滚动到最后一行之后
135
+
136
+ minimap: { enabled: true },
137
+ fontSize: this.fontSize, // 设置字体大小
138
+ automaticLayout: false, // 自动布局
139
+ colorDecorators: true, // 颜色装饰器
140
+ readOnly: this.readonly, // 是否开启已读功能
141
+ theme: 'vs-dark', // 主题
142
+ ...this.option
143
+ }
144
+ this.editor = monaco.editor.create(this.$refs.codeEditor, this.editorOption)
145
+
146
+ // 监听编辑器内容变化
147
+ this.editor.onDidChangeModelContent(() =>
148
+ {
149
+ // 触发父组件的 change 事件,通知编辑器内容变化
150
+ this.$emit('change', this.editor.getValue())
151
+ this.$emit('update:modelValue', this.editor.getValue())
152
+ })
153
+ this.observeDom(this.$refs.codeEditor)
154
+ })
155
+ },
156
+
157
+ /**
158
+ * 更新编辑器内的代码内容
159
+ * @method
160
+ * @param {String} code 待更新的代码
161
+ */
162
+ updateCode(code)
163
+ {
164
+ if (this.editor)
165
+ this.editor.getModel().setValue(code)
166
+ },
167
+
168
+ /**
169
+ * 监听dom容器尺寸变化,变化后让编辑器重新布局
170
+ * @method
171
+ * @param {Dom} dom 容器dom元素
172
+ */
173
+ observeDom(dom)
174
+ {
175
+ this.resizeObserver = new ResizeObserver(() => this.editor.layout())
176
+ this.resizeObserver.observe(dom)
177
+ },
178
+
179
+ makeTools()
180
+ {
181
+ const list =
182
+ [
183
+ { key: 'reLayout', title: cx.i18n.locBase('refresh'), icon: 'cx-fi ic-refresh', click: () => this.reLayout() },
184
+ { key: 'format', title: vm.$t('lc.format'), icon: 'cx-fi ic-filter', click: () => this.formatter() },
185
+ { key: 'zoomIn', title: vm.$t('lc.zoomInFontSize'), icon: 'cx-fi ic-zoomIn', click: () => this.updateFontSize(this.fontSize + 2) },
186
+ { key: 'zoomOut', title: vm.$t('lc.zoomOutFontSize'), icon: 'cx-fi ic-zoomOut', click: () => this.updateFontSize(this.fontSize - 2) },
187
+ { key: 'refresh', title: vm.$t('lc.resetFontSize'), icon: 'cx-fi ic-rresetFont', click: () => this.updateFontSize(DefFontSize) },
188
+ { key: 'fullScreen', title: vm.$t('lc.fullScreenEdit'), icon: 'cx-fi ic-preview', click: () => this.fullScreenEdit() }
189
+ ]
190
+ if (cx.base.isFunc(this.filterTools))
191
+ return this.filterTools(list)
192
+ return list
193
+ },
194
+
195
+ reLayout()
196
+ {
197
+ if (this.editor)
198
+ this.editor.layout()
199
+ else
200
+ this.init()
201
+ },
202
+
203
+ /**
204
+ * 弹框对代码进行全屏编辑
205
+ * @method
206
+ */
207
+ fullScreenEdit()
208
+ {
209
+ cx.run.runPlug('PlugCodeEditor', { code: this.editor.getValue(), language: this.language, option: this.option, onChange: newCode => this.updateCode(newCode) })
210
+ },
211
+
212
+ formatter()
213
+ {
214
+ this.editor.getAction('editor.action.formatDocument')?.run()
215
+ },
216
+
217
+ updateFontSize(fontSize)
218
+ {
219
+ if (this.editor)
220
+ {
221
+ this.editor.updateOptions({ fontSize })
222
+ this.fontSize = fontSize
223
+ }
224
+ }
225
+ }
226
+ }
227
+ </script>
@@ -0,0 +1,78 @@
1
+ <style lang="scss" scoped>
2
+ :deep(.region-north) { padding-bottom: 0.12rem; }
3
+ :deep(.cx-region) { overflow: hidden; }
4
+ </style>
5
+
6
+ <template>
7
+ <cx-layout>
8
+ <cx-region region="center">
9
+ <CxCodeEditor v-model="code" :language="language" :option="option" :filterTools="filterTools" @change="onCodeChange"></CxCodeEditor>
10
+ </cx-region>
11
+ <cx-region region="north" class="region-north">
12
+ <cx-cmd-ok-close @ok-click="onOk" @cancel-click="close" />
13
+ </cx-region>
14
+ </cx-layout>
15
+ </template>
16
+
17
+ <script>
18
+ /**
19
+ * 组件名称: 自定义过滤器函数代码编辑
20
+ * 研发时间: 2024/07/29
21
+ * 研发人员: 高旭龙
22
+ * 功能说明:
23
+ *
24
+ * 参数说明:
25
+ * @prop 类型 参数名 参数说明
26
+ *
27
+ * 事件说明:
28
+ * @event 事件名 参数解构 事件和参数说明
29
+ *
30
+ * 插槽说明:
31
+ * @slot 插槽名 插槽prop解构 插槽和prop说明
32
+ */
33
+
34
+ /**
35
+ * 维护历史:
36
+ * 修改时间 人员 说明
37
+ */
38
+ import CxCodeEditor from './CodeEditor'
39
+ export default
40
+ {
41
+ mixins: [cx.mixin.IPlugBase],
42
+
43
+ components: { CxCodeEditor },
44
+
45
+ data()
46
+ {
47
+ return {
48
+ code: '',
49
+ language: 'javascript',
50
+ option: {}
51
+ }
52
+ },
53
+ created()
54
+ {
55
+ this.code = this.params.code || this.code
56
+ this.language = this.params.language || this.language
57
+ this.option = this.params.option || this.option
58
+ },
59
+ methods:
60
+ {
61
+ onOk()
62
+ {
63
+ cx.base.call(this.params.onOk, this.code, this)
64
+ this.close()
65
+ },
66
+
67
+ filterTools(list)
68
+ {
69
+ return list.filter(item => item.key !== 'fullScreen')
70
+ },
71
+
72
+ onCodeChange(newCode)
73
+ {
74
+ cx.base.call(this.params.onChange, newCode, this)
75
+ }
76
+ }
77
+ }
78
+ </script>
@@ -0,0 +1,27 @@
1
+ <style lang="scss" scoped>
2
+ </style>
3
+
4
+ <template>
5
+ <cx-code-editor ref="codeEditor" v-model="selCode" :readOnly="readOnly" @change="onChange"></cx-code-editor>
6
+ </template>
7
+
8
+ <script>
9
+
10
+ export default
11
+ {
12
+ data()
13
+ {
14
+ return {
15
+ selCode: '',
16
+ readOnly: false
17
+ }
18
+ },
19
+ methods:
20
+ {
21
+ onChange(newCode)
22
+ {
23
+ console.log('onChange', newCode)
24
+ }
25
+ }
26
+ }
27
+ </script>
@@ -0,0 +1,76 @@
1
+ <style lang='scss' scoped>
2
+ .cust-border {width: 100%; height: 100%; border: 0.01rem solid var(--cx-colorBorder1); padding: 0.16rem;box-sizing:border-box}
3
+ .active-name{width: 98.8%; height: 6%; font-size: 0.2rem; font-weight: 400; box-sizing: border-box; padding-left: 0.1rem; padding-right: 0.1rem; margin: auto; line-height: 0.5rem; border-radius: 0.06rem; box-shadow: 0 0 .03rem .03rem rgba(0,0,0,.05); border: .01rem solid var(--cx-colorBorder1); color: var(--cx-colorText1); background: var(--cx-colorBg5); display: flex;align-items: center;justify-content: space-between;}
4
+ </style>
5
+
6
+ <template>
7
+ <div class="active-name">
8
+ <span>{{}}</span>
9
+ <el-button class="btn_sm" type="primary" @click="back">返回</el-button>
10
+ </div>
11
+ <cx-layout padding style="height: 94%;">
12
+ <cx-region region="west" width="4.2rem" gutter></cx-region>
13
+ <cx-region region="center" >
14
+ <RightContent :noBtn="true" title="输出" @ok-click="onExportResult">
15
+ </RightContent>
16
+ </cx-region>
17
+ </cx-layout>
18
+ </template>
19
+
20
+ <script>
21
+
22
+ /**
23
+ * 插件 - 公共工具
24
+ */
25
+
26
+ /**
27
+ * 修改记录:
28
+ * 25-04-15 黄佳龙 首次编写
29
+ */
30
+
31
+ import RightContent from '../coms/RightContent.vue'
32
+
33
+ export default
34
+ {
35
+ mixins: [cx.mixin.IComBase],
36
+ components: { RightContent },
37
+ data()
38
+ {
39
+ return {
40
+ sfmk: { name: '证据权', type: 'dataanly' },
41
+ tabdatas: {},
42
+ plzftdatas: {
43
+ x: [], y: []
44
+ },
45
+ czdx: '',
46
+ file: '',
47
+ select: '',
48
+ graph: '',
49
+ datasPc: null,
50
+ hygl: null
51
+ }
52
+ },
53
+
54
+ // 按功能相关性组织函数块,函数名体现功能
55
+ methods:
56
+ {
57
+ /**
58
+ * 错误处理
59
+ * @param {Error} err 错误对象
60
+ */
61
+ onError(err)
62
+ {
63
+ vm.$processing.close()
64
+ this.$showRet(err)
65
+ },
66
+
67
+ /**
68
+ * 返回
69
+ */
70
+ back()
71
+ {
72
+ cx.run.runPlug('Gjbjyfb')
73
+ }
74
+ }
75
+ }
76
+ </script>