fix(pre-planting): 预种省/市区域 API 传 treeCount=0,不计入考核

预种 1 份 = 1/5 棵树,如果将 portionCount 作为 treeCount 传给
authorization-service,会导致省/市公司月度考核进度被多算 5 倍。

修正:传 treeCount=0,预种阶段不累计考核棵数。
等 5 份合成 1 棵完整树后,由合成流程负责累计 1 棵的考核进度。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
hailin 2026-02-28 20:57:27 -08:00
parent 1c71cda2ec
commit 545e897c1f
2 changed files with 6 additions and 8 deletions

View File

@ -196,9 +196,9 @@ export class PrePlantingRewardService {
] = await Promise.all([
this.referralClient.getReferralChain(accountSequence),
this.authorizationClient.getCommunityDistribution(accountSequence),
this.authorizationClient.getProvinceAreaDistribution(provinceCode, portionCount),
this.authorizationClient.getProvinceAreaDistribution(provinceCode),
this.authorizationClient.getProvinceTeamDistribution(accountSequence),
this.authorizationClient.getCityAreaDistribution(cityCode, portionCount),
this.authorizationClient.getCityAreaDistribution(cityCode),
this.authorizationClient.getCityTeamDistribution(accountSequence),
]);

View File

@ -65,19 +65,18 @@ export class PrePlantingAuthorizationClient {
*
*
* [2026-02-28]
* 1. treeCount authorization-service
* 1. treeCount=01
* 2. { distributions: [{accountSequence, ...}] } { accountSequence }
* 3. fallback padStart(6,'0') 7 9440000 944
*/
async getProvinceAreaDistribution(
provinceCode: string,
portionCount: number = 1,
): Promise<RewardDistributionResult> {
try {
const response = await firstValueFrom(
this.httpService.get<{ distributions: AreaDistributionItem[] }>(
`${this.baseUrl}/internal/authorization/province-area-reward-distribution`,
{ params: { provinceCode, treeCount: portionCount } },
{ params: { provinceCode, treeCount: 0 } },
),
);
@ -141,19 +140,18 @@ export class PrePlantingAuthorizationClient {
*
*
* [2026-02-28]
* 1. treeCount
* 1. treeCount=01
* 2. { distributions: [...] }
* 3. fallback padStart(6,'0') 7 8440100 84401
*/
async getCityAreaDistribution(
cityCode: string,
portionCount: number = 1,
): Promise<RewardDistributionResult> {
try {
const response = await firstValueFrom(
this.httpService.get<{ distributions: AreaDistributionItem[] }>(
`${this.baseUrl}/internal/authorization/city-area-reward-distribution`,
{ params: { cityCode, treeCount: portionCount } },
{ params: { cityCode, treeCount: 0 } },
),
);