wool.cpp 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. #include "wool.h"
  2. WOOL::WOOL(QString host, QString port)
  3. {
  4. this->server_host = host;
  5. this->server_path = "/wsdl";
  6. this->server_url = "http://"+this->server_host+this->server_path;
  7. QRegExp exp("\\d{1,4}");
  8. if(exp.exactMatch(port))
  9. {
  10. //this->server_port = port.toInt();
  11. this->server_port = 86;
  12. }
  13. else
  14. {
  15. this->server_port = 80;
  16. }
  17. m_cancel = false;
  18. }
  19. void WOOL::onCanceled()
  20. {
  21. m_cancel = true;
  22. emit responseProcessed();
  23. if(json.isEmpty())
  24. json = "ABORT";
  25. }
  26. void WOOL::getResponse()
  27. {
  28. // Get the response, check for error.
  29. const QtSoapMessage &message = http.getResponse();
  30. if (message.isFault()) {
  31. qDebug()<<message.faultString().value().toString();
  32. json = "";
  33. emit responseProcessed();
  34. return;
  35. }
  36. const QtSoapType &response = message.returnValue();
  37. json = response.value().toString();
  38. // qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss")<<json;
  39. emit responseProcessed();
  40. return;
  41. }
  42. //获取系统参数
  43. QString WOOL::GetSysParam(QString src, QString authCode)
  44. {
  45. this->json = "";
  46. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  47. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  48. setGetSysParamRequest(src, authCode);
  49. loop.exec();
  50. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  51. return json;
  52. }
  53. //分包传送文件
  54. QString WOOL::PackTran(QString fileName, QString packKey, QString packNo, QString packContent, QString packMD5, QString userHash)
  55. {
  56. this->json = "";
  57. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  58. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  59. setPackTranRequest(fileName, packKey, packNo, packContent, packMD5, userHash);
  60. loop.exec();
  61. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  62. return json;
  63. }
  64. //分包文件整合
  65. QString WOOL::PackMerge(QString fileName, QString packKey, QString packCount, QString fileMD5, QString userHash)
  66. {
  67. this->json = "";
  68. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  69. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  70. setPackMergeRequest(fileName, packKey, packCount, fileMD5, userHash);
  71. loop.exec();
  72. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  73. return json;
  74. }
  75. //用户服务验证
  76. QString WOOL::UserServiceVerify(QString funcName, QString paraList, QString userHash)
  77. {
  78. this->json = "";
  79. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  80. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  81. setUserServiceVerifyRequest(funcName, paraList, userHash);
  82. loop.exec();
  83. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  84. return json;
  85. }
  86. //提交防薅羊毛检测号码文件
  87. QString WOOL::SubmitfhymFile(QString params, QString userHash)
  88. {
  89. this->json = "";
  90. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  91. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  92. setSubmitfhymFileRequest(params, userHash);
  93. loop.exec();
  94. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  95. return json;
  96. }
  97. //下载防薅羊毛检测结果
  98. QString WOOL::DlfhymResultFile(QString taskid, QString userHash)
  99. {
  100. this->json = "";
  101. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  102. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  103. setDlfhymResultFileRequest(taskid, userHash);
  104. loop.exec();
  105. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  106. return json;
  107. }
  108. //查询防薅羊毛当前检测任务信息
  109. QString WOOL::GetfhymTask(QString userHash)
  110. {
  111. this->json = "";
  112. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  113. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  114. setGetfhymTaskRequest(userHash);
  115. loop.exec();
  116. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  117. return json;
  118. }
  119. //查询防薅羊毛历史检测任务信息
  120. QString WOOL::GetfhymHt(QString params, QString userHash)
  121. {
  122. this->json = "";
  123. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  124. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  125. setGetfhymHtRequest(params, userHash);
  126. loop.exec();
  127. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  128. return json;
  129. }
  130. //查询用户自己余额
  131. QString WOOL::GetUserBalance(QString userHash)
  132. {
  133. this->json = "";
  134. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  135. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  136. setGetUserBalanceRequest(userHash);
  137. loop.exec();
  138. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  139. return json;
  140. }
  141. //查询充值记录
  142. QString WOOL::GetChargeInfo(QString params, QString userHash)
  143. {
  144. this->json = "";
  145. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  146. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  147. setGetChargeInfoRequest(params, userHash);
  148. loop.exec();
  149. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  150. return json;
  151. }
  152. //查询消费记录
  153. QString WOOL::GetCostInfo(QString params, QString userHash)
  154. {
  155. this->json = "";
  156. QObject::connect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  157. QObject::connect(this, SIGNAL(responseProcessed()), &loop, SLOT(quit()));
  158. setGetCostInfoRequest(params, userHash);
  159. loop.exec();
  160. QObject::disconnect(&http, SIGNAL(responseReady()), this, SLOT(getResponse()));
  161. return json;
  162. }
  163. void WOOL::setGetSysParamRequest(QString src, QString authCode)
  164. {
  165. QtSoapMessage request;
  166. request.setMethod("GetSysParam", this->server_url);
  167. request.addMethodArgument("src","",src);
  168. request.addMethodArgument("authCode","",authCode);
  169. http.setHost(this->server_host,this->server_port);
  170. http.submitRequest(request,this->server_path);
  171. }
  172. void WOOL::setPackTranRequest(QString fileName, QString packKey, QString packNo, QString packContent, QString packMD5, QString userHash)
  173. {
  174. QtSoapMessage request;
  175. request.setMethod("PackTran", this->server_url);
  176. request.addMethodArgument("fileName","",fileName);
  177. request.addMethodArgument("packKey","",packKey);
  178. request.addMethodArgument("packNo","",packNo);
  179. request.addMethodArgument("packContent","",packContent);
  180. request.addMethodArgument("packMD5","",packMD5);
  181. request.addMethodArgument("userHash","",userHash);
  182. http.setHost(this->server_host,this->server_port);
  183. http.submitRequest(request,this->server_path);
  184. }
  185. void WOOL::setPackMergeRequest(QString fileName, QString packKey, QString packCount, QString fileMD5, QString userHash)
  186. {
  187. QtSoapMessage request;
  188. request.setMethod("PackMerge", this->server_url);
  189. request.addMethodArgument("fileName","",fileName);
  190. request.addMethodArgument("packKey","",packKey);
  191. request.addMethodArgument("packCount","",packCount);
  192. request.addMethodArgument("fileMD5","",fileMD5);
  193. request.addMethodArgument("userHash","",userHash);
  194. http.setHost(this->server_host,this->server_port);
  195. http.submitRequest(request,this->server_path);
  196. }
  197. void WOOL::setUserServiceVerifyRequest(QString funcName, QString paraList, QString userHash)
  198. {
  199. QtSoapMessage request;
  200. request.setMethod("UserServiceVerify", this->server_url);
  201. request.addMethodArgument("funcName","",funcName);
  202. request.addMethodArgument("paraList","",paraList);
  203. request.addMethodArgument("userHash","",userHash);
  204. http.setHost(this->server_host,this->server_port);
  205. http.submitRequest(request,this->server_path);
  206. }
  207. void WOOL::setSubmitfhymFileRequest(QString params, QString userHash)
  208. {
  209. QtSoapMessage request;
  210. request.setMethod("SubmitfhymFile", this->server_url);
  211. request.addMethodArgument("params","",params);
  212. request.addMethodArgument("userHash","",userHash);
  213. http.setHost(this->server_host,this->server_port);
  214. http.submitRequest(request,this->server_path);
  215. }
  216. void WOOL::setDlfhymResultFileRequest(QString taskid, QString userHash)
  217. {
  218. QtSoapMessage request;
  219. request.setMethod("DlfhymResultFile", this->server_url);
  220. request.addMethodArgument("taskid","",taskid);
  221. request.addMethodArgument("userHash","",userHash);
  222. http.setHost(this->server_host,this->server_port);
  223. http.submitRequest(request,this->server_path);
  224. }
  225. void WOOL::setGetfhymTaskRequest(QString userHash)
  226. {
  227. QtSoapMessage request;
  228. request.setMethod("GetfhymTask", this->server_url);
  229. request.addMethodArgument("userHash","",userHash);
  230. http.setHost(this->server_host,this->server_port);
  231. http.submitRequest(request,this->server_path);
  232. }
  233. void WOOL::setGetfhymHtRequest(QString params, QString userHash)
  234. {
  235. QtSoapMessage request;
  236. request.setMethod("GetfhymHt", this->server_url);
  237. request.addMethodArgument("params","",params);
  238. request.addMethodArgument("userHash","",userHash);
  239. http.setHost(this->server_host,this->server_port);
  240. http.submitRequest(request,this->server_path);
  241. }
  242. void WOOL::setGetUserBalanceRequest(QString userHash)
  243. {
  244. QtSoapMessage request;
  245. request.setMethod("GetUserBalance", this->server_url);
  246. request.addMethodArgument("userHash","",userHash);
  247. http.setHost(this->server_host,this->server_port);
  248. http.submitRequest(request,this->server_path);
  249. }
  250. void WOOL::setGetChargeInfoRequest(QString params, QString userHash)
  251. {
  252. QtSoapMessage request;
  253. request.setMethod("GetChargeInfo", this->server_url);
  254. request.addMethodArgument("params","",params);
  255. request.addMethodArgument("userHash","",userHash);
  256. http.setHost(this->server_host,this->server_port);
  257. http.submitRequest(request,this->server_path);
  258. }
  259. void WOOL::setGetCostInfoRequest(QString params, QString userHash)
  260. {
  261. QtSoapMessage request;
  262. request.setMethod("GetCostInfo", this->server_url);
  263. request.addMethodArgument("params","",params);
  264. request.addMethodArgument("userHash","",userHash);
  265. http.setHost(this->server_host,this->server_port);
  266. http.submitRequest(request,this->server_path);
  267. }