完善接单平台上传与物品规则

This commit is contained in:
yml2213
2026-07-25 15:56:18 +08:00
parent f6d3f00f21
commit a2587eda01
40 changed files with 4978 additions and 1008 deletions
+37
View File
@@ -0,0 +1,37 @@
import { Router } from 'express'
import { uploadSingleFile } from '../file-upload.js'
import { uploadFileAsset } from '../../services/file-storage/file-storage-service.js'
import { createJsonHandler, getRequiredAdminSession, requireAdminRoles } from './session.js'
const router = Router()
router.post(
'/files/upload',
requireAdminRoles(['admin', 'operator', 'support']),
uploadSingleFile,
createJsonHandler(
(req) => {
const session = getRequiredAdminSession(req)
return uploadFileAsset({
file: req.file,
scene: req.body?.scene,
uploaderType: 'admin',
uploaderId: String(session.userId || session.username || ''),
})
},
{
successMessage: '文件已上传',
errorMessage: '文件上传失败',
scope: '[admin/files/upload]',
audit: (_req, data) => ({
action: 'file_uploaded',
targetType: 'file',
targetId: String((data as { file?: { objectKey?: string } })?.file?.objectKey || ''),
data: data && typeof data === 'object' ? (data as Record<string, unknown>) : {},
}),
},
),
)
export default router