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,343 @@
1
+ <style lang="scss" scoped>
2
+ .fileDemo {width: 100%; height: 100%;}
3
+ .fileCenter {width: 100%; height: 92% !important;}
4
+ .yl-box{height: 0.5rem; line-height: 0.5rem;}
5
+ :deep(.el-radio-group){overflow: hidden;}
6
+ </style>
7
+
8
+ <template>
9
+ <cx-file-view v-if="type === 'doc'" class="fileDemo" v-bind="data"/>
10
+ <DataPreview
11
+ v-else-if="type === 'geojson'"
12
+ :noShowTool="true"
13
+ ref="DataPreview"
14
+ :baseMapArr="baseMapArr"
15
+ :services="att"
16
+ :showBaseMap="showBaseMap"
17
+ :legendList="legendList"
18
+ />
19
+ <div class="fileDemo" v-else-if="type === 'grd'">
20
+ <cx-layout style="width: 100%;height: 100%" v-loading="loading" element-loading-text="数据加载中...">
21
+ <cx-region region="west">
22
+ <GrdView ref="GrdView" @onOk="onOk" @onClose="onClose" :data="params.data" :file='params.data.src'></GrdView>
23
+ </cx-region>
24
+ <cx-region region="center" border style="height: 100%">
25
+ <div class="yl-box">预览</div>
26
+ <cx-file-view v-if="grdRadio === types.grd2D&&refresh" class="fileCenter" :src="Grd2DSrc" :comProps="{ elAttrs: { fit: 'scale-down' } }" filetype="png"/>
27
+ <DataPreview
28
+ v-else-if="grdRadio === types.grd3D"
29
+ :noShowTool="true"
30
+ ref="DataPreview"
31
+ class="fileCenter"
32
+ :baseMapArr="baseMapArr"
33
+ :services="att"
34
+ :showBaseMap="showBaseMap"
35
+ :legendList="legendList"
36
+ />
37
+ <cx-file-view v-else class="fileCenter" src="static/img/znycpjxt/mrtp.png" :comProps="{ elAttrs: { fit: 'scale-down' } }" filetype="png"/>
38
+ </cx-region>
39
+ </cx-layout>
40
+ </div>
41
+ <template v-else-if="type === 'excel'">
42
+ <TableEarth
43
+ :data="params.data"
44
+ :baseMapArr="baseMapArr"
45
+ :showBaseMap="showBaseMap"
46
+ >
47
+ </TableEarth>
48
+ </template>
49
+ <div v-else></div>
50
+ </template>
51
+ <script>
52
+ /**
53
+ * 插件 - 文件预览 (基于cx-file-view实现)
54
+ */
55
+
56
+ /**
57
+ * 调用说明:
58
+ * @param {Object} params
59
+ * @param {Object} params.data 文件预览插件需求的参数对象
60
+ * @param {String} params.data.src 文件的url地址,必传!如:'static/test.excel'
61
+ * @param {String} params.data.filetype 文件后缀类型,必传!如:flv
62
+ * @param {String} [params.data.title] 文件名称,非必传
63
+ * @param {Object} [params.data.comProps] 自定义传给对应文件预览组件的参数对象
64
+ * @param {Object} [params.data.comListeners] 自定义传给对应文件预览组件的事件监听注册对象
65
+ * @param {Object} [params.data.custCom] 自定义的组件配置对象,格式:{name: 'cx-file-view'},custCom比filetype优先级高
66
+ *
67
+ * (更多参数见cx-file-view的文档)
68
+ */
69
+
70
+ /**
71
+ * 修改记录:
72
+ * 24-05-24 张光辉 首次提交
73
+ */
74
+ import DataPreview from '@/plugins/zbcxCesium/coms/dataPreview/DataPreview.vue'
75
+ import GrdView from './GrdView.vue'
76
+ import TableEarth from './TableEarth.vue'
77
+ import Api from '../Api.js'
78
+ export default
79
+ {
80
+ mixins: [cx.mixin.IPlugBase],
81
+ components: { DataPreview, GrdView, TableEarth },
82
+ data()
83
+ {
84
+ return {
85
+ data: null,
86
+ type: true,
87
+ types:
88
+ {
89
+ doc: 'doc',
90
+ geojson: 'geojson',
91
+ grd: 'grd',
92
+ grd2D: 'grd2D',
93
+ grd3D: 'grd3D',
94
+ excel: 'excel'
95
+ },
96
+ baseMapArr: [],
97
+ showBaseMap: false,
98
+ grdRadio: '',
99
+ refresh: true,
100
+ Grd2DSrc: '',
101
+ legendList: [],
102
+ loading: false
103
+ }
104
+ },
105
+
106
+ created()
107
+ {
108
+ this.data = this.params.data
109
+ this.getType()
110
+ this.getMapservice()
111
+ },
112
+
113
+ methods:
114
+ {
115
+ getType()
116
+ {
117
+ switch (this.params.data.filetype)
118
+ {
119
+ case 'csv':
120
+ case 'xls':
121
+ case 'xlsx':
122
+ this.type = this.types.excel
123
+ break
124
+ case this.types.geojson:
125
+ this.type = this.types.geojson
126
+ let geojsonData = null
127
+ if (this.params.data.att.memo)
128
+ {
129
+ geojsonData = JSON.parse(this.params.data.att.memo)
130
+ this.makeGeojsonData(this.params.data.src, geojsonData)
131
+ }
132
+ else
133
+ this.makeGeojsonData(this.params.data.src, geojsonData, null, true)
134
+ break
135
+ case this.types.grd:
136
+ this.type = this.types.grd
137
+ break
138
+ }
139
+ },
140
+
141
+ // 处理geojson格式的数据
142
+ makeGeojsonData(file, geojson, loadCallBack, epsgTr)
143
+ {
144
+ this.loading = true
145
+ let self = this
146
+ // geojson格式返回数据不需要epsg
147
+ if (epsgTr)
148
+ {
149
+ let projObj =
150
+ {
151
+ file: file ? file : '',
152
+ geojson: geojson ? geojson : '',
153
+ src: self.data?.att?.epsg,
154
+ dest: 'EPSG:4326'
155
+ }
156
+
157
+ Api.geojsonproj(projObj).then(res =>
158
+ {
159
+ if (res.ret === 0)
160
+ {
161
+ self.att =
162
+ {
163
+ url: res.geojson,
164
+ maptype: self.data.filetype,
165
+ layer: '',
166
+ epsg: self.data?.att?.epsg,
167
+ params: {},
168
+ style:
169
+ {
170
+ clampToGround: true
171
+ }
172
+ }
173
+ if (loadCallBack)
174
+ self.att.callback = loadCallBack
175
+ self.$refs.DataPreview.removeLayer()
176
+ self.$refs.DataPreview.loadData(self.att)
177
+ self.loading = false
178
+ }
179
+ }).catch(e =>
180
+ {
181
+ this.$showMsg('geojson坐标系转换失败', 'error')
182
+ this.loading = false
183
+ })
184
+ }
185
+ else
186
+ {
187
+ setTimeout(() =>
188
+ {
189
+ self.att =
190
+ {
191
+ url: geojson,
192
+ maptype: self.data.filetype,
193
+ layer: '',
194
+ // epsg: self.data?.att?.epsg,
195
+ params: {},
196
+ style:
197
+ {
198
+ clampToGround: true
199
+ }
200
+ }
201
+ if (loadCallBack)
202
+ self.att.callback = loadCallBack
203
+ self.$refs.DataPreview.removeLayer()
204
+ self.$refs.DataPreview.loadData(self.att)
205
+ })
206
+ }
207
+ },
208
+
209
+ // 处理grd格式数据
210
+ makeGrdData(form)
211
+ {
212
+ let params =
213
+ {
214
+ file: this.params.data.src,
215
+ type: form.type,
216
+ param: {}
217
+ }
218
+ if (form.levels && form.levels.length)
219
+ params.levels = form.levels?.split(',')
220
+ for (let key in form.param)
221
+ params.param[key] = form[key]
222
+ if (params.param.cmapList)
223
+ params.param.cmap = params.param.cmapList
224
+ return params
225
+ },
226
+
227
+ // 处理2Dgrd
228
+ makeGrd2DData(params)
229
+ {
230
+ const self = this
231
+ this.refresh = false
232
+ this.loading = true
233
+ Api.grdToGraph(params).then(res =>
234
+ {
235
+ if (res.ret === 0)
236
+ {
237
+ self.Grd2DSrc = 'data:image/png;base64,' + res.graph
238
+ self.data.filetype = 'png'
239
+ self.data.comProps = { elAttrs: { fit: 'scale-down' } }
240
+ this.refresh = true
241
+ this.loading = false
242
+ }
243
+ }).catch(err =>
244
+ {
245
+ this.$showMsg('grd转换失败', 'error')
246
+ this.loading = false
247
+ console.error(err)
248
+ })
249
+ },
250
+
251
+ makegrd3DData(params)
252
+ {
253
+ const self = this
254
+ self.legendList = []
255
+ this.loading = true
256
+ Api.grdToGeojson(params).then(res =>
257
+ {
258
+ if (res.ret === 0)
259
+ {
260
+ let arr = []
261
+ for (let i in res.legend)
262
+ arr.push({ name: i, url: this.createColorImage(res.legend[i], 50, 30) })
263
+ self.legendList = arr.reverse()
264
+ self.data.filetype = self.types.geojson
265
+ self.makeGeojsonData('', res.geojson, self.geojsonLoadCallBack, true)
266
+ }
267
+ }).catch(err =>
268
+ {
269
+ this.$showMsg('grd转换失败', 'error')
270
+ this.loading = false
271
+ console.error(err)
272
+ })
273
+ },
274
+
275
+ createColorImage(color, width, height)
276
+ {
277
+ // 创建canvas元素
278
+ let canvas = document.createElement('canvas')
279
+ canvas.width = width
280
+ canvas.height = height
281
+
282
+ // 获取canvas上下文
283
+ let ctx = canvas.getContext('2d')
284
+
285
+ // 使用fillStyle设置颜色并填充矩形
286
+ ctx.fillStyle = color
287
+ ctx.fillRect(0, 0, width, height)
288
+
289
+ // 将canvas转换为图片并添加到body中
290
+ let img = document.createElement('img')
291
+ img.src = canvas.toDataURL('image/png')
292
+ return img.src
293
+ },
294
+
295
+ getMapservice()
296
+ {
297
+ if (cx.localCache.get('baseMapArr'))
298
+ this.baseMapArr = JSON.parse(cx.localCache.get('baseMapArr'))
299
+ else if (!$g.init.mapservice)
300
+ {
301
+ cx.svr.data.query(cx.consts.SYSTAB, cx.consts.TAB_MAPSERVICE, { args: [['maptype', '=', 'tdt']] }).then(ret =>
302
+ {
303
+ if (ret.length)
304
+ {
305
+ // 设置底图
306
+ this.baseMapArr = ret
307
+ cx.localCache.set('baseMapArr', JSON.stringify(this.baseMapArr))
308
+ }
309
+ })
310
+ }
311
+ else
312
+ this.baseMapArr = $g.init.mapservice.filter(item => item.maptype === 'tdt')
313
+ },
314
+
315
+ onOk(form, grdRadio)
316
+ {
317
+ let params = this.makeGrdData(form)
318
+ this.grdRadio = grdRadio
319
+ if (grdRadio === this.types.grd2D)
320
+ this.makeGrd2DData(params)
321
+ else
322
+ this.makegrd3DData(params)
323
+ },
324
+
325
+ geojsonLoadCallBack(layer)
326
+ {
327
+ layer.eachOverlay((item) =>
328
+ {
329
+ if (item.polygon)
330
+ {
331
+ if (item.properties?.color.getValue())
332
+ {
333
+ item.polygon.height = 1
334
+ item.polygon.fill = true
335
+ let color = item.properties?.color.getValue()
336
+ item.polygon.material = Cesium.Color.fromCssColorString(color) // 材质
337
+ }
338
+ }
339
+ })
340
+ }
341
+ }
342
+ }
343
+ </script>
@@ -0,0 +1,220 @@
1
+ <style lang='scss' scoped>
2
+ .el-form.el-form--default { width: 100% !important; }
3
+ </style>
4
+
5
+ <template>
6
+ <el-form
7
+ :model="form_"
8
+ :rules="rules"
9
+ :size="size"
10
+ ref="ruleForm"
11
+ label-width="1.35rem"
12
+ label-position="top"
13
+ @validate="validate">
14
+ <template v-for="(fld, index) in flds" :key="index">
15
+ <el-form-item v-if="fld.disptype !== 'def'&&fld.disptype !== 'range'" :prop="fld.colname" :label="fld.namec">
16
+
17
+ <el-input v-if="fld.disptype === 'seldyna'" v-model="form_[fld.colname]" @click="onSeldyna(fld)" :size="size" readonly>
18
+ <template #append >
19
+ <cx-button icon="cx-fi ic-search" @click="onSeldyna(fld)"/>
20
+ </template>
21
+ </el-input>
22
+ <!-- 多文件 -->
23
+ <el-input v-if="fld.disptype === 'seldynaList'" v-model="form_[fld.colname]" @click="onSeldyna(fld)" :size="size" readonly>
24
+ <template #append >
25
+ <cx-button icon="cx-fi ic-search" @click="onSeldyna(fld)"/>
26
+ </template>
27
+ </el-input>
28
+
29
+ <!-- 预测模型 -->
30
+ <el-input v-if="fld.disptype === 'ckyctask'" v-model="form_[fld.colname]" :size="size" readonly>
31
+ <template #append >
32
+ <cx-button icon="cx-fi ic-search" @click="onCkyctask(fld)"/>
33
+ </template>
34
+ </el-input>
35
+
36
+ <template v-else-if="fld.disptype === 'input'">
37
+ <el-input
38
+ v-if="(fld.elAtt && fld.elAtt.max)||fld.isNumber"
39
+ v-bind="fld.elAtt"
40
+ v-model.number="form_[fld.colname]"
41
+ :placeholder ="fld.placeholder"
42
+ :precision="10"
43
+ :size="size"
44
+ :type="fld.isNumber?'number':''"
45
+ clearable
46
+ @change="val => handleInput(val, fld.colname, fld.elAtt)"/>
47
+
48
+ <el-input
49
+ v-else
50
+ :disabled = "fld.disabled"
51
+ :placeholder ="fld.placeholder"
52
+ v-model="form_[fld.colname]"
53
+ :size="size"
54
+ clearable/>
55
+ </template>
56
+
57
+ <el-select
58
+ v-else-if="fld.disptype === 'select'"
59
+ v-model="form_[fld.colname]"
60
+ :size="size"
61
+ clearable
62
+ :placeholder="'请选择' + fld.namec"
63
+ >
64
+ <el-option
65
+ v-for="opt in fld.options"
66
+ :key="opt.value"
67
+ :label="opt.label"
68
+ :value="opt.value"
69
+ />
70
+ </el-select>
71
+ <el-select
72
+ v-else-if="fld.disptype === 'selectImg'"
73
+ v-model="form_[fld.colname]"
74
+ :size="size"
75
+ clearable
76
+ :placeholder="'请选择' + fld.namec"
77
+ >
78
+ <el-option
79
+ v-for="(item, index) in fld.options"
80
+ :key="index"
81
+ :label="item.label"
82
+ :value="item.value">
83
+ <div>
84
+ <span>
85
+ <img :src="item.url" style="width: 100%; height: 15px;">
86
+ </span>
87
+ </div>
88
+ </el-option>
89
+ </el-select>
90
+
91
+ <template v-else-if="fld.disptype === 'coorRange'">
92
+ <el-input v-model="form_[fld.min]" style="width: 1.6rem" />
93
+ <span>-</span>
94
+ <el-input v-model="form_[fld.max]" style="width: 1.6rem;" />
95
+ </template>
96
+ </el-form-item>
97
+ <template v-if="fld.disptype === 'range'">
98
+ <el-form-item :prop="fld.colname" label="X范围">
99
+ <el-input v-model="form_[fld.min1]" style="width: 1.6rem" />
100
+ <span>-</span>
101
+ <el-input v-model="form_[fld.max1]" style="width: 1.6rem;" />
102
+ </el-form-item>
103
+ <el-form-item :prop="fld.colname" label="Y范围">
104
+ <el-input v-model="form_[fld.min2]" style="width: 1.6rem" />
105
+ <span>-</span>
106
+ <el-input v-model="form_[fld.max2]" style="width: 1.6rem;" />
107
+ </el-form-item>
108
+ <cx-button v-if="!fld.noShowBtn" type="primary" :size="size" icon="cx-fi ic-click" @click="onCalculation" style="margin: 0.1rem 0;">计算图层范围</cx-button>
109
+ </template>
110
+ <el-button v-if="fld.colname=='cmap'" type="primary" @click="getColorCmap">颜色配置</el-button>
111
+ </template>
112
+ </el-form>
113
+ </template>
114
+
115
+ <script>
116
+
117
+ /**
118
+ * 插件 - 数据分析模型-基础统计
119
+ */
120
+
121
+ /**
122
+ * 修改记录:
123
+ * 24-05-15 张光辉 首次编写
124
+ */
125
+
126
+ export default
127
+ {
128
+ mixins: [cx.mixin.IComBase],
129
+ props:
130
+ {
131
+ flds: { type: Array, default: () => [] },
132
+ form: { type: Object, default: () => ({}) },
133
+ rules: { type: Object, default: () => ({}) }
134
+ },
135
+
136
+ data()
137
+ {
138
+ return {
139
+ form_: this.form
140
+ }
141
+ },
142
+
143
+ emits: ['click-seldyna'],
144
+
145
+ // 按功能相关性组织函数块,函数名体现功能
146
+ methods:
147
+ {
148
+ /**
149
+ * 选择动态数据
150
+ * @param {Object} fld 字段对象
151
+ */
152
+ onSeldyna(fld)
153
+ {
154
+ this.$emit('click-seldyna', fld)
155
+ },
156
+
157
+ /**
158
+ * 选择成矿预测任务
159
+ * @param {Object} fld 字段对象
160
+ */
161
+ onCkyctask(fld)
162
+ {
163
+ this.$emit('click-ckyctask', fld)
164
+ },
165
+
166
+ /**
167
+ * 计算事件
168
+ */
169
+ onCalculation()
170
+ {
171
+ this.$emit('click-calculation')
172
+ },
173
+
174
+ /**
175
+ * 输入处理
176
+ * @param {*} value 输入值
177
+ * @param {String} fld 字段名
178
+ * @param {Object} elAtt 元素属性
179
+ */
180
+ handleInput(value, fld, elAtt)
181
+ {
182
+ this.$nextTick(_ =>
183
+ {
184
+ let fldVal = 0
185
+ const { max, min } = elAtt
186
+ const numericValue = Number(value)
187
+ if (!isNaN(numericValue) && numericValue >= min && numericValue <= max)
188
+ fldVal = numericValue
189
+ else
190
+ {
191
+ let num = Math.min(Number(numericValue), max)
192
+ if (num < min)
193
+ fldVal = min
194
+ else
195
+ {
196
+ fldVal = max
197
+ }
198
+ }
199
+ this.form_[fld] = fldVal
200
+ })
201
+ },
202
+
203
+ /**
204
+ * 坐标计算事件
205
+ */
206
+ onCoorCalculation()
207
+ {
208
+ this.$emit('click-coor-calculation')
209
+ },
210
+
211
+ /**
212
+ * 获取颜色映射
213
+ */
214
+ getColorCmap()
215
+ {
216
+ this.$emit('getColorCmap')
217
+ }
218
+ }
219
+ }
220
+ </script>