| | |
| | | import org.yeshi.utils.DateUtil;
|
| | |
|
| | | import com.yeshi.fanli.dao.mybatis.tlj.UserTaoLiJinOriginMapper;
|
| | | import com.yeshi.fanli.dto.msg.MsgOtherGiveContentDTO;
|
| | | import com.yeshi.fanli.dto.msg.MsgOtherTaoLiJinContentDTO;
|
| | | import com.yeshi.fanli.entity.bus.tlj.DeviceTaoLiJinRecord;
|
| | | import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinDetail;
|
| | | import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinGiveRecord;
|
| | | import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinDetail.TaoLiJinDetailTypeEnum;
|
| | | import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin;
|
| | | import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinOrigin.TaoLiJinOriginEnum;
|
| | |
| | | if (uid == null) {
|
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_newbies");
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_newbies",null);
|
| | | if (StringUtil.isNullOrEmpty(value)) {
|
| | | throw new UserTaoLiJinOriginException(1, "系统红包不存在");
|
| | | }
|
| | |
| | | throw new UserTaoLiJinOriginException(2, "用户等级不足");
|
| | | }
|
| | |
|
| | | String value = configTaoLiJinService.getValueByKey(key);
|
| | | String value = configTaoLiJinService.getValueByKey(key,null);
|
| | | if (StringUtil.isNullOrEmpty(value)) {
|
| | | throw new UserTaoLiJinOriginException(1, "系统红包不存在");
|
| | | }
|
| | |
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | |
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_invite");
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_invite",null);
|
| | | if (StringUtil.isNullOrEmpty(value)) {
|
| | | throw new UserTaoLiJinOriginException(1, "系统红包不存在");
|
| | | }
|
| | |
| | | throw new UserTaoLiJinOriginException(1, "用户未登录");
|
| | | }
|
| | |
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_share");
|
| | | String value = configTaoLiJinService.getValueByKey("hongbao_share",null);
|
| | | if (StringUtil.isNullOrEmpty(value)) {
|
| | | throw new UserTaoLiJinOriginException(1, "系统红包不存在");
|
| | | }
|
| | |
| | | });
|
| | | }
|
| | |
|
| | | |
| | | |
| | |
|
| | | @Override
|
| | | public void overdueHongBao(Long uid) {
|
| | |
| | |
|
| | | BigDecimal total = new BigDecimal(0);
|
| | | for (UserTaoLiJinOrigin userTaoLiJinOrigin : list) {
|
| | | SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd HH.mm");
|
| | | SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd HH:mm");
|
| | | String time = sd.format(userTaoLiJinOrigin.getCreateTime());
|
| | |
|
| | | BigDecimal moneySurplus = userTaoLiJinOrigin.getMoneySurplus();
|
| | |
| | | return userTaoLiJinOriginMapper.getSurplusLiJin(uid);
|
| | | }
|
| | |
|
| | | |
| | | @Override
|
| | | @Transactional
|
| | | public void addInviteWinMoneyByHand(Long uid, String inviteName, Date date) throws UserTaoLiJinOriginException {
|
| | | if (uid == null || StringUtil.isNullOrEmpty(inviteName)) {
|
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | | |
| | | String value = configTaoLiJinService.getValueByKey("hongbao_invite",null);
|
| | | if (StringUtil.isNullOrEmpty(value)) {
|
| | | throw new UserTaoLiJinOriginException(1, "系统红包不存在");
|
| | | }
|
| | | BigDecimal money = new BigDecimal(value);
|
| | | |
| | | // 添加用户红包
|
| | | userMoneyExtraService.addTaoLiJin(uid, money, false);
|
| | |
|
| | | // 添加新增记录
|
| | | UserTaoLiJinOrigin taoLiJinOrigin = new UserTaoLiJinOrigin();
|
| | | taoLiJinOrigin.setUid(uid);
|
| | | taoLiJinOrigin.setType(1);
|
| | | taoLiJinOrigin.setOrigin(TaoLiJinOriginEnum.inviteWin);
|
| | | taoLiJinOrigin.setMoney(money);
|
| | | taoLiJinOrigin.setMoneySurplus(money);
|
| | | taoLiJinOrigin.setCreateTime(date);
|
| | | taoLiJinOrigin.setUpdateTime(date);
|
| | | taoLiJinOrigin.setRemark(TaoLiJinOriginEnum.inviteWin.getDesc());
|
| | | userTaoLiJinOriginMapper.insertSelective(taoLiJinOrigin);
|
| | | |
| | | // 明细
|
| | | UserTaoLiJinDetail detail = new UserTaoLiJinDetail();
|
| | | detail.setUid(uid);
|
| | | detail.setMoney(money);
|
| | | detail.setType(TaoLiJinDetailTypeEnum.add);
|
| | | detail.setTitle(TaoLiJinDetailTypeEnum.add.getDesc());
|
| | | detail.setDescInfo("来源:" + TaoLiJinOriginEnum.inviteWin.getDesc());
|
| | | detail.setCreateTime(date);
|
| | | userTaoLiJinDetailService.insertSelective(detail);
|
| | | }
|
| | | |
| | | |
| | | @Override
|
| | | @Transactional
|
| | | public void exchangeMoney(Long uid, BigDecimal money) throws UserTaoLiJinOriginException{
|
| | | if (uid == null || money == null) {
|
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | | // 添加用户红包
|
| | | userMoneyExtraService.addTaoLiJin(uid, money, false);
|
| | | // 添加新增记录
|
| | | UserTaoLiJinOrigin origin = saveOrigin(uid, 1, money, TaoLiJinOriginEnum.exchange);
|
| | | // 红包明细
|
| | | userTaoLiJinDetailService.createAddDetail(origin);
|
| | | }
|
| | | |
| | | |
| | | @Override
|
| | | @Transactional
|
| | | public UserTaoLiJinOrigin receiveFriendsGive(Long uid, BigDecimal money) throws UserTaoLiJinOriginException{
|
| | | if (uid == null || money == null) {
|
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | | |
| | | // 添加红包余额
|
| | | userMoneyExtraService.addTaoLiJin(uid, money, false);
|
| | | // 添加新增记录
|
| | | UserTaoLiJinOrigin origin = saveOrigin(uid, 1, money, TaoLiJinOriginEnum.friendsGive);
|
| | | // 红包明细
|
| | | userTaoLiJinDetailService.createAddDetail(origin);
|
| | | // 消息
|
| | | executor.execute(new Runnable() {
|
| | | @Override
|
| | | public void run() {
|
| | | try {
|
| | | MsgOtherTaoLiJinContentDTO content = new MsgOtherTaoLiJinContentDTO();
|
| | | content.setState("红包增加");
|
| | | content.setSource("好友赠送");
|
| | | content.setMoney(money);
|
| | | userOtherMsgNotificationService.taoLiJinMsg(uid, "", content);
|
| | | } catch (Exception e) {
|
| | | LogHelper.errorDetailInfo(e);
|
| | | }
|
| | | }
|
| | | });
|
| | | return origin;
|
| | | }
|
| | | |
| | | |
| | | |
| | | @Override
|
| | | @Transactional
|
| | | public void giveSendBack(Long uid, UserTaoLiJinGiveRecord record) throws UserTaoLiJinOriginException{
|
| | | if (uid == null || record == null) {
|
| | | throw new UserTaoLiJinOriginException(1, "参数不能为空");
|
| | | }
|
| | | |
| | | BigDecimal money = record.getAmount();
|
| | | |
| | | // 添加红包余额
|
| | | userMoneyExtraService.addTaoLiJin(uid, money, false);
|
| | | // 添加新增记录
|
| | | saveOrigin(uid, 1, money, TaoLiJinOriginEnum.giveSendBack);
|
| | | // 红包明细
|
| | | UserTaoLiJinDetail detail = new UserTaoLiJinDetail();
|
| | | detail.setUid(uid);
|
| | | detail.setMoney(money);
|
| | | detail.setType(TaoLiJinDetailTypeEnum.giveBack);
|
| | | detail.setTitle(TaoLiJinDetailTypeEnum.giveBack.getDesc());
|
| | | detail.setCreateTime(new Date());
|
| | | userTaoLiJinDetailService.insertSelective(detail);
|
| | | |
| | | |
| | | executor.execute(new Runnable() {
|
| | | @Override
|
| | | public void run() {
|
| | | // 退回消息
|
| | | String beiZhu = "请到我的-推广红包查看";
|
| | | SimpleDateFormat sd = new SimpleDateFormat("yyyy.MM.dd HH:mm");
|
| | | MsgOtherGiveContentDTO msgOther = new MsgOtherGiveContentDTO();
|
| | | msgOther.setType(MsgOtherGiveContentDTO.TYEP_TLJ);
|
| | | msgOther.setTitle("推广红包退回");
|
| | | msgOther.setGiveType("你赠送的¥"+ money + "元推广红包未被领取");
|
| | | msgOther.setGiveTime(sd.format(record.getGiveTime()));
|
| | | msgOther.setReturnTime(sd.format(new Date()));
|
| | | userOtherMsgNotificationService.tokenGiveMsg(record.getGiveUid(), beiZhu, msgOther);
|
| | | }
|
| | | });
|
| | | |
| | | }
|
| | | |
| | | }
|