Andrei Posted January 4, 2018 Posted January 4, 2018 ... и упомянутая вами "кастомизация под требования местных органов" еще за дополнительные деньги? Вставить ник Quote
saaremaa Posted January 5, 2018 Posted January 5, 2018 Там их писать минут 20 с чаем и перекурами. Вставить ник Quote
Andrei Posted January 5, 2018 Posted January 5, 2018 1 час назад, saaremaa сказал: Там их писать минут 20 с чаем и перекурами. Ну-ну. Я уже пробовал. Ни фига это не просто получается. Вставить ник Quote
SyJet Posted January 5, 2018 Posted January 5, 2018 Господа - кто-нить делал генерацию счетов в pdf? Поделитесь плиз Вставить ник Quote
lidia Posted January 12, 2018 Posted January 12, 2018 В 04/01/2018 в 22:21, Andrei сказал: ... и упомянутая вами "кастомизация под требования местных органов" еще за дополнительные деньги? На основании требований к оператору связи мы предоставляем оценку стоимости с учетом сделанных наработок (уже с учетом кастомизации). Вставить ник Quote
Andrei Posted January 12, 2018 Posted January 12, 2018 2 часа назад, lidia сказал: На основании требований к оператору связи Еще раз - требования типовые, утверждены ППРФ Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 При ревизии абон.базы ЛБ для выгрузок в СОРМ аыявил в accounts пустую запись: > select a.uid, a.login, a.name, a.abonent_surname, a.abonent_name, a.abonent_patronymic,agr.number from accounts as a, agreements as agr where a.uid=agr.uid and a.uid=6 ; +-----+-------+------+-----------------+--------------+--------------------+-------------+ | uid | login | name | abonent_surname | abonent_name | abonent_patronymic | number | +-----+-------+------+-----------------+--------------+--------------------+-------------+ | 6 | NULL | | | | | 14-01/140_1 | | 6 | NULL | | | | | 14-02/140_2 | | 6 | NULL | | | | | number-248 | +-----+-------+------+-----------------+--------------+--------------------+-------------+ 3 rows in set (0.00 sec) При том, что реальный абонент с договором номер 14-01/140 вот он: select a.uid, a.login, a.name, a.abonent_surname, a.abonent_name, a.abonent_patronymic,agr.number from accounts as a, agreements as agr where a.uid=agr.uid and agr.number="14-01/140"; +-----+-------+-------------------------------------------------------------------------------------+-----------------+--------------+--------------------+-----------+ | uid | login | name | abonent_surname | abonent_name | abonent_patronymic | number | +-----+-------+-------------------------------------------------------------------------------------+-----------------+--------------+--------------------+-----------+ | 262 | bshu | Баххххххх ххххххххххххххххххххххххххххххОАО | | | | 14-01/140 | +-----+-------+-------------------------------------------------------------------------------------+-----------------+--------------+--------------------+-----------+ 1 row in set (0.01 sec) Думаю - подчищу базу, чтоб не отсвечивала пустая запись в выгрузках в СОРМ (там такое не допускается), однако ж delete from accounts where uid=6; ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint fails (`billing`.`card_set`, CONSTRAINT `card_set_ibfk_2` FOREIGN KEY (`acc_tpl`) REFERENCES `accounts` (`uid`)) Как я понимаю - связанные записи в других таблицах? Но не пойму где именно: mysql> select * from card_set ; +--------+----------------------------------------------------+------------+--------+---------+---------------+ | set_id | set_descr | created_by | cur_id | acc_tpl | expire_period | +--------+----------------------------------------------------+------------+--------+---------+---------------+ | 1 | Универсальная карта оплаты | 0 | 1 | 6 | 0 | +--------+----------------------------------------------------+------------+--------+---------+---------------+ 1 row in set (0.00 sec) Кто сталкивался с таким или подобным? Карты оплаты не используем. Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 И попутно спрошу - в каком поле хранится параметр, указывающий к какому агенту относится учетка (скорее всего таблица vgroups)? describe vgroups; +----------------+---------------------+------+-----+---------------------+----------------+ | Field | Type | Null | Key | Default | Extra | +----------------+---------------------+------+-----+---------------------+----------------+ | vg_id | int(11) | NO | PRI | NULL | auto_increment | | uid | int(11) | YES | MUL | NULL | | | cu_id | int(11) | YES | MUL | NULL | | | descr | varchar(255) | NO | | | | | login | varchar(128) | YES | MUL | NULL | | | pass | varchar(128) | YES | | NULL | | | agrm_id | int(11) | YES | MUL | NULL | | | blk_req | tinyint(4) | NO | MUL | 0 | | | blocked | tinyint(4) | NO | MUL | 0 | | | changed | tinyint(4) | NO | MUL | 0 | | | tar_id | int(11) | YES | MUL | NULL | | | id | int(11) | NO | MUL | 0 | | | shape | int(10) unsigned | NO | | 0 | | | c_date | date | NO | MUL | 0000-00-00 | | | d_limit | bigint(20) unsigned | NO | | 0 | | | d_clear | date | YES | | NULL | | | max_sessions | int(11) | NO | | 1 | | | amount | double | NO | | 0 | | | current_shape | int(10) unsigned | NO | | 0 | | | ip_det | tinyint(1) | NO | | 0 | | | port_det | tinyint(1) | NO | | 0 | | | archive | tinyint(1) | NO | MUL | 0 | | | acc_ondate | datetime | NO | MUL | 0000-00-00 00:00:00 | | | acc_offdate | datetime | NO | MUL | 0000-00-00 00:00:00 | | | block_date | datetime | NO | | 0000-00-00 00:00:00 | | | creation_date | timestamp | NO | | CURRENT_TIMESTAMP | | | template | tinyint(1) | NO | | 0 | | | dirty | tinyint(4) | NO | | 0 | | | connected_from | int(11) | YES | | NULL | | | parent_vg_id | int(11) | YES | MUL | NULL | | | port_id | int(11) | YES | MUL | NULL | | | user_packet_id | int(11) | YES | MUL | NULL | | +----------------+---------------------+------+-----+---------------------+----------------+ 32 rows in set (0.00 sec) Вставить ник Quote
Susanin Posted February 21, 2018 Posted February 21, 2018 id | int(11) | NO | MUL | 0 Вставить ник Quote
Heggi Posted February 21, 2018 Posted February 21, 2018 В первом случае uid=6, а во втором 262. Это разные абоненты с точки зрения БД. Да и номера договоров различаются. 14-01/140_1 != 14-01/140 Думаю надо смотреть в поле archive, если оно 1 - то учетка/договор/абонент удалены (через веб-интерфейс не видно будет) и в СОРМ удаленных выгружать наверное не стоит. ID агента - vgroups.id Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 mysql> select count(*) from accounts where login=''; +----------+ | count(*) | +----------+ | 0 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from accounts where login=NULL; +----------+ | count(*) | +----------+ | 0 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from accounts where login='NULL'; +----------+ | count(*) | +----------+ | 0 | +----------+ 1 row in set (0.00 sec) mysql> select count(*) from accounts where login="NULL"; +----------+ | count(*) | +----------+ | 0 | +----------+ 1 row in set (0.00 sec) Вот и надо почистить их. В вэб-интерфейсе ни пользователей, ни учеток с номерами договоров 14-01/140_1 или 14-01/140_2 или number-248 нет. И не архивные они: select a.uid, a.archive, a.login, a.name, a.abonent_surname, a.abonent_name, a.abonent_patronymic,agr.number from accounts as a, agreements as agr where a.uid=agr.uid and a.uid=6 ; +-----+---------+-------+------+-----------------+--------------+--------------------+-------------+ | uid | archive | login | name | abonent_surname | abonent_name | abonent_patronymic | number | +-----+---------+-------+------+-----------------+--------------+--------------------+-------------+ | 6 | 0 | NULL | | | | | 14-01/140_1 | | 6 | 0 | NULL | | | | | 14-02/140_2 | | 6 | 0 | NULL | | | | | number-248 | +-----+---------+-------+------+-----------------+--------------+--------------------+-------------+ 3 rows in set (0.00 sec) Вставить ник Quote
Heggi Posted February 21, 2018 Posted February 21, 2018 10 минут назад, Andrei сказал: select count(*) from accounts where login=NULL; Так не правильно. надо select count(*) from accounts where login is NULL; Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 mysql> select count(*) from accounts where login is NULL; +----------+ | count(*) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec) mysql> select uid,name,login from accounts where login is NULL; +-----+------+-------+ | uid | name | login | +-----+------+-------+ | 6 | | NULL | +-----+------+-------+ 1 row in set (0.00 sec) Чет я не пойму что к чему. Вставить ник Quote
Heggi Posted February 21, 2018 Posted February 21, 2018 select archive from agreements where uid=6; 1 минуту назад, Andrei сказал: mysql> select count(*) from accounts where login is NULL; +----------+ | count(*) | +----------+ | 1 | +----------+ 1 row in set (0.00 sec) mysql> select uid,name,login from accounts where login is NULL; +-----+------+-------+ | uid | name | login | +-----+------+-------+ | 6 | | NULL | +-----+------+-------+ 1 row in set (0.00 sec) Чет я не пойму что к чему. 1 Абонент и к нему 3 договора. Видимо так. Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 mysql> select archive,number from agreements where uid=6; +---------+-------------+ | archive | number | +---------+-------------+ | 1 | 14-01/140_1 | | 1 | 14-02/140_2 | | 0 | number-248 | +---------+-------------+ 3 rows in set (0.00 sec) Т.е. один-то должен быть виден. А нету Вставить ник Quote
Heggi Posted February 21, 2018 Posted February 21, 2018 Интересный глюк. Проверил на тестовом - у нас не проявляется. Хотя у нас версия 2.0-024 Вставить ник Quote
mvelich Posted February 21, 2018 Posted February 21, 2018 посмотрите select * from usergroups_staff where uid = 6; абонент д.б. привязан к нулевой группе, иначе в интф он может не отобразиться Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 28 минут назад, mvelich сказал: абонент д.б. привязан к нулевой группе, иначе в интф он может не отобразиться select * from usergroups_staff where uid = 6; +----------+-----+ | group_id | uid | +----------+-----+ | 0 | 6 | | 1 | 6 | +----------+-----+ 2 rows in set (0.00 sec) а что за 1я группа еще видна? Вставить ник Quote
mvelich Posted February 21, 2018 Posted February 21, 2018 7 minutes ago, Andrei said: а что за 1я группа еще видна? Ну... какая-то группа с id = 1 select * from usergroups where group_id = 1; А этот абонент у Вас, случаем, не шаблон? Покажите полную запись select * from accounts where uid = 6\G 5 minutes ago, mvelich said: А этот абонент у Вас, случаем, не шаблон? Скорее всего, так и есть. При удалении ругается на связь с card_set (набор карт), как раз к набору карт и привязывается шаблон пользователя Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 Вот что видно: mysql> select * from usergroups where group_id = 1; +----------+------------------+------------------+---------------+-------------+-------------+--------------+--------------+---------------+--------------+--------------+-----------------------+-----------------------------+----------------+-------------------+ | group_id | name | description | promise_allow | promise_max | promise_min | promise_rent | promise_till | promise_limit | promise_curr | block_amount | block_duration_debtor | block_duration_denouncement | promise_ondays | promise_blockdays | +----------+------------------+------------------+---------------+-------------+-------------+--------------+--------------+---------------+--------------+--------------+-----------------------+-----------------------------+----------------+-------------------+ | 1 | Абоненты | Абоненты | 1 | 50 | 10 | 0 | 3 | 30 | 0 | 0 | 0 | 0 | 0 | 10 | +----------+------------------+------------------+---------------+-------------+-------------+--------------+--------------+---------------+--------------+--------------+-----------------------+-----------------------------+----------------+-------------------+ 1 row in set (0.00 sec) mysql> select * from accounts where uid = 6; +-----+------+-------+------+----------+------+-------+------+-------+------+-------+---------------+----------+-----------+------------------+---------------+------------------+------+-------+------+------+------+------+------+-------+-----------+-----------+-------------+-------------+-------------+---------+----------------+---------------+-----------------+------------+------------+---------------------+--------------+---------------------+------+-------+----------+---------+--------+-----------+--------------+-----------------+--------------------+ | uid | uuid | login | pass | ipaccess | type | descr | name | phone | fax | email | bill_delivery | category | bank_name | branch_bank_name | treasury_name | treasury_account | bik | settl | corr | kpp | inn | ogrn | okpo | okved | gen_dir_u | gl_buhg_u | kont_person | act_on_what | pass_sernum | pass_no | pass_issuedate | pass_issuedep | pass_issueplace | birthdate | birthplace | last_mod_date | wrong_active | wrong_date | oksm | okato | template | archive | mobile | ownership | abonent_name | abonent_surname | abonent_patronymic | +-----+------+-------+------+----------+------+-------+------+-------+------+-------+---------------+----------+-----------+------------------+---------------+------------------+------+-------+------+------+------+------+------+-------+-----------+-----------+-------------+-------------+-------------+---------+----------------+---------------+-----------------+------------+------------+---------------------+--------------+---------------------+------+-------+----------+---------+--------+-----------+--------------+-----------------+--------------------+ | 6 | NULL | NULL | | 0 | 2 | | | | | | 1 | 0 | | | | | | | | | | | | | | | | | | | NULL | | | 0000-00-00 | | 2012-06-21 07:23:01 | 0 | 0000-00-00 00:00:00 | 643 | | 1 | 0 | NULL | NULL | | | | +-----+------+-------+------+----------+------+-------+------+-------+------+-------+---------------+----------+-----------+------------------+---------------+------------------+------+-------+------+------+------+------+------+-------+-----------+-----------+-------------+-------------+-------------+---------+----------------+---------------+-----------------+------------+------------+---------------------+--------------+---------------------+------+-------+----------+---------+--------+-----------+--------------+-----------------+--------------------+ 1 row in set (0.00 sec) Вставить ник Quote
mvelich Posted February 21, 2018 Posted February 21, 2018 39 minutes ago, Andrei said: Вот что видно: Как и предполагалось, template = 1. Можно или в том запросе, где вы получаете данные для сорма, отфильтровать "and template = 0" (best) или попробовать удалить набор карт. Возможная засада -- что он уже где-то был использован, пусть даже в тестовом режиме, и система не даст этого сделать. Вставить ник Quote
Andrei Posted February 21, 2018 Posted February 21, 2018 Может сделать update accounts template set 0 where uid = 6 а потом просто удалить? На счет карт - в вэбе в "наборах карт" пусто и тут select * from pay_cards; Empty set (0.00 sec) Вставить ник Quote
mvelich Posted February 22, 2018 Posted February 22, 2018 14 hours ago, Andrei said: update accounts template set 0 where uid = 6 Тоже вариант ) Можно тем же запросом проставить ей логин (чтобы удобнее было искать), а потом штатно через интф удалить Вставить ник Quote
Andrei Posted February 22, 2018 Posted February 22, 2018 Только в синтаксисе я накосячил. :) Надо: update accounts set template=0, login='empty' where uid=6; Вставить ник Quote
Andrei Posted July 6, 2018 Posted July 6, 2018 После сильнейшей грозы почему-то стали отваливаться pppoe сессии. Запустил радиус-агента в режиме debug, в логе при разрыве сессии: [RunAcctRequestInst:1802] Acct STOP (Port-Error), Session-Id 0000198C, vg_id 1313 [RunAcctRequestInst:1825] Record with SessionID = '0000198C' found in cache [do_sql_query:354] SELECT t.traff_type, t.dynamic_rent, c.cat_idx, c.includes, c.above, l.c_limit_in, l.c_limit_out FROM .... [PutIpBack:275] Put ip 172.21.43.250 back to pool [RunAcctRequestInst:1907] Ip 172.21.43.250 released for session 0000198C (Acct-STOP) [do_sql_query:354] DELETE FROM `sessionsradius` WHERE `session_id` = '0000198C' AND nas = '1474477830' [Close:1600] Session '0000198C' removed from DB. И такие Acct STOP (Port-Error) пролетают пачкой, штук 30-40. Потом эти роутеры поднимают сессии обратно,но через 4 минуты опять тоже самое. В чем может быть причина? Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.