API更新

This commit is contained in:
董海洋
2026-06-04 18:43:38 +08:00
parent 89afdbec20
commit 129cf155e1
6 changed files with 17 additions and 15 deletions
+4 -2
View File
@@ -31,13 +31,15 @@ async function getOrders(ctx) {
'goods_name', oi.goods_name,
'price', oi.price,
'quantity', oi.quantity,
'weight', oi.weight,
'Weight', oi.weight,
'subtotal', oi.subtotal,
'unit', oi.unit
'unit', oi.unit,
'image', g.images
)
) as items_json
FROM orders o
LEFT JOIN order_items oi ON o.id = oi.order_id
LEFT JOIN goods g ON oi.goods_id = g.id
WHERE 1=1
`
const params = []
+4 -4
View File
@@ -1,13 +1,13 @@
const Router = require('koa-router')
const categoryController = require('../controllers/categories')
const { requireAdminAuth } = require('../middleware/auth')
const { requireStaffAuth } = require('../middleware/auth')
const router = new Router()
router.get('/', categoryController.getCategories)
router.get('/:id', categoryController.getCategoryById)
router.post('/', requireAdminAuth(), categoryController.createCategory)
router.put('/:id', requireAdminAuth(), categoryController.updateCategory)
router.delete('/:id', requireAdminAuth(), categoryController.deleteCategory)
router.post('/', requireStaffAuth(), categoryController.createCategory)
router.put('/:id', requireStaffAuth(), categoryController.updateCategory)
router.delete('/:id', requireStaffAuth(), categoryController.deleteCategory)
module.exports = router.routes()
+3 -3
View File
@@ -1,11 +1,11 @@
const Router = require('koa-router')
const homeCategoryController = require('../controllers/homeCategories')
const { requireAdminAuth } = require('../middleware/auth')
const { requireStaffAuth } = require('../middleware/auth')
const router = new Router()
router.get('/categories', homeCategoryController.getHomeCategories)
router.put('/categories', requireAdminAuth(), homeCategoryController.updateHomeCategories)
router.get('/categories/config', requireAdminAuth(), homeCategoryController.getAllCategoriesForConfig)
router.put('/categories', requireStaffAuth(), homeCategoryController.updateHomeCategories)
router.get('/categories/config', requireStaffAuth(), homeCategoryController.getAllCategoriesForConfig)
module.exports = router.routes()
+3 -3
View File
@@ -6,9 +6,9 @@ const router = new Router()
router.get('/', pointsGoodsController.getPointsGoods)
router.get('/:id', pointsGoodsController.getPointsGoodsById)
router.post('/', requireAdminAuth(), pointsGoodsController.createPointsGoods)
router.put('/:id', requireAdminAuth(), pointsGoodsController.updatePointsGoods)
router.delete('/:id', requireAdminAuth(), pointsGoodsController.deletePointsGoods)
router.post('/', requireStaffAuth(), pointsGoodsController.createPointsGoods)
router.put('/:id', requireStaffAuth(), pointsGoodsController.updatePointsGoods)
router.delete('/:id', requireStaffAuth(), pointsGoodsController.deletePointsGoods)
router.post('/exchange', requireAuth(), pointsGoodsController.exchangePointsGoods)
module.exports = router.routes()
+1 -1
View File
@@ -8,6 +8,6 @@ router.get('/', requireStaffAuth(), supplierController.getSuppliers)
router.get('/:id', requireStaffAuth(), supplierController.getSupplierById)
router.post('/', requireStaffAuth(), supplierController.createSupplier)
router.put('/:id', requireStaffAuth(), supplierController.updateSupplier)
router.delete('/:id', requireAdminAuth(), supplierController.deleteSupplier)
router.delete('/:id', requireStaffAuth(), supplierController.deleteSupplier)
module.exports = router.routes()
+2 -2
View File
@@ -33,7 +33,7 @@ async function insertOrderItems(conn, orderId, cart) {
}
async function getOrderItems(orderId) {
return query('SELECT * FROM order_items WHERE order_id = ?', [orderId])
return query('SELECT oi.*, g.images as image FROM order_items oi LEFT JOIN goods g ON oi.goods_id = g.id WHERE oi.order_id = ?', [orderId])
}
async function attachOrderItems(orders) {
@@ -41,7 +41,7 @@ async function attachOrderItems(orders) {
const ids = orders.map(o => o.id)
if (ids.length === 0) return orders
const placeholders = ids.map(() => '?').join(',')
const rows = await query(`SELECT * FROM order_items WHERE order_id IN (${placeholders})`, ids)
const rows = await query(`SELECT oi.*, g.images as image FROM order_items oi LEFT JOIN goods g ON oi.goods_id = g.id WHERE oi.order_id IN (${placeholders})`, ids)
const grouped = {}
for (const row of rows) {
if (!grouped[row.order_id]) grouped[row.order_id] = []