@steedos-widgets/amis-lib 6.3.12-beta.20 → 6.3.12-beta.21

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/dist/index.esm.js CHANGED
@@ -6144,7 +6144,6 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6144
6144
  if (!ctx) {
6145
6145
  ctx = {};
6146
6146
  }
6147
- console.log("getObjectFieldsFilterBarSchema===", ctx);
6148
6147
  const searchableFields = ctx.searchable_fields;
6149
6148
  const autoOpenFilter = !!ctx.auto_open_filter;
6150
6149
  const btnSearchId = "btn_filter_form_search_" + new Date().getTime();
@@ -6315,6 +6314,20 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
6315
6314
  let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, "service", {name: "service_object_table_crud"});
6316
6315
  crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});
6317
6316
  `;
6317
+ /**
6318
+ 给lookup字段配置filter_form_data时可以配置为amis变量,也可以配置为事态key-value键值对象值:
6319
+ ```
6320
+ "filter_form_data": "${selectedPublicGroupFilterFormData|toJson}"
6321
+ ```
6322
+ or
6323
+ ```
6324
+ "filter_form_data": {
6325
+ "public_group_ids": [
6326
+ "67addbef39f9a4503789b38d"
6327
+ ]
6328
+ }
6329
+ ```
6330
+ */
6318
6331
  const filterFormValues = ctx.filter_form_data;
6319
6332
  const dataProviderInited = `
6320
6333
  const searchableFields = ${JSON.stringify(searchableFields)};
@@ -11824,15 +11837,42 @@ function getLookupSapceUserTreeSchema(isMobile){
11824
11837
  {
11825
11838
  "actionType": "custom",
11826
11839
  "script": `
11827
- console.log("===__searchable__organizations_parents===",event.data);
11840
+ console.log("lookup-tree-event.data:",event.data);
11841
+ console.log("lookup-tree-event.data.value.label:",event.data.value.label);
11842
+ console.log("lookup-tree-event.data.value.value:",event.data.value.value);
11828
11843
  const scope = event.context.scoped;
11829
- var filterFormValues={
11844
+ var treeFilterFormValues={
11830
11845
  "__searchable__organizations_parents":event.data.value.value
11831
11846
  }
11832
- var listView = scope.parent.getComponents().find(function(n){
11833
- return n.props.type === "crud";
11847
+ // var listView = scope.parent.getComponents().find(function(n){
11848
+ // return n.props.type === "crud";
11849
+ // });
11850
+ // listView.handleFilterSubmit(Object.assign({}, filterFormValues));
11851
+ let __lookupField = event.data.__lookupField;
11852
+ let crud = SteedosUI.getClosestAmisComponentByType(scope, "crud");
11853
+ var filterForm = scope.getComponents().find(function(n){
11854
+ return n.props.type === "form";
11834
11855
  });
11835
- listView.handleFilterSubmit(Object.assign({}, filterFormValues));
11856
+ let filterFormValues = filterForm.getData();
11857
+ filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //只取当层数据域中数据,去除__super层数据
11858
+ const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});
11859
+ Object.assign(changedFilterFormValues, treeFilterFormValues);
11860
+ // 同步__changedFilterFormValues中的值
11861
+ let __changedFilterFormValuesKey = "__changedFilterFormValues";
11862
+ if(__lookupField){
11863
+ let lookupTag = "__lookup__" + __lookupField.name + "__" + __lookupField.reference_to;
11864
+ if(__lookupField.reference_to_field){
11865
+ lookupTag += "__" + __lookupField.reference_to_field;
11866
+ }
11867
+ __changedFilterFormValuesKey += lookupTag;
11868
+ }
11869
+ if(crud){
11870
+ let crudData = crud.getData();
11871
+ crudData[__changedFilterFormValuesKey] = changedFilterFormValues;
11872
+ crud.setData(crudData);
11873
+ }
11874
+ filterForm.setData(treeFilterFormValues);
11875
+ filterForm.handleFormSubmit(event);
11836
11876
  `
11837
11877
  },
11838
11878
  {
@@ -12340,7 +12380,6 @@ async function lookupToAmisPicker(field, readonly, ctx){
12340
12380
  }
12341
12381
  pickerSchema.footerToolbar = refObjectConfig.enable_tree ? [] : getObjectFooterToolbar(refObjectConfig,ctx.formFactor,{isLookup: true});
12342
12382
  if (ctx.filterVisible !== false) {
12343
- console.log("lookupToAmisPicker===pickerSchema.filter===field===", field);
12344
12383
  pickerSchema.filter = await getObjectFilter(refObjectConfig, fields, {
12345
12384
  ...ctx,
12346
12385
  isLookup: true,