From 54c250656c2e471ad48ecaa8ccce16ec9d7eb8bd Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 03 十二月 2019 13:52:38 +0800
Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div
---
fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java | 56 ++++++++++++++++++++++++++------------------------------
1 files changed, 26 insertions(+), 30 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java
index 38f3d5e..41c321d 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/money/UserMoneyExtraServiceImpl.java
@@ -1,22 +1,26 @@
package com.yeshi.fanli.service.impl.money;
import java.math.BigDecimal;
-import java.util.Date;
+import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import com.yeshi.fanli.dao.mybatis.user.UserMoneyExtraMapper;
import com.yeshi.fanli.entity.bus.user.UserMoneyExtra;
import com.yeshi.fanli.service.inter.money.UserMoneyExtraService;
-import com.yeshi.fanli.util.MoneyBigDecimalUtil;
+import com.yeshi.fanli.service.inter.user.integral.IntegralTaskRecordService;
@Service
public class UserMoneyExtraServiceImpl implements UserMoneyExtraService {
@Resource
private UserMoneyExtraMapper userMoneyExtraMapper;
+
+ @Resource
+ private IntegralTaskRecordService integralTaskRecordService;
@Override
public UserMoneyExtra selectByPrimaryKey(Long uid) {
@@ -28,40 +32,32 @@
userMoneyExtraMapper.updateByPrimaryKeySelective(record);
}
+
+ @Override
+ public List<UserMoneyExtra> listValid(int page, int count) {
+ return userMoneyExtraMapper.listValid((page-1) * count, count);
+ }
@Override
- public void addTaoLiJin(Long uid, BigDecimal money, boolean canSelf) {
- if (uid == null || money == null) {
+ @Transactional(rollbackFor = Exception.class)
+ public void taoLiJinExchange(int page, int count) {
+ List<UserMoneyExtra> listValid = userMoneyExtraMapper.listValid((page-1) * count, count);
+ if (listValid == null || listValid.isEmpty())
return;
- }
- UserMoneyExtra record = new UserMoneyExtra();
- record.setUid(uid);
-
- UserMoneyExtra existExtra = userMoneyExtraMapper.selectByPrimaryKey(record.getUid());
- if (existExtra == null) {
- record.setTlj(money);
+ BigDecimal zero = new BigDecimal(0);
+ for (UserMoneyExtra moneyExtra: listValid) {
+ BigDecimal tlj = moneyExtra.getTlj();
+ BigDecimal tljSelf = moneyExtra.getTljSelf();
+ if (tlj == null || tlj.compareTo(zero) <= 0 || tljSelf == null || tljSelf.intValue() <= 0)
+ continue;
- if (canSelf) {
- record.setTljSelf(money);
- } else {
- record.setTljSelf(new BigDecimal(0));
- }
+ integralTaskRecordService.taoLiJinExchange(moneyExtra.getUid(), tljSelf.intValue(), tlj);
- record.setCreateTime(new Date());
- record.setUpdateTime(new Date());
- userMoneyExtraMapper.insertSelective(record);
- } else {
- BigDecimal tlj = existExtra.getTlj();
- record.setTlj(MoneyBigDecimalUtil.add(tlj, money));
-
- if (canSelf) {
- BigDecimal tljSelf = existExtra.getTljSelf();
- record.setTljSelf(MoneyBigDecimalUtil.add(tljSelf, money));
- }
-
- record.setUpdateTime(new Date());
- userMoneyExtraMapper.updateByPrimaryKeySelective(record);
+ moneyExtra.setTlj(zero);
+ moneyExtra.setTljSelf(zero);
+ userMoneyExtraMapper.updateByPrimaryKeySelective(moneyExtra);
}
}
+
}
--
Gitblit v1.8.0