Open hodkovdd opened 9 years ago
Сейчас кассовая форма на сервере поддерживает параметр date
, который определяет, на какую дату рассчитывать форму. Например, если передать дату на день вперед, то форма рассчитается "на завтра", что эквивалентно расчету "на сегодня" минус дневной тариф по аренде. В кассовой форме уже есть в фильтре указание даты, только нужно сделать ввод даты через календарь, а не строкой. @Argelein поправишь? У нас вроде бы где-то уже был ввод даты из календаря.
Последний абзац я не понял.
Входит в план-минимум #95
@sedovalx @hodkoff2 Проблема с временем из-за bootstrap-datepicker. он выберает только дату, без времени. Вопрос: для операций вообще нужно время выбирать? Вижу два варианта решения:
@Argelein я бы убрал этот датапикер вообще и проставлял текущее время. Позже можно будет подумать о более корректном контроле, они есть.
А почему это замечание тут сделано?
это я промахнулся :) хотя ты тут упомянул раньше меня :)
нет, это все же я не понял, о чем тут задача :) @sedovalx дата в фильтре это же не то же самое. может нужно все таки добавить новое поле даты в модель и для него сделать еще одно поле вне фильтра. К нему подойдет datapicker.
и вообще сейчас фильтрация не работает :( в каком формате надо дату давать? GET http://localhost:9000/api/reports/q-cashier-list?date=2015 500 (Internal Server Error)
Формат такой https://54.72.96.97:9443/api/reports/q-cashier-list?date=2015-07-16T12:33:23.456+03:00
, но в URI некоторые символы являются служебными, они должны кодироваться. В итоге получается вот такой вот запрос https://54.72.96.97:9443/api/reports/q-cashier-list?date=2015-07-16T12%3A33%3A23.456%2B03%3A00
. Тебе ничего специально делать не нужно для кодирования, jquery все сделает сам.
@sedovalx можно этим datetime picker'ом получить дату в таком формате?
Датапикер возвращает дату, которую можно отформатировать так, как хочется. Для форматирования разумно использовать библиотеку momentjs, которая уже кое-где используется в нашем проекте.
@sedovalx Я делаю так moment(<введенное датапикером время>).format() формат получается, как ты написал, но не работает: GET http://localhost:9000/api/reports/q-cashier-list?date=2015-07-23T22%3A38%3A20%2B03%3A00 500 (Internal Server Error)
Судя по этой ссылке, формат не такой, как я написал.
@sedovalx О да! это называется ISOstring, не мог сразу сказать? :)
Готово, работает, но выглядит по-уродски. Предлагаю пока оставить так, т.к. со стилями мне еще очень трудно. @hodkoff2 посмотри. Уже баг нашел, на него отдельно заведу задачу, сходу не понял, как исправить.
@hodkoff2 @sedovalx кстати, приложение ведь знает, какая текущая дата и какой день недели. Я могу сделать, чтобы поле заполнялось автоматически нужными днями. Дим, дни вроде известны? Это просто может быть значение по умолчанию вместо текущей даты.
Да! давай попробуем, мне кажется должно быть очень к месту.
@hodkoff2 тогда напиши, какие это должны быть дни, я не помню
@Argelein понедельник среда пятница
Посмотри momentjs, у него широкие возможности по манипуляциям с датами.
сделал автоматический расчет на следующий день снятия кассы, т.е. пн, ср и пт, на 10 утра по Москве (+3 часа). В поле отображается неверно все равно, но расчет верный. на отображения даты в поле есть отдельная задача.
Все коряво выглядит, разметка поехала.
@sedovalx
ТЕОРИЯ. С Водителей денег за аренду автомобиля надо брать вперед. Почему? Потому что они не дисциплинированные и опыт показывает, что долги получать с них сложнее чем не давать в долг. Поэтому за аренду плату надо брать вперед. Проблема в том что в неделе 7 дней, отрезки получаются разные - 2\2\3. Мы решили, что не умеем привязывать аванс к дням недели (до Среды например) - верно, Саша? поэтому делаем возможность выбора на сколько дней вперед списывать сумму по тарифу с баланса Арендный.
ДИЗАЙН: Выглядеть это должно примерно так (обведено красным):
РАБОТАТЬ должно так: кассир в начале дня выставляет цифру на нужное количество дней. Это цифра прибавляется к текущей дате. И Арендный баланс для всех Аренд рассчитывается именно до этой полученной таким образом даты. Таким образом мы получаем предоплату.
! Кстати, эту дату и количество прибавленных надо где то хранить. Таким образом мы сохраним историю кассовых дней.