Алексей Соловьев
Заказчик Алексей Соловьев aheles | FL.RU

Алексей Соловьев

На сайте 11 лет и 7 месяцев (заходил 11 лет 2 месяца 28 дней назад)
2
154
Рейтинг
154
Все (2)       Заказы (2)        Вакансии (0)       Конкурсы (0)
Разместить заказ
18 Сентября 2013
По договоренности
1. При запуске программы реализовать ввод лицензионного ключа. Его валидность проверяется запросом к php скрипту.

Сам php скрипт проверяет варидность ключа на сервере

php скрипт все обращения и события пишет в лог (с данными клиента – IP, ключ, дату и время, наименование события)



У Ключа должна быть следующая информация (она хранится на сервере):

-Клиент (текстовое поле)

-Дата начала действия лицензии (если поле пустое – значит ключ не активирован)

-Дата окончания действия лицензии

-Срок действия лицензии (в днях)

-Комментарий (текстовое поле – не передается клиенту)

-Поставщики (текстовое поле, где через запятую перечисляются адреса сайтов поставщиков)

-Статус ключа(может принимать значения: Не активирован, На обработке, Активирован, Заблокирован)



php скрипт должен проверить срок действия ключа – и передать информацию программе. Если действие истекло – нужно выдать сообщение и предложить ввести ключ продления.



Если лицензионный ключ не активирован – нужно предложить активировать и заполнить анкету (Клиент, Поставщики)

Если это уже второй ключ (ключ продления) (т.е. мы активируем следующий ключ) – нужно не предлагать заполнить анкету – а сразу активировать ключ (записать в лог ключа инфу о продлении и изменить поля срока лицензии, дату начала и окончания)



После активации ключа у ключа меняется статус на "На обработке"





Далее мы по ftp (это по, в дальнейшем сделаем доп. программу) меняем статус на "Активирован" – и при следующем запуске php скрипта- происходит запись даты начала и окончания действия лицензии









2. При нажатии на кнопку "Загрузить" у нас должен загружаться архив с сервера через php скрипт (с проверкой лицензии)

Этот архив распаковывается – и там наши 4 dat файла. Далее все как обычно

На сервере в лиц. ключе ставится пометка – что пользователь скачал себе файлы – и их нельзя трогать. Через час – если пользователь не сохранил изменения – пометка сбрасывается.



В программе же пользователя через час всплывает сообщение что сессия завершена и нужно заново закачивать с сервера изменения (по русски) – и блокируется сохранение (пишем что нужно перезапустить программу)



При сохранении – архивом эти файлы улетают на сервер через php скрипт (причем улетают только 2 dat файла)

При этом на сервере сохраняются предыдущие версии файлов и текущие версии файлов.



Т.е. на сервере в папке с php скриптом есть структура:



Папка LIC – в ней находятся папки с именем ключа

Например такая папка:

ASBEAR-ABSDEONB32-GHSTRAGB7F



один файл .htassess (в нем блокировка на чтение всей папки)

один файл lic.start.txt (в нем ключи к основным лицензиям.) В нем строчки вида: (аналогично файле lic.update.txt)

ASBEAR-ABSDEONB32-GHSTRAGB7F 9 30 true 17.09.2013 ASBEAR-ABSDEONB32-GHSTRAGB7F

UAYSHD-ABSDEONB32-GHSTRAGB7F 9 30 false



один файл lic.update.txt (в нем в каждой строчке 3-5 переменных:

GHDGYTSD-IJHGYT76FD-UJHDETBVC9 9 30 false

GHDGYTSD-IJHGYT76FD-UJHIJABVC9 9 30 true 17.09.2013 ASBEAR-ABSDEONB32-GHSTRAGB7F



1. – Ключ продления

2. – Тип лицензии – число (от него будет зависеть функционал программы – полный или не полный)

3. – количество дней продления

4. -false – не активирован, если true – то автивирован, и будут еще 2 переменные

5. Дата активации продления

6. На каком ключе активировано

)



Папка ASBEAR-ABSDEONB32-GHSTRAGB7F (папка лицензионного ключа)



Если папка существует – то лицензионный ключ существует

Если папка не существует – то проверяем файл lic.start.txt – если в нем есть этот ключ – то создаем папку лицензии и сохраняем в ней файл info.ini с начальными данными





в папке есть файл info.ini – в котором и лежит информация о ключе (имя, даты активации, статус и т.д.)

info.update.txt – здесь будут дублироваться строчки при продлении из lic.update.txt



Т.е. будет такая строчка

GHDGYTSD-IJHGYT76FD-UJHIJABVC9 9 30 true 17.09.2013 ASBEAR-ABSDEONB32-GHSTRAGB7F

Это информационно.





Так же здесь есть папка DATA

в ней архивы всех изменений dat файлов

YYYY-MM-DD_HH-SS_IIII.zip

Где IIII – это либо CLIENT либо SERVER – в зависимости от того, кто сохранял этот архив с dat файлами



т.е. вид будет таким 2013-09-17_14-12_CLIENT.zip – появлятся файл после нажатия на кнопку "Сохранить" у клиента



Внутри архива лежат 2 файла dat (текущее сохранение)





Во время загрузки в программу, php файл берет 2 последних zip файла и именно их он передает программе.

т.е. .bak получаются из этих файлов



Итого структура следующая:

solomagazine.php

LIC

.htaccess

lic.update.txt

lic.start.txt

ASBEAR-ABSDEONB32-GHSTRAGB7F

info.ini

info.update.txt

DATA

2013-09-17_14-12_CLIENT.zip

2013-09-17_17-12_SERVER.zip





3. Реализовать обновление программы на стороне клиента (если версия на сервере и у клиента отличается) – предложить ее обновить. Если клиент не обновляет ее – то заблокировать работу


Прошло времени с момента публикации: 11 лет 3 месяца 10 дней 21 час 46 минут
Раздел: Программирование
29 Апреля 2013
По договоренности
Разработать отдельный веб-интерфейс (для просмотра с планшета) с бизнес-процессами для кафе.
Роли пользователей: Повар
-видит заказы, проставляет статусы заказам
Роли пользователей: Официант
-может добавлять заказы, ставить поле оплачено
Роли пользователей: Менеджер
видит статистику работы

Вопрос: во сколько вы оцениваете подобную разработку?


Прошло времени с момента публикации: 11 лет 7 месяцев 30 дней 20 часов 31 минута
Раздел: Сайты / Веб-программирование
Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».