From ac5dac6c7c45e4c2ecf3cc7ccebac78d65ca9141 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期一, 28 九月 2026 11:24:08 +0800
Subject: [PATCH] 增加新功能和修改原有功能
---
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TChargingCardServiceImpl.java | 72 ------------------------------------
1 files changed, 0 insertions(+), 72 deletions(-)
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TChargingCardServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TChargingCardServiceImpl.java
index 86911d1..83bc6cb 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TChargingCardServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TChargingCardServiceImpl.java
@@ -8,7 +8,6 @@
import com.ruoyi.account.api.dto.ChargingCardAllocateDTO;
import com.ruoyi.account.api.dto.ChargingCardAllocateItemDTO;
import com.ruoyi.account.api.dto.ChargingCardAuthDTO;
-import com.ruoyi.account.api.dto.ChargingCardBalanceDTO;
import com.ruoyi.account.api.dto.ChargingCardDeductDTO;
import com.ruoyi.account.api.dto.ChargingCardExcelDTO;
import com.ruoyi.account.api.dto.ChargingCardQueryDTO;
@@ -22,14 +21,10 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.other.api.domain.TFleet;
import com.ruoyi.other.api.domain.TGroupCompany;
import com.ruoyi.other.api.feignClient.GroupCompanyClient;
-import com.ruoyi.system.api.domain.SysUser;
-import com.ruoyi.system.api.feignClient.SysUserClient;
-import com.ruoyi.system.api.model.LoginUser;
import org.redisson.api.RLock;
import org.redisson.api.RedissonClient;
import org.slf4j.Logger;
@@ -64,7 +59,6 @@
private static final int ENABLED = 1;
private static final int DISABLED = 2;
private static final int BALANCE_ADD = 1;
- private static final int BALANCE_SUBTRACT = 2;
/** 余额变动类型:3=刷卡订单充电结算扣款(V0.2 定稿,订单扣款专用) */
private static final int BALANCE_TYPE_ORDER_DEDUCT = 3;
/** 充电锁定标记:1=充电中(业务锁定,管理操作互斥) */
@@ -87,12 +81,6 @@
private static final long LOCK_WAIT_SECONDS = 5L;
/** 锁自动释放时间(秒),兜住异常未解锁的场景 */
private static final long LOCK_LEASE_SECONDS = 30L;
-
- @Autowired
- private TokenService tokenService;
-
- @Autowired
- private SysUserClient sysUserClient;
@Autowired
private TransactionTemplate transactionTemplate;
@@ -262,31 +250,6 @@
}
@Override
- @Transactional(rollbackFor = Exception.class)
- public boolean updateBalance(ChargingCardBalanceDTO dto) {
- validateBalanceRequest(dto);
- verifyOperationPassword(dto.getOperationPassword());
-
- List<TChargingCard> cards = listByIds(dto.getIds());
- if (cards.size() != new HashSet<>(dto.getIds()).size()) {
- throw new ServiceException("部分卡片不存在或已删除");
- }
- assertNotChargingLocked(cards, "调整余额");
- int updated = baseMapper.adjustBalance(dto.getIds(), dto.getAmount(), dto.getType(),
- MAX_AMOUNT, SecurityUtils.getUserId());
- if (updated != cards.size()) {
- throw new ServiceException(dto.getType() == BALANCE_SUBTRACT
- ? "部分卡片正在充电中或余额不足,无法完成扣减"
- : "部分卡片正在充电中或余额超过上限,无法完成增加");
- }
- for (TChargingCard card : cards) {
- baseMapper.insertBalanceRecord(card.getId(), dto.getType(), dto.getAmount(),
- StringUtils.isEmpty(dto.getRemark()) ? null : dto.getRemark().trim(), SecurityUtils.getUserId());
- }
- return true;
- }
-
- @Override
public ChargingCardAllocateVO getAllocateOverview(Integer companyId) {
if (companyId == null) {
throw new ServiceException("请选择公司");
@@ -302,7 +265,6 @@
@Transactional(rollbackFor = Exception.class)
public ChargingCardAllocateVO allocateQuota(ChargingCardAllocateDTO dto) {
Map<Long, BigDecimal> amounts = validateAllocateRequest(dto);
- verifyOperationPassword(dto.getOperationPassword());
Integer companyId = dto.getCompanyId();
// 公司必须存在、启用且为分配模式(共享模式不支持额度分配)
TGroupCompany company = loadAllocationCompany(companyId);
@@ -629,9 +591,6 @@
if (dto.getItems().size() > MAX_ALLOCATE_CARD_COUNT) {
throw new ServiceException("单次最多分配" + MAX_ALLOCATE_CARD_COUNT + "张卡片");
}
- if (StringUtils.isEmpty(dto.getOperationPassword())) {
- throw new ServiceException("请输入操作密码");
- }
if (dto.getRemark() != null && dto.getRemark().trim().length() > 200) {
throw new ServiceException("备注不能超过200个字符");
}
@@ -921,22 +880,6 @@
return baseMapper.countByCardNo(cardNo, excludeId) > 0;
}
- private void validateBalanceRequest(ChargingCardBalanceDTO dto) {
- if (dto == null || dto.getIds() == null || dto.getIds().isEmpty()) {
- throw new ServiceException("请选择需要更新余额的卡片");
- }
- if (dto.getType() == null || (dto.getType() != BALANCE_ADD && dto.getType() != BALANCE_SUBTRACT)) {
- throw new ServiceException("余额调整类型错误");
- }
- validateAmount(dto.getAmount(), false, "调整金额");
- if (dto.getRemark() != null && dto.getRemark().trim().length() > 255) {
- throw new ServiceException("备注不能超过255个字符");
- }
- if (StringUtils.isEmpty(dto.getOperationPassword())) {
- throw new ServiceException("请输入操作密码");
- }
- }
-
private void validateDeductRequest(ChargingCardDeductDTO dto) {
if (dto == null) {
throw new ServiceException("扣款参数不能为空");
@@ -978,21 +921,6 @@
}
String prefix = row > 0 ? "第" + row + "行" : "";
throw new ServiceException(prefix + "启用状态错误");
- }
-
- private void verifyOperationPassword(String operationPassword) {
- LoginUser loginUser = tokenService.getLoginUser();
- if (loginUser == null || loginUser.getUserid() == null) {
- throw new ServiceException("登录状态已失效,请重新登录");
- }
- R<SysUser> response = sysUserClient.getSysUser(loginUser.getUserid());
- SysUser user = response == null ? null : response.getData();
- if (user == null || StringUtils.isEmpty(user.getOperationPassword())) {
- throw new ServiceException("当前账号未设置操作密码");
- }
- if (!SecurityUtils.matchesPassword(operationPassword, user.getOperationPassword())) {
- throw new ServiceException("操作密码错误");
- }
}
private boolean isValidStatus(Integer status) {
--
Gitblit v1.7.1