增加打手登录设备管理与三台设备限制
This commit is contained in:
@@ -20,6 +20,10 @@ import {
|
||||
listWorkerMyOrders,
|
||||
getWorkerMyOrderEvents,
|
||||
loginWorker,
|
||||
getWorkerSessions,
|
||||
deleteWorkerSession,
|
||||
manageWorkerSessions,
|
||||
deleteWorkerSessionWithCredentials,
|
||||
logoutWorkerSession,
|
||||
registerWorker,
|
||||
sendWorkerSmsCode,
|
||||
@@ -79,11 +83,59 @@ router.post(
|
||||
max: 10,
|
||||
key: getBodyFieldRateLimitKey('username'),
|
||||
}),
|
||||
createRouteHandler((req) => loginWorker(req.body?.username, req.body?.password), {
|
||||
successMessage: '登录成功',
|
||||
errorMessage: '接单端登录失败',
|
||||
scope: '[worker/auth/login]',
|
||||
createRouteHandler(
|
||||
(req) =>
|
||||
loginWorker(req.body?.username, req.body?.password, {
|
||||
deviceId: req.body?.deviceId,
|
||||
deviceType: req.body?.deviceType,
|
||||
deviceName: req.body?.deviceName,
|
||||
userAgent: req.headers['user-agent'],
|
||||
ipAddress: req.ip,
|
||||
}),
|
||||
{
|
||||
successMessage: '登录成功',
|
||||
errorMessage: '接单端登录失败',
|
||||
scope: '[worker/auth/login]',
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/auth/devices/manage/list',
|
||||
createRateLimitMiddleware({
|
||||
scope: 'worker:devices-manage',
|
||||
windowMs: 60_000,
|
||||
max: 10,
|
||||
key: getBodyFieldRateLimitKey('username'),
|
||||
}),
|
||||
createRouteHandler((req) => manageWorkerSessions(req.body?.username, req.body?.password), {
|
||||
successMessage: 'ok',
|
||||
errorMessage: '读取登录设备失败',
|
||||
scope: '[worker/auth/devices/manage/list]',
|
||||
}),
|
||||
)
|
||||
|
||||
router.post(
|
||||
'/auth/devices/manage/delete',
|
||||
createRateLimitMiddleware({
|
||||
scope: 'worker:devices-manage-delete',
|
||||
windowMs: 60_000,
|
||||
max: 10,
|
||||
key: getBodyFieldRateLimitKey('username'),
|
||||
}),
|
||||
createRouteHandler(
|
||||
(req) =>
|
||||
deleteWorkerSessionWithCredentials(
|
||||
req.body?.username,
|
||||
req.body?.password,
|
||||
req.body?.sessionId,
|
||||
),
|
||||
{
|
||||
successMessage: '登录设备已删除',
|
||||
errorMessage: '删除登录设备失败',
|
||||
scope: '[worker/auth/devices/manage/delete]',
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.get(
|
||||
@@ -106,6 +158,27 @@ router.post(
|
||||
|
||||
router.use(requireWorkerSession)
|
||||
|
||||
router.get(
|
||||
'/auth/devices',
|
||||
createRouteHandler((req) => getWorkerSessions(getRequiredWorkerSession(req)), {
|
||||
successMessage: 'ok',
|
||||
errorMessage: '读取登录设备失败',
|
||||
scope: '[worker/auth/devices]',
|
||||
}),
|
||||
)
|
||||
|
||||
router.delete(
|
||||
'/auth/devices/:sessionId',
|
||||
createRouteHandler(
|
||||
(req) => deleteWorkerSession(getRequiredWorkerSession(req), req.params.sessionId),
|
||||
{
|
||||
successMessage: '登录设备已删除',
|
||||
errorMessage: '删除登录设备失败',
|
||||
scope: '[worker/auth/devices/delete]',
|
||||
},
|
||||
),
|
||||
)
|
||||
|
||||
router.get('/realtime', (req, res) => {
|
||||
openWorkerRealtimeStream(res, getRequiredWorkerSession(req).workerId)
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user