From b29e21816c00e0fbc2dbe76ba0bf3508cb111858 Mon Sep 17 00:00:00 2001 From: shi Date: Sat, 1 Mar 2025 13:31:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(game):=20=E6=B7=BB=E5=8A=A0=E5=B9=B3?= =?UTF-8?q?=E5=8F=B0=E6=88=90=E6=9C=AC=E8=AE=A1=E7=AE=97=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 Constants 中添加 HUNDRED 常量,用于成本计算 - 在 ITenantPlatformService 中添加 findTenantPlatform 方法,用于获取租户平台信息 - 修改 TenantGameQuotaFlowMapper,增加 platform_code 字段查询 - 更新 TenantGameQuotaServiceImpl 中的 balanceChanges 方法,加入平台成本计算逻辑 - 在 TenantPlatformMapper 中添加 findTenantPlatform 方法的 SQL 查询- 更新 TenantPlatformServiceImpl,实现 findTenantPlatform 方法 - 修改 TenantQuotaTask 中的 updateBalance 方法,考虑平台成本因素 --- .../java/com/ff/base/constant/Constants.java | 5 +++ .../system/mapper/TenantPlatformMapper.java | 9 +++++ .../service/ITenantPlatformService.java | 9 +++++ .../impl/TenantPlatformServiceImpl.java | 11 +++++++ .../mapper/system/TenantPlatformMapper.xml | 13 ++++++++ .../impl/TenantGameQuotaServiceImpl.java | 33 +++++++++++++++---- .../com/ff/quartz/task/TenantQuotaTask.java | 8 +++++ .../common/TenantGameQuotaFlowMapper.xml | 7 ++-- 8 files changed, 86 insertions(+), 9 deletions(-) diff --git a/ff-base/src/main/java/com/ff/base/constant/Constants.java b/ff-base/src/main/java/com/ff/base/constant/Constants.java index d93fd78..38b649b 100644 --- a/ff-base/src/main/java/com/ff/base/constant/Constants.java +++ b/ff-base/src/main/java/com/ff/base/constant/Constants.java @@ -2,6 +2,7 @@ package com.ff.base.constant; import io.jsonwebtoken.Claims; +import java.math.BigDecimal; import java.util.Locale; /** @@ -261,4 +262,8 @@ public class Constants { * 租户角色 */ public static final String TENANT_ROLE = "tenant"; + /** + * 一百 + */ + public static final BigDecimal HUNDRED =new BigDecimal("100") ; } diff --git a/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java b/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java index b4d607f..4a24981 100644 --- a/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java +++ b/ff-base/src/main/java/com/ff/base/system/mapper/TenantPlatformMapper.java @@ -20,6 +20,15 @@ public interface TenantPlatformMapper TenantPlatform selectTenantPlatformById(Long id); + /** + * 查找租户平台 + * + * @param tenantPlatform 租户平台 + * @return {@link TenantPlatform } + */ + TenantPlatform findTenantPlatform(TenantPlatform tenantPlatform); + + /** * 按租户id选择货币代码 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java b/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java index 0ff8a37..786cbc7 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java +++ b/ff-base/src/main/java/com/ff/base/system/service/ITenantPlatformService.java @@ -19,6 +19,15 @@ public interface ITenantPlatformService */ TenantPlatform selectTenantPlatformById(Long id); + /** + * 查找租户平台 + * + * @param tenantPlatform 租户平台 + * @return {@link TenantPlatform } + */ + TenantPlatform findTenantPlatform(TenantPlatform tenantPlatform); + + /** * 查询租户成本管理列表 * diff --git a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java b/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java index 74856f2..0e3f11f 100644 --- a/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java +++ b/ff-base/src/main/java/com/ff/base/system/service/impl/TenantPlatformServiceImpl.java @@ -35,6 +35,17 @@ public class TenantPlatformServiceImpl implements ITenantPlatformService return tenantPlatformMapper.selectTenantPlatformById(id); } + /** + * 查找租户平台 + * + * @param tenantPlatform 租户平台 + * @return {@link TenantPlatform } + */ + @Override + public TenantPlatform findTenantPlatform(TenantPlatform tenantPlatform) { + return tenantPlatformMapper.findTenantPlatform(tenantPlatform); + } + /** * 查询租户成本管理列表 * diff --git a/ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml b/ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml index 0b62204..740541a 100644 --- a/ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml +++ b/ff-base/src/main/resources/mapper/system/TenantPlatformMapper.xml @@ -37,6 +37,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where id = #{id} + + + select tenant_key, sum(if(is_out, exchange_money, 0)) - sum(if(!is_out, exchange_money, 0)) as exchange_money, - currency_code + currency_code, + platform_code from ff_tenant_game_quota_flow where create_time between #{params.beginTime} and #{params.endTime} and quota_type = #{quotaType} - and operation_type = #{operationType} - group by tenant_key, currency_code + and operation_type = #{operationType} and currency_code is not null and platform_code is not null + group by tenant_key,platform_code, currency_code \ No newline at end of file