Woocommerce Bookings перебирает ресурсы - устранение неполадок - PullRequest
0 голосов
/ 14 апреля 2020

(Некоммерческая общественная организация, предоставляющая необходимую услугу.) Я не знаю, является ли это ошибкой в ​​Woocommerce или проблемой с нашей настройкой и пользовательским кодом, который я реализовал, чтобы изменить начало и окончание бронирования sh даты. Несмотря на это, наша организация не может позволить себе поддержку Woocommerce, и я очень перегружен тем, что помогаю людям с помощью блокировки, поэтому я был бы очень признателен за то, чтобы уделить больше внимания sh решению этой проблемы!

В нашей организации установлена ​​система бронирования до которого люди могут забронировать ресурсы. Существует три различных «продукта», которые установлены на «Заказываемый продукт». Каждый из них имеет уникальные ресурсы, которые пронумерованы (так что я могу отслеживать, сколько из них используется и кем). Для каждого ресурса установлено Доступное количество 1.

Например, у Продукта А есть 4 уникальных ресурса: ARes1, ARes2, ARes3 и ARes4. Продукт A имеет эти 4 ресурса, установленные на вкладке Ресурсы.

Продукт B имеет 2 уникальных ресурса с именами BRes1 и BRes2. Для продукта B эти ресурсы установлены на вкладке Ресурсы.

Для каждого продукта имеются следующие настройки:

  • Продолжительность бронирования установлена ​​на фиксированные блоки по 35 дней. (6 недель) с 6-дневным буфером.

  • Ресурсы назначаются автоматически.

  • Максимальное количество заказов на блок составляет 1

  • Все даты доступны по умолчанию

  • Проверка правил по всем забронированным блокам

У меня есть фрагмент кода, который вычитает 3 недели с даты начала и окончания бронирования (чтобы людям не приходилось рассчитывать это самостоятельно при бронировании)

function modify_woocommerce_booking_date( $booking_id ) {
    $booking = new WC_Booking( $booking_id );

    $booking_start = $booking->get_start();
    $booking_end = $booking->get_end();

    $new_booking_start = strtotime ( '-3 week' , $booking_start ) ;
    $new_booking_end = strtotime ( '-3 week' , $booking_end ) ;

    $booking->set_start( $new_booking_start );
    $booking->set_end($new_booking_end);
    $booking->save();
}
add_action( 'woocommerce_new_booking', 'modify_woocommerce_booking_date');

Ref: бронирование woocommerce вычитает недели или дни из выбранной даты

Когда я смотрю на календарь на внешнем интерфейсе, слоты выглядят правильно зарезервированными для меня. Однако у меня иногда были заказы на одно и то же дублирование ресурса (в начале / конце). Через несколько дней go произошло резервирование, которое на несколько недель полностью перекрывает один и тот же ресурс (и все ресурсы резервируются для этого слота в любом случае). Сегодня у меня было резервирование на одно и то же перекрытие ресурса на 5 дней (11, если вы включили буфер), хотя был еще один доступный ресурс, который он должен был назначить.

Так что я понятия не имею, на что идут люди календарь, который позволяет им выбирать забронированные слоты или почему Woocommerce Bookings назначает забронированный ресурс вместо доступного.

В настоящее время я изменил заказы на Требуется подтверждение. Но это тратит больше моего времени на управление, которого сейчас очень мало. У меня теперь тоже есть горе от того, что я сказал кому-то, что не могу им помочь, и отменил их бронирование, потому что система как-то позволяла им бронировать, когда этого не должно было ?

Я попытался изменить режим отображения Календаря на случай, если это была проблема с кэшированием календаря. Но это не имеет значения. Litespeed Cache включен, но для доступных для бронирования продуктов установлено значение Без оптимизации / Без кэширования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...