feat(M08-C): 补管理员订单处置与代下单

This commit is contained in:
Codex
2026-08-10 10:20:32 +08:00
parent 8b2156cdd5
commit 566e61b5d9
20 changed files with 701 additions and 96 deletions
+38 -3
View File
@@ -7,6 +7,7 @@ const read = (path) => readFileSync(join(root, path), 'utf8');
const appJson = JSON.parse(read('miniapp/app.json'));
assert.ok(appJson.pages.includes('pages/manager/dashboard'));
assert.ok(appJson.pages.includes('pages/manager/order-create'));
const index = read('miniapp/pages/index/index.js') + read('miniapp/pages/index/index.wxml');
for (const pattern of [
@@ -27,15 +28,22 @@ const dashboard = read('miniapp/pages/manager/dashboard.js')
+ read('miniapp/pages/manager/dashboard.wxss');
for (const pattern of [
'/management/stores',
'/management/stores/${encodeURIComponent(storeId)}/rooms',
'/management/stores/${encodedStoreId}/rooms',
'/management/rooms/${encodeURIComponent(roomId)}/status',
'/orders?page=1&pageSize=50',
'/orders?page=1&pageSize=50&storeId=${encodedStoreId}',
'/management/orders/${encodeURIComponent(orderId)}/actions',
'/management/orders/${encodeURIComponent(orderId)}/note',
"method: 'PATCH'",
'store.operation.write',
'tenant.manage',
'changeRoomStatus',
'toggleRoomConfiguration',
'activeOrders',
'selectOrderFilter',
'manageOrder',
'addOrderNote',
'代下单',
'订单处置',
'实时房态',
'近期订单',
'只读'
@@ -43,6 +51,33 @@ for (const pattern of [
assert.match(dashboard, new RegExp(pattern.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')));
}
const orderCreate = read('miniapp/pages/manager/order-create.js')
+ read('miniapp/pages/manager/order-create.wxml');
for (const pattern of [
'/management/stores/${encodeURIComponent(this.data.storeId)}/rooms',
'/management/orders/reserve-on-behalf',
'startAt.toISOString()',
'endAt.toISOString()',
'pricingMode',
'会员用户 ID',
'价格由服务端'
]) {
assert.match(orderCreate, new RegExp(pattern.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')));
}
const orderRoutes = read('backend/src/routes/order-query.ts')
+ read('backend/src/routes/order-state.ts')
+ read('backend/src/routes/order-management.ts')
+ read('backend/src/routes/pricing.ts');
for (const pattern of [
'storeId: z.string()',
'/app-api/management/orders/:orderId/actions',
'/app-api/management/orders',
'/app-api/management/orders/reserve-on-behalf'
]) {
assert.match(orderRoutes, new RegExp(pattern.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')));
}
const routes = read('backend/src/routes/store-room-management.ts');
for (const pattern of [
'/app-api/management/stores',
@@ -64,4 +99,4 @@ const migration = read('database/migrations/2026081001_m08c_staff_management_acc
assert.match(migration, /r\.code = 'STAFF'/);
assert.match(migration, /store\.operation\.read/);
console.log('PASS: M08-C manager/staff miniapp exposes scoped stores, room status and order overview.');
console.log('PASS: M08-C manager/staff miniapp exposes scoped rooms, order handling and on-behalf booking.');