qj-common 4.3.0 → 4.3.2

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 (229) hide show
  1. package/.babelrc +12 -12
  2. package/.eslintrc.js +25 -25
  3. package/.idea/common.iml +11 -11
  4. package/.idea/modules.xml +7 -7
  5. package/.idea/vcs.xml +5 -5
  6. package/.postcssrc.js +9 -9
  7. package/.prettierrc.js +7 -7
  8. package/.project +37 -37
  9. package/README.md +2 -2
  10. package/gulpfile.js +20 -20
  11. package/package.json +18 -18
  12. package/src/api/apimanage.js +146 -146
  13. package/src/api/common/index.js +192 -192
  14. package/src/api/login.js +160 -160
  15. package/src/api/shopFbu.js +515 -515
  16. package/src/api/upload.js +8 -8
  17. package/src/components/Bounced/index.vue +145 -145
  18. package/src/components/Breadcrumb/index.vue +71 -71
  19. package/src/components/Checkbox/index.vue +53 -53
  20. package/src/components/Hamburger/index.vue +48 -48
  21. package/src/components/Logistics/logic.vue +186 -186
  22. package/src/components/ScrollBar/index.vue +60 -60
  23. package/src/components/Sticky/index.vue +76 -76
  24. package/src/components/SvgIcon/index.vue +42 -42
  25. package/src/components/ThemePicker/index.vue +243 -243
  26. package/src/components/Tinymce/components/editorImage.vue +94 -94
  27. package/src/components/Tinymce/index.vue +166 -166
  28. package/src/components/Tinymce/plugins.js +7 -7
  29. package/src/components/Tinymce/toolbar.js +6 -6
  30. package/src/components/TreeTable/customEval.js +44 -44
  31. package/src/components/TreeTable/eval.js +29 -29
  32. package/src/components/TreeTable/index.vue +124 -124
  33. package/src/components/TreeTable/readme.md +89 -89
  34. package/src/components/TreeTableApi/customEval.js +49 -49
  35. package/src/components/TreeTableApi/eval.js +29 -29
  36. package/src/components/TreeTableApi/index.vue +124 -124
  37. package/src/components/TreeTableApi/readme.md +89 -89
  38. package/src/components/Upload/singleImage.vue +123 -123
  39. package/src/components/Upload/singleImage2.vue +118 -118
  40. package/src/components/Upload/singleImage3.vue +138 -138
  41. package/src/components/Upload/upload.vue +295 -295
  42. package/src/components/workOrderList/index.vue +158 -158
  43. package/src/dependencies.js +119 -119
  44. package/src/iconShop/demo.css +539 -539
  45. package/src/iconShop/demo_index.html +8445 -8445
  46. package/src/iconShop/iconfont.css +1451 -1451
  47. package/src/iconShop/iconfont.json +2522 -2522
  48. package/src/iconShop/iconfont.svg +1070 -1070
  49. package/src/iconfont/demo.css +539 -539
  50. package/src/iconfont/demo_index.html +5276 -5276
  51. package/src/iconfont/iconfont.css +905 -905
  52. package/src/iconfont/iconfont.json +1563 -1563
  53. package/src/iconfont/iconfont.svg +692 -692
  54. package/src/icons/index.js +9 -9
  55. package/src/lang/e.js +48 -48
  56. package/src/lang/en.js +48 -48
  57. package/src/lang/zh.js +48 -48
  58. package/src/main.js +62 -62
  59. package/src/permission.js +283 -283
  60. package/src/permissionForMall.backup.js +375 -375
  61. package/src/permissionForMall.js +375 -375
  62. package/src/preset.js +67 -67
  63. package/src/router/_import_common.js +1 -1
  64. package/src/router/_import_development.js +1 -1
  65. package/src/router/_import_production.js +1 -1
  66. package/src/store/getters.js +39 -39
  67. package/src/store/index.js +18 -18
  68. package/src/store/modules/app.js +34 -30
  69. package/src/store/modules/menu.js +82 -82
  70. package/src/store/modules/user.js +227 -227
  71. package/src/styles/element-ui.scss +1368 -1368
  72. package/src/styles/index.scss +166 -166
  73. package/src/styles/mixin.scss +27 -27
  74. package/src/styles/pc-ui.scss +1031 -1031
  75. package/src/styles/scrollBar.scss +21 -21
  76. package/src/styles/sidebar.scss +123 -123
  77. package/src/styles/transition.scss +32 -32
  78. package/src/styles/variables.scss +44 -44
  79. package/src/styles/wf-ui.scss +86 -86
  80. package/src/utils/auth.js +57 -57
  81. package/src/utils/dom.js +12 -12
  82. package/src/utils/getQueryString.js +5 -5
  83. package/src/utils/import.js +5 -5
  84. package/src/utils/index.js +355 -355
  85. package/src/utils/interceptor.js +34 -34
  86. package/src/utils/menu.js +116 -116
  87. package/src/utils/proapp.js +35 -35
  88. package/src/utils/query.js +26 -26
  89. package/src/utils/request.js +366 -366
  90. package/src/utils/routeMapping.js +39 -39
  91. package/src/utils/routeMapping.json +310 -310
  92. package/src/utils/utils.js +84 -84
  93. package/src/utils/validate.js +102 -102
  94. package/src/views/404.vue +72 -72
  95. package/src/views/Layout.vue +106 -106
  96. package/src/views/imgSwiper/index.vue +34 -34
  97. package/src/views/layout/Layout.vue +181 -170
  98. package/src/views/layout/components/AppMain.vue +20 -20
  99. package/src/views/layout/components/Footer.vue +22 -22
  100. package/src/views/layout/components/LeftNavbar.vue +318 -310
  101. package/src/views/layout/components/NavMenu.vue +15 -15
  102. package/src/views/layout/components/Navbar.vue +664 -661
  103. package/src/views/layout/components/Sidebar/SidebarItem.vue +116 -113
  104. package/src/views/layout/components/Sidebar/index.vue +203 -193
  105. package/src/views/layout/components/index.js +19 -19
  106. package/src/views/layout/theme/darkBlue/Layout.vue +140 -140
  107. package/src/views/layout/theme/darkBlue/components/AppMain.vue +38 -38
  108. package/src/views/layout/theme/darkBlue/components/Footer.vue +147 -147
  109. package/src/views/layout/theme/darkBlue/components/LeftNavbar(/345/261/225/347/244/272/345/205/250/351/203/250/350/217/234/345/215/225).vue +448 -448
  110. package/src/views/layout/theme/darkBlue/components/LeftNavbar.3.vue +191 -191
  111. package/src/views/layout/theme/darkBlue/components/LeftNavbar.vue +466 -466
  112. package/src/views/layout/theme/darkBlue/components/Navbar.vue +200 -200
  113. package/src/views/layout/theme/darkBlue/components/Sidebar/SidebarItem.vue +71 -71
  114. package/src/views/layout/theme/darkBlue/components/Sidebar/index.vue +49 -49
  115. package/src/views/layout/theme/darkBlue/components/index.js +15 -15
  116. package/src/views/layout-default/Layout.vue +134 -134
  117. package/src/views/layout-default/components/AppMain.vue +19 -19
  118. package/src/views/layout-default/components/Footer.vue +22 -22
  119. package/src/views/layout-default/components/LeftNavbar.vue +164 -164
  120. package/src/views/layout-default/components/Navbar.vue +295 -295
  121. package/src/views/layout-default/components/Sidebar/SidebarItem.vue +67 -67
  122. package/src/views/layout-default/components/Sidebar/index.vue +59 -59
  123. package/src/views/layout-default/components/index.js +4 -4
  124. package/src/views/layout-default/theme/darkBlue/Layout.vue +140 -140
  125. package/src/views/layout-default/theme/darkBlue/components/AppMain.vue +38 -38
  126. package/src/views/layout-default/theme/darkBlue/components/Footer.vue +147 -147
  127. package/src/views/layout-default/theme/darkBlue/components/LeftNavbar.vue +465 -465
  128. package/src/views/layout-default/theme/darkBlue/components/Navbar.vue +200 -200
  129. package/src/views/layout-default/theme/darkBlue/components/Sidebar/SidebarItem.vue +69 -69
  130. package/src/views/layout-default/theme/darkBlue/components/Sidebar/index.vue +49 -49
  131. package/src/views/layout-default/theme/darkBlue/components/index.js +15 -15
  132. package/src/views/pc/Internationalization.vue +80 -80
  133. package/src/views/pc/default/Layout.vue +442 -442
  134. package/src/views/pc/default/LayoutCard.vue +424 -424
  135. package/src/views/pc/default/assets/flex.scss +99 -99
  136. package/src/views/pc/default/footer-modules/DgFooter/index.vue +179 -179
  137. package/src/views/pc/default/footer-modules/DgFooter/indexSDX.vue +187 -187
  138. package/src/views/pc/default/footer-modules/footer.vue +171 -171
  139. package/src/views/pc/default/footer-modules/footerAns.vue +167 -167
  140. package/src/views/pc/default/footer-modules/footerBulk.vue +169 -169
  141. package/src/views/pc/default/footer-modules/footerDM.vue +254 -254
  142. package/src/views/pc/default/footer-modules/footerDefault.vue +267 -267
  143. package/src/views/pc/default/footer-modules/footerDefaultA.vue +270 -270
  144. package/src/views/pc/default/footer-modules/footerDefaultNew.vue +201 -201
  145. package/src/views/pc/default/footer-modules/footerHDB.vue +153 -153
  146. package/src/views/pc/default/footer-modules/footerHy.vue +63 -63
  147. package/src/views/pc/default/footer-modules/footerKYW.vue +163 -163
  148. package/src/views/pc/default/footer-modules/footerMh.vue +30 -30
  149. package/src/views/pc/default/footer-modules/footerNew.vue +116 -116
  150. package/src/views/pc/default/footer-modules/footer_yzj.vue +169 -169
  151. package/src/views/pc/default/footer-modules/footerayd.vue +85 -85
  152. package/src/views/pc/default/footer-modules/ymFooter.vue +154 -154
  153. package/src/views/pc/default/footer-modules/zgl.vue +250 -250
  154. package/src/views/pc/default/header-modules/DgHeader/Logo.vue +57 -57
  155. package/src/views/pc/default/header-modules/DgHeader/Search.vue +135 -135
  156. package/src/views/pc/default/header-modules/DgHeader/Settleup.vue +46 -46
  157. package/src/views/pc/default/header-modules/DgHeader/index.vue +38 -38
  158. package/src/views/pc/default/header-modules/active.vue +177 -177
  159. package/src/views/pc/default/header-modules/header.vue +97 -97
  160. package/src/views/pc/default/header-modules/headerA.vue +142 -142
  161. package/src/views/pc/default/header-modules/headerFLPT.vue +157 -157
  162. package/src/views/pc/default/header-modules/headerMh.vue +187 -187
  163. package/src/views/pc/default/header-modules/headerNew.vue +121 -121
  164. package/src/views/pc/default/header-modules/headerSDX.vue +304 -304
  165. package/src/views/pc/default/header-modules/headerStyle2.vue +173 -173
  166. package/src/views/pc/default/header-modules/headerStyle3.vue +190 -190
  167. package/src/views/pc/default/header-modules/headerStyle4.vue +163 -163
  168. package/src/views/pc/default/header-modules/headerStyleAns.vue +400 -400
  169. package/src/views/pc/default/header-modules/headerStyleBulk.vue +427 -427
  170. package/src/views/pc/default/header-modules/headerStyleDefalut.vue +209 -209
  171. package/src/views/pc/default/header-modules/headerStyleKYW.vue +435 -435
  172. package/src/views/pc/default/header-modules/headerStyle_yzj.vue +427 -427
  173. package/src/views/pc/default/header-modules/headerayd.vue +187 -187
  174. package/src/views/pc/default/header-modules/index.vue +466 -466
  175. package/src/views/pc/default/header-modules/ymHeader.vue +292 -292
  176. package/src/views/pc/default/header-modules/ysHeader.vue +248 -248
  177. package/src/views/pc/default/header-modules/zgl.vue +855 -855
  178. package/src/views/pc/default/leftMenu-modules/leftMenu-logo.vue +194 -194
  179. package/src/views/pc/default/leftMenu-modules/leftMenu-style2.vue +206 -206
  180. package/src/views/pc/default/leftMenu-modules/leftMenu-style3.vue +207 -207
  181. package/src/views/pc/default/leftMenu-modules/leftMenu-style4.vue +192 -192
  182. package/src/views/pc/default/leftMenu-modules/leftMenu.vue +183 -183
  183. package/src/views/pc/default/leftMenu-modules/leftMenuDefault.vue +212 -212
  184. package/src/views/pc/default/leftMenu-modules/leftMenuDefaultEn.vue +214 -214
  185. package/src/views/pc/default/leftMenu-modules/leftMenuDefaultFLPT.vue +220 -220
  186. package/src/views/pc/default/leftMenu-modules/leftMenuDefaultayd.vue +220 -220
  187. package/src/views/pc/default/nav-modules/nav.vue +52 -52
  188. package/src/views/pc/default/nav-modules/navAns.vue +60 -60
  189. package/src/views/pc/default/nav-modules/navBulk.vue +60 -60
  190. package/src/views/pc/default/top-modules/DgTopShortcut/index.vue +177 -177
  191. package/src/views/pc/default/top-modules/Toplg.vue +280 -280
  192. package/src/views/pc/default/top-modules/topA.vue +136 -136
  193. package/src/views/pc/default/top-modules/topAns.vue +261 -261
  194. package/src/views/pc/default/top-modules/topAns_yzj.vue +282 -282
  195. package/src/views/pc/default/top-modules/topBar.vue +304 -304
  196. package/src/views/pc/default/top-modules/topBulk.vue +280 -280
  197. package/src/views/pc/default/top-modules/topDefault.vue +244 -244
  198. package/src/views/pc/default/top-modules/topDefaultDM.vue +197 -197
  199. package/src/views/pc/default/top-modules/topDefaultNew.vue +271 -271
  200. package/src/views/pc/default/top-modules/topFLPT.vue +197 -197
  201. package/src/views/pc/default/top-modules/topHDB.vue +479 -479
  202. package/src/views/pc/default/top-modules/topKYW.vue +258 -258
  203. package/src/views/pc/default/top-modules/topMh.vue +174 -174
  204. package/src/views/pc/default/top-modules/topNew.vue +97 -97
  205. package/src/views/pc/default/top-modules/topSDX.vue +298 -298
  206. package/src/views/pc/default/top-modules/topSimple.vue +247 -247
  207. package/src/views/pc/default/top-modules/topSimpleHy.vue +256 -256
  208. package/src/views/pc/default/top-modules/topUcc.vue +264 -264
  209. package/src/views/pc/default/top-modules/topayd.vue +170 -170
  210. package/src/views/pc/default/top-modules/ymTop.vue +299 -299
  211. package/src/views/pc/default/top-modules/zgltop.vue +499 -499
  212. package/src/views/routerView.vue +9 -9
  213. package/src/views/templates/components/temp-select.vue +80 -80
  214. package/src/views/templates/components/temp-upload.vue +233 -233
  215. package/src/views/templates/readme.md +2 -2
  216. package/src/views/templates/templateInput.vue +421 -421
  217. package/src/views/templates/templateReadme.html +588 -588
  218. package/src/views/templates/templateReadme.md +619 -619
  219. package/src/views/templates/templateTable.vue +2243 -2243
  220. package/src/views/templates/templateTableData.vue +1883 -1883
  221. package/src/views/templates/templateUi/templateTableContent.vue +187 -187
  222. package/src/views/treeTemplate/index.vue +559 -559
  223. package/src/views/treeTemplate/treeTemplate.md +274 -274
  224. package/src/views/uploadDialog/index copy.vue +352 -352
  225. package/src/views/uploadDialog/index.vue +558 -558
  226. package/src/views/uploadDialog/indexOlay.vue +582 -582
  227. package/src/views/uploadDialog/indexPM.vue +578 -578
  228. package/src/views/uploadDialog/indexUpload.vue +543 -543
  229. package/src/views/uploadDialog/readme.md +45 -45
@@ -1,187 +1,187 @@
1
- <template>
2
- <div>
3
- <div v-if="'renderTemp' in item">
4
- <child :para="scope.row" :temp="item.renderTemp"></child>
5
- </div>
6
- <div v-else>
7
- <template v-if="'splicing' in item">
8
- <div v-if="'imgType' in item">
9
- <!--表示有图片-->
10
- <div v-if="Object.prototype.toString.call(scope.row[item.prop]) == '[object Array]'">
11
- <div class="clearfix" v-if="item.splicing.length === 1">
12
- <div v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex" class="clearfix mar-t10">
13
- <img
14
- v-if="arrItem[item.splicing[item.imgType]] && arrItem[item.splicing[item.imgType]].indexOf('http') > -1"
15
- v-lazy="arrItem[item.splicing[item.imgType]]"
16
- :key="arrItem[item.splicing[item.imgType]]"
17
- class="tem-table-img-center"
18
- />
19
- <img v-else v-lazy="secDomainName + arrItem[item.splicing[item.imgType]]" :key="arrItem[item.splicing[item.imgType]]" class="tem-table-img-center" />
20
- </div>
21
- </div>
22
- <div v-else v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex" class="clearfix mar-t10">
23
- <!-- {{arrItem}} -->
24
- <img
25
- v-if="arrItem[item.splicing[item.imgType]] && arrItem[item.splicing[item.imgType]].indexOf('http') > -1"
26
- v-lazy="arrItem[item.splicing[item.imgType]]"
27
- :key="arrItem[item.splicing[item.imgType]]"
28
- class="tem-table-img"
29
- />
30
- <img v-else v-lazy="secDomainName + arrItem[item.splicing[item.imgType]]" :key="arrItem[item.splicing[item.imgType]]" class="tem-table-img" />
31
- <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing" v-if="item.imgType != indexSplicing" class="long-text tem-table-span">
32
- {{ arrItem[itemSplicing] }}
33
- <!-- <i v-if="indexSplicing !=item.splicing.length-2">/</i>暂时表示图片只是存在一个 -->
34
- </span>
35
- </div>
36
- </div>
37
- <div class="clearfix" v-else-if="item.splicing.length === 1">
38
- <img
39
- v-if="scope.row[item.splicing[item.imgType]] && scope.row[item.splicing[item.imgType]].indexOf('http') > -1"
40
- v-lazy="`${scope.row[item.splicing[item.imgType]]}`"
41
- :key="scope.row[item.splicing[item.imgType]]"
42
- class="tem-table-img-center"
43
- />
44
- <img v-else v-lazy="`${secDomainName}${scope.row[item.splicing[item.imgType]]}`" :key="scope.row[item.splicing[item.imgType]]" class="tem-table-img-center" />
45
- </div>
46
- <div class="clearfix" v-else>
47
- <img
48
- v-if="scope.row[item.splicing[item.imgType]] && scope.row[item.splicing[item.imgType]].indexOf('http') > -1"
49
- v-lazy="scope.row[item.splicing[item.imgType]]"
50
- class="tem-table-img"
51
- :key="scope.row[item.splicing[item.imgType]]"
52
- />
53
- <img v-else v-lazy="secDomainName + scope.row[item.splicing[item.imgType]]" class="tem-table-img" :key="scope.row[item.splicing[item.imgType]]" />
54
- <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing" v-if="item.imgType != indexSplicing" class="long-text tem-table-span">
55
- {{ scope.row[itemSplicing] }}
56
- <!-- <i v-if="indexSplicing !=item.splicing.length-2">/</i>暂时表示图片只是存在一个 -->
57
- </span>
58
- </div>
59
- </div>
60
- <div v-else-if="'template' in item">
61
- <div class="addressN">
62
- <span v-for="(splicingItem, splicingIndex) in item.splicing" :key="splicingIndex">
63
- <i v-if="scope.row[splicingItem]">{{ parseTime(scope.row[splicingItem]) }}</i>
64
- <i v-if="scope.row[splicingItem] && splicingIndex != item.splicing.length - 1">{{ item.seat || item.seat == '' ? item.seat : '~' }}</i>
65
- </span>
66
- </div>
67
- </div>
68
- <div v-else>
69
- <div v-if="'prop' in item && Object.prototype.toString.call(scope.row[item.prop]) == '[object Array]'">
70
- <div v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex">
71
- <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing">
72
- <!-- {{scope.row}} -->
73
- {{ arrItem[itemSplicing] }}
74
- <i v-if="arrindex != scope.row[item.prop].length - 1">{{ item.seat ? item.seat : '/' }}</i>
75
- </span>
76
- </div>
77
- </div>
78
- <div v-else>
79
- <!--不是数组-->
80
- <div class="addressN">
81
- <span v-for="(splicingItem, splicingIndex) in item.splicing" :key="splicingIndex">
82
- {{ scope.row[splicingItem] }}
83
- <i v-if="splicingIndex != item.splicing.length - 1">{{ item.seat || item.seat == '' ? item.seat : '/' }}</i>
84
- </span>
85
- </div>
86
- </div>
87
- </div>
88
- </template>
89
- <template v-else-if="'pair' in item">
90
- <!--表示需要键值对显示-->
91
- <p v-for="(itemPair, indexPair) in item.pair" :key="indexPair">{{ itemPair.key }}:{{ scope.row[itemPair.prop] }}</p>
92
- </template>
93
- <template v-else-if="'template' in item">{{
94
- item.template === 'format' && scope.row[item.prop]
95
- ? item.formatType
96
- ? parseTime(scope.row[item.prop], item.formatType)
97
- : parseTime(scope.row[item.prop])
98
- : item.template[scope.row[item.prop]]
99
- ? item.template[scope.row[item.prop]]
100
- : scope.row[item.prop]
101
- }}</template>
102
-
103
- <template v-else-if="'type' in item && item.type === 'switch'">
104
- <el-switch
105
- v-model="scope.row[item.prop]"
106
- :active-value="item.turnOn"
107
- :inactive-value="item.turnOff"
108
- :disabled="item.url ? false : true"
109
- @change="switchChange($event, item, scope.row)"
110
- ></el-switch>
111
- </template>
112
- <template v-else-if="'props' in item">
113
- <span v-for="(itemP, index) in item.props" :key="index">{{ scope.row[itemP] }}</span>
114
- </template>
115
- <template v-else>{{ scope.row[item.prop] }}</template>
116
- </div>
117
- </div>
118
- </template>
119
- <script>
120
- import request from '#/utils/request';
121
- import { parseTime } from '#/utils/index'; //时间格式化
122
- const querystring = require('querystring');
123
- export default {
124
- props: ['scope', 'item'],
125
- data() {
126
- return {
127
- parseTime,
128
- secDomainName: null,
129
- };
130
- },
131
- mounted() {
132
- // console.log(this.scope);
133
- setTimeout(() => {
134
- this.secDomainName = sessionStorage.getItem('secDomainName');
135
- }, 50);
136
- },
137
- methods: {
138
- switchChange(val, item, row) {
139
- console.log(val, item, row);
140
- if (item.props) {
141
- for (let i in item.props) {
142
- row[item.props[i]] = row[i];
143
- }
144
- }
145
- console.log(row);
146
- request({
147
- url: item.url,
148
- method: 'post',
149
- data: querystring.stringify(row),
150
- }).then(res => {
151
- console.log(res, 'item.props');
152
- if (res.success) {
153
- let promptTitle = item.promptTitle ? item.promptTitle : '操作成功';
154
-
155
- this.$message.success(promptTitle);
156
- this.$emit('changeGetData');
157
- }
158
- });
159
- },
160
- },
161
- components: {
162
- child: {
163
- functional: true,
164
- render: (h, context) => {
165
- const temp = context.props.temp;
166
- const para = context.props.para;
167
- return temp(h, para);
168
- },
169
- props: {
170
- temp: {
171
- type: Function,
172
- required: true,
173
- },
174
- para: {
175
- type: Object,
176
- required: true,
177
- },
178
- },
179
- },
180
- },
181
- };
182
- </script>
183
- <style>
184
- .long-text {
185
- text-align: left;
186
- }
187
- </style>
1
+ <template>
2
+ <div>
3
+ <div v-if="'renderTemp' in item">
4
+ <child :para="scope.row" :temp="item.renderTemp"></child>
5
+ </div>
6
+ <div v-else>
7
+ <template v-if="'splicing' in item">
8
+ <div v-if="'imgType' in item">
9
+ <!--表示有图片-->
10
+ <div v-if="Object.prototype.toString.call(scope.row[item.prop]) == '[object Array]'">
11
+ <div class="clearfix" v-if="item.splicing.length === 1">
12
+ <div v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex" class="clearfix mar-t10">
13
+ <img
14
+ v-if="arrItem[item.splicing[item.imgType]] && arrItem[item.splicing[item.imgType]].indexOf('http') > -1"
15
+ v-lazy="arrItem[item.splicing[item.imgType]]"
16
+ :key="arrItem[item.splicing[item.imgType]]"
17
+ class="tem-table-img-center"
18
+ />
19
+ <img v-else v-lazy="secDomainName + arrItem[item.splicing[item.imgType]]" :key="arrItem[item.splicing[item.imgType]]" class="tem-table-img-center" />
20
+ </div>
21
+ </div>
22
+ <div v-else v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex" class="clearfix mar-t10">
23
+ <!-- {{arrItem}} -->
24
+ <img
25
+ v-if="arrItem[item.splicing[item.imgType]] && arrItem[item.splicing[item.imgType]].indexOf('http') > -1"
26
+ v-lazy="arrItem[item.splicing[item.imgType]]"
27
+ :key="arrItem[item.splicing[item.imgType]]"
28
+ class="tem-table-img"
29
+ />
30
+ <img v-else v-lazy="secDomainName + arrItem[item.splicing[item.imgType]]" :key="arrItem[item.splicing[item.imgType]]" class="tem-table-img" />
31
+ <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing" v-if="item.imgType != indexSplicing" class="long-text tem-table-span">
32
+ {{ arrItem[itemSplicing] }}
33
+ <!-- <i v-if="indexSplicing !=item.splicing.length-2">/</i>暂时表示图片只是存在一个 -->
34
+ </span>
35
+ </div>
36
+ </div>
37
+ <div class="clearfix" v-else-if="item.splicing.length === 1">
38
+ <img
39
+ v-if="scope.row[item.splicing[item.imgType]] && scope.row[item.splicing[item.imgType]].indexOf('http') > -1"
40
+ v-lazy="`${scope.row[item.splicing[item.imgType]]}`"
41
+ :key="scope.row[item.splicing[item.imgType]]"
42
+ class="tem-table-img-center"
43
+ />
44
+ <img v-else v-lazy="`${secDomainName}${scope.row[item.splicing[item.imgType]]}`" :key="scope.row[item.splicing[item.imgType]]" class="tem-table-img-center" />
45
+ </div>
46
+ <div class="clearfix" v-else>
47
+ <img
48
+ v-if="scope.row[item.splicing[item.imgType]] && scope.row[item.splicing[item.imgType]].indexOf('http') > -1"
49
+ v-lazy="scope.row[item.splicing[item.imgType]]"
50
+ class="tem-table-img"
51
+ :key="scope.row[item.splicing[item.imgType]]"
52
+ />
53
+ <img v-else v-lazy="secDomainName + scope.row[item.splicing[item.imgType]]" class="tem-table-img" :key="scope.row[item.splicing[item.imgType]]" />
54
+ <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing" v-if="item.imgType != indexSplicing" class="long-text tem-table-span">
55
+ {{ scope.row[itemSplicing] }}
56
+ <!-- <i v-if="indexSplicing !=item.splicing.length-2">/</i>暂时表示图片只是存在一个 -->
57
+ </span>
58
+ </div>
59
+ </div>
60
+ <div v-else-if="'template' in item">
61
+ <div class="addressN">
62
+ <span v-for="(splicingItem, splicingIndex) in item.splicing" :key="splicingIndex">
63
+ <i v-if="scope.row[splicingItem]">{{ parseTime(scope.row[splicingItem]) }}</i>
64
+ <i v-if="scope.row[splicingItem] && splicingIndex != item.splicing.length - 1">{{ item.seat || item.seat == '' ? item.seat : '~' }}</i>
65
+ </span>
66
+ </div>
67
+ </div>
68
+ <div v-else>
69
+ <div v-if="'prop' in item && Object.prototype.toString.call(scope.row[item.prop]) == '[object Array]'">
70
+ <div v-for="(arrItem, arrindex) in scope.row[item.prop]" :key="arrindex">
71
+ <span v-for="(itemSplicing, indexSplicing) in item.splicing" :key="indexSplicing">
72
+ <!-- {{scope.row}} -->
73
+ {{ arrItem[itemSplicing] }}
74
+ <i v-if="arrindex != scope.row[item.prop].length - 1">{{ item.seat ? item.seat : '/' }}</i>
75
+ </span>
76
+ </div>
77
+ </div>
78
+ <div v-else>
79
+ <!--不是数组-->
80
+ <div class="addressN">
81
+ <span v-for="(splicingItem, splicingIndex) in item.splicing" :key="splicingIndex">
82
+ {{ scope.row[splicingItem] }}
83
+ <i v-if="splicingIndex != item.splicing.length - 1">{{ item.seat || item.seat == '' ? item.seat : '/' }}</i>
84
+ </span>
85
+ </div>
86
+ </div>
87
+ </div>
88
+ </template>
89
+ <template v-else-if="'pair' in item">
90
+ <!--表示需要键值对显示-->
91
+ <p v-for="(itemPair, indexPair) in item.pair" :key="indexPair">{{ itemPair.key }}:{{ scope.row[itemPair.prop] }}</p>
92
+ </template>
93
+ <template v-else-if="'template' in item">{{
94
+ item.template === 'format' && scope.row[item.prop]
95
+ ? item.formatType
96
+ ? parseTime(scope.row[item.prop], item.formatType)
97
+ : parseTime(scope.row[item.prop])
98
+ : item.template[scope.row[item.prop]]
99
+ ? item.template[scope.row[item.prop]]
100
+ : scope.row[item.prop]
101
+ }}</template>
102
+
103
+ <template v-else-if="'type' in item && item.type === 'switch'">
104
+ <el-switch
105
+ v-model="scope.row[item.prop]"
106
+ :active-value="item.turnOn"
107
+ :inactive-value="item.turnOff"
108
+ :disabled="item.url ? false : true"
109
+ @change="switchChange($event, item, scope.row)"
110
+ ></el-switch>
111
+ </template>
112
+ <template v-else-if="'props' in item">
113
+ <span v-for="(itemP, index) in item.props" :key="index">{{ scope.row[itemP] }}</span>
114
+ </template>
115
+ <template v-else>{{ scope.row[item.prop] }}</template>
116
+ </div>
117
+ </div>
118
+ </template>
119
+ <script>
120
+ import request from '#/utils/request';
121
+ import { parseTime } from '#/utils/index'; //时间格式化
122
+ const querystring = require('querystring');
123
+ export default {
124
+ props: ['scope', 'item'],
125
+ data() {
126
+ return {
127
+ parseTime,
128
+ secDomainName: null,
129
+ };
130
+ },
131
+ mounted() {
132
+ // console.log(this.scope);
133
+ setTimeout(() => {
134
+ this.secDomainName = sessionStorage.getItem('secDomainName');
135
+ }, 50);
136
+ },
137
+ methods: {
138
+ switchChange(val, item, row) {
139
+ console.log(val, item, row);
140
+ if (item.props) {
141
+ for (let i in item.props) {
142
+ row[item.props[i]] = row[i];
143
+ }
144
+ }
145
+ console.log(row);
146
+ request({
147
+ url: item.url,
148
+ method: 'post',
149
+ data: querystring.stringify(row),
150
+ }).then(res => {
151
+ console.log(res, 'item.props');
152
+ if (res.success) {
153
+ let promptTitle = item.promptTitle ? item.promptTitle : '操作成功';
154
+
155
+ this.$message.success(promptTitle);
156
+ this.$emit('changeGetData');
157
+ }
158
+ });
159
+ },
160
+ },
161
+ components: {
162
+ child: {
163
+ functional: true,
164
+ render: (h, context) => {
165
+ const temp = context.props.temp;
166
+ const para = context.props.para;
167
+ return temp(h, para);
168
+ },
169
+ props: {
170
+ temp: {
171
+ type: Function,
172
+ required: true,
173
+ },
174
+ para: {
175
+ type: Object,
176
+ required: true,
177
+ },
178
+ },
179
+ },
180
+ },
181
+ };
182
+ </script>
183
+ <style>
184
+ .long-text {
185
+ text-align: left;
186
+ }
187
+ </style>