vovksextra Posted December 15, 2007 at 06:06 PM Posted December 15, 2007 at 06:06 PM Цель проекта была организовать рабочее место кассира (взамен конфигуратору) по пополнению счетов биллинговой системы stargazer при этом были выдвинуты ряд требований к проекту, а именно: 1. Защита 2. простота и удобство пользования 3. Организовать поиск абонента по адресу,фамилии,айпи. 4. ведение логов пополнения Реализация 1. Защита Администратор при помощи StgKassaAdmin.exe готовит файл авторизации где прописаны адрес сервера,порт сервера,логин администратора,пароль администратора, пароль пользователя и время действия ключа. После генерации файла он ложится вместе с StgKassa.exe Сам файл шифруется по паролю пользователя. При запуске StgKassa пользователь вводит свой пароль по этому же паролю происходит дешифрация файла авторизация и в расшифрованной структуре проверяется введенный пароль. Если он совпадает открывается основное окно для работы. Защита от взлома. Даже если выкинуть проверку на введенный пароль пользователя, то зашифрованными останутся все данные по серверу. 2. Простота и удобство Запустив программу - можно всторону убрать манипулятор типа "мышь" и в вашем расположении останутся только клавиши для перехода по полям (Shift+Tab,Enter) и клавиша ESc для закрытия окон, а также клавша F7 - зарегистрировання горячая клавиша в ОС, которая всегда вызывает окно поиска, даже если программа свернута в трей. 3. Поиск При нажатии клавиши F7 вызывается окно поиска где вы можете задать условие поиска Для поиска фамилии,например, Иванов Иван Иванович вы можете просто ввести "ов" или "ванов" , то-есть часть фамилии. Например, если вам нужно найти абонента Сидоров Иван Ивановича, проживающего на ул.ленина,34 вам будет достаточно ввести,например в поле фамилия "ров" , в поле адрес "лен" или "34" , если пользователь будет найден и он будет один, то окно поиска будет автоматически закрыто и в поле логин, появится его логин 4. После удачного пополнения в лог файл (StgKassa.log) пропишется информация о пополнении счета данному пользователю. Вот в общем и все версия 1.0.1.2 Берем здесь Принимаются критика,пожелания,моральная поддержка и материальная Для материально поддержки WMZ: Z339491627945 Пробуем и оставляем свои отзывы PS Отдельное спасибо коллективу сети http://komservice.net/ за оказанную поддержку и моральную и техническую. ЗАМЕЧАНИЕ ПО ИСПОЛЬЗОВАНИЮ настоятельно рекомендую проверить исходники сервера, а именно ищем модуль \projects\stargazer\plugins\configuration\sgconfig\parser.cpp Ищем текст void PARSER_GET_USER::CreateAnswer() { string s; char enc[1024]; user_iter u; //answerList->clear(); answerList->erase(answerList->begin(), answerList->end()); if (users->FindByName(login, &u)) { s = "<user result=\"error\"/>"; answerList->push_back(s); !!!!!!!!!! ЗДЕСЬ Должен быть return; } Если return не стоит можно его добавить самому и перекомпилировать Если вы случайно вызовите из 1С метод GetUser по несуществующему пользователю и return не стоит слет сервера вам гарантирован ))
Serjio Posted December 15, 2007 at 07:00 PM Posted December 15, 2007 at 07:00 PM тест прошел успешно, ошибок нет. os Linux FC5 Stg 2.403b
vovksextra Posted December 15, 2007 at 07:12 PM Author Posted December 15, 2007 at 07:12 PM ок.спс. ))
zulu_Radist Posted December 16, 2007 at 05:53 AM Posted December 16, 2007 at 05:53 AM Это если я не исправлю парсер, то будет ошибка incorrect header при поиске данных юзера?
Max Posted December 16, 2007 at 06:48 AM Posted December 16, 2007 at 06:48 AM на 13.47.20 тоже вроде работает
vovksextra Posted December 16, 2007 at 10:11 AM Author Posted December 16, 2007 at 10:11 AM Это если я не исправлю парсер, то будет ошибка incorrect header при поиске данных юзера? Если вы попытаетесь сделать запрос по пользователю несуществующему - то просто слетает сервер биллинга incorrect header - это если у Вас стоит старая версия сервера
vop Posted December 17, 2007 at 03:01 PM Posted December 17, 2007 at 03:01 PM Сам файл шифруется по паролю пользователя. При запуске StgKassa пользователь вводит свой пароль по этому же паролю происходит дешифрация файла авторизация и в расшифрованной структуре проверяется введенный пароль. Если он совпадает открывается основное окно для работы. Вот в этом месте не совсем понятна логика работы. Если пароль не правильный, то данные не смогут быть дешифрованы, т.е. и вроде проверять нечего... Зачем же тогда проверять пароль еще раз? Я слабо представляю ситуаию, что структура данных будет расскрыта, а пароль не сопадет...
vovksextra Posted December 17, 2007 at 04:48 PM Author Posted December 17, 2007 at 04:48 PM Совершенно правильно. Если пароль будет введен не правильно то и буфер с данными будет расшифрован тоже не правильно. Но мне ведь нужно узнать правильно ли он расшифрован или нет. ))) PS Для расшифровки буфера вызывается процедура в которую передается адрес на входящий буфер и указывается длина буфера, а расшифровала ли она его правильно или нет нигде не видно.
madf Posted December 17, 2007 at 04:49 PM Posted December 17, 2007 at 04:49 PM Сам файл шифруется по паролю пользователя. При запуске StgKassa пользователь вводит свой пароль по этому же паролю происходит дешифрация файла авторизация и в расшифрованной структуре проверяется введенный пароль. Если он совпадает открывается основное окно для работы. Вот в этом месте не совсем понятна логика работы. Если пароль не правильный, то данные не смогут быть дешифрованы, т.е. и вроде проверять нечего... Зачем же тогда проверять пароль еще раз? Я слабо представляю ситуаию, что структура данных будет расскрыта, а пароль не сопадет... Данные будут дешифрованны в любом случае. Простo при неверном пароле они будут дешифрованны неправильно и в структуре будет бред. Чтобы проверить правильность дешифровки достаточно проверить значение какого-нибуть поля. Например, пароля.
dnserg Posted December 24, 2007 at 07:44 PM Posted December 24, 2007 at 07:44 PM Я этот вопрос решил с помошью пхп+ mysql + sgconfig . Возможности : 1. Сортировка по логину , адресу абонента. 2. Выводит абонов по группам 3. Пополнение счета очень просто и удобно, мартышка справится 4. Ведение логов пополнений каждым кассиром (кассир - админ в стг с соответствущими правами) 5. Показ суммы пополнений только за текущий день. 6. Показ финансовой статистике по месяцам и годам. 7. Возможность заморозки юзеров. Есть также страница статистики клиента(детальная статистика, сессии, перевод денег другому абону, изменение тарифа, краткие данные). Всем могу поделится , но это как и у Alferov а , без подержки, во всем придется самому разбираться и делать под себя. Сразу скажу написано кривовато. Архив с админкой и статой Картинка админки: Картинка страницы юзера : Архив с админкой и статой
dnserg Posted December 25, 2007 at 02:42 PM Posted December 25, 2007 at 02:42 PM На другой сервак перезалил. Ссылки подправил. На тот хостинг заливаю норм архив, качаю битый, странно. Здесь тоже
Genius Posted December 25, 2007 at 03:38 PM Posted December 25, 2007 at 03:38 PM vovksextra, очень удобный, быстрый и безопасный интерфейс, но есть несколько предложений: 1. При поиске выдавать список вариантов если их больше 1го, у нас например по одному адресу бывает несколько пользовательских логинов 2. Сделать поиск по части логина, так как часто они бывают достаточно сложные и непроизносимые на русском языке.
vovksextra Posted December 25, 2007 at 06:14 PM Author Posted December 25, 2007 at 06:14 PM vovksextra, очень удобный, быстрый и безопасный интерфейс, но есть несколько предложений: 1. При поиске выдавать список вариантов если их больше 1го, у нас например по одному адресу бывает несколько пользовательских логинов 2. Сделать поиск по части логина, так как часто они бывают достаточно сложные и непроизносимые на русском языке. Выложил в шапке Версия 1.0.1.1 -Добавлен поиск по логину -Если при выборке обнаружен один пользователь то сразу выбирается информация по нему Насчет списка - сделать не сложно, но идея программы была от него избавиться.
Genius Posted December 25, 2007 at 06:24 PM Posted December 25, 2007 at 06:24 PM Может быть сделать что нить по типу выпадающего списка как при поиске в гугле? То есть после ввода например адреса по которому есть несколько логинов они появляются выпадающим списком и можно легко и без мышки их выбрать. Для удобства делать так только при достаточных условиях для поиска, например если отфильтровалось не более 5 пользователей.
vovksextra Posted December 25, 2007 at 06:31 PM Author Posted December 25, 2007 at 06:31 PM Я подумаю как можно это реализовать
den68 Posted January 2, 2008 at 06:04 PM Posted January 2, 2008 at 06:04 PM Если бы была возможностьпривязвть к этому софту протокол купюроприемника (по РС-232) - получился бы класный терминал для платежей. Если есть желание, могу помочь документацией, тестами и т.д.
vovksextra Posted January 3, 2008 at 09:53 AM Author Posted January 3, 2008 at 09:53 AM Я не против - но при отсутствии самого "девайса" будет невозможно что либо писать ))
den68 Posted January 3, 2008 at 06:15 PM Posted January 3, 2008 at 06:15 PM Я не против - но при отсутствии самого "девайса" будет невозможно что либо писать )) Давай я тебе пришлю, или оплачу. надо прикинуть что дешевле. по любому есть куча софта и описание протокола, смотреть в поисковиках сторону U70 - кешприемник. Bill Validator ICT U70
vovksextra Posted January 4, 2008 at 08:11 AM Author Posted January 4, 2008 at 08:11 AM Прочитал немного - тема интересная Создай новую тему. Обзови ее "терминалы по приему платежей" или что нить похожее. И там будем вести все обсуждения. Реализация программной и аппаратной части. Нужно определиться что в итоге мы хотим получить. Как все правильно организовать. На каком уровне все будет вестись. Ведь возникает очень много вопросов. Вообщем поднимай тему, а там решим что нам нужно )))
Bungee Posted January 6, 2008 at 12:39 PM Posted January 6, 2008 at 12:39 PM Прочитал немного - тема интересная Создай новую тему. Обзови ее "терминалы по приему платежей" или что нить похожее. И там будем вести все обсуждения. Реализация программной и аппаратной части. Нужно определиться что в итоге мы хотим получить. Как все правильно организовать. На каком уровне все будет вестись. Ведь возникает очень много вопросов. Вообщем поднимай тему, а там решим что нам нужно ))) Как на счет добовление поля телефонов?
vovksextra Posted January 6, 2008 at 02:30 PM Author Posted January 6, 2008 at 02:30 PM Забирай из "шапки" Версия 1.0.1.2 -Добавлен вывод номера телефона
Genius Posted January 6, 2008 at 04:19 PM Posted January 6, 2008 at 04:19 PM Судя по возросшему числу просьб о добавлении тех или иных полей есть одно предложение: В каждой сети есть свои особенности, кто то определяет абонентов по полям типа адрес и фамилия, кто то по комментарию (номер договора в нем) и так далее, поэтому может быть стоит рассмотреть вариант включения гибкого числа полей. Какие именно поля включать кассиру будет задавать его ключ, таким образом каждый сможет выбирать нужный набор для нужного кассира и для своей ситуации.
den68 Posted January 20, 2008 at 07:59 PM Posted January 20, 2008 at 07:59 PM to vovksextra: Ты куда пропал ? или интерес к развитию темы закончился ? Кстати, можно в АПМ кассира встроить/интегрировать протокол работы с кассой, например ШТРИХ-М ? Драйвера, мануалы, dll, ActiveX - все присутствует. http://www.shtrih-m.ru/downloads/show_prod_77.html
vovksextra Posted January 21, 2008 at 06:54 AM Author Posted January 21, 2008 at 06:54 AM Почему пропал? Я отписал тебе письмо на мыло. Пока без ответа ))
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now