cloud-web-corejs 1.0.54-dev.264 → 1.0.54-dev.266

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.
@@ -71,10 +71,9 @@
71
71
  <div class="title-tab">
72
72
  <div>
73
73
  <b :class="{on:tabIndex=='1'}" @click="tabIndex='1'">{{ $t2('任务情况', 'components.wf.taskInfo') }}</b>
74
- <b :class="{on:tabIndex=='2'}" @click="tabIndex='2'"
75
- v-if="toTalk">{{ $t2('流程沟通', 'components.wf.wfTalk') }}</b>
76
- <b :class="{on:tabIndex=='3'}" @click="tabIndex='3'"
77
- v-if="showAllWfOpinon">{{ $t2('全部任务情况', 'components.wf.allTaskInfo') }}</b>
74
+ <b :class="{on:tabIndex=='2'}" @click="tabIndex='2'" v-if="toTalk">{{ $t2('流程沟通', 'components.wf.wfTalk') }}</b>
75
+ <b :class="{on:tabIndex=='4'}" @click="tabIndex='4'">{{ $t1('流程附言') }}</b>
76
+ <b :class="{on:tabIndex=='3'}" @click="tabIndex='3'" v-if="showAllWfOpinon">{{ $t2('全部任务情况', 'components.wf.allTaskInfo') }}</b>
78
77
  </div>
79
78
  </div>
80
79
  <div class="task-situation" v-show="tabIndex=='1'" style="max-height: 500px; overflow: hidden auto;">
@@ -178,6 +177,29 @@
178
177
  </template>
179
178
  </vxe-grid>
180
179
  </div>
180
+ <div class="task-situation" v-show="tabIndex=='4'">
181
+ <vxe-grid
182
+ ref="table-wfMemo"
183
+ :auto-resize="true"
184
+ v-bind="wfMemoOption"
185
+ @resizable-change="$vxeTableUtil.onColumnWitchChange"
186
+ @custom="$vxeTableUtil.customHandle"
187
+ >
188
+ <template #form>
189
+ <div style="margin-bottom: 8px;" class="clearfix">
190
+ <div class="fl">
191
+ <el-button type="primary" class="button-sty" @click="openWfMemoDialog()"
192
+ icon="el-icon-plus" v-if="wfInfo.toAddMemo">{{ $t2('新增') }}
193
+ </el-button>
194
+ </div>
195
+ <div class="fr">
196
+ <!-- <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="wfMemoSearchEvent">搜索
197
+ </vxe-button> -->
198
+ </div>
199
+ </div>
200
+ </template>
201
+ </vxe-grid>
202
+ </div>
181
203
  <div class="task-situation" v-show="showAllWfOpinon && tabIndex=='3'"
182
204
  style="max-height: 500px; overflow: hidden auto;">
183
205
  <div class="item" v-for="wftaskLineData in allWfTaskOpinions" :key="'allWfTaskOpinions'+wftaskLineData.id">
@@ -206,6 +228,7 @@
206
228
  </div>
207
229
  </div>
208
230
  </div>
231
+ <!--沟通-->
209
232
  <el-dialog
210
233
  v-if="showTalkDialog"
211
234
  :visible.sync="showTalkDialog"
@@ -295,6 +318,69 @@
295
318
  </span>
296
319
  </el-dialog>
297
320
 
321
+ <!--流程附言-->
322
+ <el-dialog
323
+ v-if="showWfMemoDialog"
324
+ :visible.sync="showWfMemoDialog"
325
+ :modal-append-to-body="false"
326
+ :close-on-click-modal="false"
327
+ :modal="false"
328
+ custom-class="dialog-style wf-dialog"
329
+ :append-to-body="true"
330
+ v-el-drag-dialog
331
+ v-el-dialog-center
332
+ >
333
+ <template #title>
334
+ <span class="el-dialog__title">{{ $t1('流程附言') }}<span
335
+ style="margin-left: 10px;margin-right: 10px;">—</span><b
336
+ class="f-red" style="font-size: 12px;">{{ $t2('节点', 'components.wf.node') }}:{{
337
+ wfInfo.taskName
338
+ }}</b></span>
339
+ </template>
340
+ <el-form :model="wfMemoForm">
341
+ <div id="containt" style="height: 500px;">
342
+ <table class="table-detail">
343
+ <tbody>
344
+ <tr>
345
+ <th>
346
+ <span class="t">
347
+ {{ $t1('内容') }}
348
+ </span>
349
+ </th>
350
+ <td>
351
+ <el-form-item field="content">
352
+ <el-input type="textarea" :rows="8"
353
+ :placeholder="$t1('内容')"
354
+ v-model="wfMemoForm.content"></el-input>
355
+ </el-form-item>
356
+ </td>
357
+ </tr>
358
+ <tr>
359
+ <th>
360
+ <span class="t">
361
+ {{ $t1('附件') }}
362
+ </span>
363
+ </th>
364
+ <td>
365
+ <baseUpload accept="file" multi="true" :file.sync="wfMemoForm.attachmentDTOs"></baseUpload>
366
+ </td>
367
+ </tr>
368
+ </tbody>
369
+ </table>
370
+ </div>
371
+ </el-form>
372
+ <span slot="footer" class="dialog-footer">
373
+ <el-button type="primary" plain class="button-sty" @click="showWfMemoDialog = false">
374
+ <i class="el-icon-close el-icon"></i>
375
+ {{ $t2('取 消', 'system.button.cancel2') }}
376
+ </el-button>
377
+ <el-button type="primary" @click="submitWfMemoForm" class="button-sty">
378
+ <i class="el-icon-check el-icon"></i>
379
+ {{ $t2('确 定', 'system.button.confirm2') }}
380
+ </el-button>
381
+ </span>
382
+ </el-dialog>
383
+
298
384
  <el-dialog
299
385
  v-if="rejectDialogVisible"
300
386
  :visible.sync="rejectDialogVisible"
@@ -363,7 +363,16 @@ wfContentMixin = {
363
363
 
364
364
  revokeDialogVisible: false,
365
365
  revokeForm: {opinion: null},
366
- showWfInfoTab: false
366
+ showWfInfoTab: false,
367
+
368
+ wfMemoOption: {},
369
+ wfMemoForm: {
370
+ receiverName: null,
371
+ content: null,
372
+ attachmentDTOs: [],
373
+ replyId: null
374
+ },
375
+ showWfMemoDialog: false,
367
376
  };
368
377
  },
369
378
  provide() {
@@ -412,6 +421,7 @@ wfContentMixin = {
412
421
  this.initWfUserParam();
413
422
  this.initTabIndex();
414
423
  this.initShowTaskInfo();
424
+ this.initWfMemo();
415
425
  }
416
426
  });
417
427
  },
@@ -1025,6 +1035,7 @@ wfContentMixin = {
1025
1035
  h("base-attachment", {
1026
1036
  props: {
1027
1037
  option: option,
1038
+ imageLazy: false
1028
1039
  },
1029
1040
  }),
1030
1041
  ];
@@ -1309,6 +1320,120 @@ wfContentMixin = {
1309
1320
  },
1310
1321
  });
1311
1322
  },
1323
+
1324
+ initWfMemo() {
1325
+ let h = this.$createElement;
1326
+ let tableOption = {
1327
+ vue: this,
1328
+ tableRef: "table-wfMemo",
1329
+ tableName: "wf_table-wfMemo",
1330
+ path: this.current_prefix + "/wf_memo/listPage",
1331
+ param: () => {
1332
+ return {
1333
+ uuid: this.wfInfo.uuid,
1334
+ };
1335
+ },
1336
+ config: {
1337
+ height: 350
1338
+ },
1339
+ columns: [
1340
+ {type: "checkbox", width: 48, resizable: false, fixed: "left"},
1341
+ {
1342
+ title: this.$t1('操作人'),
1343
+ field: "operatorName",
1344
+ width: 150,
1345
+ fixed: "left",
1346
+ },
1347
+ {
1348
+ title: this.$t1('内容'),
1349
+ field: "content",
1350
+ width: 250,
1351
+ showOverflow: false
1352
+ },
1353
+ {
1354
+ width: 150,
1355
+ title: this.$t1('附件'),
1356
+ field: "attachmentImage",
1357
+ sortable: false,
1358
+ slots: {
1359
+ default: ({row, rowIndex}) => {
1360
+ let option = {
1361
+ title: this.$t1('附件'),
1362
+ edit: false,
1363
+ rows: (done) => {
1364
+ done(row.attachmentDTOs);
1365
+ },
1366
+ };
1367
+ return [
1368
+ h("base-attachment", {
1369
+ props: {
1370
+ option: option,
1371
+ imageLazy: false
1372
+ },
1373
+ }),
1374
+ ];
1375
+ },
1376
+ },
1377
+ },
1378
+ {
1379
+ title: this.$t2('创建时间', 'system.label.createDate'),
1380
+ field: "createDate",
1381
+ width: 150,
1382
+ },
1383
+ {
1384
+ width: 80,
1385
+ fixed: "right",
1386
+ title: "",
1387
+ sortable: false
1388
+ },
1389
+ ]
1390
+ };
1391
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
1392
+ this.wfMemoOption = opts;
1393
+ });
1394
+ },
1395
+ wfMemoSearchEvent(){
1396
+ this.$refs['table-wfMemo'].commitProxy('reload');
1397
+ },
1398
+ openWfMemoDialog(row) {
1399
+ if(row){
1400
+ this.wfMemoForm = this.$baseLodash.cloneDeep(row);
1401
+ }else{
1402
+ this.wfMemoForm = {
1403
+ uuid: this.wfInfo.uuid,
1404
+ content:null,
1405
+ attachmentDTOs: []
1406
+ }
1407
+ }
1408
+ this.showWfMemoDialog = true;
1409
+ },
1410
+ submitWfMemoForm() {
1411
+ let that = getTarget(this);
1412
+
1413
+ if (!this.wfMemoForm.content) {
1414
+ that.$message({
1415
+ message: this.$t1('请输入内容'),
1416
+ type: "error",
1417
+ duration: 2 * 1000,
1418
+ });
1419
+ return false;
1420
+ }
1421
+
1422
+ this.showWfMemoDialog = false;
1423
+ that.$http({
1424
+ url: this.current_prefix + "/wf_memo/save",
1425
+ data: this.wfMemoForm,
1426
+ method: "post",
1427
+ isLoading: true,
1428
+ success: (resultMsg) => {
1429
+ that.$message({
1430
+ message: resultMsg.content,
1431
+ type: "success"
1432
+ });
1433
+ this.wfMemoSearchEvent();
1434
+ },
1435
+ });
1436
+ },
1312
1437
  }
1313
1438
  };
1314
1439
 
@@ -968,6 +968,8 @@ modules = {
968
968
  if (this.handleCustomEvent(this.field.options.onBeforeClickButton, ["done"], [done]) !== false) {
969
969
  done();
970
970
  }
971
+ } else {
972
+ done();
971
973
  }
972
974
  },
973
975
  handleAddTableDataEvent(flag) {
@@ -28,8 +28,8 @@
28
28
  <i class="el-icon-arrow-right" ayadmin-event="rightPage"
29
29
  one-link-mark="yes" @click="$refs.scrollPane.handleScrollRight()"/>
30
30
  </el-tooltip>
31
- <el-dropdown style="margin-right:10px">
32
- <span class="el-dropdown-link">
31
+ <el-dropdown >
32
+ <span class="el-dropdown-link" style="padding-right:10px;padding-left:4px;">
33
33
  <i class="el-icon-more el-icon--right"></i>
34
34
  </span>
35
35
  <el-dropdown-menu slot="dropdown">
@@ -1,17 +1,15 @@
1
1
  <template>
2
2
  <div class="detail-wrap">
3
- <el-form ref="editForm" :model="requestAsyncSetting">
3
+ <el-form ref="editForm" :model="pushData">
4
4
  <div class="d-header clearfix">
5
5
  <div class="fl">
6
6
  <i class="el-icon-info"/>
7
- {{ dataId ? $t1('查看异步推送数据') : $t1('新增异步推送数据') }}
7
+ {{ dataId ? $t1('查看在途推送数据') : $t1('新增在途推送数据') }}
8
8
  </div>
9
9
  <div class="fr">
10
10
  <el-button type="primary" plain class="button-sty" @click="$baseReload()" icon="el-icon-refresh-right">
11
11
  {{ $t1('重置') }}
12
12
  </el-button>
13
- <el-button type="primary" class="button-sty" icon="el-icon-check" @click="saveData">{{ $t1('保存') }}
14
- </el-button>
15
13
  </div>
16
14
  </div>
17
15
  <baseTabs>
@@ -20,161 +18,56 @@
20
18
  <table class="table-detail">
21
19
  <tbody>
22
20
  <tr>
23
- <th>
24
- <em class="f-red">*</em>
25
- {{ $t1('推送编码') }}
26
- </th>
27
- <td colspan="5">
28
- <el-form-item prop="reqCode" :rules="[{ required: true, trigger: 'blur' }]">
29
- <el-input type="text" autocomplete="off" v-model="requestAsyncSetting.reqCode" clearable/>
30
- </el-form-item>
31
- </td>
21
+ <th>{{ $t1('任务编码') }}</th>
22
+ <td>{{ pushData.taskCode }}</td>
23
+ <th>{{ $t1('产生业务数据时间') }}</th>
24
+ <td>{{ pushData.generateDate }}</td>
32
25
  </tr>
33
26
  <tr>
34
- <th>
35
- <em class="f-red">*</em>
36
- {{ $t1('推送名称') }}
37
- </th>
38
- <td colspan="5">
39
- <el-form-item prop="reqName" :rules="[{ required: true, trigger: 'blur' }]">
40
- <el-input type="text" autocomplete="off" v-model="requestAsyncSetting.reqName" clearable/>
41
- </el-form-item>
42
- </td>
27
+ <th>{{ $t1('回传的数据类型') }}</th>
28
+ <td>{{ pushData.callbackDataType }}</td>
29
+ <th>{{ $t1('回传的单据数据编码或ID') }}</th>
30
+ <td>{{ pushData.callbackCode }}</td>
31
+ <th>{{ $t1('回传的组织编码') }}</th>
32
+ <td>{{ pushData.callbackCompanyCode }}</td>
43
33
  </tr>
44
34
  <tr>
45
- <th>
46
- <em class="f-red">*</em>
47
- {{ $t1('执行组织编码') }}
48
- </th>
49
- <td colspan="5">
50
- <el-form-item prop="exeCompanyCode" :rules="[{ required: true, trigger: 'blur' }]">
51
- <el-input type="text" autocomplete="off" v-model="requestAsyncSetting.exeCompanyCode" clearable/>
52
- </el-form-item>
53
- </td>
54
- <td colspan="2"><span class="tips_1">{{ $t1('注:多个用逗号","隔开') }}</span></td>
35
+ <th>{{ $t1('备注') }}</th>
36
+ <td colspan="7">{{ pushData.remark }}</td>
55
37
  </tr>
56
-
57
- <!-- <tr>
58
- <th>
59
- {{ $t1('连接超时(ms)') }}
60
- </th>
61
- <td>
62
- <el-form-item prop="connectTimeout" :rules="[{ required: false, trigger: 'blur' }]">
63
- <base-input-number v-model="requestAsyncSetting.connectTimeout" clearable/>
64
- </el-form-item>
65
- </td>
66
- <td colspan="2"><span class="tips_1">{{ $t1('注:不填默认10000毫秒') }}</span></td>
67
- <th>
68
- {{ $t1('读取超时(ms)') }}
69
- </th>
70
- <td>
71
- <el-form-item prop="readTimeout" :rules="[{ required: false, trigger: 'blur' }]">
72
- <base-input-number v-model="requestAsyncSetting.readTimeout" clearable/>
73
- </el-form-item>
74
- </td>
75
- <td colspan="2"><span class="tips_1">{{ $t1('注:不填默认60000毫秒') }}</span></td>
76
- </tr>-->
77
38
  <tr>
78
- <th>
79
- <em class="f-red">*</em>
80
- {{ $t1('是否启用') }}
81
- </th>
82
- <td>
83
- <el-form-item prop="enabled" :rules="[{ required: true, trigger: 'blur' }]">
84
- <el-radio-group v-model="requestAsyncSetting.enabled">
85
- <el-radio :label="true">{{ $t1('启用') }}</el-radio>
86
- <el-radio :label="false">{{ $t1('禁用') }}</el-radio>
87
- </el-radio-group>
88
- </el-form-item>
89
- </td>
90
-
39
+ <th>{{ $t1('真实数据') }}</th>
40
+ <td colspan="7">{{ pushData.data }}</td>
91
41
  </tr>
92
42
  <tr>
93
- <th>
94
- {{ $t1('备注') }}
95
- </th>
96
- <td colspan="7">
97
- <el-form-item prop="remark" :rules="[{ required: false, trigger: 'blur' }]">
98
- <el-input type="textarea" :rows="2" :placeholder="$t1('请输入内容')" size="small"
99
- v-model="requestAsyncSetting.remark"
100
- clearable></el-input>
101
- </el-form-item>
102
- </td>
43
+ <th>{{ $t1('别的服务传输数据过来的数据标识') }}</th>
44
+ <td colspan="7">{{ pushData.transfer }}</td>
103
45
  </tr>
104
46
 
105
47
  <tr>
106
- <th>{{ $t1('创建人') }}</th>
107
- <td>{{ requestAsyncSetting.createBy }}</td>
108
- <th>{{ $t1('创建时间') }}</th>
109
- <td>{{ requestAsyncSetting.createDate }}</td>
110
- <th>{{ $t1('更新人') }}</th>
111
- <td>{{ requestAsyncSetting.modifyBy }}</td>
112
- <th>{{ $t1('更新时间') }}</th>
113
- <td>{{ requestAsyncSetting.modifyDate }}</td>
114
- </tr>
115
- </tbody>
116
- </table>
117
- </template>
118
- </baseTabPane>
119
- <baseTabPane :label="$t1('数据组合脚本')">
120
- <template #default>
121
- <table class="table-detail">
122
- <tbody>
123
- <tr>
124
- <tr>
125
- <th>
126
- {{ $t1('脚本') }}
127
- <scriptTestButton :script.sync="requestAsyncSetting.script"></scriptTestButton>
128
- </th>
129
- <td colspan="7">
130
- <el-form-item prop="postScript" :rules="[{ required: false, trigger: 'blur' }]">
131
- <code-editor mode="java" :readonly="!1" v-model="requestAsyncSetting.script"
132
- v-if="showCodeEditor"></code-editor>
133
- </el-form-item>
134
- </td>
135
- </tr>
136
- </tr>
137
- </tbody>
138
- </table>
139
- </template>
140
- </baseTabPane>
141
- <baseTabPane :label="$t1('推送数据服务信息')">
142
- <template #default>
143
- <table class="table-detail">
144
- <tbody>
145
- <tr>
146
- <th>
147
- <em class="f-red">*</em>
148
- {{ $t1('请求Url') }}
149
- </th>
150
- <td colspan="7">
151
- <el-form-item prop="url" :rules="[{ required: true, trigger: 'blur' }]">
152
- <el-input type="text" autocomplete="off" v-model="requestAsyncSetting.url" clearable/>
153
- </el-form-item>
154
- </td>
48
+ <th>{{ $t1('数据唯一标识') }}</th>
49
+ <td colspan="7">{{ pushData.sid }}</td>
155
50
  </tr>
51
+
156
52
  <tr>
157
- <th>
158
- {{ $t1('请求头') }}
159
- </th>
160
- <td colspan="7">
161
- <el-form-item prop="header" :rules="[{ required: false, trigger: 'blur' }]">
162
- <el-input type="textarea" :rows="2" :placeholder="$t1('请输入内容')" size="small"
163
- v-model="requestAsyncSetting.header"
164
- clearable></el-input>
165
- </el-form-item>
166
- </td>
53
+ <th>{{ $t1('冗余字段1') }}</th>
54
+ <td>{{ pushData.field1 }}</td>
55
+ <th>{{ $t1('冗余字段2') }}</th>
56
+ <td>{{ pushData.field2 }}</td>
57
+ <th>{{ $t1('冗余字段3') }}</th>
58
+ <td>{{ pushData.field3 }}</td>
59
+ <th>{{ $t1('冗余字段4') }}</th>
60
+ <td>{{ pushData.field4 }}</td>
167
61
  </tr>
168
62
  <tr>
169
- <th>
170
- <em class="f-red">*</em>
171
- {{ $t1('调度任务编码') }}
172
- </th>
173
- <td colspan="7">
174
- <el-form-item prop="taskCode" :rules="[{ required: true, trigger: 'blur' }]">
175
- <el-input type="text" autocomplete="off" v-model="requestAsyncSetting.taskCode" clearable/>
176
- </el-form-item>
177
- </td>
63
+ <th>{{ $t1('冗余字段5') }}</th>
64
+ <td>{{ pushData.field5 }}</td>
65
+ <th>{{ $t1('服务名') }}</th>
66
+ <td>{{ pushData.serverName }}</td>
67
+ <th>{{ $t1('创建人') }}</th>
68
+ <td>{{ pushData.createBy }}</td>
69
+ <th>{{ $t1('创建时间') }}</th>
70
+ <td>{{ pushData.createDate }}</td>
178
71
  </tr>
179
72
  </tbody>
180
73
  </table>
@@ -187,10 +80,10 @@
187
80
 
188
81
  <script>
189
82
  export default {
190
- name: 'request_async_settingEdit',
83
+ name: 'push_dataEdit',
191
84
  props: {
192
85
  _dataId: [String, Number],
193
- copyId: [String, Number]
86
+ serverName: String
194
87
  },
195
88
  components: {},
196
89
  data() {
@@ -198,7 +91,7 @@ export default {
198
91
  isEdit: false,
199
92
  tabIndex: 'first',
200
93
  dataId: '',
201
- requestAsyncSetting: {
94
+ pushData: {
202
95
  enabled: true,
203
96
  connectTimeout: 10000,
204
97
  readTimeout: 60000,
@@ -209,6 +102,11 @@ export default {
209
102
  showCodeEditor: false
210
103
  };
211
104
  },
105
+ computed: {
106
+ current_prefix() {
107
+ return this.serverName ? `/${this.serverName}` : "";
108
+ }
109
+ },
212
110
  created() {
213
111
  if (this._dataId && !isNaN(this._dataId)) this.dataId = this._dataId;
214
112
  },
@@ -217,13 +115,10 @@ export default {
217
115
  },
218
116
  methods: {
219
117
  getData() {
220
- if (this.copyId) {
221
- return;
222
- }
223
118
  if (this.dataId && !isNaN(this.dataId)) {
224
119
  this.isEdit = true;
225
120
  this.$commonHttp({
226
- url: USER_PREFIX + `/request_async_setting/get`,
121
+ url: this.current_prefix + `/push_data/get`,
227
122
  method: `post`,
228
123
  data: {
229
124
  id: this.dataId
@@ -231,47 +126,10 @@ export default {
231
126
  isLoading: true,
232
127
  modalStrictly: true,
233
128
  success: res => {
234
- this.requestAsyncSetting = res.objx || {};
235
- this.showCodeEditor = true;
129
+ this.pushData = res.objx || {};
236
130
  }
237
131
  });
238
- } else {
239
- this.showCodeEditor = true;
240
132
  }
241
- },
242
- saveData() {
243
- this.$refs.editForm.$baseValidate(valid => {
244
- if (valid) {
245
- this.$baseConfirm(this.$t1('您确定要保存吗?')).then(() => {
246
- var url = USER_PREFIX + (this.isEdit ? `/request_async_setting/update` : `/request_async_setting/save`);
247
- this.$http({
248
- url: url,
249
- method: `post`,
250
- data: this.requestAsyncSetting,
251
- isLoading: true,
252
- success: res => {
253
- this.$message({
254
- message: res.content,
255
- type: 'success',
256
- duration: 500,
257
- onClose: t => {
258
- if (this.isEdit) {
259
- this.$baseReload();
260
- } else {
261
- this.$baseReload({
262
- updateParam: {
263
- _dataId: res.objx,
264
- copyId: null
265
- }
266
- });
267
- }
268
- }
269
- });
270
- }
271
- });
272
- });
273
- }
274
- });
275
133
  }
276
134
  }
277
135
  };