respgetcostinfo.cpp 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #include "respgetcostinfo.h"
  2. #include <QScriptValue>
  3. #include <QScriptEngine>
  4. #include <QScriptValueIterator>
  5. RespGetCostInfo::RespGetCostInfo(QString json)
  6. {
  7. this->json = json;
  8. QScriptEngine engine;
  9. QScriptValue sv = engine.evaluate("value = " + this->json);
  10. QScriptValueIterator it(sv);
  11. if(json.isEmpty())
  12. {
  13. rtnCode = RTNCODE_NETWORK_NOTAVAILABLE;
  14. rtnMemo = RTNMEMO_NETWORK_NOTAVAILABLE;
  15. }
  16. else if(json=="ABORT")
  17. {
  18. rtnCode = RTNCODE_NETWORK_ABORT;
  19. rtnMemo = RTNMEMO_NETWORK_ABORT;
  20. }
  21. else
  22. {
  23. rtnCode = RTNCODE_INVALID_FORMAT;
  24. rtnMemo = RTNMEMO_INVALID_FORMAT;
  25. while (it.hasNext())
  26. {
  27. it.next();
  28. if(it.name()=="rtnCode")
  29. {
  30. this->rtnCode = it.value().toInt32();
  31. }
  32. else if(it.name()=="rtnMemo")
  33. {
  34. this->rtnMemo = it.value().toString();
  35. }
  36. else if(it.name()=="rsCount")
  37. {
  38. this->rsCount = it.value().toInt32();
  39. }
  40. else if(it.name()=="sum_settlefee")
  41. {
  42. this->totalFee = it.value().toString();
  43. }
  44. else
  45. {
  46. QScriptValue sv1 = it.value();
  47. map.insert("serialnum",sv1.property("serialnum").toString());
  48. map.insert("batchid",sv1.property("batchid").toString());
  49. map.insert("batchtype",sv1.property("batchtype").toString());
  50. map.insert("detail",sv1.property("detail").toString());
  51. map.insert("usercode",sv1.property("usercode").toString());
  52. map.insert("submittime",sv1.property("submittime").toString());
  53. map.insert("finishtime",sv1.property("finishtime").toString());
  54. map.insert("numcount",sv1.property("numcount").toString());
  55. map.insert("finishcount",sv1.property("finishcount").toString());
  56. map.insert("price",sv1.property("price").toString());
  57. map.insert("settlefee",sv1.property("settlefee").toString());
  58. map.insert("giftfee",sv1.property("giftfee").toString());
  59. }
  60. }
  61. }
  62. }
  63. int RespGetCostInfo::getRtnCode()
  64. {
  65. return this->rtnCode;
  66. }
  67. QString RespGetCostInfo::getRtnMemo()
  68. {
  69. return this->rtnMemo;
  70. }
  71. int RespGetCostInfo::getRsCount()
  72. {
  73. return this->rsCount;
  74. }
  75. QMultiMap<QString,QString> RespGetCostInfo::getRs()
  76. {
  77. return this->map;
  78. }