admin
2019-03-13 33b4ed2bbf28ec16b66e552680f56a691a4e908d
fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserAccountServiceImpl.java
@@ -20,34 +20,25 @@
import com.google.gson.Gson;
import com.qcloud.cos.model.COSObjectSummary;
import com.qcloud.cos.model.ObjectListing;
import com.yeshi.fanli.dao.mybatis.AccountDetailsMapper;
import com.yeshi.fanli.dao.mybatis.AccountMessageMapper;
import com.yeshi.fanli.dao.mybatis.BindingAccountMapper;
import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
import com.yeshi.fanli.dao.mybatis.UserConnectHistoryMapper;
import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
import com.yeshi.fanli.dao.mybatis.order.OrderItemMapper;
import com.yeshi.fanli.dao.mybatis.order.OrderMapper;
import com.yeshi.fanli.entity.bus.user.AccountDetails;
import com.yeshi.fanli.entity.bus.user.AccountMessage;
import com.yeshi.fanli.entity.bus.user.BindingAccount;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode;
import com.yeshi.fanli.entity.bus.user.ForbiddenUserIdentifyCode.ForbiddenUserIdentifyCodeTypeEnum;
import com.yeshi.fanli.entity.bus.user.HongBao;
import com.yeshi.fanli.entity.bus.user.LoginResult;
import com.yeshi.fanli.entity.bus.user.MoneyRecord;
import com.yeshi.fanli.entity.bus.user.Order;
import com.yeshi.fanli.entity.bus.user.OrderItem;
import com.yeshi.fanli.entity.bus.user.ThreeSale;
import com.yeshi.fanli.entity.bus.user.UserConnectHistory;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.entity.bus.user.WeiXinUser;
import com.yeshi.fanli.entity.taobao.PidOrder;
import com.yeshi.fanli.exception.UserAccountException;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
import com.yeshi.fanli.service.inter.hongbao.ThreeSaleSerivce;
import com.yeshi.fanli.service.inter.msg.UserAccountMsgNotificationService;
import com.yeshi.fanli.service.inter.user.ForbiddenUserIdentifyCodeService;
@@ -58,7 +49,6 @@
import com.yeshi.fanli.util.FileUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.TimeUtil;
import com.yeshi.fanli.util.factory.AccountDetailsFactory;
import com.yeshi.fanli.util.factory.msg.MsgAccountDetailFactory;
import com.yeshi.fanli.util.wx.WXLoginUtil;
@@ -77,12 +67,6 @@
   private UserConnectHistoryMapper userConnectHistoryMapper;
   @Resource
   private AccountDetailsMapper accountDetailsMapper;
   @Resource
   private HongBaoMapper hongBaoMapper;
   @Resource
   private OrderMapper orderMapper;
   @Resource
@@ -91,11 +75,6 @@
   @Resource
   private ThreeSaleSerivce threeSaleSerivce;
   @Resource
   private PidOrderMapper pidOrderMapper;
   @Resource
   private HongBaoService hongBaoService;
   @Resource
   private AccountMessageMapper accountMessageMapper;
@@ -565,50 +544,8 @@
      userInfoMapper.connectUser(mainUser.getId(), lessUser.getId());
      // 查询是否有多余的新人红包
      List<HongBao> list = hongBaoMapper.selectByUidAndType(mainUser.getId(), HongBao.TYPE_XINREN);
      int subCount = 0;
      int addCount = 0;
      for (HongBao hb : list) {
         if (hb.getMoney().compareTo(new BigDecimal(0)) > 0)
            addCount++;
         if (hb.getMoney().compareTo(new BigDecimal(0)) < 0)
            subCount++;
      }
      // 有2个或者2个以上的新人红包
      if (addCount - subCount > 1) {
         // 扣除一个新人红包
         AccountDetails accountDetails = new AccountDetails();
         accountDetails.setCreateTime(TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss"));
         accountDetails.setExtract(null);
         accountDetails.setMoney("-" + list.get(1).getMoney().toString());
         accountDetails.setOrderItem(null);
         accountDetails.setTitle(" 账号合并扣除重复新人红包");
         accountDetails.setType(AccountDetailsFactory.TUIKUAN);
         accountDetails.setUserInfo(mainUser);
         accountDetailsMapper.insertSelective(accountDetails);
         AccountMessage accountMessage = new AccountMessage();
         accountMessage.setContent(" 账号合并扣除重复新人红包" + list.get(1).getMoney().toString() + "元");
         accountMessage.setCreateTime(System.currentTimeMillis());
         accountMessage.setIsOpen(false);
         accountMessage.setSystemMsgId(0);
         accountMessage.setTitle(" 账号合并扣除重复新人红包");
         accountMessage.setUserInfo(mainUser);
         accountMessageMapper.insertSelective(accountMessage);
         userInfoMapper.subHongBaoByUid(mainUser.getId(), list.get(1).getMoney());
         HongBao hongBao = new HongBao(mainUser, new BigDecimal(0).subtract(list.get(1).getMoney()), null,
               HongBao.TYPE_XINREN, HongBao.STATE_YILINGQU, System.currentTimeMillis(), System.currentTimeMillis(),
               System.currentTimeMillis(), null, "账号合并扣除");
         hongBaoMapper.insertSelective(hongBao);
         MoneyRecord moneyRecord = new MoneyRecord(mainUser, hongBao, list.get(1).getMoney(), "账号合并扣除重复新人红包", "账号合并",
               System.currentTimeMillis(), 2);
         moneyRecordMapper.insertSelective(moneyRecord);
      }
      userAccountMsgNotificationService.connectSuccess(mainUser.getId(), lessUser.getId());
   }
@@ -750,9 +687,6 @@
         updateUserInfo.setNickName(Constant.systemCommonConfig.getDefaultNickName() + user.getId());
         userInfoMapper.updateByPrimaryKeySelective(updateUserInfo);
      }
      // 添加新人红包
      hongBaoService.setNewUserHongBaoMyBatis(user, 1);
   }
   @Override
@@ -902,10 +836,7 @@
      // 备份用户信息
      UserInfo user = userInfoMapper.selectByPrimaryKey(uid);
      // 备份资金明细
      List<AccountDetails> accountDetailsList = accountDetailsMapper.selectByUid(uid);
      // 备份红包信息
      List<HongBao> hongBaoList = hongBaoMapper.selectByUid(uid);
      // TODO 备份资金明细
      // 备份订单,子订单信息
      List<Order> orderList = orderMapper.selectByUid(uid);
      List<OrderItem> orderItemList = orderItemMapper.selectByUid(uid);
@@ -913,8 +844,6 @@
      // 备份邀请关系
      List<ThreeSale> threeSaleList = new ArrayList<>();
      // 备份分享赚
      List<PidOrder> pidOrderList = pidOrderMapper.selectByUid(uid);
      FileWriter fw = null;
      try {
@@ -923,12 +852,6 @@
         fw.write("#UserInfo" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(user) + "\r\n");
         fw.write("#AccountDetails" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(accountDetailsList) + "\r\n");
         fw.write("#HongBao" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(hongBaoList) + "\r\n");
         fw.write("#Order" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(orderList) + "\r\n");
@@ -939,8 +862,6 @@
         fw.write("#ThreeSale" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(threeSaleList) + "\r\n");
         fw.write("#PidOrder" + "\r\n");
         fw.write(JsonUtil.getSimpleGsonWithDate().toJson(pidOrderList) + "\r\n");
         fw.close();