优化
This commit is contained in:
@@ -53,19 +53,19 @@ export async function run(context) {
|
||||
const feeSourceId = id(source.feeSourceId || source.id)
|
||||
let detailResponse = await context.request('GET', `${BASE}/fee-sources/${encodeURIComponent(feeSourceId)}`)
|
||||
let detail = context.apiSuccess(MODULE, '读取本轮费用来源详情', detailResponse, '', OPTIONS)
|
||||
if (detail?.reviewStatus === 'DRAFT' || detail?.reviewStatus === 'REJECTED') {
|
||||
const submitBody = { reason: context.marker, expectedVersion: Number(detail.operationVersion ?? detail.version) }
|
||||
detailResponse = await write(context, 'POST', `${BASE}/fee-sources/${encodeURIComponent(feeSourceId)}/submit`, submitBody, 'fee-submit')
|
||||
detail = context.apiSuccess(MODULE, '提交本轮费用来源审核', detailResponse, '', OPTIONS)
|
||||
}
|
||||
if (detail?.reviewStatus === 'PENDING') {
|
||||
const reviewBody = { action: 'APPROVE', reason: context.marker, expectedVersion: Number(detail.operationVersion ?? detail.version) }
|
||||
detailResponse = await write(context, 'POST', `${BASE}/fee-sources/${encodeURIComponent(feeSourceId)}/review`, reviewBody, 'fee-review')
|
||||
detail = context.apiSuccess(MODULE, '审核本轮费用来源', detailResponse, '', OPTIONS)
|
||||
}
|
||||
if (detail?.reviewStatus === 'APPROVED' && detail?.settlementIncluded !== true) {
|
||||
const inclusionBody = { included: true, reason: context.marker, expectedVersion: Number(detail.operationVersion ?? detail.version) }
|
||||
detailResponse = await write(context, 'PUT', `${BASE}/fee-sources/${encodeURIComponent(feeSourceId)}/settlement-inclusion`, inclusionBody, 'fee-include')
|
||||
detail = context.apiSuccess(MODULE, '将本轮费用来源纳入结算', detailResponse, '', OPTIONS)
|
||||
}
|
||||
context.assert(MODULE, '本轮来源满足对账单生成条件', detailResponse,
|
||||
detail?.reviewStatus === 'APPROVED' && detail?.settlementIncluded === true && detail?.sourceStatus === 'AVAILABLE' && detail?.currency === 'CNY',
|
||||
`review=${detail?.reviewStatus}, included=${detail?.settlementIncluded}, status=${detail?.sourceStatus}`, OPTIONS)
|
||||
detail?.reviewStatus === 'APPROVED' && detail?.sourceStatus === 'AVAILABLE' && detail?.currency === 'CNY',
|
||||
`review=${detail?.reviewStatus}, status=${detail?.sourceStatus}`, OPTIONS)
|
||||
|
||||
const businessDate = detail?.businessDate || new Date().toISOString().slice(0, 10)
|
||||
const createBody = { customerId, currency: 'CNY', generationMode: 'SELECTED', feeSourceIds: [feeSourceId], periodStart: businessDate, periodEnd: businessDate, remark: context.marker }
|
||||
|
||||
Reference in New Issue
Block a user