| | |
| | | import org.springframework.stereotype.Service;
|
| | | import org.springframework.transaction.annotation.Transactional;
|
| | | import org.yeshi.utils.DateUtil;
|
| | | import org.yeshi.utils.JsonUtil;
|
| | |
|
| | | import com.yeshi.fanli.dao.mybatis.user.UserSystemCouponMapper;
|
| | | import com.yeshi.fanli.entity.bus.user.DeviceLotteryRecord;
|
| | |
| | | import com.yeshi.fanli.entity.common.JumpDetailV2;
|
| | | import com.yeshi.fanli.entity.money.UserMoneyDetail;
|
| | | import com.yeshi.fanli.entity.order.CommonOrder;
|
| | | import com.yeshi.fanli.entity.push.PushCoupon;
|
| | | import com.yeshi.fanli.entity.system.SystemCoupon;
|
| | | import com.yeshi.fanli.entity.system.SystemCoupon.CouponTypeEnum;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
|
| | |
| | | if (userSystemCoupon == null) {
|
| | | throw new UserSystemCouponException(1, "券数据不正确");
|
| | | }
|
| | | |
| | | Integer state = userSystemCoupon.getState();
|
| | | Integer stateActivated = userSystemCoupon.getStateActivated();
|
| | | if (UserSystemCoupon.STATE_CAN_USE != state || 1 != stateActivated) {
|
| | | throw new UserSystemCouponException(1, "该券不能被使用");
|
| | | }
|
| | | |
| | |
|
| | | Long couponUid = userSystemCoupon.getUid();
|
| | | if (!uid.equals(couponUid)) {
|
| | |
| | | UserSystemCoupon userSystemCoupon = selectByPrimaryKey(id);
|
| | | if (userSystemCoupon == null) {
|
| | | throw new UserSystemCouponException(1, "券信息不存在");
|
| | | }
|
| | | |
| | | Integer state = userSystemCoupon.getState();
|
| | | Integer stateActivated = userSystemCoupon.getStateActivated();
|
| | | if (UserSystemCoupon.STATE_CAN_USE != state || 1 != stateActivated) {
|
| | | throw new UserSystemCouponException(1, "该券不能被使用");
|
| | | }
|
| | |
|
| | | // 系统券信息
|
| | |
| | | return userRecordVO;
|
| | | }
|
| | |
|
| | | |
| | | @Transactional
|
| | | @Override
|
| | | public void activatedWelfareFreeCoupon(Long uid) {
|
| | | public void activatedWelfareFreeCoupon(Long uid, String fromNickName) {
|
| | | |
| | | LogHelper.test("券激活:"+uid);
|
| | | if (uid == null) {
|
| | | return;
|
| | | }
|
| | |
| | |
|
| | | for (UserSystemCoupon userSystemCoupon: list) {
|
| | | // 激活
|
| | | userSystemCoupon.setStateActivated(1);
|
| | | userSystemCoupon.setUpdateTime(new Date());
|
| | | userSystemCouponMapper.updateByPrimaryKeySelective(userSystemCoupon);
|
| | | UserSystemCoupon update=new UserSystemCoupon();
|
| | | update.setId(userSystemCoupon.getId());
|
| | | update.setStateActivated(1);
|
| | | update.setUpdateTime(new Date());
|
| | | userSystemCouponMapper.updateByPrimaryKeySelective(update);
|
| | |
|
| | | Integer state = userSystemCoupon.getState();
|
| | | if (UserSystemCoupon.STATE_OVERDUE == state) {
|
| | |
| | |
|
| | | // 消息推送
|
| | | try {
|
| | | userOtherMsgNotificationService.welfareCouponActive(userSystemCoupon, new UserInfo(uid));
|
| | | UserInfo userInfo = new UserInfo();
|
| | | userInfo.setId(uid);
|
| | | userInfo.setNickName(fromNickName);
|
| | | |
| | | userOtherMsgNotificationService.welfareCouponActive(userSystemCoupon, userInfo);
|
| | | } catch(Exception e) {
|
| | | try {
|
| | | LogHelper.errorDetailInfo(e);
|
| | |
| | |
|
| | | // 获取额外信息
|
| | | UserInfoExtra userInfoExtra = userInfoExtraService.getUserInfoExtra(uid);
|
| | | |
| | | // 已经抽过奖的或者已经进入过抽奖页面的
|
| | | if (userInfoExtra != null && userInfoExtra.getLotteryNewbies() != null) {
|
| | | return;
|
| | | }
|
| | |
| | |
|
| | | }
|
| | |
|
| | | |
| | | |
| | | }
|
| | | |