Commit 1bf3849d by wff66504

20190614

parent af1c510a
......@@ -147,6 +147,7 @@ public class MapUtil {
return sb.toString();
}
//讲list中map的值取出来,变成list
public static List<Object> getOthersVerifyCode(List<Map<String, Object>> list) {
Map map = new HashMap<String, Object>();
......
......@@ -57,11 +57,13 @@ public class getBookshelfLevel extends TK implements API {
if ((!exam_subtype_id.equals("")) && exam_subtype_id.equals("code")) {
exam_subtype_id=L_exam_subtype_id;
parameter = parameter.replace("\"exam_subtype_id\":code", "\"exam_subtype_id\":\""+ exam_subtype_id + "\"");
// parameter = parameter.replace("\"exam_subtype_id\":code", "\"exam_subtype_id\":\""+ exam_subtype_id + "\"");
parameter = parameter.replace("\"exam_subtype_id\":code", "\"exam_subtype_id\":\""+ 127 + "\"");
}
if ((!exam_id.equals("")) && exam_id.equals("code")) {
exam_id=L_exam_id;
parameter = parameter.replace("\"exam_id\":code", "\"exam_id\":\""+ exam_id + "\"");
// parameter = parameter.replace("\"exam_id\":code", "\"exam_id\":\""+ exam_id + "\"");
parameter = parameter.replace("\"exam_id\":code", "\"exam_id\":\""+ 127 + "\"");
}
exam_subtype_id = MapUtil.killQuotes(exam_subtype_id, "\"");
......
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.MySqlUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.TestUnti.VerificationMethod;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
import net.sf.json.JSONObject;
/**
*
* @Description: 30. app校验签名接口)
* @author: wff
* @date: 2019年6月11日 上午11:27:28
* @version V1.0
*/
public class checkToken extends TK implements API {
public String parameter;//参数集合
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
// exam_id = MapUtil.getParameter(parameter, "exam_id").trim();
//
// if ((!exam_id.equals("")) && exam_id.equals("code")) {
// exam_id=L_exam_id;
// parameter = parameter.replace("\"exam_id\":code", "\"exam_id\":\""+ exam_id + "\"");
// }
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String, String> headers=new HashMap<String, String>();
headers.put("Authorization", tk_token);
Map<String, String> jsonAsMap=new HashMap<String, String>();
parameter = MapUtil.getValue("parameter", data);
String tikuString= MapUtil.getParameter(parameter, "appid").trim();
tikuString = MapUtil.killQuotes(tikuString, "\"");
jsonAsMap.put("appid", tikuString);
MyRequest myRequest=new MyRequest();
myRequest.setUrl(Url);
myRequest.setHeaders(headers);
myRequest.setFormParameter(jsonAsMap);
myRequest.setRequest(Request);
Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("code") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("msg") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("接口响应成功!".equals(msg)){
List<String> list=jp.getList("data.children.children");
System.out.println(list);
if (list!=null && list.size()>0 && list.get(0)!=null) {
for(int i=0;i<list.size();i++){
String shelfIds =jp.getString("data.children.children[0].shelf_id");
String[] shelfId = shelfIds.split(",");
for (String string : shelfId) {
L_shelf_id = string.replace("[", "").replace("]", "").trim();
// System.out.println(string.replace("[", "").replace("]", ""));
}
}
//
}
conn=ConnectionsMap.get("tk");
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
......@@ -38,7 +38,7 @@ public class doExercise extends TK implements API {
public String parameter;//参数集合
public String datas;//练习册id
//public String appid;//标识
public String appid;//标识
@Override
public void initialize(HashMap<String, Object> data) {
......@@ -51,9 +51,14 @@ public class doExercise extends TK implements API {
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
datas = MapUtil.getParameter(parameter, "data").trim();
//appid = MapUtil.getParameter_get(parameter, "appid").trim();
datas = MapUtil.getParameter(parameter, "data");
datas = MapUtil.getParameter(parameter, "data");
// appid = MapUtil.getParameter_get(parameter, "appid").trim();
if ((!datas.equals("")) && datas.equals("code")) {
datas = "{\\\"record_id\\\":\\\"5308\\\",\\\"orgin_id\\\":\\\"62\\\",\\\"user_id\\\":\\\"16\\\",\\\"exam_id\\\":\\\"71\\\",\\\"behaviour\\\":1,\\\"questions\\\":[{\\\"question_number\\\":\\\"1\\\",\\\"subject_2\\\":\\\"词语辨析\\\",\\\"user_answer\\\":\\\"461685\\\",\\\"is_hf\\\":\\\"0\\\",\\\"duration\\\":\\\"02\\\",\\\"question_id\\\":\\\"7772\\\",\\\"type\\\":\\\"1\\\",\\\"is_signed\\\":\\\"0\\\",\\\"subject_1\\\":\\\"逻辑填空\\\",\\\"subject_3\\\": \\\"\\\"}]}";
parameter = parameter.replace("\"data\":code", "\"data\":\""+ datas + "\"");
}
data.put("parameter", parameter);
return data;
}
......@@ -78,7 +83,8 @@ public class doExercise extends TK implements API {
myRequest.setHeaders(headers);
myRequest.setFormParameter(jsonAsMap);
myRequest.setRequest(Request);
Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
// Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
Response re = RequestDataUtils.Post_token(data, Url, tk_token);
return re;
}
......
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.util.HashMap;
import java.util.Map;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
/**
*
* @Description: 17.智能批改-获取主观题解析
* @author: wff
* @date: 2019年6月12日 下午4:45:27
* @version V1.0
*/
public class getExpoundingStepExplain extends TK implements API {
public String parameter;//参数集合
public String record_id;//record_sub_id
public String user_id;//用户id
public String orgin;//来源 0为来自练习册,1为来自正常做题试卷,2扫描二维码试卷做题,3为来自模考大赛做题试卷
public String exam_id;//考试id
public String channel;//1题库 2nwn
public String origin_id;//试卷或者练习册id
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
record_id = MapUtil.getParameter(parameter, "record_id").trim();
user_id = MapUtil.getParameter(parameter, "user_id").trim();
orgin = MapUtil.getParameter(parameter, "orgin").trim();
exam_id = MapUtil.getParameter(parameter, "exam_id").trim();
channel = MapUtil.getParameter(parameter, "channel").trim();
origin_id = MapUtil.getParameter(parameter, "origin_id").trim();
if ((!user_id.equals("")) && user_id.equals("code")) {
user_id=ListUtil.getListValue(user_idList,0);
parameter = parameter.replace("\"user_id\":code", "\"user_id\":\""+ user_id + "\"");
}
if ((!record_id.equals("")) && record_id.equals("code")) {
record_id = record_id_L;
parameter = parameter.replace("\"record_id\":code", "\"record_id\":\""+ record_id + "\"");
}
if ((!exam_id.equals("")) && exam_id.equals("code")) {
exam_id = L_exam_id;
parameter = parameter.replace("\"exam_id\":code", "\"exam_id\":\""+ exam_id + "\"");
}
if ((!origin_id.equals("")) && origin_id.equals("code")) {
origin_id = paper_id_L;
parameter = parameter.replace("\"origin_id\":code", "\"origin_id\":\""+ origin_id + "\"");
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String, String> headers=new HashMap<String, String>();
headers.put("Authorization", tk_token);
MyRequest myRequest=new MyRequest();
myRequest.setHeaders(headers);
myRequest.setRequest(Request);
myRequest.setUrl(Url);
myRequest.setParameter(parameter);
Response re = RequestDataUtils.RestAssuredApi(data,myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("0".equals(code)){
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.MySqlUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.TestUnti.VerificationMethod;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
import net.sf.json.JSONObject;
/**
* 85.模考大赛-获取试卷json文件+做题记录+主观题试题的采分结构
*
* @author puhui
*
*/
public class getPaperQuestionsJson extends TK implements API {
public String parameter;//参数集合
public String user_id;//用户id
public String paper_id;//用户id
public String record_sub_id;//考试项目id
public String orgin;//考试项目id
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
user_id = MapUtil.getParameter(parameter, "user_id").trim();
paper_id = MapUtil.getParameter(parameter, "paper_id").trim();
record_sub_id = MapUtil.getParameter(parameter, "record_sub_id").trim();
orgin = MapUtil.getParameter(parameter, "orgin").trim();
if ((!user_id.equals("")) && user_id.equals("code")) {
user_id=ListUtil.getListValue(user_idList,0);
parameter = parameter.replace("\"user_id\":code", "\"user_id\":\""+ user_id + "\"");
}
if ((!paper_id.equals("")) && paper_id.equals("code")) {
paper_id="2";
parameter = parameter.replace("\"paper_id\":code", "\"paper_id\":\""+ paper_id + "\"");
}
if ((!record_sub_id.equals("")) && record_sub_id.equals("code")) {
record_sub_id="324";
parameter = parameter.replace("\"record_sub_id\":code", "\"record_sub_id\":\""+ record_sub_id + "\"");
}
if ((!orgin.equals("")) && orgin.equals("code")) {
orgin="3";
parameter = parameter.replace("\"orgin\":code", "\"orgin\":\""+ orgin + "\"");
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String, String> headers=new HashMap<String, String>();
headers.put("Authorization", tk_token);
MyRequest myRequest=new MyRequest();
myRequest.setHeaders(headers);
myRequest.setRequest(Request);
myRequest.setUrl(Url);
myRequest.setParameter(parameter);
Response re = RequestDataUtils.RestAssuredApi(data,myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("0".equals(code)){
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.MySqlUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.TestUnti.VerificationMethod;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.TestUnti.ListUtil;
import net.sf.json.JSONObject;
/**
* 77. 获取模考科目的状态=======
*
* @author puhui
*
*/
public class getSubjectStatus extends TK implements API {
public String parameter;//参数集合
public String user_id;//用户id
public String record_id;//考试项目id
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
user_id = MapUtil.getParameter(parameter, "user_id").trim();
record_id = MapUtil.getParameter(parameter, "record_id").trim();
if ((!user_id.equals("")) && user_id.equals("code")) {
user_id=ListUtil.getListValue(user_idList,0);
parameter = parameter.replace("\"user_id\":code", "\"user_id\":\""+ user_id + "\"");
}
if ((!record_id.equals("")) && record_id.equals("code")) {
record_id="43";
parameter = parameter.replace("\"record_id\":code", "\"record_id\":\""+ record_id + "\"");
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Response re = RequestDataUtils.Post_token(data, Url, tk_token);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("0".equals(code)){
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.MySqlUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.TestUnti.VerificationMethod;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
import net.sf.json.JSONObject;
/**
*
* @Description: 33.真题试卷-获取纯主观题试卷报告接口
* @author: wff
* @date: 2019年6月11日 上午11:26:23
* @version V1.0
*/
public class getSubjectivePaperReport extends TK implements API {
public String parameter;//参数集合
public String record_id;//当前试卷所属使用记录id
public String orgin;//来源id(试题来源 1为来自正常做题试卷,2为来自扫描二维码试卷做题)
public String orgin_id;//试卷id
public String channel;//做题平台来源(1:题库;2:NWN)
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
record_id = MapUtil.getParameter(parameter, "record_id").trim();
orgin = MapUtil.getParameter(parameter, "orgin").trim();
orgin_id = MapUtil.getParameter(parameter, "orgin_id").trim();
channel = MapUtil.getParameter(parameter, "channel").trim();
if ((!record_id.equals("")) && record_id.equals("code")) {
record_id = record_id_L;
parameter = parameter.replace("\"record_id\":code", "\"record_id\":\""+ record_id + "\"");
}
if ((!orgin_id.equals("")) && orgin_id.equals("code")) {
orgin_id = paper_id_L;
parameter = parameter.replace("\"orgin_id\":code", "\"orgin_id\":\""+ orgin_id + "\"");
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String, String> headers=new HashMap<String, String>();
headers.put("Authorization", tk_token);
Map<String, String> jsonAsMap=new HashMap<String, String>();
parameter = MapUtil.getValue("parameter", data);
String tikuString= MapUtil.getParameter(parameter, "appid").trim();
tikuString = MapUtil.killQuotes(tikuString, "\"");
jsonAsMap.put("record_id", record_id);
jsonAsMap.put("orgin", orgin);
jsonAsMap.put("orgin_id", orgin_id);
jsonAsMap.put("channel", channel);
jsonAsMap.put("appid", tikuString);
MyRequest myRequest=new MyRequest();
myRequest.setUrl(Url);
myRequest.setHeaders(headers);
myRequest.setFormParameter(jsonAsMap);
myRequest.setRequest(Request);
Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("code") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("msg") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("接口响应成功!".equals(msg)){
List<String> list=jp.getList("data.children.children");
System.out.println(list);
if (list!=null && list.size()>0 && list.get(0)!=null) {
for(int i=0;i<list.size();i++){
String shelfIds =jp.getString("data.children.children[0].shelf_id");
String[] shelfId = shelfIds.split(",");
for (String string : shelfId) {
L_shelf_id = string.replace("[", "").replace("]", "").trim();
// System.out.println(string.replace("[", "").replace("]", ""));
}
}
//
}
conn=ConnectionsMap.get("tk");
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.json.simple.JSONArray;
import com.offcn.TestUnti.Log;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.MySqlUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.TestUnti.VerificationMethod;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.TestUnti.ListUtil;
import net.sf.json.JSONObject;
/**
* 79. 智能批改-提交申论做题记录,(85.模考大赛-获取试卷json文件+做题记录+主观题试题的采分结构,调完85接口后才能调用79接口)
*
* @author puhui
*
*/
public class submitMockExpounding extends TK implements API {
public String parameter;//参数集合
public String parameterData;//用户id
public String user_id;//用户id
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
user_id = MapUtil.getParameter(parameter, "user_id").trim();
parameterData = MapUtil.getParameter(parameter, "parameterData").trim();
if ((!user_id.equals("")) && user_id.equals("code")) {
user_id=ListUtil.getListValue(user_idList,0);
parameter = parameter.replace("\"user_id\":code", "\"user_id\":\""+ user_id + "\"");
}
if ((!parameterData.equals("")) && parameterData.equals("code")) {
parameterData="{\\\"channel\\\":\\\"1\\\",\\\"orgin\\\":\\\"3\\\",\\\"orgin_id\\\":\\\"4362\\\",\\\"record_id\\\":\\\"458\\\",\\\"is_final\\\":\\\"1\\\",\\\"user_id\\\":\\\"11292\\\",\\\"questions\\\":[{\\\"question_number\\\":\\\"1\\\",\\\"user_answer\\\":[{\\\"score_section_id\\\":\\\"0\\\",\\\"content\\\":\\\"作为中国城镇化推进过程中的一个实验性物种,特色小镇外溢出了不小的经济价值。\\\",\\\"content_section_id\\\":\\\"0\\\"}],\\\"is_hf\\\":\\\"1\\\",\\\"duration\\\":\\\"31\\\",\\\"question_id\\\":\\\"109015\\\",\\\"is_signed\\\":\\\"0\\\",\\\"type\\\":\\\"1\\\"},{\\\"question_number\\\":\\\"2\\\",\\\"user_answer\\\":[{\\\"score_section_id\\\":\\\"0\\\",\\\"content\\\":\\\"南有周庄,北有周窝\\\",\\\"content_section_id\\\":\\\"0\\\"}],\\\"is_hf\\\":\\\"1\\\",\\\"duration\\\":\\\"71\\\",\\\"question_id\\\":\\\"109016\\\",\\\"is_signed\\\":\\\"0\\\",\\\"type\\\":\\\"1\\\"},{\\\"question_number\\\":\\\"3\\\",\\\"user_answer\\\":[],\\\"is_hf\\\":\\\"1\\\",\\\"duration\\\":\\\"999\\\",\\\"question_id\\\":\\\"109017\\\",\\\"is_signed\\\":\\\"0\\\",\\\"type\\\":\\\"1\\\"},{\\\"question_number\\\":\\\"4\\\",\\\"user_answer\\\":[{\\\"score_section_id\\\":\\\"0\\\",\\\"content\\\":\\\"呵呵就不给机会\\\",\\\"content_section_id\\\":\\\"0\\\"}],\\\"is_hf\\\":\\\"1\\\",\\\"duration\\\":\\\"23\\\",\\\"question_id\\\":\\\"109018\\\",\\\"is_signed\\\":\\\"0\\\",\\\"type\\\":\\\"1\\\"}],\\\"exam_id\\\":\\\"51\\\"}";
parameter = parameter.replace("\"parameterData\":code", "\"data\":\""+ parameterData+"\"" );
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Response re = RequestDataUtils.Post_token(data, Url, tk_token);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("retcode") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("0".equals(code)){
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
package com.offcn.api.tk.app3;
import io.restassured.path.json.JsonPath;
import io.restassured.response.Response;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.offcn.TestUnti.MapUtil;
import com.offcn.TestUnti.RequestDataUtils;
import com.offcn.TestUnti.StringUtils;
import com.offcn.interfaces.API;
import com.offcn.process.TK;
import com.offcn.system.MyRequest;
import com.offcn.TestUnti.ListUtil;
/**
*
* @Description: 15.真题试卷-试卷交卷接口
* @author: wff
* @date: 2019年6月11日 上午11:26:23
* @version V1.0
*/
public class submitPaper extends TK implements API {
public String parameter;//参数集合
public String type;//来源:1为来自正常做题试卷,2为来自扫描二维码试卷做题,3为来自模考大赛做题试卷
public String paper_id;//试卷id
public String record_id;//记录id
public String user_id;//用户id
public String duration;//真题试卷需要传递做题时长(s)(二维码扫描不需要)
public String channel;//做题平台来源(1:题库;2:NWN)
@Override
public void initialize(HashMap<String, Object> data) {
if (!isProduct && data.get("CleanDB").toString().contains("Y")) {
cleanUser_FromDB();//清除注册用户根据user_id
}
}
@Override
public HashMap<String, Object> handleInput(HashMap<String, Object> data) {
// 获取parameter对应的内容
parameter = MapUtil.getValue("parameter", data);
type = MapUtil.getParameter(parameter, "type").trim();
paper_id = MapUtil.getParameter(parameter, "paper_id").trim();
record_id = MapUtil.getParameter(parameter, "record_id").trim();
user_id = MapUtil.getParameter(parameter, "user_id").trim();
duration = MapUtil.getParameter(parameter, "duration").trim();
channel = MapUtil.getParameter(parameter, "channel").trim();
if ((!paper_id.equals("")) && paper_id.equals("code")) {
paper_id = paper_id_L;
parameter = parameter.replace("\"paper_id\":code", "\"paper_id\":\""+ paper_id + "\"");
}
if ((!record_id.equals("")) && record_id.equals("code")) {
record_id = record_id_L;
parameter = parameter.replace("\"record_id\":code", "\"record_id\":\""+ record_id_L + "\"");
}
if ((!user_id.equals("")) && user_id.equals("code")) {
user_id=ListUtil.getListValue(user_idList,0);
parameter = parameter.replace("\"user_id\":code", "\"user_id\":\""+ user_id + "\"");
}
data.put("parameter", parameter);
return data;
}
@Override
public Response SendRequest(HashMap<String, Object> data, String Url,
String Request) {
Map<String, String> headers=new HashMap<String, String>();
headers.put("Authorization", tk_token);
Map<String, String> jsonAsMap=new HashMap<String, String>();
parameter = MapUtil.getValue("parameter", data);
String tikuString= MapUtil.getParameter(parameter, "appid").trim();
tikuString = MapUtil.killQuotes(tikuString, "\"");
jsonAsMap.put("type", type);
jsonAsMap.put("paper_id", paper_id);
jsonAsMap.put("record_id", record_id);
jsonAsMap.put("user_id", user_id);
jsonAsMap.put("duration", duration);
jsonAsMap.put("channel", channel);
jsonAsMap.put("appid", tikuString);
MyRequest myRequest=new MyRequest();
myRequest.setUrl(Url);
myRequest.setHeaders(headers);
myRequest.setFormParameter(jsonAsMap);
myRequest.setRequest(Request);
Response re = RequestDataUtils.RestAssuredApi(data, myRequest);
return re;
}
@Override
public String handleOutput(Response re, HashMap<String, Object> data) {
JsonPath jp = re.body().jsonPath();
boolean result = true;
String failReason = "";
String json = StringUtils.decodeUnicode(re.asString());
if ((data.get("statusCode") != null)
&& (!data.get("statusCode").toString()
.equals(String.valueOf(re.getStatusCode())))) {
result = result && false;
failReason = failReason + "statusCode is expected "
+ data.get("statusCode").toString() + " but actually "
+ String.valueOf(re.getStatusCode()) + ". ";
}
if (json.length() != 0) {
String msg=jp.getString("message");
String code=jp.getString("retcode");
if ((data.get("code") != null ) && (code != null) && (!code.equals(data.get("code").toString()))) {
result = result && false;
failReason = failReason + "code is expected "
+ data.get("code").toString() + " but actually "
+ jp.getString("code") + ".";
}
if ((data.get("msg") != null) && (msg != null) && (!msg.equals(data.get("msg").toString()))) {
result = result && false;
failReason = failReason + "msg is expected "
+ data.get("msg").toString() + " but actually "
+ jp.getString("msg") + ".";
}
if(data.get("custom") != null && json!=null){
//如果自定义结果包含多个希望结果,也就是有逗号,那么就切割,包含比较。
if(data.get("custom").toString().contains(",")){
String [] strCustomStrings=data.get("custom").toString().split(",");
for(int i=0;i<strCustomStrings.length;i++){
if(!json.contains(strCustomStrings[i])){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ strCustomStrings[i] + ".";
break;
}
}
}else{//如果只有一个希望结果,就直接包含比较。
if(!json.contains(data.get("custom").toString())){
result = result && false;
failReason = failReason + "custom is expected "
+ data.get("custom").toString() + " but actually "
+ data.get("custom").toString() + ".";
}
}
}
if("接口响应成功!".equals(msg)){
List<String> list=jp.getList("data.children.children");
System.out.println(list);
if (list!=null && list.size()>0 && list.get(0)!=null) {
for(int i=0;i<list.size();i++){
String shelfIds =jp.getString("data.children.children[0].shelf_id");
String[] shelfId = shelfIds.split(",");
for (String string : shelfId) {
L_shelf_id = string.replace("[", "").replace("]", "").trim();
// System.out.println(string.replace("[", "").replace("]", ""));
}
}
//
}
conn=ConnectionsMap.get("tk");
}
}
if (result)
return "Pass";
else
return "Fail:" + failReason;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment