|
|
@@ -14,6 +14,7 @@ import com.cyksj.common.util.Jsons;
|
|
|
import com.cyksj.config.zfb.BaseZfbConfig;
|
|
|
import com.cyksj.config.zfb.ZfbProductCode;
|
|
|
import com.cyksj.enums.GatewayApiCode;
|
|
|
+import com.cyksj.mapper.GroupsRelationMapper;
|
|
|
import com.cyksj.mapper.UserMapper;
|
|
|
import com.cyksj.mapper.channel.ShopConfigMapper;
|
|
|
import com.cyksj.mapper.sys.SysConfigMapper;
|
|
|
@@ -72,6 +73,8 @@ public class VipOrderDonServiceImpl extends ServiceImpl<VipOrderDonMapper, VipOr
|
|
|
|
|
|
private final GroupRelationFrontService groupRelationFrontService;
|
|
|
|
|
|
+ private final GroupsRelationMapper relationMapper;
|
|
|
+
|
|
|
@Override
|
|
|
public VipOrderDon submit(VipOrderDonPayReq payRequest) {
|
|
|
Long userId = payRequest.getUserId();
|
|
|
@@ -194,7 +197,12 @@ public class VipOrderDonServiceImpl extends ServiceImpl<VipOrderDonMapper, VipOr
|
|
|
}
|
|
|
} else vipUserMapper.updateById(vipUser);
|
|
|
//发放会员车票
|
|
|
- sendVipTicketToUser(userId);
|
|
|
+ if (orderDon.getOrderType() == 1) {
|
|
|
+ sendVipTicketToUser(userId);
|
|
|
+ } else {
|
|
|
+ //续费订单
|
|
|
+ setTicketToVipExpiryTime(userId, vipUser.getExpiryTime());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void sendVipTicketToUser(Long userId) {
|
|
|
@@ -249,4 +257,16 @@ public class VipOrderDonServiceImpl extends ServiceImpl<VipOrderDonMapper, VipOr
|
|
|
orderDon.setBalance(subBalance);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 设置会员车票同一过期时间
|
|
|
+ */
|
|
|
+ private void setTicketToVipExpiryTime(Long userId, Date expiryTime) {
|
|
|
+ relationMapper.update(null, Wrappers.lambdaUpdate(GroupsRelation.class)
|
|
|
+ .set(GroupsRelation::getExpiryTime, expiryTime)
|
|
|
+ .set(GroupsRelation::getUpdateTime, DateTime.now())
|
|
|
+ .eq(GroupsRelation::getUserId, userId)
|
|
|
+ .eq(GroupsRelation::getStatus, GroupsRelation.Status.validity)
|
|
|
+ .eq(GroupsRelation::getIsVip, Boolean.TRUE));
|
|
|
+ }
|
|
|
}
|