admin
2020-06-15 3e4ef41ffacd7f5fda2e81c3810cd11a6375b83c
fanli/src/main/java/com/yeshi/fanli/service/manger/money/TeamEincomeManager.java
@@ -1,6 +1,7 @@
package com.yeshi.fanli.service.manger.money;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -84,16 +85,16 @@
    * @throws
    */
   @Transactional(rollbackFor = Exception.class)
   public void addTeamDividents(Long uid, Date preSendTime, BigDecimal money)
   public void addTeamDividents(Long uid, Date preSendTime, BigDecimal money,int type)
         throws TeamEincomeRecordException, ParamsException {
      String day = TimeUtil.getGernalTime(preSendTime.getTime(), "yyyy-MM-dd");
      TeamEincomeRecord record = TeamEincomeRecordFactory.createTeamDividents(day, uid, money, null);
      TeamEincomeRecord record = TeamEincomeRecordFactory.createTeamDividents(day, uid, money,type, null);
      teamEincomeRecordService.addTeamEincomeRecord(record);
   }
   /**
    * @throws UserMoneyDetailException 
    * 到账到用户余额
    * 团队收益 到账到用户余额
    * @Title: addTOUserAccount
    * @Description: 
    * @param day
@@ -102,9 +103,14 @@
    * @throws
    */
   @Transactional(rollbackFor = Exception.class)
   public void addTOUserAccount(Date preSendTime, Long uid) throws UserMoneyDetailException {
   public void addTeamIncomeTOUserAccount(Date preSendTime, Long uid) throws UserMoneyDetailException {
      List<Integer> typeList = new ArrayList<>();
      typeList.add(TeamEincomeRecord.TYPE_TEAM_SUBSIDY);
      typeList.add(TeamEincomeRecord.TYPE_TEAM_REWARD);
      Date now = new Date();
      List<TeamEincomeRecord> list = teamEincomeRecordService.listCanRecieveRecord(preSendTime, uid);
      List<TeamEincomeRecord> list = teamEincomeRecordService.listCanRecieveRecord(preSendTime, uid, typeList);
      BigDecimal money = new BigDecimal(0);
      for (TeamEincomeRecord record : list) {
         record = teamEincomeRecordService.selectByPrimaryKeyForUpdate(record.getId());
@@ -120,4 +126,25 @@
      userMoneyMsgNotificationService.teamReceive(uid, money, balance, now);
   }
   @Transactional(rollbackFor = Exception.class)
   public void addTeamDividentsTOUserAccount(Date preSendTime, Long uid) throws UserMoneyDetailException {
      List<Integer> typeList = new ArrayList<>();
      typeList.add(TeamEincomeRecord.TYPE_TEAM_DIVIDENTS);
      Date now = new Date();
      List<TeamEincomeRecord> list = teamEincomeRecordService.listCanRecieveRecord(preSendTime, uid, typeList);
      BigDecimal money = new BigDecimal(0);
      for (TeamEincomeRecord record : list) {
         record = teamEincomeRecordService.selectByPrimaryKeyForUpdate(record.getId());
         money = money.add(record.getMoney());
         teamEincomeRecordService.setRecieved(record.getId());
      }
      UserMoneyDetail detail = UserMoneyDetailFactory.createTeamDividents(uid, money, preSendTime);
      userMoneyService.addUserMoney(uid, money, detail);
      // 发送消息
      BigDecimal balance = userMoneyService.getBalance(uid);
      userMoneyMsgNotificationService.teamDividend(uid, money, balance, now);
   }
}