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, 'goods_name', oi.goods_name,
'price', oi.price, 'price', oi.price,
'quantity', oi.quantity, 'quantity', oi.quantity,
'weight', oi.weight, 'Weight', oi.weight,
'subtotal', oi.subtotal, 'subtotal', oi.subtotal,
'unit', oi.unit 'unit', oi.unit,
'image', g.images
) )
) as items_json ) as items_json
FROM orders o FROM orders o
LEFT JOIN order_items oi ON o.id = oi.order_id LEFT JOIN order_items oi ON o.id = oi.order_id
LEFT JOIN goods g ON oi.goods_id = g.id
WHERE 1=1 WHERE 1=1
` `
const params = [] const params = []
+4 -4
View File
@@ -1,13 +1,13 @@
const Router = require('koa-router') const Router = require('koa-router')
const categoryController = require('../controllers/categories') const categoryController = require('../controllers/categories')
const { requireAdminAuth } = require('../middleware/auth') const { requireStaffAuth } = require('../middleware/auth')
const router = new Router() const router = new Router()
router.get('/', categoryController.getCategories) router.get('/', categoryController.getCategories)
router.get('/:id', categoryController.getCategoryById) router.get('/:id', categoryController.getCategoryById)
router.post('/', requireAdminAuth(), categoryController.createCategory) router.post('/', requireStaffAuth(), categoryController.createCategory)
router.put('/:id', requireAdminAuth(), categoryController.updateCategory) router.put('/:id', requireStaffAuth(), categoryController.updateCategory)
router.delete('/:id', requireAdminAuth(), categoryController.deleteCategory) router.delete('/:id', requireStaffAuth(), categoryController.deleteCategory)
module.exports = router.routes() module.exports = router.routes()
+3 -3
View File
@@ -1,11 +1,11 @@
const Router = require('koa-router') const Router = require('koa-router')
const homeCategoryController = require('../controllers/homeCategories') const homeCategoryController = require('../controllers/homeCategories')
const { requireAdminAuth } = require('../middleware/auth') const { requireStaffAuth } = require('../middleware/auth')
const router = new Router() const router = new Router()
router.get('/categories', homeCategoryController.getHomeCategories) router.get('/categories', homeCategoryController.getHomeCategories)
router.put('/categories', requireAdminAuth(), homeCategoryController.updateHomeCategories) router.put('/categories', requireStaffAuth(), homeCategoryController.updateHomeCategories)
router.get('/categories/config', requireAdminAuth(), homeCategoryController.getAllCategoriesForConfig) router.get('/categories/config', requireStaffAuth(), homeCategoryController.getAllCategoriesForConfig)
module.exports = router.routes() module.exports = router.routes()
+3 -3
View File
@@ -6,9 +6,9 @@ const router = new Router()
router.get('/', pointsGoodsController.getPointsGoods) router.get('/', pointsGoodsController.getPointsGoods)
router.get('/:id', pointsGoodsController.getPointsGoodsById) router.get('/:id', pointsGoodsController.getPointsGoodsById)
router.post('/', requireAdminAuth(), pointsGoodsController.createPointsGoods) router.post('/', requireStaffAuth(), pointsGoodsController.createPointsGoods)
router.put('/:id', requireAdminAuth(), pointsGoodsController.updatePointsGoods) router.put('/:id', requireStaffAuth(), pointsGoodsController.updatePointsGoods)
router.delete('/:id', requireAdminAuth(), pointsGoodsController.deletePointsGoods) router.delete('/:id', requireStaffAuth(), pointsGoodsController.deletePointsGoods)
router.post('/exchange', requireAuth(), pointsGoodsController.exchangePointsGoods) router.post('/exchange', requireAuth(), pointsGoodsController.exchangePointsGoods)
module.exports = router.routes() module.exports = router.routes()
+1 -1
View File
@@ -8,6 +8,6 @@ router.get('/', requireStaffAuth(), supplierController.getSuppliers)
router.get('/:id', requireStaffAuth(), supplierController.getSupplierById) router.get('/:id', requireStaffAuth(), supplierController.getSupplierById)
router.post('/', requireStaffAuth(), supplierController.createSupplier) router.post('/', requireStaffAuth(), supplierController.createSupplier)
router.put('/:id', requireStaffAuth(), supplierController.updateSupplier) router.put('/:id', requireStaffAuth(), supplierController.updateSupplier)
router.delete('/:id', requireAdminAuth(), supplierController.deleteSupplier) router.delete('/:id', requireStaffAuth(), supplierController.deleteSupplier)
module.exports = router.routes() module.exports = router.routes()
+2 -2
View File
@@ -33,7 +33,7 @@ async function insertOrderItems(conn, orderId, cart) {
} }
async function getOrderItems(orderId) { 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) { async function attachOrderItems(orders) {
@@ -41,7 +41,7 @@ async function attachOrderItems(orders) {
const ids = orders.map(o => o.id) const ids = orders.map(o => o.id)
if (ids.length === 0) return orders if (ids.length === 0) return orders
const placeholders = ids.map(() => '?').join(',') 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 = {} const grouped = {}
for (const row of rows) { for (const row of rows) {
if (!grouped[row.order_id]) grouped[row.order_id] = [] if (!grouped[row.order_id]) grouped[row.order_id] = []