增加分组库存与客服

This commit is contained in:
yml2213
2026-04-23 13:38:21 +08:00
parent 2a05a68959
commit f0b31121d7
31 changed files with 675 additions and 80 deletions
+8 -2
View File
@@ -27,7 +27,10 @@ const router = Router()
router.use('/inventory', requireAdminRoles(['admin', 'operator']))
router.get('/inventory', createJsonHandler(
(req) => getAdminInventoryItems(/** @type {AdminInventoryRouteQuery} */ (req.query)),
(req) => getAdminInventoryItems(
/** @type {AdminInventoryRouteQuery} */ (req.query),
req.adminSession || null,
),
{
successMessage: 'ok',
errorMessage: '读取库存列表失败',
@@ -36,7 +39,10 @@ router.get('/inventory', createJsonHandler(
))
router.get('/inventory/sku-suggestions', createJsonHandler(
(req) => getAdminInventorySkuSuggestions(/** @type {AdminInventorySkuSuggestionRouteQuery} */ (req.query)),
(req) => getAdminInventorySkuSuggestions(
/** @type {AdminInventorySkuSuggestionRouteQuery} */ (req.query),
req.adminSession || null,
),
{
successMessage: 'ok',
errorMessage: '读取内部 SKU 建议失败',
+25 -6
View File
@@ -25,7 +25,10 @@ const router = Router()
router.use('/manual-redeem', requireAdminRoles(['admin', 'operator', 'support']))
router.get('/manual-redeem/sku-suggestions', createJsonHandler(
(req) => getAdminInventorySkuSuggestions(/** @type {AdminInventorySkuSuggestionRouteQuery} */ (req.query)),
(req) => getAdminInventorySkuSuggestions(
/** @type {AdminInventorySkuSuggestionRouteQuery} */ (req.query),
req.adminSession || null,
),
{
successMessage: 'ok',
errorMessage: '读取人工兑换 SKU 建议失败',
@@ -60,7 +63,10 @@ router.post('/manual-redeem', createJsonHandler(
))
router.get('/manual-redeem/:taskId', createJsonHandler(
(req) => getAdminManualRedeemDetail((/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId),
(req) => getAdminManualRedeemDetail(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
req.adminSession || null,
),
{
successMessage: 'ok',
errorMessage: '读取人工兑换详情失败',
@@ -72,6 +78,7 @@ router.post('/manual-redeem/:taskId/session', createJsonHandler(
(req) => createAdminManualRedeemSession(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
/** @type {{ loginType?: string, forceRecreate?: boolean }} */ (req.body),
req.adminSession || null,
),
{
successMessage: '人工兑换登录会话已创建',
@@ -81,7 +88,10 @@ router.post('/manual-redeem/:taskId/session', createJsonHandler(
))
router.get('/manual-redeem/:taskId/session/summary', createJsonHandler(
(req) => getAdminManualRedeemSessionSummary((/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId),
(req) => getAdminManualRedeemSessionSummary(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
req.adminSession || null,
),
{
successMessage: 'ok',
errorMessage: '读取人工兑换会话摘要失败',
@@ -90,7 +100,10 @@ router.get('/manual-redeem/:taskId/session/summary', createJsonHandler(
))
router.post('/manual-redeem/:taskId/session/refresh', createJsonHandler(
(req) => reloadAdminManualRedeemSession((/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId),
(req) => reloadAdminManualRedeemSession(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
req.adminSession || null,
),
{
successMessage: '人工兑换会话已刷新',
errorMessage: '刷新人工兑换会话失败',
@@ -99,7 +112,10 @@ router.post('/manual-redeem/:taskId/session/refresh', createJsonHandler(
))
router.delete('/manual-redeem/:taskId/session', createJsonHandler(
(req) => closeAdminManualRedeemSession((/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId),
(req) => closeAdminManualRedeemSession(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
req.adminSession || null,
),
{
successMessage: '人工兑换会话已关闭',
errorMessage: '关闭人工兑换会话失败',
@@ -159,7 +175,10 @@ router.post('/manual-redeem/:taskId/redeem', createJsonHandler(
))
router.post('/manual-redeem/:taskId/close', createJsonHandler(
(req) => closeAdminManualRedeemTask((/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId),
(req) => closeAdminManualRedeemTask(
(/** @type {AdminManualRedeemRouteParams} */ (req.params)).taskId,
req.adminSession || null,
),
{
successMessage: '人工兑换任务已关闭',
errorMessage: '关闭人工兑换任务失败',
+19
View File
@@ -4,6 +4,7 @@ import {
createManagedAdminUser,
getAdminUserList,
resetManagedAdminUserPassword,
updateManagedAdminUserInventoryGroups,
updateManagedAdminUserRole,
updateManagedAdminUserStatus,
} from '../../services/admin/admin-auth-service.js'
@@ -77,6 +78,24 @@ router.post('/users/:userId/status', createJsonHandler(
},
))
router.post('/users/:userId/inventory-groups', createJsonHandler(
(req) => updateManagedAdminUserInventoryGroups(req.params.userId, req.body, req.adminSession),
{
successMessage: '用户库存组已更新',
errorMessage: '更新用户库存组失败',
scope: '[admin/users/:userId/inventory-groups]',
audit: (_req, data) => ({
action: 'admin_user_inventory_groups_updated',
targetType: 'admin_user',
targetId: String(data.user.userId),
data: {
username: data.user.username,
inventoryGroupCodes: data.user.inventoryGroupCodes,
},
}),
},
))
router.post('/users/:userId/reset-password', createJsonHandler(
(req) => resetManagedAdminUserPassword(req.params.userId, req.body),
{