Commit e354eb4c by yangjian

乐动活动报名B端相关Case

parent a5a7b901
package com.xiaomai.cases.polar.eventRegistration;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.basetest.BaseTestImpl;
import com.xiaomai.client.DataUserInfo;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.RequestType;
import com.xiaomai.enums.Terminal;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
@Component("EventRegistrationTools")
public class EventRegistrationTools extends BaseTestImpl {
/**
* @param
* @description:活动报名列表
* @author: yangjian
* @param state 活动状态
**/
public JSONObject getStudioActivityPage(String state, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_getStudioActivityPage")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("current", 0);
jsonObject.put("size", 20);
jsonObject.put("state", state);//UNPUBLISHED未发布 WAITING报名未开始 PROCESSING报名中 ENDED报名结束 ABNORMAL已失效
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:搜索活动报名
* @author: yangjian
* @param activityNameLike 活动名称
**/
public JSONObject SearchActivity(String activityNameLike, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_getStudioActivityPage")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("current", 0);
jsonObject.put("size", 20);
jsonObject.put("activityNameLike", activityNameLike);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @param activityName 活动名称
* @param publish 发布状态
* @param activityStartTime 活动开始时间
* @param activityEndTime 活动结束时间
* @param sellableStartTime 报名开始时间
* @param sellableEndTime 报名结束时间
* @description:创建活动报名
* @author: yangjian
*
* @return*/
public JSONObject create(String activityName, boolean publish, long activityStartTime, long activityEndTime, long sellableStartTime, long sellableEndTime, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_sellableActivity_create")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
List<String> applyMemberStates = new ArrayList<>();//可参与会员类型
applyMemberStates.add("POTENTIAL");
applyMemberStates.add("NORMAL");
applyMemberStates.add("HISTORY");
JSONObject jsonObject3 = new JSONObject();//姓名收集
jsonObject3.put("configName", "姓名");
jsonObject3.put("configType","TEXT");
jsonObject3.put("required", true);
JSONObject jsonObject4 = new JSONObject();//手机号收集
jsonObject4.put("configName", "手机号");
jsonObject4.put("configType","TEXT");
jsonObject4.put("required", true);
List<JSONObject> userInfoConfig = new ArrayList<>();//用户信息收集
userInfoConfig.add(jsonObject3);
userInfoConfig.add(jsonObject4);
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("price", 0);//报名价格为0元
jsonObject1.put("purchaseNumberLimit", -1);//购买限制
jsonObject1.put("skuName", "自动化-报名项目");
jsonObject1.put("stock", "100");//剩余数量
List<JSONObject> skuItems = new ArrayList<>();//报名项目
skuItems.add(jsonObject1);
JSONObject jsonObject2 = new JSONObject();//活动地点
jsonObject2.put("address", "同人广场A座");
jsonObject2.put("provinceCode",330000);
jsonObject2.put("cityCode", 330100);
jsonObject2.put("areaCode", 330106);
jsonObject2.put("fullAddress", "浙江省杭州市西湖区同人广场A座");
List<String> hostGraphIds = new ArrayList<>();//固定活动主图
hostGraphIds.add("1896827628887764994");
JSONObject jsonObject = new JSONObject();
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
jsonObject.put("publish", publish);// false仅保存 true保存并发布
jsonObject.put("activityName", activityName);//活动报名的名称
jsonObject.put("activityStartTime", activityStartTime);//活动开始时间
jsonObject.put("activityEndTime", activityEndTime);//活动结束时间
jsonObject.put("sellableStartTime", sellableStartTime);//报名开始时间
jsonObject.put("sellableEndTime", sellableEndTime);//报名结束时间
jsonObject.put("applyMemberStates", applyMemberStates);//可参与会员类型,所有会员类型
jsonObject.put("skuItems", skuItems);//报名项目
jsonObject.put("hostGraphIds", hostGraphIds);//活动主图
//jsonObject.put("activityDesc",activityDesc );//活动描述
jsonObject.put("userInfoCollect", true);//用户信息收集 true、false
//jsonObject.put("delSkuItemIds", delSkuItemIds);
jsonObject.put("addressInfo", jsonObject2);
jsonObject.put("userInfoConfig", userInfoConfig);
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:删除活动报名
* @author: yangjian
* @param activityId 活动id
**/
public JSONObject deleteById(String activityId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_deleteById")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("activityId", activityId);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:失效活动报名
* @author: yangjian
* @param activityId 活动id
**/
public JSONObject sellableActivityInvalid(String activityId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_sellableActivity_invalid")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("activityId", activityId);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:查看报名名单
* @author: yangjian
* @param activityId 活动id
**/
public JSONObject pagePurchaseRecord(String activityId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_pagePurchaseRecord")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("activityId", activityId);
jsonObject.put("current", 0);
jsonObject.put("size", 10);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:发布活动报名
* @author: yangjian
* @param activityId 活动id
**/
public JSONObject sellableActivity_publish(String activityId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_sellableActivity_publish")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("activityId", activityId);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:编辑活动报名
* @author: yangjian
* @param activityId 活动id
* @param publish 发布状态
* @param activityName 活动名称
* @param activityStartTime 活动开始时间
* @param activityEndTime 活动结束时间
* @param sellableStartTime 报名开始时间
* @param sellableEndTime 报名结束时间
**/
public JSONObject edit(String activityName, boolean publish, long activityStartTime, long activityEndTime, long sellableStartTime, long sellableEndTime,String activityId,String skuId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_sellableActivity_edit")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
List<String> applyMemberStates = new ArrayList<>();//可参与会员类型
applyMemberStates.add("POTENTIAL");
applyMemberStates.add("NORMAL");
applyMemberStates.add("HISTORY");
JSONObject jsonObject3 = new JSONObject();//姓名收集
jsonObject3.put("configName", "姓名");
jsonObject3.put("configType","TEXT");
jsonObject3.put("required", true);
JSONObject jsonObject4 = new JSONObject();//手机号收集
jsonObject4.put("configName", "手机号");
jsonObject4.put("configType","TEXT");
jsonObject4.put("required", true);
List<JSONObject> userInfoConfig = new ArrayList<>();//用户信息收集
userInfoConfig.add(jsonObject3);
userInfoConfig.add(jsonObject4);
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("activityId", activityId);
jsonObject1.put("price", 0);//报名价格为0元
jsonObject1.put("purchaseNumberLimit", -1);//购买限制
jsonObject1.put("skuName", "自动化-报名项目");
jsonObject1.put("stock", "100");//剩余数量
jsonObject1.put("skuId", skuId);//剩余数量??
List<JSONObject> skuItems = new ArrayList<>();//报名项目
skuItems.add(jsonObject1);
JSONObject jsonObject2 = new JSONObject();//活动地点
jsonObject2.put("address", "同人广场A座");
jsonObject2.put("provinceCode",330000);
jsonObject2.put("cityCode", 330100);
jsonObject2.put("areaCode", 330106);
jsonObject2.put("fullAddress", "江省杭州市西湖区同人广场A座");
List<String> hostGraphIds = new ArrayList<>();//固定活动主图
hostGraphIds.add("1896738511109779458");
JSONObject jsonObject = new JSONObject();
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
jsonObject.put("publish", publish);// false仅保存 true保存并发布
jsonObject.put("activityName", activityName);//活动报名的名称
jsonObject.put("activityStartTime", activityStartTime);//活动开始时间
jsonObject.put("activityEndTime", activityEndTime);//活动结束时间
jsonObject.put("sellableStartTime", sellableStartTime);//报名开始时间
jsonObject.put("sellableEndTime", sellableEndTime);//报名结束时间
jsonObject.put("applyMemberStates", applyMemberStates);//可参与会员类型,所有会员类型
jsonObject.put("skuItems", skuItems);//报名项目
jsonObject.put("hostGraphIds", hostGraphIds);//活动主图
//jsonObject.put("activityDesc",activityDesc );//活动描述
jsonObject.put("userInfoCollect", true);//用户信息收集 true、false
//jsonObject.put("delSkuItemIds", delSkuItemIds);
jsonObject.put("addressInfo", jsonObject2);
jsonObject.put("userInfoConfig", userInfoConfig);
jsonObject.put("activityId", activityId);//活动id
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:查看活动详情
* @author: yangjian
* @param activityId 活动id
**/
public JSONObject sellableActivity_getStudioActivityById(String activityId, DataUserInfo... dataUserInfos) {
dataApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_sellableActivity_getStudioActivityById")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject jsonObject = new JSONObject();
jsonObject.put("activityId", activityId);
jsonObject.put("studioId", dataApi.getLoginInfo().getStudioId());
jsonObject.put("brandId", dataApi.getLoginInfo().getBrandId());
jsonObject.put("operatorId", dataApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, jsonObject.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response = dataApi.getBodyInJSON();
return response;
}
}
package com.xiaomai.cases.polar.eventRegistration;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.Terminal;
import com.xiaomai.utils.RandomStringUtil;
import com.xiaomai.utils.TimeUtils;
import com.xiaomai.utils.XMBaseTest;
import com.xiaomai.utils.XMJSONPath;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import javax.annotation.Resource;
public class TestDel extends XMBaseTest {
@Resource(name = "EventRegistrationTools")
EventRegistrationTools EventRegistrationTools;
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Registration)
.setApiName("API_deleteById")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("yangjian")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "删除活动报名")
public void testDel() {
String activityName = "自动化" + RandomStringUtil.randomString(5);//活动名称
String activityName1 = "自动化编辑" + RandomStringUtil.randomString(5);//活动名称
int before1 = Integer.parseInt(XMJSONPath.readPath(EventRegistrationTools.getStudioActivityPage("UNPUBLISHED"), "$.result.total"));//未发布-初始活动条数
int before2 = Integer.parseInt(XMJSONPath.readPath(EventRegistrationTools.getStudioActivityPage("PROCESSING"), "$.result.total"));//报名中-初始活动条数
EventRegistrationTools.create(activityName,false, TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime(),TimeUtils.getToDayTime(23,00));//创建活动
String activityId= XMJSONPath.readPath(dataApi.getApi_response(),"$.result");//创建活动后,拿活动id
EventRegistrationTools.sellableActivity_getStudioActivityById(activityId);
String skuId= XMJSONPath.readPath(dataApi.getApi_response(),"$.result.skuItems[0].id");
EventRegistrationTools.edit(activityName1,false, TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime(),TimeUtils.getToDayTime(23,00),activityId,skuId);//编辑活动,修改活动名称
int after1 = Integer.parseInt(XMJSONPath.readPath(EventRegistrationTools.getStudioActivityPage("UNPUBLISHED"), "$.result.total"));//创建活动后,未发布活动条数
Assert.assertEquals(after1,before1+1);//创建未发布活动后,活动数+1
EventRegistrationTools.SearchActivity(activityName1);
Assert.assertEquals(XMJSONPath.readPath(dataApi.getApi_response(), "$.result.total"), "1", "未搜索到目标活动");
EventRegistrationTools.sellableActivity_publish(activityId);//发布活动
int after2 = Integer.parseInt(XMJSONPath.readPath(EventRegistrationTools.getStudioActivityPage("PROCESSING"), "$.result.total"));//发布活动后,进行中的活动条数
Assert.assertEquals(after2,before2+1);//创建未发布活动后,活动数+1
EventRegistrationTools.sellableActivityInvalid(activityId);//失效活动
EventRegistrationTools.sellableActivity_getStudioActivityById(activityId);//查看失效活动
Assert.assertEquals(XMJSONPath.readPath(dataApi.getApi_response(), "$.result.state"), "ABNORMAL", "未失效活动成功");//断言活动详情返回状态为已失效
EventRegistrationTools.deleteById(activityId);//删除活动
int after3 = Integer.parseInt(XMJSONPath.readPath(EventRegistrationTools.getStudioActivityPage("PROCESSING"), "$.result.total"));//删除活动后,进行中的活动条数
Assert.assertEquals(after3,before2);//进行中的活动-1,和初始一样
}
}
......@@ -32,6 +32,7 @@ public class ApiModule {
public static String Polar_Membercluster = "polar_membercluster";
public static String Polar_Salary = "polar_salary";
public static String Polar_Invitation = "polar_invitation";
public static String Polar_Registration = "polar_registration";//活动报名
public static String Polar_MemberEntry="polar_memberEntry";//入场
public static String Polar_Export="polar_export";//导出
......
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