const express = require('express'); const { getResolvedUserWithPageAccess } = require('../services/pageAccess'); const { getAlibaba1688Product } = require('../services/alibaba1688ProductService'); const { attachEncodingDetail } = require('../services/alibaba1688ProductEncodingRegistry'); const router = express.Router(); async function ensureSelectionFissionAccess(req) { // Selection workflows are available to every authenticated user. They share // this router with template uploads, but must not inherit upload permissions. return getResolvedUserWithPageAccess(req.user.sub); } router.get('/selection-fission/1688-products/:productId', async (req, res) => { try { await ensureSelectionFissionAccess(req); const result = await attachEncodingDetail( await getAlibaba1688Product(req.params.productId) ); res.setHeader('Cache-Control', 'private, no-store, no-cache, must-revalidate'); res.setHeader('Pragma', 'no-cache'); res.json({ success: true, data: result }); } catch (error) { console.error('获取1688待上架商品详情失败:', error); res.status(error.statusCode || error.status || 500).json({ success: false, error: error.message || '获取1688待上架商品详情失败', }); } }); module.exports = router;