| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- #include "autologin.h"
- #include "sncdatabase.h"
- #include "resplogin.h"
- #include "respgetnumchksysparam.h"
- AutoLogin::AutoLogin(QObject *parent) :
- QThread(parent)
- {
- m_numchk = new WSNumChk();
- m_skip = false;
- }
- AutoLogin::~AutoLogin()
- {
- m_numchk->abort();
- delete m_numchk;
- qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")\
- <<"FormNumchk.AutoLogin Destroyed.";
- }
- void AutoLogin::setHost(QString host, QString port)
- {
- m_host = host;
- m_port = port;
- m_numchk->setHost(m_host,m_port);
- }
- void AutoLogin::setClientID(QString clientID)
- {
- m_clientID = clientID;
- }
- void AutoLogin::setSkip(bool skip)
- {
- m_skip = skip;
- }
- void AutoLogin::abort()
- {
- m_numchk->abort();
- }
- void AutoLogin::run()
- {
- m_accountLoginAfter.clear();
- m_accountLoginAfter = m_accountLoginBefore;
- QString usercode = m_accountLoginBefore.value("usercode");
- QString userpwd = m_accountLoginBefore.value("userpwd");
- if(!usercode.isEmpty() || !userpwd.isEmpty())
- {
- QString src = "SNC-" + SNCDataBase::getAppVersion();
- QString json = m_numchk->userLogin(usercode,userpwd,true,src);
- RespLogin response(json);
- if(response.getRtnCode()==1)
- {
- m_accountLoginAfter.insert("userhash",response.getUserHash());
- }
- }
- emit loginFinished(m_accountLoginAfter);
- updateSysParam();
- }
- void AutoLogin::setAccountInfo(QMap<QString, QString> accountInfo)
- {
- m_accountLoginBefore= accountInfo;
- }
- void AutoLogin::updateSysParam()
- {
- //如果未设置M_CLIENTID则不进行更新
- if(m_clientID.isEmpty())
- return;
- //如果当前号段库正在写入,则禁止更新
- if(m_skip)
- return;
- QString src = "mf-" + SNCDataBase::getAppVersion();
- QString authCode;
- QByteArray ba;
- QString str = src + SNCDataBase::getAuthCodeSeg();
- ba = QCryptographicHash::hash ( str.toAscii(), QCryptographicHash::Md5 );
- authCode.append(ba.toHex());
- QString json = m_numchk->getSysParam(src,authCode);
- if(!json.isEmpty())
- {
- RespGetNumchkSysParam response(json);
- SNCDataBase::updateSrvParam(m_clientID,response.getRs());
- }
- }
|