@steedos/standard-object-database 2.6.8-beta.13 → 2.6.8-beta.14

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.
@@ -100,7 +100,7 @@ fields:
100
100
  help: 联动字段;例如:A是B依赖的字段,当A字段值发生改变,B字段选项值会随之改变。
101
101
  description:
102
102
  create:
103
- label: 是否显示新建按钮
103
+ label: 弹出选择时允许新建
104
104
  help:
105
105
  description:
106
106
  reference_to_field:
@@ -219,7 +219,7 @@ fields:
219
219
  data:
220
220
  object: ${object}
221
221
  name: ${name}
222
- options: ${options}
222
+ options: ${options|filter:label:isTrue|filter:value:isTrue}
223
223
  type: ${type}
224
224
  reference_to: ${reference_to}
225
225
  multiple: ${multiple}
@@ -228,7 +228,7 @@ fields:
228
228
  mode: ${global.mode}
229
229
  scale: ${scale}
230
230
  _id: ${_id}
231
- trackExpression: "${object},${options},${type},${reference_to},${reference_to_field},${multiple},${filtersFunction},${_id},${scale}"
231
+ trackExpression: "${object},${options|filter:label:isTrue|filter:value:isTrue|pick:label,value|json},${type},${reference_to},${reference_to_field},${multiple},${filtersFunction},${_id},${scale}"
232
232
  headers:
233
233
  Authorization: "Bearer ${context.tenantId},${context.authToken}"
234
234
  # sendOn: "!!this.type"
@@ -289,7 +289,7 @@ fields:
289
289
  disabledOn: "${is_system == true}"
290
290
  create:
291
291
  type: boolean
292
- label: 是否显示新建按钮
292
+ label: 弹出选择时允许新建
293
293
  defaultValue: true
294
294
  visible_on: "{{['lookup'].indexOf(formData.type) > -1 ? true: false}}"
295
295
  sort_no: 185
@@ -556,11 +556,42 @@ fields:
556
556
  - object
557
557
  filtersFunction: !<tag:yaml.org,2002:js/function> |-
558
558
  function (filters, values) {
559
- if(values && values.object){
560
- return ['object', '=', values.object]
561
- }else{
562
- return ['_id', '=', 'no']
559
+ //按照from字段类型给予不同的过滤限制,具体规则参考https://github.com/steedos/steedos-platform/issues/6496
560
+ var fieldFilters = {
561
+ "text": ["text", "textarea"],
562
+ "textarea": ["text", "textarea"],
563
+ "boolean": ["boolean", "toggle"],
564
+ "toggle": ["boolean", "toggle"],
565
+ "number": ["number", "currency"],
566
+ "currency": ["number", "currency"],
567
+ "lookup": ["lookup", "master_detail"],
568
+ "master_detail": ["lookup", "master_detail"],
569
+ "autonumber": ["autonumber", "text", "textarea"],
570
+ "email": ["email", "text", "textarea"]
571
+ };
572
+ var currentFilter = [];
573
+ var referenceObject = BuilderAmisObject && BuilderAmisObject.AmisLib && BuilderAmisObject.AmisLib.getUISchemaSync(values.reference_to);
574
+ var fromField = referenceObject && referenceObject.fields[values.auto_fill_mapping__from];
575
+
576
+ if (fromField && fromField.data_type) {
577
+ currentFilter.push(['type', 'in', fieldFilters[fromField.data_type] || fromField.data_type.split()]);
578
+ }else if (fromField) {
579
+ currentFilter.push(['type', 'in', fieldFilters[fromField.type] || fromField.type.split()]);
580
+ if (fromField.type == "lookup" || fromField.type == "master_detail") {
581
+ if (fromField.reference_to) {
582
+ currentFilter.push(['reference_to', '=', fromField.reference_to]);
583
+ }
584
+ if (fromField.reference_to_field) {
585
+ currentFilter.push(['reference_to_field', '=', fromField.reference_to_field]);
586
+ }
587
+ }
588
+ }
589
+ if (values && values.object) {
590
+ currentFilter.push(['object', '=', values.object]);
591
+ } else {
592
+ currentFilter.push(['_id', '=', 'no']);
563
593
  }
594
+ return currentFilter;
564
595
  }
565
596
  formula_blank_value:
566
597
  type: select
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos/standard-object-database",
3
- "version": "2.6.8-beta.13",
3
+ "version": "2.6.8-beta.14",
4
4
  "main": "package.service.js",
5
5
  "private": false,
6
6
  "publishConfig": {
@@ -12,10 +12,10 @@
12
12
  "description": "steedos package",
13
13
  "dependencies": {
14
14
  "@steedos-widgets/amis-lib": "^1.0.22",
15
- "@steedos/metadata-core": "2.6.8-beta.13",
16
- "@steedos/standard-objects": "2.6.8-beta.13"
15
+ "@steedos/metadata-core": "2.6.8-beta.14",
16
+ "@steedos/standard-objects": "2.6.8-beta.14"
17
17
  },
18
18
  "repository": {},
19
19
  "license": "MIT",
20
- "gitHead": "bab85130c5ca3bb1f6c520cb2a321694c211f3b3"
20
+ "gitHead": "52def4618d4b0bb424553af49f379bee09d27e3e"
21
21
  }