From ed42d1638f7f984b4e263a92fab476aaff8d992b Mon Sep 17 00:00:00 2001 From: licc <lichuchuan@jtep.com.cn> Date: Mon, 22 Mar 2021 14:45:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=9C=88=E5=BA=A6=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/wisenergy/model/app/TradeRecord.java | 5 ++-- .../service/app/impl/AccountServiceImpl.java | 24 +++++++++++++++---- .../app/impl/MonthTaskServiceImpl.java | 18 +++++++++++--- 3 files changed, 37 insertions(+), 10 deletions(-) diff --git a/wisenergy-model/src/main/java/cn/wisenergy/model/app/TradeRecord.java b/wisenergy-model/src/main/java/cn/wisenergy/model/app/TradeRecord.java index 7e0e71f..4377fa3 100644 --- a/wisenergy-model/src/main/java/cn/wisenergy/model/app/TradeRecord.java +++ b/wisenergy-model/src/main/java/cn/wisenergy/model/app/TradeRecord.java @@ -32,9 +32,10 @@ public class TradeRecord implements Serializable { private String userId; /** - * 交易记录类型 1:æ现 2:订å•è¿”ä½£ 3:订å•ä¸‹å• 4:月度肥料 5:培育奖 6:工资奖励 7:è¿›æ¥å¥– + * 交易记录类型 1:æ现 2:订å•è¿”ä½£ 3:订å•ä¸‹å• 4:月度肥料 5:培育奖 6:工资奖励 7:è¿›æ¥å¥– 8:è¿è¥ä¸å¿ƒè¡¥è´´ */ - @ApiModelProperty(name = "tradeType", value = "交易类型 1:æ现 2:订å•è¿”ä½£ 3:订å•ä¸‹å• 4:月度肥料 5:培育奖 6:工资 7:è¿›æ¥å¥–") + @ApiModelProperty(name = "tradeType", value = "交易类型 1:æ现 2:订å•è¿”ä½£ 3:订å•ä¸‹å• 4:月度肥料 5:培育奖 " + + "6:工资 7:è¿›æ¥å¥– 8:è¿è¥ä¸å¿ƒè¡¥è´´") private Integer tradeType; /** diff --git a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AccountServiceImpl.java b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AccountServiceImpl.java index ae9a6b9..f8ab190 100644 --- a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AccountServiceImpl.java +++ b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/AccountServiceImpl.java @@ -62,6 +62,9 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo> @Autowired private MonthManureMapper monthManureMapper; + @Autowired + private LastAccountMapper lastAccountMapper; + private static final String PATTERN = "yyyy-MM"; private static final Integer TWENTY = 20; @@ -286,7 +289,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo> BigDecimal earningsMonth = accountInfo.getEarningsMonth().add(BigDecimal.valueOf(income)); accountInfo.setEarningsMonth(earningsMonth); - //用户总收益 =其他总收益 + earningsMonth + //用户总收益 =其他总收益 + 最大进æ¥å¥–收益 BigDecimal earningsTotal = accountInfo.getEarningsTotal().add(BigDecimal.valueOf(income)); accountInfo.setEarningsTotal(earningsTotal); accountInfoList.add(accountInfo); @@ -319,7 +322,7 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo> //更新账户信æ¯ï¼Œæ·»åŠ 交易æµæ°´è®°å½• boolean bool = accountManager.updateAccountAddRecordAddPrize(accountInfoList, tradeRecordList, - addPrizeList,updatePrizeList); + addPrizeList, updatePrizeList); if (!bool) { return R.ok(1, false); } @@ -414,14 +417,25 @@ public class AccountServiceImpl extends ServiceImpl<AccountMapper, AccountInfo> //获å–è´¦æˆ·ä¿¡æ¯ AccountInfo accountInfo = accountMapper.getByUserId(user.getUserId()); BigDecimal bigDecimal = new BigDecimal(income); - BigDecimal performanceMonth = accountInfo.getEarningsMonth().add(bigDecimal); + + //获å–用户本月收益=å¯æ现金é¢+ 本月肥料收益 + BigDecimal performanceMonth = accountInfo.getExtractMoney().add(bigDecimal); accountInfo.setEarningsMonth(performanceMonth); - BigDecimal performanceTotal = accountInfo.getEarningsTotal().add(bigDecimal); + //获å–用户上月总收益 + LastMonthAccount lastMonthAccount = lastAccountMapper.getByUserIdAndTime(user.getUserId(), yearMonthTime); + BigDecimal lastTotalMonth; + if (null == lastMonthAccount || null == lastMonthAccount.getEarningsTotal()) { + lastTotalMonth = new BigDecimal("0.00"); + } else { + lastTotalMonth = lastMonthAccount.getEarningsTotal(); + } + + //用户总收益=上月总收益+本月收益 + BigDecimal performanceTotal = lastTotalMonth.add(performanceMonth); accountInfo.setEarningsTotal(performanceTotal); accountInfoList.add(accountInfo); - //5ã€æ·»åŠ 交易æµæ°´è®°å½• TradeRecord tradeRecord = new TradeRecord(); tradeRecord.setUserId(user.getUserId()); diff --git a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/MonthTaskServiceImpl.java b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/MonthTaskServiceImpl.java index f0e1d2e..a57142e 100644 --- a/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/MonthTaskServiceImpl.java +++ b/wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/MonthTaskServiceImpl.java @@ -449,10 +449,22 @@ public class MonthTaskServiceImpl implements MonthTaskService { //获å–è´¦æˆ·ä¿¡æ¯ AccountInfo accountInfo = accountMapper.getByUserId(user.getUserId()); BigDecimal bigDecimal = new BigDecimal(income).setScale(2, RoundingMode.HALF_UP); - BigDecimal performanceMonth = accountInfo.getEarningsMonth().add(bigDecimal); - accountInfo.setEarningsMonth(performanceMonth.setScale(2, RoundingMode.HALF_UP)); - BigDecimal performanceTotal = accountInfo.getEarningsTotal().add(bigDecimal); + //获å–用户上月月收益=å¯æ现金é¢+ 上月肥料收益 + BigDecimal performanceMonth = accountInfo.getExtractMoney().add(bigDecimal); + accountInfo.setEarningsMonth(performanceMonth); + + //获å–用户上上月总收益 + LastMonthAccount lastMonthAccount = lastAccountMapper.getByUserIdAndTime(user.getUserId(), yearMonthTime); + BigDecimal lastTotalMonth; + if (null == lastMonthAccount || null == lastMonthAccount.getEarningsTotal()) { + lastTotalMonth = new BigDecimal("0.00"); + } else { + lastTotalMonth = lastMonthAccount.getEarningsTotal(); + } + + //用户总收益=上上月总收益+上月收益 + BigDecimal performanceTotal = lastTotalMonth.add(performanceMonth); accountInfo.setEarningsTotal(performanceTotal.setScale(2, RoundingMode.HALF_UP)); accountInfoList.add(accountInfo); -- 2.18.1