| | |
| | | } |
| | | |
| | | LocalDateTime now = LocalDateTime.now(); |
| | | int orderCount = orderMapper.update(null, new LambdaUpdateWrapper<TourOrder>() |
| | | .eq(TourOrder::getGuideId, guideId) |
| | | .eq(TourOrder::getReceivingSessionId, session.getId()) |
| | | .eq(TourOrder::getStatus, OrderStatus.IN_SERVICE.getCode()) |
| | | .set(TourOrder::getStatus, OrderStatus.COMPLETED.getCode()) |
| | | .set(TourOrder::getCompletedAt, now)); |
| | | int orderCount = orderMapper.completeSessionOrders(guideId, session.getId(), now); |
| | | if (orderCount == 0) { |
| | | throw new BusinessException(400, "no active service order"); |
| | | } |
| | |
| | | } |
| | | |
| | | private boolean premiumEnabled(GuideUser guide, PlatformSettingsResponse settings) { |
| | | if (guide.getAutoDisableWhitelisted() != null && guide.getAutoDisableWhitelisted() == 1) { |
| | | return true; |
| | | } |
| | | long orderCount = guide.getAcceptedOrderCount() == null ? 0 : guide.getAcceptedOrderCount(); |
| | | BigDecimal rating = guide.getRating() == null ? BigDecimal.ZERO : guide.getRating(); |
| | | BigDecimal requiredRating = settings.getPreciseDispatchRating() == null ? BigDecimal.ZERO : settings.getPreciseDispatchRating(); |