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

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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "cloud-web-corejs",
3
3
  "private": false,
4
- "version": "1.0.54-dev.262",
4
+ "version": "1.0.54-dev.264",
5
5
  "scripts": {
6
6
  "dev": "vue-cli-service serve",
7
7
  "lint": "eslint --ext .js,.vue src",
@@ -1,6 +1,9 @@
1
1
  <template>
2
2
  <div class="inner-dialog">
3
- <!-- <span v-if="isMinimize"><a href="javascript:void(0)" @click="handleMinimize">导出进度:{{percentageNum+"%"}}</a></span>-->
3
+ <span v-if="isMinimize" class="export-box-small">
4
+ <a href="javascript:void(0)" @click="handleMinimize"><p>列表导出<i class="el-icon-zoom-in"></i></p>
5
+ <el-progress :percentage="percentageNum" :show-text="false" :stroke-width="3" status="success"></el-progress></a>
6
+ </span>
4
7
  <exportFieldDialog :visiable.sync="showExportFieldDialog" v-if="showExportFieldDialog" :param="param" @close="closeExportFieldDialog"
5
8
  @confirm="confirmExportFieldDialog"></exportFieldDialog>
6
9
  <el-dialog
@@ -15,11 +18,11 @@
15
18
  :modal-append-to-body="false"
16
19
  @close="dialogClose2"
17
20
  >
18
- <!-- <el-button class="isFullIcon" @click="handleMinimize">
21
+ <el-button class="isFullIcon" @click="handleMinimize">
19
22
  <el-tooltip effect="dark" content="缩小" placement="top">
20
23
  <i class="el-icon-minus"></i>
21
24
  </el-tooltip>
22
- </el-button>-->
25
+ </el-button>
23
26
  <div class="export-box">
24
27
  <div class="tips">{{ $t2('导出中,请勿关闭当前窗口', 'components.excelExport.tip') }}</div>
25
28
  <el-progress :text-inside="true" :stroke-width="26" :percentage="percentageNum"
@@ -81,4 +84,29 @@ export default {
81
84
  padding: 0;
82
85
  }
83
86
  }
87
+ .export-box-small{
88
+ position: absolute;
89
+ left: 0;
90
+ top: 0;
91
+ width: 93px;
92
+ line-height: 23px;
93
+ height:26px;
94
+ font-size: 12px;
95
+ color: #fff;
96
+ white-space: nowrap;
97
+ border: solid 1px rgba(42, 100, 148, 0.7215686275);
98
+ padding: 0 6px;
99
+ border-left: none;
100
+ border-radius: 2px;
101
+ background: #2a6494;
102
+ text-align: center;
103
+ .el-progress{position: absolute;bottom:-2.5px;left:0;right:0;}
104
+ p{margin:0;}
105
+ i{
106
+ vertical-align: middle;
107
+ margin-left: 8px;
108
+ font-size: 14px;
109
+ color: #FFF;
110
+ }
111
+ }
84
112
  </style>
@@ -0,0 +1,279 @@
1
+ <template>
2
+ <div class="detail-wrap">
3
+ <el-form ref="editForm" :model="requestAsyncSetting">
4
+ <div class="d-header clearfix">
5
+ <div class="fl">
6
+ <i class="el-icon-info"/>
7
+ {{ dataId ? $t1('查看异步推送数据') : $t1('新增异步推送数据') }}
8
+ </div>
9
+ <div class="fr">
10
+ <el-button type="primary" plain class="button-sty" @click="$baseReload()" icon="el-icon-refresh-right">
11
+ {{ $t1('重置') }}
12
+ </el-button>
13
+ <el-button type="primary" class="button-sty" icon="el-icon-check" @click="saveData">{{ $t1('保存') }}
14
+ </el-button>
15
+ </div>
16
+ </div>
17
+ <baseTabs>
18
+ <baseTabPane :label="$t1('基本信息')">
19
+ <template #default>
20
+ <table class="table-detail">
21
+ <tbody>
22
+ <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>
32
+ </tr>
33
+ <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>
43
+ </tr>
44
+ <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>
55
+ </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
+ <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
+
91
+ </tr>
92
+ <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>
103
+ </tr>
104
+
105
+ <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>
155
+ </tr>
156
+ <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>
167
+ </tr>
168
+ <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>
178
+ </tr>
179
+ </tbody>
180
+ </table>
181
+ </template>
182
+ </baseTabPane>
183
+ </baseTabs>
184
+ </el-form>
185
+ </div>
186
+ </template>
187
+
188
+ <script>
189
+ export default {
190
+ name: 'request_async_settingEdit',
191
+ props: {
192
+ _dataId: [String, Number],
193
+ copyId: [String, Number]
194
+ },
195
+ components: {},
196
+ data() {
197
+ return {
198
+ isEdit: false,
199
+ tabIndex: 'first',
200
+ dataId: '',
201
+ requestAsyncSetting: {
202
+ enabled: true,
203
+ connectTimeout: 10000,
204
+ readTimeout: 60000,
205
+ script: null,
206
+ postScript: null,
207
+ exeCompanyCode: null
208
+ },
209
+ showCodeEditor: false
210
+ };
211
+ },
212
+ created() {
213
+ if (this._dataId && !isNaN(this._dataId)) this.dataId = this._dataId;
214
+ },
215
+ mounted() {
216
+ this.getData();
217
+ },
218
+ methods: {
219
+ getData() {
220
+ if (this.copyId) {
221
+ return;
222
+ }
223
+ if (this.dataId && !isNaN(this.dataId)) {
224
+ this.isEdit = true;
225
+ this.$commonHttp({
226
+ url: USER_PREFIX + `/request_async_setting/get`,
227
+ method: `post`,
228
+ data: {
229
+ id: this.dataId
230
+ },
231
+ isLoading: true,
232
+ modalStrictly: true,
233
+ success: res => {
234
+ this.requestAsyncSetting = res.objx || {};
235
+ this.showCodeEditor = true;
236
+ }
237
+ });
238
+ } else {
239
+ this.showCodeEditor = true;
240
+ }
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
+ }
276
+ }
277
+ };
278
+
279
+ </script>
@@ -0,0 +1,247 @@
1
+ <template>
2
+ <vxe-grid ref="table-m1" v-bind="vxeOption" @resizable-change="$vxeTableUtil.onColumnWitchChange"
3
+ @custom="$vxeTableUtil.customHandle">
4
+ <template #form>
5
+ <div class="clearfix screen-btns">
6
+ <div class="fl">
7
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openEditDialog">
8
+ {{ $t1('新增') }}
9
+ </vxe-button>
10
+ </div>
11
+ <div class="fr">
12
+ <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
13
+ plain>{{ $t1('重置') }}
14
+ </vxe-button>
15
+ <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
16
+ {{ $t1('搜索') }}
17
+ </vxe-button>
18
+ </div>
19
+ </div>
20
+ <vxe-form ref="form" class="screen-box" title-width="92px" title-align="right" :data="formData"
21
+ @submit="searchEvent" @reset="searchEvent">
22
+ <vxe-form-item title="推送编码:" field="reqCode">
23
+ <template v-slot>
24
+ <el-input v-model="formData.reqCode" size="small" clearable/>
25
+ </template>
26
+ </vxe-form-item>
27
+ <vxe-form-item title="推送名称:" field="reqName">
28
+ <template v-slot>
29
+ <el-input v-model="formData.reqName" size="small" clearable/>
30
+ </template>
31
+ </vxe-form-item>
32
+ <vxe-form-item title="是否启用:" field="enabled">
33
+ <template v-slot>
34
+ <el-select v-model="formData.enabled" clearable>
35
+ <el-option :value="true" label="启用"></el-option>
36
+ <el-option :value="false" label="禁用"></el-option>
37
+ </el-select>
38
+ </template>
39
+ </vxe-form-item>
40
+ </vxe-form>
41
+ </template>
42
+ </vxe-grid>
43
+ </template>
44
+
45
+ <script>
46
+ import editView from './edit.vue';
47
+
48
+ export default {
49
+ name: 'request_async_setting:list',
50
+ components: {editView},
51
+ data() {
52
+ return {
53
+ activeName: 'second',
54
+ dataId: 0,
55
+ copyId: 0,
56
+ showEdit: false,
57
+ showAdvancedSearch: false,
58
+ vxeOption: {},
59
+ formData: {},
60
+ advancedFormData: {},
61
+ };
62
+ },
63
+ mounted() {
64
+ this.initTableList();
65
+ },
66
+ methods: {
67
+ searchEvent() {
68
+ this.$refs['table-m1'].commitProxy('reload');
69
+ },
70
+ resetEvent() {
71
+ this.formData = {};
72
+ this.advancedFormData = {};
73
+ this.$refs['table-m1'].commitProxy('reload');
74
+ },
75
+ openEditDialog(id) {
76
+ this.copyId = 0;
77
+ this.dataId = !id || typeof id == 'object' ? 0 : id;
78
+ this.activeName = 'first';
79
+ this.$openEditView('showEdit');
80
+ },
81
+ initTableList() {
82
+ let that = this;
83
+ let pushTypeMap = {0: '异步推送', 1: '同步调用'};
84
+ let tableOption = {
85
+ vue: this,
86
+ tableRef: 'table-m1',
87
+ tableName: 'bd_request_async_setting_list-m1',
88
+ path: USER_PREFIX + '/request_async_setting/listPage',
89
+ param: () => {
90
+ return {
91
+ ...this.formData,
92
+ ...this.advancedFormData
93
+ }
94
+ },
95
+ columns: [
96
+ {type: 'checkbox', width: 48, resizable: false, fixed: 'left'},
97
+ {
98
+ title: '推送名称',
99
+ field: 'reqName',
100
+ width: 150,
101
+ fixed: 'left'
102
+ },
103
+ {
104
+ title: '推送编码',
105
+ field: 'reqCode',
106
+ width: 150,
107
+ fixed: 'left'
108
+ },
109
+ {
110
+ title: '请求Url',
111
+ field: 'url',
112
+ width: 150
113
+ },
114
+ {
115
+ title: '请求头',
116
+ field: 'header',
117
+ width: 150
118
+ },
119
+ /*{
120
+ title: '连接超时',
121
+ field: 'connectTimeout',
122
+ width: 150
123
+ },
124
+ {
125
+ title: '读取超时',
126
+ field: 'readTimeout',
127
+ width: 150
128
+ },*/
129
+ {
130
+ field: 'enabled',
131
+ title: this.$t1('是否启用'),
132
+ width: 150,
133
+ slots: {
134
+ default: ({row}) => {
135
+ if (row.enabled) {
136
+ return [
137
+ <div class="txt-status">
138
+ <span>启用</span>
139
+ </div>
140
+ ];
141
+ } else {
142
+ return [
143
+ <div class="txt-status disable">
144
+ <span>禁用</span>
145
+ </div>
146
+ ];
147
+ }
148
+ }
149
+ }
150
+ },
151
+ {
152
+ title: '调度任务编码',
153
+ field: 'taskCode',
154
+ width: 150
155
+ },
156
+ {
157
+ title: '备注',
158
+ field: 'remark',
159
+ width: 150
160
+ },
161
+ {
162
+ title: '执行组织编码',
163
+ field: 'exeCompanyCode',
164
+ width: 150
165
+ },
166
+ {
167
+ field: 'enabled',
168
+ title: this.$t1('是否启用'),
169
+ width: 150,
170
+ slots: {
171
+ default: ({row}) => {
172
+ if (row.enabled) {
173
+ return [
174
+ <div class="txt-status">
175
+ <span>启用</span>
176
+ </div>
177
+ ];
178
+ } else {
179
+ return [
180
+ <div class="txt-status disable">
181
+ <span>禁用</span>
182
+ </div>
183
+ ];
184
+ }
185
+ }
186
+ }
187
+ },
188
+ {
189
+ field: 'createBy',
190
+ title: this.$t1('创建人'),
191
+ width: 150
192
+ },
193
+ {
194
+ field: 'createDate',
195
+ title: this.$t1('创建时间'),
196
+ width: 150
197
+ },
198
+ {
199
+ field: 'modifyBy',
200
+ title: this.$t1('更新人'),
201
+ width: 150
202
+ },
203
+ {
204
+ field: 'modifyDate',
205
+ title: this.$t1('更新时间'),
206
+ width: 150
207
+ },
208
+ {
209
+ width: 47,
210
+ fixed: 'right',
211
+ title: '',
212
+ sortable: false,
213
+ slots: {
214
+ default: ({row}) => {
215
+ return [
216
+ <div>
217
+ <a
218
+ href="javascript:void(0);"
219
+ class="a-link"
220
+ onclick={() => {
221
+ this.openEditDialog(row.id);
222
+ }}
223
+ >
224
+ <el-tooltip enterable={false} effect="dark" content={this.$t1('查看')} placement="top"
225
+ popper-class="tooltip-skin">
226
+ <i class="el-icon-edit"/>
227
+ </el-tooltip>
228
+ </a>
229
+ </div>
230
+ ];
231
+ }
232
+ }
233
+ }
234
+ ],
235
+ config:{
236
+ proxyConfig: {
237
+ autoLoad: false
238
+ }
239
+ }
240
+ };
241
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
242
+ this.vxeOption = opts;
243
+ });
244
+ }
245
+ }
246
+ };
247
+ </script>
@@ -0,0 +1,279 @@
1
+ <template>
2
+ <div class="detail-wrap">
3
+ <el-form ref="editForm" :model="requestAsyncSetting">
4
+ <div class="d-header clearfix">
5
+ <div class="fl">
6
+ <i class="el-icon-info"/>
7
+ {{ dataId ? $t1('查看异步推送数据') : $t1('新增异步推送数据') }}
8
+ </div>
9
+ <div class="fr">
10
+ <el-button type="primary" plain class="button-sty" @click="$baseReload()" icon="el-icon-refresh-right">
11
+ {{ $t1('重置') }}
12
+ </el-button>
13
+ <el-button type="primary" class="button-sty" icon="el-icon-check" @click="saveData">{{ $t1('保存') }}
14
+ </el-button>
15
+ </div>
16
+ </div>
17
+ <baseTabs>
18
+ <baseTabPane :label="$t1('基本信息')">
19
+ <template #default>
20
+ <table class="table-detail">
21
+ <tbody>
22
+ <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>
32
+ </tr>
33
+ <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>
43
+ </tr>
44
+ <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>
55
+ </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
+ <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
+
91
+ </tr>
92
+ <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>
103
+ </tr>
104
+
105
+ <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>
155
+ </tr>
156
+ <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>
167
+ </tr>
168
+ <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>
178
+ </tr>
179
+ </tbody>
180
+ </table>
181
+ </template>
182
+ </baseTabPane>
183
+ </baseTabs>
184
+ </el-form>
185
+ </div>
186
+ </template>
187
+
188
+ <script>
189
+ export default {
190
+ name: 'request_async_settingEdit',
191
+ props: {
192
+ _dataId: [String, Number],
193
+ copyId: [String, Number]
194
+ },
195
+ components: {},
196
+ data() {
197
+ return {
198
+ isEdit: false,
199
+ tabIndex: 'first',
200
+ dataId: '',
201
+ requestAsyncSetting: {
202
+ enabled: true,
203
+ connectTimeout: 10000,
204
+ readTimeout: 60000,
205
+ script: null,
206
+ postScript: null,
207
+ exeCompanyCode: null
208
+ },
209
+ showCodeEditor: false
210
+ };
211
+ },
212
+ created() {
213
+ if (this._dataId && !isNaN(this._dataId)) this.dataId = this._dataId;
214
+ },
215
+ mounted() {
216
+ this.getData();
217
+ },
218
+ methods: {
219
+ getData() {
220
+ if (this.copyId) {
221
+ return;
222
+ }
223
+ if (this.dataId && !isNaN(this.dataId)) {
224
+ this.isEdit = true;
225
+ this.$commonHttp({
226
+ url: USER_PREFIX + `/request_async_setting/get`,
227
+ method: `post`,
228
+ data: {
229
+ id: this.dataId
230
+ },
231
+ isLoading: true,
232
+ modalStrictly: true,
233
+ success: res => {
234
+ this.requestAsyncSetting = res.objx || {};
235
+ this.showCodeEditor = true;
236
+ }
237
+ });
238
+ } else {
239
+ this.showCodeEditor = true;
240
+ }
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
+ }
276
+ }
277
+ };
278
+
279
+ </script>
@@ -0,0 +1,247 @@
1
+ <template>
2
+ <vxe-grid ref="table-m1" v-bind="vxeOption" @resizable-change="$vxeTableUtil.onColumnWitchChange"
3
+ @custom="$vxeTableUtil.customHandle">
4
+ <template #form>
5
+ <div class="clearfix screen-btns">
6
+ <div class="fl">
7
+ <vxe-button status="primary" class="button-sty" icon="el-icon-plus" @click="openEditDialog">
8
+ {{ $t1('新增') }}
9
+ </vxe-button>
10
+ </div>
11
+ <div class="fr">
12
+ <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
13
+ plain>{{ $t1('重置') }}
14
+ </vxe-button>
15
+ <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
16
+ {{ $t1('搜索') }}
17
+ </vxe-button>
18
+ </div>
19
+ </div>
20
+ <vxe-form ref="form" class="screen-box" title-width="92px" title-align="right" :data="formData"
21
+ @submit="searchEvent" @reset="searchEvent">
22
+ <vxe-form-item title="推送编码:" field="reqCode">
23
+ <template v-slot>
24
+ <el-input v-model="formData.reqCode" size="small" clearable/>
25
+ </template>
26
+ </vxe-form-item>
27
+ <vxe-form-item title="推送名称:" field="reqName">
28
+ <template v-slot>
29
+ <el-input v-model="formData.reqName" size="small" clearable/>
30
+ </template>
31
+ </vxe-form-item>
32
+ <vxe-form-item title="是否启用:" field="enabled">
33
+ <template v-slot>
34
+ <el-select v-model="formData.enabled" clearable>
35
+ <el-option :value="true" label="启用"></el-option>
36
+ <el-option :value="false" label="禁用"></el-option>
37
+ </el-select>
38
+ </template>
39
+ </vxe-form-item>
40
+ </vxe-form>
41
+ </template>
42
+ </vxe-grid>
43
+ </template>
44
+
45
+ <script>
46
+ import editView from './edit.vue';
47
+
48
+ export default {
49
+ name: 'request_async_setting:list',
50
+ components: {editView},
51
+ data() {
52
+ return {
53
+ activeName: 'second',
54
+ dataId: 0,
55
+ copyId: 0,
56
+ showEdit: false,
57
+ showAdvancedSearch: false,
58
+ vxeOption: {},
59
+ formData: {},
60
+ advancedFormData: {},
61
+ };
62
+ },
63
+ mounted() {
64
+ this.initTableList();
65
+ },
66
+ methods: {
67
+ searchEvent() {
68
+ this.$refs['table-m1'].commitProxy('reload');
69
+ },
70
+ resetEvent() {
71
+ this.formData = {};
72
+ this.advancedFormData = {};
73
+ this.$refs['table-m1'].commitProxy('reload');
74
+ },
75
+ openEditDialog(id) {
76
+ this.copyId = 0;
77
+ this.dataId = !id || typeof id == 'object' ? 0 : id;
78
+ this.activeName = 'first';
79
+ this.$openEditView('showEdit');
80
+ },
81
+ initTableList() {
82
+ let that = this;
83
+ let pushTypeMap = {0: '异步推送', 1: '同步调用'};
84
+ let tableOption = {
85
+ vue: this,
86
+ tableRef: 'table-m1',
87
+ tableName: 'bd_request_async_setting_list-m1',
88
+ path: USER_PREFIX + '/request_async_setting/listPage',
89
+ param: () => {
90
+ return {
91
+ ...this.formData,
92
+ ...this.advancedFormData
93
+ }
94
+ },
95
+ columns: [
96
+ {type: 'checkbox', width: 48, resizable: false, fixed: 'left'},
97
+ {
98
+ title: '推送名称',
99
+ field: 'reqName',
100
+ width: 150,
101
+ fixed: 'left'
102
+ },
103
+ {
104
+ title: '推送编码',
105
+ field: 'reqCode',
106
+ width: 150,
107
+ fixed: 'left'
108
+ },
109
+ {
110
+ title: '请求Url',
111
+ field: 'url',
112
+ width: 150
113
+ },
114
+ {
115
+ title: '请求头',
116
+ field: 'header',
117
+ width: 150
118
+ },
119
+ /*{
120
+ title: '连接超时',
121
+ field: 'connectTimeout',
122
+ width: 150
123
+ },
124
+ {
125
+ title: '读取超时',
126
+ field: 'readTimeout',
127
+ width: 150
128
+ },*/
129
+ {
130
+ field: 'enabled',
131
+ title: this.$t1('是否启用'),
132
+ width: 150,
133
+ slots: {
134
+ default: ({row}) => {
135
+ if (row.enabled) {
136
+ return [
137
+ <div class="txt-status">
138
+ <span>启用</span>
139
+ </div>
140
+ ];
141
+ } else {
142
+ return [
143
+ <div class="txt-status disable">
144
+ <span>禁用</span>
145
+ </div>
146
+ ];
147
+ }
148
+ }
149
+ }
150
+ },
151
+ {
152
+ title: '调度任务编码',
153
+ field: 'taskCode',
154
+ width: 150
155
+ },
156
+ {
157
+ title: '备注',
158
+ field: 'remark',
159
+ width: 150
160
+ },
161
+ {
162
+ title: '执行组织编码',
163
+ field: 'exeCompanyCode',
164
+ width: 150
165
+ },
166
+ {
167
+ field: 'enabled',
168
+ title: this.$t1('是否启用'),
169
+ width: 150,
170
+ slots: {
171
+ default: ({row}) => {
172
+ if (row.enabled) {
173
+ return [
174
+ <div class="txt-status">
175
+ <span>启用</span>
176
+ </div>
177
+ ];
178
+ } else {
179
+ return [
180
+ <div class="txt-status disable">
181
+ <span>禁用</span>
182
+ </div>
183
+ ];
184
+ }
185
+ }
186
+ }
187
+ },
188
+ {
189
+ field: 'createBy',
190
+ title: this.$t1('创建人'),
191
+ width: 150
192
+ },
193
+ {
194
+ field: 'createDate',
195
+ title: this.$t1('创建时间'),
196
+ width: 150
197
+ },
198
+ {
199
+ field: 'modifyBy',
200
+ title: this.$t1('更新人'),
201
+ width: 150
202
+ },
203
+ {
204
+ field: 'modifyDate',
205
+ title: this.$t1('更新时间'),
206
+ width: 150
207
+ },
208
+ {
209
+ width: 47,
210
+ fixed: 'right',
211
+ title: '',
212
+ sortable: false,
213
+ slots: {
214
+ default: ({row}) => {
215
+ return [
216
+ <div>
217
+ <a
218
+ href="javascript:void(0);"
219
+ class="a-link"
220
+ onclick={() => {
221
+ this.openEditDialog(row.id);
222
+ }}
223
+ >
224
+ <el-tooltip enterable={false} effect="dark" content={this.$t1('查看')} placement="top"
225
+ popper-class="tooltip-skin">
226
+ <i class="el-icon-edit"/>
227
+ </el-tooltip>
228
+ </a>
229
+ </div>
230
+ ];
231
+ }
232
+ }
233
+ }
234
+ ],
235
+ config:{
236
+ proxyConfig: {
237
+ autoLoad: false
238
+ }
239
+ }
240
+ };
241
+ this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
242
+ this.vxeOption = opts;
243
+ });
244
+ }
245
+ }
246
+ };
247
+ </script>
@@ -50,16 +50,29 @@
50
50
  </vxe-grid>
51
51
  </div>
52
52
  </el-tab-pane>
53
+ <el-tab-pane :label="$t1('在途推送数据')" name="third">
54
+ <div class="grid-height">
55
+ <push_data_list></push_data_list>
56
+ </div>
57
+ </el-tab-pane>
58
+ <el-tab-pane :label="$t1('历史推送数据')" name="fourth">
59
+ <div class="grid-height">
60
+ <push_data_h_list></push_data_h_list>
61
+ </div>
62
+ </el-tab-pane>
53
63
  </el-tabs>
54
64
  </div>
55
65
  </template>
56
66
 
57
67
  <script>
58
68
  import editView from './edit.vue';
69
+ import push_data_list from "../push_data/list.vue";
70
+ import push_data_h_list from "../push_data_h/list.vue";
71
+
59
72
 
60
73
  export default {
61
74
  name: 'request_async_setting:list',
62
- components: {editView},
75
+ components: {editView,push_data_list,push_data_h_list},
63
76
  data() {
64
77
  return {
65
78
  activeName: 'second',
@@ -24,30 +24,35 @@
24
24
  @cell-dblclick="checkWithSubmit"
25
25
  >
26
26
  <template #form>
27
- <div class="clearfix screen-btns">
28
- <div class="fr">
27
+ <tableForm :formData.sync="formData" @searchEvent="searchEvent" @resetEvent="resetEvent">
28
+ <template #buttonRight>
29
29
  <vxe-button icon="el-icon-brush" class="button-sty" @click="resetEvent" type="text" status="primary"
30
30
  plain>{{ $t1('重置') }}
31
31
  </vxe-button>
32
32
  <vxe-button status="warning" icon="el-icon-search" class="button-sty" @click="searchEvent">
33
33
  {{ $t1('搜索') }}
34
34
  </vxe-button>
35
- </div>
36
- </div>
37
- <vxe-form class="screen-box" title-width="92px" title-align="right" :data="formData" @submit="searchEvent"
38
- @reset="resetEvent">
39
- <vxe-form-item :title="$t1('登录名')+':'" field="loginAccount">
40
- <template v-slot>
41
- <el-input v-model="formData.loginAccount" size="small" clearable/>
42
- </template>
43
- </vxe-form-item>
44
- <vxe-form-item :title="$t1('姓名')+':'" field="nickName">
45
- <template v-slot>
46
- <el-input v-model="formData.nickName" size="small" clearable/>
47
- </template>
48
- </vxe-form-item>
49
- <vxe-button type="submit" @click="searchEvent" v-show="false"></vxe-button>
50
- </vxe-form>
35
+ </template>
36
+ <template #saleOrgName>
37
+ <vxe-form-item :title="$t1('机构')+':'">
38
+ <template v-slot>
39
+ <el-input
40
+ class="search-input"
41
+ v-model="formData.saleOrgName"
42
+ clearable
43
+ @clear="
44
+ formData.saleOrgId = null;
45
+ formData.saleOrgName = null;
46
+ "
47
+ v-el-readonly
48
+ >
49
+ <i slot="suffix" class="el-input__icon el-icon-search"
50
+ @click="showSaleOrgDialog=true"></i>
51
+ </el-input>
52
+ </template>
53
+ </vxe-form-item>
54
+ </template>
55
+ </tableForm>
51
56
  </template>
52
57
  </vxe-grid>
53
58
  </div>
@@ -62,7 +67,7 @@
62
67
  class="allDel icon-quanbushanchu" @click="clearChecked()"></a></el-tooltip>
63
68
  <div class="list">
64
69
  <div class="item" v-for="(checkRow, index) in checkRows" :key="index">
65
- <p>{{ getCheckLabel(checkRow,'nickName') }}</p>
70
+ <p>{{ getCheckLabel(checkRow, 'nickName') }}</p>
66
71
  <a class="el-icon-close" @click="clearTable1Select(index)"></a>
67
72
  </div>
68
73
  </div>
@@ -78,14 +83,19 @@
78
83
  {{ $t1('确 定') }}
79
84
  </el-button>
80
85
  </span>
86
+ <saleOrgDialog v-if="showSaleOrgDialog" :visiable.sync="showSaleOrgDialog" :multi="false"
87
+ @confirm="confirmSaleOrgDialog"></saleOrgDialog>
81
88
  </el-dialog>
82
89
  </template>
83
90
 
84
91
  <script>
85
92
  import {selectDialogMixins} from '@base/mixins/selectDialog/index.js';
93
+ import tableForm from "@base/components/table/tableForm.vue";
94
+ import saleOrgDialog from "@base/views/user/sale_org/dialog.vue";
86
95
 
87
96
  export default {
88
97
  name: 'userDialog',
98
+ components: {tableForm, saleOrgDialog},
89
99
  props: ['visiable', 'multi', 'rows', 'param'],
90
100
  mixins: [selectDialogMixins],
91
101
  created() {
@@ -110,7 +120,8 @@ export default {
110
120
  saleOrgName: ''
111
121
  },
112
122
  selectMulti: true,
113
- vxeOption: {}
123
+ vxeOption: {},
124
+ showSaleOrgDialog: false
114
125
  };
115
126
  },
116
127
  methods: {
@@ -129,6 +140,11 @@ export default {
129
140
  ...this.param
130
141
  }
131
142
  },
143
+ searchColumns: [
144
+ {title: this.$t1('登录名'), field: "loginAccount", type: "input", common: true},
145
+ {title: this.$t1('姓名'), field: "nickName", type: "input", common: true},
146
+ {title: this.$t1('机构'), field: "saleOrgName", type: "input", common: true, slot: "saleOrgName"},
147
+ ],
132
148
  config: {
133
149
  checkboxConfig: {
134
150
  checkStrictly: true,
@@ -147,9 +163,9 @@ export default {
147
163
  slots: {
148
164
  default: ({row}) => {
149
165
  if (row.enabled) {
150
- return [<div class="txt-status">{ this.$t1('启用') }</div>];
166
+ return [<div class="txt-status">{this.$t1('启用')}</div>];
151
167
  } else {
152
- return [<div class="txt-status s-3">{ this.$t1('禁用') }</div>];
168
+ return [<div class="txt-status s-3">{this.$t1('禁用')}</div>];
153
169
  }
154
170
  }
155
171
  }
@@ -189,6 +205,13 @@ export default {
189
205
  this.$vxeTableUtil.initVxeTable(tableOption).then(opts => {
190
206
  that.vxeOption = opts;
191
207
  });
208
+ },
209
+ confirmSaleOrgDialog(rows) {
210
+ if (rows.length) {
211
+ let row = rows[0];
212
+ this.$set(this.formData, 'saleOrgId', row.id);
213
+ this.$set(this.formData, 'saleOrgName', row.name);
214
+ }
192
215
  }
193
216
  }
194
217
  };