По мотивам
скрипта из викисделал создание VoIP логина при создании договора в котором генерируется случайный 7значный логин и случайный 5значный пароль.
Код:
import java.util.*;
import java.sql.*;
import bitel.billing.server.util.*;
import bitel.billing.server.contract.bean.*;
import bitel.billing.server.script.bean.event.*;
import bitel.billing.server.voiceip.bean.*;
import bitel.billing.server.call.bean.*;
import bitel.billing.common.TimeUtils.*;
// код модуля VoiceIp
VOIP_MID = 1;
cid = event.getContractId();
ContractManager cm = new ContractManager( con );
date1 = cm.getContractById(cid).getDateFrom();
print(date1);
login="";
a=10000001;
check=1;
while (check!=null || a > 10000000 ) {
a = Math.floor((Math.random()+0.1) * 10000000);
d = (int)a;
login=String.valueOf(d);
check = null;
}
print("login = " + login);
passwd="";
b=100001;
check=1;
while (check!=null || b > 100000 ) {
b = Math.floor((Math.random()+0.1) * 100000);
d = (int)b;
passwd=String.valueOf(d);
check = null;
}
print("passwd = " + passwd);
query = "INSERT INTO user_login_"+ VOIP_MID + "(cid,object_id,login,pswd,date1) VALUES(" + cid + ",0," + login + "," + passwd + ",'" + date1 +"');";
print("query = " + query);
stmnt = con.prepareStatement(query);
stmnt.executeUpdate();
Как сделать проверку на совпадение логинов?
Код:
check = null;
должно возвращать не null если логин есть в базе.
Предполагаю, что для этого есть класс VoiceIpLoginManager а в нем метод getLoginFromResultSet(java.sql.ResultSet rs)
Либо же класс LoginManager и в нем метод checkLogin(Login login)
Но первый класс использует второй, а второй у меня ругается
Код:
Constructor error: The class class bitel.billing.server.call.bean.LoginManager is abstract
Не могу понять как его использовать
