agilebuilder-ui 1.0.621 → 1.0.962
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/lib/super-ui.css +1 -1
- package/lib/super-ui.js +115880 -110424
- package/lib/super-ui.umd.cjs +103 -95
- package/package.json +6 -3
- package/packages/department-tree/src/department-tree.vue +27 -10
- package/packages/department-tree-inline/src/department-tree-service.js +20 -41
- package/packages/department-tree-mobile/src/department-tree-app.vue +6 -6
- package/packages/department-tree-mobile/src/department-tree-inline-app.vue +15 -15
- package/packages/department-user-tree/src/department-user-tree.vue +17 -2
- package/packages/department-user-tree-inline/src/department-user-multiple-tree-inline.vue +61 -26
- package/packages/department-user-tree-inline/src/department-user-single-tree-inline.vue +64 -22
- package/packages/department-user-tree-inline/src/department-user-tree-single-service.js +0 -6
- package/packages/department-user-tree-inline/src/group-user/group-input.vue +162 -0
- package/packages/department-user-tree-inline/src/group-user/group-list.vue +99 -0
- package/packages/department-user-tree-inline/src/group-user/group-user.vue +42 -0
- package/packages/department-user-tree-inline/src/group-user-multiple-tree.vue +304 -0
- package/packages/department-user-tree-inline/src/group-user-single-tree.vue +155 -0
- package/packages/department-user-tree-inline/src/group-user-tree-service.js +74 -0
- package/packages/department-user-tree-inline/src/search-result.vue +34 -36
- package/packages/department-user-tree-mobile/src/department-user-tree-app.vue +6 -6
- package/packages/department-user-tree-mobile/src/department-user-tree-inline-app.vue +17 -19
- package/packages/department-user-tree-mobile/src/department-user-tree-service.ts +0 -11
- package/packages/dynamic-source-select/src/dynamic-source-select.vue +795 -799
- package/packages/dynamic-source-select/src/events.js +11 -16
- package/packages/fs-upload-list/src/fs-upload-list.vue +183 -122
- package/packages/fs-upload-new/src/file-upload-mobile/file-upload-app.vue +246 -0
- package/packages/fs-upload-new/src/file-upload-mobile/file-upload-browser.vue +480 -0
- package/packages/fs-upload-new/src/file-upload-mobile/file-upload-component.vue +127 -0
- package/packages/fs-upload-new/src/file-upload-mobile/file-upload-input.vue +246 -0
- package/packages/fs-upload-new/src/file-upload-mobile/file-upload.vue +255 -0
- package/packages/fs-upload-new/src/fs-button-upload.vue +10 -13
- package/packages/fs-upload-new/src/fs-drag-upload.vue +4 -8
- package/packages/fs-upload-new/src/fs-preview-new.vue +103 -36
- package/packages/fs-upload-new/src/fs-upload-new.vue +160 -13
- package/packages/index.js +11 -2
- package/packages/organization-input/src/organization-input.vue +493 -539
- package/packages/plugins/export-data-new.js +34 -1
- package/packages/rich-editor/index.vue +29 -0
- package/packages/row-form/index.js +7 -0
- package/packages/row-form/index.vue +211 -0
- package/packages/scan-code-input/src/scan-code-input.vue +136 -104
- package/packages/scan-code-input-browser/index.js +6 -0
- package/packages/{scan-code-input/src/scan-code-input-colse.vue → scan-code-input-browser/src/scan-code-input.vue} +1 -28
- package/packages/secret-info/index.vue +2 -2
- package/packages/super-grid/src/apis.js +158 -10
- package/packages/super-grid/src/components/grid-icon.vue +7 -14
- package/packages/super-grid/src/components/hyperlinks.vue +24 -8
- package/packages/super-grid/src/custom-formatter.js +312 -380
- package/packages/super-grid/src/dynamic-input.vue +346 -43
- package/packages/super-grid/src/formValidatorUtil.js +79 -15
- package/packages/super-grid/src/group-column.vue +5 -0
- package/packages/super-grid/src/normal-column-content.vue +1056 -0
- package/packages/super-grid/src/normal-column.vue +57 -740
- package/packages/super-grid/src/row-detail.vue +50 -0
- package/packages/super-grid/src/row-operation.vue +19 -10
- package/packages/super-grid/src/scan-util.ts +243 -0
- package/packages/super-grid/src/search-button.vue +18 -14
- package/packages/super-grid/src/search-form-advancedQuery.vue +9 -2
- package/packages/super-grid/src/search-form-item.vue +10 -3
- package/packages/super-grid/src/search-form-mobile.vue +250 -0
- package/packages/super-grid/src/search-form.vue +159 -82
- package/packages/super-grid/src/super-grid-service.js +51 -6
- package/packages/super-grid/src/super-grid.vue +657 -761
- package/packages/super-grid/src/utils.js +126 -170
- package/packages/super-nine-grid/src/super-nine-grid.vue +1032 -1141
- package/packages/workflow-button/src/workflow-button.vue +6 -1
- package/packages/workgroup-tree/src/workgroup-tree.vue +31 -0
- package/packages/workgroup-tree-inline/src/workgroup-tree-inline.vue +28 -0
- package/packages/workgroup-tree-inline/src/workgroup-tree-service.js +26 -0
- package/packages/workgroup-tree-mobile/index.js +6 -0
- package/packages/workgroup-tree-mobile/src/dept-result.vue +51 -0
- package/packages/workgroup-tree-mobile/src/workgroup-tree-app.vue +120 -0
- package/packages/workgroup-tree-mobile/src/workgroup-tree-inline-app.vue +375 -0
- package/packages/workgroup-tree-mobile/src/workgroup-tree-service.ts +62 -0
- package/packages/workgroup-user-tree/src/workgroup-user-tree.vue +15 -0
- package/packages/workgroup-user-tree-inline/src/workgroup-tree-inline-service.js +27 -0
- package/packages/workgroup-user-tree-inline/src/workgroup-user-tree-inline.vue +11 -0
- package/packages/workgroup-user-tree-mobile/index.js +6 -0
- package/packages/workgroup-user-tree-mobile/src/dept-path.vue +36 -0
- package/packages/workgroup-user-tree-mobile/src/dept-result.vue +58 -0
- package/packages/workgroup-user-tree-mobile/src/workgroup-user-tree-app.vue +119 -0
- package/packages/workgroup-user-tree-mobile/src/workgroup-user-tree-inline-app.vue +394 -0
- package/packages/workgroup-user-tree-mobile/src/workgroup-user-tree-service.ts +41 -0
- package/src/api/sso-service.js +44 -15
- package/src/directives/permission/permission.js +4 -3
- package/src/i18n/langs/cn.js +19 -3
- package/src/i18n/langs/en.js +18 -2
- package/src/permission.js +114 -122
- package/src/store/modules/user.js +32 -33
- package/src/styles/index.scss +1 -0
- package/src/styles/table.scss +12 -0
- package/src/styles/theme/dark-blue/button.scss +2 -2
- package/src/styles/theme/dark-blue/index.scss +1 -1
- package/src/styles/theme/dark-blue/sidebar.scss +10 -0
- package/src/styles/theme/dark-blue/table.scss +8 -52
- package/src/styles/theme/green/button.scss +2 -2
- package/src/styles/theme/green/green.scss +1 -1
- package/src/styles/theme/green/index.scss +1 -1
- package/src/styles/theme/green/sidebar.scss +20 -0
- package/src/styles/theme/green/table.scss +7 -51
- package/src/styles/theme/ocean-blue/button.scss +2 -2
- package/src/styles/theme/ocean-blue/index.scss +1 -1
- package/src/styles/theme/ocean-blue/ocean-blue.scss +1 -1
- package/src/styles/theme/ocean-blue/sidebar.scss +10 -0
- package/src/styles/theme/ocean-blue/table.scss +7 -52
- package/src/utils/auth.js +23 -3
- package/src/utils/calculator/calculator-factory.js +4 -4
- package/src/utils/calculator/calculator-util.js +14 -0
- package/src/utils/common-util.js +270 -124
- package/src/utils/i18n-util.js +145 -0
- package/src/utils/jump-page-utils.js +245 -314
- package/src/utils/permission.js +7 -1
- package/src/utils/permissionAuth.js +155 -37
- package/src/utils/request.js +10 -11
- package/src/utils/util.js +154 -205
- package/src/views/layout/EmptyLayout.vue +1 -1
- package/src/views/layout/components/Menubar/Item.vue +27 -4
- package/src/views/layout/components/Menubar/SidebarItem.vue +7 -3
- package/src/views/layout/components/Menubar/index.vue +14 -2
- package/src/views/layout/tab-content-index.vue +1 -1
|
@@ -87,41 +87,100 @@ function getValidator(listCode) {
|
|
|
87
87
|
}
|
|
88
88
|
const gridParams = store.get(listCode)
|
|
89
89
|
const editFieldInfos = gridParams.columns
|
|
90
|
+
const customRules = gridParams.options.customRules
|
|
90
91
|
const rules = {}
|
|
91
92
|
if (editFieldInfos) {
|
|
92
93
|
editFieldInfos.forEach((editField) => {
|
|
93
|
-
setRules(rules, editField, listCode)
|
|
94
|
+
setRules(rules, editField, listCode, customRules)
|
|
94
95
|
})
|
|
95
96
|
}
|
|
96
97
|
// console.log('rules', rules)
|
|
97
98
|
return rules
|
|
98
99
|
}
|
|
99
100
|
|
|
100
|
-
function setRules(rules, editField, listCode) {
|
|
101
|
+
function setRules(rules, editField, listCode, customRules) {
|
|
101
102
|
const prop = editField.prop
|
|
102
103
|
if (editField.groupHeader && editField.children && editField.children.length > 0) {
|
|
103
104
|
// 组合表头时或者动态列,递归设置规则,
|
|
104
105
|
editField.children.forEach((child) => {
|
|
105
|
-
setRules(rules, child, listCode)
|
|
106
|
+
setRules(rules, child, listCode, customRules)
|
|
106
107
|
})
|
|
107
108
|
} else {
|
|
108
|
-
if
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
109
|
+
if(prop) {
|
|
110
|
+
// 获得当前列的自定义校验规则
|
|
111
|
+
const columnCustomRules = getColumnCustomRules(editField, customRules)
|
|
112
|
+
if ((columnCustomRules || editField.validations) && !isDisableEdit(prop, listCode)) {
|
|
113
|
+
let validations = editField.validations? JSON.parse(editField.validations): []
|
|
114
|
+
validations.forEach((item) => {
|
|
115
|
+
if (item.pattern) {
|
|
116
|
+
// 后台传递的是正则字符串,不能直接使用
|
|
117
|
+
item.pattern = new RegExp(item.pattern)
|
|
118
|
+
}
|
|
119
|
+
})
|
|
120
|
+
validations = validations.concat(columnCustomRules)
|
|
121
|
+
if (prop.indexOf('.') > 0) {
|
|
122
|
+
setObjectPropRule(editField, rules, validations)
|
|
123
|
+
} else {
|
|
124
|
+
if (validations && validations.length > 0) {
|
|
125
|
+
rules[prop] = [...validations]
|
|
126
|
+
}
|
|
114
127
|
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* 获得当前列的自定义校验规则
|
|
134
|
+
* @param {*} editField
|
|
135
|
+
* @param {*} customRules
|
|
136
|
+
* @returns
|
|
137
|
+
*/
|
|
138
|
+
function getColumnCustomRules(editField, customRules) {
|
|
139
|
+
const prop = editField.prop
|
|
140
|
+
let columnCustomRules = []
|
|
141
|
+
let requiredRule
|
|
142
|
+
const allFieldsName = '_all_fields'
|
|
143
|
+
let columnRule
|
|
144
|
+
if(customRules){
|
|
145
|
+
columnRule = customRules[prop]? customRules[prop]: customRules[allFieldsName]
|
|
146
|
+
}
|
|
147
|
+
if(columnRule && (columnRule.required || columnRule.rules)) {
|
|
148
|
+
// 表示配置的必填或其它验证规则时
|
|
149
|
+
const mustFillMsg = getI18n().t('imatrixUIMessage.mustFill', {
|
|
150
|
+
label: editField.label
|
|
151
|
+
})
|
|
152
|
+
columnCustomRules = columnRule.rules? JSON.parse(JSON.stringify(columnRule.rules)): null
|
|
153
|
+
if(columnCustomRules && columnCustomRules.length > 0){
|
|
154
|
+
// 获得必填验证规则
|
|
155
|
+
const requiredRules = columnCustomRules.filter(item=>item.required)
|
|
156
|
+
if(requiredRules && requiredRules.length > 0){
|
|
157
|
+
requiredRule = requiredRules[0]
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
if(columnRule.name === allFieldsName && columnCustomRules){
|
|
161
|
+
// 所有字段_all_fields的验证的message更新,补充“label”
|
|
162
|
+
columnCustomRules.forEach(item=>{
|
|
163
|
+
item.message = editField.label + item.message
|
|
115
164
|
})
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
165
|
+
}
|
|
166
|
+
if(!requiredRule && columnRule.required) {
|
|
167
|
+
// 当rules中没有配置必填验证,但是有required为true时,则封装必填验证规则,到集合中
|
|
168
|
+
if(!columnCustomRules){
|
|
169
|
+
columnCustomRules = []
|
|
170
|
+
}
|
|
171
|
+
requiredRule = {
|
|
172
|
+
required: true,
|
|
173
|
+
message: mustFillMsg,
|
|
174
|
+
trigger: 'blur'
|
|
122
175
|
}
|
|
176
|
+
columnCustomRules.push(requiredRule)
|
|
177
|
+
}
|
|
178
|
+
if(requiredRule && !requiredRule.message) {
|
|
179
|
+
// 如果必填验证规则中message为空时,封装默认的必填验证规则,'_all_fields'可能会为空
|
|
180
|
+
requiredRule.message = mustFillMsg
|
|
123
181
|
}
|
|
124
182
|
}
|
|
183
|
+
return columnCustomRules
|
|
125
184
|
}
|
|
126
185
|
/**
|
|
127
186
|
* 验证实体
|
|
@@ -161,6 +220,11 @@ function validatorEntity(
|
|
|
161
220
|
}
|
|
162
221
|
|
|
163
222
|
const gridParams = store.get(listCode)
|
|
223
|
+
Object.keys(entity).forEach(function(key) {
|
|
224
|
+
if(entity[key] && typeof entity[key] === 'string') {
|
|
225
|
+
entity[key] = entity[key].trim()
|
|
226
|
+
}
|
|
227
|
+
})
|
|
164
228
|
validator.validate(
|
|
165
229
|
entity,
|
|
166
230
|
{
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
@refresPortsData="refresPortsData"
|
|
21
21
|
@refresMainTableFields="refresMainTableFields"
|
|
22
22
|
@prohibit-to-edit="prohibitToEdit"
|
|
23
|
+
@open-page="openPageDialog"
|
|
23
24
|
/>
|
|
24
25
|
</template>
|
|
25
26
|
<template v-else>
|
|
@@ -33,6 +34,7 @@
|
|
|
33
34
|
:grid-data="gridData"
|
|
34
35
|
:page-grid-data="gridData"
|
|
35
36
|
@prohibit-to-edit="prohibitToEdit"
|
|
37
|
+
@open-page="openPageDialog"
|
|
36
38
|
/>
|
|
37
39
|
</template>
|
|
38
40
|
</el-table-column>
|
|
@@ -108,6 +110,9 @@ export default {
|
|
|
108
110
|
},
|
|
109
111
|
prohibitToEdit(entity) {
|
|
110
112
|
this.$emit('prohibit-to-edit', entity)
|
|
113
|
+
},
|
|
114
|
+
openPageDialog(openPageParams) {
|
|
115
|
+
this.$emit('open-page', openPageParams)
|
|
111
116
|
}
|
|
112
117
|
}
|
|
113
118
|
}
|