feat(M08-B): 补后台协作与结算详情
This commit is contained in:
@@ -114,6 +114,13 @@ const app = await buildApp({
|
||||
calls.push(['listSettlements', input]);
|
||||
return { items: [settlementResponse(input.status || 'DRAFT')], total: 1, page: input.page, pageSize: input.pageSize };
|
||||
},
|
||||
async getSettlementDetail(input) {
|
||||
calls.push(['getSettlementDetail', input]);
|
||||
return {
|
||||
settlement: settlementResponse('DRAFT'),
|
||||
items: [settlementItemResponse()]
|
||||
};
|
||||
},
|
||||
async generateSettlement(input) {
|
||||
calls.push(['generateSettlement', input]);
|
||||
return settlementResponse('DRAFT');
|
||||
@@ -367,6 +374,15 @@ assert.equal(settlementList.statusCode, 200);
|
||||
assert.equal(calls.at(-1)[0], 'listSettlements');
|
||||
assert.equal(calls.at(-1)[1].status, 'DRAFT');
|
||||
|
||||
const settlementDetail = await app.inject({
|
||||
method: 'GET',
|
||||
url: '/admin-api/cleaning/settlements/501',
|
||||
headers: { authorization: `Bearer ${token}` }
|
||||
});
|
||||
assert.equal(settlementDetail.statusCode, 200);
|
||||
assert.equal(calls.at(-1)[0], 'getSettlementDetail');
|
||||
assert.equal(settlementDetail.json().data.items[0].taskNo, 'CLN-20260625-0001');
|
||||
|
||||
const generatedSettlement = await app.inject({
|
||||
method: 'POST',
|
||||
url: '/admin-api/cleaning/settlements',
|
||||
@@ -542,6 +558,24 @@ function settlementResponse(status) {
|
||||
};
|
||||
}
|
||||
|
||||
function settlementItemResponse() {
|
||||
return {
|
||||
id: '601',
|
||||
settlementId: '501',
|
||||
taskId: '101',
|
||||
taskNo: 'CLN-20260625-0001',
|
||||
orderNo: 'O301',
|
||||
storeName: 'Test Store',
|
||||
roomName: 'A Room',
|
||||
roomNo: 'A01',
|
||||
cleanerUserId: '31',
|
||||
cleanerName: 'Cleaner',
|
||||
rewardCents: 600,
|
||||
completedAt: new Date(),
|
||||
createdAt: new Date()
|
||||
};
|
||||
}
|
||||
|
||||
function member(memberRole, userId, rewardCents) {
|
||||
return {
|
||||
id: `${userId}01`,
|
||||
|
||||
Reference in New Issue
Block a user