vue2-client 1.14.66 → 1.14.68

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 (67) hide show
  1. package/.history/public/his/editor/editor_20250606134713.html +51 -0
  2. package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527173925.vue +509 -0
  3. package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174316.vue +524 -0
  4. package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174419.vue +524 -0
  5. package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174422.vue +524 -0
  6. package/.history/src/base-client/components/common/XForm/XFormItem_20250508134122.vue +1320 -0
  7. package/.history/src/base-client/components/common/XForm/XFormItem_20250527171604.vue +1332 -0
  8. package/.history/src/base-client/components/common/XForm/XFormItem_20250527171613.vue +1331 -0
  9. package/.history/src/base-client/components/common/XForm/XFormItem_20250527171703.vue +1331 -0
  10. package/.history/src/base-client/components/common/XForm/XFormItem_20250527171720.vue +1331 -0
  11. package/.history/src/base-client/components/common/XForm/XFormItem_20250527174327.vue +1339 -0
  12. package/.history/src/base-client/components/his/XList/XList_20250609135848.vue +173 -0
  13. package/.history/src/base-client/components/his/XList/XList_20250609141026.vue +222 -0
  14. package/.history/src/base-client/components/his/XList/XList_20250609141035.vue +229 -0
  15. package/.history/src/base-client/components/his/XList/XList_20250609141103.vue +229 -0
  16. package/.history/src/base-client/components/his/XList/XList_20250609141105.vue +229 -0
  17. package/.history/src/base-client/components/his/XList/XList_20250609141334.vue +241 -0
  18. package/.history/src/base-client/components/his/XList/XList_20250609141404.vue +241 -0
  19. package/.history/src/base-client/components/his/XList/XList_20250609141406.vue +241 -0
  20. package/.history/src/base-client/components/his/XList/XList_20250609141801.vue +245 -0
  21. package/.history/src/base-client/components/his/XList/XList_20250609142033.vue +245 -0
  22. package/.history/src/base-client/components/his/XList/XList_20250609142038.vue +245 -0
  23. package/.history/src/base-client/components/his/XList/XList_20250609142435.vue +255 -0
  24. package/.history/src/base-client/components/his/XList/XList_20250609142503.vue +255 -0
  25. package/.history/src/base-client/components/his/XList/XList_20250609142504.vue +255 -0
  26. package/.history/src/base-client/components/his/XList/XList_20250609143012.vue +270 -0
  27. package/.history/src/base-client/components/his/XList/XList_20250609143044.vue +270 -0
  28. package/.history/src/base-client/components/his/XList/XList_20250609143046.vue +270 -0
  29. package/.history/src/base-client/components/his/XList/XList_20250609143210.vue +270 -0
  30. package/.history/src/base-client/components/his/XList/XList_20250609144339.vue +294 -0
  31. package/.history/src/base-client/components/his/XList/XList_20250609144410.vue +294 -0
  32. package/.history/src/base-client/components/his/XList/XList_20250609144412.vue +294 -0
  33. package/.history/src/base-client/components/his/XList/XList_20250609144647.vue +303 -0
  34. package/.history/src/base-client/components/his/XList/XList_20250609144716.vue +303 -0
  35. package/.history/src/base-client/components/his/XList/XList_20250609144729.vue +303 -0
  36. package/.history/src/base-client/components/his/XList/XList_20250609151232.vue +288 -0
  37. package/.history/src/base-client/components/his/XList/XList_20250609151247.vue +288 -0
  38. package/.history/src/base-client/components/his/XList/XList_20250609151252.vue +288 -0
  39. package/.history/src/base-client/components/his/XList/XList_20250609161220.vue +317 -0
  40. package/.history/src/base-client/components/his/XList/XList_20250609161258.vue +306 -0
  41. package/.history/src/base-client/components/his/XList/XList_20250609161319.vue +306 -0
  42. package/.history/src/base-client/components/his/XList/XList_20250609161320.vue +306 -0
  43. package/Users/objecrt/af-vue2-client/src/base-client/components/his/XShiftSchedule/XShiftSchedule.vue +36 -0
  44. package/docs/Logic/345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +1 -0
  45. package/docs//345/207/275/346/225/260/344/275/277/347/224/250/347/233/270/345/205/263.md +2 -1
  46. package/package.json +1 -1
  47. package/src/base-client/components/TreeList/TreeList.vue +91 -0
  48. package/src/base-client/components/TreeList/TreeNode.vue +81 -0
  49. package/src/base-client/components/common/AmapMarker/index.js +3 -3
  50. package/src/base-client/components/common/XCardSet/XTiltle.vue +191 -0
  51. package/src/base-client/components/common/XDetailsView/index.js +3 -3
  52. package/src/base-client/components/common/XFormGroupDetails/index.js +3 -3
  53. package/src/base-client/components/his/XList/XList.vue +155 -22
  54. package/src/base-client/components/his/XTextCard/XTextCard.vue +207 -207
  55. package/src/base-client/components/his/XTreeRows/TreeNode.vue +100 -100
  56. package/src/base-client/components/his/XTreeRows/XTreeRows.vue +197 -197
  57. package/src/base-client/components/his/threeTestOrders/editor.vue +111 -111
  58. package/src/base-client/components/his/threeTestOrders/threeTestOrders.vue +76 -13
  59. package/src/components/FileImageItem/FileItem.vue +268 -23
  60. package/src/components/FileImageItem/FileItemGroup.vue +197 -0
  61. package/src/components/FileImageItem/ImageItem.vue +32 -3
  62. package/src/pages/WorkflowDetail/WorkFlowDemo.vue +36 -79
  63. package/src/pages/WorkflowDetail/WorkflowDetail.vue +16 -7
  64. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowHandle.vue +74 -31
  65. package/src/pages/WorkflowDetail/WorkflowPageDetail/WorkFlowTimeline.vue +1 -1
  66. package/src/services/api/workFlow.js +3 -1
  67. package/vue.config.js +2 -2
@@ -1,90 +1,47 @@
1
- <template>
2
- <a-card :bordered="false">
3
- <x-form-table
4
- title="示例页面"
5
- :queryParamsName="queryParamsName"
6
- :fixed-query-form="{
7
- users_f_handler_id: currUser.id,
8
- }"
9
- @action="toDetail">
10
- <template slot="button">
11
- <a-button @click="add">
12
- <a-icon type="plus"/>
13
- 发起报建
14
- </a-button>
15
- </template>
16
- </x-form-table>
17
- <a-modal
18
- v-model="applyAddFlag"
19
- :footer="null"
20
- :dialog-style="{ top: '5rem' }"
21
- :z-index="1001"
22
- title="发起报建"
23
- :destroyOnClose="true">
24
- <x-add-native-form ref="xForm" @onSubmit="applySubmit"/>
25
- </a-modal>
26
- <WorkflowDetail ref="workFlow" @success="success"></WorkflowDetail>
27
- </a-card>
28
- </template>
29
-
30
1
  <script>
31
2
  import WorkflowDetail from '@vue2-client/pages/WorkflowDetail/WorkflowDetail.vue'
32
- import XFormTable from '@vue2-client/base-client/components/common/XFormTable/XFormTable'
33
- import XAddNativeForm from '@vue2-client/base-client/components/common/XAddNativeForm/XAddNativeForm.vue'
34
- import { getConfigByName, runLogic } from '@vue2-client/services/api/common'
35
- import { mapState } from 'vuex'
36
3
 
37
4
  export default {
38
- name: 'Apply',
39
- components: {
40
- XFormTable,
41
- XAddNativeForm,
42
- WorkflowDetail
43
- },
44
- data () {
45
- return {
46
- // 查询配置文件名
47
- queryParamsName: 'applyCRUD',
48
- // 发起报建弹框控制
49
- applyAddFlag: false
50
- }
51
- },
52
- computed: {
53
- ...mapState('account', { currUser: 'user' }),
5
+ name: 'WorkFlowDemo',
6
+ components: { WorkflowDetail },
7
+ mounted () {
8
+ this.$refs.workFlow.init({
9
+ workflowId: '11'
10
+ })
54
11
  },
55
12
  methods: {
56
- add () {
57
- this.applyAddFlag = true
58
- this.$nextTick(
59
- () => {
60
- getConfigByName('addApplyForm', 'af-apply', (res) => {
61
- this.$refs.xForm.init({
62
- businessType: '新增',
63
- title: '发起报建',
64
- ...res
65
- })
66
- })
67
- }
68
- )
69
- },
70
- applySubmit (formData) {
71
- runLogic('addApply', formData).then(
72
- res => {
73
- this.$message.success('发起报建成功')
74
- this.applyAddFlag = false
75
- }
76
- ).catch(() => {
77
- this.applyAddFlag = false
78
- })
13
+ /**
14
+ * 流程详情页成功
15
+ * @param note 备注信息
16
+ * @param form 表单信息
17
+ * @param workflowId
18
+ */
19
+ success ({ note, form, workflowId }) {
20
+ console.log('success', note, form, workflowId)
79
21
  },
80
- success () {
81
- console.log('完工')
82
- },
83
- toDetail (record, id) {
84
- this.$refs.workFlow.init({
85
- workflowId: record.twf_id
86
- })
22
+ /**
23
+ * 流程详情页成功
24
+ * @param note 备注信息
25
+ * @param form 表单信息
26
+ * @param workflowId 工作流id
27
+ * @param fromStepId 起ID
28
+ * @param toStepId 往ID
29
+ * @param successStepId 完成步骤id
30
+ * @param successStep 完成步骤名称
31
+ * @param fromStep 起步骤名称
32
+ * @param toStep 往步骤名称
33
+ */
34
+ nextClick ({ note, form, workflowId, fromStepId, toStepId, fromStep, toStep, successStepId, successStep }) {
35
+ console.log('success', note, form, workflowId, fromStepId, toStepId, fromStep, toStep, successStepId, successStep)
87
36
  }
88
37
  }
89
38
  }
90
39
  </script>
40
+
41
+ <template>
42
+ <WorkflowDetail ref="workFlow" @success="success" @nextClick="nextClick"></WorkflowDetail>
43
+ </template>
44
+
45
+ <style scoped lang="less">
46
+
47
+ </style>
@@ -87,13 +87,11 @@
87
87
  </a-tab-pane>
88
88
 
89
89
  <!-- 查看附件标签页 -->
90
- <!-- <a-tab-pane key="5" tab="查看附件">-->
91
- <!-- <template v-if="details">-->
92
- <!-- <XUploadFilesView-->
93
- <!-- :currUserInfo="{ f_userinfo_id: 90613 }"-->
94
- <!-- />-->
95
- <!-- </template>-->
96
- <!-- </a-tab-pane>-->
90
+ <a-tab-pane key="5" tab="查看附件">
91
+ <template v-if="activeKey === '5' && details">
92
+ <file-item-group @search="getWorkFlowFiles"/>
93
+ </template>
94
+ </a-tab-pane>
97
95
  </a-tabs>
98
96
  </a-card>
99
97
  </div>
@@ -111,10 +109,12 @@ import { workFlowViewApi } from '@vue2-client/services/api/workFlow'
111
109
  import WorkflowLog from './WorkflowPageDetail/WorkflowLog.vue'
112
110
  import LeaveMessage from './WorkflowPageDetail/LeaveMessage'
113
111
  import XUploadFilesView from '@vue2-client/base-client/components/common/XUploadFilesView/index.vue'
112
+ import FileItemGroup from '@vue2-client/components/FileImageItem/FileItemGroup.vue'
114
113
 
115
114
  export default {
116
115
  name: 'WorkflowDetail',
117
116
  components: {
117
+ FileItemGroup,
118
118
  workflowBaseInformation,
119
119
  WorkFlowHandle,
120
120
  XFormTable,
@@ -208,6 +208,15 @@ export default {
208
208
  console.log(err)
209
209
  })
210
210
  },
211
+ // 获取附件列表
212
+ getWorkFlowFiles (date, callback, errorCallback) {
213
+ postByServiceName(workFlowViewApi.getWorkFlowAttachments, {
214
+ workflowId: this.workflowId,
215
+ uploadDate: date
216
+ })
217
+ .then(res => callback(res))
218
+ .catch((e) => errorCallback(e))
219
+ },
211
220
  async reload () {
212
221
  await this.getSteps()
213
222
  await this.getBaseInfo()
@@ -37,33 +37,59 @@
37
37
  <a-tab-pane key="0" tab="步骤详情">
38
38
  <a-card :bordered="false" :loading="loadingHistory">
39
39
  <!-- 当前步骤历史记录 -->
40
- <template v-if="formCompletedDataPreview">
40
+ <template v-if="formCompletedDataPreview && formCompletedDataPreview.data.length > 0">
41
41
  <a-descriptions
42
42
  v-show="formCompletedDataPreview.data"
43
43
  :column="{ xxl: 4, xl: 3, lg: 3, md: 3, sm: 2, xs: 1 }"
44
- title="步骤历史记录"
45
44
  bordered
45
+ class="descriptionPreviewItem"
46
46
  >
47
+ <p slot="title" class="descriptionTitle">
48
+ 填写历史
49
+ </p>
47
50
  <a-descriptions-item
48
- v-for="item in formCompletedDataPreview.data"
49
- :key="item.label"
51
+ v-for="(item, index) in formPreviewNoFileData"
52
+ :key="`${item.label}-${index}`"
50
53
  >
51
54
  <span slot="label" style="color: #000">{{ item.label }}</span>
52
55
  <div style="white-space: pre-wrap">{{ item.value }}</div>
53
56
  </a-descriptions-item>
54
57
  </a-descriptions>
55
- <div v-if="formCompletedDataPreview.note">
56
- <div class="ant-descriptions-title complete-data-title">备注</div>
57
- <p style="white-space: pre-wrap">{{ formCompletedDataPreview.note }}</p>
58
- </div>
59
- <div v-if="formCompletedDataPreview.images.length">
60
- <div class="ant-descriptions-title complete-data-title">图片</div>
61
- <image-item :images="formCompletedDataPreview.images" @preview="handlePreviewFile"/>
62
- </div>
63
- <div v-if="formCompletedDataPreview.files.length">
64
- <div class="ant-descriptions-title complete-data-title">附件</div>
65
- <file-item :files="formCompletedDataPreview.files" @preview="handlePreviewFile"/>
66
- </div>
58
+ <a-descriptions
59
+ v-show="formCompletedDataPreview.note"
60
+ bordered
61
+ class="descriptionPreviewItem"
62
+ >
63
+ <p slot="title" class="descriptionTitle">
64
+ 备注
65
+ </p>
66
+ <a-descriptions-item>
67
+ <span slot="label" style="color: #000">备注信息</span>
68
+ <p style="white-space: pre-wrap">{{ formCompletedDataPreview.note }}</p>
69
+ </a-descriptions-item>
70
+ </a-descriptions>
71
+ <a-descriptions
72
+ v-show="formCompletedDataPreview.images.length"
73
+ class="descriptionPreviewItem allWidth"
74
+ >
75
+ <p slot="title" class="descriptionTitle">
76
+ 图片
77
+ </p>
78
+ <a-descriptions-item>
79
+ <image-item :images="formCompletedDataPreview.images" />
80
+ </a-descriptions-item>
81
+ </a-descriptions>
82
+ <a-descriptions
83
+ v-show="formCompletedDataPreview.files.length"
84
+ class="descriptionPreviewItem allWidth"
85
+ >
86
+ <p slot="title" class="descriptionTitle">
87
+ 附件
88
+ </p>
89
+ <a-descriptions-item>
90
+ <file-item :files="formCompletedDataPreview.files" />
91
+ </a-descriptions-item>
92
+ </a-descriptions>
67
93
  </template>
68
94
  <!-- 当前步骤无记录 -->
69
95
  <template v-else>
@@ -75,7 +101,7 @@
75
101
  </template>
76
102
  <template v-else>
77
103
  <a-tab-pane key="1" tab="业务操作">
78
- <a-card :bordered="false" :loading="loadingHistory">
104
+ <a-card :bordered="false" :loading="loadingHistory" :body-style="{ paddingTop: 0 }">
79
105
  <template v-if="showTab">
80
106
  <x-tab :local-config="tabDesigner" :body-style="{ padding: 0 }" :tabBarGutter="24" default-active-key="workFlowTab">
81
107
  <a-tab-pane
@@ -226,10 +252,6 @@
226
252
  <workflow-list-resolution :workflow-project-id="workflowId" :details="details"></workflow-list-resolution>
227
253
  </a-tab-pane>
228
254
  </a-tabs>
229
- <!-- 文件预览 -->
230
- <a-modal v-model="previewFileVisible" :footer="null" :dialog-style="{ top: '20px' }" width="85%" :z-index="1001">
231
- <file-preview :path="filePath"/>
232
- </a-modal>
233
255
  </template>
234
256
  </div>
235
257
  </template>
@@ -271,7 +293,7 @@ export default {
271
293
  ...mapState('account', { currUser: 'user' }),
272
294
  canSubmit () {
273
295
  // 对于超级管理员直接认为可以提交
274
- if (this.currUser.ename === '1') {
296
+ if (this.currUser.name === '超级管理员') {
275
297
  return true
276
298
  }
277
299
  // currentStepId可能还没初始化,此处拿不到先返回false
@@ -309,6 +331,9 @@ export default {
309
331
  }
310
332
 
311
333
  return false
334
+ },
335
+ formPreviewNoFileData () {
336
+ return this.formCompletedDataPreview.data.filter(item => item.label !== '附件上传')
312
337
  }
313
338
  },
314
339
  data () {
@@ -391,9 +416,6 @@ export default {
391
416
  deadlineHelp: '',
392
417
  // 当前任务是否延期
393
418
  // taskIsOverdue: moment().isAfter(this.completeTime, 'day'),
394
- // 预览图片弹框
395
- previewFileVisible: false,
396
- filePath: '',
397
419
  // 操作类型,提交到下一步或跳过
398
420
  operationType: 'submit',
399
421
  // 获取微信推送是否成功信息
@@ -873,7 +895,7 @@ export default {
873
895
  if (this.checkedChargePerson) {
874
896
  // 使用 value 找到对应的 label
875
897
  stepHandler = this.chargePersonOptions.find(item => item.value === this.checkedChargePerson).label
876
- } else if (this.chargePerson.personList.length > 0) {
898
+ } else if (this.chargePerson.personList && this.chargePerson.personList.length > 0) {
877
899
  stepHandler = this.chargePerson.personList.map(item => item.name).join(',')
878
900
  }
879
901
  return stepHandler
@@ -907,11 +929,6 @@ export default {
907
929
  ...extra
908
930
  })
909
931
  },
910
- // 文件预览
911
- handlePreviewFile (url) {
912
- this.filePath = url
913
- this.previewFileVisible = true
914
- },
915
932
  // 获取默认截止时间
916
933
  getDefaultDeadline () {
917
934
  const date = new Date()
@@ -1064,4 +1081,30 @@ export default {
1064
1081
  :deep(.ant-result){
1065
1082
  padding: 0;
1066
1083
  }
1084
+ .descriptionPreviewItem {
1085
+ margin-bottom: 22px;
1086
+ :deep(.ant-descriptions-view) {
1087
+ overflow: visible;
1088
+ }
1089
+ }
1090
+ .allWidth {
1091
+ :deep(.ant-descriptions-item-content) {
1092
+ width: 100%;
1093
+ }
1094
+ }
1095
+ .descriptionTitle {
1096
+ position: relative;
1097
+ padding-left: 12px;
1098
+ &::before {
1099
+ content: '';
1100
+ position: absolute;
1101
+ left: 0;
1102
+ top: 50%;
1103
+ transform: translateY(-50%);
1104
+ width: 4px;
1105
+ height: 16px;
1106
+ background-color: @primary-color;
1107
+ border-radius: 2px;
1108
+ }
1109
+ }
1067
1110
  </style>
@@ -154,7 +154,7 @@ export default {
154
154
  line-height: 8px;
155
155
  }
156
156
  .ant-steps-item-content {
157
- min-width: 200px;
157
+ min-width: 195px;
158
158
  margin-top: 24px;
159
159
  .ant-steps-item-description {
160
160
  text-align: left;
@@ -55,7 +55,9 @@ const workFlowViewApi = {
55
55
  // 根据人查询对应的t_workflow_step中字段f_workflow_id的数据组
56
56
  getWorkFlowStepWorkFlowId: '/logic/getWorkFlowStepWorkFlowId',
57
57
  // 表单提交到下一步
58
- submitToNextStep: '/logic/submitToNextStep'
58
+ submitToNextStep: '/logic/submitToNextStep',
59
+ // 获取指定工作流的附件列表
60
+ getWorkFlowAttachments: '/logic/getWorkFlowAttachments',
59
61
  }
60
62
 
61
63
  export { workFlowViewApi }
package/vue.config.js CHANGED
@@ -11,12 +11,12 @@ const productionGzipExtensions = ['js', 'css']
11
11
  const isProd = process.env.NODE_ENV === 'production'
12
12
 
13
13
  // v4 产品演示
14
- const v3Server = 'http://192.168.50.67:31567'
14
+ const v3Server = 'http://aote-office.8866.org:31567'
15
15
  // const gateway = 'http://192.168.50.67:31467'
16
16
  // const testUpload = 'http://123.60.214.109:8406'
17
17
  const OSSServerDev = 'http://192.168.50.67:30351'
18
18
  // const revenue = 'http://aote-office.8866.org:31567'
19
- const revenue = 'http://192.168.50.67:31567'
19
+ const revenue = 'http://aote-office.8866.org:31567'
20
20
  // const OSSServerProd = 'http://192.168.50.67:31351'
21
21
  // const testUploadLocal = 'http://127.0.0.1:9001'
22
22
  // v3 铜川