@steedos-widgets/amis-object 1.3.15 → 1.3.16
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/amis/AmisInputTable.d.ts +1 -1
- package/dist/amis-object.cjs.css +0 -4
- package/dist/amis-object.cjs.js +508 -179
- package/dist/amis-object.cjs.js.map +1 -1
- package/dist/amis-object.esm.css +0 -4
- package/dist/amis-object.esm.js +508 -179
- package/dist/amis-object.esm.js.map +1 -1
- package/dist/amis-object.umd.css +0 -4
- package/dist/amis-object.umd.js +99 -69
- package/dist/amis-object.umd.js.map +1 -1
- package/dist/assets.json +21 -21
- package/dist/meta.js +77 -12
- package/package.json +3 -3
package/dist/amis-object.umd.js
CHANGED
|
@@ -177,7 +177,7 @@ filters=field.filters;requestAdaptor="\n var term = api.query.term;\n
|
|
|
177
177
|
* @Date: 2023-03-22 09:31:21
|
|
178
178
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
179
179
|
* @LastEditTime: 2023-11-05 16:31:38
|
|
180
|
-
*/function _getSelectUserSchema(){_getSelectUserSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee61(field,readonly,ctx){var amisSchema,refUsersObjectConfig,refOrgsObjectConfig,onEvent;return _regeneratorRuntime().wrap(function _callee61$(_context61){while(1){switch(_context61.prev=_context61.next){case 0:if(field){_context61.next=2;break;}return _context61.abrupt("return",{});case 2:if(!ctx){ctx={};}amisSchema={"type":getAmisStaticFieldType('select',readonly)};if(!readonly){_context61.next=10;break;}_context61.next=7;return getLookupTpl(field,ctx);case 7:amisSchema.tpl=_context61.sent;_context61.next=38;break;case 10:_context61.next=12;return _getUISchema2(refUsersObjectName);case 12:refUsersObjectConfig=_context61.sent;ctx.usersSort=getRefListViewSort$1(refUsersObjectConfig);_context61.next=16;return _getUISchema2(refOrgsObjectName);case 16:refOrgsObjectConfig=_context61.sent;ctx.orgsSort=getRefListViewSort$1(refOrgsObjectConfig);_context61.t0=Object;_context61.t1=amisSchema;_context61.t2=field.multiple;_context61.t3=field.searchable;_context61.next=24;return getSource$1(field,ctx);case 24:_context61.t4=_context61.sent;_context61.next=27;return getDeferApi$1(field,ctx);case 27:_context61.t5=_context61.sent;_context61.next=30;return getSearchApi(field,ctx);case 30:_context61.t6=_context61.sent;_context61.t7={"multiple":_context61.t2,"searchable":_context61.t3,"selectMode":"associated","leftMode":"tree","extractValue":true,"clearable":true,"source":_context61.t4,"deferApi":_context61.t5,"searchApi":_context61.t6};_context61.t0.assign.call(_context61.t0,_context61.t1,_context61.t7);if(field.multiple){// 单选时如果配置joinValues为false,清空字段值会把字段值设置为空数组,这是amis人员单选功能的bug,普通的select没有这个问题
|
|
180
|
+
*/function _getSelectUserSchema(){_getSelectUserSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee61(field,readonly,ctx){var amisSchema,refUsersObjectConfig,refOrgsObjectConfig,onEvent;return _regeneratorRuntime().wrap(function _callee61$(_context61){while(1){switch(_context61.prev=_context61.next){case 0:if(field){_context61.next=2;break;}return _context61.abrupt("return",{});case 2:if(!ctx){ctx={};}amisSchema={"type":getAmisStaticFieldType$1('select',readonly)};if(!readonly){_context61.next=10;break;}_context61.next=7;return getLookupTpl(field,ctx);case 7:amisSchema.tpl=_context61.sent;_context61.next=38;break;case 10:_context61.next=12;return _getUISchema2(refUsersObjectName);case 12:refUsersObjectConfig=_context61.sent;ctx.usersSort=getRefListViewSort$1(refUsersObjectConfig);_context61.next=16;return _getUISchema2(refOrgsObjectName);case 16:refOrgsObjectConfig=_context61.sent;ctx.orgsSort=getRefListViewSort$1(refOrgsObjectConfig);_context61.t0=Object;_context61.t1=amisSchema;_context61.t2=field.multiple;_context61.t3=field.searchable;_context61.next=24;return getSource$1(field,ctx);case 24:_context61.t4=_context61.sent;_context61.next=27;return getDeferApi$1(field,ctx);case 27:_context61.t5=_context61.sent;_context61.next=30;return getSearchApi(field,ctx);case 30:_context61.t6=_context61.sent;_context61.t7={"multiple":_context61.t2,"searchable":_context61.t3,"selectMode":"associated","leftMode":"tree","extractValue":true,"clearable":true,"source":_context61.t4,"deferApi":_context61.t5,"searchApi":_context61.t6};_context61.t0.assign.call(_context61.t0,_context61.t1,_context61.t7);if(field.multiple){// 单选时如果配置joinValues为false,清空字段值会把字段值设置为空数组,这是amis人员单选功能的bug,普通的select没有这个问题
|
|
181
181
|
Object.assign(amisSchema,{"joinValues":false});}if(typeof amisSchema.searchable!=="boolean"){amisSchema.searchable=true;}if(ctx.value){amisSchema.value=ctx.value;}onEvent=field.onEvent;if(onEvent){amisSchema.onEvent=onEvent;}case 38:return _context61.abrupt("return",amisSchema);case 39:case"end":return _context61.stop();}}},_callee61);}));return _getSelectUserSchema.apply(this,arguments);}var globalTag='__G_L_O_B_A_L__';var getParentPath=function getParentPath(path){var pathArr;if(typeof path==='string'){pathArr=path.split('.');if(pathArr.length===1){return'#';}pathArr.pop();return pathArr.join('.');}return'#';};var getValueByPath=function getValueByPath(formData,path){if(path==='#'||!path){return formData||{};}else if(typeof path==='string'){return _$1.get(formData,path);}else{console.error('path has to be a string');}};var isExpression$1=function isExpression$1(func){var pattern,reg1,reg2;if(typeof func!=='string'){return false;}pattern=/^{{(.+)}}$/;reg1=/^{{(function.+)}}$/;reg2=/^{{(.+=>.+)}}$/;if(typeof func==='string'&&func.match(pattern)&&!func.match(reg1)&&!func.match(reg2)){return true;}return false;};var getMoment$1=function getMoment$1(){if(window.amisRequire){return window.amisRequire("moment");}else if(window.moment){return window.moment;}};var getGlobalNowData$1=function getGlobalNowData$1(){var now=new Date();var moment=getMoment$1();var today=moment().utc();today.set("hours",0);today.set("minutes",0);today.set("seconds",0);today.set("milliseconds",0);today=today.toDate();var timeNow=moment();timeNow.set("year",1970);timeNow.set("month",0);timeNow.set("date",1);timeNow.set("hours",timeNow.hours()+timeNow.utcOffset()/60);timeNow.set("seconds",0);timeNow.set("milliseconds",0);timeNow=timeNow.toDate();return{now:now,today:today,timeNow:timeNow};};var parseSingleExpression$1=function parseSingleExpression$1(func,formData,dataPath,global){var userSession=arguments.length>4&&arguments[4]!==undefined?arguments[4]:{};if(global){Object.assign(global,getGlobalNowData$1());}var error,funcBody,parent,parentPath,str;if(formData===void 0){formData={};}parentPath=getParentPath(dataPath);parent=getValueByPath(formData,parentPath)||{};if(typeof func==='string'){funcBody=func.substring(2,func.length-2);str="\n var $user=".concat(JSON.stringify(userSession),"; return ")+funcBody.replace(/\bformData\b/g,JSON.stringify(formData).replace(/\bglobal\b/g,globalTag)).replace(/\bglobal\b/g,JSON.stringify(global)).replace(new RegExp('\\b'+globalTag+'\\b','g'),'global').replace(/rootValue/g,JSON.stringify(parent));try{return Function(str)();}catch(_error){error=_error;console.log(error,func,dataPath);return func;}}else{return func;}};/*
|
|
182
182
|
* @Author: baozhoutao@steedos.com
|
|
183
183
|
* @Date: 2022-11-01 15:51:00
|
|
@@ -251,7 +251,7 @@ var buttons=getButtons(uiSchema,ctx);var listButtons=_$1__namespace.filter(butto
|
|
|
251
251
|
* 列表视图顶部第一行amisSchema
|
|
252
252
|
* @param {*} objectSchema 对象UISchema
|
|
253
253
|
* @returns amisSchema
|
|
254
|
-
*/function _getObjectFieldsFilterBarSchema(){_getObjectFieldsFilterBarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee65(objectSchema,ctx){var btnSearchId,filterFormSchema,keywordsSearchBoxName,onSearchScript,onCancelScript,dataProviderInited,onSearchableFieldsChangeScript;return _regeneratorRuntime().wrap(function _callee65$(_context65){while(1){switch(_context65.prev=_context65.next){case 0:if(!ctx){ctx={};}btnSearchId="btn_filter_form_search_"+new Date().getTime();_context65.next=4;return getObjectFieldsFilterFormSchema(ctx);case 4:filterFormSchema=_context65.sent;keywordsSearchBoxName=ctx.keywordsSearchBoxName||"__keywords";onSearchScript="\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n filterForm.handleFormSubmit(event);\n // var filterFormValues = filterForm.getValues();\n // var listView = scope.parent.parent.parent.getComponents().find(function(n){\n // return n.props.type === \"crud\";\n // });\n // const removedValues = {};\n // // \u8BBE\u7F6E\u641C\u7D22\u9879\u4E2D\u79FB\u9664\u641C\u7D22\u9879\u540E\uFF0CfilterFormValues\u672A\u628A\u5176\u5B57\u6BB5\u7684\u7A7A\u503C\u4FDD\u5B58\u4E3Aown property\uFF0C\u5373hasOwnProperty\u5C5E\u6027\u4E2D\n // // \u8FD9\u4F1A\u9020\u6210handleFilterSubmit\u65F6\u628A\u79FB\u9664\u6389\u7684\u641C\u7D22\u9879\u5B57\u6BB5\u4E4B\u524D\u7684\u503C\u52A0\u5230\u8FC7\u6EE4\u6761\u4EF6\u4E2D\n // for(var k in filterFormValues){\n // if(filterFormValues[k] === \"\" && !filterFormValues.hasOwnProperty(k)){\n // removedValues[k] = null;\n // }\n // }\n // listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));\n // \u70B9\u51FB\u641C\u7D22\u7684\u65F6\u5019\u81EA\u52A8\u6536\u8D77\u641C\u7D22\u680F\n let resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 500);\n }\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n let showFieldsFilter = false;\n const isMobile = window.innerWidth < 768;\n if(event.data.__from_fields_filter_settings_confirm){\n // \u5982\u679C\u662F\u4ECE\u8BBE\u7F6E\u641C\u7D22\u9879\u70B9\u51FB\u786E\u8BA4\u6309\u94AE\u89E6\u53D1\u7684\u641C\u7D22\u4E8B\u4EF6\u4E0D\u5E94\u8BE5\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = true;\n }\n else if(isMobile){\n // \u5982\u679C\u662F\u624B\u673A\u7AEF\uFF0C\u70B9\u51FB\u641C\u7D22\u540E\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = false;\n }\n else if(event.data.displayAs === \"split\") {\n // PC\u4E0A\u5206\u680F\u6A21\u5F0F\u4E0B\u7684\u5217\u8868\uFF0C\u59CB\u7EC8\u6309\u624B\u673A\u4E0A\u6548\u679C\u5904\u7406\uFF0C\u5373\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = false;\n }\n else if(window.innerHeight >= 1200){\n // \u9AD8\u5206\u8FA8\u7387\u5C4F\u5E55\uFF082k+\uFF09\uFF0C\u5217\u8868\u9AD8\u5EA6\u6BD4\u8F83\u9AD8\uFF0C\u6CA1\u5FC5\u8981\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = true;\n }\n filterService.setData({showFieldsFilter});\n // resizeWindow();//\u5DF2\u8FC1\u79FB\u5230\u641C\u7D22\u680F\u8868\u5355\u63D0\u4EA4\u4E8B\u4EF6\u4E2D\u6267\u884C\uFF0C\u56E0\u4E3A\u8868\u5355\u9879change\u540E\u4E5F\u4F1A\u89E6\u53D1\u8868\u5355\u63D0\u4EA4\u4E86\n // \u4F7F\u7528filterForm.getValues()\u7684\u8BDD\uFF0C\u5E76\u4E0D\u80FD\u62FF\u5230\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u9700\u8981\u4ECEevent.data\u4E2D\u53D6\u3002\n let filterFormValues = event.data;\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n crudService && crudService.setData({isFieldsFilterEmpty, showFieldsFilter});\n ";onCancelScript="\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n var filterFormValues = filterForm.getValues();\n var listView = scope.parent.parent.parent.getComponents().find(function(n){\n return n.props.type === \"crud\";\n });\n const removedValues = {};\n for(var k in filterFormValues){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n if(!event.data.isLookup){\n // \u5237\u65B0\u6D4F\u89C8\u5668\u540E\uFF0CfilterFormValues\u503C\u662F\u7A7A\u7684\uFF0C\u53EA\u80FD\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u51FA\u5E76\u91CD\u7F6E\u4E3A\u7A7A\u503C\n const listName = event.data.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n for(var k in localListViewProps){\n if(k !== \"__keywords\"){\n removedValues[k] = null;\n }\n }\n }\n }\n else{\n const keywordsSearchBoxName = \"".concat(keywordsSearchBoxName,"\";\n //lookup\u5B57\u6BB5\u4FDD\u7559\u5FEB\u901F\u641C\u7D22\u6761\u4EF6\n removedValues[keywordsSearchBoxName] = filterFormValues[keywordsSearchBoxName];\n }\n filterForm.reset();\n listView.handleFilterSubmit(removedValues);\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n filterService.setData({showFieldsFilter: !!!filterService.props.data.showFieldsFilter});\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 100);\n // \u79FB\u9664\u641C\u7D22\u6309\u94AE\u4E0A\u7684\u7EA2\u70B9\n let crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\n crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});\n ");dataProviderInited="\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const listName = data.listName;\n let searchableFieldsStoreKey = location.pathname + \"/searchable_fields\";\n if(isLookup){\n searchableFieldsStoreKey += \"/lookup/\" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + \"/\" + (data.context && data.context.userId);\n let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);\n if(defaultSearchableFields){\n defaultSearchableFields = defaultSearchableFields.split(\",\");\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n let listView = data.uiSchema.list_views[data.listName];\n const sFields = listView && listView.searchable_fields;\n if(sFields && sFields.length){\n defaultSearchableFields = _.map(sFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n defaultSearchableFields = _.map(\n _.sortBy(_.filter(_.values(data.uiSchema.fields), (field) => {\n return field.filterable;\n }), \"sort_no\"),\n \"name\"\n );\n }\n setData({ filterFormSearchableFields: defaultSearchableFields });\n if(isLookup){\n // looup\u5B57\u6BB5\u8FC7\u6EE4\u5668\u4E0D\u5728\u672C\u5730\u7F13\u5B58\u8BB0\u4F4F\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u521D\u59CB\u59CB\u7EC8\u9690\u85CF\u8FC7\u6EE4\u5668\n setData({ showFieldsFilter: false });\n }\n else{\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n let filterFormValues = _.pickBy(localListViewProps, function(n,k){\n return /^__searchable__/g.test(k);\n });\n if(!_.isEmpty(filterFormValues)){\n setData({ ...filterFormValues });\n const omitedEmptyFormValue = _.omitBy(filterFormValues, function(n){\n return _.isNil(n) \n || (_.isObject(n) && _.isEmpty(n)) \n || (_.isArray(n) && _.isEmpty(n.filter(function(item){return !_.isNil(item)})))\n || (_.isString(n) && n.length === 0);\n });\n // \u6709\u8FC7\u6EE4\u6761\u4EF6\u65F6\u53EA\u663E\u793A\u641C\u7D22\u6309\u94AE\u4E0A\u7684\u7EA2\u70B9\uFF0C\u4E0D\u81EA\u52A8\u5C55\u5F00\u641C\u7D22\u680F\n if(!_.isEmpty(omitedEmptyFormValue)){\n let crudService = SteedosUI.getRef(data.$scopeId).parent.getComponentById(\"service_listview_\" + data.objectName)\n crudService && crudService.setData({isFieldsFilterEmpty: false});\n // setData({ showFieldsFilter: true });//\u81EA\u52A8\u5C55\u5F00\u641C\u7D22\u680F\n }\n }\n }\n }\n ";onSearchableFieldsChangeScript="\n const data = context.props.data;\n const listName = data.listName;\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const value = data.fields;\n const scope = event.context.scoped;\n // \u8FD9\u91CC\u7684filterForm\u4E0D\u662Fname\u4E3A\"listview-filter-form\"\u7684\u5185\u90E8form\uFF0C\u800C\u662Fcrud\u81EA\u5E26\u7684filter form\n const filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n filterService.setData({ filterFormSearchableFields: value });\n let searchableFieldsStoreKey = location.pathname + \"/searchable_fields\";\n if(isLookup){\n searchableFieldsStoreKey += \"/lookup/\" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + \"/\" + (data.context && data.context.userId);\n localStorage.setItem(searchableFieldsStoreKey, value);\n\n // ===START===:\u5F53\u53D8\u66F4\u53EF\u641C\u7D22\u5B57\u6BB5\u65F6\uFF0C\u5982\u679C\u88AB\u79FB\u9664\u7684\u53EF\u641C\u7D22\u5B57\u6BB5\u5728\u672C\u5730\u5B58\u50A8\u4E2D\u5DF2\u7ECF\u5B58\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E2D\u5219\u5E94\u8BE5\u6E05\u9664\u672C\u5730\u5B58\u50A8\u4E2D\u76F8\u5173\u5B57\u6BB5\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n const searchableFields = data.fields;\n let preSearchableFields = data.__super.fields;\n if(typeof preSearchableFields === \"string\"){\n preSearchableFields = preSearchableFields.split(\",\");\n }\n const removedFields = _.difference(preSearchableFields, searchableFields);\n\n // const getClosestAmisComponentByType = function (scope, type, name) {\n // // \u9012\u5F52children\u627E\u5230listview-filter-form\n // let re = scope.getComponents().find(function (n) {\n // return n.props.type === type && n.props.name === name;\n // });\n // if (re) {\n // return re;\n // }\n // else {\n // if (scope.children && scope.children.length) {\n // for (let i = 0; i < scope.children.length; i++) {\n // re = getClosestAmisComponentByType(scope.children[i], type, name);\n // if (re) {\n // break;\n // }\n // }\n // return re;\n // }\n \n // }\n // }\n // // \u8FD9\u91CC\u7B2C\u4E8C\u5C42form\u624D\u662F\u771F\u6B63\u8981\u63D0\u4EA4\u5230crud\u8FC7\u6EE4\u6761\u4EF6\u7684form\n // filterInnerForm = getClosestAmisComponentByType(filterForm.context, \"form\", \"listview-filter-form\");\n\n const filterFormValues = filterForm.getValues();\n let removedKeys = [];\n _.each(filterFormValues, function(n,k){\n // __searchable__\u5F00\u5934\u7684\u4E0D\u5728searchableFields\u8303\u56F4\u5219\u6E05\u9664\u5176\u503C\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp(\"__searchable__.*\" + fieldName + \"$\").test(k);\n });\n if(isRemoved){\n removedKeys.push(k);\n }\n });\n const removedValues = {};\n removedKeys.forEach(function(key){\n removedValues[key] = null;\n });\n filterForm.setValues(removedValues);//\u8FD9\u91CC\u4F7F\u7528filterInnerForm\u4E5F\u53EF\u4EE5\n\n if(isLookup){\n return;\n }\n \n // \u5217\u8868\u89C6\u56FEcrud\u652F\u6301\u672C\u5730\u7F13\u5B58\uFF0C\u6240\u4EE5\u9700\u8981\u8FDB\u4E00\u6B65\u6E05\u9664\u6D4F\u89C8\u5668\u672C\u5730\u7F13\u5B58\u91CC\u9762\u7528\u6237\u5728\u53EF\u641C\u7D22\u9879\u4E2D\u79FB\u9664\u7684\u5B57\u6BB5\u503C\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n _.each(localListViewProps, function(n,k){\n // __searchable__\u5F00\u5934\u7684\u4E0D\u5728searchableFields\u8303\u56F4\u5219\u6E05\u9664\u5176\u503C\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp(\"__searchable__.*\" + fieldName + \"$\").test(k);\n });\n if(isRemoved){\n delete localListViewProps[k];\n }\n });\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));\n }\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 100)\n // ===END===\n ";return _context65.abrupt("return",{"type":"service","name":"service_listview_filter_form","data":{// "showFieldsFilter": false
|
|
254
|
+
*/function _getObjectFieldsFilterBarSchema(){_getObjectFieldsFilterBarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee65(objectSchema,ctx){var btnSearchId,filterFormSchema,keywordsSearchBoxName,onSearchScript,onCancelScript,dataProviderInited,onSearchableFieldsChangeScript;return _regeneratorRuntime().wrap(function _callee65$(_context65){while(1){switch(_context65.prev=_context65.next){case 0:if(!ctx){ctx={};}btnSearchId="btn_filter_form_search_"+new Date().getTime();_context65.next=4;return getObjectFieldsFilterFormSchema(ctx);case 4:filterFormSchema=_context65.sent;keywordsSearchBoxName=ctx.keywordsSearchBoxName||"__keywords";onSearchScript="\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n filterForm.handleFormSubmit(event);\n // var filterFormValues = filterForm.getValues();\n // var listView = scope.parent.parent.parent.getComponents().find(function(n){\n // return n.props.type === \"crud\";\n // });\n // const removedValues = {};\n // // \u8BBE\u7F6E\u641C\u7D22\u9879\u4E2D\u79FB\u9664\u641C\u7D22\u9879\u540E\uFF0CfilterFormValues\u672A\u628A\u5176\u5B57\u6BB5\u7684\u7A7A\u503C\u4FDD\u5B58\u4E3Aown property\uFF0C\u5373hasOwnProperty\u5C5E\u6027\u4E2D\n // // \u8FD9\u4F1A\u9020\u6210handleFilterSubmit\u65F6\u628A\u79FB\u9664\u6389\u7684\u641C\u7D22\u9879\u5B57\u6BB5\u4E4B\u524D\u7684\u503C\u52A0\u5230\u8FC7\u6EE4\u6761\u4EF6\u4E2D\n // for(var k in filterFormValues){\n // if(filterFormValues[k] === \"\" && !filterFormValues.hasOwnProperty(k)){\n // removedValues[k] = null;\n // }\n // }\n // listView.handleFilterSubmit(Object.assign({}, removedValues, filterFormValues));\n // \u70B9\u51FB\u641C\u7D22\u7684\u65F6\u5019\u81EA\u52A8\u6536\u8D77\u641C\u7D22\u680F\n let resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 500);\n }\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n let showFieldsFilter = false;\n const isMobile = window.innerWidth < 768;\n if(event.data.__from_fields_filter_settings_confirm){\n // \u5982\u679C\u662F\u4ECE\u8BBE\u7F6E\u641C\u7D22\u9879\u70B9\u51FB\u786E\u8BA4\u6309\u94AE\u89E6\u53D1\u7684\u641C\u7D22\u4E8B\u4EF6\u4E0D\u5E94\u8BE5\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = true;\n }\n else if(isMobile){\n // \u5982\u679C\u662F\u624B\u673A\u7AEF\uFF0C\u70B9\u51FB\u641C\u7D22\u540E\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = false;\n }\n else if(event.data.displayAs === \"split\") {\n // PC\u4E0A\u5206\u680F\u6A21\u5F0F\u4E0B\u7684\u5217\u8868\uFF0C\u59CB\u7EC8\u6309\u624B\u673A\u4E0A\u6548\u679C\u5904\u7406\uFF0C\u5373\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = false;\n }\n else if(window.innerHeight >= 1200){\n // \u9AD8\u5206\u8FA8\u7387\u5C4F\u5E55\uFF082k+\uFF09\uFF0C\u5217\u8868\u9AD8\u5EA6\u6BD4\u8F83\u9AD8\uFF0C\u6CA1\u5FC5\u8981\u81EA\u52A8\u5173\u95ED\u641C\u7D22\u680F\n showFieldsFilter = true;\n }\n filterService.setData({showFieldsFilter});\n // resizeWindow();//\u5DF2\u8FC1\u79FB\u5230\u641C\u7D22\u680F\u8868\u5355\u63D0\u4EA4\u4E8B\u4EF6\u4E2D\u6267\u884C\uFF0C\u56E0\u4E3A\u8868\u5355\u9879change\u540E\u4E5F\u4F1A\u89E6\u53D1\u8868\u5355\u63D0\u4EA4\u4E86\n // \u4F7F\u7528filterForm.getValues()\u7684\u8BDD\uFF0C\u5E76\u4E0D\u80FD\u62FF\u5230\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u9700\u8981\u4ECEevent.data\u4E2D\u53D6\u3002\n let filterFormValues = event.data;\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n crudService && crudService.setData({isFieldsFilterEmpty, showFieldsFilter});\n ";onCancelScript="\n doAction(\n {\n \"componentId\": 'service_".concat(ctx.crudId,"',\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": {\n \"__filterFormValues\": null\n }\n }\n }\n )\n const scope = event.context.scoped;\n var filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n var filterFormValues = filterForm.getValues();\n var listView = scope.parent.parent.parent.getComponents().find(function(n){\n return n.props.type === \"crud\";\n });\n const removedValues = {};\n for(var k in filterFormValues){\n if(/^__searchable__/.test(k)){\n removedValues[k] = null;\n }\n }\n if(!event.data.isLookup){\n // \u5237\u65B0\u6D4F\u89C8\u5668\u540E\uFF0CfilterFormValues\u503C\u662F\u7A7A\u7684\uFF0C\u53EA\u80FD\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u51FA\u5E76\u91CD\u7F6E\u4E3A\u7A7A\u503C\n const listName = event.data.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n for(var k in localListViewProps){\n if(k !== \"__keywords\"){\n removedValues[k] = null;\n }\n }\n }\n }\n else{\n const keywordsSearchBoxName = \"").concat(keywordsSearchBoxName,"\";\n //lookup\u5B57\u6BB5\u4FDD\u7559\u5FEB\u901F\u641C\u7D22\u6761\u4EF6\n removedValues[keywordsSearchBoxName] = filterFormValues[keywordsSearchBoxName];\n }\n filterForm.reset();\n setTimeout(()=>{\n listView.handleFilterSubmit(removedValues);\n }, 100); \n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n filterService.setData({showFieldsFilter: !!!filterService.props.data.showFieldsFilter});\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 100);\n // \u79FB\u9664\u641C\u7D22\u6309\u94AE\u4E0A\u7684\u7EA2\u70B9\n let crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\n crudService && crudService.setData({isFieldsFilterEmpty: true, showFieldsFilter: false});\n ");dataProviderInited="\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const listName = data.listName;\n let searchableFieldsStoreKey = location.pathname + \"/searchable_fields\";\n if(isLookup){\n searchableFieldsStoreKey += \"/lookup/\" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + \"/\" + (data.context && data.context.userId);\n let defaultSearchableFields = localStorage.getItem(searchableFieldsStoreKey);\n if(defaultSearchableFields){\n defaultSearchableFields = defaultSearchableFields.split(\",\");\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n let listView = data.uiSchema.list_views[data.listName];\n const sFields = listView && listView.searchable_fields;\n if(sFields && sFields.length){\n defaultSearchableFields = _.map(sFields, 'field');\n }\n }\n if(_.isEmpty(defaultSearchableFields) && data.uiSchema){\n defaultSearchableFields = _.map(\n _.sortBy(_.filter(_.values(data.uiSchema.fields), (field) => {\n return field.filterable;\n }), \"sort_no\"),\n \"name\"\n );\n }\n setData({ filterFormSearchableFields: defaultSearchableFields });\n if(isLookup){\n // looup\u5B57\u6BB5\u8FC7\u6EE4\u5668\u4E0D\u5728\u672C\u5730\u7F13\u5B58\u8BB0\u4F4F\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u521D\u59CB\u59CB\u7EC8\u9690\u85CF\u8FC7\u6EE4\u5668\n setData({ showFieldsFilter: false });\n }\n else{\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n let filterFormValues = _.pickBy(localListViewProps, function(n,k){\n return /^__searchable__/g.test(k);\n });\n if(!_.isEmpty(filterFormValues)){\n setData({ ...filterFormValues });\n const omitedEmptyFormValue = _.omitBy(filterFormValues, function(n){\n return _.isNil(n) \n || (_.isObject(n) && _.isEmpty(n)) \n || (_.isArray(n) && _.isEmpty(n.filter(function(item){return !_.isNil(item)})))\n || (_.isString(n) && n.length === 0);\n });\n // \u6709\u8FC7\u6EE4\u6761\u4EF6\u65F6\u53EA\u663E\u793A\u641C\u7D22\u6309\u94AE\u4E0A\u7684\u7EA2\u70B9\uFF0C\u4E0D\u81EA\u52A8\u5C55\u5F00\u641C\u7D22\u680F\n if(!_.isEmpty(omitedEmptyFormValue)){\n let crudService = SteedosUI.getRef(data.$scopeId).parent.getComponentById(\"service_listview_\" + data.objectName)\n crudService && crudService.setData({isFieldsFilterEmpty: false});\n // setData({ showFieldsFilter: true });//\u81EA\u52A8\u5C55\u5F00\u641C\u7D22\u680F\n }\n }\n }\n }\n ";onSearchableFieldsChangeScript="\n const data = context.props.data;\n const listName = data.listName;\n const objectName = data.objectName;\n const isLookup = data.isLookup;\n const value = data.fields;\n const scope = event.context.scoped;\n // \u8FD9\u91CC\u7684filterForm\u4E0D\u662Fname\u4E3A\"listview-filter-form\"\u7684\u5185\u90E8form\uFF0C\u800C\u662Fcrud\u81EA\u5E26\u7684filter form\n const filterForm = scope.parent.parent.getComponents().find(function(n){\n return n.props.type === \"form\";\n });\n const filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n });\n filterService.setData({ filterFormSearchableFields: value });\n let searchableFieldsStoreKey = location.pathname + \"/searchable_fields\";\n if(isLookup){\n searchableFieldsStoreKey += \"/lookup/\" + objectName;\n }\n searchableFieldsStoreKey = searchableFieldsStoreKey + \"/\" + (data.context && data.context.userId);\n localStorage.setItem(searchableFieldsStoreKey, value);\n\n // ===START===:\u5F53\u53D8\u66F4\u53EF\u641C\u7D22\u5B57\u6BB5\u65F6\uFF0C\u5982\u679C\u88AB\u79FB\u9664\u7684\u53EF\u641C\u7D22\u5B57\u6BB5\u5728\u672C\u5730\u5B58\u50A8\u4E2D\u5DF2\u7ECF\u5B58\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E2D\u5219\u5E94\u8BE5\u6E05\u9664\u672C\u5730\u5B58\u50A8\u4E2D\u76F8\u5173\u5B57\u6BB5\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n const searchableFields = data.fields;\n let preSearchableFields = data.__super.fields;\n if(typeof preSearchableFields === \"string\"){\n preSearchableFields = preSearchableFields.split(\",\");\n }\n const removedFields = _.difference(preSearchableFields, searchableFields);\n\n // const getClosestAmisComponentByType = function (scope, type, name) {\n // // \u9012\u5F52children\u627E\u5230listview-filter-form\n // let re = scope.getComponents().find(function (n) {\n // return n.props.type === type && n.props.name === name;\n // });\n // if (re) {\n // return re;\n // }\n // else {\n // if (scope.children && scope.children.length) {\n // for (let i = 0; i < scope.children.length; i++) {\n // re = getClosestAmisComponentByType(scope.children[i], type, name);\n // if (re) {\n // break;\n // }\n // }\n // return re;\n // }\n \n // }\n // }\n // // \u8FD9\u91CC\u7B2C\u4E8C\u5C42form\u624D\u662F\u771F\u6B63\u8981\u63D0\u4EA4\u5230crud\u8FC7\u6EE4\u6761\u4EF6\u7684form\n // filterInnerForm = getClosestAmisComponentByType(filterForm.context, \"form\", \"listview-filter-form\");\n\n const filterFormValues = filterForm.getValues();\n let removedKeys = [];\n _.each(filterFormValues, function(n,k){\n // __searchable__\u5F00\u5934\u7684\u4E0D\u5728searchableFields\u8303\u56F4\u5219\u6E05\u9664\u5176\u503C\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp(\"__searchable__.*\" + fieldName + \"$\").test(k);\n });\n if(isRemoved){\n removedKeys.push(k);\n }\n });\n const removedValues = {};\n removedKeys.forEach(function(key){\n removedValues[key] = null;\n });\n filterForm.setValues(removedValues);//\u8FD9\u91CC\u4F7F\u7528filterInnerForm\u4E5F\u53EF\u4EE5\n\n if(isLookup){\n return;\n }\n \n // \u5217\u8868\u89C6\u56FEcrud\u652F\u6301\u672C\u5730\u7F13\u5B58\uFF0C\u6240\u4EE5\u9700\u8981\u8FDB\u4E00\u6B65\u6E05\u9664\u6D4F\u89C8\u5668\u672C\u5730\u7F13\u5B58\u91CC\u9762\u7528\u6237\u5728\u53EF\u641C\u7D22\u9879\u4E2D\u79FB\u9664\u7684\u5B57\u6BB5\u503C\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n _.each(localListViewProps, function(n,k){\n // __searchable__\u5F00\u5934\u7684\u4E0D\u5728searchableFields\u8303\u56F4\u5219\u6E05\u9664\u5176\u503C\n let isRemoved = !!removedFields.find(function(fieldName){\n return new RegExp(\"__searchable__.*\" + fieldName + \"$\").test(k);\n });\n if(isRemoved){\n delete localListViewProps[k];\n }\n });\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(localListViewProps));\n }\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 100)\n // ===END===\n ";return _context65.abrupt("return",{"type":"service","name":"service_listview_filter_form","data":{// "showFieldsFilter": false
|
|
255
255
|
// "filterFormSearchableFields": ["name"],//默认可搜索项
|
|
256
256
|
// "filterFormValues": {"__searchable__name": "xxx"},//搜索项表单值
|
|
257
257
|
// "listViewId": "${listViewId}"
|
|
@@ -353,7 +353,7 @@ reg=new RegExp('_','g');standardIcon=icon&&icon.replace(reg,'-');gridBody=[];if(
|
|
|
353
353
|
// "tooltip": i18next.t('frontend_button_listview_control_tooltip'),
|
|
354
354
|
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${!isLookup}","buttons":[{"label":instance.t('frontend_button_listview_control_label'),"children":[getNewListviewButtonSchema(),getCopyListviewButtonSchema(),getRenameListviewButtonSchema(),getSetListviewShareButtonSchema(),getSetListviewFiltersButtonSchema(),getSetListviewColumnsButtonSchema(),getSetListviewSortButtonSchema(),getDeleteListviewButtonSchema()]}]};};var getDisplayAsButton=function getDisplayAsButton(objectName,showDisplayAs){var displayAs=Router$1.getTabDisplayAs(objectName);var buttons=[{"type":"button","label":instance.t('frontend_display_type_is_table'),"onClick":"const key = 'tab_"+objectName+"_display';localStorage.setItem(key, 'grid');let url = document.location.pathname; var urlSearch = new URLSearchParams(document.location.search); if(urlSearch.get(\"side_object\") && urlSearch.get(\"side_listview_id\")){url=`/app/${props.data.appId}/${urlSearch.get(\"side_object\")}/grid/${urlSearch.get(\"side_listview_id\")}`;}; props.env.jumpTo(url + '?display=grid');","rightIcon":displayAs!='split'?"fa fa-check":null,"rightIconClassName":"m-l-sm"},{"type":"button","label":instance.t('frontend_display_type_is_split'),"onClick":"const key = 'tab_"+objectName+"_display';localStorage.setItem(key, 'split');const url = document.location.pathname + '?display=split'; props.env.jumpTo(url);","rightIcon":displayAs==='split'?"fa fa-check":null,"rightIconClassName":"m-l-sm"}];displayAs==='split'?instance.t('frontend_display_type_is_split'):instance.t('frontend_display_type_is_table');return{"type":"dropdown-button","icon":"fa fa-table-columns",//TODO: dropdown-button只支持在按钮上方配置提示,对于上方按钮的点击会有影响,暂时去除,等待amis优化,https://github.com/baidu/amis/issues/7330
|
|
355
355
|
// "tooltip": `${i18next.t('frontend_display_as')} ${displayAsLabel}`,
|
|
356
|
-
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${window:innerWidth > 768 && !!!isLookup}","buttons":[{"label":instance.t('frontend_display_as'),"children":buttons}]};};var onFieldsFilterToggleScript="\nconst scope = event.context.scoped;\nconst filterForm = scope.getComponents().find(function(n){\n return n.props.type === \"form\";\n});\nconst filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n});\nlet toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;\nfilterService.setData({showFieldsFilter: toShowFieldsFilter});\nlet resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 1000);\n}\nresizeWindow();\n// \u624B\u673A\u7AEF\u5728\u663E\u793A\u641C\u7D22\u680F\u65F6\u9690\u85CFcrud\u4E0A\u7684\u5237\u65B0\u6309\u94AE\uFF0C\u56E0\u4E3A\u70B9\u51FB\u540Ecrud\u9AD8\u5EA6\u663E\u793A\u6709\u95EE\u9898\nlet crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\ncrudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});\n// if(filterService.props.data.showFieldsFilter){\n// if(isMobile){\n// // \u624B\u673A\u4E0A\u53EA\u80FD\u901A\u8FC7\u53D6\u6D88\u6309\u94AE\u6765\u5173\u95ED\u641C\u7D22\u680F\n// return;\n// }\n// let buttonCancel = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"button\", { \n// direction: \"down\", \n// name: \"btn_filter_form_cancel\" \n// });\n// buttonCancel.props.dispatchEvent('click', {}).then(function(){\n// resizeWindow();\n// });\n// }\n// else{\n// if(isMobile){\n// // \u624B\u673A\u7AEF\u5728\u663E\u793A\u641C\u7D22\u680F\u65F6\u9690\u85CFcrud\u4E0A\u7684\u5237\u65B0\u6309\u94AE\uFF0C\u56E0\u4E3A\u70B9\u51FB\u540Ecrud\u9AD8\u5EA6\u663E\u793A\u6709\u95EE\u9898\n// let crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\n// crudService && crudService.setData({showFieldsFilter: true});\n// }\n// }\n";function getObjectHeaderQuickSearchBox(mainObject,fields,formFactor){var _ref11=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{},_ref11$isLookup=_ref11.isLookup,isLookup=_ref11$isLookup===void 0?false:_ref11$isLookup,_ref11$keywordsSearch=_ref11.keywordsSearchBoxName,keywordsSearchBoxName=_ref11$keywordsSearch===void 0?"__keywords":_ref11$keywordsSearch;var searchableFieldsLabel=[];_.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFieldsLabel.push(field.label);}});var listViewPropsStoreKey=location.pathname+"/crud";var localListViewProps=sessionStorage.getItem(listViewPropsStoreKey);var crudKeywords="";if(localListViewProps&&!isLookup){localListViewProps=JSON.parse(localListViewProps);crudKeywords=localListViewProps&&localListViewProps.__keywords||"";}return{"type":"tooltip-wrapper","id":"steedos_crud_toolbar_quick_search","align":"right","title":"","content":"可搜索字段:"+searchableFieldsLabel.join(","),"placement":"bottom","tooltipTheme":"dark","trigger":"click","className":formFactor!=='SMALL'?"mr-1":'',"visible":!!searchableFieldsLabel.length,"body":[{"type":"search-box","name":keywordsSearchBoxName,"placeholder":"搜索此列表","value":crudKeywords,"clearable":true,"clearAndSubmit":true,"searchImediately":false,"onEvent":{"
|
|
356
|
+
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${window:innerWidth > 768 && !!!isLookup}","buttons":[{"label":instance.t('frontend_display_as'),"children":buttons}]};};var onFieldsFilterToggleScript="\nconst scope = event.context.scoped;\nconst filterForm = scope.getComponents().find(function(n){\n return n.props.type === \"form\";\n});\nconst filterService = filterForm.context.getComponents().find(function(n){\n return n.props.type === \"service\";\n});\nlet toShowFieldsFilter = !!!filterService.props.data.showFieldsFilter;\nfilterService.setData({showFieldsFilter: toShowFieldsFilter});\nlet resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 1000);\n}\nresizeWindow();\n// \u624B\u673A\u7AEF\u5728\u663E\u793A\u641C\u7D22\u680F\u65F6\u9690\u85CFcrud\u4E0A\u7684\u5237\u65B0\u6309\u94AE\uFF0C\u56E0\u4E3A\u70B9\u51FB\u540Ecrud\u9AD8\u5EA6\u663E\u793A\u6709\u95EE\u9898\nlet crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\ncrudService && crudService.setData({showFieldsFilter: toShowFieldsFilter});\n// if(filterService.props.data.showFieldsFilter){\n// if(isMobile){\n// // \u624B\u673A\u4E0A\u53EA\u80FD\u901A\u8FC7\u53D6\u6D88\u6309\u94AE\u6765\u5173\u95ED\u641C\u7D22\u680F\n// return;\n// }\n// let buttonCancel = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"button\", { \n// direction: \"down\", \n// name: \"btn_filter_form_cancel\" \n// });\n// buttonCancel.props.dispatchEvent('click', {}).then(function(){\n// resizeWindow();\n// });\n// }\n// else{\n// if(isMobile){\n// // \u624B\u673A\u7AEF\u5728\u663E\u793A\u641C\u7D22\u680F\u65F6\u9690\u85CFcrud\u4E0A\u7684\u5237\u65B0\u6309\u94AE\uFF0C\u56E0\u4E3A\u70B9\u51FB\u540Ecrud\u9AD8\u5EA6\u663E\u793A\u6709\u95EE\u9898\n// let crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\n// crudService && crudService.setData({showFieldsFilter: true});\n// }\n// }\n";function getObjectHeaderQuickSearchBox(mainObject,fields,formFactor){var _ref11=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{},_ref11$isLookup=_ref11.isLookup,isLookup=_ref11$isLookup===void 0?false:_ref11$isLookup,_ref11$keywordsSearch=_ref11.keywordsSearchBoxName,keywordsSearchBoxName=_ref11$keywordsSearch===void 0?"__keywords":_ref11$keywordsSearch,crudId=_ref11.crudId;var searchableFieldsLabel=[];_.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFieldsLabel.push(field.label);}});var listViewPropsStoreKey=location.pathname+"/crud";var localListViewProps=sessionStorage.getItem(listViewPropsStoreKey);var crudKeywords="";if(localListViewProps&&!isLookup){localListViewProps=JSON.parse(localListViewProps);crudKeywords=localListViewProps&&localListViewProps.__keywords||"";}return{"type":"tooltip-wrapper","id":"steedos_crud_toolbar_quick_search","align":"right","title":"","content":"可搜索字段:"+searchableFieldsLabel.join(","),"placement":"bottom","tooltipTheme":"dark","trigger":"click","className":formFactor!=='SMALL'?"mr-1":'',"visible":!!searchableFieldsLabel.length,"body":[{"type":"search-box","name":keywordsSearchBoxName,"placeholder":"搜索此列表","value":crudKeywords,"clearable":true,"clearAndSubmit":true,"searchImediately":false,"onEvent":{"change":{"actions":[{"actionType":"custom","script":"\n doAction(\n {\n \"componentId\": 'service_".concat(crudId,"',\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": {\n \"__serachBoxValues\": event.data\n }\n }\n }\n )\n ")}]}}}]};}function getObjectHeaderToolbar(mainObject,fields,formFactor){var _ref12=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{},_ref12$showDisplayAs=_ref12.showDisplayAs,showDisplayAs=_ref12$showDisplayAs===void 0?false:_ref12$showDisplayAs,_ref12$hiddenCount=_ref12.hiddenCount,hiddenCount=_ref12$hiddenCount===void 0?false:_ref12$hiddenCount,headerToolbarItems=_ref12.headerToolbarItems,crudId=_ref12.crudId,_ref12$filterVisible=_ref12.filterVisible,filterVisible=_ref12$filterVisible===void 0?true:_ref12$filterVisible,_ref12$isLookup=_ref12.isLookup,isLookup=_ref12$isLookup===void 0?false:_ref12$isLookup,keywordsSearchBoxName=_ref12.keywordsSearchBoxName;// console.log(`getObjectHeaderToolbar====>`, filterVisible)
|
|
357
357
|
// console.log(`getObjectHeaderToolbar`, mainObject)
|
|
358
358
|
var isMobile=window.innerWidth<768;if(isMobile){showDisplayAs=false;}var toolbarCount;if(!hiddenCount){toolbarCount={"type":"tpl","tpl":"${count} "+instance.t('frontend_record_sum')};}var toolbarReloadButton;if(formFactor==='SMALL'){// const onReloadScript = `
|
|
359
359
|
// const scope = event.context.scoped;
|
|
@@ -392,14 +392,14 @@ toolbarReloadButton={"type":"reload","align":"right",//TODO: dropdown-button只
|
|
|
392
392
|
"tooltip":"","tooltipPlacement":"top","className":"bg-white p-2 rounded border-gray-300 text-gray-500"};}var toolbarFilter;if(filterVisible){toolbarFilter={"label":instance.t('frontend_button_search_tooltip'),"icon":"fa fa-filter",//TODO: dropdown-button只支持在按钮上方配置提示,对于上方按钮的点击会有影响,为保持统一,暂时去除,等待amis优化,https://github.com/baidu/amis/issues/7330
|
|
393
393
|
// "tooltip": i18next.t('frontend_button_search_tooltip'),
|
|
394
394
|
// "tooltipPlacement": "top",
|
|
395
|
-
"type":"button","badge":{"offset":[-5,1],"size":8,"animation":true,"visibleOn":"${isFieldsFilterEmpty == false && isLookup != true}"},"align":"right","className":"bg-white p-2 rounded border-gray-300 text-gray-500","onEvent":{"click":{"actions":[{"actionType":"custom","script":onFieldsFilterToggleScript}]}},"id":"steedos_crud_toolbar_filter"};}var toolbarDisplayAsButton=getDisplayAsButton(mainObject===null||mainObject===void 0?void 0:mainObject.name);var toolbarDQuickSearchBox=getObjectHeaderQuickSearchBox(mainObject,fields,formFactor,{isLookup:isLookup,keywordsSearchBoxName:keywordsSearchBoxName});// toolbars返回的数组元素不可以是空对象{},比如hiddenCount ? {} : {"type": "tpl",...},因为空对象最终还是会生成一个空的.antd-Crud-toolbar-item dom
|
|
395
|
+
"type":"button","badge":{"offset":[-5,1],"size":8,"animation":true,"visibleOn":"${isFieldsFilterEmpty == false && isLookup != true}"},"align":"right","className":"bg-white p-2 rounded border-gray-300 text-gray-500","onEvent":{"click":{"actions":[{"actionType":"custom","script":onFieldsFilterToggleScript}]}},"id":"steedos_crud_toolbar_filter"};}var toolbarDisplayAsButton=getDisplayAsButton(mainObject===null||mainObject===void 0?void 0:mainObject.name);var toolbarDQuickSearchBox=getObjectHeaderQuickSearchBox(mainObject,fields,formFactor,{isLookup:isLookup,keywordsSearchBoxName:keywordsSearchBoxName,crudId:crudId});// toolbars返回的数组元素不可以是空对象{},比如hiddenCount ? {} : {"type": "tpl",...},因为空对象最终还是会生成一个空的.antd-Crud-toolbar-item dom
|
|
396
396
|
// 当出现空的.antd-Crud-toolbar-item dom时会影响toolbar元素的maring-right css样式计算,如果有动态需要应该加到动态数组变量toolbars中
|
|
397
397
|
var toolbars=[];if(formFactor==='SMALL'){if(toolbarCount){toolbars.push(toolbarCount);}if(toolbarFilter){toolbars.push(toolbarFilter);}toolbars.push(toolbarReloadButton);toolbars.push(toolbarDisplayAsButton);toolbars.push(toolbarDQuickSearchBox);return[].concat(_toConsumableArray(headerToolbarItems||[]),toolbars);}else{var _mainObject$permissio;if(toolbarCount){toolbars.push(toolbarCount);}if(toolbarFilter){toolbars.push(toolbarFilter);}toolbars.push(toolbarReloadButton);toolbars.push(toolbarDisplayAsButton);if(mainObject!==null&&mainObject!==void 0&&(_mainObject$permissio=mainObject.permissions)!==null&&_mainObject$permissio!==void 0&&_mainObject$permissio.allowCreateListViews){toolbars.push(getSettingListviewToolbarButtonSchema());}toolbars.push(toolbarDQuickSearchBox);return[].concat(_toConsumableArray(headerToolbarItems||[]),["bulkActions"],toolbars);}}function getObjectFooterToolbar(mainObject,formFactor,options){// crud card模式与table模式两种情况下showPageInput默认值不一样,所以需要显式设置为false
|
|
398
398
|
if(formFactor==='SMALL'){// return [
|
|
399
399
|
// "load-more",
|
|
400
400
|
// ]
|
|
401
401
|
if(options.displayAs==='split'){return["switch-per-page",{"type":"pagination","maxButtons":5,"showPageInput":false}];}else{return[// "statistics",
|
|
402
|
-
{"type":"pagination","maxButtons":5,"showPageInput":false}];}}else{if(options&&options.isRelated){return["statistics",{"type":"pagination","maxButtons":10,"showPageInput":false}];}else{var no_pagination=mainObject.paging&&mainObject.paging.enabled===false;var is_lookup=options.isLookup;var commonConfig=["statistics",{"type":"pagination","maxButtons":10,"showPageInput":false}];if(no_pagination&&is_lookup){return commonConfig;}else{return["switch-per-page"].concat(commonConfig);}}}}function getObjectFilter(_x72,_x73,_x74){return _getObjectFilter.apply(this,arguments);}function _getObjectFilter(){_getObjectFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee71(objectSchema,fields,options){var fieldsFilterBarSchema,onSubmitSuccScript;return _regeneratorRuntime().wrap(function _callee71$(_context71){while(1){switch(_context71.prev=_context71.next){case 0:_context71.next=2;return getObjectListHeaderFieldsFilterBar(objectSchema,null,options);case 2:fieldsFilterBarSchema=_context71.sent;onSubmitSuccScript="\n let isLookup = event.data.isLookup;\n if(isLookup){\n return;\n }\n // \u5217\u8868\u641C\u7D22\u680F\u5B57\u6BB5\u503C\u53D8\u66F4\u540E\u7ACB\u523B\u89E6\u53D1\u63D0\u4EA4\u8868\u5355\u6267\u884Ccrud\u641C\u7D22\uFF0C\u6240\u4EE5\u8FD9\u91CC\u9700\u8981\u989D\u5916\u91CD\u7B97crud\u9AD8\u5EA6\u53CA\u7B5B\u9009\u6309\u94AE\u7EA2\u8272\u661F\u53F7\u56FE\u6807\u663E\u793A\u9690\u85CF\n let resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 1000);\n }\n resizeWindow();\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, \"form\");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"service\");\n // \u4F7F\u7528event.data\u7684\u8BDD\uFF0C\u5E76\u4E0D\u80FD\u62FF\u5230\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u9700\u8981\u4ECEfilterFormService\u4E2D\u53D6\u3002\n let filterFormValues = filterFormService.getData()\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n crudService && crudService.setData({isFieldsFilterEmpty});\n ";return _context71.abrupt("return",{"title":"","submitText":"","className":"","debug":false,"mode":"normal","wrapWithPanel":false,"body":[fieldsFilterBarSchema],"onEvent":{"submitSucc":{"actions":[{"actionType":"custom","script":onSubmitSuccScript}]}}});case 5:case"end":return _context71.stop();}}},_callee71);}));return _getObjectFilter.apply(this,arguments);}function getSource(_x75,_x76){return _getSource.apply(this,arguments);}function _getSource(){_getSource=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee72(field,ctx){var refObjectName,data,defaultValueOptionsData,valueField,requestAdaptor,adaptor;return _regeneratorRuntime().wrap(function _callee72$(_context72){while(1){switch(_context72.prev=_context72.next){case 0:// data.query 最终格式 "{ \tleftOptions:organizations(filters: {__filters}){value:_id,label:name,children}, children:organizations(filters: {__filters}){ref:_id,children}, defaultValueOptions:space_users(filters: {__options_filters}){user,name} }"
|
|
402
|
+
{"type":"pagination","maxButtons":5,"showPageInput":false}];}}else{if(options&&options.isRelated){return["statistics",{"type":"pagination","maxButtons":10,"showPageInput":false}];}else{var no_pagination=mainObject.paging&&mainObject.paging.enabled===false;var is_lookup=options.isLookup;var commonConfig=["statistics",{"type":"pagination","maxButtons":10,"showPageInput":false}];if(no_pagination&&is_lookup){return commonConfig;}else{return["switch-per-page"].concat(commonConfig);}}}}function getObjectFilter(_x72,_x73,_x74){return _getObjectFilter.apply(this,arguments);}function _getObjectFilter(){_getObjectFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee71(objectSchema,fields,options){var fieldsFilterBarSchema,onSubmitSuccScript;return _regeneratorRuntime().wrap(function _callee71$(_context71){while(1){switch(_context71.prev=_context71.next){case 0:_context71.next=2;return getObjectListHeaderFieldsFilterBar(objectSchema,null,options);case 2:fieldsFilterBarSchema=_context71.sent;onSubmitSuccScript="\n let isLookup = event.data.isLookup;\n if(isLookup){\n return;\n }\n // \u5217\u8868\u641C\u7D22\u680F\u5B57\u6BB5\u503C\u53D8\u66F4\u540E\u7ACB\u523B\u89E6\u53D1\u63D0\u4EA4\u8868\u5355\u6267\u884Ccrud\u641C\u7D22\uFF0C\u6240\u4EE5\u8FD9\u91CC\u9700\u8981\u989D\u5916\u91CD\u7B97crud\u9AD8\u5EA6\u53CA\u7B5B\u9009\u6309\u94AE\u7EA2\u8272\u661F\u53F7\u56FE\u6807\u663E\u793A\u9690\u85CF\n let resizeWindow = function(){\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n setTimeout(()=>{\n window.dispatchEvent(new Event(\"resize\"))\n }, 1000);\n }\n resizeWindow();\n const scope = event.context.scoped;\n // let filterFormValues = event.data;\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, \"form\");\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"service\");\n // \u4F7F\u7528event.data\u7684\u8BDD\uFF0C\u5E76\u4E0D\u80FD\u62FF\u5230\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\uFF0C\u6240\u4EE5\u9700\u8981\u4ECEfilterFormService\u4E2D\u53D6\u3002\n let filterFormValues = filterFormService.getData()\n let isFieldsFilterEmpty = SteedosUI.isFilterFormValuesEmpty(filterFormValues);\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n crudService && crudService.setData({isFieldsFilterEmpty});\n ";return _context71.abrupt("return",{"title":"","submitText":"","className":"","debug":false,"mode":"normal","wrapWithPanel":false,"body":[fieldsFilterBarSchema],"onEvent":{"submitSucc":{"actions":[{"actionType":"custom","script":onSubmitSuccScript}]},"change":{"actions":[{"actionType":"custom","script":"\n doAction(\n {\n \"componentId\": 'service_".concat(options.crudId,"',\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": {\n \"__filterFormValues\": event.data\n }\n }\n }\n )\n ")}]}}});case 5:case"end":return _context71.stop();}}},_callee71);}));return _getObjectFilter.apply(this,arguments);}function getSource(_x75,_x76){return _getSource.apply(this,arguments);}function _getSource(){_getSource=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee72(field,ctx){var refObjectName,data,defaultValueOptionsData,valueField,requestAdaptor,adaptor;return _regeneratorRuntime().wrap(function _callee72$(_context72){while(1){switch(_context72.prev=_context72.next){case 0:// data.query 最终格式 "{ \tleftOptions:organizations(filters: {__filters}){value:_id,label:name,children}, children:organizations(filters: {__filters}){ref:_id,children}, defaultValueOptions:space_users(filters: {__options_filters}){user,name} }"
|
|
403
403
|
refObjectName=ctx.objectName;_context72.next=3;return getFindQuery({name:refObjectName},null,[{name:ctx.valueField,alias:"value"},{name:ctx.labelField,alias:"label"},{name:"children"}],{alias:"options",filters:"{__filters}"});case 3:data=_context72.sent;data.query=data.query.replace(/,count\:.+/,"}");// const childrenData = await graphql.getFindQuery({ name: refObjectName }, null, [{ name: ctx.valueField, alias: "ref" }], {
|
|
404
404
|
// alias: "children",
|
|
405
405
|
// filters: "{__filters}"
|
|
@@ -412,35 +412,36 @@ valueField="".concat(ctx.fieldNamePrefix).concat(valueField);}data.$value="$".co
|
|
|
412
412
|
refObjectName=ctx.objectName;_context73.next=3;return getFindQuery({name:"{__object_name}"},null,[],{alias:"options",// filters: "{__filters}",
|
|
413
413
|
queryOptions:"filters: {__filters}, sort: \"{__sort}\""});case 3:data=_context73.sent;// 传入的默认过滤条件,比如[["name", "contains", "三"]],将会作为基本过滤条件
|
|
414
414
|
filters=field.filters;if(typeof filters==="string"){filters=new Function("return ".concat(filters));filters=filters();}if(typeof filters==="function"){filters=filters(field);}data.query=data.query.replace(/,count\:.+/,"}");// 字段要根据请求参数动态生成,写死为__fields后续在发送适配器中替换
|
|
415
|
-
data.query=data.query.replace("{_id}","{{__fields}}");requestAdaptor="\n var dep = api.query.dep;\n var term = api.query.term;\n var filters;\n var objectName;\n var fields;\n var sort = \"\";\n if (dep) {\n objectName = \"".concat(refObjectName,"\";\n fields = \"_id,value:").concat(ctx.valueField,",label:").concat(ctx.labelField,",children\";\n filters = [['parent', '=', dep]];\n sort = \"").concat(ctx.sort,"\";\n }\n api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__fields}/g, fields).replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());\n return api;\n ");adaptor="\n if (api.query.dep) {\n // \u5C55\u5F00\u7EC4\u7EC7\u65F6\u624D\u9700\u8981\u6839\u636Echildren\u503C\u8BBE\u7F6Edefer\u5C5E\u6027\n const data = payload.data;\n data.options = data.options.map(function (option) {\n option.defer = !!(option.children && option.children.length);\n delete option.children;\n return option;\n });\n payload.data = data;\n }\n return payload;\n ";return _context73.abrupt("return",{"method":"post","url":getApi$2()+"&dep=${value}","requestAdaptor":requestAdaptor,"adaptor":adaptor,"data":data,"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}});case 12:case"end":return _context73.stop();}}},_callee73);}));return _getDeferApi.apply(this,arguments);}function getRefListViewSort(refObject){var listView=getLookupListView(refObject);var sort="";if(listView){sort=getListViewSort(listView);}return sort;}function lookupToAmisTreeSelect(_x79,_x80,_x81){return _lookupToAmisTreeSelect.apply(this,arguments);}function _lookupToAmisTreeSelect(){_lookupToAmisTreeSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee74(field,readonly,ctx){var amisSchema,refObjectConfig,onEvent;return _regeneratorRuntime().wrap(function _callee74$(_context74){while(1){switch(_context74.prev=_context74.next){case 0:if(field){_context74.next=2;break;}return _context74.abrupt("return",{});case 2:if(!ctx){ctx={};}amisSchema={"type":getAmisStaticFieldType('tree-select',readonly)};if(!readonly){_context74.next=10;break;}_context74.next=7;return getLookupTpl(field,ctx);case 7:amisSchema.tpl=_context74.sent;_context74.next=30;break;case 10:_context74.next=12;return _getUISchema2(ctx.objectName);case 12:refObjectConfig=_context74.sent;ctx.sort=getRefListViewSort(refObjectConfig);_context74.t0=Object;_context74.t1=amisSchema;_context74.t2=field.multiple;_context74.t3=field.searchable;_context74.next=20;return getSource(field,ctx);case 20:_context74.t4=_context74.sent;_context74.next=23;return getDeferApi(field,ctx);case 23:_context74.t5=_context74.sent;_context74.t6={"multiple":_context74.t2,"searchable":_context74.t3,"extractValue":true,"hideNodePathLabel":true,"clearable":true,"source":_context74.t4,"deferApi":_context74.t5};_context74.t0.assign.call(_context74.t0,_context74.t1,_context74.t6);if(field.multiple){// 单选时如果配置joinValues为false,清空字段值会把字段值设置为空数组,这是amis人员单选功能的bug,普通的select没有这个问题
|
|
416
|
-
Object.assign(amisSchema,{"joinValues":false});}if(typeof amisSchema.searchable!=="boolean"){amisSchema.searchable=true;}onEvent=field.onEvent;if(onEvent){amisSchema.onEvent=onEvent;}case 30:return _context74.abrupt("return",amisSchema);case 31:case"end":return _context74.stop();}}},_callee74);}));return _lookupToAmisTreeSelect.apply(this,arguments);}var keywordsSearchBoxName="__keywords_lookup";var
|
|
415
|
+
data.query=data.query.replace("{_id}","{{__fields}}");requestAdaptor="\n var dep = api.query.dep;\n var term = api.query.term;\n var filters;\n var objectName;\n var fields;\n var sort = \"\";\n if (dep) {\n objectName = \"".concat(refObjectName,"\";\n fields = \"_id,value:").concat(ctx.valueField,",label:").concat(ctx.labelField,",children\";\n filters = [['parent', '=', dep]];\n sort = \"").concat(ctx.sort,"\";\n }\n api.data.query = api.data.query.replace(/{__object_name}/g, objectName).replace(/{__fields}/g, fields).replace(/{__filters}/g, JSON.stringify(filters)).replace('{__sort}', sort.trim());\n return api;\n ");adaptor="\n if (api.query.dep) {\n // \u5C55\u5F00\u7EC4\u7EC7\u65F6\u624D\u9700\u8981\u6839\u636Echildren\u503C\u8BBE\u7F6Edefer\u5C5E\u6027\n const data = payload.data;\n data.options = data.options.map(function (option) {\n option.defer = !!(option.children && option.children.length);\n delete option.children;\n return option;\n });\n payload.data = data;\n }\n return payload;\n ";return _context73.abrupt("return",{"method":"post","url":getApi$2()+"&dep=${value}","requestAdaptor":requestAdaptor,"adaptor":adaptor,"data":data,"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}});case 12:case"end":return _context73.stop();}}},_callee73);}));return _getDeferApi.apply(this,arguments);}function getRefListViewSort(refObject){var listView=getLookupListView(refObject);var sort="";if(listView){sort=getListViewSort(listView);}return sort;}function lookupToAmisTreeSelect(_x79,_x80,_x81){return _lookupToAmisTreeSelect.apply(this,arguments);}function _lookupToAmisTreeSelect(){_lookupToAmisTreeSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee74(field,readonly,ctx){var amisSchema,refObjectConfig,onEvent;return _regeneratorRuntime().wrap(function _callee74$(_context74){while(1){switch(_context74.prev=_context74.next){case 0:if(field){_context74.next=2;break;}return _context74.abrupt("return",{});case 2:if(!ctx){ctx={};}amisSchema={"type":getAmisStaticFieldType$1('tree-select',readonly)};if(!readonly){_context74.next=10;break;}_context74.next=7;return getLookupTpl(field,ctx);case 7:amisSchema.tpl=_context74.sent;_context74.next=30;break;case 10:_context74.next=12;return _getUISchema2(ctx.objectName);case 12:refObjectConfig=_context74.sent;ctx.sort=getRefListViewSort(refObjectConfig);_context74.t0=Object;_context74.t1=amisSchema;_context74.t2=field.multiple;_context74.t3=field.searchable;_context74.next=20;return getSource(field,ctx);case 20:_context74.t4=_context74.sent;_context74.next=23;return getDeferApi(field,ctx);case 23:_context74.t5=_context74.sent;_context74.t6={"multiple":_context74.t2,"searchable":_context74.t3,"extractValue":true,"hideNodePathLabel":true,"clearable":true,"source":_context74.t4,"deferApi":_context74.t5};_context74.t0.assign.call(_context74.t0,_context74.t1,_context74.t6);if(field.multiple){// 单选时如果配置joinValues为false,清空字段值会把字段值设置为空数组,这是amis人员单选功能的bug,普通的select没有这个问题
|
|
416
|
+
Object.assign(amisSchema,{"joinValues":false});}if(typeof amisSchema.searchable!=="boolean"){amisSchema.searchable=true;}onEvent=field.onEvent;if(onEvent){amisSchema.onEvent=onEvent;}case 30:return _context74.abrupt("return",amisSchema);case 31:case"end":return _context74.stop();}}},_callee74);}));return _lookupToAmisTreeSelect.apply(this,arguments);}var keywordsSearchBoxName="__keywords_lookup";var getReferenceToFieldSchema=function getReferenceToFieldSchema(field,refObjectConfig){var referenceTo=field.reference_to;if(!referenceTo){return;}// 如果lookup 引用的对象未定义
|
|
417
|
+
if(!refObjectConfig)return null;var valueField=null;var valueFieldName=field.reference_to_field;if(!valueFieldName){valueFieldName=refObjectConfig.idFieldName||'_id';}if(valueFieldName==='_id'){valueField={name:'_id',label:'ID',type:'text',toggled:false};}else{valueField=refObjectConfig.fields[valueFieldName]||{name:valueFieldName};}return{objectName:referenceTo,valueField:valueField,labelField:refObjectConfig.fields[refObjectConfig.NAME_FIELD_KEY||'name'],NAME_FIELD_KEY:refObjectConfig.NAME_FIELD_KEY||'name'};};var getReferenceTo=/*#__PURE__*/function(){var _ref13=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee13(field){var referenceTo,refObjectConfig;return _regeneratorRuntime().wrap(function _callee13$(_context13){while(1){switch(_context13.prev=_context13.next){case 0:referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}_context13.next=4;return _getUISchema2(field.reference_to);case 4:refObjectConfig=_context13.sent;return _context13.abrupt("return",getReferenceToFieldSchema(field,refObjectConfig));case 6:case"end":return _context13.stop();}}},_callee13);}));return function getReferenceTo(_x82){return _ref13.apply(this,arguments);};}();function getReferenceToSync(field){var referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}var refObjectConfig=getUISchemaSync(field.reference_to);return getReferenceToFieldSchema(field,refObjectConfig);}function getLookupSapceUserTreeSchema(isMobile){var treeSchema={"type":"input-tree","className":"steedos-select-user-tree","inputClassName":"p-0","source":{"method":"post","url":"${context.rootUrl}/graphql","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"adaptor":"if (payload.data.treeCache == true) {\n return payload;\n }\n const records = payload.data.options;\n const treeRecords = [];\n const getChildren = (records, childrenIds) => {\n if (!childrenIds) {\n return;\n }\n const children = _.filter(records, (record) => {\n return _.includes(childrenIds, record.value)\n });\n _.each(children, (item) => {\n if (item.children) {\n item.children = getChildren(records, item.children)\n }\n })\n return children;\n }\n\n const getRoot = (records) => {\n for (var i = 0; i < records.length; i++){\n records[i].noParent = 0;\n if (!!records[i].parent) {\n biaozhi = 1\n for (var j = 0; j < records.length; j++){\n if (records[i].parent == records[j].value)\n biaozhi = 0;\n }\n if (biaozhi == 1) records[i].noParent = 1;\n } else records[i].noParent = 1;\n }\n }\n getRoot(records);\n console.log(records)\n\n _.each(records, (record) => {\n if (record.noParent ==1) {\n treeRecords.push(Object.assign({}, record, { children: getChildren(records, record.children) }));\n }\n });\n console.log(treeRecords)\n\n payload.data.options = treeRecords;\n payload.data.treeCache = true;\n return payload;\n ","requestAdaptor":"\n ","data":{"query":"{options:organizations(filters:[\"hidden\", \"!=\", true],sort:\"sort_no desc\"){value:_id label:name,parent,children}}"},"messages":{},"cache":300000},"onEvent":{"change":{"actions":[{"actionType":"custom","script":"\n const scope = event.context.scoped;\n var filterFormValues={\n \"__searchable__organizations_parents\":event.data.value.value\n }\n var listView = scope.parent.getComponents().find(function(n){\n return n.props.type === \"crud\";\n });\n listView.handleFilterSubmit(Object.assign({}, filterFormValues));\n "},{"actionType":"custom","script":" if(window.innerWidth < 768){ document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open'); }"}]}},"label":"","name":"organizations","multiple":false,"joinValues":false,"clearValueOnHidden":false,"fieldName":"organizations","hideRoot":true,"initiallyOpen":false,"extractValue":true,"onlyChildren":true,"treeContainerClassName":"no-border","showIcon":false,"enableNodePath":false,"autoCheckChildren":false,"searchable":true,"searchConfig":{"sticky":true,"placeholder":"查找部门"},"unfoldedLevel":2,"originPosition":"left-top"};var tree=[];if(isMobile){tree.push({type:"action",body:[{type:"action",body:[treeSchema],className:"h-full w-[240px]"}],className:"absolute inset-0 steedos-select-user-sidebar","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.querySelector('.steedos-select-user-sidebar').classList.remove('steedos-select-user-sidebar-open')"}]}},id:"steedos_crud_toolbar_select_user_tree"});tree.push({"type":"button","label":"组织","icon":"fa fa-sitemap","className":"bg-white p-2 rounded border-gray-300 text-gray-500","align":"left","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.querySelector('.steedos-select-user-sidebar').classList.toggle('steedos-select-user-sidebar-open')"}]}},"id":"steedos_crud_toolbar_organization_button"});}else{tree.push(treeSchema);}return tree;}function lookupToAmisPicker(_x83,_x84,_x85){return _lookupToAmisPicker.apply(this,arguments);}function _lookupToAmisPicker(){_lookupToAmisPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee75(field,readonly,ctx){var _fields;var referenceTo,refObjectConfig,tableFields,searchableFields,fieldsArr,isMobile,listView,listName,fields,sort,source,depend_on,sendOn,top,pickerSchema,labelFieldName,headerToolbarItems,isAllowCreate,isCreate,isHasFilters,new_button,data;return _regeneratorRuntime().wrap(function _callee75$(_context75){while(1){switch(_context75.prev=_context75.next){case 0:_context75.next=2;return getReferenceTo(field);case 2:referenceTo=_context75.sent;if(referenceTo){_context75.next=5;break;}return _context75.abrupt("return");case 5:_context75.next=7;return _getUISchema2(referenceTo.objectName);case 7:refObjectConfig=_context75.sent;ctx.idFieldName=refObjectConfig.idFieldName;ctx.objectName=refObjectConfig.name;tableFields=[];searchableFields=[];fieldsArr=[];isMobile=window.innerWidth<768;listView=getLookupListView(refObjectConfig);listName=listView&&listView.name;if(listView&&listView.columns){_$1__namespace.each(listView.columns,function(column){if(_$1__namespace.isString(column)&&refObjectConfig.fields[column]){fieldsArr.push(refObjectConfig.fields[column]);}else if(_$1__namespace.isObject(column)&&refObjectConfig.fields[column.field]){fieldsArr.push(Object.assign({},refObjectConfig.fields[column.field],{width:column.width,wrap:column.wrap}));}});}else{_$1__namespace.each(refObjectConfig.fields,function(field,field_name){if(field_name!='_id'&&!field.hidden){if(!_$1__namespace.has(field,"name")){field.name=field_name;}fieldsArr.push(field);}});// 没有视图权限时,取对象上前5个字段,按sort_no排序
|
|
417
418
|
fieldsArr=_$1__namespace.sortBy(fieldsArr,"sort_no").slice(0,5);}_$1__namespace.each(fieldsArr,function(field){if(!_$1__namespace.find(tableFields,function(f){return f.name===field.name;})){tableFields.push(field);}});_$1__namespace.each(refObjectConfig.fields,function(field){if(isFieldQuickSearchable(field,refObjectConfig.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fields=(_fields={},_defineProperty2(_fields,referenceTo.labelField.name,referenceTo.labelField),_defineProperty2(_fields,referenceTo.valueField.name,referenceTo.valueField),_fields);_$1__namespace.each(tableFields,function(tableField){if(!tableField.hidden){fields[tableField.name]=tableField;}});sort="";if(listView){sort=getListViewSort(listView);}_context75.next=25;return getApi$1(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 25:source=_context75.sent;if(source.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];_$1__namespace.each(field.depend_on,function(fName){depend_on.push("depend_on_".concat(fName,"=${").concat(fName,"}"));sendOn.push("this.".concat(fName));});if(depend_on.length>0){source.url="".concat(source.url,"?").concat(depend_on.join('&'));source.sendOn="".concat(sendOn.join(' && '));}}source.data.$term="$term";source.data.$self="$$";source.requestAdaptor="\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"".concat(sort,"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n let fieldValue;\n if(api.data.$term){\n filters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n fieldValue = selfData.value.split(',');\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }else{\n fieldValue = selfData.value;\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", fieldValue]];\n }\n }\n\n var searchableFilter = SteedosUI.getSearchFilter(selfData) || [];\n\n if(searchableFilter.length > 0){\n if(filters.length > 0 ){\n filters = [filters, 'and', searchableFilter];\n }else{\n filters = searchableFilter;\n }\n }\n\n if(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\n }\n }\n\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n filters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n filters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.").concat(keywordsSearchBoxName,", allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n filters.push(keywordsFilters);\n }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n if(fieldFilters && fieldFilters.length){\n filters.push(fieldFilters);\n }\n \n const inFilterForm = ").concat(ctx.inFilterForm,";\n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$self.__super.__super);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n\n const enable_tree = ").concat(refObjectConfig.enable_tree,";\n if(enable_tree){\n pageSize = 10000;\n }\n if(fieldValue && _.isArray(fieldValue) && fieldValue.length > pageSize){\n pageSize = fieldValue.length;\n }\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n ");source.adaptor="\n const enable_tree = ".concat(refObjectConfig.enable_tree,";\n const op = api.data.$self.op;\n if(!_.isEmpty(op)){\n // op\u4E0D\u4E3A\u7A7A\uFF0C\u8868\u793A\u5904\u4E8E\u5B57\u6BB5\u521D\u59CB\u7F16\u8F91\u72B6\u6001\uFF0C\u4E0D\u662F\u70B9\u51FB\u540E\u51FA\u73B0\u5F39\u7A97\u72B6\u6001\u3002\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528_.pick\u51FD\u6570\u8BA9payload\u53EA\u8FD4\u56DElabelField\u548CvalueField\uFF0C\u56E0\u4E3A\u5B57\u6BB5\u4E0A\u914D\u7F6E\u7684amis autoFill\u529F\u80FD\u53EF\u80FD\u4F9D\u8D56\u4E86\u5176\u4ED6\u5B57\u6BB5\n /*\n const rows = _.map(payload.data.rows, (item)=>{\n return _.pick(item, [\"").concat(referenceTo.labelField.name,"\", \"").concat(referenceTo.valueField.name,"\"]);\n })\n payload.data.rows = rows;\n */\n return payload;\n }\n if(enable_tree){\n const records = payload.data.rows;\n const treeRecords = [];\n\n const getParentIds = (records)=>{\n const ids = _.map(records, (item)=>{\n return item._id;\n });\n const parents = _.filter(records,(record)=>{\n return !record.parent || !_.includes(ids,record.parent);\n })\n const parentsIds = _.map(parents,(item)=>{\n return item._id;\n })\n return parentsIds;\n }\n const getChildren = (records, childrenIds)=>{\n if(!childrenIds){\n return;\n }\n const children = _.filter(records, (record)=>{\n return _.includes(childrenIds, record._id)\n });\n _.each(children, (item)=>{\n if(item.children){\n item.children = getChildren(records, item.children)\n }\n })\n return children;\n }\n\n const parentIds = getParentIds(records);\n _.each(records, (record)=>{\n if(!record.parent || _.includes(parentIds, record._id)){\n treeRecords.push(Object.assign({}, record, {children: getChildren(records, record.children)}));\n }\n });\n payload.data.rows = treeRecords;\n }\n return payload;\n ");if(field.optionsFunction||field._optionsFunction){source.adaptor="\n payload.data.rows = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$self);\n return payload;\n ");}top=20;if(refObjectConfig.paging&&refObjectConfig.paging.enabled===false){top=1000;}pickerSchema=null;labelFieldName=refObjectConfig.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
418
419
|
if(refObjectConfig.name==='organizations'){labelFieldName='name';}_context75.next=39;return getTableSchema(tableFields,_objectSpread2({labelFieldName:labelFieldName,top:top,isLookup:true},ctx));case 39:pickerSchema=_context75.sent;pickerSchema.affixHeader=false;headerToolbarItems=[];if(referenceTo.objectName==="space_users"&&field.reference_to_field==="user"){headerToolbarItems=getLookupSapceUserTreeSchema(isMobile);pickerSchema.className=pickerSchema.className||""+" steedos-select-user";}pickerSchema.headerToolbar=getObjectHeaderToolbar(refObjectConfig,fieldsArr,ctx.formFactor,{headerToolbarItems:headerToolbarItems,isLookup:true,keywordsSearchBoxName:keywordsSearchBoxName});isAllowCreate=refObjectConfig.permissions.allowCreate;isCreate=_$1__namespace.isBoolean(field.create)?field.create:true;// lookup字段配置过滤条件就强制不显示新建按钮
|
|
419
420
|
isHasFilters=field.filters||field._filtersFunction?true:false;if(!(isAllowCreate&&isCreate&&!isHasFilters)){_context75.next=53;break;}_context75.next=50;return getSchema$5(refObjectConfig,{appId:ctx.appId,objectName:refObjectConfig.name,formFactor:ctx.formFactor});case 50:new_button=_context75.sent;new_button.align="right";// 保持快速搜索放在最左侧,新建按钮往里插,而不是push到最后
|
|
420
421
|
pickerSchema.headerToolbar.splice(pickerSchema.headerToolbar.length-1,0,new_button);case 53:pickerSchema.footerToolbar=refObjectConfig.enable_tree?[]:getObjectFooterToolbar(refObjectConfig,ctx.formFactor,{isLookup:true});if(!(ctx.filterVisible!==false)){_context75.next=58;break;}_context75.next=57;return getObjectFilter(refObjectConfig,fields,_objectSpread2(_objectSpread2({},ctx),{},{isLookup:true,keywordsSearchBoxName:keywordsSearchBoxName}));case 57:pickerSchema.filter=_context75.sent;case 58:pickerSchema.data=Object.assign({},pickerSchema.data,{"&":"$$","objectName":refObjectConfig.name,"uiSchema":refObjectConfig,"listName":listName,// 需要按视图取可搜索项
|
|
421
422
|
"isLookup":true});if(!pickerSchema.onEvent){pickerSchema.onEvent={};}pickerSchema.onEvent["@data.changed.".concat(refObjectConfig.name)]={"actions":[{"actionType":"reload"},{"actionType":"custom","script":"\n const masterRecord = event.data._master && event.data._master.record;\n const fieldConfig = ".concat(JSON.stringify(field),";\n let reference_to = fieldConfig.reference_to;\n let saveValue;\n const newRecord = {\n _id: event.data.result.data.recordId,\n ...event.data.__super.__super\n }\n const saveField = fieldConfig.reference_to_field || '_id';\n const saveFieldValue = newRecord[saveField];\n\n if( fieldConfig._reference_to && (_.isArray(fieldConfig._reference_to) || _.isFunction(fieldConfig._reference_to) || fieldConfig._reference_to.startsWith('function') ) ){\n \n const fieldValue = masterRecord ? masterRecord[fieldConfig.name] : {o: reference_to, ids: []};\n const baseSaveValue = {\n o: reference_to,\n ids: [saveFieldValue]\n };\n if(fieldValue && fieldValue.o){\n if(fieldValue.o === reference_to){\n saveValue = fieldConfig.multiple ? { o: reference_to, ids: fieldValue.ids.concat(saveFieldValue)} : baseSaveValue;\n }else{\n saveValue = baseSaveValue;\n }\n }else{\n saveValue = baseSaveValue;\n }\n\n }else{\n if(fieldConfig.multiple){\n // TODO: \u8FDE\u7EED\u65B0\u5EFA\u591A\u4E2A\u8BB0\u5F55\u65F6\uFF0C\u56E0\u4E3A\u83B7\u53D6\u7684\u4E3B\u8BB0\u5F55\u4E0D\u662F\u5B9E\u65F6\u7684\uFF0C\u6240\u4EE5\u53EA\u4F1A\u52FE\u9009\u6700\u540E\u4E00\u4E2A\u65B0\u5EFA\u7684\u8BB0\u5F55\u3002\n const fieldValue = (masterRecord && masterRecord[fieldConfig.name]) || [];\n saveValue = fieldValue.concat(saveFieldValue);\n }else{\n saveValue = saveFieldValue;\n }\n }\n \n const ctx = ").concat(JSON.stringify(ctx),";\n const componentId = ctx.defaults.formSchema.id;\n doAction({\n actionType: 'setValue',\n componentId: componentId, \n args: {\n value: { [fieldConfig.name]: saveValue }\n }\n });\n ")}]};if(field.pickerSchema){pickerSchema=Object.assign({},pickerSchema,field.pickerSchema);}if(referenceTo.objectName==="space_users"&&field.reference_to_field==="user"&&isMobile){//手机端选人控件只保留部分toolbar
|
|
422
|
-
pickerSchema.headerToolbar=pickerSchema.headerToolbar&&pickerSchema.headerToolbar.filter(function(item){if(["steedos_crud_toolbar_quick_search","steedos_crud_toolbar_filter","steedos_crud_toolbar_select_user_tree","steedos_crud_toolbar_organization_button"].indexOf(item.id)>-1){return true;}else{return false;}});pickerSchema.footerToolbar=["pagination"];}data={type:getAmisStaticFieldType('picker',readonly),modalTitle:instance.t('frontend_form_please_select')+" "+refObjectConfig.label,labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
423
|
+
pickerSchema.headerToolbar=pickerSchema.headerToolbar&&pickerSchema.headerToolbar.filter(function(item){if(["steedos_crud_toolbar_quick_search","steedos_crud_toolbar_filter","steedos_crud_toolbar_select_user_tree","steedos_crud_toolbar_organization_button"].indexOf(item.id)>-1){return true;}else{return false;}});pickerSchema.footerToolbar=["pagination"];}data={type:getAmisStaticFieldType$1('picker',readonly),modalTitle:instance.t('frontend_form_please_select')+" "+refObjectConfig.label,labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
423
424
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),modalMode:'dialog',//TODO 设置 dialog 或者 drawer,用来配置弹出方式
|
|
424
425
|
source:source,size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context75.next=69;break;}_context75.next=68;return getLookupTpl(field,ctx);case 68:data.tpl=_context75.sent;case 69:return _context75.abrupt("return",data);case 70:case"end":return _context75.stop();}}},_callee75);}));return _lookupToAmisPicker.apply(this,arguments);}function lookupToAmisSelect(_x86,_x87,_x88){return _lookupToAmisSelect.apply(this,arguments);}function _lookupToAmisSelect(){_lookupToAmisSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee76(field,readonly,ctx){var _referenceTo$valueFie;var referenceTo,valueFieldKey,apiInfo,defaultValueOptionsQueryData,refObjectConfig,listView,sort,depend_on,sendOn,data,select_menuTpl;return _regeneratorRuntime().wrap(function _callee76$(_context76){while(1){switch(_context76.prev=_context76.next){case 0:_context76.next=2;return getReferenceTo(field);case 2:referenceTo=_context76.sent;valueFieldKey=referenceTo&&((_referenceTo$valueFie=referenceTo.valueField)===null||_referenceTo$valueFie===void 0?void 0:_referenceTo$valueFie.name)||'_id';// const labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';
|
|
425
426
|
if(!referenceTo){_context76.next=14;break;}_context76.next=7;return getFindQuery({name:referenceTo.objectName},null,[Object.assign({},referenceTo.labelField,{alias:'label'}),Object.assign({},referenceTo.valueField,{alias:'value'})],{alias:"defaultValueOptions",filters:"{__options_filters}",count:false});case 7:defaultValueOptionsQueryData=_context76.sent;_context76.next=10;return getApi$1({name:referenceTo.objectName},null,[Object.assign({},referenceTo.labelField,{alias:'label'}),Object.assign({},referenceTo.valueField,{alias:'value'})],{expand:false,alias:'options',queryOptions:"filters: {__filters}, top: {__top}, sort: \"{__sort}\""});case 10:apiInfo=_context76.sent;apiInfo.adaptor="\n const data = payload.data;\n var defaultValueOptions = data.defaultValueOptions;\n // \u5B57\u6BB5\u503C\u4E0B\u62C9\u9009\u9879\u5408\u5E76\u5230options\u4E2D\n data.options = _.unionWith(defaultValueOptions, data.options, function(a,b){\n return a[\"value\"]=== b[\"value\"];\n });\n delete data.defaultValueOptions;\n payload.data.options = data.options;\n return payload;\n ";_context76.next=15;break;case 14:apiInfo={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"},"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}};case 15:_context76.t0=referenceTo;if(!_context76.t0){_context76.next=20;break;}_context76.next=19;return _getUISchema2(referenceTo.objectName);case 19:_context76.t0=_context76.sent;case 20:refObjectConfig=_context76.t0;listView=getLookupListView(refObjectConfig);sort="";if(listView){sort=getListViewSort(listView);}// 列表视图搜索栏中,即inFilterForm=true时,不需要执行depend_on
|
|
426
427
|
if(apiInfo.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];_$1__namespace.each(field.depend_on,function(fName){depend_on.push("depend_on_".concat(fName,"=${").concat(fName,"}"));sendOn.push("this.".concat(fName));});if(depend_on.length>0){apiInfo.url="".concat(apiInfo.url,"?").concat(depend_on.join('&'));apiInfo.sendOn="".concat(sendOn.join(' && '));}}apiInfo.data.$term="$term";// apiInfo.data.$value = `$${field.name}.${referenceTo ? referenceTo.valueField.name : '_id'}`;
|
|
427
428
|
apiInfo.data.$value=ctx.isRefToMutiple?"$".concat(field.name,".ids"):"$".concat(field.name);_$1__namespace.each(field.depend_on,function(fName){apiInfo.data[fName]="$".concat(fName);});apiInfo.data['$']="$$";apiInfo.data['rfield']="${object_name}";// [["_id", "=", "$${field.name}._id"],"or",["name", "contains", "$term"]]
|
|
428
|
-
apiInfo.requestAdaptor="\n var filters = [];\n var top =
|
|
429
|
+
apiInfo.requestAdaptor="\n var filters = [];\n var top = 200;\n if(api.data.$term){\n filters = [[\"".concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.NAME_FIELD_KEY)||'name',"\", \"contains\", api.data.$term]];\n }\n // else if(api.data.$value){\n // filters = [[\"_id\", \"=\", api.data.$value]];\n // }\n\n var fieldFilters = ").concat(JSON.stringify(field.filters),";\n if(fieldFilters && fieldFilters.length){\n filters.push(fieldFilters);\n }\n\n if(").concat((referenceTo===null||referenceTo===void 0?void 0:referenceTo.objectName)==="space_users"," && ").concat(field.reference_to_field==="user","){\n if(filters.length > 0){\n filters = [ [\"user_accepted\", \"=\", true], \"and\", filters ]\n }else{\n filters = [[\"user_accepted\", \"=\", true]];\n }\n }\n\n const inFilterForm = ").concat(ctx.inFilterForm,";\n const filtersFunction = ").concat(field.filtersFunction||field._filtersFunction,";\n\n if(filtersFunction && !inFilterForm){\n const _filters = filtersFunction(filters, api.data.$);\n if(_filters && _filters.length > 0){\n filters.push(_filters);\n }\n }\n var sort = \"").concat(sort,"\";\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', top).replace('{__sort}', sort.trim());\n\n var defaultValue = api.data.$value;\n var optionsFiltersOp = \"").concat(field.multiple?"in":"=","\";\n var optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, []]];\n if (defaultValue && !api.data.$term) { \n const defaultValueOptionsQueryData = ").concat(JSON.stringify(defaultValueOptionsQueryData),";\n const defaultValueOptionsQuery = defaultValueOptionsQueryData?.query?.replace(/^{/,\"\").replace(/}$/,\"\");\n // \u5B57\u6BB5\u503C\u5355\u72EC\u8BF7\u6C42\uFF0C\u6CA1\u503C\u7684\u65F6\u5019\u5728\u8BF7\u6C42\u4E2D\u8FD4\u56DE\u7A7A\n optionsFilters = [[\"").concat(valueFieldKey,"\", optionsFiltersOp, defaultValue]];\n if(filters.length > 0){\n optionsFilters = [filters, optionsFilters];\n }\n if(defaultValueOptionsQuery){\n api.data.query = \"{\"+api.data.query.replace(/^{/,\"\").replace(/}$/,\"\")+\",\"+defaultValueOptionsQuery+\"}\";\n } \n }\n api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));\n return api;\n ");referenceTo?referenceTo.labelField.name:'';referenceTo?referenceTo.valueField.name:'';if(field.optionsFunction||field._optionsFunction){apiInfo.adaptor="\n var options = eval(".concat(field.optionsFunction||field._optionsFunction,")(api.data.$);\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}else if(field.options){apiInfo.adaptor="\n var options = ".concat(JSON.stringify(field.options),"\n if(api.data.$term){\n options = _.filter(options, function(o) {\n var label = o.label;\n return label.toLowerCase().indexOf(api.data.$term.toLowerCase()) > -1;\n });\n }\n payload.data.options = options;\n return payload;\n ");}data={type:getAmisStaticFieldType$1('select',readonly),joinValues:false,extractValue:true,clearable:true,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
429
430
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),// labelField: labelField,
|
|
430
431
|
// valueField: valueField,
|
|
431
432
|
// source: apiInfo,
|
|
432
433
|
autoComplete:apiInfo,searchable:true};//删除xlink:href中的rootUrl前缀,解决客户端svg为空的问题
|
|
433
434
|
select_menuTpl="<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>";data.menuTpl="${icon ? `"+select_menuTpl+"` : label}";if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context76.next=42;break;}_context76.next=41;return getLookupTpl(field,ctx);case 41:data.tpl=_context76.sent;case 42:return _context76.abrupt("return",data);case 43:case"end":return _context76.stop();}}},_callee76);}));return _lookupToAmisSelect.apply(this,arguments);}function getApi$1(_x89,_x90,_x91,_x92){return _getApi$.apply(this,arguments);}function _getApi$(){_getApi$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee77(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee77$(_context77){while(1){switch(_context77.prev=_context77.next){case 0:_context77.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context77.sent;return _context77.abrupt("return",{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context77.stop();}}},_callee77);}));return _getApi$.apply(this,arguments);}function lookupToAmis(_x93,_x94,_x95){return _lookupToAmis.apply(this,arguments);}function _lookupToAmis(){_lookupToAmis=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee78(field,readonly,ctx){var referenceTo,refObject,enableEnhancedLookup,_referenceTo$labelFie,_referenceTo$valueFie2;return _regeneratorRuntime().wrap(function _callee78$(_context78){while(1){switch(_context78.prev=_context78.next){case 0:if(!ctx){ctx={};}// console.log(`lookupToAmis====`, field, readonly, ctx)
|
|
434
|
-
if(!readonly){_context78.next=3;break;}return _context78.abrupt("return",{type:getAmisStaticFieldType('picker',readonly),tpl:getRelatedFieldTpl(field,ctx)});case 3:if(!(field.reference_to&&!_$1__namespace.isString(field.reference_to)&&!readonly)){_context78.next=5;break;}return _context78.abrupt("return",{type:'steedos-field-lookup',field:field,readonly:readonly,ctx:ctx});case 5:_context78.next=7;return getReferenceTo(field);case 7:referenceTo=_context78.sent;if(referenceTo){_context78.next=12;break;}_context78.next=11;return lookupToAmisSelect(field,readonly,ctx);case 11:return _context78.abrupt("return",_context78.sent);case 12:if(!(referenceTo.objectName==="space_users"&&field.reference_to_field==="user")){_context78.next=18;break;}ctx=Object.assign({},ctx,{onlyDisplayLookLabel:true});if(!ctx.idsDependOn){_context78.next=18;break;}_context78.next=17;return lookupToAmisIdsPicker(field,readonly,ctx);case 17:return _context78.abrupt("return",_context78.sent);case 18:_context78.next=20;return _getUISchema2(referenceTo.objectName);case 20:refObject=_context78.sent;// 优先取字段中配置的enable_enhanced_lookup,字段上没配置时,才从对象上取enable_enhanced_lookup属性
|
|
435
|
+
if(!readonly){_context78.next=3;break;}return _context78.abrupt("return",{type:getAmisStaticFieldType$1('picker',readonly),tpl:getRelatedFieldTpl(field,ctx)});case 3:if(!(field.reference_to&&!_$1__namespace.isString(field.reference_to)&&!readonly)){_context78.next=5;break;}return _context78.abrupt("return",{type:'steedos-field-lookup',field:field,readonly:readonly,ctx:ctx});case 5:_context78.next=7;return getReferenceTo(field);case 7:referenceTo=_context78.sent;if(referenceTo){_context78.next=12;break;}_context78.next=11;return lookupToAmisSelect(field,readonly,ctx);case 11:return _context78.abrupt("return",_context78.sent);case 12:if(!(referenceTo.objectName==="space_users"&&field.reference_to_field==="user")){_context78.next=18;break;}ctx=Object.assign({},ctx,{onlyDisplayLookLabel:true});if(!ctx.idsDependOn){_context78.next=18;break;}_context78.next=17;return lookupToAmisIdsPicker(field,readonly,ctx);case 17:return _context78.abrupt("return",_context78.sent);case 18:_context78.next=20;return _getUISchema2(referenceTo.objectName);case 20:refObject=_context78.sent;// 优先取字段中配置的enable_enhanced_lookup,字段上没配置时,才从对象上取enable_enhanced_lookup属性
|
|
435
436
|
enableEnhancedLookup=_$1__namespace.isBoolean(field.enable_enhanced_lookup)?field.enable_enhanced_lookup:refObject.enable_enhanced_lookup;// 默认使用下拉框模式显示lookup选项,只能配置了enable_enhanced_lookup才使用弹出增强模式
|
|
436
|
-
if(!(enableEnhancedLookup==true)){_context78.next=28;break;}_context78.next=25;return lookupToAmisPicker(field,readonly,ctx);case 25:return _context78.abrupt("return",_context78.sent);case 28:if(!refObject.enable_tree){_context78.next=34;break;}_context78.next=31;return lookupToAmisTreeSelect(field,readonly,Object.assign({},ctx,{labelField:((_referenceTo$labelFie=referenceTo.labelField)===null||_referenceTo$labelFie===void 0?void 0:_referenceTo$labelFie.name)||'name',valueField:((_referenceTo$valueFie2=referenceTo.valueField)===null||_referenceTo$valueFie2===void 0?void 0:_referenceTo$valueFie2.name)||'_id',objectName:referenceTo.objectName}));case 31:return _context78.abrupt("return",_context78.sent);case 34:_context78.next=36;return lookupToAmisSelect(field,readonly,ctx);case 36:return _context78.abrupt("return",_context78.sent);case 37:case"end":return _context78.stop();}}},_callee78);}));return _lookupToAmis.apply(this,arguments);}function lookupToAmisSelectUser(_x96,_x97,_x98){return _lookupToAmisSelectUser.apply(this,arguments);}function _lookupToAmisSelectUser(){_lookupToAmisSelectUser=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee79(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee79$(_context79){while(1){switch(_context79.prev=_context79.next){case 0:return _context79.abrupt("return",getSelectUserSchema(field,readonly,ctx));case 1:case"end":return _context79.stop();}}},_callee79);}));return _lookupToAmisSelectUser.apply(this,arguments);}function lookupToAmisIdsPicker(_x99,_x100,_x101){return _lookupToAmisIdsPicker.apply(this,arguments);}function _lookupToAmisIdsPicker(){_lookupToAmisIdsPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee80(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee80$(_context80){while(1){switch(_context80.prev=_context80.next){case 0:return _context80.abrupt("return",getIdsPickerSchema(field,readonly,ctx));case 1:case"end":return _context80.stop();}}},_callee80);}));return _lookupToAmisIdsPicker.apply(this,arguments);}function getIdsPickerSchema(_x102,_x103,_x104){return _getIdsPickerSchema.apply(this,arguments);}
|
|
437
|
+
if(!(enableEnhancedLookup==true)){_context78.next=28;break;}_context78.next=25;return lookupToAmisPicker(field,readonly,ctx);case 25:return _context78.abrupt("return",_context78.sent);case 28:if(!refObject.enable_tree){_context78.next=34;break;}_context78.next=31;return lookupToAmisTreeSelect(field,readonly,Object.assign({},ctx,{labelField:((_referenceTo$labelFie=referenceTo.labelField)===null||_referenceTo$labelFie===void 0?void 0:_referenceTo$labelFie.name)||'name',valueField:((_referenceTo$valueFie2=referenceTo.valueField)===null||_referenceTo$valueFie2===void 0?void 0:_referenceTo$valueFie2.name)||'_id',objectName:referenceTo.objectName}));case 31:return _context78.abrupt("return",_context78.sent);case 34:_context78.next=36;return lookupToAmisSelect(field,readonly,ctx);case 36:return _context78.abrupt("return",_context78.sent);case 37:case"end":return _context78.stop();}}},_callee78);}));return _lookupToAmis.apply(this,arguments);}function lookupToAmisSelectUser(_x96,_x97,_x98){return _lookupToAmisSelectUser.apply(this,arguments);}function _lookupToAmisSelectUser(){_lookupToAmisSelectUser=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee79(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee79$(_context79){while(1){switch(_context79.prev=_context79.next){case 0:return _context79.abrupt("return",getSelectUserSchema(field,readonly,ctx));case 1:case"end":return _context79.stop();}}},_callee79);}));return _lookupToAmisSelectUser.apply(this,arguments);}function lookupToAmisIdsPicker(_x99,_x100,_x101){return _lookupToAmisIdsPicker.apply(this,arguments);}function _lookupToAmisIdsPicker(){_lookupToAmisIdsPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee80(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee80$(_context80){while(1){switch(_context80.prev=_context80.next){case 0:return _context80.abrupt("return",getIdsPickerSchema(field,readonly,ctx));case 1:case"end":return _context80.stop();}}},_callee80);}));return _lookupToAmisIdsPicker.apply(this,arguments);}function getIdsPickerSchema(_x102,_x103,_x104){return _getIdsPickerSchema.apply(this,arguments);}function _getIdsPickerSchema(){_getIdsPickerSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee81(field,readonly,ctx){var _fields2;var referenceTo,refObjectConfig,_ctx,idsDependOn,fields,tableFields,source,listView,sort,top,pickerSchema,data;return _regeneratorRuntime().wrap(function _callee81$(_context81){while(1){switch(_context81.prev=_context81.next){case 0:if(!ctx){ctx={};}_context81.next=3;return getReferenceTo(field);case 3:referenceTo=_context81.sent;if(referenceTo){_context81.next=6;break;}return _context81.abrupt("return");case 6:_context81.next=8;return _getUISchema2(referenceTo.objectName);case 8:refObjectConfig=_context81.sent;_ctx=ctx,idsDependOn=_ctx.idsDependOn;fields=(_fields2={},_defineProperty2(_fields2,referenceTo.labelField.name,referenceTo.labelField),_defineProperty2(_fields2,referenceTo.valueField.name,referenceTo.valueField),_fields2);tableFields=[referenceTo.labelField];_context81.next=14;return getApi$1(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 14:source=_context81.sent;source.data.$term="$term";source.data.$self="$$";if(idsDependOn&&source.url&&!ctx.inFilterForm){source.sendOn="${".concat(idsDependOn," && ").concat(idsDependOn,".length}");source.url="".concat(source.url,"&depend_on_").concat(idsDependOn,"=${").concat(idsDependOn,"|join}");}listView=getLookupListView(refObjectConfig);sort="";if(listView){sort=getListViewSort(listView);}source.requestAdaptor="\n const selfData = JSON.parse(JSON.stringify(api.data.$self));\n var filters = [];\n var pageSize = api.data.pageSize || 1000;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"".concat(sort,"\";\n if(selfData.op === 'loadOptions' && selfData.value){\n if(selfData.value && selfData.value.indexOf(',') > 0){\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", selfData.value.split(',')]];\n }else{\n filters = [[\"").concat(referenceTo.valueField.name,"\", \"=\", selfData.value]];\n }\n }\n\n var ids;\n var idsDependOn = \"").concat(idsDependOn,"\";\n if(idsDependOn){\n ids = api.data.$self[idsDependOn];\n }\n if(ids && ids.length){\n filters.push([\"").concat(referenceTo.valueField.name,"\", \"=\", ids]);\n }\n\n api.data.query = api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim());\n return api;\n ");top=1000;pickerSchema=null;if(!(ctx.formFactor==='SMALL')){_context81.next=30;break;}_context81.next=27;return getListSchema$1(tableFields,_objectSpread2(_objectSpread2({top:top},ctx),{},{actions:false}));case 27:pickerSchema=_context81.sent;_context81.next=34;break;case 30:_context81.next=32;return getTableSchema(tableFields,_objectSpread2({labelFieldName:refObjectConfig.NAME_FIELD_KEY,top:top,isLookup:true},ctx));case 32:pickerSchema=_context81.sent;pickerSchema.affixHeader=false;case 34:data={type:getAmisStaticFieldType$1('picker',readonly),labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,modalMode:'dialog',source:source,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
438
|
+
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(ctx.value){data.value=ctx.value;}if(ctx.selectFirst!=undefined){data.selectFirst=ctx.selectFirst;}if(!readonly){_context81.next=42;break;}_context81.next=41;return getLookupTpl(field,ctx);case 41:data.tpl=_context81.sent;case 42:return _context81.abrupt("return",data);case 43:case"end":return _context81.stop();}}},_callee81);}));return _getIdsPickerSchema.apply(this,arguments);}if(typeof window!='undefined'){window.getReferenceTo=getReferenceTo;window.getReferenceToSync=getReferenceToSync;}/*
|
|
437
439
|
* @Author: baozhoutao@steedos.com
|
|
438
440
|
* @Date: 2023-01-13 17:27:54
|
|
439
441
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
440
442
|
* @LastEditTime: 2023-08-28 17:45:38
|
|
441
443
|
* @Description:
|
|
442
|
-
*/
|
|
443
|
-
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(ctx.value){data.value=ctx.value;}if(ctx.selectFirst!=undefined){data.selectFirst=ctx.selectFirst;}if(!readonly){_context81.next=42;break;}_context81.next=41;return getLookupTpl(field,ctx);case 41:data.tpl=_context81.sent;case 42:return _context81.abrupt("return",data);case 43:case"end":return _context81.stop();}}},_callee81);}));return _getIdsPickerSchema.apply(this,arguments);}var getMarkdownFieldSchema=function getMarkdownFieldSchema(field,readonly,ctx){if(readonly){return{"type":"control","label":field.label,"body":{"type":"markdown","name":field.name,"options":{"linkify":true,"html":true,"breaks":true}}};}else{return{"type":"control","label":field.label,"body":[{"type":"tabs","tabsMode":"strong","className":"steedos-markdown","tabs":[{"title":instance.t('frontend_form_edit'),"tab":[{"type":"editor","name":field.name,"language":"markdown"}]},{"title":instance.t('frontend_form_preview'),"tab":[{"type":"markdown","name":field.name,"options":{"linkify":true,"html":true,"breaks":true}}]}]}]};}};var getHtmlFieldSchema=function getHtmlFieldSchema(field,readonly,ctx){if(readonly){// return {
|
|
444
|
+
*/var getMarkdownFieldSchema=function getMarkdownFieldSchema(field,readonly,ctx){if(readonly){return{"type":"control","label":field.label,"body":{"type":"markdown","name":field.name,"options":{"linkify":true,"html":true,"breaks":true}}};}else{return{"type":"control","label":field.label,"body":[{"type":"tabs","tabsMode":"strong","className":"steedos-markdown","tabs":[{"title":instance.t('frontend_form_edit'),"tab":[{"type":"editor","name":field.name,"language":"markdown"}]},{"title":instance.t('frontend_form_preview'),"tab":[{"type":"markdown","name":field.name,"options":{"linkify":true,"html":true,"breaks":true}}]}]}]};}};var getHtmlFieldSchema=function getHtmlFieldSchema(field,readonly,ctx){if(readonly){// return {
|
|
444
445
|
// "type": "control",
|
|
445
446
|
// "label": field.label,
|
|
446
447
|
// "body": {
|
|
@@ -469,30 +470,30 @@ return{"type":"input-rich-text","receiver":"${context.rootUrl}/s3/images","name"
|
|
|
469
470
|
* @LastEditors: liaodaxue
|
|
470
471
|
* @LastEditTime: 2023-07-28 16:16:29
|
|
471
472
|
* @Description:
|
|
472
|
-
*/var AmisFormInputs=['text','date','file',"avatar",'image','datetime','time','number','currency','percent','password','url','email'];function getAmisStaticFieldType(type,readonly,options){if(!readonly){if(_$1__namespace.includes(AmisFormInputs,type)){return"input-".concat(type);}else if(type==='location'){return"location-picker";}return type;}if(_$1__namespace.includes(['text','image'],type)){if('text'===type&&options&&options.amis&&options.amis.tpl){return'static';}if('image'===type&&options&&options.multiple){return"static-images";}return"static-".concat(type);}else if(type==='url'){return"input-url";}else{return'static';}}/*
|
|
473
|
+
*/var AmisFormInputs$1=['text','date','file',"avatar",'image','datetime','time','number','currency','percent','password','url','email'];function getAmisStaticFieldType$1(type,readonly,options){if(!readonly){if(_$1__namespace.includes(AmisFormInputs$1,type)){return"input-".concat(type);}else if(type==='location'){return"location-picker";}return type;}if(_$1__namespace.includes(['text','image'],type)){if('text'===type&&options&&options.amis&&options.amis.tpl){return'static';}if('image'===type&&options&&options.multiple){return"static-images";}return"static-".concat(type);}else if(type==='url'){return"input-url";}else{return'static';}}/*
|
|
473
474
|
* @Author: baozhoutao@steedos.com
|
|
474
475
|
* @Date: 2022-10-28 14:15:09
|
|
475
476
|
* @LastEditors: liaodaxue
|
|
476
477
|
* @LastEditTime: 2023-10-30 17:51:54
|
|
477
478
|
* @Description:
|
|
478
|
-
*/var getFileTableName=function getFileTableName(steedosField){switch(steedosField.type){case'avatar':return'avatars';case'image':return'images';case'file':return'files';}};var getAmisFieldType$1=function getAmisFieldType$1(steedosField,readonly){return getAmisStaticFieldType(steedosField.type==='avatar'?'image':steedosField.type,readonly,{multiple:steedosField.multiple});};var getAmisFileReadonlySchema=function getAmisFileReadonlySchema(steedosField){var type=steedosField.type;var amisFieldType=getAmisFieldType$1(steedosField,true);if(_.includes(['avatar','image'],type)){return{type:amisFieldType,defaultImage:'',enlargeAble:true,showToolbar:true};}if(type==='file'){return{type:amisFieldType,tpl:"\n <% let fileData = data._display.".concat(steedosField.name,"; if (fileData) { %>\n <% if(!Array.isArray(fileData)){ fileData = [fileData]} %>\n <% fileData.forEach(function(item) { %> \n <a href='<%= item.url %>' target='_self' class='block'><%= item.name %></a> \n <% });} %>")};}};var getAmisFileEditSchema=function getAmisFileEditSchema(steedosField){var tableName=getFileTableName(steedosField);var amisFieldType=getAmisFieldType$1(steedosField,false);var convertData={type:amisFieldType,useChunk:false,// 关闭分块上传
|
|
479
|
+
*/var getFileTableName=function getFileTableName(steedosField){switch(steedosField.type){case'avatar':return'avatars';case'image':return'images';case'file':return'files';}};var getAmisFieldType$1=function getAmisFieldType$1(steedosField,readonly){return getAmisStaticFieldType$1(steedosField.type==='avatar'?'image':steedosField.type,readonly,{multiple:steedosField.multiple});};var getAmisFileReadonlySchema=function getAmisFileReadonlySchema(steedosField){var type=steedosField.type;var amisFieldType=getAmisFieldType$1(steedosField,true);if(_.includes(['avatar','image'],type)){return{type:amisFieldType,defaultImage:'',enlargeAble:true,showToolbar:true};}if(type==='file'){return{type:amisFieldType,tpl:"\n <% let fileData = data._display.".concat(steedosField.name,"; if (fileData) { %>\n <% if(!Array.isArray(fileData)){ fileData = [fileData]} %>\n <% fileData.forEach(function(item) { %> \n <a href='<%= item.url %>' target='_self' class='block'><%= item.name %></a> \n <% });} %>")};}};var getAmisFileEditSchema=function getAmisFileEditSchema(steedosField){var tableName=getFileTableName(steedosField);var amisFieldType=getAmisFieldType$1(steedosField,false);var convertData={type:amisFieldType,useChunk:false,// 关闭分块上传
|
|
479
480
|
receiver:{method:"post",dataType:"form-data",url:"${context.rootUrl}/s3/".concat(tableName),requestAdaptor:"\n const { _master, global,context } = api.body;\n // const { recordId, objectName } = _master;\n const { spaceId, userId, user } = global;\n /*\n record_id: recordId,\n parent: recordId,\n object_name: objectName,\n owner_name: user.name,\n space: spaceId,\n owner: userId\n */\n // \u53C2\u8003platform 2.2\u7248\u672C\uFF0C\u9644\u4EF6\u5B57\u6BB5\u4FDD\u5B58\u65F6cfs.files.filerecord\u3001cfs.images.filerecord\u8868\u4E2D\u7684metadata\u4E0B\u53EA\u4FDD\u5B58space\u3001owner\u4E24\u4E2A\u5C5E\u6027\u503C\u3002\n api.data.append('space', spaceId);\n api.data.append('owner', userId);\n\n return api;\n ",adaptor:"\n const { context } = api.body; \n var rootUrl = context.rootUrl + \"/api/files/".concat(tableName,"/\";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: payload._id,\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n "),headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}}};if(steedosField.multiple){convertData.multiple=true;convertData.joinValues=false;convertData.extractValue=true;}return convertData;};var getAmisFileSchema=function getAmisFileSchema(steedosField,readonly){return readonly?getAmisFileReadonlySchema(steedosField):getAmisFileEditSchema(steedosField);};var QUICK_SEARCHABLE_FIELD_TYPES=["text","textarea","autonumber","url","email"];var OMIT_FIELDS=['created','created_by','modified','modified_by'];// const Lookup = require('./lookup');
|
|
480
481
|
function getBaseFields(readonly){var calssName='m-1';if(readonly){calssName="".concat(calssName);}return[{name:"createdInfo",label:"创建人",type:"static",labelClassName:'text-left',className:calssName,tpl:getCreatedInfoTpl()},{name:"modifiedInfo",label:"修改人",type:"static",labelClassName:'text-left',className:calssName,tpl:getModifiedInfoTpl()}];}function getAmisFieldType(sField){switch(sField.type){case'text':return'text';case'textarea':return'textarea';case'html':return'html';case'markdown':return'markdown';case'select':return'select';case'boolean':return'checkbox';case'date':return'date';case'datetime':return'datetime';case'number':return'number';case'currency':return'number';case'percent':return'number';case'password':return'password';case'lookup':// TODO 根据字段配置返回 select || picker
|
|
481
482
|
return'select';case'master_detail':// TODO 根据字段配置返回 select || picker
|
|
482
483
|
return'picker';case'autonumber':return'text';case'url':return'url';case'email':return'email';case'image':return'image';case'formula'://TODO
|
|
483
484
|
break;case'summary'://TODO
|
|
484
|
-
break;case'grid':return'table';default:console.log('convertData default',sField.type);// convertData.type = field.type
|
|
485
|
-
break;}}function getObjectFieldSubFields(mainField,fields){var newMainField=Object.assign({subFields:[]},mainField);var subFields=_$1__namespace.filter(fields,function(field){var result=field.name.startsWith("".concat(mainField.name,"."))&&_$1__namespace.split(field.name,".").length<3;if(result){field._prefix="".concat(mainField.name,".");}return result;});newMainField.subFields=subFields;return newMainField;}function getGridFieldSubFields(mainField,fields){var newMainField=Object.assign({subFields:[]},mainField);var subFields=_$1__namespace.filter(fields,function(field){var result=field.name.startsWith("".concat(mainField.name,"."));if(result){field._prefix="".concat(mainField.name,".");}return result;});newMainField.subFields=subFields;return newMainField;}/**
|
|
485
|
+
break;case'grid':return'table';case'table':return'steedos-input-table';default:console.log('convertData default',sField.type);// convertData.type = field.type
|
|
486
|
+
break;}}function getObjectFieldSubFields(mainField,fields){var newMainField=Object.assign({subFields:[]},mainField);var subFields=_$1__namespace.filter(fields,function(field){var result=field.name.startsWith("".concat(mainField.name,"."))&&_$1__namespace.split(field.name,".").length<3;if(result){field._prefix="".concat(mainField.name,".");}return result;});newMainField.subFields=subFields;return newMainField;}function getGridFieldSubFields(mainField,fields){var newMainField=Object.assign({subFields:[]},mainField);var subFields=_$1__namespace.filter(fields,function(field){var result=field.name.startsWith("".concat(mainField.name,"."));if(result){field._prefix="".concat(mainField.name,".");}return result;});newMainField.subFields=subFields;return newMainField;}function getTabledFieldSubFields(mainField,fields){var newMainField=Object.assign({subFields:[]},mainField);var subFields=_$1__namespace.filter(fields,function(field){var result=field.name.startsWith("".concat(mainField.name,"."));if(result){field._prefix="".concat(mainField.name,".");}return result;});newMainField.subFields=subFields;return newMainField;}/**
|
|
486
487
|
* TODO 处理权限
|
|
487
488
|
* @param {*} object steedos object
|
|
488
489
|
* @param {*} userSession
|
|
489
|
-
*/function getPermissionFields(object,userSession){var permissionFields=[];var fieldsArr=[];_$1__namespace.each(object.fields,function(field,field_name){if(!_$1__namespace.has(field,"name")){field.name=field_name;}fieldsArr.push(field);});_$1__namespace.each(_$1__namespace.sortBy(fieldsArr,"sort_no"),function(field){if(!field.hidden){permissionFields.push(Object.assign({},field,{permission:{allowEdit:true}}));}});return permissionFields;}function getSelectFieldOptions(field){var dataType=field.data_type||'text';var options=[];_$1__namespace.each(field.options,function(item){switch(dataType){case'number':options.push({label:item.label,value:Number(item.value),icon:item.icon});break;case'text':options.push({label:item.label,value:String(item.value),icon:item.icon});break;case'boolean':options.push({label:item.label,value:item.value==='false'?false:true,icon:item.icon});break;}});return options;}function convertSFieldToAmisField(_x105,_x106,_x107){return _convertSFieldToAmisField.apply(this,arguments);}function _convertSFieldToAmisField(){_convertSFieldToAmisField=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee82(field,readonly,ctx){var baseData,convertData,map,select_menuTpl,ak,vendor,_Meteor$settings,_Meteor$settings$publ,_Meteor$settings$publ2,_Meteor$settings2,_Meteor$settings2$pub,_Meteor$settings2$pub2,map_ak,map_vendor,coordinatesType,_iterator7,_step8,subField,subFieldName,gridSub,gridItemSchema,_iterator8,_step9,_subField,_subFieldName,_gridSub,fieldTypeClassName;return _regeneratorRuntime().wrap(function _callee82$(_context82){while(1){switch(_context82.prev=_context82.next){case 0:if(!(_$1__namespace.includes(OMIT_FIELDS,field.name)&&ctx.showSystemFields!=true)){_context82.next=2;break;}return _context82.abrupt("return");case 2:baseData={name:ctx.fieldNamePrefix?"".concat(ctx.fieldNamePrefix).concat(field.name):field.name,label:field.label,labelRemark:field.inlineHelpText,required:_$1__namespace.has(ctx,'required')?ctx.required:field.required};convertData={};// if(_.includes(OMIT_FIELDS, field.name)){
|
|
490
|
+
*/function getPermissionFields(object,userSession){var permissionFields=[];var fieldsArr=[];_$1__namespace.each(object.fields,function(field,field_name){if(!_$1__namespace.has(field,"name")){field.name=field_name;}fieldsArr.push(field);});_$1__namespace.each(_$1__namespace.sortBy(fieldsArr,"sort_no"),function(field){if(!field.hidden){permissionFields.push(Object.assign({},field,{permission:{allowEdit:true}}));}});return permissionFields;}function getSelectFieldOptions(field){var dataType=field.data_type||'text';var options=[];_$1__namespace.each(field.options,function(item){switch(dataType){case'number':options.push({label:item.label,value:Number(item.value),icon:item.icon});break;case'text':options.push({label:item.label,value:String(item.value),icon:item.icon});break;case'boolean':options.push({label:item.label,value:item.value==='false'?false:true,icon:item.icon});break;}});return options;}function convertSFieldToAmisField(_x105,_x106,_x107){return _convertSFieldToAmisField.apply(this,arguments);}function _convertSFieldToAmisField(){_convertSFieldToAmisField=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee82(field,readonly,ctx){var baseData,convertData,map,select_menuTpl,ak,vendor,_Meteor$settings,_Meteor$settings$publ,_Meteor$settings$publ2,_Meteor$settings2,_Meteor$settings2$pub,_Meteor$settings2$pub2,map_ak,map_vendor,coordinatesType,_iterator7,_step8,subField,subFieldName,gridSub,gridItemSchema,_iterator8,_step9,_subField,_subFieldName,_gridSub,_iterator9,_step10,_subField2,_subFieldName2,_gridSub2,fieldTypeClassName,convertDataResult;return _regeneratorRuntime().wrap(function _callee82$(_context82){while(1){switch(_context82.prev=_context82.next){case 0:if(!(_$1__namespace.includes(OMIT_FIELDS,field.name)&&ctx.showSystemFields!=true)){_context82.next=2;break;}return _context82.abrupt("return");case 2:baseData={name:ctx.fieldNamePrefix?"".concat(ctx.fieldNamePrefix).concat(field.name):field.name,label:field.label,labelRemark:field.inlineHelpText,required:_$1__namespace.has(ctx,'required')?ctx.required:field.required};convertData={};// if(_.includes(OMIT_FIELDS, field.name)){
|
|
490
491
|
// readonly = true;
|
|
491
492
|
// }
|
|
492
|
-
_context82.t0=field.type;_context82.next=_context82.t0==='text'?7:_context82.t0==='textarea'?9:_context82.t0==='html'?12:_context82.t0==='markdown'?14:_context82.t0==='select'?16:_context82.t0==='boolean'?18:_context82.t0==='input-date-range'?20:_context82.t0==='date'?22:_context82.t0==='input-datetime-range'?24:_context82.t0==='datetime'?26:_context82.t0==='input-time-range'?28:_context82.t0==='time'?30:_context82.t0==='currency'?32:_context82.t0==='number'?32:_context82.t0==='input-array'?34:_context82.t0==='input-range'?36:_context82.t0==='percent'?38:_context82.t0==='password'?40:_context82.t0==='lookup'?42:_context82.t0==='master_detail'?46:_context82.t0==='autonumber'?50:_context82.t0==='url'?52:_context82.t0==='email'?55:_context82.t0==='location'?57:_context82.t0==='avatar'?63:_context82.t0==='image'?65:_context82.t0==='file'?67:_context82.t0==='formula'?69:_context82.t0==='summary'?71:_context82.t0==='code'?73:_context82.t0==='toggle'?75:_context82.t0==='grid'?77:_context82.t0==='
|
|
493
|
-
convertData.tpl="<%=(data.".concat(field.name," || \"\").split(\"\\n\").join('<br>')%>");return _context82.abrupt("break",
|
|
494
|
-
tpl:readonly?getSwitchTpl(field):null};return _context82.abrupt("break",
|
|
495
|
-
joinValues:false};return _context82.abrupt("break",
|
|
493
|
+
_context82.t0=field.type;_context82.next=_context82.t0==='text'?7:_context82.t0==='textarea'?9:_context82.t0==='html'?12:_context82.t0==='markdown'?14:_context82.t0==='select'?16:_context82.t0==='boolean'?18:_context82.t0==='input-date-range'?20:_context82.t0==='date'?22:_context82.t0==='input-datetime-range'?24:_context82.t0==='datetime'?26:_context82.t0==='input-time-range'?28:_context82.t0==='time'?30:_context82.t0==='currency'?32:_context82.t0==='number'?32:_context82.t0==='input-array'?34:_context82.t0==='input-range'?36:_context82.t0==='percent'?38:_context82.t0==='password'?40:_context82.t0==='lookup'?42:_context82.t0==='master_detail'?46:_context82.t0==='autonumber'?50:_context82.t0==='url'?52:_context82.t0==='email'?55:_context82.t0==='location'?57:_context82.t0==='avatar'?63:_context82.t0==='image'?65:_context82.t0==='file'?67:_context82.t0==='formula'?69:_context82.t0==='summary'?71:_context82.t0==='code'?73:_context82.t0==='toggle'?75:_context82.t0==='grid'?77:_context82.t0==='table'?100:_context82.t0==='object'?123:153;break;case 7:convertData.type=getAmisStaticFieldType$1('text',readonly,field);return _context82.abrupt("break",153);case 9:convertData.type=getAmisStaticFieldType$1('textarea',readonly);// convertData.tpl = `<b><%=data.${field.name}%></b>`;
|
|
494
|
+
convertData.tpl="<%=(data.".concat(field.name," || \"\").split(\"\\n\").join('<br>')%>");return _context82.abrupt("break",153);case 12:convertData=getHtmlFieldSchema(field,readonly);return _context82.abrupt("break",153);case 14:convertData=getMarkdownFieldSchema(field,readonly);return _context82.abrupt("break",153);case 16:if(readonly){map=getSelectMap(field.options);convertData={type:"static-mapping",name:field.name,label:field.label,map:map};}else{convertData={type:getAmisStaticFieldType$1('select',readonly),joinValues:false,options:getSelectFieldOptions(field),extractValue:true,clearable:true,labelField:'label',valueField:'value'};select_menuTpl="<span class='flex items-center mt-0.5'>\n <span role='img' aria-label='smile' class='anticon anticon-smile'>\n <span class='slds-icon_container slds-icon-standard-${REPLACE(icon,'_','-')}'>\n <svg class='slds-icon slds-icon_x-small' aria-hidden='true'>\n <use xlink:href='/assets/icons/standard-sprite/svg/symbols.svg#${icon}'></use>\n </svg>\n </span> \n </span>\n <span class='pl-1.5'>${label}</span>\n </span>";convertData.menuTpl="${icon ? `"+select_menuTpl+"` : label}";if(field.multiple){convertData.multiple=true;convertData.extractValue=true;}}return _context82.abrupt("break",153);case 18:convertData={type:getAmisStaticFieldType$1('checkbox',readonly),// option: field.inlineHelpText,
|
|
495
|
+
tpl:readonly?getSwitchTpl(field):null};return _context82.abrupt("break",153);case 20:convertData={type:"input-date-range",inputFormat:"YYYY-MM-DD",format:'YYYY-MM-DDT00:00:00.000[Z]',tpl:readonly?getDateTpl(field):null,// utc: true,
|
|
496
|
+
joinValues:false};return _context82.abrupt("break",153);case 22:// convertData = isMobile && !readonly ? {
|
|
496
497
|
// type: "native-date",
|
|
497
498
|
// pipeIn: (value, data) => {
|
|
498
499
|
// if (value) {
|
|
@@ -517,8 +518,8 @@ joinValues:false};return _context82.abrupt("break",130);case 22:// convertData =
|
|
|
517
518
|
// tpl: readonly ? Tpl.getDateTpl(field) : null,
|
|
518
519
|
// // utc: true
|
|
519
520
|
// }
|
|
520
|
-
convertData={type:getAmisStaticFieldType('date',readonly),inputFormat:"YYYY-MM-DD",format:'YYYY-MM-DDT00:00:00.000[Z]',tpl:readonly?getDateTpl(field):null// utc: true
|
|
521
|
-
};return _context82.abrupt("break",
|
|
521
|
+
convertData={type:getAmisStaticFieldType$1('date',readonly),inputFormat:"YYYY-MM-DD",format:'YYYY-MM-DDT00:00:00.000[Z]',tpl:readonly?getDateTpl(field):null// utc: true
|
|
522
|
+
};return _context82.abrupt("break",153);case 24:convertData={type:"input-datetime-range",inputFormat:'YYYY-MM-DD HH:mm',format:'YYYY-MM-DDTHH:mm:ss.SSSZ',tpl:readonly?getDateTimeTpl(field):null,utc:true,joinValues:false};return _context82.abrupt("break",153);case 26:// convertData = isMobile && !readonly ? {
|
|
522
523
|
// type: "combo",
|
|
523
524
|
// pipeIn: (value, data) => {
|
|
524
525
|
// let revalue = {};
|
|
@@ -561,8 +562,8 @@ convertData={type:getAmisStaticFieldType('date',readonly),inputFormat:"YYYY-MM-D
|
|
|
561
562
|
// tpl: readonly ? Tpl.getDateTimeTpl(field) : null,
|
|
562
563
|
// utc: true,
|
|
563
564
|
// }
|
|
564
|
-
convertData={type:getAmisStaticFieldType('datetime',readonly),inputFormat:'YYYY-MM-DD HH:mm',format:'YYYY-MM-DDTHH:mm:ss.SSSZ',tpl:readonly?getDateTimeTpl(field):null,utc:true};return _context82.abrupt("break",
|
|
565
|
-
joinValues:false};return _context82.abrupt("break",
|
|
565
|
+
convertData={type:getAmisStaticFieldType$1('datetime',readonly),inputFormat:'YYYY-MM-DD HH:mm',format:'YYYY-MM-DDTHH:mm:ss.SSSZ',tpl:readonly?getDateTimeTpl(field):null,utc:true};return _context82.abrupt("break",153);case 28:convertData={type:'input-time-range',inputFormat:'HH:mm',timeFormat:'HH:mm',format:'1970-01-01THH:mm:00.000[Z]',tpl:readonly?getDateTimeTpl(field):null,// utc: true,
|
|
566
|
+
joinValues:false};return _context82.abrupt("break",153);case 30:// convertData = isMobile && !readonly ? {
|
|
566
567
|
// type: "native-time",
|
|
567
568
|
// pipeIn: (value, data) => {
|
|
568
569
|
// if (value) {
|
|
@@ -588,17 +589,19 @@ joinValues:false};return _context82.abrupt("break",130);case 30:// convertData =
|
|
|
588
589
|
// tpl: readonly ? Tpl.getDateTimeTpl(field) : null,
|
|
589
590
|
// // utc: true
|
|
590
591
|
// }
|
|
591
|
-
convertData={type:getAmisStaticFieldType('time',readonly),inputFormat:'HH:mm',timeFormat:'HH:mm',format:'1970-01-01THH:mm:00.000[Z]',tpl:readonly?getDateTimeTpl(field):null// utc: true
|
|
592
|
-
};return _context82.abrupt("break",
|
|
593
|
-
var result=value*100;return Number(result.toFixed(field.scale));}return value;},pipeOut:function pipeOut(value,oldValue,data){if(value){return value/100;}return value;}};}return _context82.abrupt("break",
|
|
592
|
+
convertData={type:getAmisStaticFieldType$1('time',readonly),inputFormat:'HH:mm',timeFormat:'HH:mm',format:'1970-01-01THH:mm:00.000[Z]',tpl:readonly?getDateTimeTpl(field):null// utc: true
|
|
593
|
+
};return _context82.abrupt("break",153);case 32:if(readonly){convertData={type:'static-tpl',tpl:getNumberTpl(field)};}else{convertData={type:getAmisStaticFieldType$1('number',readonly),min:field.min,max:field.max,precision:field.scale};}return _context82.abrupt("break",153);case 34:convertData=Object.assign({},field,baseData);return _context82.abrupt("break",153);case 36:convertData={type:'input-range',min:field.min,max:field.max,value:[0,0],multiple:true,showInput:true};return _context82.abrupt("break",153);case 38:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}else{convertData={type:getAmisStaticFieldType$1('number',readonly),min:field.min,max:field.max,precision:field.scale,suffix:"%",pipeIn:function pipeIn(value,data){if(value){// 因为例如 1.11 * 100 的值不是111,所以调整下。
|
|
594
|
+
var result=value*100;return Number(result.toFixed(field.scale));}return value;},pipeOut:function pipeOut(value,oldValue,data){if(value){return value/100;}return value;}};}return _context82.abrupt("break",153);case 40:convertData={type:getAmisStaticFieldType$1('password',readonly),tpl:readonly?getPasswordTpl(field):null};return _context82.abrupt("break",153);case 42:_context82.next=44;return lookupToAmis(field,readonly,ctx);case 44:convertData=_context82.sent;return _context82.abrupt("break",153);case 46:_context82.next=48;return lookupToAmis(field,readonly,ctx);case 48:convertData=_context82.sent;return _context82.abrupt("break",153);case 50:if(readonly){convertData={type:'static-text'};}return _context82.abrupt("break",153);case 52:convertData={type:getAmisStaticFieldType$1('url',readonly,field),"static":readonly?true:false};if(readonly&&field.show_as_qr){convertData={type:"control",label:field.label,body:{type:"qr-code",codeSize:128,name:field.name}};}return _context82.abrupt("break",153);case 55:convertData={type:getAmisStaticFieldType$1('email',readonly)};return _context82.abrupt("break",153);case 57:// 申请ak后需要设置白名单; https://lbsyun.baidu.com/apiconsole/key/create#/home
|
|
594
595
|
// console.log('fie==>', field.name, field);
|
|
595
|
-
ak="LiZT5dVbGTsPI91tFGcOlSpe5FDehpf7";vendor="baidu";/* 'baidu' | 'gaode' */if(window.Meteor){map_ak=(_Meteor$settings=Meteor.settings)===null||_Meteor$settings===void 0?void 0:(_Meteor$settings$publ=_Meteor$settings["public"])===null||_Meteor$settings$publ===void 0?void 0:(_Meteor$settings$publ2=_Meteor$settings$publ.amis)===null||_Meteor$settings$publ2===void 0?void 0:_Meteor$settings$publ2.map_ak;if(map_ak){ak=map_ak;}map_vendor=(_Meteor$settings2=Meteor.settings)===null||_Meteor$settings2===void 0?void 0:(_Meteor$settings2$pub=_Meteor$settings2["public"])===null||_Meteor$settings2$pub===void 0?void 0:(_Meteor$settings2$pub2=_Meteor$settings2$pub.amis)===null||_Meteor$settings2$pub2===void 0?void 0:_Meteor$settings2$pub2.map_vendor;if(map_vendor){vendor=map_vendor;}}coordinatesType=field.coordinatesType||"bd09";convertData={type:getAmisStaticFieldType('location',readonly),tpl:readonly?getLocationTpl(field):null,ak:ak,vendor:vendor,clearable:true,coordinatesType:coordinatesType,label:field.label,pipeOut:function pipeOut(value,oldValue,data){if(value){var lng=value.lng;var lat=value.lat;var coordinates=[lng,lat];if(window.coordtransform){if(coordinatesType.toLowerCase()==='bd09'){var bd09togcj02=window.coordtransform.bd09togcj02(lng,lat);coordinates=window.coordtransform.gcj02towgs84(bd09togcj02[0],bd09togcj02[1]);}else if(coordinatesType.toLowerCase()==='gcj02'){coordinates=window.coordtransform.gcj02towgs84(lng,lat);}}value.wgs84={type:"Point",coordinates:coordinates};return value;// 切换到数字之后的默认值
|
|
596
|
-
}}};return _context82.abrupt("break",
|
|
596
|
+
ak="LiZT5dVbGTsPI91tFGcOlSpe5FDehpf7";vendor="baidu";/* 'baidu' | 'gaode' */if(window.Meteor){map_ak=(_Meteor$settings=Meteor.settings)===null||_Meteor$settings===void 0?void 0:(_Meteor$settings$publ=_Meteor$settings["public"])===null||_Meteor$settings$publ===void 0?void 0:(_Meteor$settings$publ2=_Meteor$settings$publ.amis)===null||_Meteor$settings$publ2===void 0?void 0:_Meteor$settings$publ2.map_ak;if(map_ak){ak=map_ak;}map_vendor=(_Meteor$settings2=Meteor.settings)===null||_Meteor$settings2===void 0?void 0:(_Meteor$settings2$pub=_Meteor$settings2["public"])===null||_Meteor$settings2$pub===void 0?void 0:(_Meteor$settings2$pub2=_Meteor$settings2$pub.amis)===null||_Meteor$settings2$pub2===void 0?void 0:_Meteor$settings2$pub2.map_vendor;if(map_vendor){vendor=map_vendor;}}coordinatesType=field.coordinatesType||"bd09";convertData={type:getAmisStaticFieldType$1('location',readonly),tpl:readonly?getLocationTpl(field):null,ak:ak,vendor:vendor,clearable:true,coordinatesType:coordinatesType,label:field.label,pipeOut:function pipeOut(value,oldValue,data){if(value){var lng=value.lng;var lat=value.lat;var coordinates=[lng,lat];if(window.coordtransform){if(coordinatesType.toLowerCase()==='bd09'){var bd09togcj02=window.coordtransform.bd09togcj02(lng,lat);coordinates=window.coordtransform.gcj02towgs84(bd09togcj02[0],bd09togcj02[1]);}else if(coordinatesType.toLowerCase()==='gcj02'){coordinates=window.coordtransform.gcj02towgs84(lng,lat);}}value.wgs84={type:"Point",coordinates:coordinates};return value;// 切换到数字之后的默认值
|
|
597
|
+
}}};return _context82.abrupt("break",153);case 63:convertData=getAmisFileSchema(field,readonly);return _context82.abrupt("break",153);case 65:convertData=getAmisFileSchema(field,readonly);return _context82.abrupt("break",153);case 67:convertData=getAmisFileSchema(field,readonly);return _context82.abrupt("break",153);case 69:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}return _context82.abrupt("break",153);case 71:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}return _context82.abrupt("break",153);case 73:convertData={type:"editor",disabled:readonly?true:false,language:field.language,editorDidMount:new Function('editor','monaco',field.editorDidMount)};return _context82.abrupt("break",153);case 75:convertData={type:"switch",name:field.name,label:field.label,width:field.width,toggled:field.toggled,disabled:readonly};return _context82.abrupt("break",153);case 77:if(!field.subFields){_context82.next=99;break;}convertData={type:'input-table',showIndex:true,columnsTogglable:false,strictMode:false,affixHeader:false,// 是否固定表头, 不固定表头, 否则form有y轴滚动条时, 表头会跟随滚动条滚动.
|
|
597
598
|
needConfirm:false,editable:!readonly,addable:!readonly,removable:!readonly,draggable:!readonly,columns:[]};// console.log(`convertData ==2====>`, field, convertData)
|
|
598
|
-
_iterator7=_createForOfIteratorHelper(field.subFields);_context82.prev=80;_iterator7.s();case 82:if((_step8=_iterator7.n()).done){_context82.next=91;break;}subField=_step8.value;subFieldName=subField.name.replace("".concat(field._prefix||'').concat(field.name,".$."),'').replace("".concat(field.name,"."),'');_context82.next=87;return convertSFieldToAmisField(Object.assign({},subField,{name:subFieldName,isTableField:true}),readonly,ctx);case 87:gridSub=_context82.sent;if(gridSub){delete gridSub.name;delete gridSub.label;gridItemSchema={name:subFieldName,label:subField.label,quickEdit:readonly?false:gridSub};if(["lookup","boolean","toggle"].indexOf(subField.type)>-1){gridItemSchema.type=gridSub.type;gridItemSchema.tpl=gridSub.tpl;}convertData.columns.push(Object.assign({},gridItemSchema,subField.amis,{name:subFieldName}));}case 89:_context82.next=82;break;case 91:_context82.next=96;break;case 93:_context82.prev=93;_context82.t1=_context82["catch"](80);_iterator7.e(_context82.t1);case 96:_context82.prev=96;_iterator7.f();return _context82.finish(96);case 99:return _context82.abrupt("break",
|
|
599
|
-
|
|
600
|
-
if(field.visible_on.startsWith("{{")){convertData.visibleOn="".concat(field.visible_on.substring(2,field.visible_on.length-2).replace(/formData./g,'data.'));}else{convertData.visibleOn="".concat(field.visible_on.replace(/formData./g,'data.'));}}if(_$1__namespace.isString(baseData.required)){if(baseData.required.startsWith("{{")){baseData.requiredOn="".concat(baseData.required.substring(2,baseData.required.length-2).replace(/formData./g,'data.'));delete baseData.required;}}if(!(convertData.type==='group')){_context82.next=
|
|
601
|
-
|
|
599
|
+
_iterator7=_createForOfIteratorHelper(field.subFields);_context82.prev=80;_iterator7.s();case 82:if((_step8=_iterator7.n()).done){_context82.next=91;break;}subField=_step8.value;subFieldName=subField.name.replace("".concat(field._prefix||'').concat(field.name,".$."),'').replace("".concat(field.name,"."),'');_context82.next=87;return convertSFieldToAmisField(Object.assign({},subField,{name:subFieldName,isTableField:true}),readonly,ctx);case 87:gridSub=_context82.sent;if(gridSub){delete gridSub.name;delete gridSub.label;gridItemSchema={name:subFieldName,label:subField.label,quickEdit:readonly?false:gridSub};if(["lookup","boolean","toggle"].indexOf(subField.type)>-1){gridItemSchema.type=gridSub.type;gridItemSchema.tpl=gridSub.tpl;}convertData.columns.push(Object.assign({},gridItemSchema,subField.amis,{name:subFieldName}));}case 89:_context82.next=82;break;case 91:_context82.next=96;break;case 93:_context82.prev=93;_context82.t1=_context82["catch"](80);_iterator7.e(_context82.t1);case 96:_context82.prev=96;_iterator7.f();return _context82.finish(96);case 99:return _context82.abrupt("break",153);case 100:if(!field.subFields){_context82.next=122;break;}convertData={type:'steedos-input-table',showIndex:true,editable:!readonly,addable:!readonly,removable:!readonly,draggable:!readonly,fields:[],amis:{columnsTogglable:false}};_iterator8=_createForOfIteratorHelper(field.subFields);_context82.prev=103;_iterator8.s();case 105:if((_step9=_iterator8.n()).done){_context82.next=114;break;}_subField=_step9.value;_subFieldName=_subField.name.replace("".concat(field._prefix||'').concat(field.name,".$."),'').replace("".concat(field.name,"."),'');_context82.next=110;return convertSFieldToAmisField(Object.assign({},_subField,{name:_subFieldName,isTableField:true}),readonly,ctx);case 110:_gridSub=_context82.sent;if(_gridSub){convertData.fields.push(Object.assign({},_subField,{name:_subFieldName}));}case 112:_context82.next=105;break;case 114:_context82.next=119;break;case 116:_context82.prev=116;_context82.t2=_context82["catch"](103);_iterator8.e(_context82.t2);case 119:_context82.prev=119;_iterator8.f();return _context82.finish(119);case 122:return _context82.abrupt("break",153);case 123:if(!field.subFields){_context82.next=152;break;}convertData={type:'combo',items:[]};// console.log(`convertData ======>`, field, convertData)
|
|
600
|
+
_iterator9=_createForOfIteratorHelper(field.subFields);_context82.prev=126;_iterator9.s();case 128:if((_step10=_iterator9.n()).done){_context82.next=144;break;}_subField2=_step10.value;_subFieldName2=_subField2.name.replace("".concat(field.name,".$."),'').replace("".concat(field.name,"."),'');if(!(_subField2.type==='grid')){_context82.next=137;break;}_context82.next=134;return getGridFieldSubFields(_subField2,ctx.__formFields);case 134:_subField2=_context82.sent;_context82.next=138;break;case 137:if(readonly){_subFieldName2="".concat(field.name,".").concat(_subFieldName2);}case 138:_context82.next=140;return convertSFieldToAmisField(Object.assign({},_subField2,{name:_subFieldName2}),readonly,ctx);case 140:_gridSub2=_context82.sent;if(_gridSub2){delete _gridSub2.name;delete _gridSub2.label;convertData.items.push(Object.assign({},_gridSub2,{label:_subField2.label},_subField2.amis,{name:_subFieldName2}));}case 142:_context82.next=128;break;case 144:_context82.next=149;break;case 146:_context82.prev=146;_context82.t3=_context82["catch"](126);_iterator9.e(_context82.t3);case 149:_context82.prev=149;_iterator9.f();return _context82.finish(149);case 152:return _context82.abrupt("break",153);case 153:if(_$1__namespace.isEmpty(convertData)){_context82.next=166;break;}if(field.is_wide||convertData.type==='group'){convertData.className='col-span-2 m-1';}else{convertData.className='m-1';}if(readonly){convertData.className="".concat(convertData.className," border-b");}if(readonly){convertData.quickEdit=false;}fieldTypeClassName=' steedos-'+convertData.type+(readonly?'-readonly':'-edit');if(convertData.className){convertData.className=convertData.className+fieldTypeClassName;}else{convertData.className=fieldTypeClassName;}if(field.visible_on&&!ctx.inFilterForm){// convertData.visibleOn = `\$${field.visible_on.substring(1, field.visible_on.length -1).replace(/formData./g, '')}`;
|
|
601
|
+
if(field.visible_on.startsWith("{{")){convertData.visibleOn="".concat(field.visible_on.substring(2,field.visible_on.length-2).replace(/formData./g,'data.'));}else{convertData.visibleOn="".concat(field.visible_on.replace(/formData./g,'data.'));}}if(_$1__namespace.isString(baseData.required)){if(baseData.required.startsWith("{{")){baseData.requiredOn="".concat(baseData.required.substring(2,baseData.required.length-2).replace(/formData./g,'data.'));delete baseData.required;}}if(!(convertData.type==='group')){_context82.next=164;break;}convertData.body[0]=Object.assign({},baseData,convertData.body[0],{labelClassName:'text-left',clearValueOnHidden:true,fieldName:field.name});return _context82.abrupt("return",convertData);case 164:// if(ctx.mode === 'edit'){
|
|
602
|
+
convertDataResult=Object.assign({},baseData,convertData,{labelClassName:'text-left',clearValueOnHidden:true,fieldName:field.name},field.amis,{name:baseData.name});// console.log("convertDataResult:", convertDataResult);
|
|
603
|
+
return _context82.abrupt("return",convertDataResult);case 166:case"end":return _context82.stop();}}},_callee82,null,[[80,93,96,99],[103,116,119,122],[126,146,149,152]]);}));return _convertSFieldToAmisField.apply(this,arguments);}function getFieldSearchable(_x108,_x109,_x110){return _getFieldSearchable.apply(this,arguments);}function _getFieldSearchable(){_getFieldSearchable=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee83(perField,permissionFields,ctx){var field,fieldNamePrefix,_field,amisField;return _regeneratorRuntime().wrap(function _callee83$(_context83){while(1){switch(_context83.prev=_context83.next){case 0:if(!ctx){ctx={};}field=perField;if(!(field.type==='grid')){_context83.next=8;break;}_context83.next=5;return getGridFieldSubFields(perField,permissionFields);case 5:field=_context83.sent;_context83.next=12;break;case 8:if(!(perField.type==='object')){_context83.next=12;break;}_context83.next=11;return getObjectFieldSubFields(perField,permissionFields);case 11:field=_context83.sent;case 12:fieldNamePrefix='__searchable__';if(!(field.name.indexOf(".")<0)){_context83.next=36;break;}_field=_$1.cloneDeep(field);if(_$1.includes(['textarea','html','code','autonumber'],field.type)){_field.type='text';}if(_$1.includes(['formula','summary'],field.type)){_field.type=field.data_type;_field.precision=field.precision;_field.scale=field.scale;}else if(field.type==="select"&&field.data_type&&field.data_type!="text"){_field.type=field.data_type;}if(_field.type==='number'||_field.type==='currency'){_field.type='input-array';_field.inline=true;_field.addable=false;_field.removable=false;_field.value=[null,null];_field.items={type:"input-number"};_field.is_wide=true;fieldNamePrefix="".concat(fieldNamePrefix,"between__");}if(_field.type==='date'){_field.type='input-date-range';_field.is_wide=true;fieldNamePrefix="".concat(fieldNamePrefix,"between__");}if(_field.type==='datetime'){_field.type='input-datetime-range';_field.is_wide=true;fieldNamePrefix="".concat(fieldNamePrefix,"between__");}if(_field.type==='time'){_field.type='input-time-range';_field.is_wide=true;fieldNamePrefix="".concat(fieldNamePrefix,"between__");}if(_field.reference_to==='users'){_field.reference_to='space_users';_field.reference_to_field='user';}_field.readonly=false;_field.disabled=false;_field.multiple=true;_field.is_wide=false;_field.defaultValue=undefined;_field.required=false;_field.hidden=false;_field.omit=false;if(_field.amis){delete _field.amis["static"];delete _field.amis.staticOn;delete _field.amis.disabled;delete _field.amis.disabledOn;delete _field.amis.required;delete _field.amis.requiredOn;delete _field.amis.visible;delete _field.amis.visibleOn;delete _field.amis.hidden;delete _field.amis.hiddenOn;delete _field.amis.autoFill;}_context83.next=33;return convertSFieldToAmisField(_field,false,Object.assign({},ctx,{fieldNamePrefix:fieldNamePrefix,required:false,showSystemFields:true,inFilterForm:true}));case 33:amisField=_context83.sent;if(!amisField){_context83.next=36;break;}return _context83.abrupt("return",Object.assign({},amisField,{submitOnChange:false}));case 36:case"end":return _context83.stop();}}},_callee83);}));return _getFieldSearchable.apply(this,arguments);}if(typeof window!='undefined'){window.getFieldSearchable=getFieldSearchable;}function isFieldTypeSearchable(fieldType){return!_$1__namespace.includes(["grid","avatar","image","object","[object]","[Object]","[grid]","[text]","audio","file"],fieldType);}if(typeof window!='undefined'){window.isFieldTypeSearchable=isFieldTypeSearchable;}function isFieldQuickSearchable(field,nameFieldKey){var fieldSearchable=field.searchable;if(fieldSearchable!==false&&field.name===nameFieldKey){// 对象上名称字段的searchable默认认为是true
|
|
604
|
+
fieldSearchable=true;}if(fieldSearchable&&QUICK_SEARCHABLE_FIELD_TYPES.indexOf(field.type)>-1){return true;}return false;}var index=/*#__PURE__*/Object.freeze({__proto__:null,QUICK_SEARCHABLE_FIELD_TYPES:QUICK_SEARCHABLE_FIELD_TYPES,OMIT_FIELDS:OMIT_FIELDS,getBaseFields:getBaseFields,getAmisFieldType:getAmisFieldType,getObjectFieldSubFields:getObjectFieldSubFields,getGridFieldSubFields:getGridFieldSubFields,getTabledFieldSubFields:getTabledFieldSubFields,getPermissionFields:getPermissionFields,getSelectFieldOptions:getSelectFieldOptions,convertSFieldToAmisField:convertSFieldToAmisField,getFieldSearchable:getFieldSearchable,isFieldTypeSearchable:isFieldTypeSearchable,isFieldQuickSearchable:isFieldQuickSearchable,getAmisStaticFieldType:getAmisStaticFieldType$1});var API_CACHE=100;function getReadonlyFormAdaptor(object,fields,options){var scriptStr='';var selectFields=_$1__namespace.filter(fields,function(field){return field.name.indexOf('.')<0&&(field.type=='select'&&field.options||(field.type=='lookup'||field.type=='master_detail')&&!field.reference_to);});var gridAndObjectFieldsName=_$1__namespace.map(_$1__namespace.filter(fields,function(field){return field.name.indexOf('.')<0&&(field.type==='object'||field.type==='grid');}),'name');_$1__namespace.each(selectFields,function(field){if(!_$1__namespace.includes(OMIT_FIELDS,field.name)){field.name;if(field.options){var _options=JSON.stringify({options:field.options});scriptStr=scriptStr+"var ".concat(field.name,"Options= (").concat(_options,").options;");}else if(field.optionsFunction){scriptStr=scriptStr+"var ".concat(field.name,"Options = eval(").concat(field.optionsFunction.toString(),")(api.data);");}else if(field._optionsFunction){scriptStr=scriptStr+"var ".concat(field.name,"Options = eval(").concat(field._optionsFunction,")(api.data);");}if(field.multiple){scriptStr=scriptStr+"data.".concat(field.name,"__label = _.map(_.filter(").concat(field.name,"Options, function(option){return _.includes(data.").concat(field.name,", option.value)}), 'label');");}else{scriptStr=scriptStr+"var ".concat(field.name,"Selected = _.find(").concat(field.name,"Options, function(option){return data.").concat(field.name," == option.value});");scriptStr=scriptStr+"data.".concat(field.name,"__label = ").concat(field.name,"Selected ? ").concat(field.name,"Selected.label:null;");}}});// const refFields = _.filter(fields, function(field){return field.name.indexOf('.') < 0 && (field.type == 'lookup' || field.type == 'master_detail') && !field.reference_to});
|
|
602
605
|
// _.each(refFields, function(field){
|
|
603
606
|
// if(!_.includes(OMIT_FIELDS, field.name)){
|
|
604
607
|
// const valueField = field.reference_to_field || '_id';
|
|
@@ -674,14 +677,21 @@ data[key_1]={};data=data[key_1];}else{data[key_1]={};data=data[key_1];}}data[las
|
|
|
674
677
|
* @Author: baozhoutao@steedos.com
|
|
675
678
|
* @Date: 2022-05-26 16:02:08
|
|
676
679
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
677
|
-
* @LastEditTime: 2023-
|
|
680
|
+
* @LastEditTime: 2023-11-28 17:00:28
|
|
678
681
|
* @Description:
|
|
679
682
|
*/var getFieldSchemaArray=function getFieldSchemaArray(formFields,ctx){var fieldSchemaArray=[];fieldSchemaArray.length=0;var recordId=ctx&&ctx.recordId;_$1__namespace.forEach(formFields,function(field){if(!field.group||field.group=='null'||field.group=='-')field.group=instance.t('frontend_field_group_generalization');var fieldName=field.name;var isObjectField=/\w+\.\w+/.test(fieldName);if(field.type=='grid'||field.type=='object'){// field.group = field.label
|
|
680
683
|
field.is_wide=true;}var forceHidden=false;if(!recordId&&field.readonly&&!ctx.isEditor){// 新建记录时,只读字段先隐藏,后续支持显示后,即任务:https://github.com/steedos/steedos-platform/issues/3164 完成后再放开
|
|
681
684
|
// 表单只读时所有字段都是readonly,设计器中如果forceHidden会造成整个表单在只读的时候显示为空白了,所以要排除掉
|
|
682
|
-
forceHidden=true;}if(!isObjectField){if(!field.hidden&&!forceHidden){fieldSchemaArray.push(Object.assign({name:fieldName},field,{permission:{allowEdit:true}}));}}});return fieldSchemaArray;};var getSection=/*#__PURE__*/function(){var _ref14=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee14(formFields,permissionFields,fieldSchemaArray,sectionName,ctx){var sectionFields,fieldSetBody,_iterator,_step,perField,field,amisField,sectionFieldsVisibleOn,section,fieldGroups,group,groupVisibleOn;return _regeneratorRuntime().wrap(function _callee14$(_context14){while(1){switch(_context14.prev=_context14.next){case 0:if(!ctx){ctx={};}sectionFields=_$1__namespace.filter(fieldSchemaArray,{'group':sectionName});if(!(sectionFields.length==_$1__namespace.filter(sectionFields,['hidden',true]).length)){_context14.next=4;break;}return _context14.abrupt("return");case 4:fieldSetBody=[];_iterator=_createForOfIteratorHelper(sectionFields);_context14.prev=6;_iterator.s();case 8:if((_step=_iterator.n()).done){_context14.next=
|
|
683
|
-
|
|
684
|
-
|
|
685
|
+
forceHidden=true;}if(!isObjectField){if(!field.hidden&&!forceHidden){fieldSchemaArray.push(Object.assign({name:fieldName},field,{permission:{allowEdit:true}}));}}});return fieldSchemaArray;};var getSection=/*#__PURE__*/function(){var _ref14=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee14(formFields,permissionFields,fieldSchemaArray,sectionName,ctx){var sectionFields,fieldSetBody,_iterator,_step,perField,field,amisField,sectionFieldsVisibleOn,section,fieldGroups,group,groupVisibleOn;return _regeneratorRuntime().wrap(function _callee14$(_context14){while(1){switch(_context14.prev=_context14.next){case 0:if(!ctx){ctx={};}sectionFields=_$1__namespace.filter(fieldSchemaArray,{'group':sectionName});if(!(sectionFields.length==_$1__namespace.filter(sectionFields,['hidden',true]).length)){_context14.next=4;break;}return _context14.abrupt("return");case 4:fieldSetBody=[];_iterator=_createForOfIteratorHelper(sectionFields);_context14.prev=6;_iterator.s();case 8:if((_step=_iterator.n()).done){_context14.next=35;break;}perField=_step.value;field=perField;if(!(perField.type==='grid')){_context14.next=17;break;}_context14.next=14;return getGridFieldSubFields(perField,formFields);case 14:field=_context14.sent;_context14.next=27;break;case 17:if(!(perField.type==='table')){_context14.next=23;break;}_context14.next=20;return getTabledFieldSubFields(perField,formFields);case 20:field=_context14.sent;_context14.next=27;break;case 23:if(!(perField.type==='object')){_context14.next=27;break;}_context14.next=26;return getObjectFieldSubFields(perField,formFields);case 26:field=_context14.sent;case 27:if(!(field.name.indexOf(".")<0)){_context14.next=33;break;}ctx.__formFields=formFields;_context14.next=31;return convertSFieldToAmisField(field,field.readonly,ctx);case 31:amisField=_context14.sent;// 如果steedos-field稳定了,可以放开下面的代码直接用组件统一渲染字段
|
|
686
|
+
// const amisField = {
|
|
687
|
+
// "type": "steedos-field",
|
|
688
|
+
// "config": field,
|
|
689
|
+
// "readonly": field.readonly,
|
|
690
|
+
// "ctx": ctx
|
|
691
|
+
// };
|
|
692
|
+
// console.log(`${field.name} amisField`, field, amisField)
|
|
693
|
+
if(amisField){fieldSetBody.push(amisField);}case 33:_context14.next=8;break;case 35:_context14.next=40;break;case 37:_context14.prev=37;_context14.t0=_context14["catch"](6);_iterator.e(_context14.t0);case 40:_context14.prev=40;_iterator.f();return _context14.finish(40);case 43:// fieldSet 已支持显隐控制
|
|
694
|
+
sectionFieldsVisibleOn=_$1__namespace.map(_$1__namespace.compact(_$1__namespace.map(fieldSetBody,'visibleOn')),function(visibleOn){var visible=visibleOn;if(visible.indexOf('${')>-1){visible=visible.substring(visible.indexOf('{')+1,visible.indexOf('}'));}return visible?"("+visible+")":visible;});section={"type":"fieldSet","title":sectionName,"collapsable":true,"body":fieldSetBody};if(ctx.enableTabs){section={"title":sectionName,"body":fieldSetBody};}if(sectionFieldsVisibleOn.length>0&&fieldSetBody.length===sectionFieldsVisibleOn.length){section.visibleOn="".concat(sectionFieldsVisibleOn.join(" || "));}fieldGroups=ctx.fieldGroups;group=fieldGroups&&fieldGroups.find(function(groupItem){return groupItem.group_name==sectionName;});groupVisibleOn=group&&group.visible_on;if(groupVisibleOn){if(groupVisibleOn.startsWith("{{")){groupVisibleOn="".concat(groupVisibleOn.substring(2,groupVisibleOn.length-2).replace(/formData./g,'data.'));}else{groupVisibleOn="".concat(groupVisibleOn.replace(/formData./g,'data.'));}if(section.visibleOn){section.visibleOn="".concat(section.visibleOn+" && "+groupVisibleOn);}else{section.visibleOn=groupVisibleOn;}}return _context14.abrupt("return",section);case 52:case"end":return _context14.stop();}}},_callee14,null,[[6,37,40,43]]);}));return function getSection(_x125,_x126,_x127,_x128,_x129){return _ref14.apply(this,arguments);};}();var getSections=/*#__PURE__*/function(){var _ref15=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee15(permissionFields,formFields,ctx){var fieldSchemaArray,_sections,sections,sectionVisibleOns,key,section;return _regeneratorRuntime().wrap(function _callee15$(_context15){while(1){switch(_context15.prev=_context15.next){case 0:if(!ctx){ctx={};}fieldSchemaArray=getFieldSchemaArray(formFields,ctx);_sections=_$1__namespace.groupBy(fieldSchemaArray,'group');sections=[];sectionVisibleOns=[];_context15.t0=_regeneratorRuntime().keys(_sections);case 6:if((_context15.t1=_context15.t0()).done){_context15.next=14;break;}key=_context15.t1.value;_context15.next=10;return getSection(formFields,permissionFields,fieldSchemaArray,key,ctx);case 10:section=_context15.sent;if(section.body.length>0){if(section.visibleOn){sectionVisibleOns.push("("+section.visibleOn+")");}else{sectionVisibleOns.push("true");}sections.push(section);}_context15.next=6;break;case 14:/*
|
|
685
695
|
为了实现只有一个分组时隐藏该分组标题,需要分三种情况(分组如果没有visibleon属性就代表一定显示,有visibleon需要进行判断)
|
|
686
696
|
1 当前分组为隐藏时,标题就设置为隐藏
|
|
687
697
|
2 当前分组为显示时,其他分组只要有一个是显示,就显示该分组标题
|
|
@@ -720,14 +730,14 @@ function _getFormBody(){_getFormBody=_asyncToGenerator(/*#__PURE__*/_regenerator
|
|
|
720
730
|
// }
|
|
721
731
|
// }
|
|
722
732
|
// }
|
|
723
|
-
];}function getCrudSchemaWithDataFilter(_x136){return _getCrudSchemaWithDataFilter.apply(this,arguments);}function _getCrudSchemaWithDataFilter(){_getCrudSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee89(crud){var options,crudDataFilter,amisData,env,onCrudDataFilter,_args89=arguments;return _regeneratorRuntime().wrap(function _callee89$(_context89){while(1){switch(_context89.prev=_context89.next){case 0:options=_args89.length>1&&_args89[1]!==undefined?_args89[1]:{};crudDataFilter=options.crudDataFilter,amisData=options.amisData,env=options.env;onCrudDataFilter=options.onCrudDataFilter;if(!onCrudDataFilter&&typeof crudDataFilter==='string'){onCrudDataFilter=new Function('crud','env','data',crudDataFilter);}_context89.prev=4;_context89.t0=onCrudDataFilter;if(!_context89.t0){_context89.next=13;break;}_context89.next=9;return onCrudDataFilter(crud,env,amisData);case 9:_context89.t1=_context89.sent;if(_context89.t1){_context89.next=12;break;}_context89.t1=crud;case 12:crud=_context89.t1;case 13:_context89.next=18;break;case 15:_context89.prev=15;_context89.t2=_context89["catch"](4);console.warn(_context89.t2);case 18:return _context89.abrupt("return",crud);case 19:case"end":return _context89.stop();}}},_callee89,null,[[4,15]]);}));return _getCrudSchemaWithDataFilter.apply(this,arguments);}function getObjectCRUD(_x137,_x138,_x139){return _getObjectCRUD.apply(this,arguments);}function _getObjectCRUD(){_getObjectCRUD=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee90(objectSchema,fields,options){var top,perPage,_options$showDisplayA,showDisplayAs,displayAs,_options$crudClassNam,crudClassName,crudDataFilter,onCrudDataFilter,amisData,env,nonpaged,isTreeObject,bulkActions,defaults,listSchema,bodyProps,body,
|
|
724
|
-
top=options.top,perPage=options.perPage,_options$showDisplayA=options.showDisplayAs,showDisplayAs=_options$showDisplayA===void 0?false:_options$showDisplayA,displayAs=options.displayAs,_options$crudClassNam=options.crudClassName,crudClassName=_options$crudClassNam===void 0?"":_options$crudClassNam,crudDataFilter=options.crudDataFilter,onCrudDataFilter=options.onCrudDataFilter,amisData=options.amisData,env=options.env;nonpaged=objectSchema.paging&&objectSchema.paging.enabled===false;isTreeObject=objectSchema.enable_tree;bulkActions=getBulkActions(objectSchema);defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};_context90.t0=getObjectFooterToolbar(objectSchema,options.formFactor,_objectSpread2(_objectSpread2({},options),{},{disableStatistics:options.queryCount===false}));_context90.t1=options.filterVisible!==false;if(!_context90.t1){_context90.next=
|
|
733
|
+
];}function getCrudSchemaWithDataFilter(_x136){return _getCrudSchemaWithDataFilter.apply(this,arguments);}function _getCrudSchemaWithDataFilter(){_getCrudSchemaWithDataFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee89(crud){var options,crudDataFilter,amisData,env,onCrudDataFilter,_args89=arguments;return _regeneratorRuntime().wrap(function _callee89$(_context89){while(1){switch(_context89.prev=_context89.next){case 0:options=_args89.length>1&&_args89[1]!==undefined?_args89[1]:{};crudDataFilter=options.crudDataFilter,amisData=options.amisData,env=options.env;onCrudDataFilter=options.onCrudDataFilter;if(!onCrudDataFilter&&typeof crudDataFilter==='string'){onCrudDataFilter=new Function('crud','env','data',crudDataFilter);}_context89.prev=4;_context89.t0=onCrudDataFilter;if(!_context89.t0){_context89.next=13;break;}_context89.next=9;return onCrudDataFilter(crud,env,amisData);case 9:_context89.t1=_context89.sent;if(_context89.t1){_context89.next=12;break;}_context89.t1=crud;case 12:crud=_context89.t1;case 13:_context89.next=18;break;case 15:_context89.prev=15;_context89.t2=_context89["catch"](4);console.warn(_context89.t2);case 18:return _context89.abrupt("return",crud);case 19:case"end":return _context89.stop();}}},_callee89,null,[[4,15]]);}));return _getCrudSchemaWithDataFilter.apply(this,arguments);}function getObjectCRUD(_x137,_x138,_x139){return _getObjectCRUD.apply(this,arguments);}function _getObjectCRUD(){_getObjectCRUD=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee90(objectSchema,fields,options){var top,perPage,_options$showDisplayA,showDisplayAs,displayAs,_options$crudClassNam,crudClassName,crudDataFilter,onCrudDataFilter,amisData,env,nonpaged,isTreeObject,bulkActions,defaults,listSchema,id,bodyProps,body,card,labelFieldName,tableOptions,table,imageNames,quickSaveApiRequestAdaptor,autoFillHeight,crudModeClassName,headerSchema,footerSchema,wrappedBody;return _regeneratorRuntime().wrap(function _callee90$(_context90){while(1){switch(_context90.prev=_context90.next){case 0:// console.time('getObjectCRUD');
|
|
734
|
+
top=options.top,perPage=options.perPage,_options$showDisplayA=options.showDisplayAs,showDisplayAs=_options$showDisplayA===void 0?false:_options$showDisplayA,displayAs=options.displayAs,_options$crudClassNam=options.crudClassName,crudClassName=_options$crudClassNam===void 0?"":_options$crudClassNam,crudDataFilter=options.crudDataFilter,onCrudDataFilter=options.onCrudDataFilter,amisData=options.amisData,env=options.env;nonpaged=objectSchema.paging&&objectSchema.paging.enabled===false;isTreeObject=objectSchema.enable_tree;bulkActions=getBulkActions(objectSchema);defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};id="listview_".concat(objectSchema.name);_context90.t0=getObjectFooterToolbar(objectSchema,options.formFactor,_objectSpread2(_objectSpread2({},options),{},{disableStatistics:options.queryCount===false}));_context90.t1=options.filterVisible!==false;if(!_context90.t1){_context90.next=13;break;}_context90.next=12;return getObjectFilter(objectSchema,fields,Object.assign({},options,{crudId:id}));case 12:_context90.t1=_context90.sent;case 13:_context90.t2=_context90.t1;bodyProps={headerToolbarClassName:"px-4 py-2 border-gray-300 bg-gray-100 border-solid border-b",footerToolbar:_context90.t0,filter:_context90.t2};if(options.formFactor!=='SMALL'||["split"].indexOf(options.displayAs)==-1){if(listSchema.mode!=="cards"){// card模式时默认不显示勾选框
|
|
725
735
|
Object.assign(bodyProps,{bulkActions:options.bulkActions!=false?bulkActions:false});}}// yml里配置的 不分页和enable_tree:true 优先级最高,组件中输入的top次之。
|
|
726
736
|
options.queryCount=true;if(nonpaged||isTreeObject){options.top=5000;bodyProps.footerToolbar=[];options.queryCount=true;// 禁止翻页的时候, 需要查找总数
|
|
727
737
|
}else if(top){bodyProps.footerToolbar=[];if(options.isRelated){options.queryCount=true;}else{options.queryCount=false;}}// console.log(`getObjectHeaderToolbar====2===>`, options.filterVisible)
|
|
728
|
-
bodyProps.headerToolbar=getObjectHeaderToolbar(objectSchema,fields,options.formFactor,{showDisplayAs:showDisplayAs,hiddenCount:options.queryCount===false,headerToolbarItems:options.headerToolbarItems,filterVisible:options.filterVisible});options.amisData=createObject(options.amisData,{objectName:objectSchema.name,// _id: null,
|
|
738
|
+
bodyProps.headerToolbar=getObjectHeaderToolbar(objectSchema,fields,options.formFactor,{showDisplayAs:showDisplayAs,hiddenCount:options.queryCount===false,headerToolbarItems:options.headerToolbarItems,filterVisible:options.filterVisible,crudId:id});options.amisData=createObject(options.amisData,{objectName:objectSchema.name,// _id: null,
|
|
729
739
|
recordPermissions:objectSchema.permissions,uiSchema:objectSchema// loaded: false //crud接收适配器中设置为true,否则就是刷新浏览器第一次加载
|
|
730
|
-
});body=null;
|
|
740
|
+
});body=null;if(!(options.formFactor==='SMALL'&&false)){_context90.next=42;break;}delete bodyProps.bulkActions;delete bodyProps.headerToolbar;delete bodyProps.footerToolbar;_context90.next=27;return getCardSchema(fields,Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:objectSchema.NAME_FIELD_KEY||'name'},options,{actions:false}));case 27:card=_context90.sent;_context90.t3=Object;_context90.t4={};_context90.t5=card;_context90.t6=id;_context90.t7=id;_context90.next=35;return getTableApi(objectSchema,fields,options);case 35:_context90.t8=_context90.sent;_context90.t9=options.tableHiddenOn;_context90.t10={type:'crud',primaryField:'_id',id:_context90.t6,name:_context90.t7,keepItemSelectionOnPageChange:false,api:_context90.t8,hiddenOn:_context90.t9};_context90.t11=bodyProps;body=_context90.t3.assign.call(_context90.t3,_context90.t4,_context90.t5,_context90.t10,_context90.t11);_context90.next=70;break;case 42:labelFieldName=objectSchema.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
731
741
|
if(objectSchema.name==='organizations'){labelFieldName='name';}tableOptions=Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:labelFieldName,permissions:objectSchema.permissions,enable_inline_edit:objectSchema.enable_inline_edit,crudId:listSchema.id||id},options);tableOptions.amisData=createObject(options.amisData||{},{});_context90.next=48;return getTableSchema(fields,tableOptions);case 48:table=_context90.sent;// delete table.mode;
|
|
732
742
|
//image与avatar需要在提交修改时特别处理
|
|
733
743
|
imageNames=_$1__default["default"].compact(_$1__default["default"].map(_$1__default["default"].filter(fields,function(field){return["image","avatar"].includes(field.type);}),'name'));quickSaveApiRequestAdaptor="\n var graphqlOrder = \"\";\n var imageNames = ".concat(JSON.stringify(imageNames),";\n const rowsDiff = _.cloneDeep(api.data.rowsDiff);\n rowsDiff.forEach(function (item, index) {\n for(key in item){\n if(_.includes(imageNames, key)){\n if(typeof item[key] == \"string\"){\n const match = item[key].match(/\\/([^\\/]+)$/);\n item[key] = match && match.length > 1?match[1]:\"\";\n }else{\n item[key] = _.map(item[key], function(ele){\n const match = ele.match(/\\/([^\\/]+)$/);\n return match && match.length > 1?match[1]:\"\";\n })\n }\n }\n }\n item = _.omit(item, '_display');\n const itemOrder = 'update' + index + ':' + api.data.objectName + '__update(id:\"' + item._id + '\", doc:' + JSON.stringify(JSON.stringify(_.omit(item, '_id'))) + ') {_id}';\n graphqlOrder += itemOrder;\n })\n graphqlOrder = 'mutation {' + graphqlOrder + '}';\n return {\n ...api,\n data: {\n query: graphqlOrder\n }\n }\n ");autoFillHeight=true;if(options.isRelated||window.innerWidth<768){autoFillHeight=false;}_context90.t12=Object;_context90.t13={};_context90.t14=table;_context90.t15=id;_context90.t16=id;_context90.next=60;return getTableApi(objectSchema,fields,options);case 60:_context90.t17=_context90.sent;_context90.t18=options.tableHiddenOn;_context90.t19=autoFillHeight;_context90.t20="flex-auto ".concat(crudClassName||"");_context90.t21=crudClassName;_context90.t22={url:"${context.rootUrl}/graphql",method:"post",dataType:"json",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},requestAdaptor:quickSaveApiRequestAdaptor,adaptor:"\n if(payload.errors){\n payload.status = 2;\n payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;\n }\n return payload;\n "};_context90.t23=options.rowClassNameExpr;_context90.t24={type:'crud',primaryField:'_id',affixHeader:false,id:_context90.t15,name:_context90.t16,keepItemSelectionOnPageChange:true,api:_context90.t17,hiddenOn:_context90.t18,autoFillHeight:_context90.t19,className:_context90.t20,bodyClassName:"bg-white",crudClassName:_context90.t21,quickSaveApi:_context90.t22,rowClassNameExpr:_context90.t23};_context90.t25=bodyProps;body=_context90.t12.assign.call(_context90.t12,_context90.t13,_context90.t14,_context90.t24,_context90.t25);case 70:body=defaultsDeep({},listSchema,body);_context90.next=73;return getCrudSchemaWithDataFilter(body,{crudDataFilter:crudDataFilter,onCrudDataFilter:onCrudDataFilter,amisData:amisData,env:env});case 73:body=_context90.sent;crudModeClassName="";if(body.mode){crudModeClassName="steedos-crud-mode-".concat(body.mode);}if(defaults){headerSchema=defaults.headerSchema;footerSchema=defaults.footerSchema;if(headerSchema||footerSchema){wrappedBody=[body];if(headerSchema){if(_$1__default["default"].isArray(headerSchema)){wrappedBody=_$1__default["default"].union(headerSchema,wrappedBody);}else{wrappedBody.unshift(headerSchema);}}if(footerSchema){if(_$1__default["default"].isArray(footerSchema)){wrappedBody=_$1__default["default"].union(wrappedBody,footerSchema);}else{wrappedBody.push(footerSchema);}}body=wrappedBody;}}// console.timeEnd('getObjectCRUD');
|
|
@@ -759,7 +769,7 @@ _$1.each(fields,function(fieldName){if(fieldName.indexOf('.')>-1){fieldName=fiel
|
|
|
759
769
|
*/function str2function(contents){try{for(var _len6=arguments.length,args=new Array(_len6>1?_len6-1:0),_key6=1;_key6<_len6;_key6++){args[_key6-1]=arguments[_key6];}var fn=_construct(Function,args.concat([contents]));return fn;}catch(e){console.warn(e);return null;}}var getRelatedFieldValue=function getRelatedFieldValue(masterObjectName,record_id,uiSchema,foreign_key){var relatedField=_$1.find(uiSchema.fields,function(field){return foreign_key===(field===null||field===void 0?void 0:field.name);});// console.log(`getRelatedFieldValue`, relatedField, uiSchema, foreign_key)
|
|
760
770
|
if(!_$1.isString(relatedField.reference_to)){return{o:masterObjectName,ids:[record_id]};}else if(relatedField.multiple){return[record_id];}else{return record_id;}};// 获取所有相关表
|
|
761
771
|
function getObjectRelatedList(_x153,_x154,_x155){return _getObjectRelatedList.apply(this,arguments);}// 获取单个相关表
|
|
762
|
-
function _getObjectRelatedList(){_getObjectRelatedList=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee94(objectName,recordId,formFactor){var uiSchema,related,relatedLists,
|
|
772
|
+
function _getObjectRelatedList(){_getObjectRelatedList=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee94(objectName,recordId,formFactor){var uiSchema,related,relatedLists,_iterator10,_step11,relatedList,arr,foreign_key,details,_iterator11,_step12,detail,_arr2,_foreign_key;return _regeneratorRuntime().wrap(function _callee94$(_context94){while(1){switch(_context94.prev=_context94.next){case 0:_context94.next=2;return _getUISchema2(objectName);case 2:uiSchema=_context94.sent;related=[];relatedLists=[].concat(uiSchema.related_lists||[]);if(!_$1.isEmpty(relatedLists)){_iterator10=_createForOfIteratorHelper(relatedLists);try{for(_iterator10.s();!(_step11=_iterator10.n()).done;){relatedList=_step11.value;arr=relatedList.related_field_fullname.split(".");foreign_key=arr[2]?arr[1]+'.'+arr[2]:arr[1];related.push({masterObjectName:objectName,object_name:arr[0],foreign_key:foreign_key,label:relatedList.label,columns:relatedList.field_names,sort:relatedList.sort,filters:relatedList.filters,visible_on:relatedList.visible_on,page_size:relatedList.page_size});}}catch(err){_iterator10.e(err);}finally{_iterator10.f();}}else{details=[].concat(uiSchema.details||[]);_iterator11=_createForOfIteratorHelper(details);try{for(_iterator11.s();!(_step12=_iterator11.n()).done;){detail=_step12.value;_arr2=detail.split(".");_foreign_key=_arr2[2]?_arr2[1]+'.'+_arr2[2]:_arr2[1];related.push({masterObjectName:objectName,object_name:_arr2[0],foreign_key:_foreign_key});}}catch(err){_iterator11.e(err);}finally{_iterator11.f();}}return _context94.abrupt("return",related);case 7:case"end":return _context94.stop();}}},_callee94);}));return _getObjectRelatedList.apply(this,arguments);}function getRecordDetailRelatedListSchema(_x156,_x157,_x158,_x159,_x160){return _getRecordDetailRelatedListSchema.apply(this,arguments);}/**
|
|
763
773
|
*
|
|
764
774
|
* @param {*} uiSchema
|
|
765
775
|
* @param {*} ctx
|
|
@@ -767,8 +777,8 @@ function _getObjectRelatedList(){_getObjectRelatedList=_asyncToGenerator(/*#__PU
|
|
|
767
777
|
* 1 对象uiSchema
|
|
768
778
|
* 2 列表视图名称: (排除日历视图)当无视图传入,取is_name为true的字段显示。
|
|
769
779
|
* 3 options
|
|
770
|
-
*/function _getRecordDetailRelatedListSchema(){_getRecordDetailRelatedListSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee95(objectName,recordId,relatedObjectName,relatedKey,ctx){var top,perPage,appId,relatedLabel,className,columns,sort,filters,visible_on,relatedObjectUiSchema,label,fields,mainRelated,mainObjectUiSchema,mainRelatedLists,
|
|
771
|
-
_context95.next=3;return _getUISchema2(relatedObjectName);case 3:relatedObjectUiSchema=_context95.sent;if(relatedObjectUiSchema){_context95.next=6;break;}return _context95.abrupt("return",{uiSchema:{},amisSchema:{}});case 6:label=relatedObjectUiSchema.label,fields=relatedObjectUiSchema.fields;if(!relatedLabel){relatedLabel=label;}if(relatedKey){_context95.next=15;break;}mainRelated={};_context95.next=12;return _getUISchema2(objectName);case 12:mainObjectUiSchema=_context95.sent;if(mainObjectUiSchema){mainRelatedLists=mainObjectUiSchema.related_lists||[];if(!_$1.isEmpty(mainRelatedLists)){
|
|
780
|
+
*/function _getRecordDetailRelatedListSchema(){_getRecordDetailRelatedListSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee95(objectName,recordId,relatedObjectName,relatedKey,ctx){var top,perPage,appId,relatedLabel,className,columns,sort,filters,visible_on,relatedObjectUiSchema,label,fields,mainRelated,mainObjectUiSchema,mainRelatedLists,_iterator12,_step13,relatedList,arr,foreign_key_value,details,_iterator13,_step14,detail,_arr3,_foreign_key_value,globalFilter,refField,recordRelatedListHeader,componentId,isMobile,headerToolbar,options,amisSchema;return _regeneratorRuntime().wrap(function _callee95$(_context95){while(1){switch(_context95.prev=_context95.next){case 0:top=ctx.top,perPage=ctx.perPage,appId=ctx.appId,relatedLabel=ctx.relatedLabel,className=ctx.className,columns=ctx.columns,sort=ctx.sort,filters=ctx.filters,visible_on=ctx.visible_on;// console.log('getRecordDetailRelatedListSchema==>',objectName,recordId,relatedObjectName)
|
|
781
|
+
_context95.next=3;return _getUISchema2(relatedObjectName);case 3:relatedObjectUiSchema=_context95.sent;if(relatedObjectUiSchema){_context95.next=6;break;}return _context95.abrupt("return",{uiSchema:{},amisSchema:{}});case 6:label=relatedObjectUiSchema.label,fields=relatedObjectUiSchema.fields;if(!relatedLabel){relatedLabel=label;}if(relatedKey){_context95.next=15;break;}mainRelated={};_context95.next=12;return _getUISchema2(objectName);case 12:mainObjectUiSchema=_context95.sent;if(mainObjectUiSchema){mainRelatedLists=mainObjectUiSchema.related_lists||[];if(!_$1.isEmpty(mainRelatedLists)){_iterator12=_createForOfIteratorHelper(mainRelatedLists);try{for(_iterator12.s();!(_step13=_iterator12.n()).done;){relatedList=_step13.value;arr=relatedList.related_field_fullname.split(".");foreign_key_value=arr[2]?arr[1]+'.'+arr[2]:arr[1];mainRelated[arr[0]]=foreign_key_value;}}catch(err){_iterator12.e(err);}finally{_iterator12.f();}}else{details=_$1.union(mainObjectUiSchema.details,mainObjectUiSchema.lookup_details)||[];_iterator13=_createForOfIteratorHelper(details);try{for(_iterator13.s();!(_step14=_iterator13.n()).done;){detail=_step14.value;_arr3=detail.split(".");_foreign_key_value=_arr3[2]?_arr3[1]+'.'+_arr3[2]:_arr3[1];if(!_$1.has(mainRelated,_arr3[0])){mainRelated[_arr3[0]]=_foreign_key_value;}}}catch(err){_iterator13.e(err);}finally{_iterator13.f();}}}relatedKey=mainRelated[relatedObjectName];case 15:globalFilter=null;// TODO: refField变量去掉,写到amis运行时脚本中,uiSchema.fields[relatedKey];可以取到
|
|
772
782
|
_context95.next=18;return getField(relatedObjectName,relatedKey);case 18:refField=_context95.sent;if(refField){_context95.next=21;break;}return _context95.abrupt("return",{uiSchema:relatedObjectUiSchema,amisSchema:{"type":"alert","body":"".concat(instance.t('frontend_objects_related_alert_start')," ").concat(relatedObjectName," ").concat(instance.t('frontend_objects_related_alert_end')),"level":"warning","showIcon":true,"className":"mb-3"}});case 21:_context95.next=23;return getObjectRecordDetailRelatedListHeader(relatedObjectUiSchema,relatedLabel,ctx);case 23:recordRelatedListHeader=_context95.sent;componentId="steedos-record-related-list-".concat(relatedObjectName);isMobile=window.innerWidth<768;headerToolbar=[];if(!isMobile){headerToolbar.push("bulkActions");}options=_objectSpread2({globalFilter:globalFilter,defaults:{listSchema:{headerToolbar:headerToolbar,columnsTogglable:false,onEvent:_defineProperty2({},"@data.changed.".concat(relatedObjectName),{"actions":[{"actionType":"reload"}]})},headerSchema:recordRelatedListHeader},showHeader:true,top:top,perPage:perPage,setDataToComponentId:componentId,// tableHiddenOn: hiddenEmptyTable ? "this.$count === 0" : null,
|
|
773
783
|
appId:appId,crudClassName:'border-t border-gray-300 hidden',refField:refField},ctx);_context95.next=31;return getRelatedListSchema(relatedObjectName,'all',options);case 31:amisSchema=_context95.sent.amisSchema;if(amisSchema){_context95.next=34;break;}return _context95.abrupt("return");case 34:return _context95.abrupt("return",{uiSchema:relatedObjectUiSchema,amisSchema:{type:"service",id:componentId,className:"steedos-record-related-list ".concat(componentId," rounded border border-gray-300 bg-gray-100 mb-4 ").concat(className),data:{relatedKey:relatedKey,listViewId:"amis-${appId}-".concat(relatedObjectName,"-listview"),_isRelated:true},body:[amisSchema]}});case 35:case"end":return _context95.stop();}}},_callee95);}));return _getRecordDetailRelatedListSchema.apply(this,arguments);}function getDefaultRelatedListProps(uiSchema,listName,ctx){// console.log('getDefaultRelatedListProps==>', uiSchema, listName, ctx)
|
|
774
784
|
var listView=_$1.find(uiSchema.list_views,function(listView,name){// 日历视图不在相关子表中出现
|
|
@@ -795,7 +805,7 @@ function getRelatedListSchema(_x161,_x162,_x163){return _getRelatedListSchema.ap
|
|
|
795
805
|
if(!listViewName||listViewNames.indexOf(listViewName)<0){listViewName=name;}return name===listViewName||listView._id===listViewName;});listViewProps=getRelatedListProps(uiSchema,listViewName,ctx);// console.log('listViewProps==>', listViewProps)
|
|
796
806
|
listViewColumns=listViewProps.columns,listViewSort=listViewProps.sort,listviewFilter=listViewProps.filter,filtersFunction=listViewProps.filtersFunction;refFieldName=ctx.refField&&ctx.refField.name;relatedListColumns=listViewColumns;if(refFieldName){relatedListColumns=listViewColumns.filter(function(columnItem){if(typeof columnItem==="string"){return columnItem!==refFieldName;}else{return columnItem.field!==refFieldName;}});}defaults=ctx.defaults||{};if(!(!defaults.headerSchema&&ctx.showHeader)){_context96.next=17;break;}_context96.next=16;return getObjectListHeader(uiSchema,listViewName);case 16:defaults.headerSchema=_context96.sent;case 17:if(!ctx.showHeader){defaults.headerSchema=null;}ctx.defaults=defaults;// 由于steedos-object-table组件的上下文覆盖规则异常,此处手动删除无需的ctx参数
|
|
797
807
|
delete ctx.filtersFunction;delete ctx.sort;delete ctx.extraColumns;delete ctx.filters;delete ctx.globalFilter;adaptor="\n try{\n if(setDataToComponentId){\n if(payload.data.count){\n setTimeout(function(){\n // \u8BBE\u8BA1\u5668\u4E2D\u83B7\u53D6\u4E0D\u5230window.$\u4ECE\u800C\u5BFC\u81F4\u62A5\u9519\uFF0C \u6240\u4EE5\u7528\u7EAFjs\u66FF\u6362\u4E0B\u3002\n // window.$(\".\" + setDataToComponentId + \" .antd-Crud\").removeClass(\"hidden\");\t\t\n document.querySelectorAll(\".\" + setDataToComponentId + \" .antd-Crud\").forEach(function(element) {\n element.classList.remove(\"hidden\");\n });\n }, 10);\n }\n };\n }catch(e){\n console.log(e);\n }\n ";amisSchema={"type":"steedos-object-table","objectApiName":objectName,"columns":relatedListColumns,"extraColumns":listView.extra_columns,"filters":listviewFilter,"filtersFunction":filtersFunction,"sort":listViewSort,"filterVisible":false,"requestAdaptor":ctx.requestAdaptor,"adaptor":adaptor+ctx.adaptor||'',"ctx":ctx};// console.log(`getRelatedListSchema amisSchema`, amisSchema);
|
|
798
|
-
return _context96.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 27:case"end":return _context96.stop();}}},_callee96);}));return _getRelatedListSchema.apply(this,arguments);}var UI_SCHEMA_CACHE={};var UISchemaFunction;var setUISchemaFunction=function setUISchemaFunction(fun){UISchemaFunction=fun;};if('undefined'!=typeof window){if(!window.UI_SCHEMA_CACHE){window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE;}UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE;}var setUISchemaCache=function setUISchemaCache(key,value){UI_SCHEMA_CACHE[key]=value;};var getUISchemaCache=function getUISchemaCache(key){return _$1.cloneDeep(UI_SCHEMA_CACHE[key]);};var hasUISchemaCache=function hasUISchemaCache(key){return _$1.has(UI_SCHEMA_CACHE,key);};function getListViewColumns(listView,formFactor){var listViewColumns=[];if(formFactor==="SMALL"){listViewColumns=!_$1.isEmpty(listView.mobile_columns)?listView.mobile_columns:_$1.slice(listView.columns,0,4);}else{listViewColumns=listView.columns;}return listViewColumns;}function getListViewSort(listView){var sort='';if(listView&&listView.sort&&listView.sort.length){_$1.each(listView.sort,function(item,index){if(_$1.isArray(item)){var field_name=item[0];var order=item[1]||'';var sortStr=field_name+' '+order;sortStr=index>0?','+sortStr:sortStr;sort+=sortStr;}else{var _sortStr=item.field_name+' '+item.order;_sortStr=index>0?','+_sortStr:_sortStr;sort+=_sortStr;}});}return sort;}function getListViewFilter(listView){if(!listView){return;}try{var userId=getUserId();var filters=listView.filters;if(listView.filter_scope==='mine'){if(_$1__default["default"].isEmpty(filters)){filters=[["owner","=",userId]];}else{if(_$1__default["default"].isString(filters)&&_$1__default["default"].startsWith(_$1__default["default"].trim(filters),"function")){filters=new Function("return ".concat(filters));filters=filters();}if(_$1__default["default"].isArray(filters)){filters.push(["owner","=",userId]);}else{console.debug("listView filters is not array",listView);throw new Error('filters is not array');}}};return filters;}catch(error){console.error(error);}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema);_$1.each(uiSchema.fields,function(field){try{if(field.type==="lookup"&&field._reference_to&&_$1__default["default"].isString(field._reference_to)){field.reference_to=eval("(".concat(field._reference_to,")"))();}}catch(exception){field.reference_to=undefined;console.error(exception);}});_$1.each(uiSchema.list_views,function(v,k){v.name=k;if(!_$1.has(v,'columns')){v.columns=uiSchema.list_views.all.columns;}});}function _getUISchema2(_x164,_x165){return _getUISchema.apply(this,arguments);}function _getUISchema(){_getUISchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee97(objectName,force){var uiSchema,url;return _regeneratorRuntime().wrap(function _callee97$(_context97){while(1){switch(_context97.prev=_context97.next){case 0:if(objectName){_context97.next=2;break;}return _context97.abrupt("return");case 2:if(!(hasUISchemaCache(objectName)&&!force)){_context97.next=4;break;}return _context97.abrupt("return",getUISchemaCache(objectName));case 4:uiSchema=null;_context97.prev=5;if(!UISchemaFunction){_context97.next=12;break;}_context97.next=9;return UISchemaFunction(objectName,force);case 9:uiSchema=_context97.sent;_context97.next=16;break;case 12:url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");_context97.next=15;return fetchAPI(url,{method:"get"});case 15:uiSchema=_context97.sent;case 16:if(uiSchema){_context97.next=18;break;}return _context97.abrupt("return");case 18:formatUISchemaCache(objectName,uiSchema);_context97.next=25;break;case 21:_context97.prev=21;_context97.t0=_context97["catch"](5);console.error("getUISchema",objectName,_context97.t0);setUISchemaCache(objectName,null);case 25:return _context97.abrupt("return",getUISchemaCache(objectName));case 26:case"end":return _context97.stop();}}},_callee97,null,[[5,21]]);}));return _getUISchema.apply(this,arguments);}function getUISchemaSync(objectName,force){if(!objectName){return;}if(hasUISchemaCache(objectName)&&!force){return getUISchemaCache(objectName);}var uiSchema=null;try{var url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");uiSchema=Steedos.authRequest(url,{type:'GET',async:false});if(!uiSchema){return;}formatUISchemaCache(objectName,uiSchema);}catch(error){console.error("getUISchema",objectName,error);setUISchemaCache(objectName,null);}return getUISchemaCache(objectName);}function getField(_x166,_x167){return _getField.apply(this,arguments);}// 获取表单页面
|
|
808
|
+
return _context96.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 27:case"end":return _context96.stop();}}},_callee96);}));return _getRelatedListSchema.apply(this,arguments);}var UI_SCHEMA_CACHE={};var UISchemaFunction;var setUISchemaFunction=function setUISchemaFunction(fun){UISchemaFunction=fun;};if('undefined'!=typeof window){if(!window.UI_SCHEMA_CACHE){window.UI_SCHEMA_CACHE=UI_SCHEMA_CACHE;}UI_SCHEMA_CACHE=window.UI_SCHEMA_CACHE;}var setUISchemaCache=function setUISchemaCache(key,value){UI_SCHEMA_CACHE[key]=value;};var getUISchemaCache=function getUISchemaCache(key){return _$1.cloneDeep(UI_SCHEMA_CACHE[key]);};var hasUISchemaCache=function hasUISchemaCache(key){return _$1.has(UI_SCHEMA_CACHE,key);};function getListViewColumns(listView,formFactor){var listViewColumns=[];if(formFactor==="SMALL"){listViewColumns=!_$1.isEmpty(listView.mobile_columns)?listView.mobile_columns:_$1.slice(listView.columns,0,4);}else{listViewColumns=listView.columns;}return listViewColumns;}function getListViewSort(listView){var sort='';if(listView&&listView.sort&&listView.sort.length){_$1.each(listView.sort,function(item,index){if(_$1.isArray(item)){var field_name=item[0];var order=item[1]||'';var sortStr=field_name+' '+order;sortStr=index>0?','+sortStr:sortStr;sort+=sortStr;}else{var _sortStr=item.field_name+' '+item.order;_sortStr=index>0?','+_sortStr:_sortStr;sort+=_sortStr;}});}return sort;}function getListViewFilter(listView){if(!listView){return;}try{var userId=getUserId();var filters=listView.filters;if(listView.filter_scope==='mine'){if(_$1__default["default"].isEmpty(filters)){filters=[["owner","=",userId]];}else{if(_$1__default["default"].isString(filters)&&_$1__default["default"].startsWith(_$1__default["default"].trim(filters),"function")){filters=new Function("return ".concat(filters));filters=filters();}if(_$1__default["default"].isArray(filters)){filters.push(["owner","=",userId]);}else{console.debug("listView filters is not array",listView);throw new Error('filters is not array');}}};return filters;}catch(error){console.error(error);}}function formatUISchemaCache(objectName,uiSchema){setUISchemaCache(objectName,uiSchema);_$1.each(uiSchema.fields,function(field){try{if(field.type==="lookup"&&field._reference_to&&_$1__default["default"].isString(field._reference_to)){field.reference_to=eval("(".concat(field._reference_to,")"))();}}catch(exception){field.reference_to=undefined;console.error(exception);}});_$1.each(uiSchema.list_views,function(v,k){v.name=k;if(!_$1.has(v,'columns')){v.columns=uiSchema.list_views.all.columns;}});}function _getUISchema2(_x164,_x165){return _getUISchema.apply(this,arguments);}function _getUISchema(){_getUISchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee97(objectName,force){var uiSchema,url;return _regeneratorRuntime().wrap(function _callee97$(_context97){while(1){switch(_context97.prev=_context97.next){case 0:if(objectName){_context97.next=2;break;}return _context97.abrupt("return");case 2:if(!(hasUISchemaCache(objectName)&&!force)){_context97.next=4;break;}return _context97.abrupt("return",getUISchemaCache(objectName));case 4:uiSchema=null;_context97.prev=5;if(!UISchemaFunction){_context97.next=12;break;}_context97.next=9;return UISchemaFunction(objectName,force);case 9:uiSchema=_context97.sent;_context97.next=16;break;case 12:url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");_context97.next=15;return fetchAPI(url,{method:"get"});case 15:uiSchema=_context97.sent;case 16:if(uiSchema){_context97.next=18;break;}return _context97.abrupt("return");case 18:formatUISchemaCache(objectName,uiSchema);_context97.next=25;break;case 21:_context97.prev=21;_context97.t0=_context97["catch"](5);console.error("getUISchema",objectName,_context97.t0);setUISchemaCache(objectName,null);case 25:return _context97.abrupt("return",getUISchemaCache(objectName));case 26:case"end":return _context97.stop();}}},_callee97,null,[[5,21]]);}));return _getUISchema.apply(this,arguments);}function getUISchemaSync$1(objectName,force){if(!objectName){return;}if(hasUISchemaCache(objectName)&&!force){return getUISchemaCache(objectName);}var uiSchema=null;try{var url="/service/api/@".concat(objectName.replace(/\./g,"_"),"/uiSchema");uiSchema=Steedos.authRequest(url,{type:'GET',async:false});if(!uiSchema){return;}formatUISchemaCache(objectName,uiSchema);}catch(error){console.error("getUISchema",objectName,error);setUISchemaCache(objectName,null);}return getUISchemaCache(objectName);}function getField(_x166,_x167){return _getField.apply(this,arguments);}// 获取表单页面
|
|
799
809
|
function _getField(){_getField=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee98(objectName,fieldName){var uiSchema;return _regeneratorRuntime().wrap(function _callee98$(_context98){while(1){switch(_context98.prev=_context98.next){case 0:_context98.next=2;return _getUISchema2(objectName);case 2:uiSchema=_context98.sent;return _context98.abrupt("return",uiSchema===null||uiSchema===void 0?void 0:uiSchema.fields[fieldName]);case 4:case"end":return _context98.stop();}}},_callee98);}));return _getField.apply(this,arguments);}function getFormSchema(_x168,_x169){return _getFormSchema.apply(this,arguments);}// 获取只读页面 recordId 已废弃, 函数签名保持不变, 但recordId变量不可再使用, 请使用运行时的${recordId}
|
|
800
810
|
function _getFormSchema(){_getFormSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee99(objectName,ctx){var uiSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee99$(_context99){while(1){switch(_context99.prev=_context99.next){case 0:_context99.next=2;return _getUISchema2(objectName);case 2:uiSchema=_context99.sent;_context99.next=5;return getObjectForm(uiSchema,ctx);case 5:amisSchema=_context99.sent;console.log("getFormSchema====>",amisSchema);return _context99.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 8:case"end":return _context99.stop();}}},_callee99);}));return _getFormSchema.apply(this,arguments);}function getViewSchema(_x170,_x171,_x172){return _getViewSchema.apply(this,arguments);}// 获取列表视图
|
|
801
811
|
function _getViewSchema(){_getViewSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee100(objectName,recordId,ctx){var uiSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee100$(_context100){while(1){switch(_context100.prev=_context100.next){case 0:_context100.next=2;return _getUISchema2(objectName);case 2:uiSchema=_context100.sent;_context100.next=5;return getObjectDetail(uiSchema,recordId,ctx);case 5:amisSchema=_context100.sent;return _context100.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 7:case"end":return _context100.stop();}}},_callee100);}));return _getViewSchema.apply(this,arguments);}function getListSchema(_x173,_x174,_x175){return _getListSchema.apply(this,arguments);}function _getListSchema(){_getListSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee101(appName,objectName,listViewName){var ctx,uiSchema,listView,_amisSchema,listViewColumns,sort,listviewFilter,listview_filters,_amisSchema2,defaults,listViewPropsStoreKey,localListViewProps,listSchema,amisSchema,_args101=arguments;return _regeneratorRuntime().wrap(function _callee101$(_context101){while(1){switch(_context101.prev=_context101.next){case 0:ctx=_args101.length>3&&_args101[3]!==undefined?_args101[3]:{};_context101.next=3;return _getUISchema2(objectName);case 3:uiSchema=_context101.sent;if(uiSchema){_context101.next=6;break;}return _context101.abrupt("return",{});case 6:listView=_$1.find(uiSchema.list_views,function(listView,name){// 传入listViewName空值则取第一个
|
|
@@ -822,15 +832,15 @@ defaults.headerSchema=null;/**
|
|
|
822
832
|
*/if(localListViewProps){localListViewProps=JSON.parse(localListViewProps);// localListViewProps.perPage = 3;
|
|
823
833
|
listSchema={};if(localListViewProps.orderBy){listSchema.orderBy=localListViewProps.orderBy;}if(localListViewProps.orderDir){listSchema.orderDir=localListViewProps.orderDir;}if(localListViewProps.perPage){listSchema.defaultParams={perPage:localListViewProps.perPage};}defaults.listSchema=_$1.defaultsDeep({},listSchema,defaults.listSchema||{});}}catch(ex){console.error("本地存储中crud参数解析异常:",ex);}ctx.defaults=defaults;if(listViewName=="recent"){listview_filters="\n function(filters, data) {\n var result = Steedos.authRequest('/graphql', {\n type: 'POST',\n async: false,\n data: JSON.stringify({\n query: '{object_recent_viewed(filters: [[\"record.o\",\"=\",\"' + data.objectName + '\"],[\"space\",\"=\",\"' + data.context.tenantId + '\"],[\"owner\",\"=\",\"' + data.context.userId + '\"]],sort:\"modified desc\",top:50){ _id,record} }'\n }),\n });\n var _ids = []\n result.data.object_recent_viewed.forEach(function (item) {\n _ids = _ids.concat(item.record.ids)\n })\n return [\"_id\", \"=\", _ids];\n }\n ";}amisSchema={"type":"steedos-object-table","objectApiName":objectName,"columns":listViewColumns,"extraColumns":listView.extra_columns,"filters":listviewFilter,"filtersFunction":listview_filters,"sort":sort,"ctx":ctx,"requestAdaptor":listView.requestAdaptor||ctx.requestAdaptor,"adaptor":listView.adaptor||ctx.adaptor,"headerToolbarItems":ctx.headerToolbarItems,"filterVisible":ctx.filterVisible,"rowClassNameExpr":ctx.rowClassNameExpr,"crudDataFilter":ctx.crudDataFilter,"onCrudDataFilter":ctx.onCrudDataFilter};// console.log(`getListSchema===>`,amisSchema)
|
|
824
834
|
return _context101.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 26:case"end":return _context101.stop();}}},_callee101);}));return _getListSchema.apply(this,arguments);}function convertColumnsToTableFields(_x176,_x177){return _convertColumnsToTableFields.apply(this,arguments);}// 获取对象表格
|
|
825
|
-
function _convertColumnsToTableFields(){_convertColumnsToTableFields=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee102(columns,uiSchema){var ctx,fields,
|
|
835
|
+
function _convertColumnsToTableFields(){_convertColumnsToTableFields=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee102(columns,uiSchema){var ctx,fields,_iterator14,_step15,column,fieldName,displayName,filedInfo,rfUiSchema,rfFieldInfo,_fieldName,_displayName,_filedInfo,_rfUiSchema,_rfFieldInfo,_args102=arguments;return _regeneratorRuntime().wrap(function _callee102$(_context102){while(1){switch(_context102.prev=_context102.next){case 0:ctx=_args102.length>2&&_args102[2]!==undefined?_args102[2]:{};fields=[];_iterator14=_createForOfIteratorHelper(columns);_context102.prev=3;_iterator14.s();case 5:if((_step15=_iterator14.n()).done){_context102.next=39;break;}column=_step15.value;if(!_$1.isString(column)){_context102.next=23;break;}if(!(column.indexOf('.')>0)){_context102.next=20;break;}fieldName=column.split('.')[0];displayName=column.split('.')[1];filedInfo=uiSchema.fields[fieldName];if(!(filedInfo&&(filedInfo.type==='lookup'||filedInfo.type==='master_detail')&&_$1.isString(filedInfo.reference_to))){_context102.next=18;break;}_context102.next=15;return _getUISchema2(filedInfo.reference_to);case 15:rfUiSchema=_context102.sent;rfFieldInfo=rfUiSchema.fields[displayName];fields.push(Object.assign({},rfFieldInfo,{name:"".concat(fieldName,"__expand.").concat(displayName),expand:true,expandInfo:{fieldName:fieldName,displayName:displayName}},ctx));case 18:_context102.next=21;break;case 20:if(uiSchema.fields[column]){fields.push(Object.assign({},uiSchema.fields[column],ctx));}else if(ctx.extra){// 配置列表视图extra_columns时允许字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
826
836
|
fields.push({extra:true,name:column});}case 21:_context102.next=37;break;case 23:if(!_$1.isObject(column)){_context102.next=37;break;}if(!(column.field.indexOf('.')>0)){_context102.next=36;break;}_fieldName=column.field.split('.')[0];_displayName=column.field.split('.')[1];_filedInfo=uiSchema.fields[_fieldName];if(!(_filedInfo&&(_filedInfo.type==='lookup'||_filedInfo.type==='master_detail')&&_$1.isString(_filedInfo.reference_to))){_context102.next=34;break;}_context102.next=31;return _getUISchema2(_filedInfo.reference_to);case 31:_rfUiSchema=_context102.sent;_rfFieldInfo=_rfUiSchema.fields[_displayName];fields.push(Object.assign({},_rfFieldInfo,ctx,{name:"".concat(_fieldName,"__expand.").concat(_displayName),expand:true,expandInfo:{fieldName:_fieldName,displayName:_displayName}},{width:column.width,wrap:column.wrap,// wrap = true 是没效果的
|
|
827
837
|
amis:column.amis}));case 34:_context102.next=37;break;case 36:if(uiSchema.fields[column.field]){fields.push(Object.assign({},uiSchema.fields[column.field],ctx,{width:column.width,wrap:column.wrap,// wrap = true 是没效果的
|
|
828
838
|
amis:column.amis}));}else if(ctx.extra){// 配置列表视图extra_columns时允许字段是hidden的,hidden的字段在uiSchema.fields中不存在
|
|
829
|
-
fields.push({extra:true,name:column.field});}case 37:_context102.next=5;break;case 39:_context102.next=44;break;case 41:_context102.prev=41;_context102.t0=_context102["catch"](3);
|
|
839
|
+
fields.push({extra:true,name:column.field});}case 37:_context102.next=5;break;case 39:_context102.next=44;break;case 41:_context102.prev=41;_context102.t0=_context102["catch"](3);_iterator14.e(_context102.t0);case 44:_context102.prev=44;_iterator14.f();return _context102.finish(44);case 47:return _context102.abrupt("return",fields);case 48:case"end":return _context102.stop();}}},_callee102,null,[[3,41,44,47]]);}));return _convertColumnsToTableFields.apply(this,arguments);}function getTableSchema$1(_x178,_x179,_x180){return _getTableSchema$.apply(this,arguments);}// 获取对象日历
|
|
830
840
|
function _getTableSchema$(){_getTableSchema$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee103(appName,objectName,columns){var ctx,uiSchema,sort,sortField,sortOrder,sortStr,fields,extraColumns,extraFields,crudOptions,amisSchema,_args103=arguments;return _regeneratorRuntime().wrap(function _callee103$(_context103){while(1){switch(_context103.prev=_context103.next){case 0:ctx=_args103.length>3&&_args103[3]!==undefined?_args103[3]:{};_context103.next=3;return _getUISchema2(objectName);case 3:uiSchema=_context103.sent;sort=ctx.sort;if(!sort){sortField=ctx.sortField;sortOrder=ctx.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}_context103.next=8;return convertColumnsToTableFields(columns,uiSchema);case 8:fields=_context103.sent;extraColumns=ctx.extraColumns;if(!extraColumns){_context103.next=15;break;}_context103.next=13;return convertColumnsToTableFields(extraColumns,uiSchema,{extra:true});case 13:extraFields=_context103.sent;fields=fields.concat(extraFields);case 15:_context103.t0=_objectSpread2;_context103.t1=_objectSpread2({tabId:objectName,appId:appName,objectName:objectName},ctx);_context103.t2={};_context103.t3=ctx.filters;_context103.t4=sort;_context103.t5=ctx.headerToolbarItems;_context103.next=23;return getListViewItemButtons(uiSchema,ctx);case 23:_context103.t6=_context103.sent;_context103.t7={filter:_context103.t3,sort:_context103.t4,headerToolbarItems:_context103.t5,buttons:_context103.t6};crudOptions=(0,_context103.t0)(_context103.t1,_context103.t2,_context103.t7);crudOptions.amisData=createObject(ctx.amisData||{},{});_context103.next=29;return getObjectCRUD(uiSchema,fields,crudOptions);case 29:amisSchema=_context103.sent;return _context103.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 31:case"end":return _context103.stop();}}},_callee103);}));return _getTableSchema$.apply(this,arguments);}function getCalendarSchema(_x181,_x182,_x183){return _getCalendarSchema.apply(this,arguments);}function _getCalendarSchema(){_getCalendarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee104(appName,objectName,calendarOptions){var ctx,uiSchema,amisSchema,_args104=arguments;return _regeneratorRuntime().wrap(function _callee104$(_context104){while(1){switch(_context104.prev=_context104.next){case 0:ctx=_args104.length>3&&_args104[3]!==undefined?_args104[3]:{};_context104.next=3;return _getUISchema2(objectName);case 3:uiSchema=_context104.sent;_context104.next=6;return getObjectCalendar(uiSchema,calendarOptions,_objectSpread2({tabId:objectName,appId:appName,objectName:objectName},ctx));case 6:amisSchema=_context104.sent;return _context104.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 8:case"end":return _context104.stop();}}},_callee104);}));return _getCalendarSchema.apply(this,arguments);}function getRecordDetailHeaderSchema(_x184,_x185,_x186){return _getRecordDetailHeaderSchema.apply(this,arguments);}function _getRecordDetailHeaderSchema(){_getRecordDetailHeaderSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee105(objectName,recordId,options){var uiSchema,amisSchema;return _regeneratorRuntime().wrap(function _callee105$(_context105){while(1){switch(_context105.prev=_context105.next){case 0:_context105.next=2;return _getUISchema2(objectName);case 2:uiSchema=_context105.sent;_context105.next=5;return getObjectRecordDetailHeader(uiSchema,recordId,options);case 5:amisSchema=_context105.sent;return _context105.abrupt("return",{uiSchema:uiSchema,amisSchema:amisSchema});case 7:case"end":return _context105.stop();}}},_callee105);}));return _getRecordDetailHeaderSchema.apply(this,arguments);}function getRecordDetailSchema(_x187,_x188){return _getRecordDetailSchema.apply(this,arguments);}function _getRecordDetailSchema(){_getRecordDetailSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee106(objectName,appId){var props,uiSchema,relatedLists,detailed,related,content,_args106=arguments;return _regeneratorRuntime().wrap(function _callee106$(_context106){while(1){switch(_context106.prev=_context106.next){case 0:props=_args106.length>2&&_args106[2]!==undefined?_args106[2]:{};_context106.next=3;return _getUISchema2(objectName);case 3:uiSchema=_context106.sent;_context106.next=6;return getObjectRelatedList(objectName);case 6:relatedLists=_context106.sent;detailed={"title":instance.t('frontend_record_detail_tab_detailed'),"className":"px-0 py-4","body":[{"type":"steedos-object-form","label":"对象表单","objectApiName":"${objectName}","recordId":"${recordId}","id":"u:d4a495811d57",appId:appId}],"id":"u:5d4e7e3f6ecc"};related={"title":instance.t('frontend_record_detail_tab_related'),"className":"px-0 pt-4","body":[{"type":"steedos-object-related-lists","label":"相关列表","objectApiName":"${objectName}","recordId":"${recordId}","id":"u:3b85b7b7a7f6",appId:appId}],"id":"u:1a0326aeec2b"};content={"type":"tabs","className":"sm:mt-3 bg-white sm:rounded sm:border border-gray-300 p-4","tabs":[detailed],"id":"u:a649e4094a12"};if(relatedLists.length){content.tabs.push(related);}return _context106.abrupt("return",{uiSchema:uiSchema,amisSchema:{"type":"service","body":[{"type":"steedos-record-detail-header","label":"标题面板","objectApiName":"${objectName}","recordId":"${recordId}","id":"u:48d2c28eb755"},content],data:{"_master.objectName":"${objectName}","_master.recordId":"${recordId}"},onEvent:_objectSpread2({"recordLoaded":{"actions":[{"actionType":"reload","data":{"name":"${record.".concat(uiSchema.NAME_FIELD_KEY||'name',"}"),"_master.record":"${record}",// 不清楚reload 如何给对象下的某个key复制, 所以此处重复设置_master的objectName、recordId
|
|
831
841
|
"_master.objectName":"${objectName}","_master.recordId":"${recordId}"}}]}},props.onEvent)}});case 12:case"end":return _context106.stop();}}},_callee106);}));return _getRecordDetailSchema.apply(this,arguments);}function getRecordServiceSchema(_x189,_x190){return _getRecordServiceSchema.apply(this,arguments);}// 获取单个相关表
|
|
832
842
|
function _getRecordServiceSchema(){_getRecordServiceSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee107(objectName,appId){var props,uiSchema,_args107=arguments;return _regeneratorRuntime().wrap(function _callee107$(_context107){while(1){switch(_context107.prev=_context107.next){case 0:props=_args107.length>2&&_args107[2]!==undefined?_args107[2]:{};_context107.next=3;return _getUISchema2(objectName);case 3:uiSchema=_context107.sent;return _context107.abrupt("return",{uiSchema:uiSchema,amisSchema:{"type":"service","body":[],data:{"_master.objectName":"${objectName}","_master.recordId":"${recordId}"},"style":_objectSpread2({"padding":"var(--Page-body-padding)"},props.style),onEvent:_objectSpread2({"recordLoaded":{"actions":[{"actionType":"reload","data":{"name":"${record.".concat(uiSchema.NAME_FIELD_KEY||'name',"}"),"_master.record":"${record}",// 不清楚reload 如何给对象下的某个key复制, 所以此处重复设置_master的objectName、recordId
|
|
833
|
-
"_master.objectName":"${objectName}","_master.recordId":"${recordId}"}}]}},props.onEvent)}});case 5:case"end":return _context107.stop();}}},_callee107);}));return _getRecordServiceSchema.apply(this,arguments);}function getObjectRelated(_x191){return _getObjectRelated.apply(this,arguments);}function _getObjectRelated(){_getObjectRelated=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee108(_ref19){var appName,masterObjectName,objectName,relatedFieldName,recordId,formFactor,filter,refField,masterObjectUISchema;return _regeneratorRuntime().wrap(function _callee108$(_context108){while(1){switch(_context108.prev=_context108.next){case 0:appName=_ref19.appName,masterObjectName=_ref19.masterObjectName,objectName=_ref19.objectName,relatedFieldName=_ref19.relatedFieldName,recordId=_ref19.recordId,formFactor=_ref19.formFactor;filter=null;_context108.next=4;return getField(objectName,relatedFieldName);case 4:refField=_context108.sent;if(refField._reference_to||refField.reference_to&&!_$1.isString(refField.reference_to)){filter=[["".concat(relatedFieldName,"/o"),"=",masterObjectName],["".concat(relatedFieldName,"/ids"),"=",recordId]];}else{filter=["".concat(relatedFieldName),"=",recordId];}_context108.next=8;return _getUISchema2(masterObjectName);case 8:masterObjectUISchema=_context108.sent;_context108.t0=masterObjectName;_context108.t1=objectName;_context108.t2=relatedFieldName;_context108.next=14;return getListSchema(appName,objectName,"all",{globalFilter:filter,formFactor:formFactor});case 14:_context108.t3=_context108.sent;_context108.next=17;return getRecord(masterObjectName,recordId,[masterObjectUISchema.NAME_FIELD_KEY]);case 17:_context108.t4=_context108.sent;_context108.t5=masterObjectUISchema;return _context108.abrupt("return",{masterObjectName:_context108.t0,object_name:_context108.t1,foreign_key:_context108.t2,schema:_context108.t3,record:_context108.t4,masterObjectUISchema:_context108.t5});case 20:case"end":return _context108.stop();}}},_callee108);}));return _getObjectRelated.apply(this,arguments);}if(typeof window!='undefined'){window.getUISchema=_getUISchema2;window.getUISchemaSync=getUISchemaSync;window.getListSchema=getListSchema;}/*
|
|
843
|
+
"_master.objectName":"${objectName}","_master.recordId":"${recordId}"}}]}},props.onEvent)}});case 5:case"end":return _context107.stop();}}},_callee107);}));return _getRecordServiceSchema.apply(this,arguments);}function getObjectRelated(_x191){return _getObjectRelated.apply(this,arguments);}function _getObjectRelated(){_getObjectRelated=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee108(_ref19){var appName,masterObjectName,objectName,relatedFieldName,recordId,formFactor,filter,refField,masterObjectUISchema;return _regeneratorRuntime().wrap(function _callee108$(_context108){while(1){switch(_context108.prev=_context108.next){case 0:appName=_ref19.appName,masterObjectName=_ref19.masterObjectName,objectName=_ref19.objectName,relatedFieldName=_ref19.relatedFieldName,recordId=_ref19.recordId,formFactor=_ref19.formFactor;filter=null;_context108.next=4;return getField(objectName,relatedFieldName);case 4:refField=_context108.sent;if(refField._reference_to||refField.reference_to&&!_$1.isString(refField.reference_to)){filter=[["".concat(relatedFieldName,"/o"),"=",masterObjectName],["".concat(relatedFieldName,"/ids"),"=",recordId]];}else{filter=["".concat(relatedFieldName),"=",recordId];}_context108.next=8;return _getUISchema2(masterObjectName);case 8:masterObjectUISchema=_context108.sent;_context108.t0=masterObjectName;_context108.t1=objectName;_context108.t2=relatedFieldName;_context108.next=14;return getListSchema(appName,objectName,"all",{globalFilter:filter,formFactor:formFactor});case 14:_context108.t3=_context108.sent;_context108.next=17;return getRecord(masterObjectName,recordId,[masterObjectUISchema.NAME_FIELD_KEY]);case 17:_context108.t4=_context108.sent;_context108.t5=masterObjectUISchema;return _context108.abrupt("return",{masterObjectName:_context108.t0,object_name:_context108.t1,foreign_key:_context108.t2,schema:_context108.t3,record:_context108.t4,masterObjectUISchema:_context108.t5});case 20:case"end":return _context108.stop();}}},_callee108);}));return _getObjectRelated.apply(this,arguments);}if(typeof window!='undefined'){window.getUISchema=_getUISchema2;window.getUISchemaSync=getUISchemaSync$1;window.getListSchema=getListSchema;}/*
|
|
834
844
|
* @Author: baozhoutao@steedos.com
|
|
835
845
|
* @Date: 2022-05-23 09:53:08
|
|
836
846
|
* @LastEditors: liaodaxue
|
|
@@ -872,23 +882,23 @@ if(typeof width=='string'){if(isNaN(width)){return width;}else{return Number(wid
|
|
|
872
882
|
"size": "none",
|
|
873
883
|
"className": "flex items-center justify-between"//每行样式类
|
|
874
884
|
}
|
|
875
|
-
*/function _getTableColumns$(){_getTableColumns$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee113(fields,options){var _options$permissions;var columns,allowEdit,
|
|
876
|
-
columns.push({name:'_display',type:'static',width:32,placeholder:"",id:"_display_${_index}",className:"hidden"});columns.push({name:'_index',type:'text',width:32,placeholder:""});}allowEdit=((_options$permissions=options.permissions)===null||_options$permissions===void 0?void 0:_options$permissions.allowEdit)&&!options.isLookup&&options.enable_inline_edit!=false;
|
|
885
|
+
*/function _getTableColumns$(){_getTableColumns$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee113(fields,options){var _options$permissions;var columns,allowEdit,_iterator15,_step16,field,quickEditSchema,className,columnItem,previewFileScript,map,tpl,type,href;return _regeneratorRuntime().wrap(function _callee113$(_context113){while(1){switch(_context113.prev=_context113.next){case 0:columns=[];if(!options.isLookup&&!options.isInputTable){//将_display放入crud的columns中,可以通过setvalue修改行内数据域的_display,而不影响上层items的_display,用于批量编辑
|
|
886
|
+
columns.push({name:'_display',type:'static',width:32,placeholder:"",id:"_display_${_index}",className:"hidden"});columns.push({name:'_index',type:'text',width:32,placeholder:""});}allowEdit=((_options$permissions=options.permissions)===null||_options$permissions===void 0?void 0:_options$permissions.allowEdit)&&!options.isLookup&&options.enable_inline_edit!=false;_iterator15=_createForOfIteratorHelper(fields);_context113.prev=4;_iterator15.s();case 6:if((_step16=_iterator15.n()).done){_context113.next=49;break;}field=_step16.value;if(!allowEdit){_context113.next=14;break;}_context113.next=11;return getQuickEditSchema(field,options);case 11:_context113.t0=_context113.sent;_context113.next=15;break;case 14:_context113.t0=allowEdit;case 15:quickEditSchema=_context113.t0;className="";if(field.wrap!=true){className+=" whitespace-nowrap ";}else{className+=" break-all ";}columnItem=void 0;if(!((field.is_name||field.name===options.labelFieldName)&&options.objectName==='cms_files')){_context113.next=24;break;}previewFileScript="\n var data = event.data;\n var file_name = data.versions ? data.name : \"".concat(field.label,"\";\n var file_id = data._id;\n SteedosUI.previewFile && SteedosUI.previewFile({file_name, file_id});\n ");columnItem={"type":"button","label":"<%=data.versions ? data.name : \"".concat(field.label,"\"%>"),className:className,"level":"link","onEvent":{"click":{"actions":[{"args":{"api":{"url":"${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}","method":"get","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}}},"actionType":"download",// "expression": "!!!window?.nw?.require"//浏览器上直接下载
|
|
877
887
|
"expression":"!!!(window && window.nw && window.nw.require)"//浏览器上直接下载
|
|
878
888
|
},{"args":{},"actionType":"custom","script":previewFileScript,// "expression": "!!window?.nw?.require" //PC客户端预览附件
|
|
879
889
|
"expression":"!!!(window && window.nw && window.nw.require)"//PC客户端预览附件
|
|
880
890
|
}]}}};_context113.next=46;break;case 24:if(!(field.type==='toggle')){_context113.next=28;break;}columnItem=Object.assign({},{type:"switch",name:field.name,label:field.label,width:getFieldWidth(field.width),toggled:field.toggled,"static":true,className:className},field.amis,{name:field.name});_context113.next=46;break;case 28:if(!(field.type==='avatar'||field.type==='image'||field.type==='file')){_context113.next=32;break;}columnItem=Object.assign({},_objectSpread2({type:"switch",name:field.name,label:field.label,width:getFieldWidth(field.width),toggled:field.toggled,"static":true,className:className},getAmisFileReadonlySchema(field)),field.amis,{name:field.name});_context113.next=46;break;case 32:if(!(field.type==='select')){_context113.next=37;break;}map=getSelectMap(field.options);columnItem=Object.assign({},{type:"static-mapping",name:field.name,label:field.label,map:map,sortable:field.sortable,width:getFieldWidth(field.width),toggled:field.toggled,className:className,"static":true},field.amis,{name:field.name});_context113.next=46;break;case 37:_context113.next=39;return getFieldTpl(field,options);case 39:tpl=_context113.sent;type='static-text';if(tpl){type='static';}else if(field.type==='html'){type='static-markdown';}else if(field.type==='url'){if(field.show_as_qr){type='static-qr-code';}else{type='input-url';}}if(field.type==='textarea'){className+='min-w-56';}if(field.type==='date'){className+='date-min-w';}if(field.type==='datetime'){className+='datetime-min-w';}if(!field.hidden&&!field.extra){columnItem=Object.assign({},{name:field.name,label:field.label,sortable:field.sortable,// searchable: field.searchable,
|
|
881
891
|
width:getFieldWidth(field.width),type:type,tpl:tpl,toggled:field.toggled,className:className,"static":true,options:field.type==='html'?{html:true}:null// toggled: true
|
|
882
|
-
},field.amis,{name:field.name});}case 46:if(columnItem){if(quickEditSchema){columnItem.quickEdit=quickEditSchema;columnItem.quickEditEnabledOn="${is_system !== true}";}columnItem.id="".concat(options.objectName,"_").concat(field.name,"_${_index}");columns.push(columnItem);}case 47:_context113.next=6;break;case 49:_context113.next=54;break;case 51:_context113.prev=51;_context113.t1=_context113["catch"](4);
|
|
892
|
+
},field.amis,{name:field.name});}case 46:if(columnItem){if(quickEditSchema){columnItem.quickEdit=quickEditSchema;columnItem.quickEditEnabledOn="${is_system !== true}";}columnItem.id="".concat(options.objectName,"_").concat(field.name,"_${_index}");columns.push(columnItem);}case 47:_context113.next=6;break;case 49:_context113.next=54;break;case 51:_context113.prev=51;_context113.t1=_context113["catch"](4);_iterator15.e(_context113.t1);case 54:_context113.prev=54;_iterator15.f();return _context113.finish(54);case 57:// columns.push(getOperation(fields));
|
|
883
893
|
if(!options.isLookup&&!options.isInputTable&&!_$1__namespace.some(columns,{name:options.labelFieldName})){// 没有名称字段时显示序号字段为链接,lookup弹出的picker不需要此功能
|
|
884
894
|
href=Router$1.getObjectDetailPath(_objectSpread2(_objectSpread2({},options),{},{formFactor:options.formFactor,appId:"${appId}",objectName:options.objectName||"${objectName}",recordId:"${".concat(options.idFieldName,"}")}));columns[0].type="tpl";columns[0].tpl="<a href=\"".concat(href,"\">${").concat(columns[0].name,"}</a>");}return _context113.abrupt("return",columns);case 59:case"end":return _context113.stop();}}},_callee113,null,[[4,51,54,57]]);}));return _getTableColumns$.apply(this,arguments);}function getMobileLines(tpls){var lines=[];var maxLineCount=3;var lineChildren=[];var isNewLine=false;var isLeft=true;var lineChildrenClassName="";var lineClassName="flex items-center justify-between";tpls.forEach(function(item){if(isNewLine&&lines.length<maxLineCount){lines.push({"type":"wrapper","body":lineChildren,"size":"none","className":lineClassName});lineChildren=[];}if(isLeft){// 左侧半行
|
|
885
895
|
lineChildrenClassName="steedos-listview-item-left truncate";if(item.field.is_wide){// 左侧全行样式可以单独写,如果需要配置两行省略号效果,可以加样式类 two-lines-truncate
|
|
886
896
|
lineChildrenClassName="steedos-listview-item-wide";}if(lines.length===0){// 第一个字段加粗黑色显示
|
|
887
897
|
lineChildrenClassName+=" font-bold text-gray-800";}}else{// 右侧半行,这里加样式类 flex flex-shrink-0,是为了省略号只显示在左半行,右半行文字一般比较短,如果也加省略号效果的话,左侧文字多的话,右侧没几个字就显示省略号了
|
|
888
898
|
lineChildrenClassName="steedos-listview-item-right truncate ml-2 flex flex-shrink-0";}lineChildren.push({"type":"tpl","tpl":item.tpl,"className":lineChildrenClassName});if(item.field.is_wide){// 宽字段占整行
|
|
889
|
-
isLeft=true;isNewLine=true;}else{isLeft=!isLeft;isNewLine=isLeft;}});if(lineChildren.length&&lines.length<maxLineCount){lines.push({"type":"wrapper","body":lineChildren,"size":"none","className":lineClassName});}return lines;}function getMobileTableColumns(_x201,_x202){return _getMobileTableColumns.apply(this,arguments);}function _getMobileTableColumns(){_getMobileTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee114(fields,options){var columns,nameField,tpls,
|
|
899
|
+
isLeft=true;isNewLine=true;}else{isLeft=!isLeft;isNewLine=isLeft;}});if(lineChildren.length&&lines.length<maxLineCount){lines.push({"type":"wrapper","body":lineChildren,"size":"none","className":lineClassName});}return lines;}function getMobileTableColumns(_x201,_x202){return _getMobileTableColumns.apply(this,arguments);}function _getMobileTableColumns(){_getMobileTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee114(fields,options){var columns,nameField,tpls,_iterator16,_step17,field,tpl,url,columnLines,column,_window$Meteor;return _regeneratorRuntime().wrap(function _callee114$(_context114){while(1){switch(_context114.prev=_context114.next){case 0:columns=[];nameField={};tpls=[];_iterator16=_createForOfIteratorHelper(fields);_context114.prev=4;_iterator16.s();case 6:if((_step17=_iterator16.n()).done){_context114.next=29;break;}field=_step17.value;tpl="";if(!(field.is_name||field.name===options.labelFieldName)){_context114.next=17;break;}nameField=field;options=Object.assign({},options,{onlyDisplayLookLabel:true});_context114.next=14;return getFieldTpl(field,options);case 14:tpl=_context114.sent;_context114.next=25;break;case 17:if(!(field.type==='avatar'||field.type==='image'||field.type==='file')){_context114.next=21;break;}// 图片和附件类型字段暂时显示为附件名称,后续需要再优化
|
|
890
900
|
tpl="${_display.".concat(field.name,".name}");_context114.next=25;break;case 21:if(field.type==='lookup'||field.type==='master_detail'){options=Object.assign({},options,{onlyDisplayLookLabel:true});}_context114.next=24;return getFieldTpl(field,options);case 24:tpl=_context114.sent;case 25:if(!tpl){//qhd需求简易处理,加上raw以支持审批王名称字段通过颜色区分缓急,若之后手机端列表支持配置amis,则可以去掉
|
|
891
|
-
tpl="${".concat(field.name," | raw}");}if(!field.hidden&&!field.extra){tpls.push({field:field,tpl:tpl});}case 27:_context114.next=6;break;case 29:_context114.next=34;break;case 31:_context114.prev=31;_context114.t0=_context114["catch"](4);
|
|
901
|
+
tpl="${".concat(field.name," | raw}");}if(!field.hidden&&!field.extra){tpls.push({field:field,tpl:tpl});}case 27:_context114.next=6;break;case 29:_context114.next=34;break;case 31:_context114.prev=31;_context114.t0=_context114["catch"](4);_iterator16.e(_context114.t0);case 34:_context114.prev=34;_iterator16.f();return _context114.finish(34);case 37:url=getNameTplUrl(nameField,options);columnLines=getMobileLines(tpls);column={name:nameField.name,label:nameField.label,sortable:nameField.sortable,type:"button",level:"link",actionType:"link",link:url,innerClassName:{"steedos-listview-item block text-gray-500":"true","max-w-[360px]":"${display == 'split'}"},body:{"type":"wrapper","body":columnLines,"size":"none","className":"p-1"}};if(options.objectName==='cms_files'){if((_window$Meteor=window.Meteor)!==null&&_window$Meteor!==void 0&&_window$Meteor.isCordova){column=_objectSpread2(_objectSpread2({},column),{},{actionType:"",link:"",onEvent:{"click":{"actions":[{"script":"\n let cms_url = \"/api/files/files/\"+event.data.versions[0]+\"?download=true\"\n Steedos.cordovaDownload(encodeURI(Steedos.absoluteUrl(cms_url)), event.data.name);\n ","actionType":"custom"}],"weight":0}}});}else{column=_objectSpread2(_objectSpread2({},column),{},{actionType:"",link:"",onEvent:{"click":{"actions":[{"args":{"api":{"url":url,"method":"get","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}}},"actionType":"download"}],"weight":0}}});}}columns.push(column);return _context114.abrupt("return",columns);case 43:case"end":return _context114.stop();}}},_callee114,null,[[4,31,34,37]]);}));return _getMobileTableColumns.apply(this,arguments);}function getDefaultParams(options){return{perPage:options.top||options.perPage||config.listView.perPage};}function getButtonVisibleOn(button){var visible=button.visible;if(button._visible){visible=button._visible;}if(_$1.isBoolean(visible)){visible=visible.toString();}if(visible){// if(visible.indexOf("Meteor.") > 0 || visible.indexOf("Creator.") > 0 || visible.indexOf("Session.") > 0){
|
|
892
902
|
// console.warn('无效的visible', visible)
|
|
893
903
|
// return 'false';
|
|
894
904
|
// }
|
|
@@ -915,23 +925,27 @@ useMobileColumns=false;}if(!useMobileColumns){_context117.next=14;break;}_contex
|
|
|
915
925
|
columnsTogglable:false});case 24:if(!(!isLookup&&!hiddenColumnOperation)){_context117.next=30;break;}_context117.t0=columns;_context117.next=28;return getTableOperation(options);case 28:_context117.t1=_context117.sent;_context117.t0.push.call(_context117.t0,_context117.t1);case 30:return _context117.abrupt("return",{mode:"table",perPageAvailable:[5,10,20,50,100,500],name:"thelist",headerToolbarClassName:"py-2 px-2 border-gray-300 border-solid border-b",className:"",draggable:false,defaultParams:getDefaultParams(options),columns:columns,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
|
|
916
926
|
columnsTogglable:false});case 31:case"end":return _context117.stop();}}},_callee117);}));return _getTableSchema.apply(this,arguments);}function getTableApi(_x208,_x209,_x210){return _getTableApi.apply(this,arguments);}function _getTableApi(){_getTableApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee118(mainObject,fields,options){var searchableFields,filter,filtersFunction,sort,top,_options$setDataToCom,setDataToComponentId,baseFilters,fileFields,fileFieldsKeys,lookupFields,valueField,api;return _regeneratorRuntime().wrap(function _callee118$(_context118){while(1){switch(_context118.prev=_context118.next){case 0:searchableFields=[];filter=options.filter,filtersFunction=options.filtersFunction,sort=options.sort,top=options.top,_options$setDataToCom=options.setDataToComponentId,setDataToComponentId=_options$setDataToCom===void 0?'':_options$setDataToCom;if(_$1__namespace.isArray(filter)){filter=_$1__namespace.map(filter,function(item){if(item.operation){return[item.field,item.operation,item.value];}else{return item;}});}if(!filter){filter=[];}baseFilters=null;if(filter){baseFilters=filter;}_$1__namespace.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fileFields={};fileFieldsKeys=[];// 含有optionsFunction属性, 无reference_to属性的lookup字段
|
|
917
927
|
lookupFields={};fields.forEach(function(item){if(_$1__namespace.includes(['image','avatar','file'],item.type)){fileFieldsKeys.push(item.name);fileFields[item.name]={name:item.name,type:item.type,multiple:item.multiple};}if(_$1__namespace.includes(['lookup'],item.type)&&!item.reference_to){lookupFields[item.name]=item;}});valueField=mainObject.key_field||'_id';_context118.next=14;return getApi(mainObject,null,fields,{count:options.queryCount,alias:'rows',limit:top,queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 14:api=_context118.sent;api.url+="&objectName=${objectName}";//设计器上对象表格组件需要切换对象重新请求列表数据
|
|
918
|
-
if(options.isRelated){api.url+="&recordId=${_master.recordId}";}api.cache=3000;api.data.$term="$term";api.data.term="$term";api.data.$self="$$";api.data.self="$$";api.data.filter="$filter";api.data.loaded="${loaded}";api.data.listViewId="${listViewId}";api.data.listName="${listName}";api.requestAdaptor="\n // selfData \u4E2D\u7684\u6570\u636E\u7531 CRUD \u63A7\u5236. selfData\u4E2D,\u53EA\u80FD\u83B7\u53D6\u5230 CRUD \u7ED9\u5B9A\u7684data. \u65E0\u6CD5\u4ECE\u6570\u636E\u94FE\u4E2D\u83B7\u53D6\u6570\u636E.\n let selfData = JSON.parse(JSON.stringify(api.data.$self));\n // \u4FDD\u7559\u4E00\u4EFD\u521D\u59CBdata\uFF0C\u4EE5\u4F9B\u81EA\u5B9A\u4E49\u53D1\u9001\u9002\u914D\u5668\u4E2D\u83B7\u53D6\u539F\u59CB\u6570\u636E\u3002\n const data = _.cloneDeep(api.data);\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.data.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData);\n if(!api.data.filter){\n api.data.filter = localListViewProps.filter;\n }\n if(!api.data.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"".concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // api.data.pageNo = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n // \u79FB\u52A8\u7AEF\u6682\u65F6\u53BB\u9664\u52A0\u8F7D\u66F4\u591A\uFF0C\u653E\u5F00\u7FFB\u9875\n api.data.pageNo = localListViewProps.page || 1;\n }\n }\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n ").concat(baseFilters?"var systemFilters = ".concat(JSON.stringify(baseFilters),";"):'var systemFilters = [];',"\n var _ids = []\n const filtersFunction = ").concat(filtersFunction,";\n if(filtersFunction){\n const _filters = filtersFunction(systemFilters, api.data.$self);\n if(api.data.listName == \"recent\"){\n _ids = _filters[2]\n }\n if(_filters && _filters.length > 0){\n if(_.isEmpty(systemFilters)){\n systemFilters = _filters || [];\n }else{\n systemFilters = [systemFilters, 'and', _filters];\n }\n }\n }\n let userFilters =[];\n \n if(_.isEmpty(systemFilters)){\n systemFilters = api.data.filter || [];\n }else{\n if(!_.isEmpty(api.data.filter)){\n systemFilters = [systemFilters, 'and', api.data.filter];\n }\n }\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"").concat(sort||'',"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n if(api.data.$term){\n userFilters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n userFilters = [[\"").concat(valueField.name,"\", \"=\", selfData.value]];\n }\n \n var searchableFilter = SteedosUI.getSearchFilter(selfData) || [];\n\n if(searchableFilter.length > 0){\n if(userFilters.length > 0 ){\n userFilters = [userFilters, 'and', searchableFilter];\n }else{\n userFilters = searchableFilter;\n }\n }\n\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n userFilters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n userFilters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(selfData.__keywords, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n userFilters.push(keywordsFilters);\n }\n\n let filters = [];\n\n if(!_.isEmpty(systemFilters)){\n filters = systemFilters;\n };\n if(api.data.$self.additionalFilters){\n if(_.isString(api.data.$self.additionalFilters)){\n userFilters.push(eval(api.data.$self.additionalFilters))\n }else{\n userFilters.push(api.data.$self.additionalFilters)\n }\n }\n\n if(api.data.$self._isRelated){\n const self = api.data.$self;\n const relatedKey = self.relatedKey;\n const refField = self.uiSchema.fields[relatedKey];\n const masterRecord = self._master.record;\n const masterObjectName = self._master.objectName;\n let relatedValue = self._master.recordId;\n if(refField && refField.reference_to_field && refField.reference_to_field != '_id'){\n relatedValue = masterRecord[refField.reference_to_field]\n }\n let relatedFilters;\n if (\n refField && (refField._reference_to ||\n (refField.reference_to && !_.isString(refField.reference_to)))\n ) {\n relatedFilters = [\n [relatedKey + \"/o\", \"=\", masterObjectName],\n [relatedKey + \"/ids\", \"=\", relatedValue],\n ];\n } else {\n relatedFilters = [relatedKey, \"=\", relatedValue];\n }\n userFilters.push(relatedFilters)\n }\n\n if(!_.isEmpty(userFilters)){\n if(_.isEmpty(filters)){\n filters = userFilters;\n }else{\n filters = [filters, 'and', userFilters]\n }\n }\n api.data._ids = _ids;\n api.data = {\n query: api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim())\n }\n ").concat(options.requestAdaptor||'',";\n\n //\u5199\u5165\u672C\u6B21\u5B58\u50A8filters\u3001sort\n const listViewPropsStoreKey = location.pathname + \"/crud/query\";\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify({\n filters: filters,\n sort: sort.trim(),\n pageSize: pageSize,\n skip: skip,\n fields: ").concat(JSON.stringify(_$1__namespace.map(fields,'name')),"\n }));\n return api;\n ");api.adaptor="\n if(api.body.listName == \"recent\"){\n payload.data.rows = _.sortBy(payload.data.rows, function(item){\n return _.indexOf(api.body._ids, item._id)\n });\n }\n const enable_tree = ".concat(mainObject.enable_tree,";\n if(!enable_tree){\n _.each(payload.data.rows, function(item, index){\n const {pageNo, pageSize} = api.body;\n const skip = (pageNo - 1) * pageSize;\n item._index = skip + index + 1;\n })\n }\n window.postMessage(Object.assign({type: \"listview.loaded\"}), \"*\");\n let fileFields = ").concat(JSON.stringify(fileFields),";\n let lookupFields = ").concat(JSON.stringify(lookupFields),";\n _.each(payload.data.rows, function(item, index){\n _.each(fileFields , (field, key)=>{\n if(item[key] && item._display && item._display[key]){\n let value = item._display[key];\n if(!_.isArray(value)){\n value = [value]\n };\n if(field.type === 'file'){\n item[key] = value\n }else{\n item[key] = _.map(value, (item)=>{\n if(field.type === 'image'){\n const url = window.getImageFieldUrl(item.url);\n return url;\n }\n return item.url;\n })\n }\n }\n })\n _.each(lookupFields , (field, key)=>{\n if(item[key]){\n if(field._optionsFunction){\n const optionsFunction = eval(\"(\" + field._optionsFunction+ \")\")(item);\n item[key + '__label'] = _.map(_.filter(optionsFunction, function(option){return item[key] == option.value}), 'label').join(' ');\n }else if(field.options){\n const options = field.options;\n item[key + '__label'] = _.map(_.filter(options, function(option){return item[key] == option.value}), 'label').join(' ');\n }\n }\n })\n })\n \n if(enable_tree){\n const records = payload.data.rows || [];\n const getTreeOptions = SteedosUI.getTreeOptions\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n }\n\n\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.body.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n /**\n * localListViewProps\u89C4\u8303\u6765\u81EAcrud\u8BF7\u6C42api\u4E2Dapi.data.$self\u53C2\u6570\u503C\u7684\u3002\n * \u6BD4\u5982\uFF1A{\"perPage\":20,\"page\":1,\"__searchable__name\":\"7\",\"__searchable__between__n1__c\":[null,null],\"filter\":[[\"name\",\"contains\",\"a\"]]}\n * __searchable__...:\u9876\u90E8\u653E\u5927\u955C\u641C\u7D22\u6761\u4EF6\n * filter:\u53F3\u4FA7\u8FC7\u6EE4\u5668\n * perPage:\u6BCF\u9875\u6761\u6570\n * page:\u5F53\u524D\u9875\u7801\n * orderBy:\u6392\u5E8F\u5B57\u6BB5\n * orderDir:\u6392\u5E8F\u65B9\u5411\n */\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n let selfData = JSON.parse(JSON.stringify(api.body.$self));\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData, { filter: api.body.filter });\n if(!api.body.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"").concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // selfData.page = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n selfData.page = localListViewProps.page || 1;\n }\n }\n delete selfData.context;\n delete selfData.global;\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(selfData));\n // \u8FD4\u56DE\u9875\u7801\u5230UI\u754C\u9762\n payload.data.page= selfData.page;\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n // \u6807\u8BB0\u52A0\u8F7D\u8FC7\uFF0C\u540E\u7EED\u4F18\u5148\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u52A0\u8F7D\u76F8\u5173\u53C2\u6570\n payload.data.loaded= true;\n\n const setDataToComponentId = \"").concat(setDataToComponentId,"\";\n if(setDataToComponentId){\n //https://github.com/baidu/amis/pull/6807 .parent\u7684\u6539\u52A8\u662F\u4E3A\u9002\u5E943.2getComponentById\u7684\u89C4\u5219\u6539\u52A8\uFF0C\u4E0D\u5F71\u54CD2.9\n var scope = SteedosUI.getRef(api.body.$self.$scopeId);\n var scopeParent = scope && scope.parent;\n var setDataToComponent = scopeParent && scopeParent.getComponentById(setDataToComponentId);\n if(setDataToComponent){\n setDataToComponent.setData({$count: payload.data.count});\n }\n // SteedosUI.getRef(api.body.$self.$scopeId)?.parent?.getComponentById(setDataToComponentId)?.setData({$count: payload.data.count})\n };\n ").concat(options.adaptor||'',"\n return payload;\n ");return _context118.abrupt("return",api);case 29:case"end":return _context118.stop();}}},_callee118);}));return _getTableApi.apply(this,arguments);}function getApi(_x211,_x212,_x213,_x214){return _getApi.apply(this,arguments);}function _getApi(){_getApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee119(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee119$(_context119){while(1){switch(_context119.prev=_context119.next){case 0:_context119.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context119.sent;return _context119.abrupt("return",{method:"post",url:getApi$2(),// + "&recordId=${recordId}"
|
|
928
|
+
if(options.isRelated){api.url+="&recordId=${_master.recordId}";}api.cache=3000;api.data.$term="$term";api.data.term="$term";api.data.$self="$$";api.data.self="$$";api.data.filter="$filter";api.data.__filterFormValues="${__filterFormValues}";api.data.__serachBoxValues="${__serachBoxValues}";api.data.loaded="${loaded}";api.data.listViewId="${listViewId}";api.data.listName="${listName}";api.requestAdaptor="\n // selfData \u4E2D\u7684\u6570\u636E\u7531 CRUD \u63A7\u5236. selfData\u4E2D,\u53EA\u80FD\u83B7\u53D6\u5230 CRUD \u7ED9\u5B9A\u7684data. \u65E0\u6CD5\u4ECE\u6570\u636E\u94FE\u4E2D\u83B7\u53D6\u6570\u636E.\n let selfData = JSON.parse(JSON.stringify(api.data.$self));\n // \u4FDD\u7559\u4E00\u4EFD\u521D\u59CBdata\uFF0C\u4EE5\u4F9B\u81EA\u5B9A\u4E49\u53D1\u9001\u9002\u914D\u5668\u4E2D\u83B7\u53D6\u539F\u59CB\u6570\u636E\u3002\n const data = _.cloneDeep(api.data);\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.data.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData);\n if(!api.data.filter){\n api.data.filter = localListViewProps.filter;\n }\n if(!api.data.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"".concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // api.data.pageNo = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n // \u79FB\u52A8\u7AEF\u6682\u65F6\u53BB\u9664\u52A0\u8F7D\u66F4\u591A\uFF0C\u653E\u5F00\u7FFB\u9875\n api.data.pageNo = localListViewProps.page || 1;\n }\n }\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n ").concat(baseFilters?"var systemFilters = ".concat(JSON.stringify(baseFilters),";"):'var systemFilters = [];',"\n var _ids = []\n const filtersFunction = ").concat(filtersFunction,";\n if(filtersFunction){\n const _filters = filtersFunction(systemFilters, api.data.$self);\n if(api.data.listName == \"recent\"){\n _ids = _filters[2]\n }\n if(_filters && _filters.length > 0){\n if(_.isEmpty(systemFilters)){\n systemFilters = _filters || [];\n }else{\n systemFilters = [systemFilters, 'and', _filters];\n }\n }\n }\n let userFilters =[];\n \n if(_.isEmpty(systemFilters)){\n systemFilters = api.data.filter || [];\n }else{\n if(!_.isEmpty(api.data.filter)){\n systemFilters = [systemFilters, 'and', api.data.filter];\n }\n }\n var pageSize = api.data.pageSize || 10;\n var pageNo = api.data.pageNo || 1;\n var skip = (pageNo - 1) * pageSize;\n var orderBy = api.data.orderBy || '';\n var orderDir = api.data.orderDir || '';\n var sort = orderBy + ' ' + orderDir;\n sort = orderBy ? sort : \"").concat(sort||'',"\";\n var allowSearchFields = ").concat(JSON.stringify(searchableFields),";\n if(api.data.$term){\n userFilters = [[\"name\", \"contains\", \"'+ api.data.$term +'\"]];\n }else if(selfData.op === 'loadOptions' && selfData.value){\n userFilters = [[\"").concat(valueField.name,"\", \"=\", selfData.value]];\n }\n\n const __filterFormValues = api.data.__filterFormValues;\n const __serachBoxValues = api.data.__serachBoxValues;\n // \u7B5B\u9009\u6309\u94AE\n const filterSelfData = __filterFormValues ? __filterFormValues : selfData;\n var searchableFilter = SteedosUI.getSearchFilter(filterSelfData) || [];\n if(searchableFilter.length > 0){\n if(userFilters.length > 0 ){\n userFilters = [userFilters, 'and', searchableFilter];\n }else{\n userFilters = searchableFilter;\n }\n }\n\n // \"\u641C\u7D22\u6B64\u5217\u8868\"\u641C\u7D22\u6846\n if(allowSearchFields){\n allowSearchFields.forEach(function(key){\n const keyValue = selfData[key];\n if(_.isString(keyValue)){\n userFilters.push([key, \"contains\", keyValue]);\n }else if(_.isArray(keyValue) || _.isBoolean(keyValue) || keyValue){\n userFilters.push([key, \"=\", keyValue]);\n }\n })\n }\n\n const keyWords = __serachBoxValues ? __serachBoxValues.__keywords : selfData.__keywords;\n var keywordsFilters = SteedosUI.getKeywordsSearchFilter(keyWords, allowSearchFields);\n if(keywordsFilters && keywordsFilters.length > 0){\n userFilters.push(keywordsFilters);\n }\n\n let filters = [];\n\n if(!_.isEmpty(systemFilters)){\n filters = systemFilters;\n };\n if(api.data.$self.additionalFilters){\n if(_.isString(api.data.$self.additionalFilters)){\n userFilters.push(eval(api.data.$self.additionalFilters))\n }else{\n userFilters.push(api.data.$self.additionalFilters)\n }\n }\n\n if(api.data.$self._isRelated){\n const self = api.data.$self;\n const relatedKey = self.relatedKey;\n const refField = self.uiSchema.fields[relatedKey];\n const masterRecord = self._master.record;\n const masterObjectName = self._master.objectName;\n let relatedValue = self._master.recordId;\n if(refField && refField.reference_to_field && refField.reference_to_field != '_id'){\n relatedValue = masterRecord[refField.reference_to_field]\n }\n let relatedFilters;\n if (\n refField && (refField._reference_to ||\n (refField.reference_to && !_.isString(refField.reference_to)))\n ) {\n relatedFilters = [\n [relatedKey + \"/o\", \"=\", masterObjectName],\n [relatedKey + \"/ids\", \"=\", relatedValue],\n ];\n } else {\n relatedFilters = [relatedKey, \"=\", relatedValue];\n }\n userFilters.push(relatedFilters)\n }\n\n if(!_.isEmpty(userFilters)){\n if(_.isEmpty(filters)){\n filters = userFilters;\n }else{\n filters = [filters, 'and', userFilters]\n }\n }\n api.data._ids = _ids;\n api.data = {\n query: api.data.query.replace(/{__filters}/g, JSON.stringify(filters)).replace('{__top}', pageSize).replace('{__skip}', skip).replace('{__sort}', sort.trim())\n }\n ").concat(options.requestAdaptor||'',";\n\n //\u5199\u5165\u672C\u6B21\u5B58\u50A8filters\u3001sort\n const listViewPropsStoreKey = location.pathname + \"/crud/query\";\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify({\n filters: filters,\n sort: sort.trim(),\n pageSize: pageSize,\n skip: skip,\n fields: ").concat(JSON.stringify(_$1__namespace.map(fields,'name')),"\n }));\n return api;\n ");api.adaptor="\n if(api.body.listName == \"recent\"){\n payload.data.rows = _.sortBy(payload.data.rows, function(item){\n return _.indexOf(api.body._ids, item._id)\n });\n }\n const enable_tree = ".concat(mainObject.enable_tree,";\n if(!enable_tree){\n _.each(payload.data.rows, function(item, index){\n const {pageNo, pageSize} = api.body;\n const skip = (pageNo - 1) * pageSize;\n item._index = skip + index + 1;\n })\n }\n window.postMessage(Object.assign({type: \"listview.loaded\"}), \"*\");\n let fileFields = ").concat(JSON.stringify(fileFields),";\n let lookupFields = ").concat(JSON.stringify(lookupFields),";\n _.each(payload.data.rows, function(item, index){\n _.each(fileFields , (field, key)=>{\n if(item[key] && item._display && item._display[key]){\n let value = item._display[key];\n if(!_.isArray(value)){\n value = [value]\n };\n if(field.type === 'file'){\n item[key] = value\n }else{\n item[key] = _.map(value, (item)=>{\n if(field.type === 'image'){\n const url = window.getImageFieldUrl(item.url);\n return url;\n }\n return item.url;\n })\n }\n }\n })\n _.each(lookupFields , (field, key)=>{\n if(item[key]){\n if(field._optionsFunction){\n const optionsFunction = eval(\"(\" + field._optionsFunction+ \")\")(item);\n item[key + '__label'] = _.map(_.filter(optionsFunction, function(option){return item[key] == option.value}), 'label').join(' ');\n }else if(field.options){\n const options = field.options;\n item[key + '__label'] = _.map(_.filter(options, function(option){return item[key] == option.value}), 'label').join(' ');\n }\n }\n })\n })\n \n if(enable_tree){\n const records = payload.data.rows || [];\n const getTreeOptions = SteedosUI.getTreeOptions\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n }\n\n\n try{\n // TODO: \u4E0D\u5E94\u8BE5\u76F4\u63A5\u5728\u8FD9\u91CC\u53D6localStorage\uFF0C\u5E94\u8BE5\u4ECE\u5916\u9762\u4F20\u5165\n const listName = api.body.listName;\n const listViewPropsStoreKey = location.pathname + \"/crud\";\n /**\n * localListViewProps\u89C4\u8303\u6765\u81EAcrud\u8BF7\u6C42api\u4E2Dapi.data.$self\u53C2\u6570\u503C\u7684\u3002\n * \u6BD4\u5982\uFF1A{\"perPage\":20,\"page\":1,\"__searchable__name\":\"7\",\"__searchable__between__n1__c\":[null,null],\"filter\":[[\"name\",\"contains\",\"a\"]]}\n * __searchable__...:\u9876\u90E8\u653E\u5927\u955C\u641C\u7D22\u6761\u4EF6\n * filter:\u53F3\u4FA7\u8FC7\u6EE4\u5668\n * perPage:\u6BCF\u9875\u6761\u6570\n * page:\u5F53\u524D\u9875\u7801\n * orderBy:\u6392\u5E8F\u5B57\u6BB5\n * orderDir:\u6392\u5E8F\u65B9\u5411\n */\n let localListViewProps = sessionStorage.getItem(listViewPropsStoreKey);\n let selfData = JSON.parse(JSON.stringify(api.body.$self));\n if(localListViewProps){\n localListViewProps = JSON.parse(localListViewProps);\n selfData = Object.assign({}, localListViewProps, selfData, { filter: api.body.filter });\n if(!api.body.loaded){\n // \u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\uFF0C\u6BD4\u5982\u5237\u65B0\u6D4F\u89C8\u5668\u65F6\u56E0\u4E3Aapi.data.pageNo\u6709\u9ED8\u8BA4\u503C1\n // \u6240\u4EE5\u4F1A\u628AlocalSearchableFilter\u4E2D\u5DF2\u7ECF\u5B58\u8FC7\u7684\u9875\u7801\u8986\u76D6\n // \u5982\u679C\u662F\u7B2C\u4E00\u6B21\u52A0\u8F7D\u7EC4\u4EF6\u59CB\u7EC8\u8BA9\u7FFB\u9875\u9875\u7801\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u53D6\u503C\n let formFactor = \"").concat(options.formFactor,"\";\n // \u79FB\u52A8\u7AEF\u4E0D\u8BC6\u522B\u672C\u5730\u5B58\u50A8\u4E2D\u7684\u7FFB\u9875\u9875\u7801\uFF0C\u5426\u5219\u70B9\u51FB\u52A0\u8F7D\u66F4\u591A\u6309\u94AE\u540E\u65E0\u6CD5\u5237\u65B0\u56DE\u7B2C\u4E00\u9875\n // selfData.page = formFactor === \"SMALL\" ? 1 : (localListViewProps.page || 1);\n selfData.page = localListViewProps.page || 1;\n }\n }\n delete selfData.context;\n delete selfData.global;\n sessionStorage.setItem(listViewPropsStoreKey, JSON.stringify(selfData));\n // \u8FD4\u56DE\u9875\u7801\u5230UI\u754C\u9762\n payload.data.page= selfData.page;\n }\n catch(ex){\n console.error(\"\u672C\u5730\u5B58\u50A8\u4E2Dcrud\u53C2\u6570\u89E3\u6790\u5F02\u5E38\uFF1A\", ex);\n }\n // \u6807\u8BB0\u52A0\u8F7D\u8FC7\uFF0C\u540E\u7EED\u4F18\u5148\u4ECE\u672C\u5730\u5B58\u50A8\u4E2D\u52A0\u8F7D\u76F8\u5173\u53C2\u6570\n payload.data.loaded= true;\n\n const setDataToComponentId = \"").concat(setDataToComponentId,"\";\n if(setDataToComponentId){\n //https://github.com/baidu/amis/pull/6807 .parent\u7684\u6539\u52A8\u662F\u4E3A\u9002\u5E943.2getComponentById\u7684\u89C4\u5219\u6539\u52A8\uFF0C\u4E0D\u5F71\u54CD2.9\n var scope = SteedosUI.getRef(api.body.$self.$scopeId);\n var scopeParent = scope && scope.parent;\n var setDataToComponent = scopeParent && scopeParent.getComponentById(setDataToComponentId);\n if(setDataToComponent){\n setDataToComponent.setData({$count: payload.data.count});\n }\n // SteedosUI.getRef(api.body.$self.$scopeId)?.parent?.getComponentById(setDataToComponentId)?.setData({$count: payload.data.count})\n };\n ").concat(options.adaptor||'',"\n return payload;\n ");return _context118.abrupt("return",api);case 31:case"end":return _context118.stop();}}},_callee118);}));return _getTableApi.apply(this,arguments);}function getApi(_x211,_x212,_x213,_x214){return _getApi.apply(this,arguments);}function _getApi(){_getApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee119(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee119$(_context119){while(1){switch(_context119.prev=_context119.next){case 0:_context119.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context119.sent;return _context119.abrupt("return",{method:"post",url:getApi$2(),// + "&recordId=${recordId}"
|
|
919
929
|
data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context119.stop();}}},_callee119);}));return _getApi.apply(this,arguments);}function getRecordPermissionsApi(object,recordId,options){var data=getRecordPermissionsQuery(object,recordId,options);return{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}};}/*
|
|
920
930
|
* @Author: 殷亮辉 yinlianghui@hotoa.com
|
|
921
931
|
* @Date: 2023-11-15 09:50:22
|
|
922
932
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
923
|
-
* @LastEditTime: 2023-11-
|
|
933
|
+
* @LastEditTime: 2023-11-28 11:34:24
|
|
924
934
|
*/ /**
|
|
925
935
|
* @param {*} props
|
|
926
936
|
* @param {*} mode edit/new/readonly
|
|
927
|
-
*/function getFormFields(props){var mode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"edit";return(props.fields||[]).map(function(item){
|
|
937
|
+
*/function getFormFields(props){var mode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"edit";return(props.fields||[]).map(function(item){var formItem={"type":"steedos-field","config":item};if(mode==="readonly"){formItem["static"]=true;}return formItem;})||[];}/**
|
|
928
938
|
* @param {*} props
|
|
929
939
|
* @param {*} mode edit/new/readonly
|
|
930
940
|
*/function getInputTableColumns(_x215){return _getInputTableColumns.apply(this,arguments);}/**
|
|
931
941
|
* @param {*} props
|
|
932
942
|
* @param {*} mode edit/new/readonly
|
|
933
|
-
*/function _getInputTableColumns(){_getInputTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee120(props){var columns;return _regeneratorRuntime().wrap(function _callee120$(_context120){while(1){switch(_context120.prev=_context120.next){case 0:
|
|
934
|
-
|
|
943
|
+
*/function _getInputTableColumns(){_getInputTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee120(props){var columns,fields;return _regeneratorRuntime().wrap(function _callee120$(_context120){while(1){switch(_context120.prev=_context120.next){case 0:columns=props.columns||[];// 实测过,直接不生成对应的隐藏column并不会对input-table值造成丢失问题,隐藏的列字段值能正常维护
|
|
944
|
+
fields=props.fields;if(!(columns&&columns.length)){_context120.next=6;break;}return _context120.abrupt("return",columns.map(function(column){var field,extendColumnProps={};if(typeof column==="string"){// 如果字符串,则取出要显示的列配置
|
|
945
|
+
field=fields.find(function(fieldItem){return fieldItem.name===column;});}else{// 如果是对象,则合并到steedos-field的config.amis属性中,steedos组件会把config.amis属性混合到最终生成的input-table column
|
|
946
|
+
field=fields.find(function(fieldItem){return fieldItem.name===column.name;});if(field){// field.amis = Object.assign({}, field.amis, column);
|
|
947
|
+
// 如果把column合并到field.amis,column的label/width等属性不会生效,只能放外层合并
|
|
948
|
+
extendColumnProps=column;}}if(field){return _objectSpread2({"type":"steedos-field","config":field,"static":true,"readonly":true,label:field.label,name:field.name,hideLabel:true},extendColumnProps);}else{return column;}}));case 6:return _context120.abrupt("return",fields.map(function(field){return{"type":"steedos-field","config":field,"static":true,"readonly":true,label:field.label,name:field.name,hideLabel:true};})||[]);case 7:case"end":return _context120.stop();}}},_callee120);}));return _getInputTableColumns.apply(this,arguments);}function getForm(props){var mode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"edit";var schema={"type":"form","title":"表单","debug":false,"body":getFormFields(props,mode)};if(mode==="edit"){Object.assign(schema,{"onEvent":{"submit":{"weight":0,"actions":[{"actionType":"setValue","args":{"index":"${index}","value":{"&":"$$"}},"componentId":props.id}]}}});}else if(mode==="new"){var onNewItemSubmitScript="\n event.data[\"".concat(props.name,"\"].push(JSON.parse(JSON.stringify(event.data)));\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": event.data[\"").concat(props.name,"\"]\n }\n });\n ");Object.assign(schema,{"onEvent":{"submit":{"weight":0,"actions":[{"actionType":"custom","script":onNewItemSubmitScript}// {
|
|
935
949
|
// "componentId": props.id,
|
|
936
950
|
// "actionType": "addItem",//input-table组件的needConfirm属性为true时,addItem动作会把新加的行显示为编辑状态,所以只能使用上面的custom script来setValue实现添加行
|
|
937
951
|
// "args": {
|
|
@@ -941,8 +955,10 @@ data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken
|
|
|
941
955
|
// }
|
|
942
956
|
// }
|
|
943
957
|
// }
|
|
944
|
-
]}}});}return schema;}function getButtonNew(props){return{"label":"新增","type":"button","icon":"fa fa-plus","onEvent":{"click":{"actions":[{"actionType":"dialog","dialog":{"type":"dialog","title":"
|
|
945
|
-
},"componentId":props.id}]}}};}var getAmisInputTableSchema=/*#__PURE__*/function(){var _ref20=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee19(props,readonly){var
|
|
958
|
+
]}}});}return schema;}function getButtonNew(props){return{"label":"新增","type":"button","icon":"fa fa-plus","onEvent":{"click":{"actions":[{"actionType":"dialog","dialog":{"type":"dialog","title":"新增行","body":[getForm(props,"new")],"size":"md","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false}}]}},"level":"primary"};}function getButtonEdit(props){return{"type":"button","label":"","icon":"fa fa-pencil","level":"link","onEvent":{"click":{"actions":[{"actionType":"dialog","dialog":{"type":"dialog","title":"编辑行","body":[getForm(props,"edit")],"size":"md","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false}}]}}};}function getButtonView(props){return{"type":"button","label":"","icon":"fa fa-external-link","level":"link","onEvent":{"click":{"actions":[{"actionType":"dialog","dialog":{"type":"dialog","title":"查看行","body":[getForm(props,"readonly")],"size":"md","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false}}]}}};}function getButtonDelete(props){return{"type":"button","label":"","icon":"fa fa-minus","level":"link","onEvent":{"click":{"actions":[{"actionType":"deleteItem","args":{"index":"${index+','}"//这里不加逗号后续会报错,语法是逗号分隔可以删除多行
|
|
959
|
+
},"componentId":props.id}]}}};}var getAmisInputTableSchema=/*#__PURE__*/function(){var _ref20=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee19(props,readonly){var buttonsForColumnOperations,buttonEditSchema,buttonViewSchema,buttonDeleteSchema,inputTableSchema,schema,buttonNewSchema;return _regeneratorRuntime().wrap(function _callee19$(_context19){while(1){switch(_context19.prev=_context19.next){case 0:if(!props.id){props.id="steedos_input_table_"+props.name+"_"+Math.random().toString(36).substr(2,9);}buttonsForColumnOperations=[];if(props.editable){buttonEditSchema=getButtonEdit(props);buttonsForColumnOperations.push(buttonEditSchema);}else{// 只读时显示查看按钮
|
|
960
|
+
if(props.columns&&props.columns.length>0&&props.columns.length<props.fields.length){// 只在有列被隐藏时才需要显示查看按钮
|
|
961
|
+
buttonViewSchema=getButtonView(props);buttonsForColumnOperations.push(buttonViewSchema);}}if(props.removable){buttonDeleteSchema=getButtonDelete(props);buttonsForColumnOperations.push(buttonDeleteSchema);}_context19.t0=props.label;_context19.t1=props.name;_context19.t2=props.draggable;_context19.t3=props.showIndex;_context19.t4=props.perPage;_context19.t5=props.id;_context19.next=12;return getInputTableColumns(props);case 12:_context19.t6=_context19.sent;inputTableSchema={"type":"input-table","label":_context19.t0,"name":_context19.t1,"draggable":_context19.t2,"showIndex":_context19.t3,"perPage":_context19.t4,"id":_context19.t5,"columns":_context19.t6,"strictMode":true,"showTableAddBtn":false,"showFooterAddBtn":false};if(buttonsForColumnOperations.length){inputTableSchema.columns.push({"name":"__op__","type":"operation","buttons":buttonsForColumnOperations,"width":buttonsForColumnOperations.length>1?"46px":"20px"});}schema={"type":"wrapper","size":"none","body":[inputTableSchema]};if(props.addable){buttonNewSchema=getButtonNew(props);schema.body.push(buttonNewSchema);}if(props.amis){Object.assign(schema.body[0],props.amis);}return _context19.abrupt("return",schema);case 19:case"end":return _context19.stop();}}},_callee19);}));return function getAmisInputTableSchema(_x216,_x217){return _ref20.apply(this,arguments);};}();// import { getListSchema } from './objects';
|
|
946
962
|
function getScopeId(objectApiName,type){return"page_".concat(objectApiName,"_").concat(type);}// 获取表单初始化amisSchema
|
|
947
963
|
function getFormPageInitSchema(_x218){return _getFormPageInitSchema.apply(this,arguments);}// 获取列表页面初始化amisSchema
|
|
948
964
|
function _getFormPageInitSchema(){_getFormPageInitSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee121(objectApiName){var schema;return _regeneratorRuntime().wrap(function _callee121$(_context121){while(1){switch(_context121.prev=_context121.next){case 0:_context121.next=2;return getFormSchema(objectApiName,{recordId:'${recordId}'});case 2:schema=_context121.sent;return _context121.abrupt("return",{type:'page',name:getScopeId(objectApiName,"form"),bodyClassName:'',regions:["body"],body:[schema.amisSchema]});case 4:case"end":return _context121.stop();}}},_callee121);}));return _getFormPageInitSchema.apply(this,arguments);}function getListPageInitSchema(_x219,_x220,_x221){return _getListPageInitSchema.apply(this,arguments);}// 获取
|
|
@@ -1127,7 +1143,7 @@ style:{borderLeftColor:"#000000",borderTopColor:"#000000",borderRightColor:"#000
|
|
|
1127
1143
|
*/var getMoment$2=function getMoment$2(){if(window.amisRequire){return window.amisRequire("moment");}else if(window.moment){return window.moment;}};var getTrace=function getTrace(_ref48){var instance=_ref48.instance,traceId=_ref48.traceId;return _$1.find(instance.traces,function(trace){return trace._id===traceId;});};var getUserApprove=function getUserApprove(_ref49){var instance=_ref49.instance,userId=_ref49.userId;var currentTrace=_$1.find(instance.traces,function(trace){return trace.is_finished!=true;});var currentApprove=null;if(currentTrace){currentApprove=_$1.find(currentTrace.approves,function(approve){return approve.is_finished!=true&&approve.handler==userId;});}//传阅的approve返回最新一条
|
|
1128
1144
|
if(!currentApprove||currentApprove.type=="cc"){// 当前是传阅
|
|
1129
1145
|
_$1__default["default"].each(instance.traces,function(t){_$1__default["default"].each(t.approves,function(a){if(a.type=="cc"&&a.handler==userId&&a.is_finished==false){currentApprove=a;}});});}if(!currentApprove)return;if(currentApprove._id){currentApprove.id=currentApprove._id;}return currentApprove;};var getApproveValues=function getApproveValues(_ref50){var instance=_ref50.instance,trace=_ref50.trace,step=_ref50.step,approve=_ref50.approve,box=_ref50.box;var instanceValues=null;if(!approve||approve.type==="cc"){instanceValues=instance.values;}else{if(box==="draft"){instanceValues=approve.values;}else if(box==="inbox"){if(step.step_type=="counterSign"||step.cc_has_edit_permission&&!trace.is_finished){//TODO
|
|
1130
|
-
instanceValues=instance.values;}else{if(_$1.isEmpty(approve.values)){instanceValues=instance.values;}else{instanceValues=approve.values;}}}else if(box==="outbox"||box==="pending"||box=="completed"||box=="monitor"){instanceValues=instance.values;}else{instanceValues=instance.values;}}return instanceValues;};var getFlowVersion=function getFlowVersion(instance){if(instance.flow.current._id===instance.flow_version){return instance.flow.current;}else{return _$1.find(instance.flow.historys,function(history){return history._id===instance.flow_version;});}};var getFormVersion=function getFormVersion(instance){if(instance.form.current._id===instance.form_version){return instance.form.current;}else{return _$1.find(instance.form.historys,function(history){return history._id===instance.form_version;});}};var getStep=function getStep(_ref51){var flowVersion=_ref51.flowVersion,stepId=_ref51.stepId;return _$1.find(flowVersion.steps,function(step){return step._id===stepId;});};var getLastCCStep=function getLastCCStep(_ref52,userId){var traces=_ref52.traces;var i,step_id,trace_id,user_id;user_id=userId;trace_id=null;step_id=null;i=traces.length-1;while(i>=0){if(!trace_id&&traces[i].is_finished){_$1__default["default"].each(traces[i].approves,function(ap){if(!trace_id){if(ap.is_finished&&ap.user===user_id&&(!ap.type||ap.type=="cc")&&["approved","submitted","rejected"].includes(ap.judge)){trace_id=ap.trace;}if(trace_id){step_id=traces[i].step;}}});}i--;}return step_id;};var isCurrentStepOpinionField=function isCurrentStepOpinionField(field,currentStep){return _$1__default["default"].includes(_$1__default["default"].map(getOpinionFieldStepsName(field),'stepName'),currentStep===null||currentStep===void 0?void 0:currentStep.name);};var getInstanceInfo=/*#__PURE__*/function(){var _ref54=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee47(_ref53){var instanceId,box,userId,query,result,userApprove,trace,step,instance,flowVersion,formVersion,currentStep,lastCCStep,values,flowPermissions,moment;return _regeneratorRuntime().wrap(function _callee47$(_context47){while(1){switch(_context47.prev=_context47.next){case 0:instanceId=_ref53.instanceId,box=_ref53.box;userId=getSteedosAuth().userId;query="{\n instance: instances__findOne(id:\"".concat(instanceId,"\"){\n _id,\n space,\n name,\n state,\n values,\n applicant,\n cc_users,\n applicant_name,\n submitter,\n submit_date,\n record_ids,\n forward_from_instance,\n related_instances: related_instances__expand{\n _id,\n name\n },\n traces,\n form_version,\n form:form__expand{\n _id,\n name\n current,\n historys\n },\n flow_version,\n flow:flow__expand{\n _id,\n name,\n perms,\n current,\n historys\n }\n }\n }\n ");_context47.next=5;return fetchAPI("/graphql",{method:"post",body:JSON.stringify({query:query})});case 5:result=_context47.sent;userApprove=null;trace=null;step=null;instance=result.data.instance;if(instance){_context47.next=12;break;}return _context47.abrupt("return",undefined);case 12:if(box==="inbox"||box==="draft"){userApprove=getUserApprove({instance:instance,userId:userId});}flowVersion=getFlowVersion(instance);formVersion=getFormVersion(instance);if(userApprove){trace=getTrace({instance:instance,traceId:userApprove.trace});step=getStep({flowVersion:flowVersion,stepId:trace.step});}currentStep=getStep({flowVersion:flowVersion,stepId:_$1__default["default"].last(instance.traces).step});lastCCStep=getLastCCStep(instance,userId);values=getApproveValues({instance:instance,trace:trace,step:step,approve:userApprove,box:box});_context47.next=21;return fetchAPI("/api/workflow/v2/flow_permissions/".concat(instance.flow._id),{method:"get"});case 21:flowPermissions=_context47.sent;moment=getMoment$2();return _context47.abrupt("return",{box:box,_id:instanceId,space:instance.space,flow:instance.flow,form:instance.form,applicant:instance.applicant,applicant_name:instance.applicant_name,submitter:instance.submitter,submit_date:instance.submit_date?moment&&moment(instance.submit_date).format("YYYY-MM-DD"):"",state:instance.state,approveValues:values,title:instance.name||instance.form.name,name:instance.name||instance.form.name,fields:_$1__default["default"].map(formVersion.fields,function(field){var _userApprove,_step5;return Object.assign({},field,{permission:((_userApprove=userApprove)===null||_userApprove===void 0?void 0:_userApprove.type)!='cc'&&(((_step5=step)===null||_step5===void 0?void 0:_step5.permissions[field.code])||(isCurrentStepOpinionField(field,step)?'editable':''))});}),flowVersion:flowVersion,formVersion:formVersion,step:step,lastCCStep:lastCCStep,trace:trace,currentStep:currentStep,flowPermissions:(flowPermissions===null||flowPermissions===void 0?void 0:flowPermissions.permissions)||[],approve:userApprove,record_ids:instance.record_ids,related_instances:instance.related_instances,forward_from_instance:instance.forward_from_instance,cc_users:instance.cc_users,traces:instance.traces,historyApproves:_$1__default["default"].map(instance.traces,function(trace){return Object.assign({children:_$1__default["default"].map(trace.approves,function(approve){var finishDate=approve.finish_date;var judge=approve.judge;var userName=approve.user_name;var opinion=approve.description;if(approve.type==='cc'){userName="".concat(userName," (\u4F20\u9605)");opinion=approve.cc_description;}if(!finishDate){finishDate=approve.is_read?"已读":"未处理";judge=null;}else{finishDate=moment&&moment(finishDate).format("YYYY-MM-DD HH:mm");}switch(judge){case"submitted":judge="";break;case"returned":judge="已退回";break;case"terminated":judge="被取回";break;case"pending":judge="审核中";break;case"approved":judge="已核准";break;case"rejected":judge="已驳回";break;case"finished":judge="已完成";break;case"reassigned":judge="转签核";break;case"inhand":judge="处理中";break;case"relocated":judge="重定位";break;case"readed":judge="已阅";break;}return{name:"",user_name:userName,finish_date:finishDate,judge:judge,opinion:opinion};})},{name:trace.name,judge:""});})});case 24:case"end":return _context47.stop();}}},_callee47);}));return function getInstanceInfo(_x261){return _ref54.apply(this,arguments);};}();var index_esm$1=/*#__PURE__*/Object.freeze({__proto__:null,Field:index,Router:Router$1,absoluteUrl:absoluteUrl,amisRender:amisRender,amisRootClick:amisRootClick,cloneObject:cloneObject,conditionsToFilters:conditionsToFilters,createObject:createObject,defaultsDeep:defaultsDeep,deleteVariable:deleteVariable,execute:execute,executeButton:executeButton,extendObject:extendObject,fetchAPI:fetchAPI,filtersToConditions:filtersToConditions,getAmisInputTableSchema:getAmisInputTableSchema,getApp:getApp,getApps:getApps,getAuthToken:getAuthToken,getAuthorization:getAuthorization,getButton:getButton,getButtonVisible:getButtonVisible,getButtonVisibleOn:getButtonVisibleOn$1,getButtons:getButtons,getCalendarSchema:getCalendarSchema,getDefaultRenderData:getDefaultRenderData,getEnv:getEnv,getEnvs:getEnvs,getEvn:getEvn,getField:getField,getFileSrc:getFileSrc,getFlowFormSchema:getFlowFormSchema,getFormPageInitSchema:getFormPageInitSchema,getFormSchema:getFormSchema,getGlobalNowData:getGlobalNowData$1,getIdsPickerSchema:getIdsPickerSchema,getImageSrc:getImageSrc,getInstanceInfo:getInstanceInfo,getListPageInitSchema:getListPageInitSchema,getListSchema:getListSchema,getListViewButtons:getListViewButtons,getListViewColumns:getListViewColumns,getListViewFilter:getListViewFilter,getListViewItemButtons:getListViewItemButtons,getListViewSort:getListViewSort,getListviewInitSchema:getListviewInitSchema,getLookupSapceUserTreeSchema:getLookupSapceUserTreeSchema,getNotifications:getNotifications,getObjectDetailButtons:getObjectDetailButtons,getObjectDetailButtonsSchemas:getObjectDetailButtonsSchemas,getObjectDetailMoreButtons:getObjectDetailMoreButtons,getObjectFieldsFilterBarSchema:getObjectFieldsFilterBarSchema,getObjectFieldsFilterButtonSchema:getObjectFieldsFilterButtonSchema,getObjectFieldsFilterFormSchema:getObjectFieldsFilterFormSchema,getObjectListHeader:getObjectListHeader$1,getObjectListHeaderFieldsFilterBar:getObjectListHeaderFieldsFilterBar,getObjectListHeaderFirstLine:getObjectListHeaderFirstLine,getObjectListHeaderSecordLine:getObjectListHeaderSecordLine,getObjectListViewButtonsSchemas:getObjectListViewButtonsSchemas,getObjectRecordDetailHeader:getObjectRecordDetailHeader,getObjectRecordDetailRelatedListButtonsSchemas:getObjectRecordDetailRelatedListButtonsSchemas,getObjectRecordDetailRelatedListHeader:getObjectRecordDetailRelatedListHeader,getObjectRelated:getObjectRelated,getObjectRelatedList:getObjectRelatedList,getObjectRelatedListButtons:getObjectRelatedListButtons,getObjectRelatedListHeader:getObjectRelatedListHeader,getPage:getPage,getRecord:getRecord,getRecordDetailHeaderSchema:getRecordDetailHeaderSchema,getRecordDetailRelatedListSchema:getRecordDetailRelatedListSchema,getRecordDetailSchema:getRecordDetailSchema,getRecordPageInitSchema:getRecordPageInitSchema,getRecordPermissions:getRecordPermissions,getRecordServiceSchema:getRecordServiceSchema,getReferenceTo:getReferenceTo,getRelatedFieldValue:getRelatedFieldValue,getRelatedListSchema:getRelatedListSchema,getRelatedsCount:getRelatedsCount,getRootUrl:getRootUrl,getSelectUserSchema:getSelectUserSchema,getSpaceUsersPickerAmisSchema:getSpaceUsersPickerAmisSchema,getSpaceUsersPickerSchema:getSpaceUsersPickerSchema,getSteedosAuth:getSteedosAuth,getTableSchema:getTableSchema$1,getTenantId:getTenantId,getUISchema:_getUISchema2,getUISchemaSync:getUISchemaSync,getUserId:getUserId,getViewSchema:getViewSchema,isExpression:isExpression$1,isObject:isObject,lookupToAmis:lookupToAmis,lookupToAmisIdsPicker:lookupToAmisIdsPicker,lookupToAmisPicker:lookupToAmisPicker,lookupToAmisSelect:lookupToAmisSelect,lookupToAmisSelectUser:lookupToAmisSelectUser,markReadAll:markReadAll,parseSingleExpression:parseSingleExpression$1,registerRemoteAssets:registerRemoteAssets,registerRenders:registerRenders,setEnv:setEnv,setEnvs:setEnvs,setRootUrl:setRootUrl,setSteedosAuth:setSteedosAuth,setUISchemaFunction:setUISchemaFunction,setVariable:setVariable,standardButtonsTodo:standardButtonsTodo,i18next:instance});var getSchema=function getSchema(field,value,ctx){return __awaiter(void 0,void 0,void 0,function(){var refTo,leftName,refObject,rightSchema;return __generator(this,function(_a){switch(_a.label){case 0:refTo=field.reference_to;if(refTo&&_$1.isFunction(refTo)){refTo=refTo();}leftName="".concat(field.name,"__left");// const options = [];
|
|
1146
|
+
instanceValues=instance.values;}else{if(_$1.isEmpty(approve.values)){instanceValues=instance.values;}else{instanceValues=approve.values;}}}else if(box==="outbox"||box==="pending"||box=="completed"||box=="monitor"){instanceValues=instance.values;}else{instanceValues=instance.values;}}return instanceValues;};var getFlowVersion=function getFlowVersion(instance){if(instance.flow.current._id===instance.flow_version){return instance.flow.current;}else{return _$1.find(instance.flow.historys,function(history){return history._id===instance.flow_version;});}};var getFormVersion=function getFormVersion(instance){if(instance.form.current._id===instance.form_version){return instance.form.current;}else{return _$1.find(instance.form.historys,function(history){return history._id===instance.form_version;});}};var getStep=function getStep(_ref51){var flowVersion=_ref51.flowVersion,stepId=_ref51.stepId;return _$1.find(flowVersion.steps,function(step){return step._id===stepId;});};var getLastCCStep=function getLastCCStep(_ref52,userId){var traces=_ref52.traces;var i,step_id,trace_id,user_id;user_id=userId;trace_id=null;step_id=null;i=traces.length-1;while(i>=0){if(!trace_id&&traces[i].is_finished){_$1__default["default"].each(traces[i].approves,function(ap){if(!trace_id){if(ap.is_finished&&ap.user===user_id&&(!ap.type||ap.type=="cc")&&["approved","submitted","rejected"].includes(ap.judge)){trace_id=ap.trace;}if(trace_id){step_id=traces[i].step;}}});}i--;}return step_id;};var isCurrentStepOpinionField=function isCurrentStepOpinionField(field,currentStep){return _$1__default["default"].includes(_$1__default["default"].map(getOpinionFieldStepsName(field),'stepName'),currentStep===null||currentStep===void 0?void 0:currentStep.name);};var getInstanceInfo=/*#__PURE__*/function(){var _ref54=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee47(_ref53){var instanceId,box,userId,query,result,userApprove,trace,step,instance,flowVersion,formVersion,currentStep,lastCCStep,values,flowPermissions,moment;return _regeneratorRuntime().wrap(function _callee47$(_context47){while(1){switch(_context47.prev=_context47.next){case 0:instanceId=_ref53.instanceId,box=_ref53.box;userId=getSteedosAuth().userId;query="{\n instance: instances__findOne(id:\"".concat(instanceId,"\"){\n _id,\n space,\n name,\n state,\n values,\n applicant,\n cc_users,\n applicant_name,\n submitter,\n submit_date,\n record_ids,\n forward_from_instance,\n related_instances: related_instances__expand{\n _id,\n name\n },\n traces,\n form_version,\n form:form__expand{\n _id,\n name\n current,\n historys\n },\n flow_version,\n flow:flow__expand{\n _id,\n name,\n perms,\n current,\n historys\n }\n }\n }\n ");_context47.next=5;return fetchAPI("/graphql",{method:"post",body:JSON.stringify({query:query})});case 5:result=_context47.sent;userApprove=null;trace=null;step=null;instance=result.data.instance;if(instance){_context47.next=12;break;}return _context47.abrupt("return",undefined);case 12:if(box==="inbox"||box==="draft"){userApprove=getUserApprove({instance:instance,userId:userId});}flowVersion=getFlowVersion(instance);formVersion=getFormVersion(instance);if(userApprove){trace=getTrace({instance:instance,traceId:userApprove.trace});step=getStep({flowVersion:flowVersion,stepId:trace.step});}currentStep=getStep({flowVersion:flowVersion,stepId:_$1__default["default"].last(instance.traces).step});lastCCStep=getLastCCStep(instance,userId);values=getApproveValues({instance:instance,trace:trace,step:step,approve:userApprove,box:box});_context47.next=21;return fetchAPI("/api/workflow/v2/flow_permissions/".concat(instance.flow._id),{method:"get"});case 21:flowPermissions=_context47.sent;moment=getMoment$2();return _context47.abrupt("return",{box:box,_id:instanceId,space:instance.space,flow:instance.flow,form:instance.form,applicant:instance.applicant,applicant_name:instance.applicant_name,submitter:instance.submitter,submit_date:instance.submit_date?moment&&moment(instance.submit_date).format("YYYY-MM-DD"):"",state:instance.state,approveValues:values,title:instance.name||instance.form.name,name:instance.name||instance.form.name,fields:_$1__default["default"].map(formVersion.fields,function(field){var _userApprove,_step5;return Object.assign({},field,{permission:((_userApprove=userApprove)===null||_userApprove===void 0?void 0:_userApprove.type)!='cc'&&(((_step5=step)===null||_step5===void 0?void 0:_step5.permissions[field.code])||(isCurrentStepOpinionField(field,step)?'editable':''))});}),flowVersion:flowVersion,formVersion:formVersion,step:step,lastCCStep:lastCCStep,trace:trace,currentStep:currentStep,flowPermissions:(flowPermissions===null||flowPermissions===void 0?void 0:flowPermissions.permissions)||[],approve:userApprove,record_ids:instance.record_ids,related_instances:instance.related_instances,forward_from_instance:instance.forward_from_instance,cc_users:instance.cc_users,traces:instance.traces,historyApproves:_$1__default["default"].map(instance.traces,function(trace){return Object.assign({children:_$1__default["default"].map(trace.approves,function(approve){var finishDate=approve.finish_date;var judge=approve.judge;var userName=approve.user_name;var opinion=approve.description;if(approve.type==='cc'){userName="".concat(userName," (\u4F20\u9605)");opinion=approve.cc_description;}if(!finishDate){finishDate=approve.is_read?"已读":"未处理";judge=null;}else{finishDate=moment&&moment(finishDate).format("YYYY-MM-DD HH:mm");}switch(judge){case"submitted":judge="";break;case"returned":judge="已退回";break;case"terminated":judge="被取回";break;case"pending":judge="审核中";break;case"approved":judge="已核准";break;case"rejected":judge="已驳回";break;case"finished":judge="已完成";break;case"reassigned":judge="转签核";break;case"inhand":judge="处理中";break;case"relocated":judge="重定位";break;case"readed":judge="已阅";break;}return{name:"",user_name:userName,finish_date:finishDate,judge:judge,opinion:opinion};})},{name:trace.name,judge:""});})});case 24:case"end":return _context47.stop();}}},_callee47);}));return function getInstanceInfo(_x261){return _ref54.apply(this,arguments);};}();var index_esm$1=/*#__PURE__*/Object.freeze({__proto__:null,Field:index,Router:Router$1,absoluteUrl:absoluteUrl,amisRender:amisRender,amisRootClick:amisRootClick,cloneObject:cloneObject,conditionsToFilters:conditionsToFilters,createObject:createObject,defaultsDeep:defaultsDeep,deleteVariable:deleteVariable,execute:execute,executeButton:executeButton,extendObject:extendObject,fetchAPI:fetchAPI,filtersToConditions:filtersToConditions,getAmisInputTableSchema:getAmisInputTableSchema,getApp:getApp,getApps:getApps,getAuthToken:getAuthToken,getAuthorization:getAuthorization,getButton:getButton,getButtonVisible:getButtonVisible,getButtonVisibleOn:getButtonVisibleOn$1,getButtons:getButtons,getCalendarSchema:getCalendarSchema,getDefaultRenderData:getDefaultRenderData,getEnv:getEnv,getEnvs:getEnvs,getEvn:getEvn,getField:getField,getFileSrc:getFileSrc,getFlowFormSchema:getFlowFormSchema,getFormPageInitSchema:getFormPageInitSchema,getFormSchema:getFormSchema,getGlobalNowData:getGlobalNowData$1,getIdsPickerSchema:getIdsPickerSchema,getImageSrc:getImageSrc,getInstanceInfo:getInstanceInfo,getListPageInitSchema:getListPageInitSchema,getListSchema:getListSchema,getListViewButtons:getListViewButtons,getListViewColumns:getListViewColumns,getListViewFilter:getListViewFilter,getListViewItemButtons:getListViewItemButtons,getListViewSort:getListViewSort,getListviewInitSchema:getListviewInitSchema,getLookupSapceUserTreeSchema:getLookupSapceUserTreeSchema,getNotifications:getNotifications,getObjectDetailButtons:getObjectDetailButtons,getObjectDetailButtonsSchemas:getObjectDetailButtonsSchemas,getObjectDetailMoreButtons:getObjectDetailMoreButtons,getObjectFieldsFilterBarSchema:getObjectFieldsFilterBarSchema,getObjectFieldsFilterButtonSchema:getObjectFieldsFilterButtonSchema,getObjectFieldsFilterFormSchema:getObjectFieldsFilterFormSchema,getObjectListHeader:getObjectListHeader$1,getObjectListHeaderFieldsFilterBar:getObjectListHeaderFieldsFilterBar,getObjectListHeaderFirstLine:getObjectListHeaderFirstLine,getObjectListHeaderSecordLine:getObjectListHeaderSecordLine,getObjectListViewButtonsSchemas:getObjectListViewButtonsSchemas,getObjectRecordDetailHeader:getObjectRecordDetailHeader,getObjectRecordDetailRelatedListButtonsSchemas:getObjectRecordDetailRelatedListButtonsSchemas,getObjectRecordDetailRelatedListHeader:getObjectRecordDetailRelatedListHeader,getObjectRelated:getObjectRelated,getObjectRelatedList:getObjectRelatedList,getObjectRelatedListButtons:getObjectRelatedListButtons,getObjectRelatedListHeader:getObjectRelatedListHeader,getPage:getPage,getRecord:getRecord,getRecordDetailHeaderSchema:getRecordDetailHeaderSchema,getRecordDetailRelatedListSchema:getRecordDetailRelatedListSchema,getRecordDetailSchema:getRecordDetailSchema,getRecordPageInitSchema:getRecordPageInitSchema,getRecordPermissions:getRecordPermissions,getRecordServiceSchema:getRecordServiceSchema,getReferenceTo:getReferenceTo,getReferenceToFieldSchema:getReferenceToFieldSchema,getReferenceToSync:getReferenceToSync,getRelatedFieldValue:getRelatedFieldValue,getRelatedListSchema:getRelatedListSchema,getRelatedsCount:getRelatedsCount,getRootUrl:getRootUrl,getSelectUserSchema:getSelectUserSchema,getSpaceUsersPickerAmisSchema:getSpaceUsersPickerAmisSchema,getSpaceUsersPickerSchema:getSpaceUsersPickerSchema,getSteedosAuth:getSteedosAuth,getTableSchema:getTableSchema$1,getTenantId:getTenantId,getUISchema:_getUISchema2,getUISchemaSync:getUISchemaSync$1,getUserId:getUserId,getViewSchema:getViewSchema,isExpression:isExpression$1,isObject:isObject,lookupToAmis:lookupToAmis,lookupToAmisIdsPicker:lookupToAmisIdsPicker,lookupToAmisPicker:lookupToAmisPicker,lookupToAmisSelect:lookupToAmisSelect,lookupToAmisSelectUser:lookupToAmisSelectUser,markReadAll:markReadAll,parseSingleExpression:parseSingleExpression$1,registerRemoteAssets:registerRemoteAssets,registerRenders:registerRenders,setEnv:setEnv,setEnvs:setEnvs,setRootUrl:setRootUrl,setSteedosAuth:setSteedosAuth,setUISchemaFunction:setUISchemaFunction,setVariable:setVariable,standardButtonsTodo:standardButtonsTodo,i18next:instance});var getSchema=function getSchema(field,value,ctx){return __awaiter(void 0,void 0,void 0,function(){var refTo,leftName,refObject,rightSchema;return __generator(this,function(_a){switch(_a.label){case 0:refTo=field.reference_to;if(refTo&&_$1.isFunction(refTo)){refTo=refTo();}leftName="".concat(field.name,"__left");// const options = [];
|
|
1131
1147
|
// for (const item of refTo) {
|
|
1132
1148
|
// const refObject = await getUISchema(item, false);
|
|
1133
1149
|
// options.push({
|
|
@@ -1275,14 +1291,27 @@ return[2/*return*/,schema];});});};/*
|
|
|
1275
1291
|
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
1276
1292
|
* @LastEditTime: 2023-05-18 22:39:31
|
|
1277
1293
|
* @Description:
|
|
1278
|
-
*/var AmisGlobalHeader=function AmisGlobalHeader(props){return __awaiter(void 0,void 0,void 0,function(){var logoSrc,isMobile,schema;return __generator(this,function(_a){logoSrc=props.logoSrc;isMobile=window.innerWidth<=768;schema={"type":"wrapper","className":'p-0',body:[{"type":"wrapper","className":"bg-white sticky p-0 top-0 z-40 w-full flex-none backdrop-blur transition-colors duration-500 lg:z-50 border-b-[3px] border-sky-500 border-solid steedos-header-container",body:[{"type":"wrapper","className":'flex w-full px-4 h-[50px] p-0 justify-between items-center steedos-header-container-line-one',"body":[{type:"service",className:'p-0 flex flex-1 items-center',"onEvent":{"@history_paths.changed":{"actions":[{"actionType":"reload"}]}},body:[{"type":"button","className":"toggle-sidebar flex items-center pr-4","hiddenOn":"true","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.body.classList.toggle('sidebar-open')"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"rows","colorVariant":"default","id":"u:afc3a08e8cf3","className":"slds-button_icon slds-global-header__icon"}]},{"type":"button","visibleOn":"${window:innerWidth < 768 && (window:historyPaths.length > 1 || window:historyPaths[0].params.record_id)}","className":"flex","onEvent":{"click":{"actions":[{"actionType":"custom","script":"window.goBack()"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"chevronleft","colorVariant":"default","className":"slds-button_icon slds-global-header__icon"}]},{"className":'block h-10 w-auto mr-4',"type":"tpl","tpl":"<a href='/app' class='flex items-center '><img class='block h-10 w-auto' src='".concat(logoSrc,"'></a>"),"hiddenOn":"${window:innerWidth < 768 && (window:historyPaths.length > 1 || window:historyPaths[0].params.record_id)}"}]},{"type":"steedos-global-header-toolbar","label":"Global Header",className:'flex flex-nowrap gap-x-3 items-center',logoutScript:"window.signOut();",customButtons:[{"type":"button","className":"toggle-sidebar","visibleOn":"${AND(app.showSidebar,!"+isMobile+")}","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.body.classList.toggle('sidebar-open')"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"rows","colorVariant":"default","id":"u:afc3a08e8cf3","className":"slds-button_icon slds-global-header__icon"}]},{"type":"steedos-app-launcher","showAppName":false,"appId":"${app.id}","visibleOn":"${isMobile}"}]}]},{"type":"grid","className":'steedos-context-bar flex flex-nowrap h-10 leading-5 pl-5 mb-[-3px] steedos-header-container-line-two',"hiddenOn":"${"+isMobile+"}","columns":[{"columnClassName":"items-center flex pb-0","body":[{"type":"steedos-app-launcher","showAppName":true,"appId":"${app.id}"}],"md":"auto","valign":"middle"},{"columnClassName":"flex overflow-hidden","hiddenOn":"${app.showSidebar === true}","body":[{"visibleOn":"${AND(!app.showSidebar,!"+isMobile+")}","type":"steedos-app-menu","stacked":false,showIcon:false,"appId":"${app.id}",overflow:{enable:false,itemWidth:80},"id":"u:77851eb4aa89"}],"id":"u:5367229505d8","md":"","valign":"middle"}]}]},{"type":"button","className":'p-0 absolute inset-0 mt-[50px] sm:mt-[90px]',hiddenOn:"${OR(app.showSidebar != true,isMobile)}",body:[{type:"wrapper",className:'sidebar-wrapper px-0 pt-4 pb-16 fixed z-20 h-full h-fill ease-in-out duration-300 flex flex-col border-r overflow-y-auto bg-white border-gray-300 block -translate-x-0 sm:w-[220px] w-64',body:[{"type":"steedos-app-launcher","className":"px-4 pb-4","visibleOn":"${isMobile}","showAppName":true},{"type":"steedos-app-menu","stacked":true,"appId":"${app.id}"}]},{"type":"wrapper","className":'sidebar-overlay',"hiddenOn":"${!isMobile}"}],"onEvent":{"click":{"actions":[{"actionType":"custom","script":"console.log(event.target); if(window.innerWidth < 768){ document.body.classList.remove('sidebar-open'); }"}]}}}]};return[2/*return*/,schema];});});};var
|
|
1279
|
-
//
|
|
1294
|
+
*/var AmisGlobalHeader=function AmisGlobalHeader(props){return __awaiter(void 0,void 0,void 0,function(){var logoSrc,isMobile,schema;return __generator(this,function(_a){logoSrc=props.logoSrc;isMobile=window.innerWidth<=768;schema={"type":"wrapper","className":'p-0',body:[{"type":"wrapper","className":"bg-white sticky p-0 top-0 z-40 w-full flex-none backdrop-blur transition-colors duration-500 lg:z-50 border-b-[3px] border-sky-500 border-solid steedos-header-container",body:[{"type":"wrapper","className":'flex w-full px-4 h-[50px] p-0 justify-between items-center steedos-header-container-line-one',"body":[{type:"service",className:'p-0 flex flex-1 items-center',"onEvent":{"@history_paths.changed":{"actions":[{"actionType":"reload"}]}},body:[{"type":"button","className":"toggle-sidebar flex items-center pr-4","hiddenOn":"true","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.body.classList.toggle('sidebar-open')"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"rows","colorVariant":"default","id":"u:afc3a08e8cf3","className":"slds-button_icon slds-global-header__icon"}]},{"type":"button","visibleOn":"${window:innerWidth < 768 && (window:historyPaths.length > 1 || window:historyPaths[0].params.record_id)}","className":"flex","onEvent":{"click":{"actions":[{"actionType":"custom","script":"window.goBack()"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"chevronleft","colorVariant":"default","className":"slds-button_icon slds-global-header__icon"}]},{"className":'block h-10 w-auto mr-4',"type":"tpl","tpl":"<a href='/app' class='flex items-center '><img class='block h-10 w-auto' src='".concat(logoSrc,"'></a>"),"hiddenOn":"${window:innerWidth < 768 && (window:historyPaths.length > 1 || window:historyPaths[0].params.record_id)}"}]},{"type":"steedos-global-header-toolbar","label":"Global Header",className:'flex flex-nowrap gap-x-3 items-center',logoutScript:"window.signOut();",customButtons:[{"type":"button","className":"toggle-sidebar","visibleOn":"${AND(app.showSidebar,!"+isMobile+")}","onEvent":{"click":{"actions":[{"actionType":"custom","script":"document.body.classList.toggle('sidebar-open')"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"rows","colorVariant":"default","id":"u:afc3a08e8cf3","className":"slds-button_icon slds-global-header__icon"}]},{"type":"steedos-app-launcher","showAppName":false,"appId":"${app.id}","visibleOn":"${isMobile}"}]}]},{"type":"grid","className":'steedos-context-bar flex flex-nowrap h-10 leading-5 pl-5 mb-[-3px] steedos-header-container-line-two',"hiddenOn":"${"+isMobile+"}","columns":[{"columnClassName":"items-center flex pb-0","body":[{"type":"steedos-app-launcher","showAppName":true,"appId":"${app.id}"}],"md":"auto","valign":"middle"},{"columnClassName":"flex overflow-hidden","hiddenOn":"${app.showSidebar === true}","body":[{"visibleOn":"${AND(!app.showSidebar,!"+isMobile+")}","type":"steedos-app-menu","stacked":false,showIcon:false,"appId":"${app.id}",overflow:{enable:false,itemWidth:80},"id":"u:77851eb4aa89"}],"id":"u:5367229505d8","md":"","valign":"middle"}]}]},{"type":"button","className":'p-0 absolute inset-0 mt-[50px] sm:mt-[90px]',hiddenOn:"${OR(app.showSidebar != true,isMobile)}",body:[{type:"wrapper",className:'sidebar-wrapper px-0 pt-4 pb-16 fixed z-20 h-full h-fill ease-in-out duration-300 flex flex-col border-r overflow-y-auto bg-white border-gray-300 block -translate-x-0 sm:w-[220px] w-64',body:[{"type":"steedos-app-launcher","className":"px-4 pb-4","visibleOn":"${isMobile}","showAppName":true},{"type":"steedos-app-menu","stacked":true,"appId":"${app.id}"}]},{"type":"wrapper","className":'sidebar-overlay',"hiddenOn":"${!isMobile}"}],"onEvent":{"click":{"actions":[{"actionType":"custom","script":"console.log(event.target); if(window.innerWidth < 768){ document.body.classList.remove('sidebar-open'); }"}]}}}]};return[2/*return*/,schema];});});};var defaultImageValue="data:image/svg+xml,%3C%3Fxml version='1.0' standalone='no'%3F%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg t='1631083237695' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='2420' xmlns:xlink='http://www.w3.org/1999/xlink' width='1024' height='1024'%3E%3Cdefs%3E%3Cstyle type='text/css'%3E%3C/style%3E%3C/defs%3E%3Cpath d='M959.872 128c0.032 0.032 0.096 0.064 0.128 0.128v767.776c-0.032 0.032-0.064 0.096-0.128 0.128H64.096c-0.032-0.032-0.096-0.064-0.128-0.128V128.128c0.032-0.032 0.064-0.096 0.128-0.128h895.776zM960 64H64C28.8 64 0 92.8 0 128v768c0 35.2 28.8 64 64 64h896c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z' p-id='2421' fill='%23bfbfbf'%3E%3C/path%3E%3Cpath d='M832 288c0 53.024-42.976 96-96 96s-96-42.976-96-96 42.976-96 96-96 96 42.976 96 96zM896 832H128V704l224-384 256 320h64l224-192z' p-id='2422' fill='%23bfbfbf'%3E%3C/path%3E%3C/svg%3E";var AmisFormInputs=['text','date',// 'file',
|
|
1295
|
+
// "avatar",
|
|
1296
|
+
// 'image',
|
|
1297
|
+
'datetime','time','number','password','url','email'];function getAmisStaticFieldType(type,data_type,options){if(_$1.includes(AmisFormInputs,type)){return"input-".concat(type);}else if(type==='boolean'){return"checkbox";}else if(type==='toggle'){return"switch";}else if(type==='currency'){return"number";}else if(type==='autonumber'){return"text";}else if(type==='percent'){return"number";}else if(type==='formula'||type==='summary'){return getAmisStaticFieldType(data_type,null,options);}else if(type==='location'){return"location-picker";}else if(type==='image'){if(options&&options.multiple){return"static-images";}return"static-image";}return type;}var AmisSteedosField=function AmisSteedosField(props){return __awaiter(void 0,void 0,void 0,function(){var steedosField,field,_a,readonly,_b,ctx,config,fStatic,hideLabel,schema,schema,fieldAmis,schema,error_1;var _c;return __generator(this,function(_d){switch(_d.label){case 0:steedosField=null;field=props.field,_a=props.readonly,readonly=_a===void 0?false:_a,_b=props.ctx,ctx=_b===void 0?{}:_b,config=props.config,props.$schema,fStatic=props["static"],hideLabel=props.hideLabel;console.log("AmisSteedosField",props);// if($schema.config && isString($schema.config)){
|
|
1280
1298
|
// $schema.config = JSON.parse($schema.config)
|
|
1281
1299
|
// props.config = $schema.config
|
|
1282
1300
|
// }
|
|
1283
|
-
if(_$1.isString(ctx)){ctx=JSON.parse(ctx);}if(config){steedosField=config;if(_$1.isString(steedosField)){steedosField=JSON.parse(config);}}else{steedosField=field;if(_$1.isString(field)){steedosField=JSON.parse(field);}}
|
|
1284
|
-
return[2/*return*/,
|
|
1285
|
-
return[
|
|
1301
|
+
if(_$1.isString(ctx)){ctx=JSON.parse(ctx);}if(config){steedosField=config;if(_$1.isString(steedosField)){steedosField=JSON.parse(config);}}else{steedosField=field;if(_$1.isString(field)){steedosField=JSON.parse(field);}}_d.label=1;case 1:_d.trys.push([1,15,,16]);if(!(fStatic&&(steedosField.type==='lookup'||steedosField.type==='master_detail')))return[3/*break*/,2];schema=Object.assign({},{type:'select',multiple:steedosField.multiple,name:steedosField.name,label:steedosField.label,"static":true,className:(_c=steedosField.amis)===null||_c===void 0?void 0:_c.className,source:{"method":"post","url":"${context.rootUrl}/graphql","requestAdaptor":"\n var steedosField = ".concat(JSON.stringify(steedosField),";\n var objectName, filters, valueFieldKey, labelFieldKey;\n if(_.isString(steedosField.reference_to)){\n const referenceTo = getReferenceToSync(steedosField);\n const referenceToField = steedosField.reference_to_field || '_id';\n\n objectName = referenceTo.objectName\n valueFieldKey = referenceTo && referenceTo.valueField?.name || '_id' ;\n labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';\n let value = api.data[steedosField.name];\n if(_.isString(value)){\n value = [value]\n }\n filters = [referenceToField, \"in\", value || []];\n }else{\n const _steedosField = {\n ...steedosField,\n reference_to: api.data[steedosField.name].o\n }\n const referenceTo = getReferenceToSync(_steedosField);\n const referenceToField = _steedosField.reference_to_field || '_id';\n\n objectName = referenceTo.objectName\n valueFieldKey = referenceTo && referenceTo.valueField?.name || '_id' ;\n labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';\n let value = api.data[_steedosField.name] && api.data[_steedosField.name].ids;\n filters = [referenceToField, \"in\", value || []];\n }\n api.data = {\n query: '{options:' + objectName + '(filters: ' + JSON.stringify(filters) + '){label: ' + labelFieldKey + ',value: ' + valueFieldKey + '}}'\n }\n return api;\n "),"trackExpression":"${"+steedosField.name+"}","cache":3000}},_$1.pick(steedosField.amis||{},['className','inline','label','labelAlign','name','labelRemark','description','placeholder','staticClassName','staticLabelClassName','staticInputClassName','staticSchema']));schema.placeholder="";if(hideLabel){delete schema.label;}return[2/*return*/,schema];case 2:if(!fStatic)return[3/*break*/,12];if(!props.data.hasOwnProperty("_display"))return[3/*break*/,4];return[4/*yield*/,index.convertSFieldToAmisField(steedosField,readonly,ctx)];case 3:// 有_display时保持原来的逻辑不变,不走以下新的逻辑,审批王中会特意传入_display以跳过后面新加的代码
|
|
1302
|
+
return[2/*return*/,_d.sent()];case 4:schema=Object.assign({},steedosField,{type:getAmisStaticFieldType(steedosField.type,steedosField.data_type,steedosField),"static":true,label:steedosField.label});if(!(steedosField.type==="time"))return[3/*break*/,5];Object.assign(schema,{inputFormat:'HH:mm',timeFormat:'HH:mm',format:'1970-01-01THH:mm:00.000[Z]'});return[3/*break*/,11];case 5:if(!(steedosField.type==="percent"))return[3/*break*/,6];Object.assign(schema,{"percent":steedosField.scale?steedosField.scale:true});return[3/*break*/,11];case 6:if(!(steedosField.type==="password"))return[3/*break*/,7];Object.assign(schema,{"revealPassword":false//没生效,需要用样式隐藏
|
|
1303
|
+
});return[3/*break*/,11];case 7:if(!(steedosField.type==="select"))return[3/*break*/,8];Object.assign(schema,{"placeholder":""});return[3/*break*/,11];case 8:if(!(steedosField.type==="image"))return[3/*break*/,9];Object.assign(schema,{enlargeAble:true,showToolbar:true,pipeIn:function pipeIn(value,data){if(steedosField.multiple){if(!value){value=[defaultImageValue];}value=value.map(function(item){if(item&&item.split("/").length===1){// 不是url格式时转为url格式显示
|
|
1304
|
+
return window.getImageFieldUrl(window.Meteor.absoluteUrl("/api/files/images/".concat(item)));}else{return item;}});}else{if(_$1.isArray(value)){value=value[0];}if(value&&value.split("/").length===1){// 不是url格式时转为url格式显示
|
|
1305
|
+
return window.getImageFieldUrl(window.Meteor.absoluteUrl("/api/files/images/".concat(value)));}}return value;}});return[3/*break*/,11];case 9:if(!(steedosField.type==="file"))return[3/*break*/,11];return[4/*yield*/,index.convertSFieldToAmisField(steedosField,readonly,ctx)];case 10:// 附件static模式先保持原来的逻辑,依赖_display,审批王中相关功能在creator中
|
|
1306
|
+
// convertSFieldToAmisField中会合并steedosField.amis,所以也不需要再次合并steedosField.amis,直接return就好
|
|
1307
|
+
return[2/*return*/,_d.sent()];case 11:Object.assign(schema,steedosField.amis||{});if(hideLabel){delete schema.label;}return[2/*return*/,schema];case 12:fieldAmis=steedosField.amis||{};if(!props.data.hasOwnProperty("_display")){// 有_display时保持原来的逻辑不变,不走以下新的逻辑,审批王中会特意传入_display以跳过后面新加的代码
|
|
1308
|
+
// 重写amis中相关属性,但是允许用户通过配置组件的config.amis覆盖下面重写的逻辑
|
|
1309
|
+
if(steedosField.type==="image"){fieldAmis=Object.assign({},{pipeIn:function pipeIn(value,data){if(steedosField.multiple){value=value&&value.map(function(item){if(item&&item.split("/").length===1){// 不是url格式时转为url格式显示
|
|
1310
|
+
return window.getImageFieldUrl(window.Meteor.absoluteUrl("/api/files/images/".concat(item)));}else{return item;}});}else{if(_$1.isArray(value)){value=value[0];}if(value&&value.split("/").length===1){// 不是url格式时转为url格式显示
|
|
1311
|
+
return window.getImageFieldUrl(window.Meteor.absoluteUrl("/api/files/images/".concat(value)));}}return value;},pipeOut:function pipeOut(value,data){if(steedosField.multiple){value=value&&value.map(function(item){if(item&&item.split("/").length>1){// 是url格式时转_id值输出用于保存
|
|
1312
|
+
return item.split("/").pop();}else{return item;}});}else{if(_$1.isArray(value)){value=value[0];}if(value&&value.split("/").length>1){// 是url格式时转_id值输出用于保存
|
|
1313
|
+
return value.split("/").pop();}}return value;}},fieldAmis);steedosField.amis=fieldAmis;}}return[4/*yield*/,index.convertSFieldToAmisField(steedosField,readonly,ctx)];case 13:schema=_d.sent();// console.log(`AmisSteedosField return schema`, schema)
|
|
1314
|
+
return[2/*return*/,schema];case 14:return[3/*break*/,16];case 15:error_1=_d.sent();console.log("error",error_1);return[3/*break*/,16];case 16:return[2/*return*/,null];}});});};/*
|
|
1286
1315
|
* @Author: baozhoutao@steedos.com
|
|
1287
1316
|
* @Date: 2023-01-14 16:41:24
|
|
1288
1317
|
* @LastEditors: 涂佳俊 tujiajun@steedos.com
|
|
@@ -1315,7 +1344,8 @@ className:className,required:required,treeContainerClassName:treeContainerClassN
|
|
|
1315
1344
|
var _a=props.mode,mode=_a===void 0?"input-tree":_a,_b=props.id,id=_b===void 0?"selectFlow"+_$1.random(10000,99999):_b;// console.log(`AmisSelectFlow props`, props);
|
|
1316
1345
|
var inputId="".concat(id,"_input");var flowSchema=getSelectFlowSchema(inputId,props);if(mode==="tree-select"){return flowSchema;}return{type:"service",id:"selectFlowService",className:"steedos-select-flow-service",body:[{type:"search-box",className:"!w-full mb-2",name:"keywords",enhance:true,onEvent:{search:{actions:[{actionType:"setValue",componentId:"selectFlowService",args:{value:{keywords:"${event.data.keywords}"}}},{componentId:inputId,actionType:"reload"}]}}},flowSchema]};};var AmisInstanceDetail=function AmisInstanceDetail(props){return __awaiter(void 0,void 0,void 0,function(){var instanceId,boxName,data,instanceInfo,schema;return __generator(this,function(_a){switch(_a.label){case 0:instanceId=props.instanceId,boxName=props.boxName,data=props.data;return[4/*yield*/,getInstanceInfo({instanceId:instanceId,box:boxName})];case 1:instanceInfo=_a.sent();return[4/*yield*/,getFlowFormSchema(instanceInfo)];case 2:schema=_a.sent();// console.log(`AmisInstanceDetail schema`, schema);
|
|
1317
1346
|
schema.data=_assign$(_assign$({"&":"$$",recordLoaded:true,submit_date:instanceInfo.submit_date,applicant_name:instanceInfo.applicant_name,related_instances:instanceInfo.related_instances,historyApproves:instanceInfo.historyApproves,boxName:boxName},instanceInfo.approveValues),{context:Object.assign({},data.context,instanceInfo),record:instanceInfo,applicant:instanceInfo.applicant._id});// console.log(`AmisInstanceDetail schema`, schema)
|
|
1318
|
-
return[2/*return*/,schema];}});});};var AmisInputTable=function AmisInputTable(props){return __awaiter(void 0,void 0,void 0,function(){var amisSchema;return __generator(this,function(_a){switch(_a.label){case 0:props.$schema,props.fields,props.name,props.id,props.data;return[4/*yield*/,getAmisInputTableSchema(props)];case 1:amisSchema=_a.sent()
|
|
1347
|
+
return[2/*return*/,schema];}});});};var AmisInputTable=function AmisInputTable(props){return __awaiter(void 0,void 0,void 0,function(){var amisSchema;return __generator(this,function(_a){switch(_a.label){case 0:props.$schema,props.fields,props.name,props.id,props.data,props.columns,props.amis;return[4/*yield*/,getAmisInputTableSchema(props)];case 1:amisSchema=_a.sent();// console.log("=AmisInputTable==amisSchema====", amisSchema);
|
|
1348
|
+
return[2/*return*/,amisSchema];}});});};var PageListView=function PageListView(props){return __awaiter(void 0,void 0,void 0,function(){var formFactor,appId,objectApiName,display,data,_display,page,listSchema;return __generator(this,function(_b){switch(_b.label){case 0:formFactor=props.formFactor,appId=props.appId,objectApiName=props.objectApiName,props.listviewId,display=props.display,props.$schema,props.listName,data=props.data;_display=data.display||display;//TODO 此代码应该在object page template中处理
|
|
1319
1349
|
if(_display)Router$1.setTabDisplayAs(objectApiName,_display);return[4/*yield*/,getPage({type:'list',appId:appId,objectName:objectApiName,formFactor:formFactor})];case 1:page=_b.sent();if(page===false){return[2/*return*/,{"type":"spinner","show":true}];}listSchema=page?page.schema:{"type":"steedos-object-listview","objectApiName":objectApiName,"columnsTogglable":false,"showHeader":true// "showDisplayAs": (formFactor !== 'SMALL'),
|
|
1320
1350
|
// "formFactor": formFactor,
|
|
1321
1351
|
// "className": (displayAs === 'split')? 'w-full': 'p-0 flex-1 m-0 sm:border sm:shadow sm:rounded border-gray-300 border-solid bg-gray-100'
|