ListTaskAssignRulesResult.cc 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #include <alibabacloud/qualitycheck/model/ListTaskAssignRulesResult.h>
  17. #include <json/json.h>
  18. using namespace AlibabaCloud::Qualitycheck;
  19. using namespace AlibabaCloud::Qualitycheck::Model;
  20. ListTaskAssignRulesResult::ListTaskAssignRulesResult() :
  21. ServiceResult()
  22. {}
  23. ListTaskAssignRulesResult::ListTaskAssignRulesResult(const std::string &payload) :
  24. ServiceResult()
  25. {
  26. parse(payload);
  27. }
  28. ListTaskAssignRulesResult::~ListTaskAssignRulesResult()
  29. {}
  30. void ListTaskAssignRulesResult::parse(const std::string &payload)
  31. {
  32. Json::Reader reader;
  33. Json::Value value;
  34. reader.parse(payload, value);
  35. setRequestId(value["RequestId"].asString());
  36. auto allDataNode = value["Data"]["TaskAssignRuleInfo"];
  37. for (auto valueDataTaskAssignRuleInfo : allDataNode)
  38. {
  39. TaskAssignRuleInfo dataObject;
  40. if(!valueDataTaskAssignRuleInfo["UpdateTime"].isNull())
  41. dataObject.updateTime = valueDataTaskAssignRuleInfo["UpdateTime"].asString();
  42. if(!valueDataTaskAssignRuleInfo["SkillGroupsStr"].isNull())
  43. dataObject.skillGroupsStr = valueDataTaskAssignRuleInfo["SkillGroupsStr"].asString();
  44. if(!valueDataTaskAssignRuleInfo["CallTimeEnd"].isNull())
  45. dataObject.callTimeEnd = std::stol(valueDataTaskAssignRuleInfo["CallTimeEnd"].asString());
  46. if(!valueDataTaskAssignRuleInfo["DurationMax"].isNull())
  47. dataObject.durationMax = std::stoi(valueDataTaskAssignRuleInfo["DurationMax"].asString());
  48. if(!valueDataTaskAssignRuleInfo["CreateTime"].isNull())
  49. dataObject.createTime = valueDataTaskAssignRuleInfo["CreateTime"].asString();
  50. if(!valueDataTaskAssignRuleInfo["Priority"].isNull())
  51. dataObject.priority = std::stoi(valueDataTaskAssignRuleInfo["Priority"].asString());
  52. if(!valueDataTaskAssignRuleInfo["DurationMin"].isNull())
  53. dataObject.durationMin = std::stoi(valueDataTaskAssignRuleInfo["DurationMin"].asString());
  54. if(!valueDataTaskAssignRuleInfo["AgentsStr"].isNull())
  55. dataObject.agentsStr = valueDataTaskAssignRuleInfo["AgentsStr"].asString();
  56. if(!valueDataTaskAssignRuleInfo["RuleName"].isNull())
  57. dataObject.ruleName = valueDataTaskAssignRuleInfo["RuleName"].asString();
  58. if(!valueDataTaskAssignRuleInfo["RuleId"].isNull())
  59. dataObject.ruleId = std::stol(valueDataTaskAssignRuleInfo["RuleId"].asString());
  60. if(!valueDataTaskAssignRuleInfo["AssignmentType"].isNull())
  61. dataObject.assignmentType = std::stoi(valueDataTaskAssignRuleInfo["AssignmentType"].asString());
  62. if(!valueDataTaskAssignRuleInfo["CallType"].isNull())
  63. dataObject.callType = std::stoi(valueDataTaskAssignRuleInfo["CallType"].asString());
  64. if(!valueDataTaskAssignRuleInfo["Enabled"].isNull())
  65. dataObject.enabled = std::stoi(valueDataTaskAssignRuleInfo["Enabled"].asString());
  66. if(!valueDataTaskAssignRuleInfo["CallTimeStart"].isNull())
  67. dataObject.callTimeStart = std::stol(valueDataTaskAssignRuleInfo["CallTimeStart"].asString());
  68. auto allAgentsNode = valueDataTaskAssignRuleInfo["Agents"]["Agent"];
  69. for (auto valueDataTaskAssignRuleInfoAgentsAgent : allAgentsNode)
  70. {
  71. TaskAssignRuleInfo::Agent agentsObject;
  72. if(!valueDataTaskAssignRuleInfoAgentsAgent["AgentName"].isNull())
  73. agentsObject.agentName = valueDataTaskAssignRuleInfoAgentsAgent["AgentName"].asString();
  74. if(!valueDataTaskAssignRuleInfoAgentsAgent["AgentId"].isNull())
  75. agentsObject.agentId = valueDataTaskAssignRuleInfoAgentsAgent["AgentId"].asString();
  76. dataObject.agents.push_back(agentsObject);
  77. }
  78. auto allSkillGroupsNode = valueDataTaskAssignRuleInfo["SkillGroups"]["SkillGroup"];
  79. for (auto valueDataTaskAssignRuleInfoSkillGroupsSkillGroup : allSkillGroupsNode)
  80. {
  81. TaskAssignRuleInfo::SkillGroup skillGroupsObject;
  82. if(!valueDataTaskAssignRuleInfoSkillGroupsSkillGroup["SkillName"].isNull())
  83. skillGroupsObject.skillName = valueDataTaskAssignRuleInfoSkillGroupsSkillGroup["SkillName"].asString();
  84. if(!valueDataTaskAssignRuleInfoSkillGroupsSkillGroup["SkillId"].isNull())
  85. skillGroupsObject.skillId = valueDataTaskAssignRuleInfoSkillGroupsSkillGroup["SkillId"].asString();
  86. dataObject.skillGroups.push_back(skillGroupsObject);
  87. }
  88. auto allReviewersNode = valueDataTaskAssignRuleInfo["Reviewers"]["Reviewer"];
  89. for (auto valueDataTaskAssignRuleInfoReviewersReviewer : allReviewersNode)
  90. {
  91. TaskAssignRuleInfo::Reviewer reviewersObject;
  92. if(!valueDataTaskAssignRuleInfoReviewersReviewer["ReviewerId"].isNull())
  93. reviewersObject.reviewerId = valueDataTaskAssignRuleInfoReviewersReviewer["ReviewerId"].asString();
  94. if(!valueDataTaskAssignRuleInfoReviewersReviewer["ReviewerName"].isNull())
  95. reviewersObject.reviewerName = valueDataTaskAssignRuleInfoReviewersReviewer["ReviewerName"].asString();
  96. dataObject.reviewers.push_back(reviewersObject);
  97. }
  98. auto allRulesNode = valueDataTaskAssignRuleInfo["Rules"]["RuleBasicInfo"];
  99. for (auto valueDataTaskAssignRuleInfoRulesRuleBasicInfo : allRulesNode)
  100. {
  101. TaskAssignRuleInfo::RuleBasicInfo rulesObject;
  102. if(!valueDataTaskAssignRuleInfoRulesRuleBasicInfo["Name"].isNull())
  103. rulesObject.name = valueDataTaskAssignRuleInfoRulesRuleBasicInfo["Name"].asString();
  104. if(!valueDataTaskAssignRuleInfoRulesRuleBasicInfo["Rid"].isNull())
  105. rulesObject.rid = valueDataTaskAssignRuleInfoRulesRuleBasicInfo["Rid"].asString();
  106. dataObject.rules.push_back(rulesObject);
  107. }
  108. auto samplingModeNode = value["SamplingMode"];
  109. if(!samplingModeNode["NumberOfDraws"].isNull())
  110. dataObject.samplingMode.numberOfDraws = std::stoi(samplingModeNode["NumberOfDraws"].asString());
  111. if(!samplingModeNode["AnyNumberOfDraws"].isNull())
  112. dataObject.samplingMode.anyNumberOfDraws = std::stoi(samplingModeNode["AnyNumberOfDraws"].asString());
  113. if(!samplingModeNode["Limit"].isNull())
  114. dataObject.samplingMode.limit = std::stoi(samplingModeNode["Limit"].asString());
  115. if(!samplingModeNode["Proportion"].isNull())
  116. dataObject.samplingMode.proportion = std::stof(samplingModeNode["Proportion"].asString());
  117. if(!samplingModeNode["Dimension"].isNull())
  118. dataObject.samplingMode.dimension = std::stoi(samplingModeNode["Dimension"].asString());
  119. if(!samplingModeNode["Designated"].isNull())
  120. dataObject.samplingMode.designated = samplingModeNode["Designated"].asString() == "true";
  121. if(!samplingModeNode["RandomInspectionNumber"].isNull())
  122. dataObject.samplingMode.randomInspectionNumber = std::stoi(samplingModeNode["RandomInspectionNumber"].asString());
  123. auto allSamplingModeAgentsNode = samplingModeNode["SamplingModeAgents"]["SamplingModeAgent"];
  124. for (auto samplingModeNodeSamplingModeAgentsSamplingModeAgent : allSamplingModeAgentsNode)
  125. {
  126. TaskAssignRuleInfo::SamplingMode::SamplingModeAgent samplingModeAgentObject;
  127. if(!samplingModeNodeSamplingModeAgentsSamplingModeAgent["AgentName"].isNull())
  128. samplingModeAgentObject.agentName = samplingModeNodeSamplingModeAgentsSamplingModeAgent["AgentName"].asString();
  129. if(!samplingModeNodeSamplingModeAgentsSamplingModeAgent["AgentId"].isNull())
  130. samplingModeAgentObject.agentId = samplingModeNodeSamplingModeAgentsSamplingModeAgent["AgentId"].asString();
  131. dataObject.samplingMode.samplingModeAgents.push_back(samplingModeAgentObject);
  132. }
  133. data_.push_back(dataObject);
  134. }
  135. if(!value["Success"].isNull())
  136. success_ = value["Success"].asString() == "true";
  137. if(!value["Code"].isNull())
  138. code_ = value["Code"].asString();
  139. if(!value["Message"].isNull())
  140. message_ = value["Message"].asString();
  141. if(!value["PageNumber"].isNull())
  142. pageNumber_ = std::stoi(value["PageNumber"].asString());
  143. if(!value["PageSize"].isNull())
  144. pageSize_ = std::stoi(value["PageSize"].asString());
  145. if(!value["Count"].isNull())
  146. count_ = std::stoi(value["Count"].asString());
  147. }
  148. std::string ListTaskAssignRulesResult::getMessage()const
  149. {
  150. return message_;
  151. }
  152. int ListTaskAssignRulesResult::getPageSize()const
  153. {
  154. return pageSize_;
  155. }
  156. int ListTaskAssignRulesResult::getPageNumber()const
  157. {
  158. return pageNumber_;
  159. }
  160. std::vector<ListTaskAssignRulesResult::TaskAssignRuleInfo> ListTaskAssignRulesResult::getData()const
  161. {
  162. return data_;
  163. }
  164. int ListTaskAssignRulesResult::getCount()const
  165. {
  166. return count_;
  167. }
  168. std::string ListTaskAssignRulesResult::getCode()const
  169. {
  170. return code_;
  171. }
  172. bool ListTaskAssignRulesResult::getSuccess()const
  173. {
  174. return success_;
  175. }