feat(M08-D): 补团购与第三方平台运营

This commit is contained in:
Codex
2026-08-10 12:10:15 +08:00
parent e8bd176914
commit 7b978089d5
9 changed files with 493 additions and 50 deletions
+29
View File
@@ -66,6 +66,7 @@ let managerRedeemInput;
let manualRedeemInput;
let recordsInput;
let notifyInput;
let setupInput;
const routeApp = await buildApp({
thirdParty: {
jwtSecret: secret,
@@ -116,6 +117,13 @@ const routeApp = await buildApp({
recordsInput = input;
return { bookings: [], redemptions: [] };
},
async listSetup(input) {
setupInput = input;
return {
configs: [{ id: '81', provider: 'MEITUAN', credentialConfigured: true, settings: {} }],
mappings: [{ id: '91', provider: 'MEITUAN', resourceType: 'STORE' }]
};
},
async saveConfig() {
return { configId: '81', created: true };
},
@@ -153,6 +161,18 @@ assert.equal(managerRedeemed.statusCode, 200);
assert.equal(managerRedeemInput.actorId, '21');
assert.equal(managerRedeemInput.provider, 'DOUYIN');
const adminRedeemed = await routeApp.inject({
method: 'POST',
url: '/admin-api/group-vouchers/redeem',
headers: { authorization: `Bearer ${token}` },
payload: {
provider: 'MEITUAN', voucherCode: '1122334455', orderId: '31',
clientRequestId: 'admin-redeem-request-001'
}
});
assert.equal(adminRedeemed.statusCode, 200);
assert.equal(managerRedeemInput.provider, 'MEITUAN');
const manualRedeemed = await routeApp.inject({
method: 'POST',
url: '/app-api/management/group-vouchers/redeem-manual',
@@ -177,6 +197,15 @@ assert.equal(recordsInput.storeId, '11');
assert.equal(recordsInput.provider, 'MEITUAN');
assert.equal(recordsInput.status, 'SUCCEEDED');
const setup = await routeApp.inject({
method: 'GET',
url: '/admin-api/third-party/setup?provider=MEITUAN',
headers: { authorization: `Bearer ${token}` }
});
assert.equal(setup.statusCode, 200);
assert.equal(setup.json().data.configs[0].credentialConfigured, true);
assert.equal(setupInput.provider, 'MEITUAN');
const bookingPayload = {
eventId: 'event-001',
externalBookingNo: 'booking-001',