kz-ui-base 1.0.2 → 1.0.4

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 (283) hide show
  1. package/package.json +1 -1
  2. package/common/package-lock.json +0 -18
  3. package/common/package.json +0 -51
  4. package/common/src/api/common/cacher.js +0 -15
  5. package/common/src/api/common/common.js +0 -299
  6. package/common/src/api/common/material.js +0 -71
  7. package/common/src/api/login.js +0 -103
  8. package/common/src/api/menu.js +0 -18
  9. package/common/src/assets/401_images/401.gif +0 -0
  10. package/common/src/assets/404_images/404.png +0 -0
  11. package/common/src/assets/404_images/404_cloud.png +0 -0
  12. package/common/src/assets/icons/file-config.png +0 -0
  13. package/common/src/assets/icons/file-doc.png +0 -0
  14. package/common/src/assets/icons/file-exe.png +0 -0
  15. package/common/src/assets/icons/file-ini.png +0 -0
  16. package/common/src/assets/icons/file-jpg.png +0 -0
  17. package/common/src/assets/icons/file-mpg.png +0 -0
  18. package/common/src/assets/icons/file-none.png +0 -0
  19. package/common/src/assets/icons/file-pdf.png +0 -0
  20. package/common/src/assets/icons/file-png.png +0 -0
  21. package/common/src/assets/icons/file-ppt.png +0 -0
  22. package/common/src/assets/icons/file-rar.png +0 -0
  23. package/common/src/assets/icons/file-txt.png +0 -0
  24. package/common/src/assets/icons/file-wav.png +0 -0
  25. package/common/src/assets/icons/file-xls.png +0 -0
  26. package/common/src/assets/icons/index.js +0 -9
  27. package/common/src/assets/icons/svg/404.svg +0 -1
  28. package/common/src/assets/icons/svg/bug.svg +0 -1
  29. package/common/src/assets/icons/svg/build.svg +0 -1
  30. package/common/src/assets/icons/svg/button.svg +0 -1
  31. package/common/src/assets/icons/svg/cascader.svg +0 -1
  32. package/common/src/assets/icons/svg/chart.svg +0 -1
  33. package/common/src/assets/icons/svg/checkbox.svg +0 -1
  34. package/common/src/assets/icons/svg/client.svg +0 -1
  35. package/common/src/assets/icons/svg/clipboard.svg +0 -1
  36. package/common/src/assets/icons/svg/code.svg +0 -1
  37. package/common/src/assets/icons/svg/color.svg +0 -1
  38. package/common/src/assets/icons/svg/component.svg +0 -1
  39. package/common/src/assets/icons/svg/dashboard.svg +0 -1
  40. package/common/src/assets/icons/svg/date-range.svg +0 -1
  41. package/common/src/assets/icons/svg/date.svg +0 -1
  42. package/common/src/assets/icons/svg/dict.svg +0 -1
  43. package/common/src/assets/icons/svg/documentation.svg +0 -1
  44. package/common/src/assets/icons/svg/download.svg +0 -1
  45. package/common/src/assets/icons/svg/drag.svg +0 -1
  46. package/common/src/assets/icons/svg/druid.svg +0 -1
  47. package/common/src/assets/icons/svg/edit.svg +0 -1
  48. package/common/src/assets/icons/svg/education.svg +0 -1
  49. package/common/src/assets/icons/svg/email.svg +0 -1
  50. package/common/src/assets/icons/svg/example.svg +0 -1
  51. package/common/src/assets/icons/svg/excel.svg +0 -1
  52. package/common/src/assets/icons/svg/exit-fullscreen.svg +0 -1
  53. package/common/src/assets/icons/svg/eye-open.svg +0 -1
  54. package/common/src/assets/icons/svg/eye.svg +0 -1
  55. package/common/src/assets/icons/svg/form.svg +0 -1
  56. package/common/src/assets/icons/svg/fullscreen.svg +0 -1
  57. package/common/src/assets/icons/svg/github.svg +0 -1
  58. package/common/src/assets/icons/svg/guide.svg +0 -1
  59. package/common/src/assets/icons/svg/icon.svg +0 -1
  60. package/common/src/assets/icons/svg/input.svg +0 -1
  61. package/common/src/assets/icons/svg/international.svg +0 -1
  62. package/common/src/assets/icons/svg/job.svg +0 -1
  63. package/common/src/assets/icons/svg/kz_authority.svg +0 -1
  64. package/common/src/assets/icons/svg/kz_build.svg +0 -1
  65. package/common/src/assets/icons/svg/kz_code.svg +0 -1
  66. package/common/src/assets/icons/svg/kz_config.svg +0 -1
  67. package/common/src/assets/icons/svg/kz_creatTime.svg +0 -1
  68. package/common/src/assets/icons/svg/kz_dept.svg +0 -1
  69. package/common/src/assets/icons/svg/kz_dept_profile.svg +0 -1
  70. package/common/src/assets/icons/svg/kz_dict.svg +0 -1
  71. package/common/src/assets/icons/svg/kz_edit.svg +0 -1
  72. package/common/src/assets/icons/svg/kz_enlarge.svg +0 -1
  73. package/common/src/assets/icons/svg/kz_enterprise.svg +0 -1
  74. package/common/src/assets/icons/svg/kz_fold.svg +0 -2
  75. package/common/src/assets/icons/svg/kz_job.svg +0 -1
  76. package/common/src/assets/icons/svg/kz_layout.svg +0 -1
  77. package/common/src/assets/icons/svg/kz_log.svg +0 -1
  78. package/common/src/assets/icons/svg/kz_log_loginInfo.svg +0 -1
  79. package/common/src/assets/icons/svg/kz_log_operation.svg +0 -1
  80. package/common/src/assets/icons/svg/kz_master-slave.svg +0 -2
  81. package/common/src/assets/icons/svg/kz_menu.svg +0 -1
  82. package/common/src/assets/icons/svg/kz_menu_analyse.svg +0 -22
  83. package/common/src/assets/icons/svg/kz_message.svg +0 -1
  84. package/common/src/assets/icons/svg/kz_monitor.svg +0 -1
  85. package/common/src/assets/icons/svg/kz_nacos.svg +0 -1
  86. package/common/src/assets/icons/svg/kz_narrow.svg +0 -1
  87. package/common/src/assets/icons/svg/kz_notice.svg +0 -2
  88. package/common/src/assets/icons/svg/kz_online.svg +0 -1
  89. package/common/src/assets/icons/svg/kz_open.svg +0 -2
  90. package/common/src/assets/icons/svg/kz_organization.svg +0 -1
  91. package/common/src/assets/icons/svg/kz_post.svg +0 -1
  92. package/common/src/assets/icons/svg/kz_post_profile.svg +0 -1
  93. package/common/src/assets/icons/svg/kz_productCenter.svg +0 -1
  94. package/common/src/assets/icons/svg/kz_rabbit.svg +0 -1
  95. package/common/src/assets/icons/svg/kz_refresh.svg +0 -2
  96. package/common/src/assets/icons/svg/kz_renovation.svg +0 -1
  97. package/common/src/assets/icons/svg/kz_role.svg +0 -1
  98. package/common/src/assets/icons/svg/kz_roleGroup.svg +0 -1
  99. package/common/src/assets/icons/svg/kz_search.svg +0 -1
  100. package/common/src/assets/icons/svg/kz_sentinel.svg +0 -1
  101. package/common/src/assets/icons/svg/kz_server.svg +0 -1
  102. package/common/src/assets/icons/svg/kz_setting.svg +0 -1
  103. package/common/src/assets/icons/svg/kz_sex.svg +0 -1
  104. package/common/src/assets/icons/svg/kz_source.svg +0 -2
  105. package/common/src/assets/icons/svg/kz_strategy.svg +0 -2
  106. package/common/src/assets/icons/svg/kz_swagger.svg +0 -1
  107. package/common/src/assets/icons/svg/kz_system.svg +0 -1
  108. package/common/src/assets/icons/svg/kz_tenant.svg +0 -1
  109. package/common/src/assets/icons/svg/kz_tool.svg +0 -1
  110. package/common/src/assets/icons/svg/kz_user.svg +0 -1
  111. package/common/src/assets/icons/svg/language.svg +0 -1
  112. package/common/src/assets/icons/svg/link.svg +0 -1
  113. package/common/src/assets/icons/svg/list.svg +0 -1
  114. package/common/src/assets/icons/svg/lock.svg +0 -1
  115. package/common/src/assets/icons/svg/log.svg +0 -1
  116. package/common/src/assets/icons/svg/logininfor.svg +0 -1
  117. package/common/src/assets/icons/svg/mes-ad.svg +0 -21
  118. package/common/src/assets/icons/svg/mes-ic.svg +0 -16
  119. package/common/src/assets/icons/svg/mes-mfg-order.svg +0 -22
  120. package/common/src/assets/icons/svg/mes-tm.svg +0 -15
  121. package/common/src/assets/icons/svg/message.svg +0 -1
  122. package/common/src/assets/icons/svg/money.svg +0 -1
  123. package/common/src/assets/icons/svg/monitor.svg +0 -2
  124. package/common/src/assets/icons/svg/nacos.svg +0 -1
  125. package/common/src/assets/icons/svg/nested.svg +0 -1
  126. package/common/src/assets/icons/svg/number.svg +0 -1
  127. package/common/src/assets/icons/svg/online.svg +0 -1
  128. package/common/src/assets/icons/svg/password.svg +0 -1
  129. package/common/src/assets/icons/svg/pdf.svg +0 -1
  130. package/common/src/assets/icons/svg/people.svg +0 -1
  131. package/common/src/assets/icons/svg/peoples.svg +0 -1
  132. package/common/src/assets/icons/svg/phone.svg +0 -1
  133. package/common/src/assets/icons/svg/post.svg +0 -1
  134. package/common/src/assets/icons/svg/qq.svg +0 -1
  135. package/common/src/assets/icons/svg/question.svg +0 -1
  136. package/common/src/assets/icons/svg/radio.svg +0 -1
  137. package/common/src/assets/icons/svg/rate.svg +0 -1
  138. package/common/src/assets/icons/svg/row.svg +0 -1
  139. package/common/src/assets/icons/svg/search.svg +0 -1
  140. package/common/src/assets/icons/svg/select.svg +0 -1
  141. package/common/src/assets/icons/svg/sentinel.svg +0 -1
  142. package/common/src/assets/icons/svg/server.svg +0 -1
  143. package/common/src/assets/icons/svg/shop-call.svg +0 -14
  144. package/common/src/assets/icons/svg/shopping.svg +0 -1
  145. package/common/src/assets/icons/svg/size.svg +0 -1
  146. package/common/src/assets/icons/svg/skill.svg +0 -1
  147. package/common/src/assets/icons/svg/slider.svg +0 -1
  148. package/common/src/assets/icons/svg/star.svg +0 -1
  149. package/common/src/assets/icons/svg/stock-query.svg +0 -14
  150. package/common/src/assets/icons/svg/stock-report.svg +0 -14
  151. package/common/src/assets/icons/svg/stock-take.svg +0 -14
  152. package/common/src/assets/icons/svg/swagger.svg +0 -1
  153. package/common/src/assets/icons/svg/switch.svg +0 -1
  154. package/common/src/assets/icons/svg/system.svg +0 -2
  155. package/common/src/assets/icons/svg/tab.svg +0 -1
  156. package/common/src/assets/icons/svg/table.svg +0 -1
  157. package/common/src/assets/icons/svg/textarea.svg +0 -1
  158. package/common/src/assets/icons/svg/theme.svg +0 -1
  159. package/common/src/assets/icons/svg/time-range.svg +0 -1
  160. package/common/src/assets/icons/svg/time.svg +0 -1
  161. package/common/src/assets/icons/svg/tool.svg +0 -1
  162. package/common/src/assets/icons/svg/tree-table.svg +0 -1
  163. package/common/src/assets/icons/svg/tree.svg +0 -1
  164. package/common/src/assets/icons/svg/upload.svg +0 -1
  165. package/common/src/assets/icons/svg/user.svg +0 -1
  166. package/common/src/assets/icons/svg/validCode.svg +0 -1
  167. package/common/src/assets/icons/svg/wechat.svg +0 -1
  168. package/common/src/assets/icons/svg/xy-cancel.svg +0 -1
  169. package/common/src/assets/icons/svg/xy-choice.svg +0 -1
  170. package/common/src/assets/icons/svg/xy-choice2.svg +0 -31
  171. package/common/src/assets/icons/svg/zip.svg +0 -1
  172. package/common/src/assets/icons/svgo.yml +0 -22
  173. package/common/src/assets/images/dark.svg +0 -39
  174. package/common/src/assets/images/light.svg +0 -39
  175. package/common/src/assets/images/login-background.jpg +0 -0
  176. package/common/src/assets/images/logo.jpg +0 -0
  177. package/common/src/assets/images/profile.jpg +0 -0
  178. package/common/src/assets/images/xy-folder.png +0 -0
  179. package/common/src/assets/images/xy_email.png +0 -0
  180. package/common/src/assets/images/xy_message.png +0 -0
  181. package/common/src/assets/images/xy_notice.png +0 -0
  182. package/common/src/assets/logo/logo.png +0 -0
  183. package/common/src/assets/styles/btn.scss +0 -99
  184. package/common/src/assets/styles/element-ui.scss +0 -84
  185. package/common/src/assets/styles/element-variables.scss +0 -31
  186. package/common/src/assets/styles/index.scss +0 -207
  187. package/common/src/assets/styles/kezhi.scss +0 -100
  188. package/common/src/assets/styles/mixin.scss +0 -66
  189. package/common/src/assets/styles/ruoyi.scss +0 -350
  190. package/common/src/assets/styles/sidebar.scss +0 -185
  191. package/common/src/assets/styles/transition.scss +0 -48
  192. package/common/src/assets/styles/variables.scss +0 -52
  193. package/common/src/components/base/dialog/BaseDialog.vue +0 -140
  194. package/common/src/components/base/dialog/Dialog.js +0 -118
  195. package/common/src/components/base/dialog/dialogSetting.js +0 -65
  196. package/common/src/components/base/dialog/dialogType.js +0 -80
  197. package/common/src/components/base/dialog/index.js +0 -42
  198. package/common/src/components/base/dialog/printDialog.vue +0 -324
  199. package/common/src/components/base/dialog/tableDialog.vue +0 -187
  200. package/common/src/components/base/dialog/uploadDialog.vue +0 -149
  201. package/common/src/components/base/menuTab.js +0 -130
  202. package/common/src/components/basics/Breadcrumb/index.vue +0 -77
  203. package/common/src/components/basics/Crontab/day.vue +0 -179
  204. package/common/src/components/basics/Crontab/hour.vue +0 -122
  205. package/common/src/components/basics/Crontab/index.vue +0 -425
  206. package/common/src/components/basics/Crontab/min.vue +0 -120
  207. package/common/src/components/basics/Crontab/mouth.vue +0 -128
  208. package/common/src/components/basics/Crontab/result.vue +0 -566
  209. package/common/src/components/basics/Crontab/second.vue +0 -133
  210. package/common/src/components/basics/Crontab/week.vue +0 -167
  211. package/common/src/components/basics/Crontab/year.vue +0 -144
  212. package/common/src/components/basics/DictData/index.js +0 -24
  213. package/common/src/components/basics/DictTag/index.vue +0 -52
  214. package/common/src/components/basics/Editor/index.vue +0 -286
  215. package/common/src/components/basics/FileUpload/index.vue +0 -197
  216. package/common/src/components/basics/Hamburger/index.vue +0 -35
  217. package/common/src/components/basics/HeaderSearch/index.vue +0 -206
  218. package/common/src/components/basics/IconSelect/index.vue +0 -84
  219. package/common/src/components/basics/IconSelect/requireIcons.js +0 -10
  220. package/common/src/components/basics/Iframe/index.vue +0 -36
  221. package/common/src/components/basics/ImageUpload/index.vue +0 -204
  222. package/common/src/components/basics/Pagination/index.vue +0 -107
  223. package/common/src/components/basics/PanThumb/index.vue +0 -142
  224. package/common/src/components/basics/ParentView/index.vue +0 -3
  225. package/common/src/components/basics/RightPanel/index.vue +0 -149
  226. package/common/src/components/basics/RightToolbar/index.vue +0 -111
  227. package/common/src/components/basics/Screenfull/index.vue +0 -60
  228. package/common/src/components/basics/SizeSelect/index.vue +0 -60
  229. package/common/src/components/basics/SvgIcon/index.vue +0 -61
  230. package/common/src/components/basics/ThemePicker/index.vue +0 -183
  231. package/common/src/components/basics/TopNav/index.vue +0 -476
  232. package/common/src/components/custom/Editor/index.vue +0 -267
  233. package/common/src/components/custom/FileBox/index.vue +0 -293
  234. package/common/src/components/custom/FileBox/indexTs.vue +0 -280
  235. package/common/src/components/custom/ImageBox/index.vue +0 -208
  236. package/common/src/components/custom/Material/fileNameHelper.js +0 -38
  237. package/common/src/components/custom/Material/index.vue +0 -893
  238. package/common/src/components/custom/Material/indexTs.vue +0 -890
  239. package/common/src/components/custom/Notice/index.vue +0 -244
  240. package/common/src/plugins/auth.js +0 -60
  241. package/common/src/plugins/cache.js +0 -77
  242. package/common/src/plugins/download.js +0 -31
  243. package/common/src/plugins/index.js +0 -82
  244. package/common/src/plugins/modal.js +0 -75
  245. package/common/src/plugins/tab.js +0 -66
  246. package/common/src/utils/auth.js +0 -29
  247. package/common/src/utils/cache/bdCache.js +0 -202
  248. package/common/src/utils/cache/fdCache.js +0 -407
  249. package/common/src/utils/common.js +0 -141
  250. package/common/src/utils/dateHelper.js +0 -122
  251. package/common/src/utils/dialog.js +0 -35
  252. package/common/src/utils/dict/Dict.js +0 -82
  253. package/common/src/utils/dict/DictConverter.js +0 -17
  254. package/common/src/utils/dict/DictData.js +0 -13
  255. package/common/src/utils/dict/DictMeta.js +0 -38
  256. package/common/src/utils/dict/DictOptions.js +0 -51
  257. package/common/src/utils/dict/index.js +0 -33
  258. package/common/src/utils/element.js +0 -49
  259. package/common/src/utils/errorCode.js +0 -6
  260. package/common/src/utils/eventHub.js +0 -3
  261. package/common/src/utils/file.js +0 -38
  262. package/common/src/utils/index.js +0 -390
  263. package/common/src/utils/jsencrypt.js +0 -30
  264. package/common/src/utils/kezhi.js +0 -311
  265. package/common/src/utils/kezhiToolLibrary.js +0 -51
  266. package/common/src/utils/permission.js +0 -51
  267. package/common/src/utils/printService.js +0 -749
  268. package/common/src/utils/request.js +0 -209
  269. package/common/src/utils/ruoyi.js +0 -317
  270. package/common/src/utils/scroll-to.js +0 -58
  271. package/common/src/utils/supers.js +0 -25
  272. package/common/src/utils/utils.js +0 -614
  273. package/common/src/utils/validate.js +0 -105
  274. package/common/src/utils/websoketservice.js +0 -161
  275. package/common/src/utils/zipdownload.js +0 -42
  276. package/common/src/views/authorize.vue +0 -270
  277. package/common/src/views/error/401.vue +0 -88
  278. package/common/src/views/error/404.vue +0 -248
  279. package/common/src/views/login.vue +0 -350
  280. package/common/src/views/register.vue +0 -208
  281. package/common/src/views/sample/dialog/sampleEditDialog.vue +0 -279
  282. package/common/src/views/tenantLogin.vue +0 -331
  283. package/common/vue.config.js +0 -130
@@ -1,280 +0,0 @@
1
- <template>
2
- <div class="ImageBox">
3
- <div
4
- :class="imageChoice.focus ? 'choice-box choice-box-focus' : 'choice-box'"
5
- @mouseenter="imageChoice.focus = true"
6
- @mouseleave="imageChoice.focus = false"
7
- @click="imageChoiceClick"
8
- v-show="!(max === 1 && imageList.length === 1)"
9
- >
10
- <i class="el-icon-plus choice-icon" />
11
- </div>
12
- <div
13
- class="main-box"
14
- v-if="max === 1"
15
- v-show="max === 1 && imageList.length > 0"
16
- >
17
- <div
18
- :class="
19
- item.hiddenVisible
20
- ? 'image-box image-box-only-one-focus'
21
- : 'image-box'
22
- "
23
- v-for="item in imageList"
24
- :key="item.materialId"
25
- @mouseenter="item.hiddenVisible = true"
26
- @mouseleave="item.hiddenVisible = false"
27
- >
28
- <el-image
29
- class="image-view"
30
- :src="getImageIcon(item.materialUrl)"
31
- fit="contain"
32
- @click="imageChoiceClick"
33
- />
34
- <svg-icon
35
- slot="prefix"
36
- icon-class="xy-cancel"
37
- class="image-cancel image-cancel-focus"
38
- v-if="item.hiddenVisible"
39
- @click="imageCancel(item)"
40
- />
41
- <!--<div class="image-text">
42
- <span class="image-input"
43
- :title="item.materialUrl">
44
- {{item.materialUrl}}
45
- </span>
46
- </div>-->
47
- </div>
48
- </div>
49
- <el-scrollbar
50
- :style="'height:100px;'"
51
- :native="false"
52
- :noresize="false"
53
- tag="section"
54
- v-show="imageList.length > 0"
55
- v-if="max !== 1"
56
- >
57
- <draggable
58
- :list="imageList"
59
- v-bind="$attrs"
60
- class="main-box"
61
- animation="300"
62
- >
63
- <div
64
- :class="
65
- item.hiddenVisible ? 'image-box image-box-focus' : 'image-box'
66
- "
67
- v-for="item in imageList"
68
- :key="item.materialId"
69
- @mouseenter="item.hiddenVisible = true"
70
- @mouseleave="item.hiddenVisible = false"
71
- >
72
- <el-image
73
- class="image-view"
74
- :src="getImageIcon(item.materialUrl)"
75
- fit="contain"
76
- />
77
- <svg-icon
78
- slot="prefix"
79
- icon-class="xy-cancel"
80
- class="image-cancel image-cancel-focus"
81
- v-if="item.hiddenVisible"
82
- @click="imageCancel(item)"
83
- />
84
- <!--<div class="image-text">
85
- <span class="image-input"
86
- :title="item.materialUrl">
87
- {{item.materialUrl}}
88
- </span>
89
- </div>-->
90
- </div>
91
- </draggable>
92
- </el-scrollbar>
93
- <Material
94
- visible="true"
95
- v-model="imageList"
96
- :visible.sync="imageChoice.visible"
97
- :max="max"
98
- :clear="clear"
99
- />
100
- </div>
101
- </template>
102
-
103
- <script lang="ts">
104
- import {
105
- Component,
106
- Prop,
107
- Vue,
108
- Watch,
109
- Emit,
110
- Mixins,
111
- } from "vue-property-decorator";
112
- import Material from "../Material/indexTs.vue";
113
- import draggable from "~../../vuedraggable";
114
- import { getImageIcon } from "../Material/fileNameHelper";
115
- @Component({
116
- components: {
117
- Material,
118
- draggable,
119
- },
120
- })
121
- export default class fileBox extends Vue {
122
- // model: {
123
- // prop: "list",
124
- // event: "change",
125
- // },
126
- @Prop({ default: null }) readonly list!: string;
127
- @Prop()
128
- fileName;
129
- @Prop({ default: "450px" }) readonly width!: string;
130
- @Prop({ default: 999 }) readonly max!: number;
131
- @Prop()
132
- clear;
133
- public imageChoice = {
134
- focus: false,
135
- visible: false,
136
- };
137
-
138
- public imageList = [];
139
-
140
- @Watch("imageList")
141
- watchimageList(val, oldVal) {
142
- this.changeList();
143
- }
144
- @Watch("list")
145
- watchlist(val, oldVal) {
146
- this.init();
147
- }
148
- mounted() {
149
- this.init();
150
- }
151
- public getImageIcon = getImageIcon;
152
-
153
- /** 初始化方法 */
154
- public init() {
155
- this.imageList = [];
156
- if (this.list !== null && this.list !== "" && this.list !== " ") {
157
- const newList = JSON.parse(this.list);
158
- if (Array.isArray(newList)) {
159
- this.imageList = newList;
160
- } else {
161
- this.imageList.push(newList);
162
- }
163
- var file = "";
164
- for (var item of this.imageList) {
165
- file += item.materialUrl + ",";
166
- }
167
- this.fileName = file.substr(0, file.length - 1);
168
- }
169
- }
170
- public imageCancel(item) {
171
- for (let i = 0; i < this.imageList.length; i++) {
172
- if (this.imageList[i].materialId === item.materialId) {
173
- this.imageList.splice(i, 1);
174
- }
175
- }
176
- }
177
- public changeList() {
178
- if (this.max === 1) {
179
- if (this.imageList.length > 0) {
180
- this.fileName = this.imageList[0].materialUrl;
181
- this.$emit("update:fileName", this.fileName);
182
- this.$emit("change", JSON.stringify(this.imageList[0]));
183
- }
184
- } else if (this.max > 1) {
185
- if (this.imageList.length > 0) {
186
- var file = "";
187
- for (var item of this.imageList) {
188
- file += item.materialUrl + " |";
189
- }
190
- this.fileName = file.substr(0, file.length - 1);
191
-
192
- this.$emit("update:fileName", this.fileName);
193
- this.$emit("change", JSON.stringify(this.imageList));
194
- }
195
- } else {
196
- this.$emit("change", null);
197
- }
198
- }
199
- public imageChoiceClick() {
200
- this.imageChoice.visible = true;
201
- }
202
- }
203
- </script>
204
-
205
- <style lang="scss" scoped>
206
- .main-box {
207
- display: inline-flex;
208
- .image-box {
209
- width: 80px;
210
- height: 80px;
211
- border: 1px solid #e3e3e3;
212
- margin: 6px 5px;
213
- display: inline-flex;
214
- position: relative;
215
- .image-view {
216
- width: 80px;
217
- height: 80px;
218
- padding: 4px;
219
- }
220
-
221
- .image-cancel {
222
- position: absolute;
223
- width: 18px;
224
- height: 18px;
225
- top: -8px;
226
- right: -8px;
227
- }
228
-
229
- .image-cancel-focus {
230
- cursor: pointer;
231
- }
232
- }
233
- }
234
-
235
- .choice-box {
236
- width: 80px;
237
- height: 80px;
238
- border: 1px dashed #e3e3e3;
239
- margin: 6px 5px;
240
- display: inline-flex;
241
- .choice-icon {
242
- text-align: center;
243
- line-height: 80px;
244
- width: 80px;
245
- height: 80px;
246
- }
247
- }
248
-
249
- .choice-box-focus {
250
- cursor: pointer;
251
- border-color: #387ed6;
252
- }
253
-
254
- .image-box-focus {
255
- cursor: move;
256
- }
257
-
258
- .image-box-only-one-focus {
259
- cursor: pointer;
260
- }
261
-
262
- .image-input {
263
- width: 82px;
264
- height: 20px;
265
- vertical-align: bottom;
266
- }
267
- .ImageBox {
268
- }
269
- </style>
270
-
271
- <style scoped>
272
- .ImageBox > .el-scrollbar .el-scrollbar__wrap {
273
- overflow-x: hidden;
274
- }
275
-
276
- .ImageBox > .el-scrollbar .el-scrollbar__wrap .el-scrollbar__view {
277
- white-space: nowrap;
278
- display: inline-block;
279
- }
280
- </style>
@@ -1,208 +0,0 @@
1
- <template>
2
- <div class="ImageBox">
3
- <div :class="imageChoice.focus?'choice-box choice-box-focus':'choice-box'"
4
- @mouseenter="imageChoice.focus=true"
5
- @mouseleave="imageChoice.focus=false" @click="imageChoiceClick" v-show="!(max === 1 && imageList.length === 1)">
6
- <i class="el-icon-plus choice-icon"/>
7
- </div>
8
- <div class="main-box" v-if="max === 1" v-show="max === 1 && imageList.length > 0">
9
- <div :class="item.hiddenVisible?'image-box image-box-only-one-focus':'image-box'" v-for="item in imageList"
10
- :key="item.materialId" @mouseenter="item.hiddenVisible=true"
11
- @mouseleave="item.hiddenVisible=false">
12
- <el-image
13
- class="image-view"
14
- :src="item.materialUrl"
15
- fit="contain" @click="imageChoiceClick"/>
16
- <svg-icon slot="prefix" icon-class="xy-cancel"
17
- class="image-cancel image-cancel-focus"
18
- v-if="item.hiddenVisible" @click="imageCancel(item)"/>
19
- </div>
20
- </div>
21
- <el-scrollbar :style="'height:100px; width:'+ width+';'" :native="false" :noresize="false" tag="section"
22
- v-show="imageList.length>0" v-if="max !== 1">
23
- <draggable
24
- :list="imageList"
25
- v-bind="$attrs"
26
- class="main-box"
27
- animation="300">
28
- <div :class="item.hiddenVisible?'image-box image-box-focus':'image-box'" v-for="item in imageList"
29
- :key="item.materialId" @mouseenter="item.hiddenVisible=true"
30
- @mouseleave="item.hiddenVisible=false">
31
- <el-image
32
- class="image-view"
33
- :src="item.materialUrl"
34
- fit="contain"/>
35
- <svg-icon slot="prefix" icon-class="xy-cancel"
36
- class="image-cancel image-cancel-focus"
37
- v-if="item.hiddenVisible" @click="imageCancel(item)"/>
38
- </div>
39
- </draggable>
40
- </el-scrollbar>
41
- <Material visible="true" v-model="imageList" :visible.sync="imageChoice.visible" :max="max" :clear="clear"/>
42
- </div>
43
- </template>
44
-
45
- <script>
46
- import Material from "../Material";
47
- import draggable from '~../../vuedraggable';
48
-
49
- export default {
50
- name: "ImageBox",
51
- components: {Material, draggable},
52
- model: {
53
- prop: 'list',
54
- event: 'change'
55
- },
56
- props: {
57
- /** 传入list参数 */
58
- list: {
59
- type: String,
60
- default: null
61
- },
62
- /** 图片上传最大数量参数 默认为 1 */
63
- width: {
64
- type: String,
65
- default: '450px'
66
- },
67
- /** 图片上传最大数量参数 默认为 1 */
68
- max: {
69
- type: Number,
70
- default: 1
71
- },
72
- /** 传入list是否转空参数 默认为 false */
73
- clear: {
74
- type: Boolean,
75
- default: false
76
- }
77
- },
78
- data() {
79
- return {
80
- imageChoice: {
81
- focus: false,
82
- visible: false
83
- },
84
- imageList: []
85
- }
86
- },
87
- watch: {
88
- imageList(val, oldVal) {//普通的watch监听
89
- this.changeList();
90
- },
91
- list(val, oldVal) {
92
- this.init();
93
- },
94
- },
95
- mounted() {
96
- this.init();
97
- },
98
- methods: {
99
- /** 初始化方法 */
100
- init() {
101
- this.imageList = [];
102
- if (this.list !== null && this.list !== '' && this.list !== ' ') {
103
- const newList= JSON.parse(this.list);
104
- if(Array.isArray(newList)){
105
- this.imageList = newList;
106
- }else{
107
- this.imageList.push(newList);
108
- }
109
- }
110
- },
111
- imageCancel(item) {
112
- for (let i = 0; i < this.imageList.length; i++) {
113
- if (this.imageList[i].materialId === item.materialId) {
114
- this.imageList.splice(i, 1);
115
- }
116
- }
117
- },
118
- changeList() {
119
- if(this.max === 1){
120
- this.$emit('change', JSON.stringify(this.imageList[0]));
121
- }else if(this.max > 1){
122
- this.$emit('change', JSON.stringify(this.imageList));
123
- }else{
124
- this.$emit('change',null);
125
- }
126
- },
127
- imageChoiceClick() {
128
- this.imageChoice.visible = true
129
- }
130
- },
131
- }
132
- </script>
133
-
134
- <style lang="scss" scoped>
135
- .main-box {
136
- display: inline-flex;
137
-
138
- .image-box {
139
- width: 80px;
140
- height: 80px;
141
- border: 1px solid #e3e3e3;
142
- margin: 6px 5px;
143
- display: inline-flex;
144
- position: relative;
145
-
146
- .image-view {
147
- width: 80px;
148
- height: 80px;
149
- padding: 4px;
150
- }
151
-
152
- .image-cancel {
153
- position: absolute;
154
- width: 18px;
155
- height: 18px;
156
- top: -8px;
157
- right: -8px;
158
- }
159
-
160
- .image-cancel-focus {
161
- cursor: pointer;
162
- }
163
- }
164
- }
165
-
166
- .choice-box {
167
- width: 80px;
168
- height: 80px;
169
- border: 1px dashed #e3e3e3;
170
- margin: 6px 5px;
171
- display: inline-flex;
172
-
173
- .choice-icon {
174
- text-align: center;
175
- line-height: 80px;
176
- width: 80px;
177
- height: 80px;
178
- }
179
- }
180
-
181
- .choice-box-focus {
182
- cursor: pointer;
183
- border-color: #387ed6;
184
- }
185
-
186
- .image-box-focus {
187
- cursor: move;
188
- }
189
-
190
- .image-box-only-one-focus {
191
- cursor: pointer;
192
- }
193
-
194
- .ImageBox {
195
-
196
- }
197
- </style>
198
-
199
- <style scoped>
200
- .ImageBox >>> .el-scrollbar .el-scrollbar__wrap {
201
- overflow-x: hidden;
202
- }
203
-
204
- .ImageBox >>> .el-scrollbar .el-scrollbar__wrap .el-scrollbar__view {
205
- white-space: nowrap;
206
- display: inline-block;
207
- }
208
- </style>
@@ -1,38 +0,0 @@
1
- export function getFileType(file) {
2
- let endFix = file.substr(file.lastIndexOf('.') + 1).toLocaleLowerCase();
3
- if (endFix == "jpg" || endFix == "png" || endFix == "gif" || endFix == "bmp" || endFix == "tif") {
4
- return "image";
5
- } else if (endFix == "mp4" || endFix == "avi" || endFix == "wmv") {
6
- return "video";
7
- } else if (endFix == "doc" || endFix == "docx") {
8
- return "doc";
9
- } else if (endFix == "xls" || endFix == "xlsx") {
10
- return "xls";
11
- } else if (endFix == "pdf") {
12
- return "pdf";
13
- }
14
- return "unknown";
15
- }
16
-
17
- export function getImageIcon(imgName, imgUrl) {
18
- var fileType = getFileType(imgName);
19
- if (fileType == "image") return imgUrl;
20
- else if (fileType == "video") return require("../../../assets/icons/file-mpg.png");
21
- else if (fileType == "doc") return require("../../../assets/icons/file-doc.png");
22
- else if (fileType == "xls") return require("../../../assets/icons/file-xls.png");
23
- else {
24
- let file_icon = "file-none"
25
- var data = {};
26
- if (imgUrl != null) {
27
- let endFix = imgUrl.substr(imgUrl.lastIndexOf('.') + 1).toLocaleLowerCase();
28
- if (endFix == "jpg" || endFix == "png" || endFix == "gif" || endFix == "bmp" || endFix == "tif" ||
29
- endFix == "mp4" || endFix == "avi" || endFix == "wmv" ||
30
- endFix == "doc" || endFix == "docx" || endFix == "xls" || endFix == "xlsx" ||
31
- endFix == "pdf"
32
- ) {
33
- file_icon = "file-" + endFix;
34
- }
35
- }
36
- return require("../../../assets/icons/" + file_icon + ".png");
37
- }
38
- }