cloud-web-corejs-haier 1.0.43 → 1.0.45

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 (228) hide show
  1. package/package.json +8 -6
  2. package/src/api/user.js +54 -46
  3. package/src/components/baseAlert/index.vue +57 -53
  4. package/src/components/baseInputExport/index.vue +3 -3
  5. package/src/components/baseTabs/mixins.js +12 -1
  6. package/src/components/errorMsg/index.vue +78 -78
  7. package/src/components/excelExport/button.vue +54 -45
  8. package/src/components/excelExport/exportFieldDialog.vue +3 -3
  9. package/src/components/excelExport/index.js +1 -43
  10. package/src/components/excelExport/index.vue +62 -34
  11. package/src/components/excelExport/mixins.js +74 -87
  12. package/src/components/excelImport/index.js +1 -62
  13. package/src/components/excelImport/mixins.js +1 -774
  14. package/src/components/fileLibrary/index.vue +113 -33
  15. package/src/components/fileLibrary/propertiesDialog.vue +6 -0
  16. package/src/components/hiprint/view/design/index.vue +139 -47
  17. package/src/components/hiprint/view/design/preview.vue +75 -52
  18. package/src/components/hiprint/view/json-view.vue +31 -31
  19. package/src/components/luckysheet/dialog.vue +159 -0
  20. package/src/components/luckysheet/export.js +595 -0
  21. package/src/components/luckysheet/fileUtils.js +147 -0
  22. package/src/components/luckysheet/index.js +69 -0
  23. package/src/components/luckysheet/templateJson.js +12078 -0
  24. package/src/components/luckysheet/view.vue +210 -0
  25. package/src/components/onlineTalk/index.vue +328 -6
  26. package/src/components/onlineTalk/talkUserDialog.vue +280 -0
  27. package/src/components/wf/addTaskUserdialog.vue +5 -5
  28. package/src/components/wf/content.vue +1244 -1169
  29. package/src/components/wf/content2.vue +604 -604
  30. package/src/components/wf/mixins/setCandidateDialog.js +228 -2
  31. package/src/components/wf/mixins/setCandidateDialog2.js +116 -101
  32. package/src/components/wf/mixins/wfTaskUserRangeDialog.js +67 -1
  33. package/src/components/wf/setCandidateDialog.vue +5 -7
  34. package/src/components/wf/setCandidateDialog2.vue +14 -10
  35. package/src/components/wf/wf.js +2325 -2209
  36. package/src/components/wf/wfTaskUserRangeDialog.vue +1 -1
  37. package/src/components/wf/wfUtil.js +129 -91
  38. package/src/components/xform/form-designer/designer.js +1994 -9
  39. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +10 -0
  40. package/src/components/xform/form-designer/form-widget/container-widget/detail-pane-widget.vue +3 -2
  41. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +5 -1
  42. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin - /345/211/257/346/234/254.js" +1639 -0
  43. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +1756 -2
  44. package/src/components/xform/form-designer/form-widget/field-widget/baseAttachment-widget.vue +1 -0
  45. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-item-widget.vue +10 -1
  46. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-widget.vue +170 -0
  47. package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +1630 -1
  48. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +153 -40
  49. package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +65 -46
  50. package/src/components/xform/form-designer/form-widget/field-widget/vue-page-widget.vue +231 -0
  51. package/src/components/xform/form-designer/setting-panel/form-setting.vue +7 -4
  52. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/edit-tree-button-group-config-dialog.vue +281 -0
  53. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +659 -221
  54. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-editor.vue +3 -3
  55. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +133 -0
  56. package/src/components/xform/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +14 -6
  57. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import-button-editor.vue +1 -1
  58. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +1 -1
  59. package/src/components/xform/form-designer/setting-panel/property-editor/field-vue-page/vue-page-editor.vue +48 -0
  60. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +18 -17
  61. package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +26 -26
  62. package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +67 -13
  63. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +2 -0
  64. package/src/components/xform/form-designer/setting-panel/property-editor/showViewButton-editor.vue +29 -0
  65. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +8 -6
  66. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +1 -0
  67. package/src/components/xform/form-render/container-item/data-table-mixin.js +20 -17
  68. package/src/components/xform/form-render/container-item/detail-item.vue +72 -48
  69. package/src/components/xform/form-render/container-item/sub-form-item.vue +10 -2
  70. package/src/components/xform/form-render/container-item/table2-item.vue +40 -10
  71. package/src/components/xform/form-render/indexMixin.js +3705 -1
  72. package/src/components/xform/icon-picker/icons.json +284 -0
  73. package/src/components/xform/icon-picker/index.vue +145 -0
  74. package/src/components/xform/lang/zh-CN.js +2 -1
  75. package/src/components/xform/mixins/defaultHandle.js +366 -2
  76. package/src/components/xform/utils/formula-util.js +3 -0
  77. package/src/components/xform/utils/sfc-generator.js +2 -2
  78. package/src/components/xform/utils/smart-vue-i18n/index.js +2 -1
  79. package/src/components/xform/utils/tableColumnHelper.js +54 -10
  80. package/src/components/xform/utils/util.js +1547 -1
  81. package/src/index.js +190 -211
  82. package/src/lang/locale/en/login.js +26 -19
  83. package/src/lang/locale/zh/login.js +25 -19
  84. package/src/layout/components/Sidebar/default.vue +252 -71
  85. package/src/layout/components/Sidebar/index.vue +6 -1
  86. package/src/layout/components/TagsView/index.vue +6 -0
  87. package/src/layout/components/langTool.vue +32 -29
  88. package/src/layout/defaultLayout.vue +16 -8
  89. package/src/layout/index.vue +5 -3
  90. package/src/permission.js +135 -1
  91. package/src/router/index.js +1 -4
  92. package/src/store/config/index.js +667 -1
  93. package/src/store/getters.js +2 -1
  94. package/src/store/modules/permission.js +332 -1
  95. package/src/store/modules/settings.js +26 -1
  96. package/src/store/modules/tagsView.js +190 -1
  97. package/src/store/modules/user.js +358 -1
  98. package/src/utils/aes.js +15 -1
  99. package/src/utils/auth.js +27 -1
  100. package/src/utils/componentDialog.js +217 -0
  101. package/src/utils/request.js +368 -1
  102. package/src/utils/vab.js +1256 -7
  103. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  104. package/src/views/bd/setting/bd_company_env/edit.vue +193 -193
  105. package/src/views/bd/setting/formVersion/button.vue +55 -0
  106. package/src/views/bd/setting/formVersion/compareBasicSection.vue +125 -0
  107. package/src/views/bd/setting/formVersion/compareCodeSection.vue +539 -0
  108. package/src/views/bd/setting/formVersion/compareContMixin.scss +65 -0
  109. package/src/views/bd/setting/formVersion/compareContent.vue +63 -0
  110. package/src/views/bd/setting/formVersion/compareDialog.vue +88 -0
  111. package/src/views/bd/setting/formVersion/compareMixin.js +93 -0
  112. package/src/views/bd/setting/formVersion/fieldCompare.vue +54 -0
  113. package/src/views/bd/setting/formVersion/formScriptCompareView.vue +94 -0
  114. package/src/views/bd/setting/formVersion/formTemplateCompareView.vue +74 -0
  115. package/src/views/bd/setting/formVersion/ftHistoryDialog.vue +491 -0
  116. package/src/views/bd/setting/formVersion/link.vue +58 -0
  117. package/src/views/bd/setting/formVersion/preformDialog.vue +87 -0
  118. package/src/views/bd/setting/formVersion/reverButton.vue +82 -0
  119. package/src/views/bd/setting/formVersion/tableDetailDiff.js +99 -0
  120. package/src/views/bd/setting/formVersion/tableModelCompareView.vue +514 -0
  121. package/src/views/bd/setting/formVersion/textDiff.js +102 -0
  122. package/src/views/bd/setting/form_import_log/edit.vue +6 -3
  123. package/src/views/bd/setting/form_import_log/list.vue +5 -0
  124. package/src/views/bd/setting/form_script/edit.vue +196 -83
  125. package/src/views/bd/setting/form_script/edit1.vue +410 -220
  126. package/src/views/bd/setting/form_script/form_list.vue +19 -0
  127. package/src/views/bd/setting/form_script/list.vue +95 -21
  128. package/src/views/bd/setting/form_script/list1.vue +24 -0
  129. package/src/views/bd/setting/form_script/mixins/dialog.js +2 -2
  130. package/src/views/bd/setting/form_script/mixins/edit.js +265 -207
  131. package/src/views/bd/setting/form_script/mixins/edit1.js +259 -201
  132. package/src/views/bd/setting/form_script/mixins/form_list.js +322 -296
  133. package/src/views/bd/setting/form_script/mixins/list.js +163 -95
  134. package/src/views/bd/setting/form_script/mixins/list1.js +244 -155
  135. package/src/views/bd/setting/form_script/mixins/otherAuthDialog.js +1 -1
  136. package/src/views/bd/setting/form_template/batchWfObjConfigDialog.vue +1 -1
  137. package/src/views/bd/setting/form_template/edit.vue +355 -205
  138. package/src/views/bd/setting/form_template/formDesignerDialog.vue +171 -0
  139. package/src/views/bd/setting/form_template/list.vue +49 -74
  140. package/src/views/bd/setting/form_template/mixins/batchWfObjConfigDialog.js +3 -3
  141. package/src/views/bd/setting/form_template/mixins/edit.js +51 -8
  142. package/src/views/bd/setting/form_template/mixins/itemList.js +1 -1
  143. package/src/views/bd/setting/form_template/mixins/list.js +114 -82
  144. package/src/views/bd/setting/form_template/mixins/list2.js +3 -3
  145. package/src/views/bd/setting/form_template/mixins/otherAuthDialog.js +1 -1
  146. package/src/views/bd/setting/form_template/mixins/wf_list.js +3 -7
  147. package/src/views/bd/setting/form_template/wfObjConfigDialog.vue +254 -254
  148. package/src/views/bd/setting/form_template/wf_list.vue +161 -127
  149. package/src/views/bd/setting/request_async_setting/edit.vue +320 -320
  150. package/src/views/bd/setting/request_setting/edit.vue +300 -300
  151. package/src/views/bd/setting/request_setting/list.vue +15 -25
  152. package/src/views/bd/setting/table_model/edit.vue +702 -498
  153. package/src/views/bd/setting/table_model/list.vue +28 -0
  154. package/src/views/bd/setting/table_model/mixins/dialog.js +1 -1
  155. package/src/views/bd/setting/table_model/mixins/edit copy.js +903 -0
  156. package/src/views/bd/setting/table_model/mixins/edit.js +228 -121
  157. package/src/views/bd/setting/table_model/mixins/list.js +55 -20
  158. package/src/views/bd/setting/table_model/mixins/otherAuthDialog.js +1 -1
  159. package/src/views/bd/setting/table_model/mixins/zdDialog.js +50 -46
  160. package/src/views/bd/setting/utils/index.js +15 -0
  161. package/src/views/user/api_request/list.vue +203 -203
  162. package/src/views/user/bill_setting/list.vue +345 -345
  163. package/src/views/user/code_rules/list.vue +204 -204
  164. package/src/views/user/common_attribute/list.vue +378 -378
  165. package/src/views/user/common_script/list.vue +341 -341
  166. package/src/views/user/company_info/dialog.vue +80 -49
  167. package/src/views/user/country/list.vue +197 -197
  168. package/src/views/user/extend_datasource/dialog.vue +0 -3
  169. package/src/views/user/extend_datasource/edit.vue +1 -2
  170. package/src/views/user/extend_datasource/list.vue +221 -224
  171. package/src/views/user/fieldTranslation/editDialog.vue +1 -1
  172. package/src/views/user/fieldTranslation/list.vue +473 -473
  173. package/src/views/user/field_values_invisible/list.vue +207 -207
  174. package/src/views/user/file_type/list.vue +271 -271
  175. package/src/views/user/file_view_area/list.vue +331 -331
  176. package/src/views/user/form/vform/designer.vue +303 -287
  177. package/src/views/user/form/vform/formFieldMapping.js +2 -3
  178. package/src/views/user/form/view/edit.vue +19 -1
  179. package/src/views/user/form/view/list.vue +59 -17
  180. package/src/views/user/groups/list.vue +158 -158
  181. package/src/views/user/home/default.vue +274 -182
  182. package/src/views/user/home/default2.vue +1148 -0
  183. package/src/views/user/home/index.vue +2 -1
  184. package/src/views/user/lang_tag/list.vue +170 -170
  185. package/src/views/user/language_setting/list.vue +208 -208
  186. package/src/views/user/ledger_library/list.vue +12 -10
  187. package/src/views/user/login/default.vue +1 -1
  188. package/src/views/user/login/indexMixin.js +204 -169
  189. package/src/views/user/menu/list.vue +575 -575
  190. package/src/views/user/notify_message/dialog.vue +7 -1
  191. package/src/views/user/notify_template/list.vue +192 -192
  192. package/src/views/user/notify_template/list2.vue +190 -190
  193. package/src/views/user/position/list.vue +188 -188
  194. package/src/views/user/project_tag/list.vue +175 -175
  195. package/src/views/user/push_setting/list.vue +236 -236
  196. package/src/views/user/request_setting/list.vue +248 -248
  197. package/src/views/user/role/list.vue +182 -182
  198. package/src/views/user/system_notice/infoDialog.vue +61 -2
  199. package/src/views/user/system_notice/list.vue +203 -203
  200. package/src/views/user/system_parameter/list.vue +141 -141
  201. package/src/views/user/user/edit.vue +45 -0
  202. package/src/views/user/user/form_list.vue +245 -245
  203. package/src/views/user/user/info.vue +253 -140
  204. package/src/views/user/user_log_classify/list.vue +197 -197
  205. package/src/views/user/wf/iframe/index.vue +46 -46
  206. package/src/views/user/wf/wfReport/index.vue +1 -1
  207. package/src/views/user/wf/wf_auto_submit_data/list.vue +659 -659
  208. package/src/views/user/wf/wf_diy_attribute/edit.vue +1 -1
  209. package/src/views/user/wf/wf_manage/list.vue +795 -795
  210. package/src/views/user/wf/wf_manage/wfContentDialog.vue +106 -106
  211. package/src/views/user/wf/wf_obj_config/dialog.vue +2 -2
  212. package/src/views/user/wf/wf_obj_config/edit.vue +1 -1
  213. package/src/views/user/wf/wf_obj_config/edit_form.vue +2 -2
  214. package/src/views/user/wf/wf_obj_config/itemEdit.vue +1 -1
  215. package/src/views/user/wf/wf_obj_config/itemEdit_form.vue +1 -1
  216. package/src/views/user/wf/wf_obj_config/itemOperateDialog.vue +4 -4
  217. package/src/views/user/wf/wf_obj_config/list.vue +28 -28
  218. package/src/views/user/wf/wf_obj_config/list_form.vue +5 -5
  219. package/src/views/user/wf/wf_obj_config/wfBizDataSettingDialog.vue +292 -292
  220. package/src/views/user/wf/wf_param/edit.vue +1 -1
  221. package/src/views/user/wf/wf_transfer_setting/edit.vue +1 -1
  222. package/src/views/user/wf/wf_transfer_setting/list.vue +321 -319
  223. package/src/views/user/wf/wf_work_calendar/components/calendar.vue +369 -367
  224. package/src/views/user/wf/wf_work_calendar/components/calendar2.vue +401 -399
  225. package/src/views/user/wf/wf_work_calendar/configDialog.vue +6 -6
  226. package/src/views/user/wf/wf_work_calendar/date.js +84 -83
  227. package/src/views/user/wf/wf_work_calendar/list.vue +6 -6
  228. package/src/views/user/workbench_menu/list.vue +555 -0
@@ -22,20 +22,33 @@
22
22
  </template>
23
23
  <template
24
24
  v-else-if="
25
- field.options.widgetTextFlag === 3 && field.options.widgetTextLinkConfig
25
+ field.options.widgetTextFlag === 3 &&
26
+ field.options.widgetTextLinkConfig
26
27
  "
27
28
  >
28
29
  <div class="ellipsis">
29
- <a class="a-link" :class="getWidgetClass()" @click.native="handleClick">
30
+ <a
31
+ class="a-link"
32
+ :class="getWidgetClass()"
33
+ @click.native="handleClick"
34
+ >
30
35
  <span>
31
36
  <i
32
- :class="field.options.widgetTextLinkConfig.options.prefixIcon"
33
- v-if="!!field.options.widgetTextLinkConfig.options.prefixIcon"
37
+ :class="
38
+ field.options.widgetTextLinkConfig.options.prefixIcon
39
+ "
40
+ v-if="
41
+ !!field.options.widgetTextLinkConfig.options.prefixIcon
42
+ "
34
43
  ></i>
35
44
  <span>{{ getWidgetValue() }}</span>
36
45
  <i
37
- :class="field.options.widgetTextLinkConfig.options.suffixIcon"
38
- v-if="!!field.options.widgetTextLinkConfig.options.suffixIcon"
46
+ :class="
47
+ field.options.widgetTextLinkConfig.options.suffixIcon
48
+ "
49
+ v-if="
50
+ !!field.options.widgetTextLinkConfig.options.suffixIcon
51
+ "
39
52
  ></i>
40
53
  </span>
41
54
  </a>
@@ -48,10 +61,12 @@
48
61
  </template>
49
62
  <template v-else>
50
63
  <el-form-item
51
- v-if="!!field.formItemFlag && (!field.options.hidden || designState === true)"
64
+ v-if="
65
+ !!field.formItemFlag &&
66
+ (!field.options.hidden || designState === true)
67
+ "
52
68
  :label="label"
53
69
  :label-width="labelWidth"
54
- :title="field.options.labelTooltip"
55
70
  :rules="getRules()"
56
71
  :prop="getPropName()"
57
72
  :class="[
@@ -66,31 +81,48 @@
66
81
  v-if="!!field.options.labelIconClass"
67
82
  slot="label"
68
83
  class="custom-label"
69
- :style="{ color: field.options.labelColor }"
70
84
  >
71
85
  <template v-if="field.options.labelIconPosition === 'front'">
72
86
  <template v-if="!!field.options.labelTooltip">
73
- <el-tooltip :content="field.options.labelTooltip" effect="light">
87
+ <el-tooltip
88
+ :content="field.options.labelTooltip"
89
+ effect="dark"
90
+ popper-class="label-tooltip-pre-line"
91
+ >
74
92
  <i :class="field.options.labelIconClass"></i></el-tooltip
75
- >{{ label }}</template
93
+ ><span :style="{ color: field.options.labelColor }">{{
94
+ label
95
+ }}</span></template
76
96
  >
77
97
  <template v-else>
78
- <i :class="field.options.labelIconClass"></i>{{ label }}</template
98
+ <i :class="field.options.labelIconClass"></i
99
+ ><span :style="{ color: field.options.labelColor }">{{
100
+ label
101
+ }}</span></template
79
102
  >
80
103
  </template>
81
104
  <template v-else-if="field.options.labelIconPosition === 'rear'">
82
105
  <template v-if="!!field.options.labelTooltip">
83
- {{ label
84
- }}<el-tooltip :content="field.options.labelTooltip" effect="light">
106
+ <span :style="{ color: field.options.labelColor }">{{
107
+ label
108
+ }}</span
109
+ ><el-tooltip
110
+ :content="field.options.labelTooltip"
111
+ effect="dark"
112
+ popper-class="label-tooltip-pre-line"
113
+ >
85
114
  <i :class="field.options.labelIconClass"></i></el-tooltip
86
115
  ></template>
87
116
  <template v-else>
88
- {{ label }}<i :class="field.options.labelIconClass"></i
117
+ <span :style="{ color: field.options.labelColor }">{{
118
+ label
119
+ }}</span
120
+ ><i :class="field.options.labelIconClass"></i
89
121
  ></template>
90
122
  </template>
91
123
  </span>
92
124
  <span
93
- v-if="!!field.options.labelColor"
125
+ v-else-if="!!field.options.labelColor"
94
126
  slot="label"
95
127
  :style="{ color: field.options.labelColor }"
96
128
  >
@@ -101,20 +133,29 @@
101
133
  </template>
102
134
  <template
103
135
  v-else-if="
104
- field.options.widgetTextFlag === 3 && field.options.widgetTextLinkConfig
136
+ field.options.widgetTextFlag === 3 &&
137
+ field.options.widgetTextLinkConfig
105
138
  "
106
139
  >
107
140
  <div class="ellipsis">
108
141
  <a class="a-link" :class="getWidgetClass()" @click="handleClick">
109
142
  <span>
110
143
  <i
111
- :class="field.options.widgetTextLinkConfig.options.prefixIcon"
112
- v-if="!!field.options.widgetTextLinkConfig.options.prefixIcon"
144
+ :class="
145
+ field.options.widgetTextLinkConfig.options.prefixIcon
146
+ "
147
+ v-if="
148
+ !!field.options.widgetTextLinkConfig.options.prefixIcon
149
+ "
113
150
  ></i>
114
151
  <span>{{ getWidgetValue() }}</span>
115
152
  <i
116
- :class="field.options.widgetTextLinkConfig.options.suffixIcon"
117
- v-if="!!field.options.widgetTextLinkConfig.options.suffixIcon"
153
+ :class="
154
+ field.options.widgetTextLinkConfig.options.suffixIcon
155
+ "
156
+ v-if="
157
+ !!field.options.widgetTextLinkConfig.options.suffixIcon
158
+ "
118
159
  ></i>
119
160
  </span>
120
161
  </a>
@@ -171,7 +212,10 @@
171
212
 
172
213
  <script>
173
214
  import i18n from "../../../../../components/xform/utils/i18n";
174
- import { getSubFormNameByFieldId } from "../../../../../components/xform/utils/util";
215
+ import {
216
+ getSubFormNameByFieldId,
217
+ isVabsearchMultiWidget,
218
+ } from "../../../../../components/xform/utils/util";
175
219
 
176
220
  export default {
177
221
  name: "form-item-wrapper",
@@ -225,7 +269,7 @@ export default {
225
269
  },
226
270
 
227
271
  label() {
228
- if (!!this.field.options.labelHidden) {
272
+ if (this.shouldHideFieldLabel()) {
229
273
  return "";
230
274
  }
231
275
  return this.getI18nLabel(this.field.options.label);
@@ -234,7 +278,7 @@ export default {
234
278
  },
235
279
 
236
280
  labelWidth() {
237
- if (!!this.field.options.labelHidden) {
281
+ if (this.shouldHideFieldLabel()) {
238
282
  return (!!this.designState ? 5 : 0) + "px"; //设计期间标签最小宽度5像素,以便于鼠标点击可选中组件!!
239
283
  }
240
284
 
@@ -286,6 +330,16 @@ export default {
286
330
  this.initShowType();
287
331
  },
288
332
  methods: {
333
+ shouldHideFieldLabel() {
334
+ if (!!this.field.options.labelHidden) {
335
+ return true;
336
+ }
337
+ // 仅 VXE 数据表格列内字段隐藏标签(表头已展示列名);table2/table 等仍显示标签
338
+ return this.isDataTableColumnItem();
339
+ },
340
+ isDataTableColumnItem() {
341
+ return !!this.tableParam?.$table?.$parent?.$parent;
342
+ },
289
343
  isSubFormItem() {
290
344
  return !!this.tableParam;
291
345
  },
@@ -330,7 +384,10 @@ export default {
330
384
  }
331
385
 
332
386
  this.$nextTick(() => {
333
- const l = getSubFormNameByFieldId(this.designer.widgetList, selectedId);
387
+ const l = getSubFormNameByFieldId(
388
+ this.designer.widgetList,
389
+ selectedId
390
+ );
334
391
  this.parentList.splice(this.indexOfParentList, 1);
335
392
  //if (!!nextSelected) {
336
393
  this.designer.setSelected(nextSelected);
@@ -341,25 +398,30 @@ export default {
341
398
  });
342
399
  }
343
400
  },
344
- getIsFormItemUnabled() {
345
- return this.field.type == "vabUpload" || this.field.type == "baseAttachment";
346
- },
347
401
  getRules() {
348
- if (this.getIsFormItemUnabled()) {
349
- return null;
350
- }
351
402
  return this.rules;
352
403
  },
353
404
  getPropName() {
354
- if (this.getIsFormItemUnabled()) {
405
+ if (this.formItemProp === "false") {
406
+ return null;
407
+ }
408
+ // if (this.formItemProp) {
409
+ // return this.formItemProp;
410
+ // }
411
+ if (this.tableParam && !this.tableParam.$table?.$parent?.$parent) {
412
+ if (this.formItemProp) {
413
+ return this.formItemProp;
414
+ }
355
415
  return null;
356
416
  }
357
- if (this.formItemProp) {
358
- return this.formItemProp;
417
+ if (this.tableParam && !!this.tableParam.$table?.$parent?.$parent) {
418
+ return this.getColumnProp(this.field, this.tableParam);
359
419
  }
360
420
  let o = this.field.options.name;
361
421
  let propName =
362
- ((o = (this.field.options.keyNameEnabled && this.field.options.keyName) || o),
422
+ ((o =
423
+ (this.field.options.keyNameEnabled && this.field.options.keyName) ||
424
+ o),
363
425
  this.subFormItemFlag && !this.designState
364
426
  ? this.subFormName + "." + this.subFormRowIndex + "." + o
365
427
  : this.getObjectFieldFlag() && !this.designState
@@ -368,6 +430,49 @@ export default {
368
430
 
369
431
  return propName;
370
432
  },
433
+ getFieldKeyName(widget) {
434
+ let o = widget.options.name;
435
+ return (widget.options.keyNameEnabled && widget.options.keyName) || o;
436
+ },
437
+ isVabsearchFlagWidget(widget) {
438
+ let type = widget?.type;
439
+ return (
440
+ type === "vabsearch" ||
441
+ type === "singerSearch" ||
442
+ type === "multiSearch"
443
+ );
444
+ },
445
+ getColumnProp(rowWidget, obj) {
446
+ let required = rowWidget.options.required || false;
447
+
448
+ let tableRef = obj.$table.$parent.$parent;
449
+ let tableWidget = tableRef.widget;
450
+ let fieldKeyName = this.getFieldKeyName(tableWidget);
451
+ let property = this.getFieldKeyName(rowWidget);
452
+ if (
453
+ this.isVabsearchFlagWidget(rowWidget) &&
454
+ !isVabsearchMultiWidget(rowWidget)
455
+ ) {
456
+ property = rowWidget.options.vabSearchName || property;
457
+ }
458
+ let rowIndex = Math.max(obj.rowIndex, 0);
459
+
460
+ let isTreeTable = tableWidget.options.isTreeTable || false;
461
+ if (isTreeTable) {
462
+ rowIndex = tableRef
463
+ .getValue()
464
+ .findIndex((item) => item._X_ROW_KEY === obj.row._X_ROW_KEY);
465
+ if (rowIndex < 0) {
466
+ return "false";
467
+ }
468
+ }
469
+
470
+ let propName = fieldKeyName + "." + rowIndex + "." + property;
471
+ if (!required) {
472
+ propName = "false";
473
+ }
474
+ return propName;
475
+ },
371
476
  getI18nLabel(label, path, param) {
372
477
  return !this.designState && label ? this.$t2(label, path, param) : label;
373
478
  },
@@ -509,7 +614,8 @@ export default {
509
614
  : [];
510
615
 
511
616
  let flag1 = !item.serveName || item.serveName == bdService;
512
- let flag2 = !companyCodes.length || companyCodes.includes(companyCode);
617
+ let flag2 =
618
+ !companyCodes.length || companyCodes.includes(companyCode);
513
619
  // let flag3 = !loginAccounts.length || loginAccounts.includes(loginAccount)
514
620
  // let flag4 = this.compareToList(saleOrgCodes, saleOrgCodeList)
515
621
  if (flag1 && flag2) {
@@ -543,13 +649,16 @@ export default {
543
649
  isShowWidget() {
544
650
  let widgetTextFlag = this.field.options.widgetTextFlag;
545
651
  return (
546
- widgetTextFlag === undefined || widgetTextFlag === null || widgetTextFlag === 0
652
+ widgetTextFlag === undefined ||
653
+ widgetTextFlag === null ||
654
+ widgetTextFlag === 0
547
655
  );
548
656
  },
549
657
  getShowValue() {
550
658
  let widgetTextFlag = this.field.options.widgetTextFlag;
551
659
  let fieldModel = this.$parent.fieldModel;
552
- if (this.$parent.fieldModelLabel) fieldModel = this.$parent.fieldModelLabel();
660
+ if (this.$parent.fieldModelLabel)
661
+ fieldModel = this.$parent.fieldModelLabel();
553
662
  let showValue = fieldModel;
554
663
  if (widgetTextFlag == 2) {
555
664
  showValue = this.getProcessText(showValue, this.encryptFormula);
@@ -568,13 +677,17 @@ export default {
568
677
  handleClick(event) {
569
678
  if (this.field.options.disabled) return;
570
679
  this.$parent.handleButtonWidgetClick(event, true);
571
- if (!this.designState && this.field.options.widgetTextLinkConfig?.options.href) {
680
+ if (
681
+ !this.designState &&
682
+ this.field.options.widgetTextLinkConfig?.options.href
683
+ ) {
572
684
  window.open(this.field.options.widgetTextLinkConfig?.options.href);
573
685
  }
574
686
  },
575
687
  getWidgetValue() {
576
688
  let fieldModel = this.$parent.fieldModel;
577
- if (this.$parent.fieldModelLabel) fieldModel = this.$parent.fieldModelLabel();
689
+ if (this.$parent.fieldModelLabel)
690
+ fieldModel = this.$parent.fieldModelLabel();
578
691
  return fieldModel;
579
692
  },
580
693
  },
@@ -1,27 +1,43 @@
1
1
  <template>
2
- <form-item-wrapper :designer="designer" :field="field" :rules="rules" :design-state="designState"
3
- :parent-widget="parentWidget" :parent-list="parentList" :index-of-parent-list="indexOfParentList"
4
- :sub-form-row-index="subFormRowIndex" :sub-form-col-index="subFormColIndex"
5
- :sub-form-row-id="subFormRowId">
6
- <template v-for="(item,index) in field.options.statusParam">
7
- <template v-if="fieldModel===item[valueField]">
8
- <span v-if="field.options.formScriptEnabled || field.options.commonAttributeEnabled" :key="index" >{{ getI18nLabel(item[labelField]) }}</span>
9
- <span v-else :key="index" class="list-tag" :class="item.type">{{ getI18nLabel(item[labelField]) }}</span>
2
+ <form-item-wrapper
3
+ :designer="designer"
4
+ :field="field"
5
+ :rules="rules"
6
+ :design-state="designState"
7
+ :parent-widget="parentWidget"
8
+ :parent-list="parentList"
9
+ :index-of-parent-list="indexOfParentList"
10
+ :sub-form-row-index="subFormRowIndex"
11
+ :sub-form-col-index="subFormColIndex"
12
+ :sub-form-row-id="subFormRowId"
13
+ >
14
+ <template v-for="(item, index) in field.options.statusParam">
15
+ <template v-if="fieldModel === item[valueField]">
16
+ <span
17
+ v-if="
18
+ field.options.formScriptEnabled ||
19
+ field.options.commonAttributeEnabled
20
+ "
21
+ :key="index"
22
+ >{{ getI18nLabel(item[labelField]) }}</span
23
+ >
24
+ <span v-else :key="index" class="list-tag" :class="item.type">{{
25
+ getI18nLabel(item[labelField])
26
+ }}</span>
10
27
  </template>
11
28
  </template>
12
29
  </form-item-wrapper>
13
30
  </template>
14
31
 
15
32
  <script>
16
- import emitter from '../../../../../components/xform/utils/emitter'
33
+ import emitter from "../../../../../components/xform/utils/emitter";
17
34
  import i18n from "../../../../../components/xform/utils/i18n";
18
35
  import fieldMixin from "../../../../../components/xform/form-designer/form-widget/field-widget/fieldMixin";
19
- import FormItemWrapper
20
- from "../../../../../components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue";
36
+ import FormItemWrapper from "../../../../../components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue";
21
37
 
22
38
  export default {
23
39
  name: "status-widget",
24
- componentName: 'FieldWidget', //必须固定为FieldWidget,用于接收父级组件的broadcast事件
40
+ componentName: "FieldWidget", //必须固定为FieldWidget,用于接收父级组件的broadcast事件
25
41
  mixins: [emitter, fieldMixin, i18n],
26
42
  props: {
27
43
  field: Object,
@@ -32,28 +48,26 @@ export default {
32
48
 
33
49
  designState: {
34
50
  type: Boolean,
35
- default: false
51
+ default: false,
36
52
  },
37
53
 
38
- subFormRowIndex: { /* 子表单组件行索引,从0开始计数 */
39
- type: Number,
40
- default: -1
54
+ subFormRowIndex: {
55
+ /* 子表单组件行索引,从0开始计数 */ type: Number,
56
+ default: -1,
41
57
  },
42
- subFormColIndex: { /* 子表单组件列索引,从0开始计数 */
43
- type: Number,
44
- default: -1
58
+ subFormColIndex: {
59
+ /* 子表单组件列索引,从0开始计数 */ type: Number,
60
+ default: -1,
45
61
  },
46
- subFormRowId: { /* 子表单组件行Id,唯一id且不可变 */
47
- type: String,
48
- default: ''
62
+ subFormRowId: {
63
+ /* 子表单组件行Id,唯一id且不可变 */ type: String,
64
+ default: "",
49
65
  },
50
-
51
66
  },
52
67
  components: {
53
- FormItemWrapper
54
-
68
+ FormItemWrapper,
55
69
  },
56
- inject: ['refList', 'globalOptionData', 'globalModel', 'getFormConfig'],
70
+ inject: ["refList", "globalOptionData", "globalModel", "getFormConfig"],
57
71
  data() {
58
72
  return {
59
73
  oldFieldValue: [], //field组件change之前的值
@@ -62,55 +76,56 @@ export default {
62
76
  isH5: false,
63
77
  option: {},
64
78
  statusParam: [],
65
- }
79
+ };
66
80
  },
67
81
  computed: {
68
- labelField(){
82
+ labelField() {
69
83
  return this.getOptionItemLabelKey();
70
84
  },
71
- valueField(){
85
+ valueField() {
72
86
  return this.getOptionItemValueKey();
73
- }
87
+ },
74
88
  },
75
89
  watch: {
76
90
  fieldModel(val) {
77
91
  this.handleChangeEvent(val);
78
- }
92
+ },
79
93
  },
80
94
  beforeCreate() {
81
95
  /* 这里不能访问方法和属性!! */
82
96
  },
83
97
 
84
98
  created() {
85
-
86
99
  /* 注意:子组件mounted在父组件created之后、父组件mounted之前触发,故子组件mounted需要用到的prop
87
100
  需要在父组件created中初始化!! */
88
101
  this.initStatusForDesign();
89
102
 
90
- this.initFieldModel()
91
- this.registerToRefList()
92
- this.initEventHandler()
93
- this.buildFieldRules()
103
+ this.initFieldModel();
104
+ this.registerToRefList();
105
+ this.initEventHandler();
106
+ this.buildFieldRules();
94
107
 
95
- this.handleOnCreated()
96
- this.initOptionItemsHandle()
108
+ this.handleOnCreated();
109
+ this.initOptionItemsHandle();
97
110
  // this.initStatusParam();
98
111
  },
99
112
 
100
113
  mounted() {
101
- this.handleOnMounted()
114
+ this.handleOnMounted();
102
115
  },
103
116
 
104
117
  beforeDestroy() {
105
- this.unregisterFromRefList()
118
+ this.unregisterFromRefList();
106
119
  },
107
120
  methods: {
108
121
  initStatusForDesign() {
109
122
  if (this.designState) {
110
123
  let value = null;
111
124
  let statusParam = this.field.options.statusParam;
125
+ let valueField = this.valueField;
112
126
  if (statusParam.length) {
113
- value = this.field.options.defaultValue ?? (statusParam[0].value ?? 0)
127
+ value =
128
+ this.field.options.defaultValue ?? statusParam[0][valueField] ?? 0;
114
129
  } else {
115
130
  value = 0;
116
131
  }
@@ -124,14 +139,18 @@ export default {
124
139
  getFieldModelLabel() {
125
140
  let label = null;
126
141
  let fieldModel = this.fieldModel;
127
- let item = this.field.options.statusParam.find(item => item.value === fieldModel)
142
+ let valueField = this.valueField;
143
+ let labelField = this.labelField;
144
+ let item = this.field.options.statusParam.find(
145
+ (item) => item[valueField] === fieldModel
146
+ );
128
147
  if (item) {
129
- label = this.getI18nLabel(item.label);
148
+ label = this.getI18nLabel(item[labelField]);
130
149
  }
131
150
  return label;
132
- }
133
- }
134
- }
151
+ },
152
+ },
153
+ };
135
154
  </script>
136
155
 
137
156
  <style lang="scss" scoped>