admin
2024-01-23 81da61b828e29b7745e1382dfbbaeb685dc083ef
fanli/src/main/java/com/yeshi/fanli/service/impl/config/SystemCouponServiceImpl.java
@@ -1,80 +1,88 @@
package com.yeshi.fanli.service.impl.config;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.SystemCouponMapper;
import com.yeshi.fanli.entity.system.SystemCoupon;
import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
import com.yeshi.fanli.service.inter.config.SystemCouponService;
@Service
public class SystemCouponServiceImpl implements SystemCouponService {
   @Resource
   private SystemCouponMapper systemCouponMapper;
   @Override
   public int insertSelective(SystemCoupon record) {
      return systemCouponMapper.insertSelective(record);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'selectByPrimaryKey-'+#id")
   public SystemCoupon selectByPrimaryKey(Long id) {
      return systemCouponMapper.selectByPrimaryKey(id);
   }
   @Override
   public int updateByPrimaryKeySelective(SystemCoupon record) {
      return systemCouponMapper.updateByPrimaryKeySelective(record);
   }
   @Override
   public int updateByPrimaryKey(SystemCoupon record) {
      return systemCouponMapper.updateByPrimaryKey(record);
   }
   @Override
   public int deleteBatchByPrimaryKey(List<Long> list) {
      return systemCouponMapper.deleteBatchByPrimaryKey(list);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getCouponByType-'+#type")
   public SystemCoupon getCouponByType(String type) {
      return systemCouponMapper.getCouponByType(type);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getOrderCouponList'")
   public List<SystemCoupon> getOrderCouponList() {
      List<String> listType = new ArrayList<String>();
      listType.add(CouponTypeEnum.rebatePercentCoupon.name());
      return systemCouponMapper.getCouponListByType(listType);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getGoodsCouponList'")
   public List<SystemCoupon> getGoodsCouponList() {
      List<String> listType = new ArrayList<String>();
      listType.add(CouponTypeEnum.freeCoupon.name());
      listType.add(CouponTypeEnum.welfareFreeCoupon.name());
      listType.add(CouponTypeEnum.freeCouponBuy.name());
      return systemCouponMapper.getCouponListByType(listType);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getCouponByTypeAndPercent-'+#type +'-'+#percent")
   public SystemCoupon getCouponByTypeAndPercent( String type, BigDecimal percent) {
      return systemCouponMapper.getCouponByTypeAndPercent(type, percent);
   }
}
package com.yeshi.fanli.service.impl.config;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
import com.yeshi.fanli.dao.mybatis.SystemCouponMapper;
import com.yeshi.fanli.entity.system.SystemCoupon;
import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
import com.yeshi.fanli.service.inter.config.SystemCouponService;
@Service
public class SystemCouponServiceImpl implements SystemCouponService {
   @Resource
   private SystemCouponMapper systemCouponMapper;
   @Override
   public int insertSelective(SystemCoupon record) {
      return systemCouponMapper.insertSelective(record);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'selectByPrimaryKey-'+#id")
   public SystemCoupon selectByPrimaryKey(Long id) {
      return systemCouponMapper.selectByPrimaryKey(id);
   }
   @Override
   public int updateByPrimaryKeySelective(SystemCoupon record) {
      return systemCouponMapper.updateByPrimaryKeySelective(record);
   }
   @Override
   public int updateByPrimaryKey(SystemCoupon record) {
      return systemCouponMapper.updateByPrimaryKey(record);
   }
   @Override
   public int deleteBatchByPrimaryKey(List<Long> list) {
      return systemCouponMapper.deleteBatchByPrimaryKey(list);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getCouponByType-'+#type")
   public SystemCoupon getCouponByType(String type) {
      return systemCouponMapper.getCouponByType(type);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getOrderCouponList'")
   public List<SystemCoupon> getOrderCouponList() {
      List<String> listType = new ArrayList<String>();
      listType.add(CouponTypeEnum.rebatePercentCoupon.name());
      return systemCouponMapper.getCouponListByType(listType);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getGiveFreeCouponList'")
   public List<SystemCoupon> getGiveFreeCouponList() {
      List<String> listType = new ArrayList<String>();
      listType.add(CouponTypeEnum.freeCouponGive.name());
      return systemCouponMapper.getCouponListByType(listType);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getGoodsCouponList'")
   public List<SystemCoupon> getGoodsCouponList() {
      List<String> listType = new ArrayList<String>();
      listType.add(CouponTypeEnum.freeCoupon.name());
      listType.add(CouponTypeEnum.welfareFreeCoupon.name());
      listType.add(CouponTypeEnum.freeCouponBuy.name());
      return systemCouponMapper.getCouponListByType(listType);
   }
   @Override
   @Cacheable(value = "systemCouponCache",key="'getCouponByTypeAndPercent-'+#type +'-'+#percent")
   public SystemCoupon getCouponByTypeAndPercent( String type, BigDecimal percent) {
      return systemCouponMapper.getCouponByTypeAndPercent(type, percent);
   }
}