@steedos-widgets/amis-lib 1.3.22-beta.3 → 3.6.0-beta.10
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/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/index.cjs.js +343 -102
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +343 -102
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +72 -57
- package/dist/index.umd.js.map +1 -1
- package/dist/types/lib/converter/amis/fields/lookup.d.ts +6 -4
- package/dist/types/lib/converter/amis/fields/table.d.ts +3 -1
- package/dist/types/lib/converter/amis/header.d.ts +1 -0
- package/dist/types/lib/converter/amis/index.d.ts +8 -0
- package/dist/types/lib/converter/amis/util.d.ts +5 -0
- package/dist/types/lib/objects.d.ts +9 -0
- package/dist/types/workflow/flow.d.ts +0 -1
- package/package.json +2 -2
package/dist/index.umd.js
CHANGED
|
@@ -38,18 +38,21 @@ var value=localStorage.getItem(key);return value?value:'grid';},setTabDisplayAs:
|
|
|
38
38
|
},getObjectListViewPath:function getObjectListViewPath(_ref3){var formFactor=_ref3.formFactor,appId=_ref3.appId,objectName=_ref3.objectName,listViewName=_ref3.listViewName;return"/app/".concat(appId,"/").concat(objectName,"/grid/").concat(listViewName);},getObjectDetailPath:function getObjectDetailPath(props){var formFactor=props.formFactor,appId=props.appId,objectName=props.objectName,recordId=props.recordId,listViewName=props.listViewName,_templateType=props._templateType;if(_templateType==='JavaScript'){return"/app/".concat(appId,"/").concat(objectName,"/view/").concat(recordId,"?side_object=<%=item.objectName%>&side_listview_id=<%=item.listName%>");}return"/app/".concat(appId,"/").concat(objectName,"/view/").concat(recordId,"?side_object=${objectName}&side_listview_id=${listName}");},getObjectRelatedViewPath:function getObjectRelatedViewPath(_ref4){var formFactor=_ref4.formFactor,appId=_ref4.appId,masterObjectName=_ref4.masterObjectName,masterRecordId=_ref4.masterRecordId,objectName=_ref4.objectName,foreignKey=_ref4.foreignKey;return"/app/".concat(appId,"/").concat(masterObjectName,"/").concat(masterRecordId,"/").concat(objectName,"/grid?related_field_name=").concat(foreignKey);}};/*
|
|
39
39
|
* @Author: baozhoutao@steedos.com
|
|
40
40
|
* @Date: 2022-07-20 16:29:22
|
|
41
|
-
* @LastEditors:
|
|
42
|
-
* @LastEditTime: 2023-
|
|
41
|
+
* @LastEditors: 殷亮辉 yinlianghui@hotoa.com
|
|
42
|
+
* @LastEditTime: 2023-12-28 14:59:08
|
|
43
43
|
* @Description:
|
|
44
44
|
*/function getImageFieldUrl(url){if(window.Meteor&&window.Meteor.isCordova!=true){// '//'的位置
|
|
45
|
-
var doubleSlashIndex=url.indexOf('//');var urlIndex=url.indexOf('/',doubleSlashIndex+2);var rootUrl=url.substring(urlIndex);return rootUrl;}return url;}if(typeof window!='undefined'){window.getImageFieldUrl=getImageFieldUrl;}function getContrastColor(bgColor){var backgroundColor=bgColor.charAt(0)==='#'?bgColor.substring(1,7):bgColor;var r=parseInt(backgroundColor.substr(0,2),16);var g=parseInt(backgroundColor.substr(2,2),16);var b=parseInt(backgroundColor.substr(4,2),16);var brightness=(r*299+g*587+b*114)/1000;return brightness<128?"#ffffff":"#000000";}function getLookupListView(refObjectConfig){if(!refObjectConfig){return null;}var listNameAll="all";var listNameLookup="lookup";var listViewAll,listViewLookup;_.each(refObjectConfig.list_views,function(view,name){if(name===listNameAll){listViewAll=view;if(!listViewAll.name){listViewAll.name=name;}}else if(name===listNameLookup){listViewLookup=view;if(!listViewLookup.name){listViewLookup.name=name;}}});var listView=listViewLookup||listViewAll;return listView;}
|
|
45
|
+
var doubleSlashIndex=url.indexOf('//');var urlIndex=url.indexOf('/',doubleSlashIndex+2);var rootUrl=url.substring(urlIndex);return rootUrl;}return url;}if(typeof window!='undefined'){window.getImageFieldUrl=getImageFieldUrl;}function getContrastColor(bgColor){var backgroundColor=bgColor.charAt(0)==='#'?bgColor.substring(1,7):bgColor;var r=parseInt(backgroundColor.substr(0,2),16);var g=parseInt(backgroundColor.substr(2,2),16);var b=parseInt(backgroundColor.substr(4,2),16);var brightness=(r*299+g*587+b*114)/1000;return brightness<128?"#ffffff":"#000000";}function getLookupListView(refObjectConfig){if(!refObjectConfig){return null;}var listNameAll="all";var listNameLookup="lookup";var listViewAll,listViewLookup;_.each(refObjectConfig.list_views,function(view,name){if(name===listNameAll){listViewAll=view;if(!listViewAll.name){listViewAll.name=name;}}else if(name===listNameLookup){listViewLookup=view;if(!listViewLookup.name){listViewLookup.name=name;}}});var listView=listViewLookup||listViewAll;return listView;}/**
|
|
46
|
+
* 获取可比较的amis版本号
|
|
47
|
+
* @returns 只返回前两位版本,第三位忽略,比如3.6.3返回3.6
|
|
48
|
+
*/function getComparableAmisVersion(){var amis=window.amisRequire&&window.amisRequire('amis')||window.Amis;var amisVersion=amis&&amis.version;if(amisVersion){var comparableVersions=amisVersion.split(".");var comparableVersion=parseFloat(comparableVersions[0].toString()+"."+comparableVersions[1].toString());return comparableVersion;}}/*
|
|
46
49
|
* @Author: baozhoutao@steedos.com
|
|
47
50
|
* @Date: 2022-05-23 09:53:08
|
|
48
51
|
* @LastEditors: liaodaxue
|
|
49
52
|
* @LastEditTime: 2023-10-11 17:32:17
|
|
50
53
|
* @Description:
|
|
51
54
|
*/function getCreatedInfoTpl(formFactor){var href=Router.getObjectDetailPath({formFactor:formFactor,appId:"admin",objectName:'users',recordId:'${created_by._id}'});return"<span><a href='".concat(href,"'>${_display.created_by.label}</a>${_display.created}</span>");}function getModifiedInfoTpl(formFactor){var href=Router.getObjectDetailPath({formFactor:formFactor,appId:"admin",objectName:'users',recordId:'${modified_by._id}'});return"<span><a href='".concat(href,"'>${_display.modified_by.label}</a>${_display.modified}</span>");}function getNumberTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getTimeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getDateTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getDateTimeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getUiFieldTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getUiFileSizeTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}//TODO 处理name字段
|
|
52
|
-
function getRefObjectNameFieldName(_x2){return _getRefObjectNameFieldName.apply(this,arguments);}function _getRefObjectNameFieldName(){_getRefObjectNameFieldName=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee49(field){var refUiSchema,NAME_FIELD_KEY;return _regeneratorRuntime().wrap(function _callee49$(_context49){while(1){switch(_context49.prev=_context49.next){case 0:_context49.next=2;return getUISchema(field.reference_to);case 2:refUiSchema=_context49.sent;NAME_FIELD_KEY=refUiSchema.NAME_FIELD_KEY||'name';return _context49.abrupt("return",NAME_FIELD_KEY);case 5:case"end":return _context49.stop();}}},_callee49);}));return _getRefObjectNameFieldName.apply(this,arguments);}function getSelectTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getSelectMap(selectOptions){var map={};_$1.forEach(selectOptions,function(option){var optionValue=option.value+'';var optionColor=option.color+'';if(optionColor){var background=optionColor.charAt(0)==='#'?optionColor:'#'+optionColor;var color=getContrastColor(background);var optionColorStyle='background:'+background+';color:'+color+';line-height:1.5rem';map[optionValue]="<span class=\"rounded-xl px-2 py-1\" style='".concat(optionColorStyle,"'>").concat(option.label,"</span>");}else{map[optionValue]=option.label;}});return map;}function getNameTplUrl(field,ctx){if(ctx.objectName==='cms_files'){return"${context.rootUrl}/api/files/files/${versions[0]}?download=true";}var href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},ctx),{},{formFactor:ctx.formFactor,appId:"${appId}",objectName:ctx.objectName||"${objectName}",recordId:"${".concat(ctx.idFieldName,"}")}));return href;}function getNameTpl(field,ctx){var href=getNameTplUrl(field,ctx);var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}return"<a href=\"".concat(href,"\" ").concat(linkTarget,">${").concat(field.name,"}</a>");}function getRelatedFieldTpl(field,ctx){var tpl='';if(!field.reference_to&&(field.optionsFunction||field._optionsFunction||field.options)){if(field.isTableField){return"${".concat(field.name,"}");}else{return"${".concat(field.name,"__label}");}}var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}var onlyDisplayLookLabel=ctx.onlyDisplayLookLabel;var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}if(_.isString(field.reference_to)||!field.reference_to){if(field.multiple){var labelTpl="<%=item.label%>";if(!onlyDisplayLookLabel){var href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});labelTpl="<a href=\"".concat(href,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item,index) { %> <% if(index>0 && index<").concat(fieldDataStrTpl,".length){ %> , <% } %> ").concat(labelTpl," <% }); %><% } %>\n ");}else{var _labelTpl="${_display.".concat(field.name,".label}");var objectNameTpl="${_display.".concat(field.name,".objectName}");var recordIdTpl="${_display.".concat(field.name,".value}");if(field.isTableField){_labelTpl="${".concat(field.name,".label}");objectNameTpl="${".concat(field.name,".objectName}");recordIdTpl="${".concat(field.name,".value}");}if(!onlyDisplayLookLabel){var _href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"${appId}",objectName:"".concat(objectNameTpl),recordId:"".concat(recordIdTpl)});_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget,">").concat(_labelTpl,"</a>");}tpl=_labelTpl;}}else{var _labelTpl2="<%=item.label%>";if(!onlyDisplayLookLabel){var _href2=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});_labelTpl2="<a href=\"".concat(_href2,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item) { %> ").concat(_labelTpl2," <% }); %><% } %>\n ");}return tpl;}function getLookupTpl(_x3,_x4){return _getLookupTpl.apply(this,arguments);}function _getLookupTpl(){_getLookupTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee50(field,ctx){var NAME_FIELD_KEY,href,_href3;return _regeneratorRuntime().wrap(function _callee50$(_context50){while(1){switch(_context50.prev=_context50.next){case 0:if(field.reference_to){_context50.next=2;break;}return _context50.abrupt("return",getSelectTpl(field));case 2:_context50.next=4;return getRefObjectNameFieldName(field);case 4:NAME_FIELD_KEY=_context50.sent;if(!field.multiple){_context50.next=10;break;}href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return _context50.abrupt("return","\n <% if (data.".concat(field.name," && data.").concat(field.name,".length) { %><% data.").concat(field.name,".forEach(function(item) { %> <a href=\"").concat(href,"\"><%=item.").concat(NAME_FIELD_KEY,"%></a> <% }); %><% } %>\n "));case 10:_href3=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"${".concat(field.name,"._id}")});return _context50.abrupt("return","<a href=\"".concat(_href3,"\">${").concat(field.name,".").concat(NAME_FIELD_KEY,"}</a>"));case 12:case"end":return _context50.stop();}}},_callee50);}));return _getLookupTpl.apply(this,arguments);}function getSwitchTpl(field){var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}return"<% if (data.".concat(field.name,") { %>\n <span class=\"slds-icon_container slds-icon-utility-check slds-current-color\" title=\"<%=").concat(fieldDataStrTpl,"%>\">\n <span ><%= ").concat(fieldDataStrTpl," === \"\u221A\" ? \"<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>\" : ").concat(fieldDataStrTpl," %></span>\n </span>\n <% } %>");}function getPasswordTpl(field){return"<% if (data.".concat(field.name,") { %>\n <span>\xB7\xB7\xB7\xB7\xB7\xB7</span>\n <% } %>");}function getLocationTpl(field){return"${".concat(field.name," ? ").concat(field.name,".address : ''}");}function getFieldTpl(_x5,_x6){return _getFieldTpl.apply(this,arguments);}function _getFieldTpl(){_getFieldTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee51(field,options){return _regeneratorRuntime().wrap(function _callee51$(_context51){while(1){switch(_context51.prev=_context51.next){case 0:if(!((field.is_name||field.name===options.labelFieldName)&&!options.onlyDisplayLookLabel)){_context51.next=2;break;}return _context51.abrupt("return",getNameTpl(field,options));case 2:_context51.t0=field.type;_context51.next=_context51.t0==='password'?5:_context51.t0==='boolean'?6:_context51.t0==='toggle'?7:_context51.t0==='select'?8:_context51.t0==='time'?9:_context51.t0==='date'?10:_context51.t0==='datetime'?11:_context51.t0==='lookup'?12:_context51.t0==='master_detail'?15:_context51.t0==='location'?18:_context51.t0==='number'?21:_context51.t0==='currency'?21:_context51.t0==='percent'?24:_context51.t0==='formula'?24:_context51.t0==='summary'?24:_context51.t0==='filesize'?25:26;break;case 5:return _context51.abrupt("return",getPasswordTpl(field));case 6:return _context51.abrupt("return",getSwitchTpl(field));case 7:return _context51.abrupt("return",getSwitchTpl(field));case 8:return _context51.abrupt("return",getSelectTpl(field));case 9:return _context51.abrupt("return",getTimeTpl(field));case 10:return _context51.abrupt("return",getDateTpl(field));case 11:return _context51.abrupt("return",getDateTimeTpl(field));case 12:_context51.next=14;return getRelatedFieldTpl(field,options);case 14:return _context51.abrupt("return",_context51.sent);case 15:_context51.next=17;return getRelatedFieldTpl(field,options);case 17:return _context51.abrupt("return",_context51.sent);case 18:_context51.next=20;return getLocationTpl(field);case 20:return _context51.abrupt("return",_context51.sent);case 21:_context51.next=23;return getNumberTpl(field);case 23:return _context51.abrupt("return",_context51.sent);case 24:return _context51.abrupt("return",getUiFieldTpl(field));case 25:return _context51.abrupt("return",getUiFileSizeTpl(field));case 26:case"end":return _context51.stop();}}},_callee51);}));return _getFieldTpl.apply(this,arguments);}function getFieldsTemplate(_x7,_x8){return _getFieldsTemplate.apply(this,arguments);}function _getFieldsTemplate(){_getFieldsTemplate=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee52(fields,display){var expandFields,fieldsName,displayFields,fieldsArr,_iterator5,_step6,field,expandFieldsQuery;return _regeneratorRuntime().wrap(function _callee52$(_context52){while(1){switch(_context52.prev=_context52.next){case 0:expandFields=[];if(display!=false){display=true;}fieldsName=['_id'];displayFields=[];fieldsArr=[];if(___namespace.isArray(fields)){fieldsArr=fields;}else{fieldsArr=___namespace.values(fields);}_iterator5=_createForOfIteratorHelper(fieldsArr);try{for(_iterator5.s();!(_step6=_iterator5.n()).done;){field=_step6.value;//graphql 的 ui\display 中使用的字段需要先在query中查询. 否则会返回null
|
|
55
|
+
function getRefObjectNameFieldName(_x2){return _getRefObjectNameFieldName.apply(this,arguments);}function _getRefObjectNameFieldName(){_getRefObjectNameFieldName=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee49(field){var refUiSchema,NAME_FIELD_KEY;return _regeneratorRuntime().wrap(function _callee49$(_context49){while(1){switch(_context49.prev=_context49.next){case 0:_context49.next=2;return getUISchema(field.reference_to);case 2:refUiSchema=_context49.sent;NAME_FIELD_KEY=refUiSchema.NAME_FIELD_KEY||'name';return _context49.abrupt("return",NAME_FIELD_KEY);case 5:case"end":return _context49.stop();}}},_callee49);}));return _getRefObjectNameFieldName.apply(this,arguments);}function getSelectTpl(field){return"<span>${_display.".concat(field.name,"}</span>");}function getSelectMap(selectOptions){var map={};_$1.forEach(selectOptions,function(option){var optionValue=option.value+'';var optionColor=option.color+'';if(optionColor){var background=optionColor.charAt(0)==='#'?optionColor:'#'+optionColor;var color=getContrastColor(background);var optionColorStyle='background:'+background+';color:'+color+';line-height:1.5rem';map[optionValue]="<span class=\"rounded-xl px-2 py-1\" style='".concat(optionColorStyle,"'>").concat(option.label,"</span>");}else{map[optionValue]=option.label;}});return map;}function getNameTplUrl(field,ctx){if(ctx.objectName==='cms_files'){return"${context.rootUrl}/api/files/files/${versions[0]}?download=true";}var href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},ctx),{},{formFactor:ctx.formFactor,appId:"${appId}",objectName:ctx.objectName||"${objectName}",recordId:"${".concat(ctx.idFieldName,"}")}));return href;}function getNameTpl(field,ctx){var href=getNameTplUrl(field,ctx);var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}return"<a href=\"".concat(href,"\" ").concat(linkTarget,">${").concat(field.name," | raw}</a>");}function getRelatedFieldTpl(field,ctx){var tpl='';if(!field.reference_to&&(field.optionsFunction||field._optionsFunction||field.options)){if(field.isTableField){return"${".concat(field.name,"}");}else{return"${".concat(field.name,"__label}");}}var linkTarget="";if(ctx&&ctx.isLookup){linkTarget="target='_blank'";}var onlyDisplayLookLabel=ctx.onlyDisplayLookLabel;var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}if(_.isString(field.reference_to)||!field.reference_to){if(field.multiple){var labelTpl="<%=item.label%>";if(!onlyDisplayLookLabel){var href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});labelTpl="<a href=\"".concat(href,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item,index) { %> <% if(index>0 && index<").concat(fieldDataStrTpl,".length){ %> , <% } %> ").concat(labelTpl," <% }); %><% } %>\n ");}else{var _labelTpl="${_display.".concat(field.name,".label}");var objectNameTpl="${_display.".concat(field.name,".objectName}");var recordIdTpl="${_display.".concat(field.name,".value}");if(field.isTableField){_labelTpl="${".concat(field.name,".label}");objectNameTpl="${".concat(field.name,".objectName}");recordIdTpl="${".concat(field.name,".value}");}if(!onlyDisplayLookLabel){var _href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"${appId}",objectName:"".concat(objectNameTpl),recordId:"".concat(recordIdTpl)});_labelTpl="<a href=\"".concat(_href,"\" ").concat(linkTarget,">").concat(_labelTpl,"</a>");}tpl=_labelTpl;}}else{var _labelTpl2="<%=item.label%>";if(!onlyDisplayLookLabel){var _href2=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:"<%=data.appId%>",objectName:"<%=item.objectName%>",recordId:"<%=item.value%>",_templateType:"JavaScript"});_labelTpl2="<a href=\"".concat(_href2,"\" ").concat(linkTarget,"><%=item.label%></a>");}tpl="\n <% if (".concat(fieldDataStrTpl," && ").concat(fieldDataStrTpl,".length) { %><% ").concat(fieldDataStrTpl,".forEach(function(item) { %> ").concat(_labelTpl2," <% }); %><% } %>\n ");}return tpl;}function getLookupTpl(_x3,_x4){return _getLookupTpl.apply(this,arguments);}function _getLookupTpl(){_getLookupTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee50(field,ctx){var NAME_FIELD_KEY,href,_href3;return _regeneratorRuntime().wrap(function _callee50$(_context50){while(1){switch(_context50.prev=_context50.next){case 0:if(field.reference_to){_context50.next=2;break;}return _context50.abrupt("return",getSelectTpl(field));case 2:_context50.next=4;return getRefObjectNameFieldName(field);case 4:NAME_FIELD_KEY=_context50.sent;if(!field.multiple){_context50.next=10;break;}href=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"<%=item._id%>",_templateType:"JavaScript"});return _context50.abrupt("return","\n <% if (data.".concat(field.name," && data.").concat(field.name,".length) { %><% data.").concat(field.name,".forEach(function(item) { %> <a href=\"").concat(href,"\"><%=item.").concat(NAME_FIELD_KEY,"%></a> <% }); %><% } %>\n "));case 10:_href3=Router.getObjectDetailPath({formFactor:ctx.formFactor,appId:ctx.appId,objectName:field.reference_to,recordId:"${".concat(field.name,"._id}")});return _context50.abrupt("return","<a href=\"".concat(_href3,"\">${").concat(field.name,".").concat(NAME_FIELD_KEY,"}</a>"));case 12:case"end":return _context50.stop();}}},_callee50);}));return _getLookupTpl.apply(this,arguments);}function getSwitchTpl(field){var fieldDataStrTpl="data._display.".concat(field.name);if(field.isTableField){fieldDataStrTpl="data.".concat(field.name);}return"<% if (data.".concat(field.name,") { %>\n <span class=\"slds-icon_container slds-icon-utility-check slds-current-color\" title=\"<%=").concat(fieldDataStrTpl,"%>\">\n <span ><%= ").concat(fieldDataStrTpl," === \"\u221A\" ? \"<svg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='currentColor' class='w-4 h-4'><path stroke-linecap='round' stroke-linejoin='round' d='M4.5 12.75l6 6 9-13.5' /></svg>\" : ").concat(fieldDataStrTpl," %></span>\n </span>\n <% } %>");}function getPasswordTpl(field){return"<% if (data.".concat(field.name,") { %>\n <span>\xB7\xB7\xB7\xB7\xB7\xB7</span>\n <% } %>");}function getLocationTpl(field){return"${".concat(field.name," ? ").concat(field.name,".address : ''}");}function getFieldTpl(_x5,_x6){return _getFieldTpl.apply(this,arguments);}function _getFieldTpl(){_getFieldTpl=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee51(field,options){return _regeneratorRuntime().wrap(function _callee51$(_context51){while(1){switch(_context51.prev=_context51.next){case 0:if(!((field.is_name||field.name===options.labelFieldName)&&!options.onlyDisplayLookLabel)){_context51.next=2;break;}return _context51.abrupt("return",getNameTpl(field,options));case 2:_context51.t0=field.type;_context51.next=_context51.t0==='password'?5:_context51.t0==='boolean'?6:_context51.t0==='toggle'?7:_context51.t0==='select'?8:_context51.t0==='time'?9:_context51.t0==='date'?10:_context51.t0==='datetime'?11:_context51.t0==='lookup'?12:_context51.t0==='master_detail'?15:_context51.t0==='location'?18:_context51.t0==='number'?21:_context51.t0==='currency'?21:_context51.t0==='percent'?24:_context51.t0==='formula'?24:_context51.t0==='summary'?24:_context51.t0==='filesize'?25:26;break;case 5:return _context51.abrupt("return",getPasswordTpl(field));case 6:return _context51.abrupt("return",getSwitchTpl(field));case 7:return _context51.abrupt("return",getSwitchTpl(field));case 8:return _context51.abrupt("return",getSelectTpl(field));case 9:return _context51.abrupt("return",getTimeTpl(field));case 10:return _context51.abrupt("return",getDateTpl(field));case 11:return _context51.abrupt("return",getDateTimeTpl(field));case 12:_context51.next=14;return getRelatedFieldTpl(field,options);case 14:return _context51.abrupt("return",_context51.sent);case 15:_context51.next=17;return getRelatedFieldTpl(field,options);case 17:return _context51.abrupt("return",_context51.sent);case 18:_context51.next=20;return getLocationTpl(field);case 20:return _context51.abrupt("return",_context51.sent);case 21:_context51.next=23;return getNumberTpl(field);case 23:return _context51.abrupt("return",_context51.sent);case 24:return _context51.abrupt("return",getUiFieldTpl(field));case 25:return _context51.abrupt("return",getUiFileSizeTpl(field));case 26:case"end":return _context51.stop();}}},_callee51);}));return _getFieldTpl.apply(this,arguments);}function getFieldsTemplate(_x7,_x8){return _getFieldsTemplate.apply(this,arguments);}function _getFieldsTemplate(){_getFieldsTemplate=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee52(fields,display){var expandFields,fieldsName,displayFields,fieldsArr,_iterator5,_step6,field,expandFieldsQuery;return _regeneratorRuntime().wrap(function _callee52$(_context52){while(1){switch(_context52.prev=_context52.next){case 0:expandFields=[];if(display!=false){display=true;}fieldsName=['_id'];displayFields=[];fieldsArr=[];if(___namespace.isArray(fields)){fieldsArr=fields;}else{fieldsArr=___namespace.values(fields);}_iterator5=_createForOfIteratorHelper(fieldsArr);try{for(_iterator5.s();!(_step6=_iterator5.n()).done;){field=_step6.value;//graphql 的 ui\display 中使用的字段需要先在query中查询. 否则会返回null
|
|
53
56
|
if(field.expand){expandFields.push(field);}else{if(field.name.indexOf('.')<0){if(display&&(field.type=='lookup'||field.type=='master_detail')){fieldsName.push("".concat(field.name));displayFields.push("".concat(field.name));}else{fieldsName.push(field.alias?"".concat(field.alias,":").concat(field.name):field.name);}if(_$1.includes(['time','date','datetime','boolean','number','currency'],field.type)){fieldsName.push("".concat(field.name));}if(_$1.includes(['percent','time','filesize','date','datetime','boolean','number','currency','select','file','image','avatar','formula','summary','object','grid'],field.type)){displayFields.push("".concat(field.name));}}else{objectFieldName=field.name.split('.')[0];fieldsName.push(objectFieldName);displayFields.push(objectFieldName);}}}}catch(err){_iterator5.e(err);}finally{_iterator5.f();}displayFields=___namespace.uniq(displayFields);fieldsName=___namespace.uniq(fieldsName);expandFieldsQuery="";if(expandFields.length>0){___namespace.each(expandFields,function(field){expandFieldsQuery=expandFieldsQuery+"".concat(field.expandInfo.fieldName,"__expand{").concat(field.expandInfo.displayName,"}");});}if(!(displayFields.length>0)){_context52.next=14;break;}return _context52.abrupt("return","".concat(fieldsName.join(','),",").concat(expandFieldsQuery,",_display:_ui{").concat(displayFields.join(','),"}"));case 14:return _context52.abrupt("return",_$1.trimEnd("".concat(fieldsName.join(' '),",").concat(expandFieldsQuery),","));case 15:case"end":return _context52.stop();}}},_callee52);}));return _getFieldsTemplate.apply(this,arguments);}function getRecordPermissionsTemplate(){return"\n recordPermissions: _permissions{\n allowCreate,\n allowCreateFiles,\n allowDelete,\n allowDeleteFiles,\n allowEdit,\n allowEditFiles,\n allowRead,\n allowReadFiles,\n disabled_actions,\n disabled_list_views,\n field_permissions,\n modifyAllFiles,\n modifyAllRecords,\n modifyAssignCompanysRecords,\n modifyCompanyRecords,\n uneditable_fields,\n unreadable_fields,\n unrelated_objects,\n viewAllFiles,\n viewAllRecords,\n viewAssignCompanysRecords,\n viewCompanyRecords,\n }\n ";}function getFindOneQuery$1(_x9,_x10,_x11,_x12){return _getFindOneQuery$.apply(this,arguments);}function _getFindOneQuery$(){_getFindOneQuery$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee53(object,recordId,fields,options){var queryOptions,alias;return _regeneratorRuntime().wrap(function _callee53$(_context53){while(1){switch(_context53.prev=_context53.next){case 0:queryOptions="(filters:[\"".concat(object.idFieldName,"\", \"=\", \"${recordId}\"])");alias="data";if(options){if(options.alias){alias=options.alias;}if(options.filters){queryOptions="(filters:".concat(options.filters,")");}if(options.queryOptions){queryOptions="(".concat(options.queryOptions,")");}}_context53.t0="{".concat(alias,":").concat(object.name).concat(queryOptions,"{");_context53.next=6;return getFieldsTemplate(fields);case 6:_context53.t1=_context53.sent;_context53.t2=_context53.t0.concat.call(_context53.t0,_context53.t1,", ").concat(getRecordPermissionsTemplate(),"}}");return _context53.abrupt("return",{query:_context53.t2});case 9:case"end":return _context53.stop();}}},_callee53);}));return _getFindOneQuery$.apply(this,arguments);}function getSaveQuery(object,recordId,fields,options){return{objectName:object.name,$:"$$",recordId:recordId,modalName:"${modalName}"};}/*
|
|
54
57
|
readonly字段应该移除掉不提交到服务端。
|
|
55
58
|
*/function getScriptForReadonlyFields(fields){var scripts=[];fields.forEach(function(item){if(item.readonly&&item.name.indexOf(".")<0){scripts.push("delete formData.".concat(item.name,";"));}});return scripts.join("\r\n");}/*
|
|
@@ -77,18 +80,19 @@ return"${context.rootUrl}/graphql?reload=${additionalFilters}";}}/*
|
|
|
77
80
|
* @Author: baozhoutao@steedos.com
|
|
78
81
|
* @Date: 2022-10-28 14:15:09
|
|
79
82
|
* @LastEditors: liaodaxue
|
|
80
|
-
* @LastEditTime: 2023-
|
|
83
|
+
* @LastEditTime: 2023-12-29 10:46:50
|
|
81
84
|
* @Description:
|
|
82
85
|
*/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,// 关闭分块上传
|
|
83
|
-
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 frontend_field_group_generalization$1="General";var frontend_download$1="Download";var frontend_form_save$1="Save";var frontend_form_save_and_new$1="Save and New";var frontend_form_cancel$1="Cancel";var frontend_form_new$1="New";var frontend_form_edit$1="Edit";var frontend_form_preview$1="Preview";var frontend_form_select$1="Select";var frontend_form_please_select$1="Please select";var frontend_form_confirm$1="Confirm";var frontend_form_delete$1="Delete";var frontend_form_view$1="view";var frontend_form_details$1="details";var frontend_delete_confirm_text$1="Are you sure you want to delete this item?";var frontend_delete_many_selected_required$1="Please select the item to be deleted";var frontend_delete_many_confirm_text$1="Are you sure you want to delete?";var frontend_display_type_is_table$1="Table";var frontend_display_type_is_split$1="Split View";var frontend_display_as$1="Displayed as";var frontend_record_sum$1="items";var frontend_button_reload_tooltip$1="Refresh";var frontend_button_search_tooltip$1="Search";var frontend_fields_filter_button_search$1="Search";var frontend_fields_filter_button_settings$1="Set search options";var frontend_button_listview_control_tooltip$1="List View Controls";var frontend_button_listview_control_label$1="LIST VIEW CONTROLS";var frontend_listview_control_columns$1="Show List";var frontend_listview_control_columns_mobile_group$1="Mobile side";var frontend_listview_control_clone_label$1="Clone";var frontend_listview_control_clone_title$1="Clone List View";var frontend_listview_control_clone_defaultData_label_start$1="Copy of";var frontend_listview_control_clone_defaultData_label_end$1="";var frontend_listview_control_delete_label$1="Delete";var frontend_listview_control_delete_confirm_text$1="If you delete this list view it will be permanently removed for all users with access. Are you sure you want to delete?";var frontend_listview_control_delete_message_success$1="Deletion successful";var frontend_listview_control_filters$1="Filter settings";var frontend_listview_control_filters_fields_extend$1="Conditional component 1";var frontend_listview_control_new_label$1="New";var frontend_listview_control_new_title$1="New List View";var frontend_listview_control_new_message_success$1="Success";var frontend_listview_control_new_message_failed$1="Failure";var frontend_listview_control_rename_label$1="Rename";var frontend_listview_control_rename_title$1="Rename List View";var frontend_listview_control_share$1="Sharing Settings";var frontend_listview_control_sort$1="Default sorting rule";var frontend_export_excel$1="Export Excel";var frontend_export_excel_toast$1="Exporting, please wait";var frontend_operation$1="Operation";var frontend_import_data$1="Import data";var frontend_import_data_object_name$1="Import object";var frontend_import_data_queue_import$1="Data import";var frontend_import_data_queue_import_description$1="Import description";var frontend_import_data_queue_import_encoding$1="Character code";var frontend_import_data_queue_import_template_url$1="Import template";var frontend_import_data_file$1="Excel file";var frontend_import_data_message_success$1="Importing has started...";var frontend_import_data_message_failed$1="Import failed";var frontend_record_detail_tab_detailed$1="Details";var frontend_record_detail_tab_related$1="Related";var frontend_all_apps$1="All apps";var frontend_all_projects$1="All projects";var frontend_open_app_launcher$1="Open App Launcher";var frontend_application_launcher$1="Application launcher";var frontend_menu$1="Menu";var frontend_help$1="Help";var frontend_setup$1="Setup";var frontend_notifications$1="Notifications";var frontend_notifications_allread$1="Mark all as read";var frontend_notifications_allread_message$1="All marked as read";var frontend_profile$1="Profile";var frontend_about$1="About";var frontend_log_out$1="Log out";var frontend_listview_warning_start$1="The current ";var frontend_listview_warning_end$1=" view does not exist!";var frontend_record_detail_related_list_warning$1="Missing parent object, parent record, or related list object property!";var frontend_record_detail_related_lists_warning$1="Missing parent object, or parent record property!";var frontend_record_detail_related_lists_info$1="No related child tables found";var frontend_calendar_listWeek$1="List";var frontend_message_no_permission_to_edit$1="You don't have permission to edit this record!";var frontend_message_modification_successful$1="Modification successful!";var frontend_message_modification_failed$1="Modification failed!";var frontend_objects_related_alert_start$1="No related table fields associated with the related list object";var frontend_objects_related_alert_end$1="were found.";var frontend_no_records_found$1="No records found.";var frontend_records_no_allowedit$1="You do not have edit permission for this record";var en_us={frontend_field_group_generalization:frontend_field_group_generalization$1,frontend_download:frontend_download$1,frontend_form_save:frontend_form_save$1,frontend_form_save_and_new:frontend_form_save_and_new$1,frontend_form_cancel:frontend_form_cancel$1,frontend_form_new:frontend_form_new$1,frontend_form_edit:frontend_form_edit$1,frontend_form_preview:frontend_form_preview$1,frontend_form_select:frontend_form_select$1,frontend_form_please_select:frontend_form_please_select$1,frontend_form_confirm:frontend_form_confirm$1,frontend_form_delete:frontend_form_delete$1,frontend_form_view:frontend_form_view$1,frontend_form_details:frontend_form_details$1,frontend_delete_confirm_text:frontend_delete_confirm_text$1,frontend_delete_many_selected_required:frontend_delete_many_selected_required$1,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text$1,frontend_display_type_is_table:frontend_display_type_is_table$1,frontend_display_type_is_split:frontend_display_type_is_split$1,frontend_display_as:frontend_display_as$1,frontend_record_sum:frontend_record_sum$1,frontend_button_reload_tooltip:frontend_button_reload_tooltip$1,frontend_button_search_tooltip:frontend_button_search_tooltip$1,frontend_fields_filter_button_search:frontend_fields_filter_button_search$1,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings$1,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip$1,frontend_button_listview_control_label:frontend_button_listview_control_label$1,frontend_listview_control_columns:frontend_listview_control_columns$1,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group$1,frontend_listview_control_clone_label:frontend_listview_control_clone_label$1,frontend_listview_control_clone_title:frontend_listview_control_clone_title$1,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start$1,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end$1,frontend_listview_control_delete_label:frontend_listview_control_delete_label$1,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text$1,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success$1,frontend_listview_control_filters:frontend_listview_control_filters$1,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend$1,frontend_listview_control_new_label:frontend_listview_control_new_label$1,frontend_listview_control_new_title:frontend_listview_control_new_title$1,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success$1,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed$1,frontend_listview_control_rename_label:frontend_listview_control_rename_label$1,frontend_listview_control_rename_title:frontend_listview_control_rename_title$1,frontend_listview_control_share:frontend_listview_control_share$1,frontend_listview_control_sort:frontend_listview_control_sort$1,frontend_export_excel:frontend_export_excel$1,frontend_export_excel_toast:frontend_export_excel_toast$1,frontend_operation:frontend_operation$1,frontend_import_data:frontend_import_data$1,frontend_import_data_object_name:frontend_import_data_object_name$1,frontend_import_data_queue_import:frontend_import_data_queue_import$1,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description$1,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding$1,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url$1,frontend_import_data_file:frontend_import_data_file$1,frontend_import_data_message_success:frontend_import_data_message_success$1,frontend_import_data_message_failed:frontend_import_data_message_failed$1,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed$1,frontend_record_detail_tab_related:frontend_record_detail_tab_related$1,frontend_all_apps:frontend_all_apps$1,frontend_all_projects:frontend_all_projects$1,frontend_open_app_launcher:frontend_open_app_launcher$1,frontend_application_launcher:frontend_application_launcher$1,frontend_menu:frontend_menu$1,frontend_help:frontend_help$1,frontend_setup:frontend_setup$1,frontend_notifications:frontend_notifications$1,frontend_notifications_allread:frontend_notifications_allread$1,frontend_notifications_allread_message:frontend_notifications_allread_message$1,frontend_profile:frontend_profile$1,frontend_about:frontend_about$1,frontend_log_out:frontend_log_out$1,frontend_listview_warning_start:frontend_listview_warning_start$1,frontend_listview_warning_end:frontend_listview_warning_end$1,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning$1,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning$1,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info$1,frontend_calendar_listWeek:frontend_calendar_listWeek$1,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit$1,frontend_message_modification_successful:frontend_message_modification_successful$1,frontend_message_modification_failed:frontend_message_modification_failed$1,frontend_objects_related_alert_start:frontend_objects_related_alert_start$1,frontend_objects_related_alert_end:frontend_objects_related_alert_end$1,frontend_no_records_found:frontend_no_records_found$1,frontend_records_no_allowedit:frontend_records_no_allowedit$1};var frontend_field_group_generalization="通用";var frontend_download="下载";var frontend_form_save="保存";var frontend_form_save_and_new="保存并新建";var frontend_form_cancel="取消";var frontend_form_new="新建";var frontend_form_edit="编辑";var frontend_form_preview="预览";var frontend_form_select="选择";var frontend_form_please_select="请选择";var frontend_form_confirm="确认";var frontend_form_delete="删除";var frontend_form_view="查看";var frontend_form_details="详情";var frontend_delete_confirm_text="确定要删除此项目?";var frontend_delete_many_selected_required="请选择要删除的项";var frontend_delete_many_confirm_text="确定要删除吗?";var frontend_display_type_is_table="表格";var frontend_display_type_is_split="分栏视图";var frontend_display_as="显示为";var frontend_record_sum="个项目";var frontend_button_reload_tooltip="刷新";var frontend_button_search_tooltip="筛选";var frontend_fields_filter_button_search="搜索";var frontend_fields_filter_button_settings="设置搜索项";var frontend_button_listview_control_tooltip="列表视图控制";var frontend_button_listview_control_label="列表视图控制";var frontend_listview_control_columns="显示的列";var frontend_listview_control_columns_mobile_group="手机端";var frontend_listview_control_clone="复制";var frontend_listview_control_clone_label="复制";var frontend_listview_control_clone_title="复制 列表视图";var frontend_listview_control_clone_defaultData_label_start="";var frontend_listview_control_clone_defaultData_label_end="的副本";var frontend_listview_control_delete_label="删除";var frontend_listview_control_delete_confirm_text="如果您删除此列表视图,该视图将为所有具备访问权限的用户永久删除。是否确定要删除?";var frontend_listview_control_delete_message_success="删除成功";var frontend_listview_control_filters="过滤设置";var frontend_listview_control_filters_fields_extend="条件组件1";var frontend_listview_control_new_label="新建";var frontend_listview_control_new_title="新建 列表视图";var frontend_listview_control_new_message_success="成功";var frontend_listview_control_new_message_failed="失败";var frontend_listview_control_rename_label="重命名";var frontend_listview_control_rename_title="重命名 列表视图";var frontend_listview_control_share="共享设置";var frontend_listview_control_sort="默认排序规则";var frontend_export_excel="导出";var frontend_export_excel_toast="正在导出,请稍后...";var frontend_operation="操作";var frontend_import_data="导入数据";var frontend_import_data_object_name="导入对象";var frontend_import_data_queue_import="数据导入";var frontend_import_data_queue_import_description="导入描述";var frontend_import_data_queue_import_encoding="字符代码";var frontend_import_data_queue_import_template_url="导入模板";var frontend_import_data_file="Excel文件";var frontend_import_data_message_success="已开始导入...";var frontend_import_data_message_failed="导入失败";var frontend_record_detail_tab_detailed="详细";var frontend_record_detail_tab_related="相关";var frontend_all_apps="所有应用";var frontend_all_projects="所有项目";var frontend_open_app_launcher="打开应用程序启动器";var frontend_application_launcher="应用程序启动器";var frontend_menu="菜单";var frontend_help="帮助";var frontend_setup="设置";var frontend_notifications="通知";var frontend_notifications_allread="全部标记为已读";var frontend_notifications_allread_message="已全部标记为已读";var frontend_profile="个人资料";var frontend_about="关于";var frontend_log_out="注销";var frontend_listview_warning_start="当前";var frontend_listview_warning_end="视图不存在!";var frontend_record_detail_related_list_warning="缺少父级对象、父级记录或相关列表对象属性!";var frontend_record_detail_related_lists_warning="缺少父级对象或父级记录属性!";var frontend_record_detail_related_lists_info="没有相关子表";var frontend_calendar_listWeek="列表";var frontend_message_no_permission_to_edit="您没有编辑该记录的权限!";var frontend_message_modification_successful="修改成功!";var frontend_message_modification_failed="修改失败!";var frontend_objects_related_alert_start="未找到与相关列表对象";var frontend_objects_related_alert_end="关联的相关表字段";var frontend_no_records_found="无法找到记录";var frontend_records_no_allowedit="您对这条记录没有编辑权限";var zh_cn={frontend_field_group_generalization:frontend_field_group_generalization,frontend_download:frontend_download,frontend_form_save:frontend_form_save,frontend_form_save_and_new:frontend_form_save_and_new,frontend_form_cancel:frontend_form_cancel,frontend_form_new:frontend_form_new,frontend_form_edit:frontend_form_edit,frontend_form_preview:frontend_form_preview,frontend_form_select:frontend_form_select,frontend_form_please_select:frontend_form_please_select,frontend_form_confirm:frontend_form_confirm,frontend_form_delete:frontend_form_delete,frontend_form_view:frontend_form_view,frontend_form_details:frontend_form_details,frontend_delete_confirm_text:frontend_delete_confirm_text,frontend_delete_many_selected_required:frontend_delete_many_selected_required,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text,frontend_display_type_is_table:frontend_display_type_is_table,frontend_display_type_is_split:frontend_display_type_is_split,frontend_display_as:frontend_display_as,frontend_record_sum:frontend_record_sum,frontend_button_reload_tooltip:frontend_button_reload_tooltip,frontend_button_search_tooltip:frontend_button_search_tooltip,frontend_fields_filter_button_search:frontend_fields_filter_button_search,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip,frontend_button_listview_control_label:frontend_button_listview_control_label,frontend_listview_control_columns:frontend_listview_control_columns,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group,frontend_listview_control_clone:frontend_listview_control_clone,frontend_listview_control_clone_label:frontend_listview_control_clone_label,frontend_listview_control_clone_title:frontend_listview_control_clone_title,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end,frontend_listview_control_delete_label:frontend_listview_control_delete_label,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success,frontend_listview_control_filters:frontend_listview_control_filters,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend,frontend_listview_control_new_label:frontend_listview_control_new_label,frontend_listview_control_new_title:frontend_listview_control_new_title,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed,frontend_listview_control_rename_label:frontend_listview_control_rename_label,frontend_listview_control_rename_title:frontend_listview_control_rename_title,frontend_listview_control_share:frontend_listview_control_share,frontend_listview_control_sort:frontend_listview_control_sort,frontend_export_excel:frontend_export_excel,frontend_export_excel_toast:frontend_export_excel_toast,frontend_operation:frontend_operation,frontend_import_data:frontend_import_data,frontend_import_data_object_name:frontend_import_data_object_name,frontend_import_data_queue_import:frontend_import_data_queue_import,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url,frontend_import_data_file:frontend_import_data_file,frontend_import_data_message_success:frontend_import_data_message_success,frontend_import_data_message_failed:frontend_import_data_message_failed,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed,frontend_record_detail_tab_related:frontend_record_detail_tab_related,frontend_all_apps:frontend_all_apps,frontend_all_projects:frontend_all_projects,frontend_open_app_launcher:frontend_open_app_launcher,frontend_application_launcher:frontend_application_launcher,frontend_menu:frontend_menu,frontend_help:frontend_help,frontend_setup:frontend_setup,frontend_notifications:frontend_notifications,frontend_notifications_allread:frontend_notifications_allread,frontend_notifications_allread_message:frontend_notifications_allread_message,frontend_profile:frontend_profile,frontend_about:frontend_about,frontend_log_out:frontend_log_out,frontend_listview_warning_start:frontend_listview_warning_start,frontend_listview_warning_end:frontend_listview_warning_end,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info,frontend_calendar_listWeek:frontend_calendar_listWeek,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit,frontend_message_modification_successful:frontend_message_modification_successful,frontend_message_modification_failed:frontend_message_modification_failed,frontend_objects_related_alert_start:frontend_objects_related_alert_start,frontend_objects_related_alert_end:frontend_objects_related_alert_end,frontend_no_records_found:frontend_no_records_found,frontend_records_no_allowedit:frontend_records_no_allowedit};var resources={"en-US":{translation:en_us},"zh-CN":{translation:zh_cn}};var locale="zh-CN";if(typeof window!='undefined'){var _window$Builder,_window$Builder2;if(((_window$Builder=window.Builder)===null||_window$Builder===void 0?void 0:_window$Builder.settings.locale)=="en-us"){locale="en-US";}else if(((_window$Builder2=window.Builder)===null||_window$Builder2===void 0?void 0:_window$Builder2.settings.locale)=="zh-cn"){locale="zh-CN";}}i18next__default["default"].use(reactI18next.initReactI18next).init({resources:resources,lng:locale,interpolation:{escapeValue:false}});function getQuickEditSchema(_x17,_x18){return _getQuickEditSchema.apply(this,arguments);}function _getQuickEditSchema(){_getQuickEditSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee55(field,options){var isAmisVersionforBatchEdit,quickEditId,quickEditSchema,submitEvent,fieldSchema,TempDisplayField,quickEditOnEvent,labelField,valueField,removeDisplayField;return _regeneratorRuntime().wrap(function _callee55$(_context55){while(1){switch(_context55.prev=_context55.next){case 0://判断在amis3.2以上环境下,放开批量编辑与lookup的单元格编辑
|
|
86
|
+
receiver:{method:"post",dataType:"form-data",url:"${context.rootUrl}/s3/".concat(tableName),requestAdaptor:"\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { _master, global } = superData;\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 superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.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 frontend_field_group_generalization$1="General";var frontend_download$1="Download";var frontend_form_save$1="Save";var frontend_form_save_and_new$1="Save and New";var frontend_form_cancel$1="Cancel";var frontend_form_new$1="New";var frontend_form_edit$1="Edit";var frontend_form_preview$1="Preview";var frontend_form_select$1="Select";var frontend_form_please_select$1="Please select";var frontend_form_confirm$1="Confirm";var frontend_form_delete$1="Delete";var frontend_form_view$1="view";var frontend_form_details$1="details";var frontend_delete_confirm_text$1="Are you sure you want to delete this item?";var frontend_delete_many_selected_required$1="Please select the item to be deleted";var frontend_delete_many_confirm_text$1="Are you sure you want to delete?";var frontend_display_type_is_table$1="Table";var frontend_display_type_is_split$1="Split View";var frontend_display_as$1="Displayed as";var frontend_record_sum$1="items";var frontend_button_reload_tooltip$1="Refresh";var frontend_button_search_tooltip$1="Search";var frontend_fields_filter_button_search$1="Search";var frontend_fields_filter_button_settings$1="Set search options";var frontend_button_listview_control_tooltip$1="List View Controls";var frontend_button_listview_control_label$1="LIST VIEW CONTROLS";var frontend_listview_control_columns$1="Show List";var frontend_listview_control_columns_mobile_group$1="Mobile side";var frontend_listview_control_clone_label$1="Clone";var frontend_listview_control_clone_title$1="Clone List View";var frontend_listview_control_clone_defaultData_label_start$1="Copy of";var frontend_listview_control_clone_defaultData_label_end$1="";var frontend_listview_control_delete_label$1="Delete";var frontend_listview_control_delete_confirm_text$1="If you delete this list view it will be permanently removed for all users with access. Are you sure you want to delete?";var frontend_listview_control_delete_message_success$1="Deletion successful";var frontend_listview_control_filters$1="Filter settings";var frontend_listview_control_filters_fields_extend$1="Conditional component 1";var frontend_listview_control_new_label$1="New";var frontend_listview_control_new_title$1="New List View";var frontend_listview_control_new_message_success$1="Success";var frontend_listview_control_new_message_failed$1="Failure";var frontend_listview_control_rename_label$1="Rename";var frontend_listview_control_rename_title$1="Rename List View";var frontend_listview_control_share$1="Sharing Settings";var frontend_listview_control_sort$1="Default sorting rule";var frontend_export_excel$1="Export Excel";var frontend_export_excel_toast$1="Exporting, please wait";var frontend_operation$1="Operation";var frontend_import_data$1="Import data";var frontend_import_data_object_name$1="Import object";var frontend_import_data_queue_import$1="Data import";var frontend_import_data_queue_import_description$1="Import description";var frontend_import_data_queue_import_encoding$1="Character code";var frontend_import_data_queue_import_template_url$1="Import template";var frontend_import_data_file$1="Excel file";var frontend_import_data_message_success$1="Importing has started...";var frontend_import_data_message_failed$1="Import failed";var frontend_record_detail_tab_detailed$1="Details";var frontend_record_detail_tab_related$1="Related";var frontend_all_apps$1="All apps";var frontend_all_projects$1="All projects";var frontend_open_app_launcher$1="Open App Launcher";var frontend_application_launcher$1="Application launcher";var frontend_menu$1="Menu";var frontend_help$1="Help";var frontend_setup$1="Setup";var frontend_notifications$1="Notifications";var frontend_notifications_allread$1="Mark all as read";var frontend_notifications_allread_message$1="All marked as read";var frontend_profile$1="Profile";var frontend_about$1="About";var frontend_log_out$1="Log out";var frontend_listview_warning_start$1="The current ";var frontend_listview_warning_end$1=" view does not exist!";var frontend_record_detail_related_list_warning$1="Missing parent object, parent record, or related list object property!";var frontend_record_detail_related_lists_warning$1="Missing parent object, or parent record property!";var frontend_record_detail_related_lists_info$1="No related child tables found";var frontend_calendar_listWeek$1="List";var frontend_message_no_permission_to_edit$1="You don't have permission to edit this record!";var frontend_message_modification_successful$1="Modification successful!";var frontend_message_modification_failed$1="Modification failed!";var frontend_objects_related_alert_start$1="No related table fields associated with the related list object";var frontend_objects_related_alert_end$1="were found.";var frontend_no_records_found$1="No records found.";var frontend_records_no_allowedit$1="You do not have edit permission for this record";var en_us={frontend_field_group_generalization:frontend_field_group_generalization$1,frontend_download:frontend_download$1,frontend_form_save:frontend_form_save$1,frontend_form_save_and_new:frontend_form_save_and_new$1,frontend_form_cancel:frontend_form_cancel$1,frontend_form_new:frontend_form_new$1,frontend_form_edit:frontend_form_edit$1,frontend_form_preview:frontend_form_preview$1,frontend_form_select:frontend_form_select$1,frontend_form_please_select:frontend_form_please_select$1,frontend_form_confirm:frontend_form_confirm$1,frontend_form_delete:frontend_form_delete$1,frontend_form_view:frontend_form_view$1,frontend_form_details:frontend_form_details$1,frontend_delete_confirm_text:frontend_delete_confirm_text$1,frontend_delete_many_selected_required:frontend_delete_many_selected_required$1,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text$1,frontend_display_type_is_table:frontend_display_type_is_table$1,frontend_display_type_is_split:frontend_display_type_is_split$1,frontend_display_as:frontend_display_as$1,frontend_record_sum:frontend_record_sum$1,frontend_button_reload_tooltip:frontend_button_reload_tooltip$1,frontend_button_search_tooltip:frontend_button_search_tooltip$1,frontend_fields_filter_button_search:frontend_fields_filter_button_search$1,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings$1,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip$1,frontend_button_listview_control_label:frontend_button_listview_control_label$1,frontend_listview_control_columns:frontend_listview_control_columns$1,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group$1,frontend_listview_control_clone_label:frontend_listview_control_clone_label$1,frontend_listview_control_clone_title:frontend_listview_control_clone_title$1,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start$1,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end$1,frontend_listview_control_delete_label:frontend_listview_control_delete_label$1,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text$1,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success$1,frontend_listview_control_filters:frontend_listview_control_filters$1,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend$1,frontend_listview_control_new_label:frontend_listview_control_new_label$1,frontend_listview_control_new_title:frontend_listview_control_new_title$1,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success$1,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed$1,frontend_listview_control_rename_label:frontend_listview_control_rename_label$1,frontend_listview_control_rename_title:frontend_listview_control_rename_title$1,frontend_listview_control_share:frontend_listview_control_share$1,frontend_listview_control_sort:frontend_listview_control_sort$1,frontend_export_excel:frontend_export_excel$1,frontend_export_excel_toast:frontend_export_excel_toast$1,frontend_operation:frontend_operation$1,frontend_import_data:frontend_import_data$1,frontend_import_data_object_name:frontend_import_data_object_name$1,frontend_import_data_queue_import:frontend_import_data_queue_import$1,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description$1,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding$1,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url$1,frontend_import_data_file:frontend_import_data_file$1,frontend_import_data_message_success:frontend_import_data_message_success$1,frontend_import_data_message_failed:frontend_import_data_message_failed$1,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed$1,frontend_record_detail_tab_related:frontend_record_detail_tab_related$1,frontend_all_apps:frontend_all_apps$1,frontend_all_projects:frontend_all_projects$1,frontend_open_app_launcher:frontend_open_app_launcher$1,frontend_application_launcher:frontend_application_launcher$1,frontend_menu:frontend_menu$1,frontend_help:frontend_help$1,frontend_setup:frontend_setup$1,frontend_notifications:frontend_notifications$1,frontend_notifications_allread:frontend_notifications_allread$1,frontend_notifications_allread_message:frontend_notifications_allread_message$1,frontend_profile:frontend_profile$1,frontend_about:frontend_about$1,frontend_log_out:frontend_log_out$1,frontend_listview_warning_start:frontend_listview_warning_start$1,frontend_listview_warning_end:frontend_listview_warning_end$1,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning$1,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning$1,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info$1,frontend_calendar_listWeek:frontend_calendar_listWeek$1,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit$1,frontend_message_modification_successful:frontend_message_modification_successful$1,frontend_message_modification_failed:frontend_message_modification_failed$1,frontend_objects_related_alert_start:frontend_objects_related_alert_start$1,frontend_objects_related_alert_end:frontend_objects_related_alert_end$1,frontend_no_records_found:frontend_no_records_found$1,frontend_records_no_allowedit:frontend_records_no_allowedit$1};var frontend_field_group_generalization="通用";var frontend_download="下载";var frontend_form_save="保存";var frontend_form_save_and_new="保存并新建";var frontend_form_cancel="取消";var frontend_form_new="新建";var frontend_form_edit="编辑";var frontend_form_preview="预览";var frontend_form_select="选择";var frontend_form_please_select="请选择";var frontend_form_confirm="确认";var frontend_form_delete="删除";var frontend_form_view="查看";var frontend_form_details="详情";var frontend_delete_confirm_text="确定要删除此项目?";var frontend_delete_many_selected_required="请选择要删除的项";var frontend_delete_many_confirm_text="确定要删除吗?";var frontend_display_type_is_table="表格";var frontend_display_type_is_split="分栏视图";var frontend_display_as="显示为";var frontend_record_sum="个项目";var frontend_button_reload_tooltip="刷新";var frontend_button_search_tooltip="筛选";var frontend_fields_filter_button_search="搜索";var frontend_fields_filter_button_settings="设置搜索项";var frontend_button_listview_control_tooltip="列表视图控制";var frontend_button_listview_control_label="列表视图控制";var frontend_listview_control_columns="显示的列";var frontend_listview_control_columns_mobile_group="手机端";var frontend_listview_control_clone="复制";var frontend_listview_control_clone_label="复制";var frontend_listview_control_clone_title="复制 列表视图";var frontend_listview_control_clone_defaultData_label_start="";var frontend_listview_control_clone_defaultData_label_end="的副本";var frontend_listview_control_delete_label="删除";var frontend_listview_control_delete_confirm_text="如果您删除此列表视图,该视图将为所有具备访问权限的用户永久删除。是否确定要删除?";var frontend_listview_control_delete_message_success="删除成功";var frontend_listview_control_filters="过滤设置";var frontend_listview_control_filters_fields_extend="条件组件1";var frontend_listview_control_new_label="新建";var frontend_listview_control_new_title="新建 列表视图";var frontend_listview_control_new_message_success="成功";var frontend_listview_control_new_message_failed="失败";var frontend_listview_control_rename_label="重命名";var frontend_listview_control_rename_title="重命名 列表视图";var frontend_listview_control_share="共享设置";var frontend_listview_control_sort="默认排序规则";var frontend_export_excel="导出";var frontend_export_excel_toast="正在导出,请稍后...";var frontend_operation="操作";var frontend_import_data="导入数据";var frontend_import_data_object_name="导入对象";var frontend_import_data_queue_import="数据导入";var frontend_import_data_queue_import_description="导入描述";var frontend_import_data_queue_import_encoding="字符代码";var frontend_import_data_queue_import_template_url="导入模板";var frontend_import_data_file="Excel文件";var frontend_import_data_message_success="已开始导入...";var frontend_import_data_message_failed="导入失败";var frontend_record_detail_tab_detailed="详细";var frontend_record_detail_tab_related="相关";var frontend_all_apps="所有应用";var frontend_all_projects="所有项目";var frontend_open_app_launcher="打开应用程序启动器";var frontend_application_launcher="应用程序启动器";var frontend_menu="菜单";var frontend_help="帮助";var frontend_setup="设置";var frontend_notifications="通知";var frontend_notifications_allread="全部标记为已读";var frontend_notifications_allread_message="已全部标记为已读";var frontend_profile="个人资料";var frontend_about="关于";var frontend_log_out="注销";var frontend_listview_warning_start="当前";var frontend_listview_warning_end="视图不存在!";var frontend_record_detail_related_list_warning="缺少父级对象、父级记录或相关列表对象属性!";var frontend_record_detail_related_lists_warning="缺少父级对象或父级记录属性!";var frontend_record_detail_related_lists_info="没有相关子表";var frontend_calendar_listWeek="列表";var frontend_message_no_permission_to_edit="您没有编辑该记录的权限!";var frontend_message_modification_successful="修改成功!";var frontend_message_modification_failed="修改失败!";var frontend_objects_related_alert_start="未找到与相关列表对象";var frontend_objects_related_alert_end="关联的相关表字段";var frontend_no_records_found="无法找到记录";var frontend_records_no_allowedit="您对这条记录没有编辑权限";var zh_cn={frontend_field_group_generalization:frontend_field_group_generalization,frontend_download:frontend_download,frontend_form_save:frontend_form_save,frontend_form_save_and_new:frontend_form_save_and_new,frontend_form_cancel:frontend_form_cancel,frontend_form_new:frontend_form_new,frontend_form_edit:frontend_form_edit,frontend_form_preview:frontend_form_preview,frontend_form_select:frontend_form_select,frontend_form_please_select:frontend_form_please_select,frontend_form_confirm:frontend_form_confirm,frontend_form_delete:frontend_form_delete,frontend_form_view:frontend_form_view,frontend_form_details:frontend_form_details,frontend_delete_confirm_text:frontend_delete_confirm_text,frontend_delete_many_selected_required:frontend_delete_many_selected_required,frontend_delete_many_confirm_text:frontend_delete_many_confirm_text,frontend_display_type_is_table:frontend_display_type_is_table,frontend_display_type_is_split:frontend_display_type_is_split,frontend_display_as:frontend_display_as,frontend_record_sum:frontend_record_sum,frontend_button_reload_tooltip:frontend_button_reload_tooltip,frontend_button_search_tooltip:frontend_button_search_tooltip,frontend_fields_filter_button_search:frontend_fields_filter_button_search,frontend_fields_filter_button_settings:frontend_fields_filter_button_settings,frontend_button_listview_control_tooltip:frontend_button_listview_control_tooltip,frontend_button_listview_control_label:frontend_button_listview_control_label,frontend_listview_control_columns:frontend_listview_control_columns,frontend_listview_control_columns_mobile_group:frontend_listview_control_columns_mobile_group,frontend_listview_control_clone:frontend_listview_control_clone,frontend_listview_control_clone_label:frontend_listview_control_clone_label,frontend_listview_control_clone_title:frontend_listview_control_clone_title,frontend_listview_control_clone_defaultData_label_start:frontend_listview_control_clone_defaultData_label_start,frontend_listview_control_clone_defaultData_label_end:frontend_listview_control_clone_defaultData_label_end,frontend_listview_control_delete_label:frontend_listview_control_delete_label,frontend_listview_control_delete_confirm_text:frontend_listview_control_delete_confirm_text,frontend_listview_control_delete_message_success:frontend_listview_control_delete_message_success,frontend_listview_control_filters:frontend_listview_control_filters,frontend_listview_control_filters_fields_extend:frontend_listview_control_filters_fields_extend,frontend_listview_control_new_label:frontend_listview_control_new_label,frontend_listview_control_new_title:frontend_listview_control_new_title,frontend_listview_control_new_message_success:frontend_listview_control_new_message_success,frontend_listview_control_new_message_failed:frontend_listview_control_new_message_failed,frontend_listview_control_rename_label:frontend_listview_control_rename_label,frontend_listview_control_rename_title:frontend_listview_control_rename_title,frontend_listview_control_share:frontend_listview_control_share,frontend_listview_control_sort:frontend_listview_control_sort,frontend_export_excel:frontend_export_excel,frontend_export_excel_toast:frontend_export_excel_toast,frontend_operation:frontend_operation,frontend_import_data:frontend_import_data,frontend_import_data_object_name:frontend_import_data_object_name,frontend_import_data_queue_import:frontend_import_data_queue_import,frontend_import_data_queue_import_description:frontend_import_data_queue_import_description,frontend_import_data_queue_import_encoding:frontend_import_data_queue_import_encoding,frontend_import_data_queue_import_template_url:frontend_import_data_queue_import_template_url,frontend_import_data_file:frontend_import_data_file,frontend_import_data_message_success:frontend_import_data_message_success,frontend_import_data_message_failed:frontend_import_data_message_failed,frontend_record_detail_tab_detailed:frontend_record_detail_tab_detailed,frontend_record_detail_tab_related:frontend_record_detail_tab_related,frontend_all_apps:frontend_all_apps,frontend_all_projects:frontend_all_projects,frontend_open_app_launcher:frontend_open_app_launcher,frontend_application_launcher:frontend_application_launcher,frontend_menu:frontend_menu,frontend_help:frontend_help,frontend_setup:frontend_setup,frontend_notifications:frontend_notifications,frontend_notifications_allread:frontend_notifications_allread,frontend_notifications_allread_message:frontend_notifications_allread_message,frontend_profile:frontend_profile,frontend_about:frontend_about,frontend_log_out:frontend_log_out,frontend_listview_warning_start:frontend_listview_warning_start,frontend_listview_warning_end:frontend_listview_warning_end,frontend_record_detail_related_list_warning:frontend_record_detail_related_list_warning,frontend_record_detail_related_lists_warning:frontend_record_detail_related_lists_warning,frontend_record_detail_related_lists_info:frontend_record_detail_related_lists_info,frontend_calendar_listWeek:frontend_calendar_listWeek,frontend_message_no_permission_to_edit:frontend_message_no_permission_to_edit,frontend_message_modification_successful:frontend_message_modification_successful,frontend_message_modification_failed:frontend_message_modification_failed,frontend_objects_related_alert_start:frontend_objects_related_alert_start,frontend_objects_related_alert_end:frontend_objects_related_alert_end,frontend_no_records_found:frontend_no_records_found,frontend_records_no_allowedit:frontend_records_no_allowedit};var resources={"en-US":{translation:en_us},"zh-CN":{translation:zh_cn}};var locale="zh-CN";if(typeof window!='undefined'){var _window$Builder,_window$Builder2;if(((_window$Builder=window.Builder)===null||_window$Builder===void 0?void 0:_window$Builder.settings.locale)=="en-us"){locale="en-US";}else if(((_window$Builder2=window.Builder)===null||_window$Builder2===void 0?void 0:_window$Builder2.settings.locale)=="zh-cn"){locale="zh-CN";}}i18next__default["default"].use(reactI18next.initReactI18next).init({resources:resources,lng:locale,interpolation:{escapeValue:false}});function getQuickEditSchema(_x17,_x18){return _getQuickEditSchema.apply(this,arguments);}function _getQuickEditSchema(){_getQuickEditSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee55(field,options){var isAmisVersionforBatchEdit,quickEditId,quickEditSchema,submitEvent,fieldSchema,TempDisplayField,quickEditOnEvent,labelField,valueField,removeDisplayField;return _regeneratorRuntime().wrap(function _callee55$(_context55){while(1){switch(_context55.prev=_context55.next){case 0://判断在amis3.2以上环境下,放开批量编辑与lookup的单元格编辑
|
|
84
87
|
isAmisVersionforBatchEdit=false;if(window.amisRequire&&window.amisRequire('amis')){isAmisVersionforBatchEdit=window.amisRequire('amis').version[0]>=3&&window.amisRequire('amis').version[2]>=2;}else if(window.Amis){isAmisVersionforBatchEdit=window.Amis.version[0]>=3&&window.Amis.version[2]>=2;}quickEditId=options.objectName+"_"+field.name+"_quickEdit";//定义快速编辑的表单id,用于setvalue传值
|
|
85
88
|
quickEditSchema={body:[],id:quickEditId};//select,avatar,image,file等组件无法行记录字段赋值,暂不支持批量编辑;
|
|
86
89
|
if(field.type!='avatar'&&field.type!='image'&&field.type!='file'&&isAmisVersionforBatchEdit){submitEvent={submit:{actions:[{actionType:"custom",script:"\n let items = _.cloneDeep(event.data.items);\n let selectedItems = _.cloneDeep(event.data.selectedItems);\n if(event.data.isBatchEdit){\n selectedItems.forEach(function(selectedItem){\n selectedItem._display.".concat(field.name," = event.data._display.").concat(field.name,";\n doAction({actionType: 'setValue', \"args\": {\"value\": selectedItem._display},componentId: \"_display_\" + selectedItem._index});\n doAction({actionType: 'setValue', \"args\": {\"value\": event.data.").concat(field.name,"},componentId: \"").concat(options.objectName+"_"+field.name+"_","\" + selectedItem._index});\n })\n }else{\n doAction({actionType: 'setValue', \"args\": {\"value\": event.data._display},componentId: \"_display_\" + event.data._index});\n doAction({actionType: 'setValue', \"args\": {\"value\": event.data.").concat(field.name,"},componentId: \"").concat(options.objectName+"_"+field.name+"_","\" + event.data._index});\n }\n ")},{"actionType":"closeDialog"}]}};quickEditSchema.onEvent=submitEvent;}if(!field.disabled){_context55.next=9;break;}quickEditSchema=false;_context55.next=63;break;case 9:_context55.next=11;return convertSFieldToAmisField(field,false,___namespace.omit(options,'buttons'));case 11:fieldSchema=_context55.sent;if(!fieldSchema){_context55.next=58;break;}quickEditSchema.body.push(fieldSchema);//以下字段使用_display的数据,因此在触发change等事件时对数据_display进行修改,以实现保存前的回显
|
|
87
|
-
TempDisplayField="";quickEditSchema.body[0].onEvent={};quickEditOnEvent=function quickEditOnEvent(displayField){var EventType={"actions":[{"actionType":"custom","script":"\n
|
|
90
|
+
TempDisplayField="";quickEditSchema.body[0].onEvent={};quickEditOnEvent=function quickEditOnEvent(displayField){var EventType={"actions":[{"actionType":"custom","script":"\n var _display = _.cloneDeep(event.data._display);\n ".concat(displayField,"\n doAction({actionType: 'setValue', \"args\": {\"value\": {_display}},componentId: \"").concat(quickEditId,"\"});\n ")}]};return EventType;};_context55.t0=field.type;_context55.next=_context55.t0==="lookup"?20:_context55.t0==="master_detail"?20:_context55.t0==="select"?25:_context55.t0==="percent"?28:_context55.t0==="time"?31:_context55.t0==="date"?34:_context55.t0==="datetime"?37:_context55.t0==="boolean"?40:_context55.t0==="number"?43:_context55.t0==="currency"?43:_context55.t0==="file"?46:_context55.t0==="avatar"?51:_context55.t0==="image"?51:53;break;case 20:labelField=quickEditSchema.body[0].labelField||"label";valueField=quickEditSchema.body[0].valueField||"value";if(field.multiple){/*
|
|
88
91
|
多选分两种情况。
|
|
89
92
|
第一种是减少选项时(判断新的数据是否比老的数据短),按照index删除_display中对应选项,保证回显没问题;
|
|
90
93
|
第二种是增加选项时,按照value的值,找到对应选项,并按照_display的规则为其赋值
|
|
91
|
-
*/TempDisplayField="\n const preData = _.cloneDeep(event.data.__super.".concat(field.name,");\n if(preData && event.data.").concat(field.name,".length < preData.length){\n let deletedIndex;\n preData.forEach(function(item,index){\n if(_.indexOf(event.data.").concat(field.name,", item) == -1) _display[\"").concat(field.name,"\"].splice(index, 1);\n })\n }else{\n _display[\"").concat(field.name,"\"] = [];\n event.data.value.forEach(function(val,index){\n const item = _.find(event.data.selectedItems, { ").concat(valueField,": val });\n _display[\"").concat(field.name,"\"].push(\n {\n \"label\": item.").concat(labelField,",\n \"value\": item[event.data.uiSchema.idFieldName],\n \"objectName\": \"").concat(field.reference_to,"\"\n }\n )\n })\n }\n \n ");}else{TempDisplayField="\n if(event.data.value){\n _display[\"".concat(field.name,"\"] = {\n \"label\": event.data.selectedItems.").concat(labelField,",\n \"value\": event.data.selectedItems[event.data.uiSchema.idFieldName],\n \"objectName\": \"").concat(field.reference_to,"\"\n }\n }else{\n _display[\"").concat(field.name,"\"] = {}\n }\n ");}quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 25:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.selectedItems.label;\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 28:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value.toFixed(").concat(field.scale,") + '%';\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 31:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).utc().format('HH:mm');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 34:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).utc().format('YYYY-MM-DD');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 37:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).format('YYYY-MM-DD HH:mm');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 40:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value?\"\u221A\":\"\";\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 43:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value && event.data.value.toFixed(").concat(field.scale,");\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 46:removeDisplayField="";if(field.multiple){TempDisplayField="\n _display[\"".concat(field.name,"\"].push({\n \"name\": event.data.result.name,\n \"url\": event.data.result.url,\n \"type\": event.data.item.type,\n \"size\": event.data.item.size\n });\n ");removeDisplayField="\n _.remove(_display[\"".concat(field.name,"\"], function(file){return file.url == event.data.item.url});\n ");}else{TempDisplayField=" \n _display[\"".concat(field.name,"\"] = {\n \"name\": event.data.result.name,\n \"url\": event.data.result.url,\n \"type\": event.data.item.type,\n \"size\": event.data.item.size\n };\n ");removeDisplayField="\n if(_display[\"".concat(field.name,"\"].url == event.data.item.url){\n _display[\"").concat(field.name,"\"] = {};\n }\n ");}quickEditSchema.body[0].onEvent["success"]=quickEditOnEvent(TempDisplayField);quickEditSchema.body[0].onEvent["remove"]=quickEditOnEvent(removeDisplayField);return _context55.abrupt("break",53);case 51:quickEditSchema.body[0].receiver.adaptor="\n const { context } = api.body; \n var rootUrl = context.rootUrl + \"/api/files/".concat(field.type,"s/\";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: rootUrl + payload._id,//\u4E3A\u4E86\u5B9E\u73B0\u56FE\u7247crud\u7684\u56DE\u663E\uFF0C\u9700\u8981\u5C06value\u4ECEid\u6539\u4E3Aurl\uFF0C\u5F53\u4FDD\u5B58\u6570\u636E\u6570\u636E\u65F6\uFF0C\u518D\u5728\u53D1\u9001\u9002\u914D\u5668\u5185\u91CD\u65B0\u5C06id\u63D0\u53D6\u51FA\u6765\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ");return _context55.abrupt("break",53);case 53:quickEditSchema.body[0].visibleOn="${quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}";quickEditSchema.body.push({"type":"service","body":[{"type":"tpl","tpl":i18next__default["default"].t('frontend_records_no_allowedit'),"visibleOn":"${!quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}"},{"type":"spinner","showOn":"${quickedit_record_permissions_loading}"}],"onEvent":{"init":{"actions":[{"actionType":"setValue","componentId":"service_listview_".concat(options.objectName),"args":{"value":{"quickedit_record_permissions_loading":true}}},{"actionType":"ajax","args":{"api":{"url":"${context.rootUrl}/service/api/@\${objectName}/recordPermissions/${_id}","method":"get","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"cache":30000,"messages":{"failed":"失败了呢。。"}}}},{"actionType":"setValue","componentId":"service_listview_".concat(options.objectName),"args":{"value":{"quickedit_record_permissions_loading":false}}},{"actionType":"setValue","componentId":"service_listview_".concat(options.objectName),"args":{"value":{"quickedit_record_permissions":"${event.data}"}}}]}}});if(field.type!='avatar'&&field.type!='image'&&field.type!='file'&&isAmisVersionforBatchEdit){quickEditSchema.body.push({"name":"isBatchEdit","type":"checkbox","option":[{"type":"tpl","tpl":"更新${COUNT(selectedItems)}个选定记录"},{"type":"spinner","showOn":"${batchPermissionLoading}","size":"sm","className":"mr-4"}],"visibleOn":"${ARRAYSOME(selectedItems, item => item._id === _id) && COUNT(selectedItems)>1 && quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}","disabledOn":"${batchPermissionLoading}","onEvent":{"change":{"actions":[{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"batchPermissionLoading":true}},"expression":"${event.data.value}"},{"actionType":"ajax","args":{"api":{"url":"${context.rootUrl}/graphql","method":"post","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"data":{"query":"{rows:${objectName}(filters:[\"_id\",\"in\",${selectedItems | pick:_id | split | json}]){_id,_permissions{allowEdit}}}"},"adaptor":"\n const noPermission = [];\n payload.data.rows.forEach(function (row) {\n if(!row._permissions.allowEdit){\n noPermission.push(row._id);\n }\n })\n payload.data.noPermission = noPermission;\n return payload;\n "}},"expression":"${event.data.value}"},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"batchPermissionLoading":false}},"expression":"${event.data.value}"},{"actionType":"dialog","dialog":{"title":"记录权限","showCloseButton":false,"body":[{"type":"tpl","tpl":"当前选中记录中,有${COUNT(noPermission)}条记录无编辑权限,是否需要批量编辑其他记录?"}],"onEvent":{"confirm":{"actions":[{"actionType":"custom","script":"\n const noPermission = event.data.noPermission;\n const crudComponent = event.context.scoped.getComponentById(\"".concat(options.crudId,"\");\n const selectedItems = crudComponent && crudComponent.props.store.selectedItems.concat();\n noPermission.forEach(function (item) {\n crudComponent && crudComponent.unSelectItem(_.find(selectedItems,{_id:item}));\n })\n ")},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"isBatchEdit":true}}}]},"cancel":{"actions":[{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"isBatchEdit":false}}}]}}},"expression":"${COUNT(event.data.noPermission)>0}"}]}}});}_context55.next=59;break;case 58:quickEditSchema=false;case 59://amis3.2以下禁用lookup的单元格编辑
|
|
94
|
+
*/TempDisplayField="\n const preData = _.cloneDeep(event.data.__super.".concat(field.name,");\n if(preData && event.data.").concat(field.name,".length < preData.length){\n let deletedIndex;\n preData.forEach(function(item,index){\n if(_.indexOf(event.data.").concat(field.name,", item) == -1) _display[\"").concat(field.name,"\"].splice(index, 1);\n })\n }else{\n _display[\"").concat(field.name,"\"] = [];\n event.data.value.forEach(function(val,index){\n const item = _.find(event.data.selectedItems, { ").concat(valueField,": val });\n _display[\"").concat(field.name,"\"].push(\n {\n \"label\": item.").concat(labelField,",\n \"value\": item[event.data.uiSchema.idFieldName],\n \"objectName\": \"").concat(field.reference_to,"\"\n }\n )\n })\n }\n \n ");}else{TempDisplayField="\n if(event.data.value){\n _display[\"".concat(field.name,"\"] = {\n \"label\": event.data.selectedItems.").concat(labelField,",\n \"value\": event.data.selectedItems[event.data.uiSchema.idFieldName],\n \"objectName\": \"").concat(field.reference_to,"\"\n }\n }else{\n _display[\"").concat(field.name,"\"] = {}\n }\n ");}quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 25:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.selectedItems.label;\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 28:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value.toFixed(").concat(field.scale,") + '%';\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 31:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).utc().format('HH:mm');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 34:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).utc().format('YYYY-MM-DD');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 37:TempDisplayField="\n _display[\"".concat(field.name,"\"] = moment(event.data.value).format('YYYY-MM-DD HH:mm');\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 40:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value?\"\u221A\":\"\";\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 43:TempDisplayField="\n _display[\"".concat(field.name,"\"] = event.data.value && event.data.value.toFixed(").concat(field.scale,");\n ");quickEditSchema.body[0].onEvent["change"]=quickEditOnEvent(TempDisplayField);return _context55.abrupt("break",53);case 46:removeDisplayField="";if(field.multiple){TempDisplayField="\n _display[\"".concat(field.name,"\"].push({\n \"name\": event.data.result.name,\n \"url\": event.data.result.url,\n \"type\": event.data.item.type,\n \"size\": event.data.item.size\n });\n ");removeDisplayField="\n _.remove(_display[\"".concat(field.name,"\"], function(file){return file.url == event.data.item.url});\n ");}else{TempDisplayField=" \n _display[\"".concat(field.name,"\"] = {\n \"name\": event.data.result.name,\n \"url\": event.data.result.url,\n \"type\": event.data.item.type,\n \"size\": event.data.item.size\n };\n ");removeDisplayField="\n if(_display[\"".concat(field.name,"\"].url == event.data.item.url){\n _display[\"").concat(field.name,"\"] = {};\n }\n ");}quickEditSchema.body[0].onEvent["success"]=quickEditOnEvent(TempDisplayField);quickEditSchema.body[0].onEvent["remove"]=quickEditOnEvent(removeDisplayField);return _context55.abrupt("break",53);case 51:quickEditSchema.body[0].receiver.adaptor="\n const superData = (typeof context != 'undefined') ? context : api.body; \n const { context:pageContext } = superData; \n var rootUrl = pageContext.rootUrl + \"/api/files/".concat(field.type,"s/\";\n payload = {\n status: response.status == 200 ? 0 : response.status,\n msg: response.statusText,\n data: {\n value: rootUrl + payload._id,//\u4E3A\u4E86\u5B9E\u73B0\u56FE\u7247crud\u7684\u56DE\u663E\uFF0C\u9700\u8981\u5C06value\u4ECEid\u6539\u4E3Aurl\uFF0C\u5F53\u4FDD\u5B58\u6570\u636E\u6570\u636E\u65F6\uFF0C\u518D\u5728\u53D1\u9001\u9002\u914D\u5668\u5185\u91CD\u65B0\u5C06id\u63D0\u53D6\u51FA\u6765\n name: payload.original.name,\n url: rootUrl + payload._id,\n }\n }\n return payload;\n ");return _context55.abrupt("break",53);case 53:quickEditSchema.body[0].visibleOn="${quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}";quickEditSchema.body.push({"type":"service","body":[{"type":"tpl","tpl":i18next__default["default"].t('frontend_records_no_allowedit'),"visibleOn":"${!quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}"},{"type":"spinner","showOn":"${quickedit_record_permissions_loading}"}],"onEvent":{"init":{"actions":[//amis3.6无法从数据域中直接拿到正确的selectitems,需要通过crud组件的getSelected()函数获取
|
|
95
|
+
{"actionType":"custom","script":"\n crudScoped = event.context.scoped.getComponentById('".concat(options.crudId,"');\n const selectedItems = crudScoped && crudScoped.control.getSelected();\n doAction({\n \"componentId\": \"").concat(quickEditId,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": {\n selectedItems\n }\n }\n });\n ")},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"quickedit_record_permissions_loading":true}}},{"actionType":"ajax","args":{"api":{"url":"${context.rootUrl}/service/api/@\${objectName}/recordPermissions/${_id}","method":"get","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"cache":30000,"messages":{"failed":"失败了呢。。"}}}},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"quickedit_record_permissions_loading":false}}},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"quickedit_record_permissions":"${event.data}"}}}]}}});if(field.type!='avatar'&&field.type!='image'&&field.type!='file'&&isAmisVersionforBatchEdit){quickEditSchema.body.push({"name":"isBatchEdit","type":"checkbox","option":[{"type":"tpl","tpl":"更新${COUNT(selectedItems)}个选定记录"},{"type":"spinner","showOn":"${batchPermissionLoading}","size":"sm","className":"mr-4"}],"visibleOn":"${ARRAYSOME(selectedItems, item => item._id === _id) && COUNT(selectedItems)>1 && quickedit_record_permissions.allowEdit && quickedit_record_permissions_loading == false}","disabledOn":"${batchPermissionLoading}","onEvent":{"change":{"actions":[{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"batchPermissionLoading":true}},"expression":"${event.data.value}"},{"actionType":"ajax","args":{"api":{"url":"${context.rootUrl}/graphql","method":"post","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"data":{"query":"{rows:${objectName}(filters:[\"_id\",\"in\",${selectedItems | pick:_id | split | json}]){_id,_permissions{allowEdit}}}"},"adaptor":"\n const noPermission = [];\n payload.data.rows.forEach(function (row) {\n if(!row._permissions.allowEdit){\n noPermission.push(row._id);\n }\n })\n payload.data.noPermission = noPermission;\n return payload;\n "}},"expression":"${event.data.value}"},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"batchPermissionLoading":false}},"expression":"${event.data.value}"},{"actionType":"dialog","dialog":{"title":"记录权限","showCloseButton":false,"body":[{"type":"tpl","tpl":"当前选中记录中,有${COUNT(noPermission)}条记录无编辑权限,是否需要批量编辑其他记录?"}],"onEvent":{"confirm":{"actions":[{"actionType":"custom","script":"\n const noPermission = event.data.noPermission;\n const crudComponent = event.context.scoped.getComponentById(\"".concat(options.crudId,"\");\n const selectedItems = crudComponent && crudComponent.props.store.selectedItems.concat();\n noPermission.forEach(function (item) {\n crudComponent && crudComponent.unSelectItem(_.find(selectedItems,{_id:item}));\n })\n ")},{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"isBatchEdit":true}}}]},"cancel":{"actions":[{"actionType":"setValue","componentId":quickEditId,"args":{"value":{"isBatchEdit":false}}}]}}},"expression":"${COUNT(event.data.noPermission)>0}"}]}}});}_context55.next=59;break;case 58:quickEditSchema=false;case 59://amis3.2以下禁用lookup的单元格编辑
|
|
92
96
|
if(field.type=="lookup"&&!isAmisVersionforBatchEdit){quickEditSchema=false;}//TODO:附件多选时会覆盖老数据,暂时禁用
|
|
93
97
|
if(field.type=="file"&&field.multiple){quickEditSchema=false;}//TODO:location字段在列表中快速编辑后存在bug,保存时可能会丢失部分数据,暂时禁用
|
|
94
98
|
if(field.type=="location"){quickEditSchema=false;}if(field.type=="color"){quickEditSchema={type:"input-color"};}case 63:return _context55.abrupt("return",quickEditSchema);case 64:case"end":return _context55.stop();}}},_callee55);}));return _getQuickEditSchema.apply(this,arguments);}function getFieldWidth(width){var defaultWidth="unset";//用于使table内的td标签下生成div,实现将快速编辑按钮固定在右侧的效果,并不是为了unset效果
|
|
@@ -109,8 +113,7 @@ if(typeof width=='string'){if(isNaN(width)){return width||defaultWidth;}else{ret
|
|
|
109
113
|
"size": "none",
|
|
110
114
|
"className": "flex items-center justify-between"//每行样式类
|
|
111
115
|
}
|
|
112
|
-
*/function _getTableColumns(){_getTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee56(fields,options){var _options$permissions;var columns,allowEdit,_iterator6,_step7,field,quickEditSchema,className,columnItem,previewFileScript,map,tpl,type,href;return _regeneratorRuntime().wrap(function _callee56$(_context56){while(1){switch(_context56.prev=_context56.next){case 0:columns=[];if(!options.isLookup&&!options.isInputTable){
|
|
113
|
-
columns.push({name:'_display',type:'static',width:32,placeholder:"",id:"_display_${_index}",className:"hidden"});if(!options.enable_tree){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;_iterator6=_createForOfIteratorHelper(fields);_context56.prev=4;_iterator6.s();case 6:if((_step7=_iterator6.n()).done){_context56.next=51;break;}field=_step7.value;if(!(field.hidden||field.extra)){_context56.next=10;break;}return _context56.abrupt("continue",49);case 10:if(!allowEdit){_context56.next=16;break;}_context56.next=13;return getQuickEditSchema(field,options);case 13:_context56.t0=_context56.sent;_context56.next=17;break;case 16:_context56.t0=allowEdit;case 17:quickEditSchema=_context56.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')){_context56.next=26;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"//浏览器上直接下载
|
|
116
|
+
*/function _getTableColumns(){_getTableColumns=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee56(fields,options){var _options$permissions;var columns,allowEdit,_iterator6,_step7,field,quickEditSchema,className,columnItem,previewFileScript,map,tpl,type,href;return _regeneratorRuntime().wrap(function _callee56$(_context56){while(1){switch(_context56.prev=_context56.next){case 0:columns=[];if(!options.isLookup&&!options.isInputTable){if(!options.enable_tree){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;_iterator6=_createForOfIteratorHelper(fields);_context56.prev=4;_iterator6.s();case 6:if((_step7=_iterator6.n()).done){_context56.next=51;break;}field=_step7.value;if(!(field.hidden||field.extra)){_context56.next=10;break;}return _context56.abrupt("continue",49);case 10:if(!allowEdit){_context56.next=16;break;}_context56.next=13;return getQuickEditSchema(field,options);case 13:_context56.t0=_context56.sent;_context56.next=17;break;case 16:_context56.t0=allowEdit;case 17:quickEditSchema=_context56.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')){_context56.next=26;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"//浏览器上直接下载
|
|
114
117
|
"expression":"!!!(window && window.nw && window.nw.require)"//浏览器上直接下载
|
|
115
118
|
},{"args":{},"actionType":"custom","script":previewFileScript,// "expression": "!!window?.nw?.require" //PC客户端预览附件
|
|
116
119
|
"expression":"!!!(window && window.nw && window.nw.require)"//PC客户端预览附件
|
|
@@ -118,7 +121,7 @@ columns.push({name:'_display',type:'static',width:32,placeholder:"",id:"_display
|
|
|
118
121
|
width:getFieldWidth(field.width),type:type,tpl:tpl,toggled:field.toggled,className:className,inputClassName:"inline","static":true,options:field.type==='html'?{html:true}:null// toggled: true
|
|
119
122
|
},field.amis,{name:field.name});if(field.type==='color'){columnItem.type='color';columnItem.defaultColor=null;}}case 48: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 49:_context56.next=6;break;case 51:_context56.next=56;break;case 53:_context56.prev=53;_context56.t1=_context56["catch"](4);_iterator6.e(_context56.t1);case 56:_context56.prev=56;_iterator6.f();return _context56.finish(56);case 59:// columns.push(getOperation(fields));
|
|
120
123
|
if(!options.isLookup&&!options.isInputTable&&!___namespace.some(columns,{name:options.labelFieldName})){// 没有名称字段时显示序号字段为链接,lookup弹出的picker不需要此功能
|
|
121
|
-
href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},options),{},{formFactor:options.formFactor,appId:"${appId}",objectName:options.objectName||"${objectName}",recordId:"${".concat(options.idFieldName,"}")}));columns[
|
|
124
|
+
href=Router.getObjectDetailPath(_objectSpread(_objectSpread({},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 _context56.abrupt("return",columns);case 61:case"end":return _context56.stop();}}},_callee56,null,[[4,53,56,59]]);}));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){// 左侧半行
|
|
122
125
|
lineChildrenClassName="steedos-listview-item-left truncate";if(item.field.is_wide){// 左侧全行样式可以单独写,如果需要配置两行省略号效果,可以加样式类 two-lines-truncate
|
|
123
126
|
lineChildrenClassName="steedos-listview-item-wide";}if(lines.length===0){// 第一个字段加粗黑色显示
|
|
124
127
|
lineChildrenClassName+=" font-bold text-gray-800";}}else{// 右侧半行,这里加样式类 flex flex-shrink-0,是为了省略号只显示在左半行,右半行文字一般比较短,如果也加省略号效果的话,左侧文字多的话,右侧没几个字就显示省略号了
|
|
@@ -139,20 +142,20 @@ if(visible.trim().startsWith('function')){return"".concat(visible,"(objectName,
|
|
|
139
142
|
// }
|
|
140
143
|
// }
|
|
141
144
|
// })
|
|
142
|
-
operationButtons.push({type:'steedos-object-button',name:button.name,objectName:button.objectName,
|
|
145
|
+
operationButtons.push({type:'steedos-object-button',name:button.name,objectName:button.objectName,visibleOnAlias:getButtonVisibleOn$1(button),className:'antd-Button--default'});});if(!(operationButtons.length<1)){_context58.next=5;break;}return _context58.abrupt("return");case 5:return _context58.abrupt("return",{type:'operation',label:" ",fixed:'right',labelClassName:'text-center',className:'text-center steedos-listview-operation w-10',buttons:[{"type":"steedos-dropdown-button","label":"xxx","buttons":operationButtons,"placement":"bottomRight","overlayClassName":"shadow !min-w-[160px]","trigger":["click"],"id":"u:c2140a365019",onOpenApi:{url:"${context.rootUrl}/service/api/@${objectName}/recordPermissions/${_id}",method:"get",requestAdaptor:"api.data={}; return api;",headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"},adaptor:"\n payload = {\n record: {\n recordPermissions: payload\n }\n };\n return payload;\n "}}]});case 6:case"end":return _context58.stop();}}},_callee58);}));return _getTableOperation.apply(this,arguments);}function getDefaultCrudCard(_x24,_x25){return _getDefaultCrudCard.apply(this,arguments);}function _getDefaultCrudCard(){_getDefaultCrudCard=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee59(columns,options){var labelFieldName,titleColumn,bodyColumns,card,hideToolbarOperation,toolbarOperation;return _regeneratorRuntime().wrap(function _callee59$(_context59){while(1){switch(_context59.prev=_context59.next){case 0:labelFieldName=(options===null||options===void 0?void 0:options.labelFieldName)||"name";bodyColumns=[];columns.forEach(function(item){delete item.quickEdit;delete item.width;if(item.name===labelFieldName){titleColumn=item;}else{if(item.name!=="_index"){bodyColumns.push(item);}}});card={"header":{"title":titleColumn.tpl},body:bodyColumns,// useCardLabel: false,
|
|
143
146
|
toolbar:[]};hideToolbarOperation=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(hideToolbarOperation){_context59.next=11;break;}_context59.next=8;return getTableOperation(options);case 8:toolbarOperation=_context59.sent;if(toolbarOperation){toolbarOperation.className+=" inline-block w-auto";}card.toolbar.push(toolbarOperation);case 11:return _context59.abrupt("return",card);case 12:case"end":return _context59.stop();}}},_callee59);}));return _getDefaultCrudCard.apply(this,arguments);}function getTableSchema$1(_x26,_x27){return _getTableSchema$.apply(this,arguments);}/**
|
|
144
147
|
*
|
|
145
148
|
* @param {*} mainObject
|
|
146
149
|
* @param {*} fields
|
|
147
150
|
* @param {*} options = {filter: listview 过滤条件, ...}
|
|
148
151
|
* @returns
|
|
149
|
-
*/function _getTableSchema$(){_getTableSchema$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee60(fields,options){var _options2,isLookup,hiddenColumnOperation,defaults,listSchema,columns,useMobileColumns,card;return _regeneratorRuntime().wrap(function _callee60$(_context60){while(1){switch(_context60.prev=_context60.next){case 0:if(!options){options={};}_options2=options,isLookup=_options2.isLookup,hiddenColumnOperation=_options2.hiddenColumnOperation;defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};columns=[];useMobileColumns=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(isLookup){// 在lookup手机端列表模式调式好之前不使用getMobileTableColumns
|
|
152
|
+
*/function _getTableSchema$(){_getTableSchema$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee60(fields,options){var _options2,isLookup,hiddenColumnOperation,defaults,listSchema,columns,useMobileColumns,card,toolbarOperation,treeConfig;return _regeneratorRuntime().wrap(function _callee60$(_context60){while(1){switch(_context60.prev=_context60.next){case 0:if(!options){options={};}_options2=options,isLookup=_options2.isLookup,hiddenColumnOperation=_options2.hiddenColumnOperation;defaults=options.defaults;listSchema=defaults&&defaults.listSchema||{};columns=[];useMobileColumns=options.formFactor==='SMALL'||["split"].indexOf(options.displayAs)>-1;if(isLookup){// 在lookup手机端列表模式调式好之前不使用getMobileTableColumns
|
|
150
153
|
useMobileColumns=false;}if(listSchema.mode&&listSchema.mode!=="table"){// 如果指定的mode,则不走我们内置的手机端列表效果,使用steedos组件内部开发的默认card/list效果,或者由用户自己实现card/list模式的crud列表
|
|
151
|
-
useMobileColumns=false;}if(!useMobileColumns){_context60.next=14;break;}_context60.next=11;return getMobileTableColumns(fields,options);case 11:columns=_context60.sent;_context60.next=
|
|
152
|
-
columnsTogglable:false});case 24:if(!(!isLookup&&!hiddenColumnOperation)){_context60.next=
|
|
153
|
-
columnsTogglable:false});case
|
|
154
|
+
useMobileColumns=false;}if(!useMobileColumns){_context60.next=14;break;}_context60.next=11;return getMobileTableColumns(fields,options);case 11:columns=_context60.sent;_context60.next=29;break;case 14:_context60.next=16;return getTableColumns(fields,options);case 16:columns=_context60.sent;if(!(listSchema.mode==="cards")){_context60.next=24;break;}card=listSchema.card;if(card){_context60.next=23;break;}_context60.next=22;return getDefaultCrudCard(columns,options);case 22:card=_context60.sent;case 23:return _context60.abrupt("return",{mode:"cards",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$1(options),card:card,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
|
|
155
|
+
columnsTogglable:false});case 24:if(!(!isLookup&&!hiddenColumnOperation)){_context60.next=29;break;}_context60.next=27;return getTableOperation(options);case 27:toolbarOperation=_context60.sent;columns.push(toolbarOperation);case 29:treeConfig={};if(options.enable_tree){treeConfig.expandConfig={expand:'first'};}return _context60.abrupt("return",_objectSpread({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$1(options),columns:columns,syncLocation:false,keepItemSelectionOnPageChange:true,checkOnItemClick:isLookup?true:false,labelTpl:"${".concat(options.labelFieldName,"}"),autoFillHeight:false,// 自动高度效果不理想,先关闭
|
|
156
|
+
columnsTogglable:false},treeConfig));case 32:case"end":return _context60.stop();}}},_callee60);}));return _getTableSchema$.apply(this,arguments);}function getTableApi(_x28,_x29,_x30){return _getTableApi.apply(this,arguments);}function _getTableApi(){_getTableApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee61(mainObject,fields,options){var searchableFields,filter,filtersFunction,sort,top,_options$setDataToCom,setDataToComponentId,baseFilters,fileFields,fileFieldsKeys,lookupFields,valueField,api;return _regeneratorRuntime().wrap(function _callee61$(_context61){while(1){switch(_context61.prev=_context61.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(___namespace.isArray(filter)){filter=___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;}___namespace.each(mainObject.fields,function(field){if(isFieldQuickSearchable(field,mainObject.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fileFields={};fileFieldsKeys=[];// 含有optionsFunction属性, 无reference_to属性的lookup字段
|
|
154
157
|
lookupFields={};fields.forEach(function(item){if(___namespace.includes(['image','avatar','file'],item.type)){fileFieldsKeys.push(item.name);fileFields[item.name]={name:item.name,type:item.type,multiple:item.multiple};}if(___namespace.includes(['lookup'],item.type)&&!item.reference_to){lookupFields[item.name]=item;}});valueField=mainObject.key_field||'_id';_context61.next=14;return getApi$1(mainObject,null,fields,{count:options.queryCount,alias:'rows',limit:top,queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 14:api=_context61.sent;api.url+="&objectName=${objectName}";//设计器上对象表格组件需要切换对象重新请求列表数据
|
|
155
|
-
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 let __changedFilterFormValues = api.data.$self.__changedFilterFormValues || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n // \u8FD9\u91CC\u76F4\u63A5\u5408\u5E76\u5230api.data.$self\uFF0C\u800C\u4E0D\u662F\u540E\u9762\u5B9A\u4E49\u7684selfData\u53D8\u91CF\uFF0C\u662F\u56E0\u4E3A\u53EF\u4EE5\u7701\u53BB\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\n // \u5982\u679C\u6709\u95EE\u9898\u53EF\u4EE5\u6539\u4E3A\u5408\u5E76\u5230selfData\u53D8\u91CF\u4E2D\uFF0C\u4F46\u662F\u8981\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E0A\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\uFF0C\u5426\u5219\u91CC\u9762\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E0D\u4F1A\u5B58\u5165\u672C\u5730\u5B58\u50A8\u4E2D\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\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 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 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(___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 const assignIndexToTreeRecords = function(tree, parentIndex) {\n tree.forEach(function (node, index) {\n // \u6784\u5EFA\u5F53\u524D\u8282\u70B9\u7684 _index\n var currentIndex = parentIndex ? parentIndex + '-' + (index + 1) : '' + (index + 1);\n \n // \u8D4B\u503C\u7ED9\u8282\u70B9\n node._index = currentIndex;\n \n // \u5982\u679C\u6709\u5B50\u8282\u70B9\uFF0C\u9012\u5F52\u8C03\u7528\u51FD\u6570\n if (node.children && node.children.length > 0) {\n assignIndexToTreeRecords(node.children, currentIndex);\n }\n });\n };\n let isTreeOptionsComputed = false;\n if(records.length === 1 && records[0].children){\n isTreeOptionsComputed = true;\n }\n if(!isTreeOptionsComputed){\n // \u5982\u679Capi\u63A5\u53E3\u8BBE\u7F6E\u5728\u7F13\u5B58\uFF0C\u7F13\u5B58\u671F\u95F4\u5E76\u4E0D\u4F1A\u91CD\u65B0\u8BF7\u6C42\u63A5\u53E3\uFF0Cpayload.data.rows\u662F\u4E0A\u6B21\u8BA1\u7B97\u540E\u7684\u7ED3\u679C\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n assignIndexToTreeRecords(payload.data.rows, '');\n }\n try{\n setTimeout(() => {\n let expandBtn = $('.steedos-object-listview-content .antd-Table-content .antd-Table-table thead .antd-Table-expandBtn');\n if(expandBtn && expandBtn.length > 0 && !expandBtn.hasClass(\"is-active\")){\n expandBtn[0].click();\n }\n }, 600);\n }\n catch(ex){\n console.error(\"tree\u6570\u636E\u683C\u5F0F\u5C55\u5F00\u5F02\u5E38\uFF1A\", ex);\n }\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 \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 _context61.abrupt("return",api);case 29:case"end":return _context61.stop();}}},_callee61);}));return _getTableApi.apply(this,arguments);}function getApi$1(_x31,_x32,_x33,_x34){return _getApi$.apply(this,arguments);}function _getApi$(){_getApi$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee62(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee62$(_context62){while(1){switch(_context62.prev=_context62.next){case 0:_context62.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context62.sent;return _context62.abrupt("return",{method:"post",url:getApi$2(),// + "&recordId=${recordId}"
|
|
158
|
+
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 let __changedFilterFormValues = api.data.$self.__changedFilterFormValues || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n // \u8FD9\u91CC\u76F4\u63A5\u5408\u5E76\u5230api.data.$self\uFF0C\u800C\u4E0D\u662F\u540E\u9762\u5B9A\u4E49\u7684selfData\u53D8\u91CF\uFF0C\u662F\u56E0\u4E3A\u53EF\u4EE5\u7701\u53BB\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\n // \u5982\u679C\u6709\u95EE\u9898\u53EF\u4EE5\u6539\u4E3A\u5408\u5E76\u5230selfData\u53D8\u91CF\u4E2D\uFF0C\u4F46\u662F\u8981\u5728\u63A5\u6536\u9002\u914D\u5668\u4E2D\u5199\u4E0A\u4E00\u6837\u7684\u5408\u5E76\u903B\u8F91\uFF0C\u5426\u5219\u91CC\u9762\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E0D\u4F1A\u5B58\u5165\u672C\u5730\u5B58\u50A8\u4E2D\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\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 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 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(___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 const assignIndexToTreeRecords = function(tree, parentIndex) {\n tree.forEach(function (node, index) {\n // \u6784\u5EFA\u5F53\u524D\u8282\u70B9\u7684 _index\n var currentIndex = parentIndex ? parentIndex + '-' + (index + 1) : '' + (index + 1);\n \n // \u8D4B\u503C\u7ED9\u8282\u70B9\n node._index = currentIndex;\n \n // \u5982\u679C\u6709\u5B50\u8282\u70B9\uFF0C\u9012\u5F52\u8C03\u7528\u51FD\u6570\n if (node.children && node.children.length > 0) {\n assignIndexToTreeRecords(node.children, currentIndex);\n }\n });\n };\n let isTreeOptionsComputed = false;\n if(records.length === 1 && records[0].children){\n isTreeOptionsComputed = true;\n }\n if(!isTreeOptionsComputed){\n // \u5982\u679Capi\u63A5\u53E3\u8BBE\u7F6E\u5728\u7F13\u5B58\uFF0C\u7F13\u5B58\u671F\u95F4\u5E76\u4E0D\u4F1A\u91CD\u65B0\u8BF7\u6C42\u63A5\u53E3\uFF0Cpayload.data.rows\u662F\u4E0A\u6B21\u8BA1\u7B97\u540E\u7684\u7ED3\u679C\n payload.data.rows = getTreeOptions(records,{\"valueField\":\"_id\"});\n assignIndexToTreeRecords(payload.data.rows, '');\n }\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 \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 _context61.abrupt("return",api);case 29:case"end":return _context61.stop();}}},_callee61);}));return _getTableApi.apply(this,arguments);}function getApi$1(_x31,_x32,_x33,_x34){return _getApi$.apply(this,arguments);}function _getApi$(){_getApi$=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee62(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee62$(_context62){while(1){switch(_context62.prev=_context62.next){case 0:_context62.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context62.sent;return _context62.abrupt("return",{method:"post",url:getApi$2(),// + "&recordId=${recordId}"
|
|
156
159
|
data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context62.stop();}}},_callee62);}));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}"}};}var API_CACHE=100;function getReadonlyFormAdaptor(object,fields,options){var scriptStr='';var selectFields=___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=___namespace.map(___namespace.filter(fields,function(field){return field.name.indexOf('.')<0&&(field.type==='object'||field.type==='grid');}),'name');___namespace.each(selectFields,function(field){if(!___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});
|
|
157
160
|
// _.each(refFields, function(field){
|
|
158
161
|
// if(!_.includes(OMIT_FIELDS, field.name)){
|
|
@@ -191,7 +194,7 @@ var apiData={objectName:"${objectName}",$:formData,$self:"$$"};var saveDataTpl="
|
|
|
191
194
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
192
195
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
193
196
|
PERFORMANCE OF THIS SOFTWARE.
|
|
194
|
-
***************************************************************************** */function _getObjectCalendar(){_getObjectCalendar=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee66(objectSchema,calendarOptions,options){var permissions,titleFields,fields,sort,sortField,sortOrder,sortStr,initialView,api,onGetEventsScript,onSelectScript,onEventClickScript,recordId,recordPermissionsApi,recordSaveApi,businessHours,onEvent,config,hasReturn,fn,_hasReturn,_fn,amisSchema;return _regeneratorRuntime().wrap(function _callee66$(_context66){while(1){switch(_context66.prev=_context66.next){case 0:permissions=objectSchema.permissions;if(!options){options={};}calendarOptions=Object.assign({},DEFAULT_CALENDAR_OPTIONS,_$1.omitBy(calendarOptions,_$1.isNil));titleFields=calendarOptions.title||[calendarOptions.startDateExpr,calendarOptions.endDateExpr,calendarOptions.allDayExpr,calendarOptions.textExpr];fields=[];_$1.each(titleFields,function(n){if(objectSchema.fields[n]){fields.push(objectSchema.fields[n]);}});if(objectSchema.fields[calendarOptions.allDayExpr]){fields.push(objectSchema.fields[calendarOptions.allDayExpr]);}sort=options.sort;if(!sort){sortField=options.sortField;sortOrder=options.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}initialView=calendarOptions.currentView;if(!initialView){_context66.next=24;break;}_context66.t0=initialView;_context66.next=_context66.t0==="day"?14:_context66.t0==="week"?16:_context66.t0==="month"?18:_context66.t0==="agenda"?20:22;break;case 14:initialView="timeGridDay";return _context66.abrupt("break",22);case 16:initialView="timeGridWeek";return _context66.abrupt("break",22);case 18:initialView="dayGridMonth";return _context66.abrupt("break",22);case 20:initialView="listWeek";return _context66.abrupt("break",22);case 22:_context66.next=25;break;case 24:initialView="timeGridWeek";case 25:options.calendarOptions=calendarOptions;_context66.next=28;return getCalendarApi(objectSchema,fields,options);case 28:api=_context66.sent;onGetEventsScript="\n const api = ".concat(JSON.stringify(api),";\n event.data.calendarOptions = ").concat(JSON.stringify(calendarOptions),";\n doAction({\n \"actionType\": 'ajax',\n \"args\": {\n \"api\": api\n },\n });\n ");onSelectScript="\n const data = event.data;\n const doc = {};\n doc[\"".concat(calendarOptions.startDateExpr,"\"] = data.start;\n doc[\"").concat(calendarOptions.endDateExpr,"\"] = data.end;\n doc[\"").concat(calendarOptions.allDayExpr,"\"] = data.allDay;\n doc[\"").concat(calendarOptions.textExpr,"\"] = data.title;\n // ObjectForm\u4F1A\u8BA4\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\u503C\n // TODO: \u5F85\u7EC4\u4EF6\u652F\u6301initValues\u5C5E\u6027\u540E\u5E94\u8BE5\u6539\u6389\uFF0C\u4E0D\u5E94\u8BE5\u901A\u8FC7data\u76F4\u63A5\u4F20\u503C\n // TODO: \u5168\u5929\u4E8B\u4EF6\u5C5E\u6027\u4F20\u5165doc\u4E86\u4F46\u662F\u6CA1\u6709\u751F\u6548\uFF0C\u9700\u8981\u624B\u52A8\u5728ObjectForm\u4E2D\u52FE\u9009\u5168\u5929\u4E8B\u4EF6\n const title = \"").concat(i18next__default["default"].t('frontend_form_new')," ").concat(objectSchema.label,"\";\n doAction(\n {\n \"actionType\": \"dialog\",\n \"dialog\": {\n \"type\": \"dialog\",\n \"title\": title,\n \"body\": [\n {\n \"type\": \"steedos-object-form\",\n \"objectApiName\": \"${objectName}\",\n \"mode\": \"edit\",\n \"defaultData\": doc,\n //\u6539\u56DE\u4E3A\u901A\u7528\u7684\u63D0\u4EA4\u4E8B\u4EF6\n // \"onEvent\": {\n // \"submitSucc\": {\n // \"weight\": 0,\n // \"actions\": [\n // {\n // \"actionType\": \"custom\",\n // \"script\": \"event.data.view?.calendar.refetchEvents();\"\n // }\n // ]\n // }\n // }\n }\n ],\n \"closeOnEsc\": false,\n \"closeOnOutside\": false,\n \"showCloseButton\": true,\n \"size\": \"lg\"\n }\n });\n ");onEventClickScript="\n const data = event.data;\n const eventData = data.event;\n const appId = data.appId;\n const objectName = data.objectName;\n const eventId = data.event && data.event.id;\n doAction({\n \"actionType\": \"link\",\n \"args\": {\n \"link\": \"/app/\" + appId + \"/\" + objectName + \"/view/\" + eventId\n }\n });\n // doAction({\n // \"actionType\": \"dialog\",\n // \"dialog\": {\n // \"type\": \"dialog\",\n // \"title\": \"\",\n // \"body\": [\n // {\n // \"type\": \"steedos-record-detail\",\n // \"objectApiName\": \"${objectName}\",\n // \"recordId\": data.event && data.event.id\n // }\n // ],\n // \"closeOnEsc\": false,\n // \"closeOnOutside\": false,\n // \"showCloseButton\": true,\n // \"size\": \"lg\",\n // \"actions\": []\n // }\n // });\n ";recordId="${event.id}";recordPermissionsApi=getCalendarRecordPermissionsApi(objectSchema,recordId);recordSaveApi=getCalendarRecordSaveApi(objectSchema,calendarOptions);businessHours={daysOfWeek:[1,2,3,4,5],startTime:'08:00',endTime:'18:00'};if(!_$1.isEmpty(calendarOptions.startDayHour)){businessHours.startTime="".concat(calendarOptions.startDayHour,":00");}if(!_$1.isEmpty(calendarOptions.endDayHour)){businessHours.endTime="".concat(calendarOptions.endDayHour,":00");}// api.trackExpression="\\\${additionalFilters}";
|
|
197
|
+
***************************************************************************** */function _getObjectCalendar(){_getObjectCalendar=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee66(objectSchema,calendarOptions,options){var permissions,titleFields,fields,sort,sortField,sortOrder,sortStr,initialView,api,onGetEventsScript,onSelectScript,onEventClickScript,recordId,recordPermissionsApi,recordSaveApi,businessHours,onEvent,config,hasReturn,fn,_hasReturn,_fn,amisSchema;return _regeneratorRuntime().wrap(function _callee66$(_context66){while(1){switch(_context66.prev=_context66.next){case 0:permissions=objectSchema.permissions;if(!options){options={};}calendarOptions=Object.assign({},DEFAULT_CALENDAR_OPTIONS,_$1.omitBy(calendarOptions,_$1.isNil));titleFields=calendarOptions.title||[calendarOptions.startDateExpr,calendarOptions.endDateExpr,calendarOptions.allDayExpr,calendarOptions.textExpr];fields=[];_$1.each(titleFields,function(n){if(objectSchema.fields[n]){fields.push(objectSchema.fields[n]);}});if(objectSchema.fields[calendarOptions.allDayExpr]){fields.push(objectSchema.fields[calendarOptions.allDayExpr]);}sort=options.sort;if(!sort){sortField=options.sortField;sortOrder=options.sortOrder;if(sortField){sortStr=sortField+' '+sortOrder||'asc';sort=sortStr;}}initialView=calendarOptions.currentView;if(!initialView){_context66.next=24;break;}_context66.t0=initialView;_context66.next=_context66.t0==="day"?14:_context66.t0==="week"?16:_context66.t0==="month"?18:_context66.t0==="agenda"?20:22;break;case 14:initialView="timeGridDay";return _context66.abrupt("break",22);case 16:initialView="timeGridWeek";return _context66.abrupt("break",22);case 18:initialView="dayGridMonth";return _context66.abrupt("break",22);case 20:initialView="listWeek";return _context66.abrupt("break",22);case 22:_context66.next=25;break;case 24:initialView="timeGridWeek";case 25:options.calendarOptions=calendarOptions;_context66.next=28;return getCalendarApi(objectSchema,fields,options);case 28:api=_context66.sent;onGetEventsScript="\n const api = ".concat(JSON.stringify(api),";\n event.data.calendarOptions = ").concat(JSON.stringify(calendarOptions),";\n doAction({\n \"actionType\": 'ajax',\n \"args\": {\n \"api\": api\n },\n });\n ");onSelectScript="\n const data = event.data;\n const doc = {};\n doc[\"".concat(calendarOptions.startDateExpr,"\"] = data.start;\n doc[\"").concat(calendarOptions.endDateExpr,"\"] = data.end;\n doc[\"").concat(calendarOptions.allDayExpr,"\"] = data.allDay;\n doc[\"").concat(calendarOptions.textExpr,"\"] = data.title;\n // ObjectForm\u4F1A\u8BA4\u4F5C\u7528\u57DF\u4E0B\u7684\u53D8\u91CF\u503C\n // TODO: \u5F85\u7EC4\u4EF6\u652F\u6301initValues\u5C5E\u6027\u540E\u5E94\u8BE5\u6539\u6389\uFF0C\u4E0D\u5E94\u8BE5\u901A\u8FC7data\u76F4\u63A5\u4F20\u503C\n // TODO: \u5168\u5929\u4E8B\u4EF6\u5C5E\u6027\u4F20\u5165doc\u4E86\u4F46\u662F\u6CA1\u6709\u751F\u6548\uFF0C\u9700\u8981\u624B\u52A8\u5728ObjectForm\u4E2D\u52FE\u9009\u5168\u5929\u4E8B\u4EF6\n const title = \"").concat(i18next__default["default"].t('frontend_form_new')," ").concat(objectSchema.label,"\";\n doAction(\n {\n \"actionType\": \"dialog\",\n \"dialog\": {\n \"type\": \"dialog\",\n \"title\": title,\n data,\n \"body\": [\n {\n \"type\": \"steedos-object-form\",\n \"objectApiName\": \"${objectName}\",\n \"mode\": \"edit\",\n \"defaultData\": doc,\n //\u6539\u56DE\u4E3A\u901A\u7528\u7684\u63D0\u4EA4\u4E8B\u4EF6\n // \"onEvent\": {\n // \"submitSucc\": {\n // \"weight\": 0,\n // \"actions\": [\n // {\n // \"actionType\": \"custom\",\n // \"script\": \"event.data.view?.calendar.refetchEvents();\"\n // }\n // ]\n // }\n // }\n }\n ],\n \"closeOnEsc\": false,\n \"closeOnOutside\": false,\n \"showCloseButton\": true,\n \"size\": \"lg\"\n }\n });\n ");onEventClickScript="\n const data = event.data;\n const eventData = data.event;\n const appId = data.appId;\n const objectName = data.objectName;\n const eventId = data.event && data.event.id;\n doAction({\n \"actionType\": \"link\",\n \"args\": {\n \"link\": \"/app/\" + appId + \"/\" + objectName + \"/view/\" + eventId\n }\n });\n // doAction({\n // \"actionType\": \"dialog\",\n // \"dialog\": {\n // \"type\": \"dialog\",\n // \"title\": \"\",\n // \"body\": [\n // {\n // \"type\": \"steedos-record-detail\",\n // \"objectApiName\": \"${objectName}\",\n // \"recordId\": data.event && data.event.id\n // }\n // ],\n // \"closeOnEsc\": false,\n // \"closeOnOutside\": false,\n // \"showCloseButton\": true,\n // \"size\": \"lg\",\n // \"actions\": []\n // }\n // });\n ";recordId="${event.id}";recordPermissionsApi=getCalendarRecordPermissionsApi(objectSchema,recordId);recordSaveApi=getCalendarRecordSaveApi(objectSchema,calendarOptions);businessHours={daysOfWeek:[1,2,3,4,5],startTime:'08:00',endTime:'18:00'};if(!_$1.isEmpty(calendarOptions.startDayHour)){businessHours.startTime="".concat(calendarOptions.startDayHour,":00");}if(!_$1.isEmpty(calendarOptions.endDayHour)){businessHours.endTime="".concat(calendarOptions.endDayHour,":00");}// api.trackExpression="\\\${additionalFilters}";
|
|
195
198
|
onEvent={"getEvents":{"weight":0,"actions":[{"componentId":"","args":{},"actionType":"custom","script":onGetEventsScript}// {
|
|
196
199
|
// "actionType": "ajax",
|
|
197
200
|
// "outputVar": "responseResult",
|
|
@@ -314,7 +317,7 @@ var buttons=getButtons(uiSchema,ctx);var listButtons=___namespace.filter(buttons
|
|
|
314
317
|
* 列表视图顶部第一行amisSchema
|
|
315
318
|
* @param {*} objectSchema 对象UISchema
|
|
316
319
|
* @returns amisSchema
|
|
317
|
-
*/function _getObjectFieldsFilterBarSchema(){_getObjectFieldsFilterBarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee73(objectSchema,ctx){var btnSearchId,filterFormSchema,keywordsSearchBoxName,onSearchScript,onCancelScript,dataProviderInited,onSearchableFieldsChangeScript;return _regeneratorRuntime().wrap(function _callee73$(_context73){while(1){switch(_context73.prev=_context73.next){case 0:if(!ctx){ctx={};}btnSearchId="btn_filter_form_search_"+new Date().getTime();_context73.next=4;return getObjectFieldsFilterFormSchema(ctx);case 4:filterFormSchema=_context73.sent;keywordsSearchBoxName=ctx.keywordsSearchBoxName||"__keywords";onSearchScript="\n // console.log(\"===onSearchScript=form==\");\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 // console.log(\"===onCancelScript=form==\");\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 let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\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(/^__searchable__/.test(k)){\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.setValues(removedValues);//\u4F1A\u628A\u8868\u5355\u63D0\u4EA4\u5230toolbar\u7684\u5FEB\u901F\u641C\u7D22\u533A\u57DF\uFF0C\u9020\u6210\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u89E6\u53D1\u641C\u7D22\u65F6\u518D\u6B21\u628A\u641C\u7D22\u8868\u5355\u4E2D\u7684\u5B57\u6BB5\u503C\u6E05\u9664\u6389\u7684bug\uFF0C\u5DF2\u5355\u72EC\u5728\u5FEB\u901F\u641C\u7D22\u6846\u90A3\u8FB9\u6DFB\u52A0\u641C\u7D22\u4E8B\u4EF6\u4EE3\u7801\u5904\u7406\u8FC7\u4E86\n // \u4EE5\u4E0B\u65B9\u6CD5\u90FD\u65E0\u6CD5\u5B9E\u73B0\u6E05\u9664\u8868\u5355\u503C\n // filterForm.setValues({}, true)\n // filterForm.reset();\n // filterForm.handleAction({},{\n // \"actionType\": \"setValue\",\n // \"args\": {\n // \"value\": removedValues\n // }\n // });\n // \u4E0B\u9762\u89E6\u53D1clear\u52A8\u4F5C\u53EF\u4EE5\u6E05\u9664\u8868\u5355\u503C\uFF0C\u4E14\u4E0D\u4F1A\u628A\u8868\u5355\u63D0\u4EA4\u5230toolbar\u7684\u5FEB\u901F\u641C\u7D22\u533A\u57DF\uFF0C\u4F46\u662F\u4F1A\u628A\u91D1\u989D\u7B49\u8303\u56F4\u5B57\u6BB5\u6E05\u7A7A\u6210\u975E\u8303\u56F4\u5B57\u6BB5\n // filterForm.handleAction({},{\n // \"actionType\": \"clear\"\n // });\n\n // \u6E05\u9664__changedFilterFormValues\u4E2D\u7684\u503C\n crud && crud.setData({__changedFilterFormValues: {}});\n filterForm.handleFormSubmit(event);\n // crud.handleFilterSubmit(removedValues);\n\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"service\");\n filterFormService.setData({showFieldsFilter: !!!filterFormService.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 let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\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 _context73.abrupt("return",{"type":"service","name":"service_listview_filter_form","data":{// "showFieldsFilter": false
|
|
320
|
+
*/function _getObjectFieldsFilterBarSchema(){_getObjectFieldsFilterBarSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee73(objectSchema,ctx){var btnSearchId,filterFormSchema,keywordsSearchBoxName,onSearchScript,onCancelScript,dataProviderInited,onSearchableFieldsChangeScript;return _regeneratorRuntime().wrap(function _callee73$(_context73){while(1){switch(_context73.prev=_context73.next){case 0:if(!ctx){ctx={};}btnSearchId="btn_filter_form_search_"+new Date().getTime();_context73.next=4;return getObjectFieldsFilterFormSchema(ctx);case 4:filterFormSchema=_context73.sent;keywordsSearchBoxName=ctx.keywordsSearchBoxName||"__keywords";onSearchScript="\n // console.log(\"===onSearchScript=form==\");\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 //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n doAction({\n \"actionType\": \"broadcast\",\n \"args\": {\n \"eventName\": \"@height.changed.".concat(objectSchema.name,"\"\n },\n \"data\": {\n \"timeOut\": 500\n }\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 // console.log(\"===onCancelScript=form==\");\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\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 let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\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(/^__searchable__/.test(k)){\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.setValues(removedValues);//\u4F1A\u628A\u8868\u5355\u63D0\u4EA4\u5230toolbar\u7684\u5FEB\u901F\u641C\u7D22\u533A\u57DF\uFF0C\u9020\u6210\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u89E6\u53D1\u641C\u7D22\u65F6\u518D\u6B21\u628A\u641C\u7D22\u8868\u5355\u4E2D\u7684\u5B57\u6BB5\u503C\u6E05\u9664\u6389\u7684bug\uFF0C\u5DF2\u5355\u72EC\u5728\u5FEB\u901F\u641C\u7D22\u6846\u90A3\u8FB9\u6DFB\u52A0\u641C\u7D22\u4E8B\u4EF6\u4EE3\u7801\u5904\u7406\u8FC7\u4E86\n // \u4EE5\u4E0B\u65B9\u6CD5\u90FD\u65E0\u6CD5\u5B9E\u73B0\u6E05\u9664\u8868\u5355\u503C\n // filterForm.setValues({}, true)\n // filterForm.reset();\n // filterForm.handleAction({},{\n // \"actionType\": \"setValue\",\n // \"args\": {\n // \"value\": removedValues\n // }\n // });\n // \u4E0B\u9762\u89E6\u53D1clear\u52A8\u4F5C\u53EF\u4EE5\u6E05\u9664\u8868\u5355\u503C\uFF0C\u4E14\u4E0D\u4F1A\u628A\u8868\u5355\u63D0\u4EA4\u5230toolbar\u7684\u5FEB\u901F\u641C\u7D22\u533A\u57DF\uFF0C\u4F46\u662F\u4F1A\u628A\u91D1\u989D\u7B49\u8303\u56F4\u5B57\u6BB5\u6E05\u7A7A\u6210\u975E\u8303\u56F4\u5B57\u6BB5\n // filterForm.handleAction({},{\n // \"actionType\": \"clear\"\n // });\n\n // \u6E05\u9664__changedFilterFormValues\u4E2D\u7684\u503C\n // crud && crud.setData({__changedFilterFormValues: {}});\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n if(isLookup && __lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = {};\n crud.setData(crudData);\n }\n filterForm.handleFormSubmit(event);\n // crud.handleFilterSubmit(removedValues);\n\n let filterFormService = SteedosUI.getClosestAmisComponentByType(filterForm.context, \"service\");\n filterFormService.setData({showFieldsFilter: !!!filterFormService.props.data.showFieldsFilter});\n //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n doAction({\n \"actionType\": \"broadcast\",\n \"args\": {\n \"eventName\": \"@height.changed.").concat(objectSchema.name,"\"\n },\n \"data\": {\n \"timeOut\": 100\n }\n });\n \n // \u79FB\u9664\u641C\u7D22\u6309\u94AE\u4E0A\u7684\u7EA2\u70B9\n // let crudService = scope.getComponentById(\"service_listview_\" + event.data.objectName);\n let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\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 doAction({\n \"actionType\": \"broadcast\",\n \"args\": {\n \"eventName\": \"@height.changed.".concat(objectSchema.name,"\"\n },\n \"data\": {\n \"timeOut\": 100\n }\n });\n // ===END===\n ");return _context73.abrupt("return",{"type":"service","name":"service_listview_filter_form","data":{// "showFieldsFilter": false
|
|
318
321
|
// "filterFormSearchableFields": ["name"],//默认可搜索项
|
|
319
322
|
// "filterFormValues": {"__searchable__name": "xxx"},//搜索项表单值
|
|
320
323
|
// "listViewId": "${listViewId}"
|
|
@@ -397,7 +400,8 @@ secordLineSchema={"type":"grid","columns":[{"body":[{"type":"tpl","tpl":"${$coun
|
|
|
397
400
|
* @returns amisSchema
|
|
398
401
|
*/function _getObjectRecordDetailHeader(){_getObjectRecordDetailHeader=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee76(objectSchema,recordId,options){var _ref55,_ref55$showRecordTitl,showRecordTitle,name,label,icon,NAME_FIELD_KEY,amisButtonsSchema,reg,standardIcon,gridBody,body;return _regeneratorRuntime().wrap(function _callee76$(_context76){while(1){switch(_context76.prev=_context76.next){case 0:_ref55=options||{},_ref55$showRecordTitl=_ref55.showRecordTitle,showRecordTitle=_ref55$showRecordTitl===void 0?true:_ref55$showRecordTitl;// console.log('getObjectRecordDetailHeader==>', objectSchema, recordId)
|
|
399
402
|
name=objectSchema.name,label=objectSchema.label,icon=objectSchema.icon,NAME_FIELD_KEY=objectSchema.NAME_FIELD_KEY;amisButtonsSchema=getObjectDetailButtonsSchemas(objectSchema,recordId,options);// console.log(`getObjectRecordDetailHeader==>`, amisButtonsSchema)
|
|
400
|
-
reg=new RegExp('_','g');standardIcon=icon&&icon.replace(reg,'-');gridBody=[];if(showRecordTitle){gridBody.push({"body":[{"type":"grid","columns":[{"body":[{"type":"service","onEvent":{"@history_paths.changed":{"actions":[{"actionType":"reload"
|
|
403
|
+
reg=new RegExp('_','g');standardIcon=icon&&icon.replace(reg,'-');gridBody=[];if(showRecordTitle){gridBody.push({"body":[{"type":"grid","columns":[{"body":[{"type":"service","onEvent":{"@history_paths.changed":{"actions":[{"actionType":"reload",// amis 3.6需要传入data来触发下面的window:historyPaths重新计算,此问题随机偶发,加上data后正常
|
|
404
|
+
"data":{}}]}},"body":[{"type":"button","visibleOn":"${window:innerWidth > 768 && (window:historyPaths.length > 1 || window:historyPaths[0].params.record_id) && display !== 'split'}","className":"flex mr-4","onEvent":{"click":{"actions":[{"actionType":"custom","script":"window.goBack()"}]}},"body":[{"type":"steedos-icon","category":"utility","name":"back","colorVariant":"default","className":"slds-button_icon slds-global-header__icon w-4"}]}]},{"type":"tpl","className":"block",// "tpl": `<img class='slds-icon slds-icon_container slds-icon-standard-${standardIcon}' src='\${context.rootUrl}/unpkg.com/@salesforce-ux/design-system/assets/icons/standard/${icon}.svg'>`
|
|
401
405
|
"tpl":"<svg class=\"slds-icon slds-icon_container slds-icon-standard-".concat(standardIcon," slds-page-header__icon\" aria-hidden=\"true\"><use xlink:href=\"/assets/icons/standard-sprite/svg/symbols.svg#").concat(icon,"\"></use></svg>")}],"md":"auto","className":"","columnClassName":"flex justify-center items-center"},{"body":[{"type":"tpl","tpl":"".concat(label),"inline":false,"wrapperComponent":"","className":"leading-4 text-md"},{"type":"tpl","tpl":"${name}",// "tpl": "${(record && uiSchema && record[uiSchema.NAME_FIELD_KEY]) || name}",
|
|
402
406
|
"inline":false,"wrapperComponent":"","className":"record-detail-header-name leading-5 text-xl font-bold"}],"columnClassName":"p-l-xs"}],"className":"flex justify-between"}],"columnClassName":"flex-initial","md":"auto"});}gridBody.push({"body":{"type":"flex","items":amisButtonsSchema},"md":"auto"// "hiddenOn": "${recordLoaded != true}"
|
|
403
407
|
});body=[{"type":"wrapper","className":"p-0","body":[{"type":"grid","columns":gridBody,"className":"flex justify-between flex-nowrap"}],"hiddenOn":"${recordLoaded != true}"}];if(showRecordTitle){body.push({"type":"wrapper","className":"p-0","body":[{"type":"grid","columns":[gridBody[0]],"className":"flex justify-between"}],"hiddenOn":"${recordLoaded == true}"});}return _context76.abrupt("return",{type:'service',id:"page_readonly_".concat(name,"_header"),name:"page",data:{objectName:name,_id:recordId,recordPermissions:objectSchema.permissions,uiSchema:objectSchema,record:"${record}"},body:body,className:''});case 11:case"end":return _context76.stop();}}},_callee76);}));return _getObjectRecordDetailHeader.apply(this,arguments);}function getObjectRecordDetailRelatedListHeader(_x94,_x95,_x96){return _getObjectRecordDetailRelatedListHeader.apply(this,arguments);}/**
|
|
@@ -416,12 +420,12 @@ reg=new RegExp('_','g');standardIcon=icon&&icon.replace(reg,'-');gridBody=[];if(
|
|
|
416
420
|
// "tooltip": i18next.t('frontend_button_listview_control_tooltip'),
|
|
417
421
|
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${!isLookup}","buttons":[{"label":i18next__default["default"].t('frontend_button_listview_control_label'),"children":[getNewListviewButtonSchema(),getCopyListviewButtonSchema(),getRenameListviewButtonSchema(),getSetListviewShareButtonSchema(),getSetListviewFiltersButtonSchema(),getSetListviewColumnsButtonSchema(),getSetListviewSortButtonSchema(),getDeleteListviewButtonSchema()]}]};};var getDisplayAsButton=function getDisplayAsButton(objectName,showDisplayAs){var displayAs=amisLib.Router.getTabDisplayAs(objectName);var buttons=[{"type":"button","label":i18next__default["default"].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":i18next__default["default"].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'?i18next__default["default"].t('frontend_display_type_is_split'):i18next__default["default"].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
|
|
418
422
|
// "tooltip": `${i18next.t('frontend_display_as')} ${displayAsLabel}`,
|
|
419
|
-
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${window:innerWidth > 768 && !!!isLookup}","buttons":[{"label":i18next__default["default"].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});\
|
|
420
|
-
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||"";}var onChangeScript="\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n let __changedSearchBoxValues = {};\n __changedSearchBoxValues[\"".concat(keywordsSearchBoxName,"\"] = event.data[\"").concat(keywordsSearchBoxName,"\"];\n // crudService && crudService.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n // \u8FD9\u91CC\u4E0D\u7528crudService\u800C\u7528crud\u662F\u56E0\u4E3Alookup\u5B57\u6BB5\u5F39\u51FA\u7684\u5217\u8868\u4E2D\u7684crudService\u4E2D\u7684\u53D8\u91CF\u65E0\u6CD5\u4F20\u5165crud\u7684\u53D1\u9001\u9002\u914D\u5668\u4E2D\n crud && crud.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n ");// onSearchScript中加上了onChangeScript中的脚本,是因为amis 3.2不能用change事件执行onChangeScript
|
|
423
|
+
"btnClassName":"antd-Button--iconOnly bg-white !p-2 rounded border-gray-300 text-gray-500","align":"right","visibleOn":"${window:innerWidth > 768 && !!!isLookup}","buttons":[{"label":i18next__default["default"].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});\n//\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\ndoAction({\n \"actionType\": \"broadcast\",\n \"args\": {\n \"eventName\": \"@height.changed.\" + event.data.objectName\n },\n \"data\": {\n \"timeOut\": 1000\n }\n});\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, { isLookup = false, keywordsSearchBoxName = "__keywords", crudId } = {}){
|
|
424
|
+
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||"";}var onChangeScript="\n const scope = event.context.scoped;\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n let __changedSearchBoxValues = {};\n __changedSearchBoxValues[\"".concat(keywordsSearchBoxName,"\"] = event.data[\"").concat(keywordsSearchBoxName,"\"];\n // crudService && crudService.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n // \u8FD9\u91CC\u4E0D\u7528crudService\u800C\u7528crud\u662F\u56E0\u4E3Alookup\u5B57\u6BB5\u5F39\u51FA\u7684\u5217\u8868\u4E2D\u7684crudService\u4E2D\u7684\u53D8\u91CF\u65E0\u6CD5\u4F20\u5165crud\u7684\u53D1\u9001\u9002\u914D\u5668\u4E2D\n // crud && crud.setData({__changedSearchBoxValues: __changedSearchBoxValues});\n if(crud){\n let crudData = crud.getData();\n crudData.__changedSearchBoxValues = __changedSearchBoxValues;\n crud.setData(crudData);\n }\n ");// onSearchScript中加上了onChangeScript中的脚本,是因为amis 3.2不能用change事件执行onChangeScript
|
|
421
425
|
// 而点击回车按键又不会触发blur事件,所以只能每次回车事件中额外再执行一次onChangeScript
|
|
422
426
|
// 等升级到amis 3.4+,blur事件换成change事件执行onChangeScript,就可以不用在onSearchScript中执行onChangeScript了
|
|
423
|
-
var onSearchScript="\n ".concat(onChangeScript,"\n\n // \u4E0B\u9762\u7684\u811A\u672C\u53EA\u4E3A\u89E3\u51B3\u70B9\u51FB\u641C\u7D22\u8868\u5355\u53D6\u6D88\u6309\u94AE\uFF0C\u518D\u91CD\u65B0\u5728\u5176\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4F46\u662F\u4E0D\u70B9\u51FB\u641C\u7D22\u6309\u94AE\u6216\u56DE\u8F66\u6309\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u6B64\u65F6\u5728\u5FEB\u901F\u641C\u7D22\u6846\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u6309\u56DE\u8F66\u6309\u952E\u4F1A\u628A\u641C\u7D22\u8868\u5355\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\u6E05\u7A7A\u7684\u95EE\u9898\n // const scope = event.context.scoped;\n // \u5982\u679C\u70B9\u51FB\u8FC7\u9876\u90E8\u641C\u7D22\u680F\u8868\u5355\u7684\u53D6\u6D88\u6309\u94AE\uFF0C\u4F1A\u628A\u6B64\u5904event.data.__super.__super.__super\u4E2D\u7684\u641C\u7D22\u8868\u5355\u9879\u7684\u6240\u6709\u5B57\u6BB5\u8BBE\u7F6E\u4E3Anull\n // \u70B9\u51FB\u53D6\u6D88\u6309\u94AE\u540E\u7EE7\u7EED\u5728\u8868\u5355\u9879\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E14\u6700\u540E\u6CA1\u6709\u70B9\u51FB\u56DE\u8F66\u6309\u952E\u6216\u70B9\u51FB\u8868\u5355\u9879\u641C\u7D22\u6309\u94AE\u7684\u8BDD\uFF0C\u5728\u5FEB\u901F\u641C\u7D22\u4E2D\u70B9\u51FB\u56DE\u8F66\u6309\u94AE\u63D0\u4EA4\u641C\u7D22\u4F1A\u6240\u9876\u90E8\u641C\u7D22\u8868\u5355\u4E2D\u7684\u5B57\u6BB5\u503C\u6E05\u7A7A\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, \"form\");\n setTimeout(function(){\n filterForm.setValues(event.data
|
|
424
|
-
"searchImediately":false,"onEvent":{"search":{"actions":[{"actionType":"custom","script":onSearchScript}]},"blur":{//这里把change事件换成blur是因为amis 3.2change事件中setData会卡,升级到3.4+后就可以换回change事件
|
|
427
|
+
var onSearchScript="\n ".concat(onChangeScript,"\n\n // \u4E0B\u9762\u7684\u811A\u672C\u53EA\u4E3A\u89E3\u51B3\u70B9\u51FB\u641C\u7D22\u8868\u5355\u53D6\u6D88\u6309\u94AE\uFF0C\u518D\u91CD\u65B0\u5728\u5176\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4F46\u662F\u4E0D\u70B9\u51FB\u641C\u7D22\u6309\u94AE\u6216\u56DE\u8F66\u6309\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u6B64\u65F6\u5728\u5FEB\u901F\u641C\u7D22\u6846\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u6309\u56DE\u8F66\u6309\u952E\u4F1A\u628A\u641C\u7D22\u8868\u5355\u4E2D\u7684\u8FC7\u6EE4\u6761\u4EF6\u6E05\u7A7A\u7684\u95EE\u9898\n // const scope = event.context.scoped;\n // \u5982\u679C\u70B9\u51FB\u8FC7\u9876\u90E8\u641C\u7D22\u680F\u8868\u5355\u7684\u53D6\u6D88\u6309\u94AE\uFF0C\u4F1A\u628A\u6B64\u5904event.data.__super.__super.__super\u4E2D\u7684\u641C\u7D22\u8868\u5355\u9879\u7684\u6240\u6709\u5B57\u6BB5\u8BBE\u7F6E\u4E3Anull\n // \u70B9\u51FB\u53D6\u6D88\u6309\u94AE\u540E\u7EE7\u7EED\u5728\u8868\u5355\u9879\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E14\u6700\u540E\u6CA1\u6709\u70B9\u51FB\u56DE\u8F66\u6309\u952E\u6216\u70B9\u51FB\u8868\u5355\u9879\u641C\u7D22\u6309\u94AE\u7684\u8BDD\uFF0C\u5728\u5FEB\u901F\u641C\u7D22\u4E2D\u70B9\u51FB\u56DE\u8F66\u6309\u94AE\u63D0\u4EA4\u641C\u7D22\u4F1A\u6240\u9876\u90E8\u641C\u7D22\u8868\u5355\u4E2D\u7684\u5B57\u6BB5\u503C\u6E05\u7A7A\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n if(isLookup && __lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let filterForm = SteedosUI.getClosestAmisComponentByType(scope, \"form\");\n setTimeout(function(){\n filterForm.setValues(event.data[__changedFilterFormValuesKey]);\n }, 500);\n ");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,//因为清除并不会触发失去焦点事件,只有禁用,但是它会触发change事件,所以等升级到amis 3.4+后可以重新放开
|
|
428
|
+
"clearAndSubmit":true,"searchImediately":false,"onEvent":{"search":{"actions":[{"actionType":"custom","script":onSearchScript}]},"blur":{//这里把change事件换成blur是因为amis 3.2change事件中setData会卡,升级到3.4+后就可以换回change事件
|
|
425
429
|
"actions":[{"actionType":"custom","script":onChangeScript}]}}}]};}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,_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)
|
|
426
430
|
// console.log(`getObjectHeaderToolbar`, mainObject)
|
|
427
431
|
var isMobile=window.innerWidth<768;if(isMobile){showDisplayAs=false;}var toolbarCount;if(!hiddenCount){toolbarCount={"type":"tpl","tpl":"${count} "+i18next__default["default"].t('frontend_record_sum')};}var toolbarReloadButton;if(formFactor==='SMALL'){// const onReloadScript = `
|
|
@@ -468,7 +472,7 @@ if(formFactor==='SMALL'){// return [
|
|
|
468
472
|
// "load-more",
|
|
469
473
|
// ]
|
|
470
474
|
if(options.displayAs==='split'){return["switch-per-page",{"type":"pagination","maxButtons":5,"showPageInput":false}];}else{return[// "statistics",
|
|
471
|
-
{"type":"pagination","maxButtons":5,"showPageInput":true,"layout":"total,pager,go"}];}}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(_x100,_x101,_x102){return _getObjectFilter.apply(this,arguments);}function _getObjectFilter(){_getObjectFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee79(objectSchema,fields,options){var fieldsFilterBarSchema,onSubmitSuccScript,onChangeScript;return _regeneratorRuntime().wrap(function _callee79$(_context79){while(1){switch(_context79.prev=_context79.next){case 0:_context79.next=2;return getObjectListHeaderFieldsFilterBar(objectSchema,null,options);case 2:fieldsFilterBarSchema=_context79.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
|
|
475
|
+
{"type":"pagination","maxButtons":5,"showPageInput":true,"layout":"total,pager,go"}];}}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(_x100,_x101,_x102){return _getObjectFilter.apply(this,arguments);}function _getObjectFilter(){_getObjectFilter=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee79(objectSchema,fields,options){var fieldsFilterBarSchema,onSubmitSuccScript,onChangeScript;return _regeneratorRuntime().wrap(function _callee79$(_context79){while(1){switch(_context79.prev=_context79.next){case 0:_context79.next=2;return getObjectListHeaderFieldsFilterBar(objectSchema,null,options);case 2:fieldsFilterBarSchema=_context79.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 //\u89E6\u53D1amis crud \u9AD8\u5EA6\u91CD\u7B97\n doAction({\n \"actionType\": \"broadcast\",\n \"args\": {\n \"eventName\": \"@height.changed.".concat(objectSchema.name,"\"\n },\n \"data\": {\n \"timeOut\": 1000\n }\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 ");onChangeScript="\n let isLookup = event.data.isLookup;\n let __lookupField = event.data.__lookupField;\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 filterFormValues = JSON.parse(JSON.stringify(filterFormValues)); //\u53EA\u53D6\u5F53\u5C42\u6570\u636E\u57DF\u4E2D\u6570\u636E\uFF0C\u53BB\u9664__super\u5C42\u6570\u636E\n let crud = SteedosUI.getClosestAmisComponentByType(scope, \"crud\");\n const changedFilterFormValues = _.pickBy(filterFormValues, function(n,k){return /^__searchable__/.test(k);});;\n // let crudService = crud && SteedosUI.getClosestAmisComponentByType(crud.context, \"service\");\n // crudService && crudService.setData({__changedFilterFormValues: changedFilterFormValues});\n // \u8FD9\u91CC\u4E0D\u7528crudService\u800C\u7528crud\u662F\u56E0\u4E3Alookup\u5B57\u6BB5\u5F39\u51FA\u7684\u5217\u8868\u4E2D\u7684crudService\u4E2D\u7684\u53D8\u91CF\u65E0\u6CD5\u4F20\u5165crud\u7684\u53D1\u9001\u9002\u914D\u5668\u4E2D\n // crud && crud.setData({__changedFilterFormValues: changedFilterFormValues});\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n if(isLookup && __lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n if(crud){\n let crudData = crud.getData();\n crudData[__changedFilterFormValuesKey] = changedFilterFormValues;\n crud.setData(crudData);\n }\n ";return _context79.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":onChangeScript}]}}});case 6:case"end":return _context79.stop();}}},_callee79);}));return _getObjectFilter.apply(this,arguments);}function getBulkActions(objectSchema){return[{"type":"button","level":"danger","label":"批量删除","actionType":"ajax","confirmText":i18next__default["default"].t('frontend_delete_many_confirm_text'),"className":"hidden","id":"batchDelete","api":getBatchDelete(objectSchema.name)}// {
|
|
472
476
|
// "label": "批量修改",
|
|
473
477
|
// "actionType": "dialog",
|
|
474
478
|
// "dialog": {
|
|
@@ -501,10 +505,12 @@ recordPermissions:objectSchema.permissions,uiSchema:objectSchema// loaded: false
|
|
|
501
505
|
});body=null;id="listview_".concat(objectSchema.name);if(!(options.formFactor==='SMALL'&&false)){_context81.next=42;break;}delete bodyProps.bulkActions;delete bodyProps.headerToolbar;delete bodyProps.footerToolbar;_context81.next=27;return getCardSchema(fields,Object.assign({idFieldName:objectSchema.idFieldName,labelFieldName:objectSchema.NAME_FIELD_KEY||'name'},options,{actions:false}));case 27:card=_context81.sent;_context81.t3=Object;_context81.t4={};_context81.t5=card;_context81.t6=id;_context81.t7=id;_context81.next=35;return getTableApi(objectSchema,fields,options);case 35:_context81.t8=_context81.sent;_context81.t9=options.tableHiddenOn;_context81.t10={type:'crud',primaryField:'_id',id:_context81.t6,name:_context81.t7,keepItemSelectionOnPageChange:false,api:_context81.t8,hiddenOn:_context81.t9};_context81.t11=bodyProps;body=_context81.t3.assign.call(_context81.t3,_context81.t4,_context81.t5,_context81.t10,_context81.t11);_context81.next=71;break;case 42:labelFieldName=objectSchema.NAME_FIELD_KEY||'name';// organizations 对象的历史遗留问题, fullname 被标记为了 名称字段. 在此处特殊处理.
|
|
502
506
|
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,enable_tree:objectSchema.enable_tree},options);tableOptions.amisData=createObject(options.amisData||{},{});_context81.next=48;return getTableSchema$1(fields,tableOptions);case 48:table=_context81.sent;// delete table.mode;
|
|
503
507
|
//image与avatar需要在提交修改时特别处理
|
|
504
|
-
imageNames=___default["default"].compact(___default["default"].map(___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;}_context81.t12=Object;_context81.t13={};_context81.t14=table;_context81.t15=id;_context81.t16=id;_context81.next=60;return getTableApi(objectSchema,fields,options);case 60:_context81.t17=_context81.sent;_context81.t18=options.tableHiddenOn;_context81.t19=autoFillHeight;_context81.t20="flex-auto ".concat(crudClassName||"");_context81.t21={"bg-white":"true","is-steedos-crud-data-empty":"${!items || COUNT(items) == 0}"};_context81.t22=crudClassName;_context81.t23={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 "};_context81.t24=options.rowClassNameExpr;_context81.t25={type:'crud',primaryField:'_id',affixHeader:false,id:_context81.t15,name:_context81.t16,keepItemSelectionOnPageChange:true,api:_context81.t17,hiddenOn:_context81.t18,autoFillHeight:_context81.t19,className:_context81.t20,bodyClassName:_context81.t21,crudClassName:_context81.t22,quickSaveApi:_context81.t23,rowClassNameExpr:_context81.t24};_context81.t26=bodyProps;body=_context81.t12.assign.call(_context81.t12,_context81.t13,_context81.t14,_context81.t25,_context81.t26);case 71:body=defaultsDeep({},listSchema,body);_context81.next=74;return getCrudSchemaWithDataFilter(body,{crudDataFilter:crudDataFilter,onCrudDataFilter:onCrudDataFilter,amisData:amisData,env:env});case 74:body=_context81.sent;crudModeClassName="";if(body.mode){crudModeClassName="steedos-crud-mode-".concat(body.mode);}if(
|
|
508
|
+
imageNames=___default["default"].compact(___default["default"].map(___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;}_context81.t12=Object;_context81.t13={};_context81.t14=table;_context81.t15=id;_context81.t16=id;_context81.next=60;return getTableApi(objectSchema,fields,options);case 60:_context81.t17=_context81.sent;_context81.t18=options.tableHiddenOn;_context81.t19=autoFillHeight;_context81.t20="flex-auto ".concat(crudClassName||"");_context81.t21={"bg-white":"true","is-steedos-crud-data-empty":"${!items || COUNT(items) == 0}"};_context81.t22=crudClassName;_context81.t23={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 "};_context81.t24=options.rowClassNameExpr;_context81.t25={type:'crud',primaryField:'_id',affixHeader:false,id:_context81.t15,name:_context81.t16,keepItemSelectionOnPageChange:true,api:_context81.t17,hiddenOn:_context81.t18,autoFillHeight:_context81.t19,className:_context81.t20,bodyClassName:_context81.t21,crudClassName:_context81.t22,quickSaveApi:_context81.t23,rowClassNameExpr:_context81.t24};_context81.t26=bodyProps;body=_context81.t12.assign.call(_context81.t12,_context81.t13,_context81.t14,_context81.t25,_context81.t26);case 71:body=defaultsDeep({},listSchema,body);_context81.next=74;return getCrudSchemaWithDataFilter(body,{crudDataFilter:crudDataFilter,onCrudDataFilter:onCrudDataFilter,amisData:amisData,env:env});case 74:body=_context81.sent;crudModeClassName="";if(body.mode){crudModeClassName="steedos-crud-mode-".concat(body.mode);}if(body.columns&&options.formFactor!='SMALL'){//将_display放入crud的columns的倒数第二列中(最后一列会影响固定列),可以通过setvalue修改行内数据域的_display,而不影响上层items的_display,用于批量编辑
|
|
509
|
+
body.columns.splice(body.columns.length-1,0,{name:'_display',type:'static',width:32,placeholder:"",id:"_display_${_index}",className:"hidden"});}if(defaults){headerSchema=defaults.headerSchema;footerSchema=defaults.footerSchema;if(headerSchema||footerSchema){wrappedBody=[body];if(headerSchema){if(___default["default"].isArray(headerSchema)){wrappedBody=___default["default"].union(headerSchema,wrappedBody);}else{wrappedBody.unshift(headerSchema);}}if(footerSchema){if(___default["default"].isArray(footerSchema)){wrappedBody=___default["default"].union(wrappedBody,footerSchema);}else{wrappedBody.push(footerSchema);}}body=wrappedBody;}}// console.timeEnd('getObjectCRUD');
|
|
505
510
|
// TODO: data应该只留loaded,其他属性都改为从上层传递下来
|
|
506
511
|
return _context81.abrupt("return",{type:'service',className:crudModeClassName,//目前crud的service层id不认用户自定义id,只支持默认规则id,许多地方的格式都写死了service_listview_${objectname}
|
|
507
|
-
id:"service_".concat(id),name:"page",data:options.amisData,body:body
|
|
512
|
+
id:"service_".concat(id),name:"page",data:options.amisData,body:body,//监听广播事件,重算crud高度
|
|
513
|
+
onEvent:_defineProperty({},"@height.changed.".concat(objectSchema.name),{"actions":[{"actionType":"custom","script":"\n var crudScoped = event.context.scoped.getComponentById('".concat(body.id,"');\n var timeOut = event.data.timeOut || 500;\n setTimeout(()=>{\n crudScoped && crudScoped.control.updateAutoFillHeight();\n }, timeOut);\n ")}]})});case 80:case"end":return _context81.stop();}}},_callee81);}));return _getObjectCRUD.apply(this,arguments);}var getGlobalData=function getGlobalData(mode){var user=getSteedosAuth();return{mode:mode,user:user,spaceId:user.spaceId,userId:user.userId};};var getFormFields$1=function getFormFields$1(objectSchema,formProps){/**
|
|
508
514
|
* fieldsExtend: 重写字段定义
|
|
509
515
|
* fields: 包含的字段
|
|
510
516
|
* excludedFields: 排除的字段
|
|
@@ -630,29 +636,36 @@ queryOptions:"filters: {__filters}, sort: \"{__sort}\""});case 3:data=_context10
|
|
|
630
636
|
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后续在发送适配器中替换
|
|
631
637
|
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 _context105.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 _context105.stop();}}},_callee105);}));return _getDeferApi.apply(this,arguments);}function getRefListViewSort(refObject){var listView=getLookupListView(refObject);var sort="";if(listView){sort=getListViewSort(listView);}return sort;}function lookupToAmisTreeSelect(_x172,_x173,_x174){return _lookupToAmisTreeSelect.apply(this,arguments);}function _lookupToAmisTreeSelect(){_lookupToAmisTreeSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee106(field,readonly,ctx){var amisSchema,refObjectConfig,onEvent;return _regeneratorRuntime().wrap(function _callee106$(_context106){while(1){switch(_context106.prev=_context106.next){case 0:if(field){_context106.next=2;break;}return _context106.abrupt("return",{});case 2:if(!ctx){ctx={};}amisSchema={"type":getAmisStaticFieldType('tree-select',readonly)};if(!readonly){_context106.next=10;break;}_context106.next=7;return getLookupTpl(field,ctx);case 7:amisSchema.tpl=_context106.sent;_context106.next=30;break;case 10:_context106.next=12;return getUISchema(ctx.objectName);case 12:refObjectConfig=_context106.sent;ctx.sort=getRefListViewSort(refObjectConfig);_context106.t0=Object;_context106.t1=amisSchema;_context106.t2=field.multiple;_context106.t3=field.searchable;_context106.next=20;return getSource(field,ctx);case 20:_context106.t4=_context106.sent;_context106.next=23;return getDeferApi(field,ctx);case 23:_context106.t5=_context106.sent;_context106.t6={"multiple":_context106.t2,"searchable":_context106.t3,"extractValue":true,"hideNodePathLabel":true,"clearable":true,"source":_context106.t4,"deferApi":_context106.t5};_context106.t0.assign.call(_context106.t0,_context106.t1,_context106.t6);if(field.multiple){// 单选时如果配置joinValues为false,清空字段值会把字段值设置为空数组,这是amis人员单选功能的bug,普通的select没有这个问题
|
|
632
638
|
Object.assign(amisSchema,{"joinValues":false});}if(typeof amisSchema.searchable!=="boolean"){amisSchema.searchable=true;}onEvent=field.onEvent;if(onEvent){amisSchema.onEvent=onEvent;}case 30:return _context106.abrupt("return",amisSchema);case 31:case"end":return _context106.stop();}}},_callee106);}));return _lookupToAmisTreeSelect.apply(this,arguments);}var getReferenceToFieldSchema=function getReferenceToFieldSchema(field,refObjectConfig){var referenceTo=field.reference_to;if(!referenceTo){return;}// 如果lookup 引用的对象未定义
|
|
633
|
-
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 _ref17=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee16(field){var referenceTo,refObjectConfig;return _regeneratorRuntime().wrap(function _callee16$(_context16){while(1){switch(_context16.prev=_context16.next){case 0:referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}_context16.next=4;return getUISchema(field.reference_to);case 4:refObjectConfig=_context16.sent;return _context16.abrupt("return",getReferenceToFieldSchema(field,refObjectConfig));case 6:case"end":return _context16.stop();}}},_callee16);}));return function getReferenceTo(_x175){return _ref17.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
|
|
639
|
+
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 _ref17=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee16(field){var referenceTo,refObjectConfig;return _regeneratorRuntime().wrap(function _callee16$(_context16){while(1){switch(_context16.prev=_context16.next){case 0:referenceTo=field.reference_to;if(referenceTo==='users'){field.reference_to='space_users';field.reference_to_field='user';}_context16.next=4;return getUISchema(field.reference_to);case 4:refObjectConfig=_context16.sent;return _context16.abrupt("return",getReferenceToFieldSchema(field,refObjectConfig));case 6:case"end":return _context16.stop();}}},_callee16);}));return function getReferenceTo(_x175){return _ref17.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 apiAdaptor="\n // console.log(\"===getLookupSapceUserTreeSchema===\", JSON.stringify(payload));\n const records = payload.data.options;\n let isTreeOptionsComputed = false;\n if(records.length === 1 && records[0].children){\n isTreeOptionsComputed = true;\n }\n if(isTreeOptionsComputed){\n return payload;\n }\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 }else{\n 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 return payload;\n ";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":apiAdaptor,"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(_x176,_x177,_x178){return _lookupToAmisPicker.apply(this,arguments);}function _lookupToAmisPicker(){_lookupToAmisPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee107(field,readonly,ctx){var _fields;var referenceTo,refObjectConfig,tableFields,searchableFields,fieldsArr,isMobile,listView,listName,fields,sort,source,depend_on,sendOn,keywordsSearchBoxName,top,pickerSchema,labelFieldName,headerToolbarItems,isAllowCreate,isCreate,isHasFilters,new_button,data;return _regeneratorRuntime().wrap(function _callee107$(_context107){while(1){switch(_context107.prev=_context107.next){case 0:_context107.next=2;return getReferenceTo(field);case 2:referenceTo=_context107.sent;if(referenceTo){_context107.next=5;break;}return _context107.abrupt("return");case 5:_context107.next=7;return getUISchema(referenceTo.objectName);case 7:refObjectConfig=_context107.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){___namespace.each(listView.columns,function(column){if(___namespace.isString(column)&&refObjectConfig.fields[column]){fieldsArr.push(refObjectConfig.fields[column]);}else if(___namespace.isObject(column)&&refObjectConfig.fields[column.field]){fieldsArr.push(Object.assign({},refObjectConfig.fields[column.field],{width:column.width,wrap:column.wrap}));}});}else{___namespace.each(refObjectConfig.fields,function(field,field_name){if(field_name!='_id'&&!field.hidden){if(!___namespace.has(field,"name")){field.name=field_name;}fieldsArr.push(field);}});// 没有视图权限时,取对象上前5个字段,按sort_no排序
|
|
634
640
|
fieldsArr=___namespace.sortBy(fieldsArr,"sort_no").slice(0,5);}___namespace.each(fieldsArr,function(field){if(!___namespace.find(tableFields,function(f){return f.name===field.name;})){tableFields.push(field);}});___namespace.each(refObjectConfig.fields,function(field){if(isFieldQuickSearchable(field,refObjectConfig.NAME_FIELD_KEY)){searchableFields.push(field.name);}});fields=(_fields={},_defineProperty(_fields,referenceTo.labelField.name,referenceTo.labelField),_defineProperty(_fields,referenceTo.valueField.name,referenceTo.valueField),_fields);___namespace.each(tableFields,function(tableField){if(!tableField.hidden){fields[tableField.name]=tableField;}});sort="";if(listView){sort=getListViewSort(listView);}_context107.next=25;return getApi(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 25:source=_context107.sent;if(source.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];___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="$$";// field.name可能是带点的名称,比如审批王中子表字段'instances.instances_submitter',如果不替换掉点,会造成审批王表单中新建子表行时报错
|
|
635
|
-
keywordsSearchBoxName="__keywords_lookup__".concat(field.name.replace(/\./g,"_"),"__to__").concat(refObjectConfig.name);source.requestAdaptor="\n let __changedFilterFormValues = api.data.$self.__changedFilterFormValues || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\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);\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
|
|
636
|
-
if(refObjectConfig.name==='organizations'){labelFieldName='name';}_context107.next=40;return getTableSchema$1(tableFields,_objectSpread({labelFieldName:labelFieldName,top:top,isLookup:true},ctx));case 40:pickerSchema=_context107.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=___namespace.isBoolean(field.create)?field.create:true;// lookup字段配置过滤条件就强制不显示新建按钮
|
|
637
|
-
isHasFilters=field.filters||field._filtersFunction?true:false;if(!(isAllowCreate&&isCreate&&!isHasFilters)){_context107.next=54;break;}_context107.next=51;return getSchema$5(refObjectConfig,{appId:ctx.appId,objectName:refObjectConfig.name,formFactor:ctx.formFactor});case 51:new_button=_context107.sent;new_button.align="right";// 保持快速搜索放在最左侧,新建按钮往里插,而不是push到最后
|
|
641
|
+
keywordsSearchBoxName="__keywords_lookup__".concat(field.name.replace(/\./g,"_"),"__to__").concat(refObjectConfig.name);source.requestAdaptor="\n let __changedFilterFormValuesKey = \"__changedFilterFormValues\";\n let __lookupField = api.data.$self.__lookupField;\n if(__lookupField){\n let lookupTag = \"__lookup__\" + __lookupField.name + \"__\" + __lookupField.reference_to;\n if(__lookupField.reference_to_field){\n lookupTag += \"__\" + __lookupField.reference_to_field;\n }\n __changedFilterFormValuesKey += lookupTag;\n }\n let __changedFilterFormValues = api.data.$self[__changedFilterFormValuesKey] || {};\n let __changedSearchBoxValues = api.data.$self.__changedSearchBoxValues || {};\n // \u628A\u8868\u5355\u641C\u7D22\u548C\u5FEB\u901F\u641C\u7D22\u4E2D\u7684change\u4E8B\u4EF6\u4E2D\u8BB0\u5F55\u7684\u8FC7\u6EE4\u6761\u4EF6\u4E5F\u62FC\u5230$self\u4E2D\uFF0C\u662F\u4E3A\u89E3\u51B3\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u65F6\uFF0C\u4E24\u8FB9\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u90FD\u5E26\u4E0A\uFF0C\u5373\uFF1A\n // \u6709\u65F6\u5728\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u4E8B\uFF0C\u5FD8\u8BB0\u70B9\u51FB\u56DE\u8F66\u952E\u6216\u641C\u7D22\u6309\u94AE\uFF0C\u800C\u662F\u8FDB\u4E00\u6B65\u4FEE\u6539\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u7684\u5173\u952E\u5B57\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\n // \u8FD9\u79CD\u60C5\u51B5\u4E0B\uFF0C\u89E6\u53D1\u7684\u641C\u7D22\u8BF7\u6C42\u4E2D\u6CA1\u6709\u5E26\u4E0A\u641C\u7D22\u8868\u5355\u4E2D\u8F93\u5165\u7684\u8FC7\u6EE4\u6761\u4EF6\u3002\n // \u53CD\u8FC7\u6765\u5148\u5728\u5FEB\u901F\u641C\u7D22\u6846\u4E2D\u8F93\u5165\u8FC7\u6EE4\u6761\u4EF6\u5374\u4E0D\u70B9\u51FB\u5176\u4E2D\u56DE\u8F66\u952E\u89E6\u53D1\u641C\u7D22\uFF0C\u800C\u662F\u5230\u641C\u7D22\u8868\u5355\u4E2D\u89E6\u53D1\u641C\u7D22\u8BF7\u6C42\u4E5F\u662F\u4E00\u6837\u7684\u3002\n if(api.data.$self.op !== 'loadOptions'){\n Object.assign(api.data.$self, __changedSearchBoxValues, __changedFilterFormValues);\n }\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);\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 if(enable_tree){\n const rows = _.map(payload.data.rows, (item)=>{\n delete item.children;\n delete item.parent;\n return item;\n })\n payload.data.rows = rows;\n }\n return payload;\n }\n if(!payload.data.rows){\n payload.data.rows = [];\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 }else{\n 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 被标记为了 名称字段. 在此处特殊处理.
|
|
642
|
+
if(refObjectConfig.name==='organizations'){labelFieldName='name';}_context107.next=40;return getTableSchema$1(tableFields,_objectSpread({labelFieldName:labelFieldName,top:top,isLookup:true,enable_tree:refObjectConfig.enable_tree},ctx));case 40:pickerSchema=_context107.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=___namespace.isBoolean(field.create)?field.create:true;// lookup字段配置过滤条件就强制不显示新建按钮
|
|
643
|
+
isHasFilters=field.filters||field.filtersFunction||field._filtersFunction?true:false;if(!(isAllowCreate&&isCreate&&!isHasFilters)){_context107.next=54;break;}_context107.next=51;return getSchema$5(refObjectConfig,{appId:ctx.appId,objectName:refObjectConfig.name,formFactor:ctx.formFactor});case 51:new_button=_context107.sent;new_button.align="right";// 保持快速搜索放在最左侧,新建按钮往里插,而不是push到最后
|
|
638
644
|
pickerSchema.headerToolbar.splice(pickerSchema.headerToolbar.length-1,0,new_button);case 54:pickerSchema.footerToolbar=refObjectConfig.enable_tree?[]:getObjectFooterToolbar(refObjectConfig,ctx.formFactor,{isLookup:true});if(!(ctx.filterVisible!==false)){_context107.next=59;break;}_context107.next=58;return getObjectFilter(refObjectConfig,fields,_objectSpread(_objectSpread({},ctx),{},{isLookup:true,keywordsSearchBoxName:keywordsSearchBoxName}));case 58:pickerSchema.filter=_context107.sent;case 59:pickerSchema.data=Object.assign({},pickerSchema.data,{"&":"$$","objectName":refObjectConfig.name,"uiSchema":refObjectConfig,"listName":listName,// 需要按视图取可搜索项
|
|
639
|
-
"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
|
|
645
|
+
"isLookup":true,"__lookupField":{"name":field.name,"reference_to":refObjectConfig.name,"reference_to_field":field.reference_to_field}});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
|
|
640
646
|
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:i18next__default["default"].t('frontend_form_please_select')+" "+refObjectConfig.label,labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
641
647
|
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,用来配置弹出方式
|
|
642
|
-
source:source,size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context107.next=70;break;}_context107.next=69;return getLookupTpl(field,ctx);case 69:data.tpl=_context107.sent;case 70:return _context107.abrupt("return",data);case 71:case"end":return _context107.stop();}}},_callee107);}));return _lookupToAmisPicker.apply(this,arguments);}function lookupToAmisSelect(_x179,_x180,_x181){return _lookupToAmisSelect.apply(this,arguments);}function _lookupToAmisSelect(){_lookupToAmisSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee108(field,readonly,ctx){var _referenceTo$valueFie;var referenceTo,isMobile,valueFieldKey,apiInfo,defaultValueOptionsQueryData,refObjectConfig,listView,sort,depend_on,sendOn,data,select_menuTpl,menuTpl;return _regeneratorRuntime().wrap(function _callee108$(_context108){while(1){switch(_context108.prev=_context108.next){case 0:_context108.next=2;return getReferenceTo(field);case 2:referenceTo=_context108.sent;isMobile=window.innerWidth<=768;valueFieldKey=referenceTo&&((_referenceTo$valueFie=referenceTo.valueField)===null||_referenceTo$valueFie===void 0?void 0:_referenceTo$valueFie.name)||'_id';// const labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';
|
|
648
|
+
source:source,size:"lg",pickerSchema:pickerSchema,joinValues:false,extractValue:true};if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context107.next=70;break;}_context107.next=69;return getLookupTpl(field,ctx);case 69:data.tpl=_context107.sent;case 70:return _context107.abrupt("return",data);case 71:case"end":return _context107.stop();}}},_callee107);}));return _lookupToAmisPicker.apply(this,arguments);}function lookupToAmisSelect(_x179,_x180,_x181){return _lookupToAmisSelect.apply(this,arguments);}function _lookupToAmisSelect(){_lookupToAmisSelect=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee108(field,readonly,ctx){var _referenceTo$valueFie;var referenceTo,isMobile,valueFieldKey,apiInfo,defaultValueOptionsQueryData,refObjectConfig,listView,sort,depend_on,sendOn,data,amisVersion,select_menuTpl,menuTpl;return _regeneratorRuntime().wrap(function _callee108$(_context108){while(1){switch(_context108.prev=_context108.next){case 0:_context108.next=2;return getReferenceTo(field);case 2:referenceTo=_context108.sent;isMobile=window.innerWidth<=768;valueFieldKey=referenceTo&&((_referenceTo$valueFie=referenceTo.valueField)===null||_referenceTo$valueFie===void 0?void 0:_referenceTo$valueFie.name)||'_id';// const labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';
|
|
643
649
|
if(!referenceTo){_context108.next=15;break;}_context108.next=8;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 8:defaultValueOptionsQueryData=_context108.sent;_context108.next=11;return getApi({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 11:apiInfo=_context108.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 ";_context108.next=16;break;case 15:apiInfo={method:"post",url:getApi$2(),data:{query:'{objects(filters: ["_id", "=", "-1"]){_id}}',$:"$$"},"headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"}};case 16:_context108.t0=referenceTo;if(!_context108.t0){_context108.next=21;break;}_context108.next=20;return getUISchema(referenceTo.objectName);case 20:_context108.t0=_context108.sent;case 21:refObjectConfig=_context108.t0;listView=getLookupListView(refObjectConfig);sort="";if(listView){sort=getListViewSort(listView);}// 列表视图搜索栏中,即inFilterForm=true时,不需要执行depend_on
|
|
644
|
-
if(apiInfo.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];___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,"
|
|
650
|
+
if(apiInfo.url&&!ctx.inFilterForm){depend_on=[];sendOn=[];___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'}`;
|
|
645
651
|
apiInfo.data.$value=ctx.isRefToMutiple?"$".concat(field.name,".ids"):"$".concat(field.name);___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"]]
|
|
646
652
|
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('select',readonly),joinValues:false,extractValue:true,clearable:true,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
647
653
|
disabledOn:"".concat(readonly," || ( (this._master && (this._master.relatedKey ==='").concat(field.name,"')) || ((this.relatedKey ==='").concat(field.name,"') && (").concat(field.multiple," != true)) )"),// labelField: labelField,
|
|
648
654
|
// valueField: valueField,
|
|
649
655
|
// source: apiInfo,
|
|
650
|
-
autoComplete:apiInfo,searchable:true}
|
|
656
|
+
autoComplete:apiInfo,searchable:true};amisVersion=getComparableAmisVersion();if(amisVersion>=3.6){// amis 3.6中不加source会造成子表组件中弹出行编辑窗口的lookup字段有时不请求接口(概率现象,同一个地方反复操作有时请求有时不请求)
|
|
657
|
+
// 但是同时配置autoComplete和source会多请求一次接口
|
|
658
|
+
// TODO:应该想办法把是否字段在子表组件内,即ctx.isInputTable,如果不在子表组件内不需要加source
|
|
659
|
+
data.source=apiInfo;}//删除xlink:href中的rootUrl前缀,解决客户端svg为空的问题
|
|
651
660
|
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>";menuTpl="${icon ? `"+select_menuTpl+"` : label}";// TODO: 待amis修复了此bug, 就可以撤销添加menuTpl的判断。
|
|
652
|
-
if(!(isMobile&&field.multiple)){data.menuTpl=menuTpl;}if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context108.next=
|
|
661
|
+
if(!(isMobile&&field.multiple)){data.menuTpl=menuTpl;}if(field.multiple){data.multiple=true;data.extractValue=true;}if(!readonly){_context108.next=46;break;}_context108.next=45;return getLookupTpl(field,ctx);case 45:data.tpl=_context108.sent;case 46:return _context108.abrupt("return",data);case 47:case"end":return _context108.stop();}}},_callee108);}));return _lookupToAmisSelect.apply(this,arguments);}function getApi(_x182,_x183,_x184,_x185){return _getApi.apply(this,arguments);}function _getApi(){_getApi=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee109(object,recordId,fields,options){var data;return _regeneratorRuntime().wrap(function _callee109$(_context109){while(1){switch(_context109.prev=_context109.next){case 0:_context109.next=2;return getFindQuery(object,recordId,fields,options);case 2:data=_context109.sent;return _context109.abrupt("return",{method:"post",url:getApi$2(),data:data,headers:{Authorization:"Bearer ${context.tenantId},${context.authToken}"}});case 4:case"end":return _context109.stop();}}},_callee109);}));return _getApi.apply(this,arguments);}function lookupToAmis(_x186,_x187,_x188){return _lookupToAmis.apply(this,arguments);}function _lookupToAmis(){_lookupToAmis=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee110(field,readonly,ctx){var referenceTo,refObject,enableEnhancedLookup,amisVersion,amisSchema,_referenceTo$labelFie,_referenceTo$valueFie2,refLookupPage;return _regeneratorRuntime().wrap(function _callee110$(_context110){while(1){switch(_context110.prev=_context110.next){case 0:if(!ctx){ctx={};}// console.log(`lookupToAmis====`, field, readonly, ctx)
|
|
653
662
|
if(!readonly){_context110.next=3;break;}return _context110.abrupt("return",{type:getAmisStaticFieldType('picker',readonly),tpl:getRelatedFieldTpl(field,ctx)});case 3:if(!(field.reference_to&&!___namespace.isString(field.reference_to)&&!readonly)){_context110.next=5;break;}return _context110.abrupt("return",{type:'steedos-field-lookup',field:field,readonly:readonly,ctx:ctx});case 5:_context110.next=7;return getReferenceTo(field);case 7:referenceTo=_context110.sent;if(referenceTo){_context110.next=12;break;}_context110.next=11;return lookupToAmisSelect(field,readonly,ctx);case 11:return _context110.abrupt("return",_context110.sent);case 12:if(!(referenceTo.objectName==="space_users"&&field.reference_to_field==="user")){_context110.next=18;break;}ctx=Object.assign({},ctx,{onlyDisplayLookLabel:true});if(!ctx.idsDependOn){_context110.next=18;break;}_context110.next=17;return lookupToAmisIdsPicker(field,readonly,ctx);case 17:return _context110.abrupt("return",_context110.sent);case 18:_context110.next=20;return getUISchema(referenceTo.objectName);case 20:refObject=_context110.sent;// 优先取字段中配置的enable_enhanced_lookup,字段上没配置时,才从对象上取enable_enhanced_lookup属性
|
|
654
|
-
enableEnhancedLookup=___namespace.isBoolean(field.enable_enhanced_lookup)?field.enable_enhanced_lookup:refObject.enable_enhanced_lookup
|
|
655
|
-
|
|
663
|
+
enableEnhancedLookup=___namespace.isBoolean(field.enable_enhanced_lookup)?field.enable_enhanced_lookup:refObject.enable_enhanced_lookup;amisVersion=getComparableAmisVersion();if(amisVersion>=3.6){// amis 3.6.3单选和多选的树picker都有bug(https://github.com/baidu/amis/issues/9279,https://github.com/baidu/amis/issues/9295),我们改amis源码修正了
|
|
664
|
+
// amis 3.6.3多选的下拉树组件有bug,多选树字段的选中值在编辑模式展开树时不会自动勾选树里面的节点,而是始终勾选显示在最外面的选中值选项(即defaultValueOptions),amis 3.2没有这个问题
|
|
665
|
+
// 这里强制禁用多选下拉树,统一改为弹出树,如果以后需要下拉树功能,可以把下拉树组件改为一次性加载所有树节点数据模式来跳过这个问题
|
|
666
|
+
if(!enableEnhancedLookup&&refObject.enable_tree&&field.multiple){enableEnhancedLookup=true;}}if(!(enableEnhancedLookup==true)){_context110.next=30;break;}_context110.next=27;return lookupToAmisPicker(field,readonly,ctx);case 27:amisSchema=_context110.sent;_context110.next=39;break;case 30:if(!refObject.enable_tree){_context110.next=36;break;}_context110.next=33;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 33:amisSchema=_context110.sent;_context110.next=39;break;case 36:_context110.next=38;return lookupToAmisSelect(field,readonly,ctx);case 38:amisSchema=_context110.sent;case 39:refLookupPage=refObject.pages&&refObject.pages.lookup;if(refLookupPage){if(typeof refLookupPage=='string'){refLookupPage=JSON.parse(refLookupPage);}// Object.assign(amisSchema, refLookupPage);
|
|
667
|
+
// amisSchema = _.defaultsDeep({}, refLookupPage, amisSchema);
|
|
668
|
+
}return _context110.abrupt("return",amisSchema);case 42:case"end":return _context110.stop();}}},_callee110);}));return _lookupToAmis.apply(this,arguments);}function lookupToAmisSelectUser(_x189,_x190,_x191){return _lookupToAmisSelectUser.apply(this,arguments);}function _lookupToAmisSelectUser(){_lookupToAmisSelectUser=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee111(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee111$(_context111){while(1){switch(_context111.prev=_context111.next){case 0:return _context111.abrupt("return",getSelectUserSchema(field,readonly,ctx));case 1:case"end":return _context111.stop();}}},_callee111);}));return _lookupToAmisSelectUser.apply(this,arguments);}function lookupToAmisIdsPicker(_x192,_x193,_x194){return _lookupToAmisIdsPicker.apply(this,arguments);}function _lookupToAmisIdsPicker(){_lookupToAmisIdsPicker=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee112(field,readonly,ctx){return _regeneratorRuntime().wrap(function _callee112$(_context112){while(1){switch(_context112.prev=_context112.next){case 0:return _context112.abrupt("return",getIdsPickerSchema(field,readonly,ctx));case 1:case"end":return _context112.stop();}}},_callee112);}));return _lookupToAmisIdsPicker.apply(this,arguments);}function getIdsPickerSchema(_x195,_x196,_x197){return _getIdsPickerSchema.apply(this,arguments);}function _getIdsPickerSchema(){_getIdsPickerSchema=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee113(field,readonly,ctx){var _fields2;var referenceTo,refObjectConfig,_ctx,idsDependOn,fields,tableFields,source,listView,sort,top,pickerSchema,data;return _regeneratorRuntime().wrap(function _callee113$(_context113){while(1){switch(_context113.prev=_context113.next){case 0:if(!ctx){ctx={};}_context113.next=3;return getReferenceTo(field);case 3:referenceTo=_context113.sent;if(referenceTo){_context113.next=6;break;}return _context113.abrupt("return");case 6:_context113.next=8;return getUISchema(referenceTo.objectName);case 8:refObjectConfig=_context113.sent;_ctx=ctx,idsDependOn=_ctx.idsDependOn;fields=(_fields2={},_defineProperty(_fields2,referenceTo.labelField.name,referenceTo.labelField),_defineProperty(_fields2,referenceTo.valueField.name,referenceTo.valueField),_fields2);tableFields=[referenceTo.labelField];_context113.next=14;return getApi(refObjectConfig,null,fields,{expand:true,alias:'rows',queryOptions:"filters: {__filters}, top: {__top}, skip: {__skip}, sort: \"{__sort}\""});case 14:source=_context113.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')){_context113.next=30;break;}_context113.next=27;return getListSchema$1(tableFields,_objectSpread(_objectSpread({top:top},ctx),{},{actions:false}));case 27:pickerSchema=_context113.sent;_context113.next=34;break;case 30:_context113.next=32;return getTableSchema$1(tableFields,_objectSpread({labelFieldName:refObjectConfig.NAME_FIELD_KEY,top:top,isLookup:true},ctx));case 32:pickerSchema=_context113.sent;pickerSchema.affixHeader=false;case 34:data={type:getAmisStaticFieldType('picker',readonly),labelField:referenceTo.labelField.name,valueField:referenceTo.valueField.name,modalMode:'dialog',source:source,// disabledOn: this._master目的是相关表新建时禁止编辑关联字段; this.relatedKey目的是相关表编辑时禁止编辑关联字段,多选字段可以编辑。
|
|
656
669
|
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){_context113.next=42;break;}_context113.next=41;return getLookupTpl(field,ctx);case 41:data.tpl=_context113.sent;case 42:return _context113.abrupt("return",data);case 43:case"end":return _context113.stop();}}},_callee113);}));return _getIdsPickerSchema.apply(this,arguments);}if(typeof window!='undefined'){window.getReferenceTo=getReferenceTo;window.getReferenceToSync=getReferenceToSync;}/*
|
|
657
670
|
* @Author: baozhoutao@steedos.com
|
|
658
671
|
* @Date: 2023-01-13 17:27:54
|
|
@@ -683,7 +696,7 @@ return{"type":"input-rich-text","receiver":"${context.rootUrl}/s3/images","name"
|
|
|
683
696
|
// ]
|
|
684
697
|
// }
|
|
685
698
|
}};var QUICK_SEARCHABLE_FIELD_TYPES=["text","textarea","autonumber","url","email"];var OMIT_FIELDS=['created','created_by','modified','modified_by'];// const Lookup = require('./lookup');
|
|
686
|
-
function getBaseFields(readonly){var
|
|
699
|
+
function getBaseFields(readonly){var className='m-0';if(readonly){className="".concat(className);}return[{name:"createdInfo",label:"创建人",type:"static",labelClassName:'text-left',className:className,tpl:getCreatedInfoTpl()},{name:"modifiedInfo",label:"修改人",type:"static",labelClassName:'text-left',className:className,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
|
|
687
700
|
return'select';case'master_detail':// TODO 根据字段配置返回 select || picker
|
|
688
701
|
return'picker';case'autonumber':return'text';case'url':return'url';case'email':return'email';case'image':return'image';case'formula'://TODO
|
|
689
702
|
break;case'summary'://TODO
|
|
@@ -799,7 +812,7 @@ joinValues:false};return _context114.abrupt("break",142);case 34:// convertData
|
|
|
799
812
|
// }
|
|
800
813
|
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
|
|
801
814
|
};return _context114.abrupt("break",142);case 36:if(readonly){convertData={type:'static-tpl',tpl:getNumberTpl(field)};}else{convertData={type:getAmisStaticFieldType('number',readonly),min:field.min,max:field.max,precision:field.scale};}return _context114.abrupt("break",142);case 38:convertData=Object.assign({},field,baseData);return _context114.abrupt("break",142);case 40:convertData={type:'input-range',min:field.min,max:field.max,value:[0,0],multiple:true,showInput:true};return _context114.abrupt("break",142);case 42:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}else{convertData={type:getAmisStaticFieldType('number',readonly),min:field.min,max:field.max,precision:field.scale,suffix:"%",pipeIn:function pipeIn(value,data){if(value){// 因为例如 1.11 * 100 的值不是111,所以调整下。
|
|
802
|
-
var result=value*100;return Number(result.toFixed(field.scale));}return value;},pipeOut:function pipeOut(value,oldValue,data){if(value){
|
|
815
|
+
var result=value*100;return Number(result.toFixed(field.scale));}return value;},pipeOut:function pipeOut(value,oldValue,data){if(value){var result=value/100;return Number(result.toFixed(field.scale+2));}return value;}};}return _context114.abrupt("break",142);case 44:convertData={type:getAmisStaticFieldType('password',readonly),tpl:readonly?getPasswordTpl(field):null};return _context114.abrupt("break",142);case 46:_context114.next=48;return lookupToAmis(field,readonly,ctx);case 48:convertData=_context114.sent;return _context114.abrupt("break",142);case 50:_context114.next=52;return lookupToAmis(field,readonly,ctx);case 52:convertData=_context114.sent;return _context114.abrupt("break",142);case 54:if(readonly){convertData={type:'static-text'};}return _context114.abrupt("break",142);case 56:convertData={type:getAmisStaticFieldType('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 _context114.abrupt("break",142);case 59:convertData={type:getAmisStaticFieldType('email',readonly)};return _context114.abrupt("break",142);case 61:// 申请ak后需要设置白名单; https://lbsyun.baidu.com/apiconsole/key/create#/home
|
|
803
816
|
// console.log('fie==>', field.name, field);
|
|
804
817
|
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;// 切换到数字之后的默认值
|
|
805
818
|
}}};return _context114.abrupt("break",142);case 67:convertData=getAmisFileSchema(field,readonly);return _context114.abrupt("break",142);case 69:convertData=getAmisFileSchema(field,readonly);return _context114.abrupt("break",142);case 71:convertData=getAmisFileSchema(field,readonly);return _context114.abrupt("break",142);case 73:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}return _context114.abrupt("break",142);case 75:if(readonly){convertData={type:'static-tpl',tpl:getUiFieldTpl(field)};}return _context114.abrupt("break",142);case 77:convertData={type:"editor",disabled:readonly?true:false,language:field.language,editorDidMount:new Function('editor','monaco',field.editorDidMount)};return _context114.abrupt("break",142);case 79:convertData={type:"switch",name:field.name,label:field.label,width:field.width,toggled:field.toggled,disabled:readonly};return _context114.abrupt("break",142);case 81:if(!field.subFields){_context114.next=103;break;}convertData={type:'input-table',showIndex:true,columnsTogglable:false,strictMode:false,affixHeader:false,// 是否固定表头, 不固定表头, 否则form有y轴滚动条时, 表头会跟随滚动条滚动.
|
|
@@ -807,7 +820,7 @@ needConfirm:false,editable:!readonly,addable:!readonly,removable:!readonly,dragg
|
|
|
807
820
|
_iterator14=_createForOfIteratorHelper(field.subFields);_context114.prev=84;_iterator14.s();case 86:if((_step15=_iterator14.n()).done){_context114.next=95;break;}subField=_step15.value;subFieldName=subField.name.replace("".concat(field._prefix||'').concat(field.name,".$."),'').replace("".concat(field.name,"."),'');_context114.next=91;return convertSFieldToAmisField(Object.assign({},subField,{name:subFieldName,isTableField:true}),readonly,ctx);case 91:gridSub=_context114.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 93:_context114.next=86;break;case 95:_context114.next=100;break;case 97:_context114.prev=97;_context114.t1=_context114["catch"](84);_iterator14.e(_context114.t1);case 100:_context114.prev=100;_iterator14.f();return _context114.finish(100);case 103:return _context114.abrupt("break",142);case 104:if(field.subFields){convertData={type:'steedos-input-table',showIndex:true,editable:!readonly,addable:!readonly,removable:!readonly,draggable:!readonly,fields:[],amis:{columnsTogglable:false}};// console.log(`convertData ======>`, field, convertData)
|
|
808
821
|
_iterator15=_createForOfIteratorHelper(field.subFields);try{for(_iterator15.s();!(_step16=_iterator15.n()).done;){_subField=_step16.value;if(!_subField.name.endsWith(".$")){_subFieldName=_subField.name.replace("".concat(field._prefix||'').concat(field.name,".$."),'').replace("".concat(field.name,"."),'');// const gridSub = await convertSFieldToAmisField(Object.assign({}, subField, {name: subFieldName, isTableField: true}), readonly, ctx);
|
|
809
822
|
convertData.fields.push(Object.assign({},_subField,{name:_subFieldName}));}}}catch(err){_iterator15.e(err);}finally{_iterator15.f();}}return _context114.abrupt("break",142);case 106:if(!field.subFields){_context114.next=141;break;}convertData={type:'combo',items:[]};// console.log(`convertData ======>`, field, convertData)
|
|
810
|
-
_iterator16=_createForOfIteratorHelper(field.subFields);_context114.prev=109;_iterator16.s();case 111:if((_step17=_iterator16.n()).done){_context114.next=133;break;}_subField2=_step17.value;_subFieldName2=_subField2.name.replace("".concat(field.name,".$."),'').replace("".concat(field.name,"."),'');if(!(_subField2.type==='grid')){_context114.next=120;break;}_context114.next=117;return getGridFieldSubFields(_subField2,ctx.__formFields);case 117:_subField2=_context114.sent;_context114.next=127;break;case 120:if(!(_subField2.type==='table')){_context114.next=126;break;}_context114.next=123;return getTabledFieldSubFields(_subField2,ctx.__formFields);case 123:_subField2=_context114.sent;_context114.next=127;break;case 126:if(readonly){_subFieldName2="".concat(field.name,".").concat(_subFieldName2);}case 127:_context114.next=129;return convertSFieldToAmisField(Object.assign({},_subField2,{name:_subFieldName2}),readonly,ctx);case 129:_gridSub=_context114.sent;if(_gridSub){delete _gridSub.name;delete _gridSub.label;convertData.items.push(Object.assign({},_gridSub,{label:_subField2.label},_subField2.amis,{name:_subFieldName2}));}case 131:_context114.next=111;break;case 133:_context114.next=138;break;case 135:_context114.prev=135;_context114.t2=_context114["catch"](109);_iterator16.e(_context114.t2);case 138:_context114.prev=138;_iterator16.f();return _context114.finish(138);case 141:return _context114.abrupt("break",142);case 142:if(___namespace.isEmpty(convertData)){_context114.next=155;break;}if(field.is_wide||convertData.type==='group'){convertData.className='col-span-2 m-
|
|
823
|
+
_iterator16=_createForOfIteratorHelper(field.subFields);_context114.prev=109;_iterator16.s();case 111:if((_step17=_iterator16.n()).done){_context114.next=133;break;}_subField2=_step17.value;_subFieldName2=_subField2.name.replace("".concat(field.name,".$."),'').replace("".concat(field.name,"."),'');if(!(_subField2.type==='grid')){_context114.next=120;break;}_context114.next=117;return getGridFieldSubFields(_subField2,ctx.__formFields);case 117:_subField2=_context114.sent;_context114.next=127;break;case 120:if(!(_subField2.type==='table')){_context114.next=126;break;}_context114.next=123;return getTabledFieldSubFields(_subField2,ctx.__formFields);case 123:_subField2=_context114.sent;_context114.next=127;break;case 126:if(readonly){_subFieldName2="".concat(field.name,".").concat(_subFieldName2);}case 127:_context114.next=129;return convertSFieldToAmisField(Object.assign({},_subField2,{name:_subFieldName2}),readonly,ctx);case 129:_gridSub=_context114.sent;if(_gridSub){delete _gridSub.name;delete _gridSub.label;convertData.items.push(Object.assign({},_gridSub,{label:_subField2.label},_subField2.amis,{name:_subFieldName2}));}case 131:_context114.next=111;break;case 133:_context114.next=138;break;case 135:_context114.prev=135;_context114.t2=_context114["catch"](109);_iterator16.e(_context114.t2);case 138:_context114.prev=138;_iterator16.f();return _context114.finish(138);case 141:return _context114.abrupt("break",142);case 142:if(___namespace.isEmpty(convertData)){_context114.next=155;break;}if(field.is_wide||convertData.type==='group'){convertData.className='col-span-2 m-0';}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, '')}`;
|
|
811
824
|
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(___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')){_context114.next=153;break;}convertData.body[0]=Object.assign({},baseData,convertData.body[0],{labelClassName:'text-left',clearValueOnHidden:true,fieldName:field.name});return _context114.abrupt("return",convertData);case 153:// if(ctx.mode === 'edit'){
|
|
812
825
|
convertDataResult=Object.assign({},baseData,convertData,{labelClassName:'text-left',clearValueOnHidden:true,fieldName:field.name},field.amis,{name:baseData.name});// console.log("convertDataResult:", convertDataResult);
|
|
813
826
|
return _context114.abrupt("return",convertDataResult);case 155:case"end":return _context114.stop();}}},_callee114,null,[[84,97,100,103],[109,135,138,141]]);}));return _convertSFieldToAmisField.apply(this,arguments);}function getFieldSearchable(_x201,_x202,_x203){return _getFieldSearchable.apply(this,arguments);}function _getFieldSearchable(){_getFieldSearchable=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee115(perField,permissionFields,ctx){var field,fieldNamePrefix,_field,amisField;return _regeneratorRuntime().wrap(function _callee115$(_context115){while(1){switch(_context115.prev=_context115.next){case 0:if(!ctx){ctx={};}field=perField;if(!(field.type==='grid')){_context115.next=8;break;}_context115.next=5;return getGridFieldSubFields(perField,permissionFields);case 5:field=_context115.sent;_context115.next=12;break;case 8:if(!(perField.type==='object')){_context115.next=12;break;}_context115.next=11;return getObjectFieldSubFields(perField,permissionFields);case 11:field=_context115.sent;case 12:fieldNamePrefix='__searchable__';if(!(field.name.indexOf(".")<0)){_context115.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'){// 特意改为日期范围而不是日期时间范围,因为搜索时一般精确到日期就足够了,需要精确到日期时间范围需要在字段上配置amis属性来实现
|
|
@@ -848,12 +861,12 @@ sectionFieldsVisibleOn=___namespace.map(___namespace.compact(___namespace.map(fi
|
|
|
848
861
|
*/function getFormBody(_x212,_x213,_x214){return _getFormBody.apply(this,arguments);}/*
|
|
849
862
|
* @Author: 殷亮辉 yinlianghui@hotoa.com
|
|
850
863
|
* @Date: 2023-11-15 09:50:22
|
|
851
|
-
* @LastEditors:
|
|
852
|
-
* @LastEditTime:
|
|
864
|
+
* @LastEditors: baozhoutao@steedos.com
|
|
865
|
+
* @LastEditTime: 2024-01-02 15:43:50
|
|
853
866
|
*/ /**
|
|
854
867
|
* @param {*} props
|
|
855
868
|
* @param {*} mode edit/new/readonly
|
|
856
|
-
*/function _getFormBody(){_getFormBody=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee116(permissionFields,formFields,ctx){return _regeneratorRuntime().wrap(function _callee116$(_context116){while(1){switch(_context116.prev=_context116.next){case 0:_context116.next=2;return getSections(permissionFields,formFields,ctx);case 2:return _context116.abrupt("return",_context116.sent);case 3:case"end":return _context116.stop();}}},_callee116);}));return _getFormBody.apply(this,arguments);}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","name":item.name,"config":item};if(mode==="readonly"){formItem["static"]=true;}return formItem;})||[];}function getInputTableCell(field,showAsInlineEditMode){if(showAsInlineEditMode){return{label:field.label,name:field.name,quickEdit:{"type":"steedos-field","config":field,
|
|
869
|
+
*/function _getFormBody(){_getFormBody=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee116(permissionFields,formFields,ctx){return _regeneratorRuntime().wrap(function _callee116$(_context116){while(1){switch(_context116.prev=_context116.next){case 0:_context116.next=2;return getSections(permissionFields,formFields,ctx);case 2:return _context116.abrupt("return",_context116.sent);case 3:case"end":return _context116.stop();}}},_callee116);}));return _getFormBody.apply(this,arguments);}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","name":item.name,"config":item};if(mode==="readonly"){formItem["static"]=true;}return formItem;})||[];}function getInputTableCell(field,showAsInlineEditMode){if(showAsInlineEditMode){return{label:field.label,name:field.name,quickEdit:{"type":"steedos-field","config":Object.assign({},field,{label:false})}};}else{return{"type":"steedos-field","config":Object.assign({},field,{label:false}),"static":true,"readonly":true,label:field.label,name:field.name};}}function getComponentId(name,tag){var id="";switch(name){case"table_service":id="service_wrapper__".concat(tag);break;case"form_pagination":id="service_popup_pagination_wrapper__".concat(tag);break;case"form":id="form_popup__".concat(tag);break;case"dialog":id="dialog_popup__".concat(tag);break;default:id="".concat(name,"__").concat(tag);break;}return id;}/**
|
|
857
870
|
* @param {*} props
|
|
858
871
|
* @param {*} mode edit/new/readonly
|
|
859
872
|
*/function getInputTableColumns(_x215){return _getInputTableColumns.apply(this,arguments);}/**
|
|
@@ -875,7 +888,7 @@ showPagination=false;}var buttonPrevId=getComponentId("button_prev",props.id);va
|
|
|
875
888
|
*/function getFormPaginationWrapper(props,form,mode){// console.log("==getFormPaginationWrapper===", props, mode);
|
|
876
889
|
var serviceId=getComponentId("form_pagination",props.id);var tableServiceId=getComponentId("table_service",props.id);var innerForm=Object.assign({},form,{"data":{// 这里加__super前缀是因为__parentForm变量(即主表单)中可能会正好有名为index的字段
|
|
877
890
|
// 比如“对象字段”对象options字段是一个子表字段,但是主表(即“对象字段”对象)中正好有一个名为index的字段
|
|
878
|
-
"&":"${__tableItems[__super.index]}"}});var formBody=[{"type":"wrapper","size":"none","className":"flex justify-end sticky top-0 right-0 left-0 z-20 bg-white -mt-2","body":[getFormPagination(props,mode)]},{"type":"service","body":[innerForm],"data":{"&":"${__parentForm}"}}];var onServiceInitedScript="\n // \u4EE5\u4E0B\u811A\u672C\u662F\u4E3A\u4E86\u89E3\u51B3\u6709\u65F6\u5F39\u51FA\u7F16\u8F91\u8868\u5355\u65F6\uFF0C\u8868\u5355\u4E2D\u7684\u503C\u6BD4\u6700\u540E\u4E00\u6B21\u7F16\u8F91\u4FDD\u5B58\u7684\u503C\u4F1A\u5EF6\u8FDF\u4E00\u62CD\u3002\n // \u6BD4\u5982\uFF1AinlineEditMode\u6A21\u5F0F\u65F6\uFF0C\u7528\u6237\u5728\u8868\u683C\u5355\u5143\u683C\u4E2D\u76F4\u63A5\u4FEE\u6539\u6570\u636E\uFF0C\u7136\u540E\u5F39\u51FA\u7684\u8868\u5355form\u4E2D\u5E76\u6CA1\u6709\u5305\u542B\u5355\u5143\u683C\u4E2D\u4FEE\u6539\u7684\u5185\u5BB9\n // \u53E6\u5916\u6709\u7684\u5730\u65B9\u5728\u975EinlineEditMode\u6A21\u5F0F\u65F6\u4E5F\u4F1A\u6709\u8FD9\u79CD\u5EF6\u8FDF\u4E00\u62CD\u95EE\u9898\uFF0C\u6BD4\u5982\u5BF9\u8C61\u5B57\u6BB5\u4E2D\u4E0B\u62C9\u6846\u7C7B\u578B\u5B57\u6BB5\u7684\u201D\u9009\u62E9\u9879\u201C\u5C5E\u6027\n // \u518D\u6BD4\u5982\u5DE5\u4F5C\u6D41\u89C4\u5219\u8BE6\u7EC6\u9875\u9762\u4FEE\u6539\u4E86\u5B50\u8868\u5B57\u6BB5\u201D\u65F6\u95F4\u89E6\u53D1\u5668\u201C\u503C\u540E\uFF0C\u5728\u53EA\u8BFB\u754C\u9762\u70B9\u51FB\u67E5\u770B\u6309\u94AE\u5F39\u51FA\u7684\u8868\u5355\u4E2D__tableItems\u503C\u662F\u4FEE\u6539\u524D\u7684\u503C\n // \u5904\u7406\u601D\u8DEF\u662F\u6BCF\u6B21\u5F39\u51FAform\u4E4B\u524D\u5148\u628A\u5176__tableItems\u540C\u6B65\u66F4\u65B0\u4E3A\u6700\u65B0\u503C\uFF0C\u8FD9\u6837\u5C31\u80FD\u5728\u5F39\u51FAform\u4E2D\u5305\u542B\u5355\u5143\u683C\u4E2D\u505A\u7684\u4FEE\u6539\n // \u6CE8\u610F\uFF1Aservice init\u4E8B\u4EF6\u53EA\u4F1A\u5728\u6BCF\u6B21\u5F39\u51FA\u7A97\u53E3\u65F6\u624D\u6267\u884C\uFF0C\u5728\u89E6\u53D1\u7FFB\u9875\u65F6\u5E76\u4E0D\u4F1A\u89E6\u53D1service init\u4E8B\u4EF6\n let scope = event.context.scoped;\n let __wrapperServiceId = \"".concat(tableServiceId,"\";\n let wrapperService = scope.getComponentById(__wrapperServiceId);\n let wrapperServiceData = wrapperService.getData();\n
|
|
891
|
+
"&":"${__tableItems[__super.index]}"}});var formBody=[{"type":"wrapper","size":"none","className":"flex justify-end sticky top-0 right-0 left-0 z-20 bg-white -mt-2","body":[getFormPagination(props,mode)]},{"type":"service","body":[innerForm],"data":{"&":"${__parentForm}"}}];var onServiceInitedScript="\n // \u4EE5\u4E0B\u811A\u672C\u662F\u4E3A\u4E86\u89E3\u51B3\u6709\u65F6\u5F39\u51FA\u7F16\u8F91\u8868\u5355\u65F6\uFF0C\u8868\u5355\u4E2D\u7684\u503C\u6BD4\u6700\u540E\u4E00\u6B21\u7F16\u8F91\u4FDD\u5B58\u7684\u503C\u4F1A\u5EF6\u8FDF\u4E00\u62CD\u3002\n // \u6BD4\u5982\uFF1AinlineEditMode\u6A21\u5F0F\u65F6\uFF0C\u7528\u6237\u5728\u8868\u683C\u5355\u5143\u683C\u4E2D\u76F4\u63A5\u4FEE\u6539\u6570\u636E\uFF0C\u7136\u540E\u5F39\u51FA\u7684\u8868\u5355form\u4E2D\u5E76\u6CA1\u6709\u5305\u542B\u5355\u5143\u683C\u4E2D\u4FEE\u6539\u7684\u5185\u5BB9\n // \u53E6\u5916\u6709\u7684\u5730\u65B9\u5728\u975EinlineEditMode\u6A21\u5F0F\u65F6\u4E5F\u4F1A\u6709\u8FD9\u79CD\u5EF6\u8FDF\u4E00\u62CD\u95EE\u9898\uFF0C\u6BD4\u5982\u5BF9\u8C61\u5B57\u6BB5\u4E2D\u4E0B\u62C9\u6846\u7C7B\u578B\u5B57\u6BB5\u7684\u201D\u9009\u62E9\u9879\u201C\u5C5E\u6027\n // \u518D\u6BD4\u5982\u5DE5\u4F5C\u6D41\u89C4\u5219\u8BE6\u7EC6\u9875\u9762\u4FEE\u6539\u4E86\u5B50\u8868\u5B57\u6BB5\u201D\u65F6\u95F4\u89E6\u53D1\u5668\u201C\u503C\u540E\uFF0C\u5728\u53EA\u8BFB\u754C\u9762\u70B9\u51FB\u67E5\u770B\u6309\u94AE\u5F39\u51FA\u7684\u8868\u5355\u4E2D__tableItems\u503C\u662F\u4FEE\u6539\u524D\u7684\u503C\n // \u5904\u7406\u601D\u8DEF\u662F\u6BCF\u6B21\u5F39\u51FAform\u4E4B\u524D\u5148\u628A\u5176__tableItems\u540C\u6B65\u66F4\u65B0\u4E3A\u6700\u65B0\u503C\uFF0C\u8FD9\u6837\u5C31\u80FD\u5728\u5F39\u51FAform\u4E2D\u5305\u542B\u5355\u5143\u683C\u4E2D\u505A\u7684\u4FEE\u6539\n // \u6CE8\u610F\uFF1Aservice init\u4E8B\u4EF6\u53EA\u4F1A\u5728\u6BCF\u6B21\u5F39\u51FA\u7A97\u53E3\u65F6\u624D\u6267\u884C\uFF0C\u5728\u89E6\u53D1\u7FFB\u9875\u65F6\u5E76\u4E0D\u4F1A\u89E6\u53D1service init\u4E8B\u4EF6\n let scope = event.context.scoped;\n let __wrapperServiceId = \"".concat(tableServiceId,"\";\n let wrapperService = scope.getComponentById(__wrapperServiceId);\n let wrapperServiceData = wrapperService.getData();\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528event.data[\"").concat(props.name,"\"]\u56E0\u4E3Aamis input talbe\u6709\u4E00\u5C42\u5355\u72EC\u7684\u4F5C\u7528\u57DF\uFF0C\u5176\u503C\u4F1A\u5EF6\u8FDF\u4E00\u62CD\n // \u8FD9\u91CC\u5982\u679C\u4E0D.clone\u7684\u8BDD\uFF0C\u5728\u5F39\u51FA\u7A97\u53E3\u4E2D\u663E\u793A\u7684\u5B50\u8868\u7EC4\u4EF6\uFF0C\u6DFB\u52A0\u884C\u540E\u70B9\u7A97\u53E3\u7684\u53D6\u6D88\u6309\u94AE\u5173\u95ED\u7A97\u53E3\u540E\u65E0\u6CD5\u628A\u4E4B\u524D\u7684\u64CD\u4F5C\u8FD8\u539F\uFF0C\u5373\u628A\u4E4B\u524D\u6DFB\u52A0\u7684\u884C\u81EA\u52A8\u79FB\u9664\n let lastestFieldValue = _.clone(wrapperServiceData[\"").concat(props.name,"\"] || []);\n //\u4E0D\u53EF\u4EE5\u76F4\u63A5\u50CFevent.data.__tableItems = lastestFieldValue; \u8FD9\u6837\u6574\u4E2A\u8D4B\u503C\uFF0C\u5426\u5219\u4F5C\u7528\u57DF\u4F1A\u65AD\n let mode = \"").concat(mode,"\";\n if(mode === \"new\"){\n // \u70B9\u51FB\u5B50\u8868\u7EC4\u4EF6\u5E95\u90E8\u65B0\u589E\u6309\u94AE\u65F6\u65B0\u589E\u4E00\u6761\u7A7A\u767D\u884C\u5E76\u81EA\u52A8\u7FFB\u9875\u5230\u65B0\u589E\u884C\n // \u6CE8\u610F\u70B9\u51FB\u5F39\u51FA\u7684\u5B50\u8868\u884C\u8BE6\u7EC6\u8868\u5355\u4E2D\u7684\u65B0\u589E\u6309\u94AE\u4E0D\u4F1A\u8FDB\u6B64service init\u4E8B\u4EF6\u51FD\u6570\u4E2D\n let newItem = {};\n event.data.__tableItems.push(newItem);\n lastestFieldValue.push(newItem);\n event.data.index = lastestFieldValue.length - 1;\n event.data.__page = lastestFieldValue.length;\n // \u8FD9\u91CC\u65B0\u589E\u7A7A\u767D\u884C\u65F6\u8981\u628A\u503C\u540C\u6B65\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\u4E2D\uFF0C\u5982\u679C\u4E0D\u540C\u6B65\u4FDD\u5B58\u7684\u8BDD\uFF0C\u7528\u6237\u70B9\u51FB\u5F39\u51FA\u8868\u5355\u53F3\u4E0A\u89D2\u7684\u5173\u95ED\u7A97\u53E3\u65F6\u4E0D\u4F1A\u81EA\u52A8\u5220\u9664\u8FD9\u91CC\u81EA\u52A8\u589E\u52A0\u7684\u7A7A\u767D\u884C\uFF0C\u540C\u6B65\u540E\u53EF\u4EE5\u8BA9\u7528\u6237\u624B\u52A8\u5220\u9664\u6B64\u884C\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": lastestFieldValue\n }\n });\n }\n event.data.__tableItems.forEach(function(n,i){\n event.data.__tableItems[i] = lastestFieldValue[i];\n });\n ");var schema={"type":"service","id":serviceId,"schemaApi":{// "url": "${context.rootUrl}/graphql?rebuildOn=${index}",
|
|
879
892
|
"url":"${context.rootUrl}/api/v1/spaces/none","trackExpression":"${index}","method":"get","adaptor":"\n const formBody = ".concat(JSON.stringify(formBody),";\n return {\n \"body\": formBody\n }\n "),"cache":600000},// "body": formBody,
|
|
880
893
|
"data":{"__page":"${index + 1}"// "__total": `\${${props.name}.length}`,
|
|
881
894
|
// "__total": "${__tableItems.length}",
|
|
@@ -950,7 +963,7 @@ onEditItemSubmitScript="\n // let fieldValue = _.cloneDeep(event.data
|
|
|
950
963
|
// }
|
|
951
964
|
// });
|
|
952
965
|
// }
|
|
953
|
-
schema=getFormPaginationWrapper(props,schema,mode);return _context118.abrupt("return",schema);case 11:case"end":return _context118.stop();}}},_callee118);}));return _getForm.apply(this,arguments);}function getButtonActions(_x217,_x218){return _getButtonActions.apply(this,arguments);}function _getButtonActions(){_getButtonActions=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee119(props,mode){var actions,formId,dialogId,buttonNextId,formPaginationId,onSaveAndNewItemScript,onSaveAndCopyItemScript,dialogButtons,actionShowEditDialog,tableServiceId,onDeleteItemScript;return _regeneratorRuntime().wrap(function _callee119$(_context119){while(1){switch(_context119.prev=_context119.next){case 0:actions=[];formId=getComponentId("form",props.id);dialogId=getComponentId("dialog",props.id);buttonNextId=getComponentId("button_next",props.id);formPaginationId=getComponentId("form_pagination",props.id);if(!(mode=="new"||mode=="edit")){_context119.next=
|
|
966
|
+
schema=getFormPaginationWrapper(props,schema,mode);return _context118.abrupt("return",schema);case 11:case"end":return _context118.stop();}}},_callee118);}));return _getForm.apply(this,arguments);}function getButtonActions(_x217,_x218){return _getButtonActions.apply(this,arguments);}function _getButtonActions(){_getButtonActions=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee119(props,mode){var actions,formId,dialogId,buttonNextId,formPaginationId,parentFormData,amisVersion,onSaveAndNewItemScript,onSaveAndCopyItemScript,dialogButtons,actionShowEditDialog,tableServiceId,onDeleteItemScript;return _regeneratorRuntime().wrap(function _callee119$(_context119){while(1){switch(_context119.prev=_context119.next){case 0:actions=[];formId=getComponentId("form",props.id);dialogId=getComponentId("dialog",props.id);buttonNextId=getComponentId("button_next",props.id);formPaginationId=getComponentId("form_pagination",props.id);parentFormData="${__super.__super.__super.__super || {}}";amisVersion=getComparableAmisVersion();if(amisVersion<3.6){parentFormData="${__super.__super || {}}";}if(!(mode=="new"||mode=="edit")){_context119.next=28;break;}// let actionShowNewDialog = {
|
|
954
967
|
// "actionType": "dialog",
|
|
955
968
|
// "dialog": {
|
|
956
969
|
// "type": "dialog",
|
|
@@ -981,39 +994,40 @@ schema=getFormPaginationWrapper(props,schema,mode);return _context118.abrupt("re
|
|
|
981
994
|
// }
|
|
982
995
|
// };
|
|
983
996
|
onSaveAndNewItemScript="\n let scope = event.context.scoped;\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u65B0\u5EFA\u4E00\u6761\u7A7A\u767D\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n fieldValue.push({});\n doAction({\n \"componentId\": \"".concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");onSaveAndCopyItemScript="\n let scope = event.context.scoped;\n let __formId = \"".concat(formId,"\";\n // let newItem = JSON.parse(JSON.stringify(event.data));\n let newItem = scope.getComponentById(__formId).getValues();//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528event.data\uFF0C\u56E0\u4E3A\u5176\u62FF\u5230\u7684\u662F\u5F39\u51FA\u8868\u5355\u65F6\u7684\u521D\u59CB\u503C\uFF0C\u4E0D\u662F\u7528\u6237\u5B9E\u65F6\u586B\u5199\u7684\u6570\u636E\n let fieldValue = event.data.__tableItems;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5_.cloneDeep\uFF0C\u56E0\u4E3A\u7FFB\u9875form\u4E2D\u7528\u7684\u662Fevent.data.__tableItems\uFF0C\u76F4\u63A5\u53D8\u66F4\u5176\u503C\u5373\u53EF\u6539\u53D8\u8868\u5355\u4E2D\u7684\u503C\n // \u590D\u5236\u5F53\u524D\u9875\u6570\u636E\u5230\u65B0\u5EFA\u884C\u5E76\u4FDD\u5B58\u5230\u5B50\u8868\u7EC4\u4EF6\n fieldValue.push(newItem);\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n let buttonNextId = \"").concat(buttonNextId,"\";\n let __paginationServiceId = \"").concat(formPaginationId,"\";\n let __paginationData = scope.getComponentById(__paginationServiceId).getData();\n event.data.index = __paginationData.index;\n event.data.__page = fieldValue.length - 1;//\u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528Object.assign\u5426\u5219\uFF0Cevent.data\u4E2D\u4E0A\u5C42\u4F5C\u7528\u57DF\u6570\u636E\u4F1A\u4E22\u5931\n // \u89E6\u53D1\u7FFB\u9875\u6309\u94AE\u4E8B\u4EF6\uFF0C\u5B9E\u73B0\u4FDD\u5B58\u5F53\u524D\u9875\u6570\u636E\u5E76\u8DF3\u8F6C\u5230\u6700\u540E\u4E00\u884C\n scope.getComponentById(buttonNextId).props.dispatchEvent(\"click\", event.data);\n ");dialogButtons=[{"type":"button","label":"完成","actionType":"confirm","level":"primary"}];if(props.addable){// 有新增行权限时额外添加新增和复制按钮
|
|
984
|
-
dialogButtons=[{"type":"button","label":"新增","tooltip":"保存并新增一行,即保存当前行数据并新增一条空白行","onEvent":{"click":{"actions":[{"actionType":"custom","script":onSaveAndNewItemScript}]}}},{"type":"button","label":"复制","tooltip":"复制并新增一行,即保存当前行数据并复制当前行数据到新增行","onEvent":{"click":{"actions":[{"actionType":"custom","script":onSaveAndCopyItemScript}]}}},dialogButtons[0]];}_context119.t0=dialogId;_context119.t1="${uiSchema.fields.".concat(props.name,".label} \u660E\u7EC6");_context119.next=
|
|
997
|
+
dialogButtons=[{"type":"button","label":"新增","tooltip":"保存并新增一行,即保存当前行数据并新增一条空白行","onEvent":{"click":{"actions":[{"actionType":"custom","script":onSaveAndNewItemScript}]}}},{"type":"button","label":"复制","tooltip":"复制并新增一行,即保存当前行数据并复制当前行数据到新增行","onEvent":{"click":{"actions":[{"actionType":"custom","script":onSaveAndCopyItemScript}]}}},dialogButtons[0]];}_context119.t0=dialogId;_context119.t1="${uiSchema.fields.".concat(props.name,".label} \u660E\u7EC6");_context119.next=17;return getForm(props,mode,formId);case 17:_context119.t2=_context119.sent;_context119.t3=[_context119.t2];_context119.t4={// 这里必须加data数据映射,否则翻页功能中取__tableItems值时会乱,比如翻页编辑后会把上一页中没改过的字段值带过去
|
|
985
998
|
// 额外把华炎魔方主表记录ObjectForm中的字段值从record变量中映射到子表form中,因为子表lookup字段filtersFunction中可能依赖了主表记录中的字段值,比如“工作流规则”对象“时间触发器”字段中的“日期字段”字段
|
|
986
999
|
// 额外把global、uiSchema也映射过去,有可能要用,后续需要用到其他变更可以这里加映射
|
|
987
1000
|
// "&": "${record || {}}",
|
|
988
1001
|
// 换成从__super来映射上级表单数据是因为对象列表视图界面中每行下拉菜单中的编辑按钮弹出的表单中的子表所在作用域中没有record变量
|
|
989
1002
|
// 映射到中间变量__parentForm而不是直接用&展开映射是为了避免表单中字段名与作用域中变量重名
|
|
990
1003
|
// "__parentForm": "${__super.__super || {}}",
|
|
991
|
-
"__parentForm":mode=="new"?"$$":"${__super.__super || {}}",
|
|
1004
|
+
// "__parentForm": mode == "new" ? "$$" : "${__super.__super || {}}",
|
|
1005
|
+
"__parentForm":mode=="new"?"$$":parentFormData,"_master":"${_master}","global":"${global}","uiSchema":"${uiSchema}","index":"${index}",// "__tableItems": `\${${props.name}}`
|
|
992
1006
|
// 为了解决"弹出的dialog窗口中子表组件会影响页面布局界面中父作用域字段值",比如设计字段布局微页面中的设置分组功能,弹出的就是子表dialog
|
|
993
1007
|
// 所以这里使用json|toJson转一次,断掉event.data.__tableItems与上层任用域中props.name的联系
|
|
994
1008
|
// "__tableItems": `\${${props.name}|json|toJson}`
|
|
995
1009
|
"__tableItems":"${(".concat(props.name," || [])|json|toJson}")};_context119.t5=dialogButtons;_context119.t6={"confirm":{"actions":[{"actionType":"validate","componentId":formId},{"preventDefault":true,"expression":"${event.data.validateResult.error}"//触发表单校验结果会存入validateResult,amis 3.2不支持,高版本比如 3.5.3支持
|
|
996
1010
|
}]}};_context119.t7={"type":"dialog","id":_context119.t0,"title":_context119.t1,"body":_context119.t3,"size":"lg","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false,"data":_context119.t4,"actions":_context119.t5,"onEvent":_context119.t6};actionShowEditDialog={"actionType":"dialog","dialog":_context119.t7};if(props.dialog){Object.assign(actionShowEditDialog.dialog,props.dialog);}if(mode=="new"){"\n let newItem = {};\n if(event.data[\"".concat(props.name,"\"]){\n // let fieldValue = event.data.__tableItems;\n // \u8FD9\u91CC\u4E0D\u7528__tableItems\u662F\u56E0\u4E3A\u65B0\u5EFA\u7684\u65F6\u5019\u6CA1\u6709\u7FFB\u9875\uFF0C\u91CC\u9762\u6CA1\u6709\u4E5F\u4E0D\u9700\u8981\u8D70__tableItems\u53D8\u91CF\n // let fieldValue = _.clone(event.data[\"").concat(props.name,"\"]);\n let fieldValue = event.data[\"").concat(props.name,"\"];\n fieldValue.push(newItem);\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": fieldValue\n }\n });\n event.data.index = fieldValue.length - 1;\n }\n else{\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u6267\u884Cevent.data[\"").concat(props.name,"\"]=[newItem]\uFF0C\u6570\u636E\u57DF\u4F1A\u65AD\u6389\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": [newItem]\n }\n });\n event.data.index = 1;\n }\n ");// 新增行时不需要在弹出编辑表单前先加一行,因为会在编辑表单所在service初始化时判断到是新增就自动增加一行,因为这里拿不到event.data.__tableItems,也无法变更其值
|
|
997
1011
|
// actions = [actionNewLine, actionShowEditDialog];
|
|
998
|
-
actions=[actionShowEditDialog];}else if(mode=="edit"){actions=[actionShowEditDialog];}_context119.next=
|
|
1012
|
+
actions=[actionShowEditDialog];}else if(mode=="edit"){actions=[actionShowEditDialog];}_context119.next=42;break;case 28:if(!(mode=="readonly")){_context119.next=41;break;}_context119.t8="${uiSchema.fields.".concat(props.name,".label} \u660E\u7EC6");_context119.next=32;return getForm(props,"readonly");case 32:_context119.t9=_context119.sent;_context119.t10=[_context119.t9];_context119.t11=[];_context119.t12={// 这里必须加data数据映射,否则翻页功能中取__tableItems值时会乱,比如翻页编辑后会把上一页中没改过的字段值带过去
|
|
999
1013
|
// 额外把华炎魔方主表记录ObjectForm中的字段值从record变量中映射到子表form中,因为子表lookup字段filtersFunction中可能依赖了主表记录中的字段值,比如“工作流规则”对象“时间触发器”字段中的“日期字段”字段
|
|
1000
1014
|
// 额外把global、uiSchema也映射过去,有可能要用,后续需要用到其他变更可以这里加映射
|
|
1001
1015
|
// "&": "${record || {}}",
|
|
1002
1016
|
// 换成从__super来映射上级表单数据是因为对象列表视图界面中每行下拉菜单中的编辑按钮弹出的表单中的子表所在作用域中没有record变量
|
|
1003
1017
|
// 映射到中间变量__parentForm而不是直接用&展开映射是为了避免表单中字段名与作用域中变量重名
|
|
1004
1018
|
// "__parentForm": "${__super.__super || {}}",
|
|
1005
|
-
"__parentForm":
|
|
1019
|
+
"__parentForm":parentFormData,"global":"${global}","uiSchema":"${uiSchema}","index":"${index}",// "__tableItems": `\${${props.name}}`
|
|
1006
1020
|
// 为了解决"弹出的dialog窗口中子表组件会影响页面布局界面中父作用域字段值",比如设计字段布局微页面中的设置分组功能,弹出的就是子表dialog
|
|
1007
1021
|
// 所以这里使用json|toJson转一次,断掉event.data.__tableItems与上层任用域中props.name的联系
|
|
1008
1022
|
// "__tableItems": `\${${props.name}|json|toJson}`
|
|
1009
|
-
"__tableItems":"${(".concat(props.name," || [])|json|toJson}")};_context119.t13={"type":"dialog","title":_context119.t8,"body":_context119.t10,"size":"lg","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false,"actions":_context119.t11,"data":_context119.t12};_context119.t14={"actionType":"dialog","dialog":_context119.t13};actions=[_context119.t14];_context119.next=
|
|
1023
|
+
"__tableItems":"${(".concat(props.name," || [])|json|toJson}")};_context119.t13={"type":"dialog","title":_context119.t8,"body":_context119.t10,"size":"lg","showCloseButton":true,"showErrorMsg":true,"showLoading":true,"className":"app-popover","closeOnEsc":false,"actions":_context119.t11,"data":_context119.t12};_context119.t14={"actionType":"dialog","dialog":_context119.t13};actions=[_context119.t14];_context119.next=42;break;case 41:if(mode=="delete"){tableServiceId=getComponentId("table_service",props.id);onDeleteItemScript="\n // let fieldValue = event.data[\"".concat(props.name,"\"];\n let scope = event.context.scoped;\n let __wrapperServiceId = \"").concat(tableServiceId,"\";\n let wrapperService = scope.getComponentById(__wrapperServiceId);\n let wrapperServiceData = wrapperService.getData();\n // \u8FD9\u91CC\u4E0D\u53EF\u4EE5\u7528event.data[\"").concat(props.name,"\"]\u56E0\u4E3Aamis input talbe\u6709\u4E00\u5C42\u5355\u72EC\u7684\u4F5C\u7528\u57DF\uFF0C\u5176\u503C\u4F1A\u5EF6\u8FDF\u4E00\u62CD\n // \u8FD9\u91CC_.clone\u662F\u56E0\u4E3A\u5B57\u6BB5\u8BBE\u8BA1\u5E03\u5C40\u8BBE\u7F6E\u5206\u7EC4\u8FD9\u79CD\u5F39\u51FA\u7A97\u53E3\u4E2D\u7684\u5B50\u8868\u7EC4\u4EF6\uFF0C\u76F4\u63A5\u5220\u9664\u540E\uFF0C\u70B9\u53D6\u6D88\u65E0\u6CD5\u8FD8\u539F\n let lastestFieldValue = _.clone(wrapperServiceData[\"").concat(props.name,"\"]);\n lastestFieldValue.splice(event.data.index, 1);\n doAction({\n \"componentId\": \"").concat(props.id,"\",\n \"actionType\": \"setValue\",\n \"args\": {\n \"value\": lastestFieldValue\n }\n });\n ");actions=[// {
|
|
1010
1024
|
// "actionType": "deleteItem",
|
|
1011
1025
|
// "args": {
|
|
1012
1026
|
// "index": "${index+','}" //这里不加逗号后续会报错,语法是逗号分隔可以删除多行
|
|
1013
1027
|
// },
|
|
1014
1028
|
// "componentId": props.id
|
|
1015
1029
|
// },
|
|
1016
|
-
{"actionType":"custom","script":onDeleteItemScript}];}case
|
|
1030
|
+
{"actionType":"custom","script":onDeleteItemScript}];}case 42:return _context119.abrupt("return",actions);case 43:case"end":return _context119.stop();}}},_callee119);}));return _getButtonActions.apply(this,arguments);}function getButtonNew(_x219){return _getButtonNew.apply(this,arguments);}function _getButtonNew(){_getButtonNew=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee120(props){return _regeneratorRuntime().wrap(function _callee120$(_context120){while(1){switch(_context120.prev=_context120.next){case 0:_context120.next=2;return getButtonActions(props,"new");case 2:_context120.t0=_context120.sent;_context120.t1={"actions":_context120.t0};_context120.t2={"click":_context120.t1};return _context120.abrupt("return",{"label":"新增","type":"button","icon":"fa fa-plus","onEvent":_context120.t2,"level":"primary"});case 6:case"end":return _context120.stop();}}},_callee120);}));return _getButtonNew.apply(this,arguments);}function getButtonEdit(_x220,_x221){return _getButtonEdit.apply(this,arguments);}function _getButtonEdit(){_getButtonEdit=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee121(props,showAsInlineEditMode){return _regeneratorRuntime().wrap(function _callee121$(_context121){while(1){switch(_context121.prev=_context121.next){case 0:_context121.t0="fa fa-".concat(showAsInlineEditMode?"expand-alt":"pencil");_context121.next=3;return getButtonActions(props,"edit");case 3:_context121.t1=_context121.sent;_context121.t2={"actions":_context121.t1};_context121.t3={"click":_context121.t2};return _context121.abrupt("return",{"type":"button","label":"","icon":_context121.t0,"level":"link","onEvent":_context121.t3});case 7:case"end":return _context121.stop();}}},_callee121);}));return _getButtonEdit.apply(this,arguments);}function getButtonView(_x222){return _getButtonView.apply(this,arguments);}function _getButtonView(){_getButtonView=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee122(props){return _regeneratorRuntime().wrap(function _callee122$(_context122){while(1){switch(_context122.prev=_context122.next){case 0:_context122.next=2;return getButtonActions(props,"readonly");case 2:_context122.t0=_context122.sent;_context122.t1={"actions":_context122.t0};_context122.t2={"click":_context122.t1};return _context122.abrupt("return",{"type":"button","label":"","icon":"fa fa-expand-alt","level":"link","onEvent":_context122.t2});case 6:case"end":return _context122.stop();}}},_callee122);}));return _getButtonView.apply(this,arguments);}function getButtonDelete(_x223){return _getButtonDelete.apply(this,arguments);}function _getButtonDelete(){_getButtonDelete=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee123(props){return _regeneratorRuntime().wrap(function _callee123$(_context123){while(1){switch(_context123.prev=_context123.next){case 0:_context123.next=2;return getButtonActions(props,"delete");case 2:_context123.t0=_context123.sent;_context123.t1={"actions":_context123.t0};_context123.t2={"click":_context123.t1};return _context123.abrupt("return",{"type":"button","label":"","icon":"fa fa-trash-alt","level":"link","onEvent":_context123.t2});case 6:case"end":return _context123.stop();}}},_callee123);}));return _getButtonDelete.apply(this,arguments);}var getAmisInputTableSchema=/*#__PURE__*/function(){var _ref20=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee19(props){var serviceId,buttonsForColumnOperations,inlineEditMode,showAsInlineEditMode,showEditButton,buttonEditSchema,buttonViewSchema,buttonDeleteSchema,inputTableSchema,amis,isAnyFieldHasDependOn,schemaBody,footerToolbar,buttonNewSchema,headerToolbar,schema;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);}serviceId=getComponentId("table_service",props.id);buttonsForColumnOperations=[];inlineEditMode=props.inlineEditMode;showAsInlineEditMode=inlineEditMode&&props.editable;if(!props.editable){_context19.next=15;break;}showEditButton=true;if(showAsInlineEditMode){// 始终显示弹出子表表单按钮,如果需要判断只在有列被隐藏时才需要显示弹出表单按钮放开下面的if逻辑就好
|
|
1017
1031
|
showEditButton=true;// // inline edit模式下只在有列被隐藏时才需要显示编辑按钮
|
|
1018
1032
|
// if (props.columns && props.columns.length > 0 && props.columns.length < props.fields.length) {
|
|
1019
1033
|
// showEditButton = true;
|
|
@@ -1022,7 +1036,7 @@ showEditButton=true;// // inline edit模式下只在有列被隐藏时才需要
|
|
|
1022
1036
|
// showEditButton = false;
|
|
1023
1037
|
// }
|
|
1024
1038
|
}// 编辑时显示编辑按钮
|
|
1025
|
-
if(!showEditButton){_context19.next=13;break;}_context19.next=11;return getButtonEdit(props,showAsInlineEditMode);case 11:buttonEditSchema=_context19.sent;buttonsForColumnOperations.push(buttonEditSchema);case 13:_context19.next=19;break;case 15:_context19.next=17;return getButtonView(props);case 17:buttonViewSchema=_context19.sent;buttonsForColumnOperations.push(buttonViewSchema);case 19:if(!props.removable){_context19.next=24;break;}_context19.next=22;return getButtonDelete(props);case 22:buttonDeleteSchema=_context19.sent;buttonsForColumnOperations.push(buttonDeleteSchema);case 24:_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=32;return getInputTableColumns(props);case 32:_context19.t6=_context19.sent;_context19.t7=props.strictMode;_context19.t8=props.tableClassName;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":_context19.t7,"showTableAddBtn":false,"showFooterAddBtn":false,"className":_context19.t8};if(buttonsForColumnOperations.length){inputTableSchema.columns.push({"name":"__op__","type":"operation","buttons":buttonsForColumnOperations,"width":buttonsForColumnOperations.length>1?"
|
|
1039
|
+
if(!showEditButton){_context19.next=13;break;}_context19.next=11;return getButtonEdit(props,showAsInlineEditMode);case 11:buttonEditSchema=_context19.sent;buttonsForColumnOperations.push(buttonEditSchema);case 13:_context19.next=19;break;case 15:_context19.next=17;return getButtonView(props);case 17:buttonViewSchema=_context19.sent;buttonsForColumnOperations.push(buttonViewSchema);case 19:if(!props.removable){_context19.next=24;break;}_context19.next=22;return getButtonDelete(props);case 22:buttonDeleteSchema=_context19.sent;buttonsForColumnOperations.push(buttonDeleteSchema);case 24:_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=32;return getInputTableColumns(props);case 32:_context19.t6=_context19.sent;_context19.t7=props.strictMode;_context19.t8=props.tableClassName;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":_context19.t7,"showTableAddBtn":false,"showFooterAddBtn":false,"className":_context19.t8};if(buttonsForColumnOperations.length){inputTableSchema.columns.push({"name":"__op__","type":"operation","buttons":buttonsForColumnOperations,"width":buttonsForColumnOperations.length>1?"60px":"20px"});}if(showAsInlineEditMode){inputTableSchema.needConfirm=false;}amis=props["input-table"]||props.amis;//额外支持"input-table"代替amis属性,是因为在字段yml文件中用amis作为key不好理解
|
|
1026
1040
|
if(amis){// 支持配置amis属性重写或添加最终生成的input-table中任何属性。
|
|
1027
1041
|
delete amis.id;//如果steedos-input-table组件配置了amis.id属性,会造成新建编辑行功能不生效
|
|
1028
1042
|
Object.assign(inputTableSchema,amis);}isAnyFieldHasDependOn=(props.fields||[]).find(function(item){return item.depend_on;});if(isAnyFieldHasDependOn){// 有任意一个子字段有depend_on属性时,强制设置禁用静态模式
|
|
@@ -1168,8 +1182,8 @@ spaceId=amisLib.getSteedosAuth().tenantId;return _context35.abrupt("return",{"ty
|
|
|
1168
1182
|
},{"name":"judge","label":"judge","classNameExpr":"<%= data.judge == '已核准' ? 'text-green-600' : (data.judge == '已驳回' ? 'text-[red]' : '') %>"}]});case 1:case"end":return _context36.stop();}}},_callee36);}));return function getInstanceApprovalHistory(){return _ref37.apply(this,arguments);};}();/*
|
|
1169
1183
|
* @Author: baozhoutao@steedos.com
|
|
1170
1184
|
* @Date: 2022-09-07 16:20:45
|
|
1171
|
-
* @LastEditors:
|
|
1172
|
-
* @LastEditTime: 2023-
|
|
1185
|
+
* @LastEditors: liaodaxue
|
|
1186
|
+
* @LastEditTime: 2023-12-29 16:06:35
|
|
1173
1187
|
* @Description:
|
|
1174
1188
|
*/var getSelectOptions=function getSelectOptions(field){var options=[];_$1.each(field.options.split("\n"),function(item){var foo=item.split(":");if(foo.length==2){options.push({label:foo[0],value:foo[1]});}else{options.push({label:item,value:item});}});return options;};var isOpinionField$1=function isOpinionField$1(field){var field_formula=field.formula;return(field_formula===null||field_formula===void 0?void 0:field_formula.indexOf("{traces."))>-1||(field_formula===null||field_formula===void 0?void 0:field_formula.indexOf("{signature.traces."))>-1||(field_formula===null||field_formula===void 0?void 0:field_formula.indexOf("{yijianlan:"))>-1||(field_formula===null||field_formula===void 0?void 0:field_formula.indexOf("{\"yijianlan\":"))>-1||(field_formula===null||field_formula===void 0?void 0:field_formula.indexOf("{'yijianlan':"))>-1;};var getFieldEditTpl=/*#__PURE__*/function(){var _ref38=_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee37(field,label){var tpl,useTpl,orgTpl,labelField,_iterator2,_step2,sField,column;return _regeneratorRuntime().wrap(function _callee37$(_context37){while(1){switch(_context37.prev=_context37.next){case 0:tpl={label:label===true?field.name:false,name:field.code,mode:"horizontal",className:"m-none p-none form-control",disabled:field.permission!=="editable",required:field.is_required};if(!isOpinionField$1(field)){_context37.next=6;break;}tpl.type='input-group';tpl.body=[{"type":"textarea","inputClassName":"b-r-none p-r-none","name":"input-group","id":"yijian-".concat(field.code),"minRows":3,"maxRows":20,"mode":"normal","size":"full"},{"type":"button","label":"签批","level":"link","id":"u:2592111d236d","block":false,"onEvent":{"click":{"actions":[{"actionType":"dialog","dialog":{"type":"dialog","title":"".concat(field.name||field.code),"body":[{"type":"form","title":"表单","body":[{"label":"","type":"textarea","name":"yijian","id":"u:1d5a60623000","minRows":6,"maxRows":20,"mode":"normal","placeholder":"请填写意见"},{"type":"grid","columns":[{"body":[{"type":"button","label":"已阅","onEvent":{"click":{"actions":[{"componentId":"u:1d5a60623000","args":{"valueInput":"已阅","value":"已阅"},"actionType":"setValue"}]}},"id":"u:13498f8d2882","level":"link","className":"m-r"},{"type":"button","label":"已办","onEvent":{"click":{"actions":[{"componentId":"u:1d5a60623000","args":{"valueInput":"已办","value":"已办"},"actionType":"setValue"}]}},"id":"u:cfa2e3c54a21","level":"link","className":"m-r"},{"type":"button","label":"同意","onEvent":{"click":{"actions":[{"componentId":"u:1d5a60623000","args":{"valueInput":"同意","value":"同意"},"actionType":"setValue"}]}},"id":"u:06e0037dcd23","level":"link","className":"m-r"},{"type":"button","label":"其他常用意见","onEvent":{"click":{"actions":[]}},"id":"u:3a781bc550a2","level":"link","className":"m-r"}],"id":"u:3def7a5b7cd5"}],"id":"u:ecbefa51b638"}],"id":"u:dd32ae67b5c7"}],"id":"u:a5d06d3a61b9","closeOnEsc":false,"closeOnOutside":false,"showCloseButton":true,"actions":[{"type":"button","label":"确认","onEvent":{"click":{"actions":[{"componentId":"yijian-".concat(field.code),"args":{"valueInput":"${yijian}","value":"${yijian}"},"actionType":"setValue"},{"componentId":"","args":{},"actionType":"closeDialog"}]}},"id":"u:87e22efe707a","level":"primary"},{"type":"button","label":"取消","onEvent":{"click":{"actions":[{"componentId":"","args":{},"actionType":"closeDialog"}]}},"id":"u:d0e6550a848e"}]}}],"weight":0}},"className":"instance-sign-text-btn"}];_context37.next=89;break;case 6:_context37.t0=field.type;_context37.next=_context37.t0==="input"?9:_context37.t0==="number"?11:_context37.t0==="date"?13:_context37.t0==="dateTime"?17:_context37.t0==="checkbox"?21:_context37.t0==="email"?23:_context37.t0==="url"?26:_context37.t0==="password"?29:_context37.t0==="select"?32:_context37.t0==="user"?35:_context37.t0==="group"?40:_context37.t0==="radio"?45:_context37.t0==="multiSelect"?48:_context37.t0==="odata"?51:_context37.t0==="html"?57:_context37.t0==="table"?59:_context37.t0==="section"?87:89;break;case 9:if(field.is_textarea){tpl.type="textarea";}else{tpl.type="input-text";}return _context37.abrupt("break",89);case 11:tpl.type="input-number";return _context37.abrupt("break",89);case 13:tpl.type="input-date";tpl.inputFormat="YYYY-MM-DD";tpl.format='YYYY-MM-DDT00:00:00.000[Z]';return _context37.abrupt("break",89);case 17:tpl.type="input-datetime";tpl.inputFormat="YYYY-MM-DD HH:mm";tpl.format='YYYY-MM-DDTHH:mm:ss.SSSZ';return _context37.abrupt("break",89);case 21:tpl.type="checkbox";return _context37.abrupt("break",89);case 23:tpl.type="input-email";tpl.validations={isEmail:true};return _context37.abrupt("break",89);case 26:tpl.type="input-url";tpl.validations={isUrl:true};return _context37.abrupt("break",89);case 29:tpl.type="input-password";tpl.showCounter=true;return _context37.abrupt("break",89);case 32:tpl.type="select";tpl.options=getSelectOptions(field);return _context37.abrupt("break",89);case 35:_context37.next=37;return amisLib.lookupToAmis({name:field.code,label:field.name,reference_to:"space_users",reference_to_field:'user',multiple:field.is_multiselect},false,{});case 37:useTpl=_context37.sent;Object.assign(tpl,useTpl);return _context37.abrupt("break",89);case 40:_context37.next=42;return amisLib.lookupToAmis({name:field.code,label:field.name,reference_to:"organizations",multiple:field.is_multiselect},false,{});case 42:orgTpl=_context37.sent;Object.assign(tpl,orgTpl);return _context37.abrupt("break",89);case 45:tpl.type="radios";tpl.options=getSelectOptions(field);return _context37.abrupt("break",89);case 48:tpl.type="checkboxes";tpl.options=getSelectOptions(field);return _context37.abrupt("break",89);case 51:labelField=field.formula.substr(1,field.formula.length-2);labelField=labelField.substr(labelField.indexOf(".")+1);tpl.type="select";tpl.multiple=field.is_multiselect;// tpl.labelField = labelField;
|
|
1175
1189
|
// tpl.valueField = "_value";
|
|
@@ -1201,8 +1215,9 @@ style:{borderLeftColor:"#000000",borderTopColor:"#000000",borderRightColor:"#000
|
|
|
1201
1215
|
// // }
|
|
1202
1216
|
// ],
|
|
1203
1217
|
// }
|
|
1204
|
-
};_context46.t18={"url":"${context.rootUrl}/graphql","method":"post","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"messages":{},"requestAdaptor":"\n
|
|
1205
|
-
"context":"${context}",
|
|
1218
|
+
};_context46.t18={"url":"${context.rootUrl}/graphql","method":"post","headers":{"Authorization":"Bearer ${context.tenantId},${context.authToken}"},"messages":{},"requestAdaptor":"\n api.data = {\n query: `\n {\n instance: instances__findOne(id:\"".concat(instance._id,"\"){\n related_instances: related_instances__expand{\n _id,\n name\n }\n }\n }\n `\n }\n return api;\n "),"adaptor":"\n payload.data = {\n related_instances: payload.data.instance.related_instances\n };\n return payload;\n ","data":{// "&": "$$",
|
|
1219
|
+
// "context": "${context}",
|
|
1220
|
+
"judge":"${new_judge}"}};return _context46.abrupt("return",{type:"page",name:"instancePage",className:"steedos-amis-instance-view",bodyClassName:"overflow-y-auto h-full","title":_context46.t0,"css":_context46.t1,body:_context46.t13,id:"u:63849ea39e12",messages:_context46.t14,pullRefresh:_context46.t15,regions:_context46.t16,onEvent:_context46.t17,initApi:_context46.t18,initFetch:true});case 34:case"end":return _context46.stop();}}},_callee46);}));return function getFlowFormSchema(_x266,_x267){return _ref47.apply(this,arguments);};}();/*
|
|
1206
1221
|
* @Author: baozhoutao@steedos.com
|
|
1207
1222
|
* @Date: 2022-10-08 16:26:26
|
|
1208
1223
|
* @LastEditors: baozhoutao@steedos.com
|