package com.yeshi.fanli.service.impl.hongbao;
|
|
import java.math.BigDecimal;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.transaction.Transactional;
|
|
import org.springframework.cache.annotation.Cacheable;
|
import org.springframework.stereotype.Service;
|
|
import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper;
|
import com.yeshi.fanli.entity.bus.user.HongBaoManage;
|
import com.yeshi.fanli.log.LogHelper;
|
import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
|
|
@Service
|
public class HongBaoManageServiceImpl implements HongBaoManageService {
|
|
@Resource
|
private HongBaoManageMapper hongBaoManageMapper;
|
|
@Transactional
|
public void update(List<HongBaoManage> hongBaoManageList) {
|
for (HongBaoManage hongBaoManage : hongBaoManageList) {
|
hongBaoManageMapper.updateByPrimaryKeySelective(hongBaoManage);
|
}
|
}
|
|
@Cacheable(value = "homeBaoManage", key = "#p0")
|
public String get(final String key) {
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
hongBaoManage.getValue();
|
return null;
|
}
|
|
@Cacheable(value = "homeBaoManage", key = "'convertMap'")
|
public Map<String, String> convertMap() {
|
List<HongBaoManage> list = hongBaoManageMapper.listAll();
|
Map<String, String> map = new HashMap<String, String>();
|
for (HongBaoManage hongBaoManage : list) {
|
map.put(hongBaoManage.getKey(), hongBaoManage.getValue());
|
}
|
return map;
|
}
|
|
@Override
|
public BigDecimal getFanLiRate(long time) {
|
String key = "hongbao_goods_proportion";
|
|
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 getShareRate(long time) {
|
String key = "share_proportion";
|
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 getFanLiRate() {
|
return getFanLiRate(System.currentTimeMillis());
|
}
|
|
@Override
|
public BigDecimal getShareRate() {
|
return getShareRate(System.currentTimeMillis());
|
}
|
|
@Override
|
public BigDecimal getFirstInviteRate(int urank) {
|
return getFirstInviteRate(urank, System.currentTimeMillis());
|
}
|
|
@Override
|
public BigDecimal getFirstInviteRate(int urank, long time) {
|
String key = "sale_6_" + urank;
|
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, time);
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
return new BigDecimal(0);
|
}
|
|
@Override
|
public BigDecimal getSecondInviteRate(int urank) {
|
return getSecondInviteRate(urank, System.currentTimeMillis());
|
}
|
|
@Override
|
public BigDecimal getSecondInviteRate(int urank, long time) {
|
String key = "sale_7_" + urank;
|
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, time);
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
LogHelper.error("获取返利分成比例出错");
|
return new BigDecimal(0);
|
}
|
|
@Override
|
public BigDecimal getFirstShareRate(int urank) {
|
String key = "share_21_" + urank;
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, System.currentTimeMillis());
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
LogHelper.error("获取返利分成比例出错");
|
return new BigDecimal(0);
|
}
|
|
@Override
|
public BigDecimal getFirstShareRate(int urank, long time) {
|
String key = "share_21_" + urank;
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, time);
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
LogHelper.error("获取返利分成比例出错");
|
return new BigDecimal(0);
|
}
|
|
@Override
|
public BigDecimal getSecondShareRate(int urank) {
|
String key = "share_22_" + urank;
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, System.currentTimeMillis());
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
LogHelper.error("获取返利分成比例出错");
|
return new BigDecimal(0);
|
}
|
|
@Override
|
public BigDecimal getSecondShareRate(int urank, long time) {
|
String key = "share_22_" + urank;
|
HongBaoManage hongBaoManage = hongBaoManageMapper.selectByKeyAndMaxValidTime(key, time);
|
if (hongBaoManage == null)
|
hongBaoManage = hongBaoManageMapper.selectByKey(key);
|
if (hongBaoManage != null)
|
return new BigDecimal(hongBaoManage.getValue());
|
LogHelper.error("获取返利分成比例出错");
|
return new BigDecimal(0);
|
}
|
|
}
|