|
|
@@ -3135,8 +3135,8 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
}
|
|
|
|
|
|
//GPT独立会员续费 若为代充类型 同步代充次数
|
|
|
- if (orderDon.getGoodsId() == Constant.GPT_PLUS_GID && orderDon.getOrderType() == 2) {
|
|
|
- incrGroupsRelationRechargeRemainIfRecharge(orderDon.getRelationId(), sku.getMonths());
|
|
|
+ if (orderDon.getGoodsId() == Constant.GPT_PLUS_GID) {
|
|
|
+ incrGroupsRelationRechargeRemainIfRecharge(orderDon.getRelationId(), sku.getMonths(), orderDon.getOrderType());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -5178,22 +5178,43 @@ public class OrderDonServiceImpl extends ServiceImpl<OrderDonMapper, OrderDon> i
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void incrGroupsRelationRechargeRemainIfRecharge(Long relationId, Integer addNum) {
|
|
|
+ private void incrGroupsRelationRechargeRemainIfRecharge(Long relationId, Integer addNum, Integer orderType) {
|
|
|
GroupsRelation relation = groupsRelationMapper.selectById(relationId);
|
|
|
- if (relation.getRechargeStatus() != null) {
|
|
|
- //增加代充次数
|
|
|
- Integer rechargeRemainNum = relation.getRechargeRemainNum();
|
|
|
- Integer rechargeNum = relation.getRechargeNum();
|
|
|
- int update = 0;
|
|
|
- while (update == 0) {
|
|
|
- update = groupsRelationMapper.update(null, Wrappers.lambdaUpdate(GroupsRelation.class)
|
|
|
- .set(GroupsRelation::getRechargeRemainNum, rechargeRemainNum + addNum)
|
|
|
- .set(GroupsRelation::getRechargeNum, rechargeNum + addNum)
|
|
|
- .eq(GroupsRelation::getId, relationId)
|
|
|
- .eq(GroupsRelation::getRechargeRemainNum, rechargeRemainNum));
|
|
|
- if (update == 1) {
|
|
|
+ if (orderType == 1) {
|
|
|
+ //已发车
|
|
|
+ GroupsTrips groupsTrips = groupsMapper.selectById(relation.getGroupsId());
|
|
|
+ if (groupsTrips.getAccountId() != null) {
|
|
|
+ Account account = accountMapper.selectById(groupsTrips.getAccountId());
|
|
|
+ if (account != null) {
|
|
|
+ relation.setRechargeStatus(GroupsRelation.RechargeStatus.complete);
|
|
|
+ relation.setRechargeNum(addNum);
|
|
|
+ relation.setRechargeRemainNum(addNum - 1);
|
|
|
+ relation.setSubmitTime(DateTime.now());
|
|
|
+ relation.setSendTime(relation.getSubmitTime());
|
|
|
+ relation.setAccount(account.getAccount());
|
|
|
+ relation.setPassword(account.getPassword());
|
|
|
+ groupsRelationMapper.updateById(relation);
|
|
|
//记录gpt代充记录
|
|
|
- gptUserRechargeRecordService.recordGptUserRechargeNum(relation.getUserId(), relation.getId(), relation.getAccount(), addNum, null, "订单续费");
|
|
|
+ gptUserRechargeRecordService.recordGptUserRechargeNum(relation.getUserId(), relation.getId(), relation.getAccount(), relation.getRechargeRemainNum(), null, "下单");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //续费订单
|
|
|
+ if (relation.getRechargeStatus() != null) {
|
|
|
+ //增加代充次数
|
|
|
+ Integer rechargeRemainNum = relation.getRechargeRemainNum();
|
|
|
+ Integer rechargeNum = relation.getRechargeNum();
|
|
|
+ int update = 0;
|
|
|
+ while (update == 0) {
|
|
|
+ update = groupsRelationMapper.update(null, Wrappers.lambdaUpdate(GroupsRelation.class)
|
|
|
+ .set(GroupsRelation::getRechargeRemainNum, rechargeRemainNum + addNum)
|
|
|
+ .set(GroupsRelation::getRechargeNum, rechargeNum + addNum)
|
|
|
+ .eq(GroupsRelation::getId, relationId)
|
|
|
+ .eq(GroupsRelation::getRechargeRemainNum, rechargeRemainNum));
|
|
|
+ if (update == 1) {
|
|
|
+ //记录gpt代充记录
|
|
|
+ gptUserRechargeRecordService.recordGptUserRechargeNum(relation.getUserId(), relation.getId(), relation.getAccount(), addNum, null, "订单续费");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|