From 567a8bf165fe15ddba8c8d170abf39805546f6b0 Mon Sep 17 00:00:00 2001 From: ziin Date: Thu, 11 Dec 2025 14:38:53 +0800 Subject: [PATCH] =?UTF-8?q?feat(wallet):=20=E6=96=B0=E5=A2=9E=E4=BD=99?= =?UTF-8?q?=E9=A2=9D=E6=A0=BC=E5=BC=8F=E5=8C=96=E6=98=BE=E7=A4=BA=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在响应对象中添加 balanceDisplay 字段,用于返回“K”缩写格式的大额余额, --- .../vo/wallet/KeyboardUserWalletRespVO.java | 6 ++++++ .../impl/KeyboardUserWalletServiceImpl.java | 20 ++++++++++--------- src/main/resources/application-dev.yml | 2 +- 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/yolo/keyborad/model/vo/wallet/KeyboardUserWalletRespVO.java b/src/main/java/com/yolo/keyborad/model/vo/wallet/KeyboardUserWalletRespVO.java index 800f6a9..7869476 100644 --- a/src/main/java/com/yolo/keyborad/model/vo/wallet/KeyboardUserWalletRespVO.java +++ b/src/main/java/com/yolo/keyborad/model/vo/wallet/KeyboardUserWalletRespVO.java @@ -17,4 +17,10 @@ public class KeyboardUserWalletRespVO { */ @Schema(description = "余额") private BigDecimal balance; + + /** + * 格式化后的余额显示 + */ + @Schema(description = "格式化后的余额显示") + private String balanceDisplay; } diff --git a/src/main/java/com/yolo/keyborad/service/impl/KeyboardUserWalletServiceImpl.java b/src/main/java/com/yolo/keyborad/service/impl/KeyboardUserWalletServiceImpl.java index 1c948a0..e863d5e 100644 --- a/src/main/java/com/yolo/keyborad/service/impl/KeyboardUserWalletServiceImpl.java +++ b/src/main/java/com/yolo/keyborad/service/impl/KeyboardUserWalletServiceImpl.java @@ -1,8 +1,5 @@ package com.yolo.keyborad.service.impl; -import cn.hutool.core.bean.BeanUtil; -import com.yolo.keyborad.common.ErrorCode; -import com.yolo.keyborad.exception.BusinessException; import com.yolo.keyborad.model.vo.wallet.KeyboardUserWalletRespVO; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; @@ -28,12 +25,17 @@ public class KeyboardUserWalletServiceImpl extends ServiceImpl= 0) { + BigDecimal kValue = balance.divide(new BigDecimal("1000"), 2, BigDecimal.ROUND_HALF_UP); + return kValue.stripTrailingZeros().toPlainString() + "K"; + } + return balance.setScale(2, BigDecimal.ROUND_HALF_UP).toPlainString(); + } } diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml index 140e733..f86a8b1 100644 --- a/src/main/resources/application-dev.yml +++ b/src/main/resources/application-dev.yml @@ -87,7 +87,7 @@ sa-token: # token 最低活跃频率(单位:秒),如果 token 超过此时间没有访问系统就会被冻结,默认-1 代表不限制,永不冻结 active-timeout: -1 # 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录) - is-concurrent: false + is-concurrent: true # 在多人登录同一账号时,是否共用一个 token (为 true 时所有登录共用一个 token, 为 false 时每次登录新建一个 token) is-share: false # token 风格(默认可取值:uuid、simple-uuid、random-32、random-64、random-128、tik)