cloud-web-corejs 1.0.109 → 1.0.110
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/VabUpload/mixins.js +1 -1
- package/src/components/VabUpload/propertiesDialog.vue +1 -1
- package/src/components/VabUpload/view.vue +2 -2
- package/src/components/baseAttachment/index.vue +49 -49
- package/src/components/baseAttachment/mixins.js +1 -1
- package/src/components/xform/form-designer/form-widget/dialog/exportDialog.vue +13 -0
- package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +301 -0
- package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/a-text-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +21 -2
- package/src/components/xform/form-designer/form-widget/field-widget/fieldMixin.js +5 -3
- package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +104 -45
- package/src/components/xform/form-designer/form-widget/field-widget/number-widget.vue +1 -1
- package/src/components/xform/form-designer/form-widget/field-widget/status-widget.vue +18 -17
- package/src/components/xform/form-designer/form-widget/field-widget/text-widget.vue +1 -1
- package/src/components/xform/form-designer/indexMixin.js +1 -1
- package/src/components/xform/form-designer/setting-panel/form-setting.vue +588 -164
- package/src/components/xform/form-designer/setting-panel/option-items-setting.vue +69 -10
- package/src/components/xform/form-designer/setting-panel/property-editor/a-link-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/a-text-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/colorClass-editor.vue +28 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +32 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +17 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/container-detail-pane/detail-pane-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/field-button/clickBindEvent-editor.vue +35 -20
- package/src/components/xform/form-designer/setting-panel/property-editor/field-vabUpload/field-vabUpload-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +4 -0
- package/src/components/xform/form-designer/setting-panel/property-editor/formula-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/formulaEnabled-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelColor-editor.vue +20 -11
- package/src/components/xform/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +1 -1
- package/src/components/xform/form-designer/setting-panel/property-editor/required-editor.vue +23 -23
- package/src/components/xform/form-designer/setting-panel/property-editor/requiredHint-editor.vue +3 -3
- package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +161 -74
- package/src/components/xform/form-designer/setting-panel/property-editor/validation-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/validationHint-editor.vue +2 -2
- package/src/components/xform/form-designer/setting-panel/property-editor/wfFlag-editor.vue +236 -92
- package/src/components/xform/form-designer/setting-panel/property-editor/widgetShowRuleFlag-editor.vue +74 -31
- package/src/components/xform/form-designer/setting-panel/propertyRegister.js +10 -9
- package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +52 -17
- package/src/components/xform/form-render/container-item/data-table-mixin.js +1 -1
- package/src/components/xform/form-render/container-item/detail-pane-item.vue +17 -3
- package/src/components/xform/form-render/index.vue +4 -1
- package/src/components/xform/form-render/indexMixin.js +2 -1
- package/src/components/xform/mixins/defaultHandle.js +1 -1
- package/src/components/xform/mixins/scriptHttp.js +1 -1
- package/src/components/xform/utils/util.js +1 -1
- package/src/components/xform/utils/validators.js +1 -5
- package/src/store/config/index.js +1 -1
- package/src/views/bd/setting/bd_company_env/dialog.vue +174 -0
- package/src/views/bd/setting/bd_company_env/edit.vue +163 -0
- package/src/views/bd/setting/bd_company_env/list.vue +175 -0
- package/src/views/bd/setting/config_manage/list.vue +51 -0
- package/src/views/user/wf/wf_manage/list.vue +29 -0
@@ -142,6 +142,11 @@ export default {
|
|
142
142
|
rules: Array,
|
143
143
|
},
|
144
144
|
inject: ["getFormConfig", "getSubFormFieldFlag", "getSubFormName", "tableParam", "formItemProp", "getObjectFieldFlag", "getObjectName"],
|
145
|
+
data(){
|
146
|
+
return {
|
147
|
+
encryptFormula:null
|
148
|
+
}
|
149
|
+
},
|
145
150
|
computed: {
|
146
151
|
formConfig: function () {
|
147
152
|
return this.getFormConfig()
|
@@ -297,6 +302,91 @@ export default {
|
|
297
302
|
getI18nLabel(label, path, param) {
|
298
303
|
return !this.designState && label ? this.$t2(label, path, param) : label;
|
299
304
|
},
|
305
|
+
getProcessText(text,pattern) {
|
306
|
+
|
307
|
+
if (pattern == '' || pattern === null || pattern === undefined) {
|
308
|
+
return text;
|
309
|
+
}
|
310
|
+
|
311
|
+
let result = '';
|
312
|
+
|
313
|
+
// 处理固定模式
|
314
|
+
if (pattern === '-') {
|
315
|
+
result = '-';
|
316
|
+
}
|
317
|
+
else if (pattern === '*') {
|
318
|
+
result = '*****';
|
319
|
+
}
|
320
|
+
// 处理自定义模式
|
321
|
+
else if (pattern.includes('*')) {
|
322
|
+
text = text ?? ""
|
323
|
+
const parts = pattern.split('*');
|
324
|
+
|
325
|
+
// 处理 A*B 模式
|
326
|
+
if (parts.length === 2 && parts[0] && parts[1]) {
|
327
|
+
const a = parseInt(parts[0]);
|
328
|
+
const b = parseInt(parts[1]);
|
329
|
+
|
330
|
+
if (!isNaN(a) && !isNaN(b) && a >= 0 && b >= 0) {
|
331
|
+
if (text.length >= a + b) {
|
332
|
+
const prefix = text.substring(0, a);
|
333
|
+
const suffix = text.substring(text.length - b);
|
334
|
+
const stars = '*'.repeat(text.length - a - b);
|
335
|
+
result = prefix + stars + suffix;
|
336
|
+
} else {
|
337
|
+
result = '*****';
|
338
|
+
}
|
339
|
+
} else {
|
340
|
+
// result = '无效模式:A和B必须是数字';
|
341
|
+
result = text;
|
342
|
+
}
|
343
|
+
}
|
344
|
+
// 处理 A* 模式
|
345
|
+
else if (parts.length === 2 && parts[0] && !parts[1]) {
|
346
|
+
const a = parseInt(parts[0]);
|
347
|
+
|
348
|
+
if (!isNaN(a) && a >= 0) {
|
349
|
+
if (text.length >= a) {
|
350
|
+
const prefix = text.substring(0, a);
|
351
|
+
const stars = '*'.repeat(text.length - a);
|
352
|
+
result = prefix + stars;
|
353
|
+
} else {
|
354
|
+
result = '*****';
|
355
|
+
}
|
356
|
+
} else {
|
357
|
+
// result = '无效模式:A必须是数字';
|
358
|
+
result = text;
|
359
|
+
}
|
360
|
+
}
|
361
|
+
// 处理 *B 模式
|
362
|
+
else if (parts.length === 2 && !parts[0] && parts[1]) {
|
363
|
+
const b = parseInt(parts[1]);
|
364
|
+
|
365
|
+
if (!isNaN(b) && b >= 0) {
|
366
|
+
if (text.length >= b) {
|
367
|
+
const suffix = text.substring(text.length - b);
|
368
|
+
const stars = '*'.repeat(text.length - b);
|
369
|
+
result = stars + suffix;
|
370
|
+
} else {
|
371
|
+
result = '*****';
|
372
|
+
}
|
373
|
+
} else {
|
374
|
+
// result = '无效模式:B必须是数字';
|
375
|
+
result = text;
|
376
|
+
}
|
377
|
+
}
|
378
|
+
// 处理无效模式
|
379
|
+
else {
|
380
|
+
result = '*****';
|
381
|
+
}
|
382
|
+
}
|
383
|
+
// 处理其他无效模式
|
384
|
+
else {
|
385
|
+
result = '*****';
|
386
|
+
}
|
387
|
+
|
388
|
+
return result;
|
389
|
+
},
|
300
390
|
initShowType() {
|
301
391
|
if (!!this.designer) return
|
302
392
|
let that = this.$parent
|
@@ -321,13 +411,13 @@ export default {
|
|
321
411
|
let optionModel = this.field.options;
|
322
412
|
|
323
413
|
let flag = 0;//0 原本组件,1明文文本,2密文文本
|
324
|
-
if (optionModel.showTextEnabled) {
|
414
|
+
/*if (optionModel.showTextEnabled) {
|
325
415
|
flag = 1;
|
326
416
|
} else if (optionModel.showEncryptTextEnabled) {
|
327
417
|
flag = 2;
|
328
418
|
} else if (optionModel.showLinkTextEnabled) {
|
329
419
|
flag = 3;
|
330
|
-
}
|
420
|
+
}*/
|
331
421
|
if (optionModel.userTextRuleEnabled) {
|
332
422
|
let userTextRuleConfig = optionModel.userTextRuleConfig || [];
|
333
423
|
userTextRuleConfig.forEach(item => {
|
@@ -351,10 +441,16 @@ export default {
|
|
351
441
|
let flag2 = !companyCodes.length || companyCodes.includes(companyCode)
|
352
442
|
// let flag3 = !loginAccounts.length || loginAccounts.includes(loginAccount)
|
353
443
|
// let flag4 = this.compareToList(saleOrgCodes, saleOrgCodeList)
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
444
|
+
if(flag1 && flag2){
|
445
|
+
this.encryptFormula = item.encryptFormula
|
446
|
+
let flag5 = this.compareToList(roleCodes, roleCodeList)
|
447
|
+
if(flag5){
|
448
|
+
//匹配角色
|
449
|
+
if(type == 2)flag = 2//type=2时加密
|
450
|
+
}else {
|
451
|
+
//角色不匹配
|
452
|
+
if(type == 1)flag = 2
|
453
|
+
}
|
358
454
|
}
|
359
455
|
}
|
360
456
|
})
|
@@ -383,44 +479,7 @@ export default {
|
|
383
479
|
if (this.$parent.fieldModelLabel) fieldModel = this.$parent.fieldModelLabel();
|
384
480
|
let showValue = fieldModel
|
385
481
|
if (widgetTextFlag == 2) {
|
386
|
-
|
387
|
-
showValue = "*******";
|
388
|
-
if ((optionModel.textRule1 || optionModel.textRule2 || optionModel.textRule3)) {
|
389
|
-
if (fieldModel && !optionModel.textRule1) {
|
390
|
-
let size = fieldModel.length;
|
391
|
-
let optionModel = this.field.options;
|
392
|
-
|
393
|
-
let str1 = "";
|
394
|
-
let str2 = "";
|
395
|
-
let flag2 = optionModel.textRule2 && optionModel.textRule2Number;
|
396
|
-
let flag3 = optionModel.textRule3 && optionModel.textRule3Number;
|
397
|
-
if (flag2) {
|
398
|
-
if (size >= optionModel.textRule2Number) {
|
399
|
-
str1 = fieldModel.slice(0, optionModel.textRule2Number)
|
400
|
-
}
|
401
|
-
}
|
402
|
-
if (flag3) {
|
403
|
-
if (size >= optionModel.textRule3Number) {
|
404
|
-
str2 = fieldModel.slice(-optionModel.textRule3Number)
|
405
|
-
}
|
406
|
-
}
|
407
|
-
if (flag2 && flag3) {
|
408
|
-
if (size >= optionModel.textRule2Number + optionModel.textRule3Number) {
|
409
|
-
showValue = str1 + "*****" + str2;
|
410
|
-
}
|
411
|
-
} else if (flag2) {
|
412
|
-
if (str1) {
|
413
|
-
showValue = str1 + "*****"
|
414
|
-
}
|
415
|
-
} else if (flag3) {
|
416
|
-
if (str2) {
|
417
|
-
showValue = "*****" + str2
|
418
|
-
}
|
419
|
-
}
|
420
|
-
|
421
|
-
}
|
422
|
-
}
|
423
|
-
|
482
|
+
showValue = this.getProcessText(showValue,this.encryptFormula)
|
424
483
|
}
|
425
484
|
|
426
485
|
return showValue;
|
@@ -428,7 +487,7 @@ export default {
|
|
428
487
|
getWidgetClass() {
|
429
488
|
let list = [];
|
430
489
|
let optionModel = this.field.options.widgetTextLinkConfig?.options || {};
|
431
|
-
if (optionModel.
|
490
|
+
if (optionModel.colorClass) list.push(optionModel.colorClass);
|
432
491
|
if (optionModel.underline) list.push('underLine');
|
433
492
|
if (this.field.options.disabled) list.push('is-disabled');
|
434
493
|
return list
|
@@ -3,8 +3,12 @@
|
|
3
3
|
:parent-widget="parentWidget" :parent-list="parentList" :index-of-parent-list="indexOfParentList"
|
4
4
|
:sub-form-row-index="subFormRowIndex" :sub-form-col-index="subFormColIndex"
|
5
5
|
:sub-form-row-id="subFormRowId">
|
6
|
-
<
|
7
|
-
|
6
|
+
<template v-for="(item,index) in field.options.statusParam">
|
7
|
+
<span
|
8
|
+
v-if="fieldModel===item.value"
|
9
|
+
:key="index" class="list-tag"
|
10
|
+
:class="item.type">{{ getI18nLabel(item.label) }}</span>
|
11
|
+
</template>
|
8
12
|
</form-item-wrapper>
|
9
13
|
</template>
|
10
14
|
|
@@ -56,7 +60,8 @@ export default {
|
|
56
60
|
fieldModel: null,
|
57
61
|
rules: [],
|
58
62
|
isH5: false,
|
59
|
-
option: {}
|
63
|
+
option: {},
|
64
|
+
statusParam: [],
|
60
65
|
}
|
61
66
|
},
|
62
67
|
watch: {
|
@@ -64,16 +69,6 @@ export default {
|
|
64
69
|
this.handleChangeEvent(val);
|
65
70
|
}
|
66
71
|
},
|
67
|
-
computed: {
|
68
|
-
statusParam() {
|
69
|
-
return this.field.options.statusParam ? this.field.options.statusParam.map(item => {
|
70
|
-
return {
|
71
|
-
...item,
|
72
|
-
label: this.getI18nLabel(item.label)
|
73
|
-
}
|
74
|
-
}) : [];
|
75
|
-
}
|
76
|
-
},
|
77
72
|
beforeCreate() {
|
78
73
|
/* 这里不能访问方法和属性!! */
|
79
74
|
},
|
@@ -90,6 +85,7 @@ export default {
|
|
90
85
|
this.buildFieldRules()
|
91
86
|
|
92
87
|
this.handleOnCreated()
|
88
|
+
// this.initStatusParam();
|
93
89
|
},
|
94
90
|
|
95
91
|
mounted() {
|
@@ -114,12 +110,17 @@ export default {
|
|
114
110
|
},
|
115
111
|
refreshWidget() {
|
116
112
|
this.initStatusForDesign();
|
117
|
-
this.$refs.statusTag.init();
|
113
|
+
// this.$refs.statusTag.init();
|
118
114
|
},
|
119
|
-
getFieldModelLabel(){
|
120
|
-
|
115
|
+
getFieldModelLabel() {
|
116
|
+
let label = null;
|
117
|
+
let fieldModel = this.fieldModel;
|
118
|
+
let item = this.field.options.statusParam.find(item => item.value === fieldModel)
|
119
|
+
if (item) {
|
120
|
+
label = this.getI18nLabel(item.label);
|
121
|
+
}
|
122
|
+
return label;
|
121
123
|
}
|
122
|
-
|
123
124
|
}
|
124
125
|
}
|
125
126
|
</script>
|