admin
2019-01-19 0e5e21d2f3693dc993b3f49d88a275f7b226eba5
fanli/src/main/java/com/yeshi/fanli/service/impl/user/ExtractServiceImpl.java
@@ -24,11 +24,13 @@
import com.yeshi.fanli.dao.mybatis.ExtractAuditRecordMapper;
import com.yeshi.fanli.dao.mybatis.ExtractMapper;
import com.yeshi.fanli.dao.mybatis.ExtractRecordMapper;
import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
import com.yeshi.fanli.dao.mybatis.PayInfoMapper;
import com.yeshi.fanli.dao.mybatis.SystemMapper;
import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper;
import com.yeshi.fanli.dao.user.AccountDetailsDao;
import com.yeshi.fanli.dao.user.AccountMessageDao;
import com.yeshi.fanli.dao.user.ExtractDao;
@@ -39,12 +41,16 @@
import com.yeshi.fanli.entity.bus.user.Extract;
import com.yeshi.fanli.entity.bus.user.ExtractAuditRecord;
import com.yeshi.fanli.entity.bus.user.ExtractRecord;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.MoneyRecord;
import com.yeshi.fanli.entity.bus.user.PayInfo;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.common.AdminUser;
import com.yeshi.fanli.entity.money.UserMoneyDetail;
import com.yeshi.fanli.exception.ExtractException;
import com.yeshi.fanli.exception.NotExistObjectException;
import com.yeshi.fanli.exception.ObjectStateException;
import com.yeshi.fanli.exception.money.UserMoneyDetailException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.config.SystemConfigService;
@@ -62,6 +68,7 @@
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.factory.AccountDetailsFactory;
import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
import net.sf.json.JSONObject;
@@ -132,13 +139,19 @@
   private SystemMapper systemMapper;
   @Resource
   private HongBaoMapper hongBaoService;
   private HongBaoMapper hongBaoMapper;
   @Resource
   private HongBaoV2Mapper hongBaoV2Mapper;
   @Resource
   private PushService pushService;
   @Resource
   private UserNotificationService userNotificationService;
   @Resource
   private UserMoneyDetailMapper userMoneyDetailMapper;
   @Resource
   private AlipayAccountValidNormalHistoryMapper alipayAccountValidNormalHistoryMapper;
@@ -242,6 +255,19 @@
      AccountDetails ad = AccountDetailsFactory.create("+" + find.getMoney(), AccountDetailsFactory.HUIKUAN, null,
            find, find.getUserInfo());
      accountDetailsMapper.insertSelective(ad);
      // 新版资金详情
      try {
         UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(find);
         userMoneyDetail.setId(ad.getId());
         userMoneyDetailMapper.insert(userMoneyDetail);
      } catch (UserMoneyDetailException e2) {
         try {
            LogHelper.errorDetailInfo(e2);
         } catch (Exception e3) {
            e3.printStackTrace();
         }
      }
      try {
         userNotificationService.extractWrong(user.getId(), find,
               TimeUtil.getGernalTime(find.getExtractTime(), "yyyy-MM-dd HH:mm"));
@@ -290,6 +316,19 @@
      AccountDetails ad = AccountDetailsFactory.create("-" + extract.getMoney(), AccountDetailsFactory.TIXIAN, null,
            extract, user);
      accountDetailsMapper.insertSelective(ad);
      // 新版资金详情
      try {
         UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtract(extract);
         userMoneyDetail.setId(ad.getId());
         userMoneyDetailMapper.insert(userMoneyDetail);
      } catch (UserMoneyDetailException e2) {
         try {
            LogHelper.errorDetailInfo(e2);
         } catch (Exception e1) {
            e1.printStackTrace();
         }
      }
      userNotificationService.extractApply(extract.getUserInfo().getId());
@@ -443,6 +482,19 @@
               null, extract, extract.getUserInfo());
         accountDetailsMapper.insertSelective(ad);
         // 新版资金详情
         try {
            UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createExtractReject(extract);
            userMoneyDetail.setId(ad.getId());
            userMoneyDetailMapper.insert(userMoneyDetail);
         } catch (UserMoneyDetailException e2) {
            try {
               LogHelper.errorDetailInfo(e2);
            } catch (Exception e1) {
               e1.printStackTrace();
            }
         }
         try {
            userNotificationService.extractTransferFail(user.getId(),
@@ -502,8 +554,13 @@
   }
   @Override
   public List<Integer> checkExtract(String uid) {
      return extractMapper.checkExtract(uid);
   public void checkExtract(String uid) throws ExtractException {
      Long count = hongBaoV2Mapper.countByUidAndState(Long.parseLong(uid), HongBao.STATE_YILINGQU);
      if (count == null || count == 0)
         throw new ExtractException(1, "没有已到账的红包");
      List<Integer> list = extractMapper.checkExtract(uid);
      if (list != null && list.size() > 0 && list.get(0) == 0)
         throw new ExtractException(2, "结算资金异常");
   }
   @Override
@@ -665,4 +722,8 @@
   }
   @Override
   public double countTodayMoney(Long uid) {
      return extractMapper.countTodayMoney(uid);
   }
}