package com.izouma.nineth.service;

import org.springframework.cache.annotation.CacheEvict;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

@Service
public class CacheService {
    @CacheEvict(value = "collection", allEntries = true)
    public void clearCollection() {
    }

    @CacheEvict(value = "collection", key = "#id")
    public void clearCollection(Long id) {
    }

    @CacheEvict(value = "mintActivity", allEntries = true)
    public void clearMintActivity() {
    }

    @CacheEvict(value = "mintActivity", key = "#id")
    public void clearMintActivity(Long id) {
    }

    @CacheEvict(value = "user", allEntries = true)
    public void clearUser() {
    }

    @CacheEvict(value = "user", key = "#id")
    public void clearUser(Long id) {
    }

    @CacheEvict(value = "myUserInfo", key = "#id")
    public void clearUserMy(Long id) {
    }

    @CacheEvict(value = "myUserInfo", allEntries = true)
    public void clearUserMy() {
    }

    @CacheEvict(value = "recommend", allEntries = true)
    public void clearRecommend() {
    }

    @CacheEvict(value = "collectionList", allEntries = true)
    public void clearCollectionList() {
    }

    @Scheduled(cron = "0 0 0 ? * MON")
    @CacheEvict(value = "weekTop", allEntries = true)
    public void clearWeekTop() {
    }

    @CacheEvict(value = "bannerList", allEntries = true)
    public void clearBannerList() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "total", allEntries = true)
    public void clearTotal() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "userTrend", allEntries = true)
    public void clearUserTrend() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "orderNumTrend", allEntries = true)
    public void clearOrderNumTrend() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "orderPriceTrend", allEntries = true)
    public void clearOrderPriceTrend() {
    }

    @CacheEvict(value = "top", key = "#month")
    public void clearTop(int month) {
    }

    @CacheEvict(value = "checkUpdate", allEntries = true)
    public void clearCheckUpdate() {
    }

    @CacheEvict(value = "settingList", key = "#flag")
    public void clearSettingList(int flag) {
    }

    @CacheEvict(value = {"showroom"}, key = "#id")
    public void clearShowroom(Long id) {
    }

    @CacheEvict(value = "fmaa", allEntries = true)
    public void clearFmaa() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "userTrendV2", allEntries = true)
    public void clearUserTrendV2() {
    }

    @Scheduled(fixedRate = 600000)
    @CacheEvict(value = "orderPriceTrendV2", allEntries = true)
    public void clearOrderPriceTrendV2() {
    }

    @CacheEvict(value = "priceList", allEntries = true)
    public void clearPriceList() {
    }

    @CacheEvict(value = "priceListVo", allEntries = true)
    public void clearPriceListVo() {
    }

    @CacheEvict(value = "news", key = "#id")
    public void clearNews(Long id) {
    }

    @Scheduled(cron = "0 0 0 * * ?")
    @CacheEvict(value = "fixedTop", allEntries = true)
    public void clearFixedTop() {
    }


    @CacheEvict(value = "sysConfigGet", allEntries = true)
    public void clearSysConfigGet() {
    }

    @CacheEvict(value = "auctionStatus", key = "#id")
    public void clearAuction(Long id) {
    }

}
