Quellcode durchsuchen

修改设计绩效-提成汇总精度丢失

yangzian vor 2 Jahren
Ursprung
Commit
f773b8e670

+ 4 - 2
jeecg-boot-module-system/src/main/java/cn/com/ctop/common/module/achievements/service/impl/DesignerServiceImpl.java

@@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.function.ToDoubleFunction;
@@ -328,7 +329,8 @@ public class DesignerServiceImpl implements IDesignerService {
 
 
        //季度提成汇总
-       Double totalCommission = commissionList.stream().mapToDouble(json -> json.getDouble("commission")).reduce(Double::sum).orElse(new Double("0"));
+       BigDecimal totalCommissionBd = commissionList.stream().map(json -> json.getBigDecimal("commission")).reduce(BigDecimal.ZERO,BigDecimal::add);
+       Double totalCommission = totalCommissionBd.doubleValue();
 
        //如果是负责人 (设计组长) 负责人提成千三的20%
        Double designerLeaderCommission = new Double("0");
@@ -350,7 +352,7 @@ public class DesignerServiceImpl implements IDesignerService {
 
        //提成发放金额 = 总提成* 发放系数 * 离职发放比例
        Double userHappyGetMoney = totalCommission * coefficient * userHappyProbability;
-       userFrozen.put("userHappyGetMoney",userHappyGetMoney);
+       userFrozen.put("userHappyGetMoney",0);
 
        return userFrozen;