From 8c04d27e5cebb7e654c208533e9567c4df2c8acc Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期四, 12 十二月 2019 14:21:44 +0800 Subject: [PATCH] 券时间限制 --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java | 51 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 47 insertions(+), 4 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java index c6840f3..96dfaef 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/TokenRecordServiceImpl.java @@ -16,6 +16,7 @@ import com.yeshi.fanli.dto.msg.MsgInviteContentDTO; import com.yeshi.fanli.dto.msg.MsgOtherGiveContentDTO; import com.yeshi.fanli.dto.msg.MsgRedPackGiveContentDTO; +import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.bus.msg.MsgMoneyDetail.MsgTypeMoneyTypeEnum; import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinGiveRecord; import com.yeshi.fanli.entity.bus.user.TokenRecord; @@ -48,6 +49,7 @@ import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TokenUtil; +import com.yeshi.fanli.util.VersionUtil; import com.yeshi.fanli.vo.msg.TokenVO; @Service @@ -117,7 +119,7 @@ } @Override - public TokenVO discernToken(String token, Long uid) throws TokenRecordException { + public TokenVO discernToken(String token, Long uid, AcceptData acceptData) throws TokenRecordException { // 瑙f瀽鍙d护 String parseToken = TokenUtil.parseToken(token); if (StringUtil.isNullOrEmpty(parseToken)) @@ -218,6 +220,10 @@ throw new TokenRecordException(1, "鍙d护宸插け鏁�"); } } else if (tokenType == TokenTypeEnum.redPack) { + if(!VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) + throw new TokenRecordException(1, "璇峰崌绾у埌鏈�鏂扮増"); + + type = 13; RedPackGiveRecord giveRecord = redPackGiveRecordService.selectByPrimaryKey(Long.parseLong(identify)); if (giveRecord == null) @@ -288,7 +294,7 @@ @Override - public String receiveToken(String token, Long uid) throws TokenRecordException { + public String receiveToken(String token, Long uid, AcceptData acceptData) throws TokenRecordException { if (uid == null || uid <= 0) throw new TokenRecordException(1, "鐢ㄦ埛鏈櫥褰�"); @@ -504,6 +510,9 @@ } }); } else if (tokenType == TokenTypeEnum.redPack) { + if(!VersionUtil.greaterThan_2_1(acceptData.getPlatform(), acceptData.getVersion())) + throw new TokenRecordException(1, "璇峰崌绾у埌鏈�鏂扮増"); + try { msg = "棰嗗彇绾㈠寘鎴愬姛锛岃鍒癧鎴戠殑-绾㈠寘]涓煡鐪�"; // 棰嗗彇绾㈠寘銆佹洿鏂拌褰� @@ -542,7 +551,7 @@ if (user != null && !StringUtil.isNullOrEmpty(user.getNickName())) userName = user.getNickName(); MsgRedPackGiveContentDTO givedto = new MsgRedPackGiveContentDTO(); - givedto.setTitle("绾㈠寘棰嗗彇"); + givedto.setTitle("绾㈠寘璧犻��"); givedto.setUserInfo("鏄电О锛�" + userName + " ID锛�" + uid); givedto.setTime(sd.format(new Date())); givedto.setMoney("楼" + giveRecord.getAmount().setScale(2)); @@ -593,10 +602,18 @@ try { UserInfo user = userInfoService.selectByPKey(giveUid); UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid); + + String inviteCode = null; + if (!StringUtil.isNullOrEmpty(userInfoExtra.getInviteCodeVip())) { + inviteCode = userInfoExtra.getInviteCodeVip(); + } else { + inviteCode = userInfoExtra.getInviteCode(); + } + MsgInviteContentDTO msgInvite = new MsgInviteContentDTO(); msgInvite.setTitle("閭�璇锋秷鎭�"); msgInvite.setState("鎴愬姛婵�娲婚個璇�"); - msgInvite.setCode("浣犵殑閭�璇风爜锛�" + userInfoExtra.getInviteCode()); + msgInvite.setCode("浣犵殑閭�璇风爜锛�" + inviteCode); msgInvite.setInviter("鏄电О锛�"+user.getNickName()); msgInvite.setMode("鎴愬姛棰嗗彇閭�璇蜂汉鐨�" + giftName); userInviteMsgNotificationService.receiveGift(uid, "閭�璇峰叧绯讳竴鏃︾‘绔嬫棤娉曟洿鏀� ", msgInvite); @@ -617,9 +634,35 @@ return; Date date = new Date(); for (TokenRecord tokenRecord: list) { + Integer state = tokenRecord.getState(); + if (state != null && state == 0) + continue; + tokenRecord.setState(1); tokenRecord.setUpdateTime(date); tokenRecordMapper.updateByPrimaryKeySelective(tokenRecord); } } + + + @Override + public void invalidByRedPack(Long id) { + if (id == null) + return; + + List<String> list = new ArrayList<String>(); + list.add(TokenTypeEnum.redPack.name()); + tokenRecordMapper.invalidByTypeAndIdentify(list, id.toString()); + } + + @Override + public void invalidByCoupon(Long id) { + if (id == null) + return; + + List<String> list = new ArrayList<String>(); + list.add(TokenTypeEnum.freeCoupon.name()); + list.add(TokenTypeEnum.rebatePercentCoupon.name()); + tokenRecordMapper.invalidByTypeAndIdentify(list, id.toString()); + } } -- Gitblit v1.8.0