Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как посчитать стоимость аренды по месяцам? (https://javascript.ru/forum/misc/66121-kak-poschitat-stoimost-arendy-po-mesyacam.html)

drkrol 26.11.2016 15:52

Как посчитать стоимость аренды по месяцам?
 
Здравствуйте. Пишу для себя скрипт для аренды номеров в гостинице. Ситуация такая: есть две даты: дата заезда и дата съезда. Допустим 10.06.2016 и 15.06.2016. Выходит, что я проживу в гостинице 5 дней. 10 числа в 12:00 заехал, 15 числа в 12:00 съехал. Всё логично.
Стоимость аренды номера варьируется от сезона/месяца. Так, к примеру, в феврале номер стоит 1000 руб/день, а в августе 4000 руб/день.
Если бронь идёт только в одном месяце, я могу её без проблем посчитать. https://jsfiddle.net/348ybgvc/8/ вот как я считаю. Но, если бронь идёт на несколько месяцев или встаёт на даты перехода одного месяца в другой (31-01), то тут начинаются проблемы.
Допустим в декабре номер стоит 2000 рублей, а в январе 1500. Если я заехал 30.12.2016 а съехал 02.01.2017, то я заплачу за эти 3 дня 5500 рублей.
(12:00 - это двенадцать часов дня)
с 30.12.2016 12:00 по 31.12.2016 12:00 - 2000 рублей
с 31.12.2016 12:00 по 01.01.2017 12:00 - 2000 рублей
с 01.01.2017 12:00 по 02.01.2017 12:00 - 1500 рублей

Как мне реализовать вот такой скрипт? который будет считать стоимость бронирования, если присутствуют в датах несколько месяцев?

drkrol 26.11.2016 17:47

Вот написал скрипт, но в нём есть ошибка и я её в упор не вижу. https://jsfiddle.net/348ybgvc/10/ укажите в дате заезда 2016-12-30, а съезд 2017-01-03. Он не правильно даты посчитает. Почему, не знаю...

drkrol 26.11.2016 17:53

Всё. нашел ошибку. https://jsfiddle.net/348ybgvc/11/


Часовой пояс GMT +3, время: 16:11.