admin
2020-04-13 dd5b15229cb15459fa7c31ccea77dac28cbfafbd
fanli/src/main/java/com/yeshi/fanli/service/impl/order/config/HongBaoManageServiceImpl.java
@@ -12,12 +12,15 @@
import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper;
import com.yeshi.fanli.dto.ConfigParamsDTO;
import com.yeshi.fanli.dto.order.OrderHongBaoRateParams;
import com.yeshi.fanli.entity.bus.user.HongBaoManage;
import com.yeshi.fanli.entity.order.CommonOrder;
import com.yeshi.fanli.exception.order.HongBaoException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.VersionUtil;
@Service
public class HongBaoManageServiceImpl implements HongBaoManageService {
@@ -36,7 +39,7 @@
   public String get(final String key) {
      HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKey(key);
      if (hongBaoManage != null)
         hongBaoManage.getValue();
         return hongBaoManage.getValue();
      return null;
   }
@@ -342,4 +345,34 @@
      throw new HongBaoException(2, "未匹配到比例参数");
   }
   @Override
   public ConfigParamsDTO getShowComputeRate(String platform, String version) {
      BigDecimal fanLiRate = getFanLiRate();
      BigDecimal shareRate = getShareRate();
      ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
            getVIPFanLiRate());
      if (VersionUtil.greaterThan_2_0_5(platform, version)) {
         paramsDTO.setMaxRewardRate(null);
      }
      return paramsDTO;
   }
   @Override
   public BigDecimal getBaseFanliRate(long time) {
      String key = "base_fanli_rate";
      HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, time);
      if (hongBaoManage == null)
         hongBaoManage = hongBaoManageMapper.selectByKey(key);
      if (hongBaoManage != null)
         return new BigDecimal(hongBaoManage.getValue());
      LogHelper.error("获取基础返利比例出错");
      return null;
   }
   @Override
   public BigDecimal getBaseFanliRate() {
      return getBaseFanliRate(System.currentTimeMillis());
   }
}