| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.yami.trading.bean.model.ChannelBlockchain; |
| | | import com.yami.trading.dao.user.ChannelBlockchainMapper; |
| | | import com.yami.trading.common.exception.YamiShopBindException; |
| | | import com.yami.trading.service.ChannelBlockchainService; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | |
| | | @Override |
| | | public List<ChannelBlockchain> findByCoin(String coin) { |
| | | return list(Wrappers.<ChannelBlockchain>query().lambda().eq(ChannelBlockchain::getCoin,coin)); |
| | | return list(Wrappers.<ChannelBlockchain>query().lambda().eq(ChannelBlockchain::getCoin, coin)); |
| | | } |
| | | |
| | | @Override |
| | | public ChannelBlockchain saveOrUpdateByCoinAndChain(String coin, String blockchainName, String address) { |
| | | if (StringUtils.isBlank(coin) || StringUtils.isBlank(blockchainName)) { |
| | | throw new YamiShopBindException("币种和链名称不能为空"); |
| | | } |
| | | if (StringUtils.isBlank(address)) { |
| | | throw new YamiShopBindException("充值地址不能为空"); |
| | | } |
| | | String normalizedCoin = coin.trim().toLowerCase(); |
| | | String normalizedChain = blockchainName.trim(); |
| | | ChannelBlockchain existing = getOne(Wrappers.<ChannelBlockchain>lambdaQuery() |
| | | .eq(ChannelBlockchain::getCoin, normalizedCoin) |
| | | .eq(ChannelBlockchain::getBlockchainName, normalizedChain) |
| | | .last("LIMIT 1")); |
| | | if (existing != null) { |
| | | existing.setAddress(address.trim()); |
| | | updateById(existing); |
| | | return existing; |
| | | } |
| | | ChannelBlockchain entity = new ChannelBlockchain(); |
| | | entity.setCoin(normalizedCoin); |
| | | entity.setBlockchainName(normalizedChain); |
| | | entity.setAddress(address.trim()); |
| | | entity.setAuto(false); |
| | | save(entity); |
| | | return entity; |
| | | } |
| | | } |