Система учета "Заявки и Наряды" на java

Материал из BiTel WiKi

Перейти к: навигация, поиск

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

сайт программы www.i-hi.ru - обновленная версия! И многое другое!

Сокращенно я ее называю "Заявки и Наряды". Программа пока не адатирована под BGBilling, а работает с биллингом Netup. Если приложить немного усилий, то тоже самое будет и возможно с BGBilling`ом.

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

Вообщем вот ссылка на проект для Eclipse Galileo [1] архив с паролем: 123456 Соответственно проект потребует некоторых дополнительных библиотек для сборки программы: Вот собственно на которой показаны настройки Eclipse у меня на рабочем месте, у вас должно быть тоже самое. Для окон я использовал Visual Editor for Eclipse.

Файл:Settings.jpg

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

Файл:Start.jpg


Соответственно рекомендую для первого ознакомления всетаки поставить тестовую версию биллинга Netup UTM5.

Дальше , чтоб вам не мучаться объясню где есть подводные камни, если посмотреть на главное окно(см. выше) то видно ,что с левой стороны - это подключение к базе данных UTM5 (следовательно нужно адаптировать под bgbilling в дальнейшем), с права это подключение к базе данных заявок и нарядов.Вот здесь такой ньюанс: в полях "логин" и "пароль" вводятся данные , которые хранятся в таблице базы UTM5_OFFER, называется она system_accounts. Файл:System_accounts.jpg


в таблице system_accounts заводятся системные пользователи чтобы программа заработала(т.е. было подключение к обоим базам данных) нужно первого пользователя завести ручками, например через phpmyadmin, либо другим удобным для вас способом. И указать этому пользователю полные права администратора в поле right_user(выставить значение -2 (обведено красным кружком)).

И еще один шаг:

В проекте Eclipse откройте файл CDialogStart.java и по поиску(ctrl+F)

ведите строку "kusto","root",jTextFieldNameUTMOFFER.getText()))

вы увидите вот такой код:

if(StartProgram(jTextFieldServer.getText(),jTextFieldPort.getText(), jTextFieldLogin.getText(),jPasswordFieldPass.getText(),jTextFieldNameUTM5.getText(), jTextFieldServerOffer.getText(),jTextFieldPortOffer.getText(), //"manager","123qqpizdec",jTextFieldNameUTMOFFER.getText())) "kusto","root",jTextFieldNameUTMOFFER.getText()))

Здесь выделенные жирным шрифтом логин и пароль нужно заменить на свои, те которые будут указаны в левой части первого окна программы(см. выше)

Если все правильно сделали и не получили никаких ошибок при запуске программы, то должны будете увидеть потом главное окно программы:


Файл:Main.jpg


После можно под этим пользователем войти и уже через интерфейс программы завести других юзеров. Поясню по поводу разграничений прав: Существует 5-е типа : 0 - Менеджер (заявки); 1 - Менеджер (наряды кроме тех. поддержки) 2 - Менеджер (наряды только тех. поддержка) 3 - Пользователь (только просмотр и печать) -2 - Администратор(все права соответственно)

Конфиг программы создается автоматически и шифруется(файл UTM_Admin_Lanoptic.cfg)

После шифрования выглядит следующим образом:

yNoZRgxMk6M6e2zciqdECg== p4+1jc4BSz1YG6rnpmcDxw== IptW5Xq+9m8eFus8KmqZvA== pOX0x8TrmxNIQrxAudh4fzY/5HmuuVw4 qROurD/9XqY8WYWdagMQQg== PYDOahz6T9G/oSAr832/mw== PE23Cicx2T75mlIBhd4Tww== vBVqCxLtXqUgFDFhSY31qqTLxUIrh8DC 1xDDU0I0N707j3LY3qEqrg== FJdzDZ6DENeDffdPoAH+v1WznBtLg47z LQxGXRUsZfOmOvcmvsEpCA== PE23Cicx2T5o7UoAh8ezmPrpGmOWm1gqn5+nm6aaHVM=


Еще не забудьте о самих печатных формах нарядов, заявок и счетов:

это файлы в проекте которые по умолчанию должны лежать в той же директории где и запускной файл программы:

accounts.jrxml

offers.jrxml

offers_shutdown.jrxml

offers_tech_support.jrxml

orders.jrxml

transfer.jrxml

Все файлы можно просмотреть, отредактировать и сохранить в iReport-3.7.0

Ниже прилагаю еще скрины программы:

Файл:Main2.jpg


Файл:Main3.jpg


Файл:Main4.jpg


Файл:Main5.jpg


Файл:Main6.jpg


Файл:Main7.jpg


Это скрипт самой структуры базы UTM5_OFFER

-- phpMyAdmin SQL Dump
-- version 3.2.5
-- http://www.phpmyadmin.net
--
-- Хост: localhost
-- Время создания: Май 25 2010 г., 09:34
-- Версия сервера: 5.0.89
-- Версия PHP: 5.2.9
 
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
 
 
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
 
--
-- База данных: `UTM5_OFFER`
--
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `history_edit`
--
 
CREATE TABLE IF NOT EXISTS `history_edit` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `user_id` INT(11) NOT NULL,
  `id_offer_order` INT(11) NOT NULL,
  `date_edit` INT(11) NOT NULL,
  `type_operation` TEXT NOT NULL,
  `is_offer_order` INT(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=65 ;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `leader`
--
 
CREATE TABLE IF NOT EXISTS `leader` (
  `id_leader` INT(11) NOT NULL AUTO_INCREMENT,
  `name_leader` TEXT NOT NULL,
  `is_deleted` INT(11) NOT NULL,
  PRIMARY KEY  (`id_leader`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `offers`
--
 
CREATE TABLE IF NOT EXISTS `offers` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `is_deleted` INT(11) NOT NULL,
  `second_name` TEXT,
  `name` TEXT,
  `name3` TEXT,
  `passport_serial` TEXT,
  `passport_number` TEXT,
  `passport_give` TEXT,
  `date_of_grant` TEXT,
  `reference_address` TEXT,
  `location_address` TEXT,
  `home_phone` TEXT,
  `cell_phone` TEXT,
  `date_create_offers` DATE DEFAULT NULL,
  `is_process` INT(11) NOT NULL,
  `is_create_orders` INT(11) NOT NULL DEFAULT '0',
  `type_offers` TEXT,
  `number_client` TEXT,
  `entrance` TEXT,
  `FLOOR` TEXT,
  `reference_address_too` TEXT,
  `motive` TEXT,
  `entrance_too` TEXT,
  `floor_too` TEXT,
  `phone_contact` TEXT,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2453 ;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `orders`
--
 
CREATE TABLE IF NOT EXISTS `orders` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `id_offers` INT(11) NOT NULL,
  `orders_status` TEXT,
  `orders_type` TEXT,
  `leader` TEXT,
  `date_delivery` TEXT NOT NULL,
  `comments` TEXT NOT NULL,
  `date_delivery_end` TEXT NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2487 ;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `regions`
--
 
CREATE TABLE IF NOT EXISTS `regions` (
  `zones` TEXT NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
 
-- --------------------------------------------------------
 
--
-- Структура таблицы `system_accounts`
--
 
CREATE TABLE IF NOT EXISTS `system_accounts` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `login` TEXT NOT NULL,
  `pass` TEXT NOT NULL,
  `right_user` INT(11) NOT NULL,
  `is_deleted` INT(11) NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=23 ;

Вообщем смотрите разбирайтесь, жду пожеланий и предложений от всех!

Можно ее здорово было бы адаптировать под всякие нужды.

--Kusto 07:06, 26 мая 2010 (UTC)

мое мыло dlkustov@mail.ru

Личные инструменты