diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/custom/SysCommisionController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/custom/SysCommisionController.java index 9046ca157..597b7c660 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/custom/SysCommisionController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/custom/SysCommisionController.java @@ -121,19 +121,21 @@ public class SysCommisionController extends BaseController { tmpQueryCom.setUserId(detail.getUserId()); List tmpComList = sysCommisionService.selectSysCommisionList(tmpQueryCom); + float dAmount = detail.getAmount().floatValue(); for (int i = 0; i < tmpComList.size(); i++) { SysCommision com = tmpComList.get(i); - float dAmount = detail.getAmount().floatValue(); float cAmount = com.getAmount().floatValue(); - detail.setRate(com.getRate()); - if (dAmount < cAmount && i == 0) { + if (dAmount <= cAmount && i == 0) { // 第一条规则 + detail.setRate(com.getRate()); break; - } else if (i == tmpComList.size() - 1 && dAmount > cAmount) { + } else if (i == tmpComList.size() - 1 && dAmount >= cAmount) { // 最后一条规则 + detail.setRate(com.getRate()); break; - } else if (dAmount >= cAmount && dAmount < tmpComList.get(i + 1).getAmount().floatValue()) { + } else if (cAmount < dAmount && dAmount <= tmpComList.get(i + 1).getAmount().floatValue()) { // 中间规则 + detail.setRate(tmpComList.get(i + 1).getRate()); break; } } diff --git a/ruoyi-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml b/ruoyi-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml index 1fcbb3778..fa8ba65d2 100644 --- a/ruoyi-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml +++ b/ruoyi-custom/src/main/resources/mapper/custom/SysCommisionMapper.xml @@ -82,6 +82,12 @@ + UNION + + + + + ) AS a USING(user_id) and post_id = #{postId}