forum.bitel.ru http://forum.bitel.ru/ |
|
Получить логин плательщика осмп из события Приход платежа http://forum.bitel.ru/viewtopic.php?f=18&t=5224 |
Страница 1 из 1 |
Автор: | dreamer_fkn [ 05 мар 2011, 10:32 ] |
Заголовок сообщения: | Получить логин плательщика осмп из события Приход платежа |
Здравствуйте, имеетс ПС по протоколу ОСМП. Тип поиска задан по номеру договора (mps.1.search.mode=contract). Также задан mps.1.search.pattern=\A((?:6\d{5}))\z:::NK-pppoe-1, то есть все номера начинающиеся на 6 относятся к одному договору. на событие приход платежа навешан скрипт поведения. Как можно в скрипте поведения вытащить номер куда поступил платеж. Например, кладут деньги на номер 600001 и 600002, деньги падают на договор NK-pppoe-1, но в скрипте нужно вытащить эти 600001 и 600002. в скрипте написано: <code> payment = event.getPayment(); cid = payment.getContractID(); date = payment.getPaymentDate();// summa = payment.getSumma(); userID = payment.getUserID(); print("---//-----"); print("date="+date); print(cid); print(summa); print(userID); </code> cid, date, summa определяются нормально, а userID всегда 0. подскажите плиз. сервер 5.0 сборка 791 от 21.02.2011 mps вер. 5.0 сборка 195 от 27.01.2011 15:34:34 |
Автор: | dreamer_fkn [ 05 мар 2011, 12:27 ] |
Заголовок сообщения: | Re: Получить логин плательщика осмп из события Приход платеж |
Получился такой код. Сильно коряво? или есть методы проще? Код: payment = event.getPayment();
cid = payment.getContractID(); date = payment.getPaymentDate();// summa = payment.getSumma(); pID = payment.getID(); PAYMENT_TYPE_OSMP = 12; SimpleDateFormat dateformatYYYYMMDD = new SimpleDateFormat("yyyyMM"); SimpleDateFormat dateformatYYYYMMDDhhmmss = new SimpleDateFormat("yyyyMMddhhmmss"); StringBuilder nowYYYYMMDD = new StringBuilder( dateformatYYYYMMDD.format( date ) ); StringBuilder nowYYYYMMDDhh = new StringBuilder( dateformatYYYYMMDDhhmmss.format( date ) ); MID_MPS=18; String tableName="mps_payment_"+MID_MPS+"_"+nowYYYYMMDD;// берем текущую таблицу модуля мпс ps = con.prepareStatement("select rawNumber from "+tableName+" where pid=?"); //берем поле rawNumber в нем как раз нужный логин ps.setInt(1,pID); ResultSet rs=ps.executeQuery(); String userName; while (rs.next()) { userName = rs.getString("rawNumber"); } ps.close(); print(userName); |
Автор: | Администратор [ 15 апр 2011, 18:34 ] |
Заголовок сообщения: | Re: Получить логин плательщика осмп из события Приход платеж |
Пожалуй, проще никак. |
Страница 1 из 1 | Часовой пояс: UTC + 5 часов [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |