package com.example.demo.serviceImpl.Wallet; import com.example.demo.Util.BusinessException; import com.example.demo.domain.entity.UserGoldRecord; import com.example.demo.domain.entity.UserRegionWallet; import com.example.demo.domain.entity.UserWalletRecord; import com.example.demo.exception.SystemException; import com.example.demo.mapper.coin.WalletMapper; import com.example.demo.service.Wallet.WalletService; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; /** * @program: GOLD * @ClassName WalletServiceImpl * @description: * @author: huangqizhen * @create: 2026−03-06 13:53 * @Version 1.0 **/ @Service @RequiredArgsConstructor public class WalletServiceImpl implements WalletService { @Autowired private WalletMapper walletMapper; @Override public void updateUserGoldRecord(UserRegionWallet userRegionWallet) { BigDecimal currentPermanentGold = userRegionWallet.getCurrentPermanentGold(); if (currentPermanentGold == null|| currentPermanentGold.compareTo(BigDecimal.ZERO) <= 0) throw new SystemException("钱包金币传参错误"); if (userRegionWallet.getJwcode()!= null|| userRegionWallet.getWalletId() != null){ UserRegionWallet wallet = walletMapper.selectWallet(userRegionWallet.getJwcode(), userRegionWallet.getWalletId()); if (wallet == null){ throw new BusinessException("该用户钱包不存在"); } else { userRegionWallet.setCurrentPermanentGold(wallet.getCurrentPermanentGold().add(currentPermanentGold)); walletMapper.updateWallet(userRegionWallet); } } } @Override public List selectUserWalletRecord(Integer jwcode, String orderCode) { if (jwcode == null){ throw new SystemException("精网号传参错误"); } return walletMapper.selectWalletRecord(jwcode, orderCode); } @Override public void updateUserWalletRecord(Integer id) { walletMapper.updateWalletRecord(id); } }