package org.jeecg.modules.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.jeecg.modules.bonus.entity.BonusPayment; import org.jeecg.modules.bonus.entity.BonusQuotaParam; import org.jeecg.modules.bonus.mapper.BonusPaymentMapper; import org.jeecg.modules.bonus.mapper.BonusQuotaParamMapper; import org.jeecg.modules.bonus.service.IBonusPaymentService; import org.jeecg.modules.bonus.service.IBonusQuotaParamService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.List; @Service @Slf4j public class BonusQuotaParamServiceImpl extends ServiceImpl implements IBonusQuotaParamService { @Autowired private BonusQuotaParamMapper quotaParamMapper; @Override public BonusQuotaParam calcScParam(BonusQuotaParam param) { //1.计算市场机会系数和 double market = param.getScHyhj() + param.getScZlyy() + param.getScLrl() + param.getScXqjj(); BigDecimal b = new BigDecimal(market); double m = b.setScale(1, BigDecimal.ROUND_HALF_DOWN).doubleValue(); //2.根据系数计算出定额 double quota = m * param.getScJscs() * (param.getScGzxs() / 10) * param.getBase() ; BigDecimal q = new BigDecimal(quota); BigDecimal quotaBonus = q.setScale(0, BigDecimal.ROUND_HALF_DOWN); param.setQuotaBonus(quotaBonus); return param; } }