Jump to content

Stargazer: АРМ Кассира


Recommended Posts

Цель проекта была организовать рабочее место кассира

(взамен конфигуратору) по пополнению счетов биллинговой

системы 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 не стоит

слет сервера вам гарантирован ))

Link to post
Share on other sites
  • Replies 50
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

Это если я не исправлю парсер, то будет ошибка incorrect header при поиске данных юзера?

Если вы попытаетесь сделать запрос по пользователю несуществующему - то просто слетает сервер биллинга

 

incorrect header - это если у Вас стоит старая версия сервера

Link to post
Share on other sites
Сам файл шифруется по паролю пользователя.

 

При запуске StgKassa пользователь вводит свой пароль по этому же паролю происходит

дешифрация файла авторизация и в расшифрованной структуре проверяется введенный пароль.

 

Если он совпадает открывается основное окно для работы.

Вот в этом месте не совсем понятна логика работы. Если пароль не правильный, то данные не смогут быть дешифрованы, т.е. и вроде проверять нечего... Зачем же тогда проверять пароль еще раз? Я слабо представляю ситуаию, что структура данных будет расскрыта, а пароль не сопадет... :)

Link to post
Share on other sites

Совершенно правильно. Если пароль будет введен не правильно то и буфер с данными будет расшифрован тоже не правильно. Но мне ведь нужно узнать правильно ли он расшифрован или нет. )))

 

PS Для расшифровки буфера вызывается процедура в которую передается адрес на входящий буфер и указывается длина буфера, а расшифровала ли она его правильно или нет нигде не видно.

Link to post
Share on other sites
Сам файл шифруется по паролю пользователя.

 

При запуске StgKassa пользователь вводит свой пароль по этому же паролю происходит

дешифрация файла авторизация и в расшифрованной структуре проверяется введенный пароль.

 

Если он совпадает открывается основное окно для работы.

Вот в этом месте не совсем понятна логика работы. Если пароль не правильный, то данные не смогут быть дешифрованы, т.е. и вроде проверять нечего... Зачем же тогда проверять пароль еще раз? Я слабо представляю ситуаию, что структура данных будет расскрыта, а пароль не сопадет... :)

Данные будут дешифрованны в любом случае. Простo при неверном пароле они будут дешифрованны неправильно и в структуре будет бред. Чтобы проверить правильность дешифровки достаточно проверить значение какого-нибуть поля. Например, пароля.

Link to post
Share on other sites

Я этот вопрос решил с помошью пхп+ mysql + sgconfig .

 

Возможности :

 

1. Сортировка по логину , адресу абонента.

2. Выводит абонов по группам

3. Пополнение счета очень просто и удобно, мартышка справится :)

4. Ведение логов пополнений каждым кассиром (кассир - админ в стг с соответствущими правами)

5. Показ суммы пополнений только за текущий день.

6. Показ финансовой статистике по месяцам и годам.

7. Возможность заморозки юзеров.

 

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

 

Всем могу поделится , но это как и у Alferov а , без подержки, во всем придется самому разбираться и делать под себя. Сразу скажу написано кривовато.

 

Архив с админкой и статой

 

Картинка админки:

1.jpg

 

Картинка страницы юзера :

2.jpg

Архив с админкой и статой

Link to post
Share on other sites

vovksextra, очень удобный, быстрый и безопасный интерфейс, но есть несколько предложений:

 

1. При поиске выдавать список вариантов если их больше 1го, у нас например по одному адресу бывает несколько пользовательских логинов

 

2. Сделать поиск по части логина, так как часто они бывают достаточно сложные и непроизносимые на русском языке.

Link to post
Share on other sites
vovksextra, очень удобный, быстрый и безопасный интерфейс, но есть несколько предложений:

 

1. При поиске выдавать список вариантов если их больше 1го, у нас например по одному адресу бывает несколько пользовательских логинов

 

2. Сделать поиск по части логина, так как часто они бывают достаточно сложные и непроизносимые на русском языке.

 

Выложил в шапке

 

Версия 1.0.1.1

 

-Добавлен поиск по логину

 

-Если при выборке обнаружен один пользователь то сразу выбирается информация по нему

 

 

Насчет списка - сделать не сложно, но идея программы была от него избавиться.

Link to post
Share on other sites

Может быть сделать что нить по типу выпадающего списка как при поиске в гугле? То есть после ввода например адреса по которому есть несколько логинов они появляются выпадающим списком и можно легко и без мышки их выбрать.

 

Для удобства делать так только при достаточных условиях для поиска, например если отфильтровалось не более 5 пользователей.

Link to post
Share on other sites

Если бы была возможностьпривязвть к этому софту протокол купюроприемника (по РС-232) - получился бы класный терминал для платежей.

 

Если есть желание, могу помочь документацией, тестами и т.д.

Link to post
Share on other sites
Я не против - но при отсутствии самого "девайса" будет невозможно что либо писать ))

Давай я тебе пришлю, или оплачу. надо прикинуть что дешевле.

по любому есть куча софта и описание протокола, смотреть в поисковиках сторону U70 - кешприемник.

 

Bill Validator ICT U70

Link to post
Share on other sites

Прочитал немного - тема интересная

 

Создай новую тему. Обзови ее "терминалы по приему платежей" или что нить похожее. И там будем вести все обсуждения. Реализация программной и аппаратной части.

 

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

Link to post
Share on other sites
Прочитал немного - тема интересная

 

Создай новую тему. Обзови ее "терминалы по приему платежей" или что нить похожее. И там будем вести все обсуждения. Реализация программной и аппаратной части.

 

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

Как на счет добовление поля телефонов?

Link to post
Share on other sites

Судя по возросшему числу просьб о добавлении тех или иных полей есть одно предложение:

 

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

Link to post
Share on other sites
  • 2 weeks later...

to vovksextra:

Ты куда пропал ? или интерес к развитию темы закончился ?

 

Кстати, можно в АПМ кассира встроить/интегрировать протокол работы с кассой, например ШТРИХ-М ?

Драйвера, мануалы, dll, ActiveX - все присутствует.

 

http://www.shtrih-m.ru/downloads/show_prod_77.html

Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...