@steedos/standard-object-database 2.7.0-beta.24 → 2.7.0-beta.25

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.
Files changed (73) hide show
  1. package/main/default/objectTranslations/object_fields.zh-CN/object_fields.zh-CN.objectTranslation.yml +3 -3
  2. package/main/default/objectTranslations/objects.en/objects.en.objectTranslation.yml +1 -39
  3. package/main/default/objectTranslations/objects.zh-CN/objects.zh-CN.objectTranslation.yml +6 -45
  4. package/main/default/objects/object_actions/object_actions.object.yml +0 -8
  5. package/main/default/objects/object_fields/buttons/standard_new.button.yml +4 -0
  6. package/main/default/objects/object_fields/fields/is_customize.field.yml +1 -0
  7. package/main/default/objects/object_fields/fields/sortable.field.yml +1 -0
  8. package/main/default/objects/object_fields/object_fields.object.yml +2 -47
  9. package/main/default/objects/object_layouts/buttons/createDefaultRecordView.button.js +3 -2
  10. package/main/default/objects/objects/fields/actions.field.yml +2 -1
  11. package/main/default/objects/objects/fields/app_unique_id.field.yml +2 -1
  12. package/main/default/objects/objects/fields/app_version.field.yml +2 -1
  13. package/main/default/objects/objects/fields/compactLayouts.field.yml +8 -20
  14. package/main/default/objects/objects/fields/custom.field.yml +2 -1
  15. package/main/default/objects/objects/fields/datasource.field.yml +3 -2
  16. package/main/default/objects/objects/fields/description.field.yml +1 -1
  17. package/main/default/objects/objects/fields/enable_api.field.yml +2 -2
  18. package/main/default/objects/objects/fields/enable_chatter.field.yml +2 -2
  19. package/main/default/objects/objects/fields/enable_dataloader.field.yml +2 -2
  20. package/main/default/objects/objects/fields/enable_enhanced_lookup.field.yml +3 -2
  21. package/main/default/objects/objects/fields/enable_events.field.yml +2 -2
  22. package/main/default/objects/objects/fields/enable_files.field.yml +2 -2
  23. package/main/default/objects/objects/fields/enable_inline_edit.field.yml +2 -2
  24. package/main/default/objects/objects/fields/enable_instances.field.yml +2 -2
  25. package/main/default/objects/objects/fields/enable_lock_detail.field.yml +5 -3
  26. package/main/default/objects/objects/fields/enable_notes.field.yml +2 -2
  27. package/main/default/objects/objects/fields/enable_search.field.yml +2 -2
  28. package/main/default/objects/objects/fields/enable_share.field.yml +2 -2
  29. package/main/default/objects/objects/fields/enable_split.field.yml +3 -2
  30. package/main/default/objects/objects/fields/enable_tasks.field.yml +1 -1
  31. package/main/default/objects/objects/fields/enable_tree.field.yml +3 -2
  32. package/main/default/objects/objects/fields/enable_workflow.field.yml +6 -3
  33. package/main/default/objects/objects/fields/extend.field.yml +3 -2
  34. package/main/default/objects/objects/fields/field_groups.$.collapsed.field.yml +1 -1
  35. package/main/default/objects/objects/fields/field_groups.$.group_name.field.yml +1 -1
  36. package/main/default/objects/objects/fields/field_groups.$.visible_on.field.yml +1 -1
  37. package/main/default/objects/objects/fields/field_groups.field.yml +2 -1
  38. package/main/default/objects/objects/fields/fields.field.yml +2 -1
  39. package/main/default/objects/objects/fields/fields_serial_number.field.yml +2 -1
  40. package/main/default/objects/objects/fields/icon.field.yml +4 -0
  41. package/main/default/objects/objects/fields/in_development.field.yml +1 -1
  42. package/main/default/objects/objects/fields/is_customize.field.yml +1 -1
  43. package/main/default/objects/objects/fields/is_deleted.field.yml +2 -2
  44. package/main/default/objects/objects/fields/is_enable.field.yml +5 -2
  45. package/main/default/objects/objects/fields/is_system.field.yml +1 -1
  46. package/main/default/objects/objects/fields/list_views.field.yml +2 -1
  47. package/main/default/objects/objects/fields/owner.field.yml +2 -1
  48. package/main/default/objects/objects/fields/permission_set.field.yml +2 -1
  49. package/main/default/objects/objects/fields/relatedList.field.yml +2 -1
  50. package/main/default/objects/objects/fields/reload_time.field.yml +2 -1
  51. package/main/default/objects/objects/fields/sidebar.field.yml +2 -1
  52. package/main/default/objects/objects/fields/table_name.field.yml +3 -2
  53. package/main/default/objects/objects/fields/triggers.field.yml +2 -1
  54. package/main/default/objects/objects/fields/version.field.yml +2 -1
  55. package/main/default/objects/objects/listviews/all.listview.yml +0 -1
  56. package/main/default/objects/objects/listviews/customize.listview.yml +0 -1
  57. package/main/default/objects/objects/listviews/deleted.listview.yml +0 -1
  58. package/main/default/objects/objects/listviews/system.listview.yml +0 -1
  59. package/main/default/objects/objects/objects.object.yml +5 -37
  60. package/main/default/pages/object_form.page.amis.json +1 -6
  61. package/main/default/server/object_fields.object.js +4 -3
  62. package/main/default/server/objects.core.js +4 -4
  63. package/package.json +4 -4
  64. package/main/default/objects/objects/buttons/createDefaultRecordView.button.js +0 -3
  65. package/main/default/objects/objects/buttons/createDefaultRecordView.button.yml +0 -5
  66. package/main/default/server/datasources.action.js +0 -51
  67. package/main/default/server/object_actions.action.js +0 -60
  68. package/main/default/server/object_fields.action.js +0 -128
  69. package/main/default/server/object_layouts.action.js +0 -31
  70. package/main/default/server/object_layouts.layouts.action.js +0 -80
  71. package/main/default/server/object_listviews.action.js +0 -116
  72. package/main/default/server/object_validation_rules.action.js +0 -34
  73. package/main/default/server/objects.action.js +0 -190
@@ -1,116 +0,0 @@
1
- /*
2
- * @Author: baozhoutao@steedos.com
3
- * @Date: 2022-03-28 09:35:34
4
- * @LastEditors: liaodaxue
5
- * @LastEditTime: 2024-02-18 14:56:30
6
- * @Description:
7
- */
8
- module.exports = {
9
- customize: function (object_name, record_id, fields) {
10
- let doc = Creator.odata.get(object_name, record_id);
11
- if(!doc.columns || !doc.columns.length){
12
- const objectName_label = record_id.split('.');
13
- let columns = Creator.getListView(objectName_label[0], objectName_label[1], true).columns;
14
- doc.columns = columns || [];
15
- }
16
- doc.columns = doc.columns.map((item)=>{
17
- if(typeof item === 'string'){
18
- return { field: item }
19
- }
20
- return item;
21
- })
22
- var newRecord = _.pick(doc, Creator.getObjectFieldsName(object_name));
23
- delete newRecord.is_system;
24
- delete newRecord._id;
25
- delete newRecord.record_permissions;
26
- newRecord.from_code_id = record_id;
27
- Creator.odata.insert(object_name, newRecord, function(result, error){
28
- if(result){
29
- FlowRouter.go(`/app/-/${object_name}/view/${result._id}`)
30
- }
31
- });
32
-
33
- },
34
- customizeVisible: function(object_name, record_id, record_permissions, data){
35
- var record = data && data.record;
36
- return Creator.baseObject.actions.standard_new.visible() && record.is_system;
37
- },
38
- copy: function(object_name, record_id){
39
- let newRecord = null; // _.clone(Creator.getListView(Session.get("object_name"), record_id));
40
- if(!newRecord){
41
- let doc = Creator.odata.get(object_name, record_id);
42
- if(!doc.columns || !doc.columns.length){
43
- const objectName_label = record_id.split('.');
44
- let columns = Creator.getListView(objectName_label[0], objectName_label[1], true).columns;
45
- doc.columns = columns || [];
46
- }
47
- doc.columns = doc.columns.map((item)=>{
48
- if(typeof item === 'string'){
49
- return { field: item }
50
- }
51
- return item;
52
- })
53
- newRecord = _.pick(doc, Creator.getObjectFieldsName(object_name));
54
- }
55
- delete newRecord.is_system;
56
- delete newRecord._id;
57
- delete newRecord.name;
58
- delete newRecord.from_code_id;
59
- delete newRecord.label;
60
- delete newRecord.owner;
61
-
62
- var data = newRecord || { _filters_type_controller: 'conditions' };
63
- //数据格式转换
64
- if (data) {
65
- data.sort = lodash.map(data.sort, (item) => {
66
- return `${item.field_name}:${item.order || 'asc'}`
67
- });
68
-
69
- data.searchable_fields = lodash.map(data.searchable_fields, 'field');
70
-
71
- if (data.filters && lodash.isString(data.filters)) {
72
- try {
73
- data.filters = JSON.parse(data.filters);
74
- }catch(e){}
75
- }
76
-
77
- if (data.filters && lodash.isString(data.filters)) {
78
- data._filters_type_controller = 'function';
79
- } else {
80
- data._filters_type_controller = 'conditions'
81
- }
82
-
83
- if (data._filters_type_controller === 'conditions') {
84
- data._filters_conditions = window.amisConvert.filtersToConditions(data.filters || []);
85
- } else {
86
- data._filters_function = data.filters;
87
- }
88
- }
89
- Steedos.Page.Form.StandardNew.render(Session.get("app_id"), 'object_listviews', t("creator_list_copy_list_view"), { defaultData:data }, {});
90
- },
91
- copyVisible: function(object_name, record_id, record_permissions, data){
92
- return true;
93
- },
94
- showDesign: function (object_name, record_id) {
95
- document.location = Steedos.absoluteUrl(`/api/amisListviewDesign?id=${record_id}&object=${this.record.object_name}&assetUrls=${Builder.settings.assetUrls}&locale=${Builder.settings.locale}`);
96
- },
97
- showDesignVisible: function (object_name, record_id, record_permissions) {
98
- var perms= {};
99
- var record = Creator.getObjectRecord(object_name, record_id);
100
- if(!record){
101
- return false;
102
- }
103
- if(!record.enable_amis_schema){
104
- return false;
105
- }
106
- if (record_permissions) {
107
- perms = record_permissions;
108
- } else {
109
- record_permissions = Creator.getRecordPermissions(object_name, record, Meteor.userId());
110
- if (record_permissions) {
111
- perms = record_permissions;
112
- }
113
- }
114
- return perms["allowEdit"];
115
- }
116
- }
@@ -1,34 +0,0 @@
1
- const _ = require("underscore");
2
- module.exports = {
3
- customize: function (object_name, record_id, fields) {
4
- var doc = Creator.odata.get(object_name, record_id);
5
- var newDoc = {}
6
- _.each(Creator.getObject(object_name).fields, function(v, k){
7
- if(_.has(doc, k)){
8
- newDoc[k] = doc[k]
9
- }
10
- })
11
- delete newDoc.is_system;
12
-
13
- let docName = doc.name
14
- let docObjectName = doc.object_name
15
-
16
- Creator.odata.insert(object_name, Object.assign(newDoc, {name: docName, object_name: docObjectName}), function(result, error){
17
- if(result){
18
- if(Session.get("object_name") === 'object_validation_rules'){
19
- FlowRouter.go(`/app/-/${object_name}/view/${result._id}`)
20
- }else{
21
- href = Creator.getObjectUrl(object_name, result._id);
22
- window.open(href,'_blank','width=800, height=600, left=50, top= 50, toolbar=no, status=no, menubar=no, resizable=yes, scrollbars=yes')
23
- }
24
- }
25
- });
26
- },
27
- customizeVisible: function(object_name, record_id, record_permissions, data){
28
- var record = data && data.record;
29
- if(!record){
30
- record = {}
31
- }
32
- return Creator.baseObject.actions.standard_new.visible() && record.is_system;
33
- }
34
- }
@@ -1,190 +0,0 @@
1
- module.exports = {
2
- design_field_layout: function (object_name, record_id, item_element) {
3
- var record = this.record || Creator.getObjectById(record_id);
4
- if (record && record.record) {
5
- record = record.record;
6
- }
7
- if (!record) {
8
- return toastr.error("未找到记录");
9
- }
10
-
11
- window.open(Creator.getRelativeUrl("/api/page/view/design_field_layout?designObjectName=" + record.name));
12
- },
13
- design_field_layoutVisible: function (object_name, record_id, record_permissions, data) {
14
- var record = data && data.record;
15
- if (!Creator.isSpaceAdmin()) {
16
- return false
17
- }
18
- if (!record) {
19
- record = Creator.odata.get("objects", record_id, "is_deleted");
20
- }
21
-
22
- if (record && !record.is_deleted && record.name != 'users' && record.created) {
23
- return true;
24
- }
25
- },
26
- show_object: function (object_name, record_id, item_element) {
27
- var record = this.record || Creator.getObjectById(record_id);
28
- if(record && record.record){
29
- record = record.record;
30
- }
31
- if(!record){
32
- return toastr.error("未找到记录");
33
- }
34
-
35
- if(record.is_enable === false){
36
- return toastr.warning("请先启动对象");
37
- }
38
-
39
- if(record.datasource && record.datasource != 'default' && record.datasource != 'meteor'){
40
- var datasource = Creator.odata.get('datasources', record.datasource, 'is_enable');
41
- if(!datasource){
42
- return toastr.error("未找到数据源");
43
- }
44
- if(!datasource.is_enable){
45
- return toastr.warning("请先启动数据源");
46
- }
47
- }
48
- window.open(Creator.getRelativeUrl("/app/admin/" + (record.name || this.record.name)));
49
- // SteedosUI.Object.getUISchema(record.name).then((res)=>{
50
- // if(res.idFieldName){
51
- // window.open(Creator.getRelativeUrl("/app/-/" + record.name));
52
- // }else{
53
- // return toastr.error("请配置主键字段");
54
- // }
55
- // }).catch(function(err){
56
- // return window.toastr.error(err.message);
57
- // })
58
-
59
-
60
-
61
- // var allViews = Creator.odata.query('object_listviews', { $select: '_id', $filter: `((object_name eq '${record.name}') and (name eq 'all'))` }, true);
62
- // if(allViews && allViews.length > 0){
63
- // Steedos.openWindow(Creator.getRelativeUrl("/app/-/" + record.name + "/grid/" + allViews[0]._id))
64
- // }else{
65
- // Steedos.openWindow(Creator.getRelativeUrl("/app/-/" + record.name + "/grid/all"))
66
- // }
67
- },
68
- show_objectVisible: function(object_name, record_id, record_permissions, data){
69
- var record = data && data.record;
70
- if(!Creator.isSpaceAdmin()){
71
- return false
72
- }
73
- if(!record){
74
- record = Creator.odata.get("objects", record_id, "is_deleted");
75
- }
76
-
77
- if(record && !record.is_deleted && record.name != 'users'){
78
- return true;
79
- }
80
- },
81
- copy_odata: function (object_name, record_id, item_element) {
82
- var clipboard, o_name, path, record;
83
- record = this.record || Creator.getObjectById(record_id);
84
- //enable_api 属性未开放
85
- if ((record != null ? record.enable_api : void 0) || true) {
86
- o_name = record != null ? record.name : void 0;
87
- path = SteedosOData.getODataPath(Session.get("spaceId"), o_name);
88
- item_element.attr('data-clipboard-text', path);
89
- if (!item_element.attr('data-clipboard-new')) {
90
- clipboard = new Clipboard(item_element[0]);
91
- item_element.attr('data-clipboard-new', true);
92
- clipboard.on('success', function (e) {
93
- return toastr.success('复制成功');
94
- });
95
- clipboard.on('error', function (e) {
96
- toastr.error('复制失败');
97
- return console.error("e");
98
- });
99
- if (item_element[0].tagName === 'LI' || item_element.hasClass('view-action')) {
100
- return item_element.trigger("click");
101
- }
102
- }
103
- } else {
104
- return toastr.error('复制失败: 未启用API');
105
- }
106
- },
107
- copy_odataVisible: function(object_name, record_id, record_permissions, data){
108
- var record = data && data.record;
109
- if(!Creator.isSpaceAdmin()){
110
- return false
111
- }
112
- if(!record){
113
- record = Creator.odata.get("objects", record_id, "is_deleted");
114
- }
115
- if(record && !record.is_deleted){
116
- return true;
117
- }
118
- },
119
- // delete_object: function (object_name, record_id, fields) {
120
- // var record = Creator.getObjectRecord(object_name, record_id, 'name');
121
- // SteedosUI.showModal(stores.ComponentRegistry.components.ObjectForm, {
122
- // name: "remove-object",
123
- // title: '删除对象',
124
- // width: '540px',
125
- // layout: 'horizontal',
126
- // modalProps: {
127
- // width: "540px",
128
- // style: {
129
- // width: "540px",
130
- // maxWidth: "540px",
131
- // minWidth: "480px"
132
- // }
133
- // },
134
- // initialValues:{
135
- // md: "删除一个自定义对象进行以下操作:\n\n* 删除对象的字段和按钮\n* 删除对象的选项卡和列表视图\n* 删除对象的页面布局\n* 删除对象的权限\n* 删除对象的验证规则\n* 删除对象的限制规则\n* 删除对象的共享规则\n* 删除使用该对象的流程映射\n* 删除使用该对象的开放流程\n* 删除使用该对象的页面。\n\n\\\n"
136
- // },
137
- // objectSchema: {
138
- // fields: {
139
- // md: {
140
- // type: 'html',
141
- // label: ' ',
142
- // is_wide: true,
143
- // readonly: true,
144
- // }
145
- // }
146
- // },
147
- // onFinish: async (values = {}) => {
148
- // return new Promise((resolve, reject) => {
149
- // window.$("body").addClass("loading");
150
- // Creator.odata.delete(object_name, record_id, function() {
151
- // var info= t('creator_record_remove_swal_suc');
152
- // window.toastr.success(info);
153
- // resolve(true)
154
- // if(FlowRouter.current().route.path.endsWith("/:record_id")){
155
- // var app_id = Session.get("app_id")
156
- // var object_name = Session.get("object_name")
157
- // FlowRouter.go(Creator.getListViewUrl(object_name, app_id, 'all'));
158
- // }else{
159
- // FlowRouter.reload();
160
- // }
161
- // window.$("body").removeClass("loading");
162
-
163
- // }, function(error) {
164
- // toastr.error(error.message);
165
- // window.$("body").removeClass("loading");
166
- // reject(false);
167
- // });
168
- // })
169
- // }
170
- // }, null, { iconPath: '/assets/icons' })
171
- // },
172
- delete_objectVisible: function(object_name, record_id, record_permissions, data){
173
- var record = data && data.record;
174
- if(!Creator.isSpaceAdmin()){
175
- return false
176
- }
177
- if(!record){
178
- record = Creator.odata.get("objects", record_id, "is_deleted");
179
- }
180
- if(record.is_system){
181
- return false;
182
- }
183
- if(record && !record.is_deleted){
184
- return Creator.baseObject.actions.standard_delete.visible.apply(this, arguments);
185
- }
186
- }
187
- // export: function(object_name, record_id, fields){
188
- // return window.open(Steedos.absoluteUrl("/api/v4/objects/" + record_id + "/export_yml"), '_blank');
189
- // }
190
- }