@steedos/service-ui 3.0.0-beta.9 → 3.0.0-beta.92
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.
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
const objectql_1 = require("@steedos/objectql");
|
|
5
|
-
const express = require(
|
|
5
|
+
const express = require("express");
|
|
6
6
|
const router = express.Router();
|
|
7
|
-
const auth = require(
|
|
7
|
+
const auth = require("@steedos/auth");
|
|
8
|
+
const _ = require("lodash");
|
|
8
9
|
const callObjectServiceAction = function (actionName, userSession, data) {
|
|
9
10
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
11
|
const broker = (0, objectql_1.getSteedosSchema)().broker;
|
|
@@ -14,12 +15,20 @@ const callObjectServiceAction = function (actionName, userSession, data) {
|
|
|
14
15
|
const getObjectName = function (objectServiceName) {
|
|
15
16
|
return objectServiceName.substring(1);
|
|
16
17
|
};
|
|
17
|
-
router.get(
|
|
18
|
+
router.get("/service/api/:objectServiceName/fields", auth.requireAuthentication, function (req, res) {
|
|
18
19
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
20
|
const userSession = req.user;
|
|
20
21
|
try {
|
|
21
22
|
const { objectServiceName } = req.params;
|
|
23
|
+
const { fields } = req.query;
|
|
22
24
|
const result = yield callObjectServiceAction(`objectql.getFields`, userSession, { objectName: getObjectName(objectServiceName) });
|
|
25
|
+
if (fields) {
|
|
26
|
+
const result2 = {};
|
|
27
|
+
_.each(result, function (item, k) {
|
|
28
|
+
return (result2[k] = _.pick(item, _.split(fields, ",")));
|
|
29
|
+
});
|
|
30
|
+
return res.status(200).send(result2);
|
|
31
|
+
}
|
|
23
32
|
res.status(200).send(result);
|
|
24
33
|
}
|
|
25
34
|
catch (error) {
|
|
@@ -27,7 +36,7 @@ router.get('/service/api/:objectServiceName/fields', auth.requireAuthentication,
|
|
|
27
36
|
}
|
|
28
37
|
});
|
|
29
38
|
});
|
|
30
|
-
router.get(
|
|
39
|
+
router.get("/service/api/:objectServiceName/getUserObjectPermission", auth.requireAuthentication, function (req, res) {
|
|
31
40
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
32
41
|
const userSession = req.user;
|
|
33
42
|
try {
|
|
@@ -40,14 +49,14 @@ router.get('/service/api/:objectServiceName/getUserObjectPermission', auth.requi
|
|
|
40
49
|
}
|
|
41
50
|
});
|
|
42
51
|
});
|
|
43
|
-
router.get(
|
|
52
|
+
router.get("/service/api/:objectServiceName/recordPermissions/:recordId", auth.requireAuthentication, function (req, res) {
|
|
44
53
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
45
54
|
const userSession = req.user;
|
|
46
55
|
try {
|
|
47
56
|
const { objectServiceName, recordId } = req.params;
|
|
48
57
|
const result = yield callObjectServiceAction(`objectql.getRecordPermissionsById`, userSession, {
|
|
49
58
|
objectName: getObjectName(objectServiceName),
|
|
50
|
-
recordId: recordId
|
|
59
|
+
recordId: recordId,
|
|
51
60
|
});
|
|
52
61
|
res.status(200).send(result);
|
|
53
62
|
}
|
|
@@ -56,14 +65,16 @@ router.get('/service/api/:objectServiceName/recordPermissions/:recordId', auth.r
|
|
|
56
65
|
}
|
|
57
66
|
});
|
|
58
67
|
});
|
|
59
|
-
router.get(
|
|
68
|
+
router.get("/service/api/:objectServiceName/uiSchema", auth.requireAuthentication, function (req, res) {
|
|
60
69
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
61
70
|
const userSession = req.user;
|
|
62
71
|
try {
|
|
63
72
|
const { objectServiceName } = req.params;
|
|
64
73
|
const objectName = objectServiceName.substring(1);
|
|
65
74
|
const [result] = yield Promise.all([
|
|
66
|
-
callObjectServiceAction(`objectql.getRecordView`, userSession, {
|
|
75
|
+
callObjectServiceAction(`objectql.getRecordView`, userSession, {
|
|
76
|
+
objectName,
|
|
77
|
+
}),
|
|
67
78
|
]);
|
|
68
79
|
res.status(200).send(result);
|
|
69
80
|
}
|
|
@@ -72,7 +83,7 @@ router.get('/service/api/:objectServiceName/uiSchema', auth.requireAuthenticatio
|
|
|
72
83
|
}
|
|
73
84
|
});
|
|
74
85
|
});
|
|
75
|
-
router.post(
|
|
86
|
+
router.post("/service/api/:objectServiceName/defUiSchema", auth.requireAuthentication, function (req, res) {
|
|
76
87
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
77
88
|
const userSession = req.user;
|
|
78
89
|
try {
|
|
@@ -85,7 +96,7 @@ router.post('/service/api/:objectServiceName/defUiSchema', auth.requireAuthentic
|
|
|
85
96
|
}
|
|
86
97
|
});
|
|
87
98
|
});
|
|
88
|
-
router.get(
|
|
99
|
+
router.get("/service/api/:objectServiceName/uiSchemaTemplate", auth.requireAuthentication, function (req, res) {
|
|
89
100
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
90
101
|
const userSession = req.user;
|
|
91
102
|
try {
|
|
@@ -98,7 +109,7 @@ router.get('/service/api/:objectServiceName/uiSchemaTemplate', auth.requireAuthe
|
|
|
98
109
|
}
|
|
99
110
|
});
|
|
100
111
|
});
|
|
101
|
-
router.get(
|
|
112
|
+
router.get("/service/api/:objectServiceName/relateds", auth.requireAuthentication, function (req, res) {
|
|
102
113
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
103
114
|
const userSession = req.user;
|
|
104
115
|
try {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@steedos/service-ui",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.92",
|
|
4
4
|
"main": "package.service.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"steedos"
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
"description": "steedos package",
|
|
12
12
|
"repository": {},
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@steedos/auth": "3.0.0-beta.
|
|
15
|
-
"@steedos/i18n": "3.0.0-beta.
|
|
16
|
-
"@steedos/objectql": "3.0.0-beta.
|
|
14
|
+
"@steedos/auth": "3.0.0-beta.92",
|
|
15
|
+
"@steedos/i18n": "3.0.0-beta.92",
|
|
16
|
+
"@steedos/objectql": "3.0.0-beta.92",
|
|
17
17
|
"express": "4.18.1"
|
|
18
18
|
},
|
|
19
19
|
"license": "MIT",
|
|
@@ -21,5 +21,5 @@
|
|
|
21
21
|
"publishConfig": {
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
|
-
"gitHead": "
|
|
24
|
+
"gitHead": "16a684ff645d0a9b745e4b49309f2c63d6a41395"
|
|
25
25
|
}
|
|
@@ -3,110 +3,177 @@
|
|
|
3
3
|
* @Date: 2022-06-09 10:19:47
|
|
4
4
|
* @LastEditors: baozhoutao@steedos.com
|
|
5
5
|
* @LastEditTime: 2025-02-18 11:47:54
|
|
6
|
-
* @Description:
|
|
6
|
+
* @Description:
|
|
7
7
|
*/
|
|
8
8
|
import { getSteedosSchema } from "@steedos/objectql";
|
|
9
|
-
const express = require(
|
|
10
|
-
const router =express.Router();
|
|
11
|
-
const auth = require(
|
|
9
|
+
const express = require("express");
|
|
10
|
+
const router = express.Router();
|
|
11
|
+
const auth = require("@steedos/auth");
|
|
12
|
+
const _ = require("lodash");
|
|
12
13
|
|
|
13
|
-
const callObjectServiceAction = async function(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
const callObjectServiceAction = async function (
|
|
15
|
+
actionName,
|
|
16
|
+
userSession,
|
|
17
|
+
data?,
|
|
18
|
+
) {
|
|
19
|
+
const broker = getSteedosSchema().broker;
|
|
20
|
+
return broker.call(actionName, data, { meta: { user: userSession } });
|
|
21
|
+
};
|
|
17
22
|
|
|
18
|
-
const getObjectName = function(objectServiceName){
|
|
19
|
-
|
|
20
|
-
}
|
|
23
|
+
const getObjectName = function (objectServiceName) {
|
|
24
|
+
return objectServiceName.substring(1);
|
|
25
|
+
};
|
|
21
26
|
|
|
22
|
-
router.get(
|
|
27
|
+
router.get(
|
|
28
|
+
"/service/api/:objectServiceName/fields",
|
|
29
|
+
auth.requireAuthentication,
|
|
30
|
+
async function (req, res) {
|
|
23
31
|
const userSession = req.user;
|
|
24
32
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
33
|
+
const { objectServiceName } = req.params;
|
|
34
|
+
const { fields } = req.query;
|
|
35
|
+
const result = await callObjectServiceAction(
|
|
36
|
+
`objectql.getFields`,
|
|
37
|
+
userSession,
|
|
38
|
+
{ objectName: getObjectName(objectServiceName) },
|
|
39
|
+
);
|
|
40
|
+
if (fields) {
|
|
41
|
+
const result2 = {};
|
|
42
|
+
_.each(result, function (item, k) {
|
|
43
|
+
return (result2[k] = _.pick(item, _.split(fields, ",")));
|
|
44
|
+
});
|
|
45
|
+
return res.status(200).send(result2);
|
|
46
|
+
}
|
|
47
|
+
res.status(200).send(result);
|
|
28
48
|
} catch (error) {
|
|
29
|
-
|
|
49
|
+
res.status(500).send(error.message);
|
|
30
50
|
}
|
|
31
|
-
}
|
|
51
|
+
},
|
|
52
|
+
);
|
|
32
53
|
|
|
33
|
-
router.get(
|
|
54
|
+
router.get(
|
|
55
|
+
"/service/api/:objectServiceName/getUserObjectPermission",
|
|
56
|
+
auth.requireAuthentication,
|
|
57
|
+
async function (req, res) {
|
|
34
58
|
const userSession = req.user;
|
|
35
59
|
try {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
60
|
+
const { objectServiceName } = req.params;
|
|
61
|
+
const result = await callObjectServiceAction(
|
|
62
|
+
`objectql.getUserObjectPermission`,
|
|
63
|
+
userSession,
|
|
64
|
+
{ objectName: getObjectName(objectServiceName) },
|
|
65
|
+
);
|
|
66
|
+
res.status(200).send(result);
|
|
39
67
|
} catch (error) {
|
|
40
|
-
|
|
68
|
+
res.status(500).send(error.message);
|
|
41
69
|
}
|
|
42
|
-
}
|
|
70
|
+
},
|
|
71
|
+
);
|
|
43
72
|
|
|
44
|
-
router.get(
|
|
73
|
+
router.get(
|
|
74
|
+
"/service/api/:objectServiceName/recordPermissions/:recordId",
|
|
75
|
+
auth.requireAuthentication,
|
|
76
|
+
async function (req, res) {
|
|
45
77
|
const userSession = req.user;
|
|
46
78
|
try {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
79
|
+
const { objectServiceName, recordId } = req.params;
|
|
80
|
+
const result = await callObjectServiceAction(
|
|
81
|
+
`objectql.getRecordPermissionsById`,
|
|
82
|
+
userSession,
|
|
83
|
+
{
|
|
84
|
+
objectName: getObjectName(objectServiceName),
|
|
85
|
+
recordId: recordId,
|
|
86
|
+
},
|
|
87
|
+
);
|
|
88
|
+
res.status(200).send(result);
|
|
53
89
|
} catch (error) {
|
|
54
|
-
|
|
90
|
+
res.status(500).send(error.message);
|
|
55
91
|
}
|
|
56
|
-
}
|
|
92
|
+
},
|
|
93
|
+
);
|
|
57
94
|
|
|
58
|
-
router.get(
|
|
95
|
+
router.get(
|
|
96
|
+
"/service/api/:objectServiceName/uiSchema",
|
|
97
|
+
auth.requireAuthentication,
|
|
98
|
+
async function (req, res) {
|
|
59
99
|
const userSession = req.user;
|
|
60
100
|
try {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
101
|
+
const { objectServiceName } = req.params;
|
|
102
|
+
const objectName = objectServiceName.substring(1);
|
|
103
|
+
// const [ result, hasImportTemplates ] = await Promise.all([
|
|
104
|
+
// callObjectServiceAction(`objectql.getRecordView`, userSession, { objectName }),
|
|
105
|
+
// callObjectServiceAction(`@steedos/data-import.hasImportTemplates`, userSession, {
|
|
106
|
+
// objectName: objectName
|
|
107
|
+
// })
|
|
108
|
+
// ])
|
|
109
|
+
// result.hasImportTemplates = hasImportTemplates //TODO 这段查的有点多
|
|
110
|
+
const [result] = await Promise.all([
|
|
111
|
+
callObjectServiceAction(`objectql.getRecordView`, userSession, {
|
|
112
|
+
objectName,
|
|
113
|
+
}),
|
|
114
|
+
]);
|
|
115
|
+
res.status(200).send(result);
|
|
74
116
|
} catch (error) {
|
|
75
|
-
|
|
117
|
+
res.status(500).send(error.message);
|
|
76
118
|
}
|
|
77
|
-
}
|
|
119
|
+
},
|
|
120
|
+
);
|
|
78
121
|
|
|
79
|
-
router.post(
|
|
122
|
+
router.post(
|
|
123
|
+
"/service/api/:objectServiceName/defUiSchema",
|
|
124
|
+
auth.requireAuthentication,
|
|
125
|
+
async function (req, res) {
|
|
80
126
|
const userSession = req.user;
|
|
81
127
|
try {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
128
|
+
const { objectServiceName } = req.params;
|
|
129
|
+
const result = await callObjectServiceAction(
|
|
130
|
+
`objectql.createDefaultRecordView`,
|
|
131
|
+
userSession,
|
|
132
|
+
{ objectName: getObjectName(objectServiceName) },
|
|
133
|
+
);
|
|
134
|
+
res.status(200).send(result);
|
|
85
135
|
} catch (error) {
|
|
86
|
-
|
|
136
|
+
res.status(500).send(error.message);
|
|
87
137
|
}
|
|
88
|
-
}
|
|
138
|
+
},
|
|
139
|
+
);
|
|
89
140
|
|
|
90
|
-
router.get(
|
|
141
|
+
router.get(
|
|
142
|
+
"/service/api/:objectServiceName/uiSchemaTemplate",
|
|
143
|
+
auth.requireAuthentication,
|
|
144
|
+
async function (req, res) {
|
|
91
145
|
const userSession = req.user;
|
|
92
146
|
try {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
147
|
+
const { objectServiceName } = req.params;
|
|
148
|
+
const result = await callObjectServiceAction(
|
|
149
|
+
`objectql.getDefaultRecordView`,
|
|
150
|
+
userSession,
|
|
151
|
+
{ objectName: getObjectName(objectServiceName) },
|
|
152
|
+
);
|
|
153
|
+
res.status(200).send(result);
|
|
96
154
|
} catch (error) {
|
|
97
|
-
|
|
155
|
+
res.status(500).send(error.message);
|
|
98
156
|
}
|
|
99
|
-
}
|
|
157
|
+
},
|
|
158
|
+
);
|
|
100
159
|
|
|
101
|
-
router.get(
|
|
160
|
+
router.get(
|
|
161
|
+
"/service/api/:objectServiceName/relateds",
|
|
162
|
+
auth.requireAuthentication,
|
|
163
|
+
async function (req, res) {
|
|
102
164
|
const userSession = req.user;
|
|
103
165
|
try {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
166
|
+
const { objectServiceName } = req.params;
|
|
167
|
+
const result = await callObjectServiceAction(
|
|
168
|
+
`objectql.getRelateds`,
|
|
169
|
+
userSession,
|
|
170
|
+
{ objectName: getObjectName(objectServiceName) },
|
|
171
|
+
);
|
|
172
|
+
res.status(200).send(result);
|
|
107
173
|
} catch (error) {
|
|
108
|
-
|
|
174
|
+
res.status(500).send(error.message);
|
|
109
175
|
}
|
|
110
|
-
}
|
|
176
|
+
},
|
|
177
|
+
);
|
|
111
178
|
|
|
112
|
-
exports.default = router;
|
|
179
|
+
exports.default = router;
|