cloud-web-corejs 1.0.54-dev.9 → 1.0.55
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 +1 -1
- package/src/components/excelExport/index.js +5 -5
- package/src/components/excelExport/index.vue +0 -1
- package/src/components/excelExport/mixins.js +1 -4
- package/src/components/excelImport/index.js +13 -13
- package/src/components/excelImport/index.vue +5 -7
- package/src/components/excelImport/mixins.js +1 -1
- package/src/components/fileLibrary/fileObjAuthDialog.vue +103 -125
- package/src/components/fileLibrary/fileObjAuthEditDialog.vue +1 -6
- package/src/components/fileLibrary/index.vue +2 -2
- package/src/components/fileLibrary/mixins/fileObjAuthDialogMixin.js +6 -21
- package/src/components/fileLibrary/mixins/indexMixins.js +0 -11
- package/src/components/jsonImport/index.js +17 -17
- package/src/components/table/index.js +1 -1
- package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +1 -0
- package/src/components/xform/form-designer/form-widget/dialog/formDrawer.vue +1 -0
- package/src/components/xform/form-designer/form-widget/dialog/formFieldDialog.vue +2 -2
- package/src/components/xform/form-designer/form-widget/dialog/preformDialog.vue +2 -2
- package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +5 -4
- package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +2 -36
- package/src/components/xform/form-designer/setting-panel/propertyRegister.js +0 -2
- package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +33 -277
- package/src/components/xform/form-render/indexMixin.js +1 -24
- package/src/layout/components/Sidebar/default.vue +1222 -1222
- package/src/layout/components/notify_message/unreadDialog.vue +5 -11
- package/src/utils/vab.js +1 -1
- package/src/views/bd/setting/bd_attach_setting/edit.vue +1 -1
- package/src/views/bd/setting/bd_attach_setting/mixins/edit.js +1 -1
- package/src/views/bd/setting/form_template/edit.vue +0 -4
- package/src/views/bd/setting/form_template/mixins/edit.js +1 -1
- package/src/views/bd/setting/form_template/mixins/list.js +1 -1
- package/src/views/bd/setting/menu_kind/mixins/authDialog.js +7 -7
- package/src/views/user/access_log/list.vue +349 -349
- package/src/views/user/company_info/edit.vue +1 -9
- package/src/views/user/home/index.vue +2 -4
- package/src/views/user/system_notice/infoDialog.vue +1 -25
- package/src/views/user/user/list.vue +563 -563
- package/src/views/user/wf/wf_obj_config/edit.vue +1 -5
- package/src/views/user/wf/wf_obj_config/list.vue +0 -15
- package/src/components/excelExport/exportFieldDialog.vue +0 -201
- package/src/components/fileLibrary/fileObjNotifyEdit.vue +0 -170
- package/src/components/xform/form-designer/setting-panel/property-editor/showRuleFlag-editor.vue +0 -223
- package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +0 -62
- package/src/components/xform/form-designer/setting-panel/wfObjConfigDialog.vue +0 -189
@@ -88,10 +88,6 @@
|
|
88
88
|
clearable></el-input>
|
89
89
|
</td>
|
90
90
|
</tr>
|
91
|
-
<tr>
|
92
|
-
<th>{{ $t1('是否表单') }}</th>
|
93
|
-
<td>{{ wfObjConfig.forms ? $t1('是') : $t1('否') }}</td>
|
94
|
-
</tr>
|
95
91
|
<tr>
|
96
92
|
<th>{{ $t1('创建人') }}</th>
|
97
93
|
<td>{{ wfObjConfig.createBy }}</td>
|
@@ -126,7 +122,7 @@ export default {
|
|
126
122
|
tabIndex: 0,
|
127
123
|
isEdit: false,
|
128
124
|
dataId: '',
|
129
|
-
wfObjConfig: {serviceId: null
|
125
|
+
wfObjConfig: {serviceId: null},
|
130
126
|
showCompanyDialog: false,
|
131
127
|
m1Option: {},
|
132
128
|
serviceIds: []
|
@@ -284,21 +284,6 @@ export default {
|
|
284
284
|
title: this.$t1('备注'),
|
285
285
|
width: 150
|
286
286
|
},
|
287
|
-
|
288
|
-
{
|
289
|
-
field: 'forms',
|
290
|
-
title: this.$t1('是否表单'),
|
291
|
-
width: 150,
|
292
|
-
slots: {
|
293
|
-
default: ({row}) => {
|
294
|
-
if (row.forms) {
|
295
|
-
return [<div class="txt-status">{this.$t1('是')}</div>];
|
296
|
-
} else {
|
297
|
-
return [<div class="txt-status s-3">{this.$t1('否')}</div>];
|
298
|
-
}
|
299
|
-
}
|
300
|
-
}
|
301
|
-
},
|
302
287
|
{
|
303
288
|
field: 'createDate',
|
304
289
|
title: this.$t1('创建时间'),
|
@@ -1,201 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<el-dialog
|
3
|
-
title="导出数据"
|
4
|
-
width="355px"
|
5
|
-
custom-class="dialog-style list-dialog"
|
6
|
-
:visible.sync="showDialog"
|
7
|
-
:append-to-body="true"
|
8
|
-
:modal-append-to-body="true"
|
9
|
-
:close-on-click-modal="false"
|
10
|
-
v-el-drag-dialog
|
11
|
-
v-el-dialog-center
|
12
|
-
@close="dialogClose"
|
13
|
-
>
|
14
|
-
<div class="cont">
|
15
|
-
<div class="tit" style="margin-bottom: 5px;"><b>{{ $t1('导出字段') }}</b></div>
|
16
|
-
<el-tree
|
17
|
-
:props="defaultProps"
|
18
|
-
:data="data"
|
19
|
-
show-checkbox
|
20
|
-
node-key="id"
|
21
|
-
ref="tree"
|
22
|
-
default-expand-all
|
23
|
-
check-on-click-node
|
24
|
-
:expand-on-click-node="false"
|
25
|
-
icon-class="el-icon-arrow-right"
|
26
|
-
:default-checked-keys="defaultCheckedKeys"
|
27
|
-
></el-tree>
|
28
|
-
</div>
|
29
|
-
<span slot="footer" class="dialog-footer">
|
30
|
-
<el-button type="primary" plain class="button-sty" @click="dialogClose">
|
31
|
-
<i class="el-icon-close el-icon"></i>
|
32
|
-
{{ $t1('取 消') }}
|
33
|
-
</el-button>
|
34
|
-
<el-button type="primary" @click="dialogConfirm" class="button-sty">
|
35
|
-
<i class="el-icon-check el-icon"></i>
|
36
|
-
{{ $t1('确 定') }}
|
37
|
-
</el-button>
|
38
|
-
</span>
|
39
|
-
</el-dialog>
|
40
|
-
</template>
|
41
|
-
<script>
|
42
|
-
export default {
|
43
|
-
name: "exportFieldDialog",
|
44
|
-
props: ['param'],
|
45
|
-
data() {
|
46
|
-
return {
|
47
|
-
showDialog: true,
|
48
|
-
data: [],
|
49
|
-
defaultProps: {
|
50
|
-
label: 'title', //这里是树结构中需显示的数据(即接口返回的需展示在页面上的参数)
|
51
|
-
children: 'children'
|
52
|
-
},
|
53
|
-
defaultCheckedKeys: [],
|
54
|
-
columns: [],
|
55
|
-
allFields: []
|
56
|
-
}
|
57
|
-
},
|
58
|
-
created() {
|
59
|
-
this.init();
|
60
|
-
},
|
61
|
-
methods: {
|
62
|
-
init() {
|
63
|
-
let target = this.getGrid();
|
64
|
-
let {fullColumn, collectColumn: columns} = target.getTableColumn();
|
65
|
-
// let columns = target.getTableColumn().collectColumn;
|
66
|
-
let exportColumns = target.exportColumns || [];
|
67
|
-
let yesFields = [];
|
68
|
-
let noFields = []
|
69
|
-
let allFields = [];
|
70
|
-
exportColumns.forEach(item => {
|
71
|
-
if (item.field) {
|
72
|
-
if (item.export) {
|
73
|
-
yesFields.push(item.field)
|
74
|
-
} else {
|
75
|
-
noFields.push(item.field)
|
76
|
-
}
|
77
|
-
}
|
78
|
-
})
|
79
|
-
|
80
|
-
let defaultCheckedKeys = []
|
81
|
-
let cols = [];
|
82
|
-
fullColumn.forEach(column => {
|
83
|
-
if (column.field) {
|
84
|
-
if (yesFields.includes(column.field)) {
|
85
|
-
defaultCheckedKeys.push(column.id)
|
86
|
-
} else if (!noFields.includes(column.field) && column.visible) {
|
87
|
-
defaultCheckedKeys.push(column.id)
|
88
|
-
}
|
89
|
-
allFields.push(column.field);
|
90
|
-
}
|
91
|
-
})
|
92
|
-
columns.forEach(column => {
|
93
|
-
if (column.title) {
|
94
|
-
cols.push(column);
|
95
|
-
}
|
96
|
-
});
|
97
|
-
this.allFields = allFields;
|
98
|
-
this.defaultCheckedKeys = defaultCheckedKeys;
|
99
|
-
let data = [
|
100
|
-
{
|
101
|
-
label: this.$t1('全部字段'),
|
102
|
-
id: -1,
|
103
|
-
leaf: true,
|
104
|
-
children: this.$baseLodash.cloneDeep(cols)
|
105
|
-
}
|
106
|
-
]
|
107
|
-
this.data = this.$baseLodash.cloneDeep(cols);
|
108
|
-
},
|
109
|
-
addTableExportColumns() {
|
110
|
-
let $grid = this.getGrid();
|
111
|
-
let leafColumns = this.$refs.tree.getCheckedNodes(true)
|
112
|
-
let checkLeafIds = leafColumns.map(item => item.id)
|
113
|
-
let {fullColumn} = $grid.getTableColumn();
|
114
|
-
let exportColumns = []
|
115
|
-
fullColumn.map(column => {
|
116
|
-
if (column.field && column.title) {
|
117
|
-
let item = {
|
118
|
-
field: column.field,
|
119
|
-
export: checkLeafIds.includes(column.id)
|
120
|
-
}
|
121
|
-
exportColumns.push(item)
|
122
|
-
}
|
123
|
-
})
|
124
|
-
let originOption = $grid.originOption
|
125
|
-
$grid.exportColumns = exportColumns;
|
126
|
-
this.$vxeTableUtil.addTableJson(originOption.vue, $grid, originOption.tableName)
|
127
|
-
},
|
128
|
-
dialogClose() {
|
129
|
-
this.showDialog = false;
|
130
|
-
this.$emit('update:visiable', false);
|
131
|
-
},
|
132
|
-
dialogConfirm() {
|
133
|
-
let target = this.getGrid();
|
134
|
-
let leafColumns = this.$refs.tree.getCheckedNodes(true)
|
135
|
-
let checkIds = this.$refs.tree.getCheckedNodes(false, true).map(item => item.id)
|
136
|
-
let collectColumn = target.getTableColumn().collectColumn;
|
137
|
-
let maxRowspan = 1;
|
138
|
-
leafColumns.forEach(item => {
|
139
|
-
maxRowspan = Math.max(maxRowspan, item.level);
|
140
|
-
})
|
141
|
-
|
142
|
-
let loopDo = (items, parent) => {
|
143
|
-
let datas = []
|
144
|
-
items.forEach(item => {
|
145
|
-
if (checkIds.includes(item.id)) {
|
146
|
-
let column = this.$baseLodash.cloneDeep(item);
|
147
|
-
if (item.children && item.children.length > 0) {
|
148
|
-
let children = this.$baseLodash.cloneDeep(loopDo(item.children));
|
149
|
-
column.children = children;
|
150
|
-
if (children.length) {
|
151
|
-
column.colSpan = children.length
|
152
|
-
} else {
|
153
|
-
column.colSpan = 1
|
154
|
-
}
|
155
|
-
} else if (!column.parentId) {
|
156
|
-
column.rowSpan = maxRowspan
|
157
|
-
}
|
158
|
-
;
|
159
|
-
datas.push(column);
|
160
|
-
}
|
161
|
-
})
|
162
|
-
return datas;
|
163
|
-
}
|
164
|
-
let columns = loopDo(collectColumn, null)
|
165
|
-
this.$emit('confirm', {columns, leafColumns});
|
166
|
-
this.addTableExportColumns();
|
167
|
-
this.dialogClose();
|
168
|
-
},
|
169
|
-
getExportTitleJson() {
|
170
|
-
let target = this.getGrid();
|
171
|
-
let columns = target.getColumns();
|
172
|
-
let cols = [];
|
173
|
-
columns.forEach(column => {
|
174
|
-
if (column.title && column.visible) {
|
175
|
-
cols.push(column);
|
176
|
-
}
|
177
|
-
});
|
178
|
-
return cols;
|
179
|
-
},
|
180
|
-
getGrid() {
|
181
|
-
let that = this.param.vue;
|
182
|
-
let tableRef = this.param.targetRef;
|
183
|
-
let $grid;
|
184
|
-
if (Array.isArray(that.$refs[tableRef])) {
|
185
|
-
$grid = that.$refs[tableRef][0];
|
186
|
-
} else {
|
187
|
-
$grid = that.$refs[tableRef];
|
188
|
-
}
|
189
|
-
return $grid;
|
190
|
-
},
|
191
|
-
revert() {
|
192
|
-
|
193
|
-
}
|
194
|
-
}
|
195
|
-
}
|
196
|
-
</script>
|
197
|
-
|
198
|
-
|
199
|
-
<style scoped>
|
200
|
-
|
201
|
-
</style>
|
@@ -1,170 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div class="detail-wrap">
|
3
|
-
<el-form ref="editForm" :model="fileObjNotify">
|
4
|
-
<div class="d-header clearfix">
|
5
|
-
<div class="fl">
|
6
|
-
<i class="el-icon-info"/>
|
7
|
-
{{ isEdit ? $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
|
-
<div class="d-cont">
|
18
|
-
<div class="d-item">
|
19
|
-
<div class="title first"><b>{{ $t1('基本信息') }}</b></div>
|
20
|
-
<table class="table-detail">
|
21
|
-
<tbody>
|
22
|
-
<tr class="noTr">
|
23
|
-
<th class="no"></th>
|
24
|
-
<td></td>
|
25
|
-
<th class="no"></th>
|
26
|
-
<td></td>
|
27
|
-
<th class="no"></th>
|
28
|
-
<td></td>
|
29
|
-
<th class="no"></th>
|
30
|
-
<td></td>
|
31
|
-
</tr>
|
32
|
-
<tr>
|
33
|
-
<th style="width: 215px;">
|
34
|
-
<em class="f-red">*</em>
|
35
|
-
{{ $t1('文件夹内文件操作是否通知') }}
|
36
|
-
</th>
|
37
|
-
<td colspan="7">
|
38
|
-
<el-form-item prop="toNotify" :rules="[{ required: true, trigger: 'blur' }]">
|
39
|
-
<el-radio-group v-model="fileObjNotify.toNotify">
|
40
|
-
<el-radio :label="0">{{ $t1('不通知') }}</el-radio>
|
41
|
-
<el-radio :label="1">{{ $t1('针对当前文件夹中的文件操作') }}</el-radio>
|
42
|
-
<el-radio :label="2">{{ $t1('针对当前文件夹与下级所有文件夹的文件操作') }}</el-radio>
|
43
|
-
</el-radio-group>
|
44
|
-
</el-form-item>
|
45
|
-
</td>
|
46
|
-
</tr>
|
47
|
-
<tr>
|
48
|
-
<th>
|
49
|
-
{{ $t1('新增文件-通知模板编码') }}
|
50
|
-
</th>
|
51
|
-
<td colspan="3">
|
52
|
-
<el-form-item prop="addNtCode" :rules="[{ required: false, trigger: 'blur' }]">
|
53
|
-
<el-input type="text" autocomplete="off" v-model="fileObjNotify.addNtCode" clearable/>
|
54
|
-
</el-form-item>
|
55
|
-
</td>
|
56
|
-
</tr>
|
57
|
-
<tr>
|
58
|
-
<th>
|
59
|
-
{{ $t1('删除文件-通知模板编码') }}
|
60
|
-
</th>
|
61
|
-
<td colspan="3">
|
62
|
-
<el-form-item prop="deleteNtCode" :rules="[{ required: false, trigger: 'blur' }]">
|
63
|
-
<el-input type="text" autocomplete="off" v-model="fileObjNotify.deleteNtCode" clearable/>
|
64
|
-
</el-form-item>
|
65
|
-
</td>
|
66
|
-
</tr>
|
67
|
-
<tr>
|
68
|
-
<th>
|
69
|
-
{{ $t1('替换文件-通知模板编码') }}
|
70
|
-
</th>
|
71
|
-
<td colspan="3">
|
72
|
-
<el-form-item prop="replaceNtCode" :rules="[{ required: false, trigger: 'blur' }]">
|
73
|
-
<el-input type="text" autocomplete="off" v-model="fileObjNotify.replaceNtCode" clearable/>
|
74
|
-
</el-form-item>
|
75
|
-
</td>
|
76
|
-
</tr>
|
77
|
-
|
78
|
-
</tbody>
|
79
|
-
</table>
|
80
|
-
</div>
|
81
|
-
</div>
|
82
|
-
</el-form>
|
83
|
-
</div>
|
84
|
-
</template>
|
85
|
-
|
86
|
-
<script>
|
87
|
-
export default {
|
88
|
-
name: 'fileObjNotifyEdit',
|
89
|
-
props: {
|
90
|
-
_dataId: [String, Number],
|
91
|
-
current_prefix: String
|
92
|
-
},
|
93
|
-
components: {},
|
94
|
-
data() {
|
95
|
-
return {
|
96
|
-
isEdit: false,
|
97
|
-
tabIndex: 'first',
|
98
|
-
dataId: '',
|
99
|
-
fileObjNotify: {
|
100
|
-
toNotify: 0,
|
101
|
-
fileObjId: this._dataId
|
102
|
-
}
|
103
|
-
};
|
104
|
-
},
|
105
|
-
created() {
|
106
|
-
if (this._dataId && !isNaN(this._dataId)) this.dataId = this._dataId;
|
107
|
-
},
|
108
|
-
mounted() {
|
109
|
-
this.getData();
|
110
|
-
},
|
111
|
-
methods: {
|
112
|
-
getData() {
|
113
|
-
if (this.dataId && !isNaN(this.dataId)) {
|
114
|
-
|
115
|
-
this.$commonHttp({
|
116
|
-
url: this.current_prefix + `/file_obj_notify/get`,
|
117
|
-
method: `post`,
|
118
|
-
data: {
|
119
|
-
id: this.dataId
|
120
|
-
},
|
121
|
-
isLoading: true,
|
122
|
-
modalStrictly: true,
|
123
|
-
success: res => {
|
124
|
-
if (res.objx) {
|
125
|
-
this.fileObjNotify = res.objx;
|
126
|
-
this.isEdit = true;
|
127
|
-
}
|
128
|
-
}
|
129
|
-
});
|
130
|
-
}
|
131
|
-
},
|
132
|
-
saveData() {
|
133
|
-
this.$refs.editForm.$baseValidate(valid => {
|
134
|
-
if (valid) {
|
135
|
-
this.$baseConfirm(this.$t1('您确定要保存吗?')).then(() => {
|
136
|
-
var url = this.current_prefix + `/file_obj_notify/save`;
|
137
|
-
debugger
|
138
|
-
let a = 1;
|
139
|
-
this.$http({
|
140
|
-
url: url,
|
141
|
-
method: `post`,
|
142
|
-
data: this.fileObjNotify,
|
143
|
-
isLoading: true,
|
144
|
-
success: res => {
|
145
|
-
this.$message({
|
146
|
-
message: res.content,
|
147
|
-
type: 'success',
|
148
|
-
duration: 500,
|
149
|
-
onClose: t => {
|
150
|
-
this.$baseReload();
|
151
|
-
}
|
152
|
-
});
|
153
|
-
}
|
154
|
-
});
|
155
|
-
});
|
156
|
-
}
|
157
|
-
});
|
158
|
-
}
|
159
|
-
}
|
160
|
-
};
|
161
|
-
</script>
|
162
|
-
<style scoped>
|
163
|
-
.noTr th {
|
164
|
-
height: 0px
|
165
|
-
}
|
166
|
-
|
167
|
-
.noTr td {
|
168
|
-
height: 0px
|
169
|
-
}
|
170
|
-
</style>
|
package/src/components/xform/form-designer/setting-panel/property-editor/showRuleFlag-editor.vue
DELETED
@@ -1,223 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div>
|
3
|
-
<el-form-item label-width="0">
|
4
|
-
<el-divider class="custom-divider-margin-top">显隐规则设置</el-divider>
|
5
|
-
</el-form-item>
|
6
|
-
<el-form-item :label="i18nt('启用显隐规则')">
|
7
|
-
<el-switch v-model="optionModel.showRuleEnabled"></el-switch>
|
8
|
-
</el-form-item>
|
9
|
-
<el-form-item :label="i18nt('显隐规则')">
|
10
|
-
<a href="javascript:void(0);" class="a-link link-oneLind" @click="openDialog">
|
11
|
-
<span>{{ optionModel.showRules && optionModel.showRules.length ? "已维护" : "" }}</span>
|
12
|
-
<i class="el-icon-edit"></i>
|
13
|
-
</a>
|
14
|
-
</el-form-item>
|
15
|
-
<el-form-item label-width="0">
|
16
|
-
<el-divider class="custom-divider-margin-top"></el-divider>
|
17
|
-
</el-form-item>
|
18
|
-
<el-dialog
|
19
|
-
v-if="dialogVisible"
|
20
|
-
custom-class="dialog-style list-dialog"
|
21
|
-
:title="i18nt('显隐规则')"
|
22
|
-
:visible.sync="dialogVisible"
|
23
|
-
:show-close="!0"
|
24
|
-
:append-to-body="false"
|
25
|
-
:modal="false"
|
26
|
-
:close-on-click-modal="!1"
|
27
|
-
:close-on-press-escape="!1"
|
28
|
-
:destroy-on-close="!0"
|
29
|
-
width="1220px"
|
30
|
-
top="5vh"
|
31
|
-
v-dialog-drag
|
32
|
-
>
|
33
|
-
<div class="cont">
|
34
|
-
<el-table
|
35
|
-
ref="singleTable"
|
36
|
-
width="100%"
|
37
|
-
:data="tableData"
|
38
|
-
height="500"
|
39
|
-
border=""
|
40
|
-
row-key="columnId"
|
41
|
-
stripe=""
|
42
|
-
>
|
43
|
-
<el-table-column type="index" width="35" fixed="left"></el-table-column>
|
44
|
-
<el-table-column :label="i18nt('匹配规则')" width="250" prop="label">
|
45
|
-
<template slot-scope="scope">
|
46
|
-
<el-select v-model="scope.row.ruleType" @change="changeRuleType(scope.row)">
|
47
|
-
<el-option :value="1" label="用户"></el-option>
|
48
|
-
<el-option :value="2" label="机构"></el-option>
|
49
|
-
<el-option :value="3" label="角色"></el-option>
|
50
|
-
</el-select>
|
51
|
-
</template>
|
52
|
-
</el-table-column>
|
53
|
-
<el-table-column :label="i18nt('值')" width="300" prop="prop">
|
54
|
-
<template slot-scope="scope">
|
55
|
-
<el-input
|
56
|
-
class="search-input"
|
57
|
-
:value="getRowValueName(scope.row)"
|
58
|
-
clearable
|
59
|
-
@clear="
|
60
|
-
scope.row.value = [];
|
61
|
-
"
|
62
|
-
v-el-readonly
|
63
|
-
>
|
64
|
-
<i slot="suffix" class="el-input__icon el-icon-search"
|
65
|
-
@click="openRowValueDialog(scope.row, scope.$index )"></i>
|
66
|
-
</el-input>
|
67
|
-
|
68
|
-
</template>
|
69
|
-
</el-table-column>
|
70
|
-
<el-table-column :label="i18nt('是否可见')" width="150" prop="prop">
|
71
|
-
<template slot-scope="scope">
|
72
|
-
<el-switch v-model="scope.row.show"></el-switch>
|
73
|
-
</template>
|
74
|
-
</el-table-column>
|
75
|
-
<el-table-column :label="i18nt('designer.setting.actionColumn')" width="100" align="center">
|
76
|
-
<template #header>
|
77
|
-
<span>{{ i18nt('designer.setting.actionColumn') }}</span>
|
78
|
-
<el-button :title="i18nt('designer.setting.addTableColumn')" size="mini" type="" circle=""
|
79
|
-
icon="el-icon-plus" @click="addItem"></el-button>
|
80
|
-
</template>
|
81
|
-
<template slot-scope="scope">
|
82
|
-
<el-button
|
83
|
-
:title="i18nt('designer.setting.deleteTableColumn')"
|
84
|
-
size="mini"
|
85
|
-
type=""
|
86
|
-
circle=""
|
87
|
-
icon="el-icon-minus"
|
88
|
-
@click="tableData.splice(scope.$index,1)"
|
89
|
-
></el-button>
|
90
|
-
</template>
|
91
|
-
</el-table-column>
|
92
|
-
|
93
|
-
</el-table>
|
94
|
-
</div>
|
95
|
-
<div class="dialog-footer" slot="footer">
|
96
|
-
<el-button @click="dialogVisible = false" class="button-sty" icon="el-icon-close">
|
97
|
-
{{ i18nt('designer.hint.cancel') }}
|
98
|
-
</el-button>
|
99
|
-
<el-button type="primary" @click="colSubmit" class="button-sty" icon="el-icon-check">
|
100
|
-
{{ i18nt('designer.hint.confirm') }}
|
101
|
-
</el-button>
|
102
|
-
</div>
|
103
|
-
</el-dialog>
|
104
|
-
<userDialog v-if="showUserDialog" :visiable.sync="showUserDialog" @confirm="confirmUserDialog"
|
105
|
-
multi="true" :rows="operateRows"/>
|
106
|
-
<saleOrgDialog v-if="showSaleOrgDialog" :visiable.sync="showSaleOrgDialog" @confirm="confirmSaleOrgDialog"
|
107
|
-
multi="true" :rows="operateRows"/>
|
108
|
-
<roleDialog v-if="showRoleDialog" :visiable.sync="showRoleDialog" @confirm="confirmRoleDialog"
|
109
|
-
multi="true" :rows="operateRows"/>
|
110
|
-
</div>
|
111
|
-
</template>
|
112
|
-
|
113
|
-
<script>
|
114
|
-
import i18n from "../../../../../components/xform/utils/i18n"
|
115
|
-
import userDialog from "@base/views/user/user/dialog.vue";
|
116
|
-
import saleOrgDialog from "@base/views/user/sale_org/dialog.vue";
|
117
|
-
import roleDialog from "@base/views/user/role/dialog.vue";
|
118
|
-
|
119
|
-
|
120
|
-
export default {
|
121
|
-
name: "showRuleFlag-editor",
|
122
|
-
components: {
|
123
|
-
userDialog,
|
124
|
-
saleOrgDialog,
|
125
|
-
roleDialog
|
126
|
-
},
|
127
|
-
mixins: [i18n],
|
128
|
-
props: {
|
129
|
-
designer: Object,
|
130
|
-
selectedWidget: Object,
|
131
|
-
optionModel: Object,
|
132
|
-
},
|
133
|
-
inject: ["getReportTemplate"],
|
134
|
-
data() {
|
135
|
-
return {
|
136
|
-
dialogVisible: false,
|
137
|
-
tableData: [],
|
138
|
-
wfDefItems: [],
|
139
|
-
wfNodeMap: {},
|
140
|
-
showUserDialog: false,
|
141
|
-
showSaleOrgDialog: false,
|
142
|
-
showRoleDialog: false,
|
143
|
-
operateRows: [],
|
144
|
-
operateIndex: 0
|
145
|
-
}
|
146
|
-
},
|
147
|
-
computed: {
|
148
|
-
current_prefix() {
|
149
|
-
let reportTemplate = this.getReportTemplate();
|
150
|
-
return "/" + reportTemplate.serviceName;
|
151
|
-
}
|
152
|
-
},
|
153
|
-
methods: {
|
154
|
-
openDialog() {
|
155
|
-
let reportTemplate = this.getReportTemplate();
|
156
|
-
let showRules = this.optionModel.showRules || [];
|
157
|
-
this.dialogVisible = true;
|
158
|
-
this.tableData = this.$baseLodash.cloneDeep(showRules)
|
159
|
-
},
|
160
|
-
|
161
|
-
addItem() {
|
162
|
-
this.tableData.push({
|
163
|
-
ruleType: 1,
|
164
|
-
value: [],
|
165
|
-
show: true
|
166
|
-
});
|
167
|
-
},
|
168
|
-
colSubmit() {
|
169
|
-
this.dialogVisible = !1;
|
170
|
-
this.optionModel.showRules = this.tableData;
|
171
|
-
},
|
172
|
-
changeRuleType(row) {
|
173
|
-
row.value = [];
|
174
|
-
},
|
175
|
-
getRowValueName(row) {
|
176
|
-
let ruleType = row.ruleType;
|
177
|
-
let nameField = null;
|
178
|
-
if (ruleType == 1) {
|
179
|
-
nameField = 'nickName';
|
180
|
-
} else if (ruleType == 2) {
|
181
|
-
nameField = 'name';
|
182
|
-
} else if (ruleType == 3) {
|
183
|
-
nameField = 'name';
|
184
|
-
}
|
185
|
-
let rows = row.value || []
|
186
|
-
return rows.map(item => {
|
187
|
-
return item[nameField];
|
188
|
-
}).join(',');
|
189
|
-
},
|
190
|
-
openRowValueDialog(row, rowIndex) {
|
191
|
-
let ruleType = row.ruleType;
|
192
|
-
this.operateIndex = rowIndex;
|
193
|
-
this.operateRows = this.$baseLodash.cloneDeep(row.value || []);
|
194
|
-
if (ruleType == 1) {
|
195
|
-
this.showUserDialog = true;
|
196
|
-
} else if (ruleType == 2) {
|
197
|
-
this.showSaleOrgDialog = true;
|
198
|
-
} else if (ruleType == 3) {
|
199
|
-
this.showRoleDialog = true;
|
200
|
-
}
|
201
|
-
},
|
202
|
-
confirmUserDialog(rows) {
|
203
|
-
let item = this.tableData[this.operateIndex]
|
204
|
-
item.value.length = 0;
|
205
|
-
item.value.push(...rows)
|
206
|
-
},
|
207
|
-
confirmSaleOrgDialog(rows) {
|
208
|
-
let item = this.tableData[this.operateIndex]
|
209
|
-
item.value.length = 0;
|
210
|
-
item.value.push(...rows)
|
211
|
-
},
|
212
|
-
confirmRoleDialog(rows) {
|
213
|
-
let item = this.tableData[this.operateIndex]
|
214
|
-
item.value.length = 0;
|
215
|
-
item.value.push(...rows)
|
216
|
-
},
|
217
|
-
}
|
218
|
-
}
|
219
|
-
</script>
|
220
|
-
|
221
|
-
<style scoped>
|
222
|
-
|
223
|
-
</style>
|
package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue
DELETED
@@ -1,62 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div>
|
3
|
-
<el-form-item label-width="0">
|
4
|
-
<el-divider class="custom-divider-margin-top">文本显示设置</el-divider>
|
5
|
-
</el-form-item>
|
6
|
-
<el-form-item :label="i18nt('全部显示为*')">
|
7
|
-
<el-switch v-model="optionModel.textRule1" @change="changeTextRule1"></el-switch>
|
8
|
-
</el-form-item>
|
9
|
-
<el-form-item :label="i18nt('前面明文,其他为*')">
|
10
|
-
<el-switch v-model="optionModel.textRule2" @change="changeTextRule2"></el-switch>
|
11
|
-
</el-form-item>
|
12
|
-
<el-form-item :label="i18nt('前面明文位数')">
|
13
|
-
<base-input-number v-model="optionModel.textRule2Number" :scale="0"></base-input-number>
|
14
|
-
</el-form-item>
|
15
|
-
<el-form-item :label="i18nt('后面明文,其他为*')">
|
16
|
-
<el-switch v-model="optionModel.textRule3" @change="changeTextRule3"></el-switch>
|
17
|
-
</el-form-item>
|
18
|
-
<el-form-item :label="i18nt('后面明文位数')">
|
19
|
-
<base-input-number v-model="optionModel.textRule3Number" :scale="0"></base-input-number>
|
20
|
-
</el-form-item>
|
21
|
-
<el-form-item label-width="0">
|
22
|
-
<el-divider class="custom-divider-margin-top"></el-divider>
|
23
|
-
</el-form-item>
|
24
|
-
</div>
|
25
|
-
</template>
|
26
|
-
|
27
|
-
<script>
|
28
|
-
import i18n from "../../../../../components/xform/utils/i18n"
|
29
|
-
|
30
|
-
export default {
|
31
|
-
name: "textFlag-editor",
|
32
|
-
mixins: [i18n],
|
33
|
-
props: {
|
34
|
-
designer: Object,
|
35
|
-
selectedWidget: Object,
|
36
|
-
optionModel: Object,
|
37
|
-
},
|
38
|
-
data() {
|
39
|
-
return {
|
40
|
-
|
41
|
-
}
|
42
|
-
},
|
43
|
-
methods: {
|
44
|
-
changeTextRule1(val) {
|
45
|
-
this.optionModel.textRule2 = false;
|
46
|
-
this.optionModel.textRule3 = false;
|
47
|
-
this.optionModel.textRule2Number = null;
|
48
|
-
this.optionModel.textRule3Number = null;
|
49
|
-
},
|
50
|
-
changeTextRule2(val) {
|
51
|
-
this.optionModel.textRule1 = false;
|
52
|
-
},
|
53
|
-
changeTextRule3(val) {
|
54
|
-
this.optionModel.textRule1 = false;
|
55
|
-
}
|
56
|
-
}
|
57
|
-
}
|
58
|
-
</script>
|
59
|
-
|
60
|
-
<style scoped>
|
61
|
-
|
62
|
-
</style>
|