zoujiajian 1 年之前
父节点
当前提交
c1f3b365ad

+ 6 - 0
netflix-dao/src/main/java/com/cyksj/model/manage/views/GroupsRelationView.java

@@ -139,6 +139,12 @@ public class GroupsRelationView {
     @DbIgnore
     private String errorMsg;
 
+    /**
+     * 奈飞检测id
+     */
+    @DbIgnore
+    private Long nfCheckId;
+
     /**
      * 奈飞原先订单id
      */

+ 11 - 0
netflix-service/src/main/java/com/cyksj/service/mange/group/CmsGroupServiceImpl.java

@@ -94,6 +94,8 @@ public class CmsGroupServiceImpl extends ServiceImpl<GroupsMapper,GroupsTrips> i
 
     private final UserBindRelationService userBindRelationService;
 
+    private final NetflixUserAccountStatusRecordMapper netflixUserAccountStatusRecordMapper;
+
     private static final GlobalThreadPoolTaskExecutor TASK_EXECUTOR = GlobalThreadPoolTaskExecutor.getInstance();
 
 
@@ -587,6 +589,15 @@ public class CmsGroupServiceImpl extends ServiceImpl<GroupsMapper,GroupsTrips> i
                     orderDon.setRelationId(relation.getId());
                     orderDonMapper.updateById(orderDon);
                 }
+                NetflixUserAccountStatusRecord netflixUserAccountStatusRecord = netflixUserAccountStatusRecordMapper.selectOne(Wrappers.lambdaQuery(NetflixUserAccountStatusRecord.class)
+                        .in(NetflixUserAccountStatusRecord::getUserId, userIdList)
+                        .eq(NetflixUserAccountStatusRecord::getRelationId, recoverRecord.getRelationId())
+                        .eq(NetflixUserAccountStatusRecord::getDeleted, 1)
+                        .last("limit 1"));
+                if (netflixUserAccountStatusRecord != null) {
+                    netflixUserAccountStatusRecord.setDeleted(false);
+                    netflixUserAccountStatusRecordMapper.updateById(netflixUserAccountStatusRecord);
+                }
                 return recoverRecord;
             }
         }

+ 14 - 2
netflix-service/src/main/java/com/cyksj/service/relation/impl/GroupRelationFrontServiceImpl.java

@@ -1196,8 +1196,9 @@ public class GroupRelationFrontServiceImpl implements GroupRelationFrontService
 
 		Integer selectCount = netflixUserAccountStatusRecordMapper.selectCount(Wrappers.lambdaQuery(NetflixUserAccountStatusRecord.class)
 				.eq(NetflixUserAccountStatusRecord::getRelationId, relationId)
-				.eq(NetflixUserAccountStatusRecord::getUserId, userId)
-				.eq(NetflixUserAccountStatusRecord::getAccount, account));
+				.in(NetflixUserAccountStatusRecord::getUserId, userIdList)
+				.eq(NetflixUserAccountStatusRecord::getAccount, account)
+				.eq(NetflixUserAccountStatusRecord::getDeleted, 1));
 		if (selectCount > 0) {
 			throw BusinessRuntimeException.getInstance("该账号正在检测中");
 		}
@@ -1528,6 +1529,11 @@ public class GroupRelationFrontServiceImpl implements GroupRelationFrontService
 			//该车票订单id
 			changeOtherTicketRecord.setOrderId(netflixRelationView.getNfOriOrderId());
 			netflixUserChangeOtherTicketRecordMapper.insert(changeOtherTicketRecord);
+			if (netflixRelationView.getNfCheckId() != null) {
+				netflixUserAccountStatusRecordMapper.update(null, Wrappers.lambdaUpdate(NetflixUserAccountStatusRecord.class)
+						.set(NetflixUserAccountStatusRecord::getDeleted, false)
+						.eq(NetflixUserAccountStatusRecord::getId, netflixRelationView.getNfCheckId()));
+			}
 		} finally {
 			redisService.del(key);
 		}
@@ -1610,6 +1616,11 @@ public class GroupRelationFrontServiceImpl implements GroupRelationFrontService
 		//清除车票
 		GroupsRelation relation = groupsRelationMapper.selectById(relationId);
 		clearService.clearTicket(relation, UserTicketClearedRecord.Source.refund);
+		if (netflixRelationView.getNfCheckId() != null) {
+			netflixUserAccountStatusRecordMapper.update(null, Wrappers.lambdaUpdate(NetflixUserAccountStatusRecord.class)
+					.set(NetflixUserAccountStatusRecord::getDeleted, false)
+					.eq(NetflixUserAccountStatusRecord::getId, netflixRelationView.getNfCheckId()));
+		}
 		return true;
 	}
 
@@ -1863,6 +1874,7 @@ public class GroupRelationFrontServiceImpl implements GroupRelationFrontService
 		if (netflixRelationView == null) {
 			throw BusinessRuntimeException.getInstance("奈飞车票已过期");
 		}
+		netflixRelationView.setNfCheckId(netflixUseAccountStatusRecord.getId());
 		netflixRelationView.setNfOriOrderId(netflixUseAccountStatusRecord.getOrderId());
 		return netflixRelationView;
 	}