| | |
| | | import com.yami.trading.bean.item.domain.Item; |
| | | import com.yami.trading.bean.item.dto.ItemDTO; |
| | | import com.yami.trading.bean.item.dto.ItemLeverageDTO; |
| | | import com.yami.trading.common.exception.YamiShopBindException; |
| | | import com.yami.trading.common.util.ApplicationContextUtils; |
| | | import com.yami.trading.common.util.MarketOpenChecker; |
| | | import com.yami.trading.common.util.StringUtils; |
| | | import com.yami.trading.dao.item.ItemMapper; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.checkerframework.checker.units.qual.A; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | |
| | | return super.removeById(id); |
| | | } |
| | | |
| | | // 清除 list() 方法的缓存(关键:与@Cached的name和key一致) |
| | | /*@CacheEvict(cacheNames = ITEM_CACHE, key = "'all'") |
| | | public void clearListCache() { |
| | | log.info("已清除 list() 方法的缓存"); |
| | | }*/ |
| | | |
| | | public void reloadListAndCache() { |
| | | // 步骤1:清除 list() 方法的原有缓存(确保重新查询) |
| | | //clearListCache(); |
| | | |
| | | // 步骤2:重新调用 list() 方法,此时会执行数据库查询,且@Cached会自动更新缓存 |
| | | //List<Item> freshList = list(); |
| | | |
| | | // 步骤3(可选):如果需要同步更新 init() 方法中的 itemCache,重新调用 init() |
| | | init(); |
| | | log.info("初始化init()"); |
| | | } |
| | | |
| | | /** |
| | | * 获取品种精度 |
| | |
| | | * @return |
| | | */ |
| | | public boolean isContractTrading(Item item) { |
| | | //如果是虚拟币新币 |
| | | item = getById(item.getUuid()); |
| | | //虚拟币新币才判断 |
| | | if (item.getType().equals(Item.cryptos) && (item.getCurrencyType() != null && item.getCurrencyType() == 1)) { |
| | | if (item.getTradeType() != null && item.getTradeType().equals("1")) { |
| | | if (item.getTradeType() != null && item.getTradeType().equals("0")) { |
| | | return false; |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | /** |
| | | * 是否停牌状态 |
| | | * @param item |
| | | * @return |
| | | */ |
| | | public boolean isSuspended(Item item) { |
| | | item = getById(item.getUuid()); |
| | | //虚拟币新币才判断 |
| | | if (item.getType().equals(Item.cryptos) && (item.getCurrencyType() != null && item.getCurrencyType() == 1)) { |
| | | if (item.getStatus() != null && item.getStatus() == 0) { |
| | | return true; |
| | | } |
| | | } |
| | | return false; |
| | | } |
| | | |
| | | } |