Commit f526a59b by yangfangfang

数据中心-财务数据-营收数据

parent 765f7e34
...@@ -100,4 +100,68 @@ public class FinanceDataTools extends XMBaseTest { ...@@ -100,4 +100,68 @@ public class FinanceDataTools extends XMBaseTest {
return response; return response;
} }
/**
* @param
* @description:获取数据中心-财务数据-营收数据-全部
* @param dateType:时间类型:[ DAY, WEEK, MONTH, QUARTER, YEAR ]
* @param startTime:开始时间
* @param endTime:结束时间 注意:使用这个方法只能搜按天和按月,因为参数类型这里写的long 其他几个不是long型,会用不了
* @author: yangfangfang
**/
public JSONObject getCostData_all(String dateType,long startTime, long endTime, DataUserInfo...dataUserInfos){
dataApi.setApiModule(ApiModule.Polar_Data)
.setApiName("API_getCostData")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject getCostData=new JSONObject();
getCostData.put("dateType",dateType);
getCostData.put("endTime",endTime );
getCostData.put("startTime",startTime);
getCostData.put("brandId",xmAppApi.getLoginInfo().getBrandId());
getCostData.put("studioId",xmAppApi.getLoginInfo().getStudioId());
getCostData.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, getCostData.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response=dataApi.getBodyInJSON();
return response;
}
/**
* @param
* @description:获取数据中心-财务数据-营收数据-根据类型筛选
* @param dateType:时间类型:[ DAY, WEEK, MONTH, QUARTER, YEAR ]
* @param startTime:开始时间
* @param endTime:结束时间 注意:使用这个方法只能搜按天和按月,因为参数类型这里写的long 其他几个不是long型,会用不了
* @param type:* ex-enum-descriptions: List [ "会员卡", "训练营", "储值卡", "体验卡", "单次约课" ][ MEMBER_CARD, TRAINING_CAMP, DEPOSIT_CARD, EXPERIENCE_CARD, SINGLE_RESERVE ]
* @author: yangfangfang
**/
public JSONObject getCostData_type(String dateType,String type,long startTime, long endTime, DataUserInfo...dataUserInfos){
dataApi.setApiModule(ApiModule.Polar_Data)
.setApiName("API_getCostData")
.setTerminal(Terminal.B);
super.beforeDataRequest(dataUserInfos);
JSONObject getCostData=new JSONObject();
getCostData.put("dateType",dateType);
getCostData.put("endTime",endTime );
getCostData.put("startTime",startTime);
getCostData.put("type",type);
getCostData.put("brandId",xmAppApi.getLoginInfo().getBrandId());
getCostData.put("studioId",xmAppApi.getLoginInfo().getStudioId());
getCostData.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
dataApi.doRequest(RequestType.JSON, dataparams, getCostData.toJSONString(), dataheadrs).assetsSuccess(true);
JSONObject response=dataApi.getBodyInJSON();
return response;
}
} }
package com.xiaomai.cases.polar.data.financeData;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.cases.polar.finance.order.OrderTools;
import com.xiaomai.cases.polar.member.Tools;
import com.xiaomai.cases.polar.memberCard.CardTools;
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 org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import java.math.BigDecimal;
import java.math.RoundingMode;
public class TestGetCostData extends XMBaseTest {
FinanceDataTools financeDataTools=new FinanceDataTools();
OrderTools orderTools = new OrderTools();
Tools tools = new Tools();
CardTools cardTools=new CardTools();
String memberId;
String cardId;
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Data)
.setApiName("API_getCostData")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("yff")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@Test(description = "获取数据中心-财务数据-营收数据")
public void testGetCostData() {
//注意完成一些操作,再校验数据中心的数据一定要等待几秒,数据中心很容易因为没有等待几秒而核对不上
//先查一下当前营收数据-全部
JSONObject beforeGetCostData=financeDataTools.getCostData_all("DAY",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal beforeConfirmedAmount=new BigDecimal(beforeGetCostData.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal beforeLeftAmount=new BigDecimal(beforeGetCostData.getJSONObject("result").getString("leftAmount"));//待消耗金额
//先查一下当前营收数据-会员卡
JSONObject beforeGetCostDataMember_card=financeDataTools.getCostData_type("DAY","MEMBER_CARD",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal beforeConfirmedAmountMember_card=new BigDecimal(beforeGetCostDataMember_card.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal beforeLeftAmountMember_card=new BigDecimal(beforeGetCostDataMember_card.getJSONObject("result").getString("leftAmount"));//待消耗金额
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//①创建部分支付订单,筛选全部和会员卡的确认收入和待消耗金额都无变化
//造订单相关数据
String name = "创建订单潜在会员"+ RandomStringUtil.randomString(3);
String phone = RandomStringUtil.randomMobile("666");
//获取会员ID,没有则新建一个
int memberTotal = Integer.parseInt(tools.search("NORMAL","NORMAL").getJSONObject("result").getString("total"));
if (memberTotal == 0) {
memberId = tools.create(name,phone).getString("result");
}
memberId=tools.search("NORMAL","NORMAL").getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("id");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//获取会员卡信息
//获取会员卡列表,没有则新建一个
int cardTotal = Integer.parseInt(orderTools.fetchPageOfMemberCard("次卡","MEMBER_CARD").getJSONObject("result").getString("total"));
if (cardTotal == 0) {
cardId = cardTools.memberCardCreate("次卡-创建订单会员卡"+TimeUtils.getCurrentTime()).getString("result");
}
JSONObject memberCard=orderTools.fetchPageOfMemberCard("次卡","MEMBER_CARD");
cardId=memberCard.getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("id");
BigDecimal quantity= new BigDecimal(memberCard.getJSONObject("result").getJSONArray("records").getJSONObject(0).getJSONArray("benefitList").getJSONObject(0).getString("balance"));
float price= Float.parseFloat(memberCard.getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("price"));
int validPeriod= Integer.parseInt(memberCard.getJSONObject("result").getJSONArray("records").getJSONObject(0).getString("validPeriod"));
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//获取签单要用的卡快照id
String latestSnapshotId=orderTools.fetchDetailById(cardId,xmAppApi.getLoginInfo().getBrandId(),xmAppApi.getLoginInfo().getStudioId(),xmAppApi.getLoginInfo().getAdminId()).getJSONObject("result").getString("latestSnapshotId");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//检查会员对该卡是否超出购买上限
boolean limitResult=orderTools.checkAllowPurchase("MEMBER_CARD",cardId,memberId,"1",xmAppApi.getLoginInfo().getBrandId(),xmAppApi.getLoginInfo().getStudioId(),xmAppApi.getLoginInfo().getAdminId()).getBoolean("success");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
if(limitResult == true) {
//创建部分支付订单
JSONObject orderResult = orderTools.signOrder(cardId, latestSnapshotId, quantity, price, validPeriod, latestSnapshotId, 0, "PURCHASE",
"MEMBER_CARD", memberId, price, price / 2, "1");
String getDetailId = orderResult.getString("result");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//获取订单详情
JSONObject getDetailResult = orderTools.getDetail(getDetailId);
BigDecimal unpaidAmount = new BigDecimal(getDetailResult.getJSONObject("result").getString("unpaidAmount"));//欠费金额
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//先查一下当前营收数据-全部
JSONObject afterGetCostData=financeDataTools.getCostData_all("DAY",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmount=new BigDecimal(afterGetCostData.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmount=new BigDecimal(afterGetCostData.getJSONObject("result").getString("leftAmount"));//待消耗金额
//先查一下当前营收数据-会员卡
JSONObject afterGetCostDataMember_card=financeDataTools.getCostData_type("DAY","MEMBER_CARD",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmountMember_card=new BigDecimal(afterGetCostDataMember_card.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmountMember_card=new BigDecimal(afterGetCostDataMember_card.getJSONObject("result").getString("leftAmount"));//待消耗金额
//校验1:
//校验部分支付订单对于营收数据-全部的确认收入和待消耗金额无变化
Assert.assertEquals(afterConfirmedAmount, beforeConfirmedAmount,"创建部分支付订单,数据中心-营收数据汇总-全部-确认收入应该无变化");
Assert.assertEquals(afterLeftAmount,beforeLeftAmount,"创建部分支付订单,数据中心-营收数据汇总-全部-待消耗金额应该无变化");
//校验部分支付订单对于营收数据-会员卡的确认收入和待消耗金额无变化
Assert.assertEquals(afterConfirmedAmountMember_card, beforeConfirmedAmountMember_card,"创建部分支付订单,数据中心-营收数据汇总-会员卡-确认收入应该无变化");
Assert.assertEquals(afterLeftAmountMember_card,beforeLeftAmountMember_card,"创建部分支付订单,数据中心-营收数据汇总-会员卡-待消耗金额应该无变化");
//②继续收款,订单变成已支付,待消耗金额应该增加
//继续收款
JSONObject pay=orderTools.pay(unpaidAmount,"1",getDetailId);
//获取订单详情
JSONObject getDetailResult1 = orderTools.getDetail(getDetailId);
BigDecimal receivableAmount1 = new BigDecimal(getDetailResult1.getJSONObject("result").getString("receivableAmount"));//应收金额
BigDecimal paidAmount1 = new BigDecimal(getDetailResult1.getJSONObject("result").getString("paidAmount"));//已支付金额
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//再查一下当前营收数据-全部
JSONObject afterGetCostData1=financeDataTools.getCostData_all("DAY",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmount1=new BigDecimal(afterGetCostData1.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmount1=new BigDecimal(afterGetCostData1.getJSONObject("result").getString("leftAmount"));//待消耗金额
//再查一下当前营收数据-会员卡
JSONObject afterGetCostDataMember_card1=financeDataTools.getCostData_type("DAY","MEMBER_CARD",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmountMember_card1=new BigDecimal(afterGetCostDataMember_card1.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmountMember_card1=new BigDecimal(afterGetCostDataMember_card1.getJSONObject("result").getString("leftAmount"));//待消耗金额
//校验2:
//校验已支付订单对于营收数据-全部的待消耗金额应该增加对应的金额,确认收入应该无变化
Assert.assertEquals(afterConfirmedAmount1,afterConfirmedAmount ,"创建已支付订单,数据中心-营收数据汇总-全部-确认收入应该无变化");
Assert.assertEquals(afterLeftAmount1,afterLeftAmount.add(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"创建已支付订单,数据中心-营收数据汇总-全部-待消耗金额应该增加对应的金额");
//校验已支付订单对于营收数据-会员卡的待消耗金额应该增加对应的金额,确认收入应该无变化
Assert.assertEquals(afterConfirmedAmountMember_card1, afterConfirmedAmountMember_card,"创建已支付订单,数据中心-营收数据汇总-会员卡-确认收入应该无变化");
Assert.assertEquals(afterLeftAmountMember_card1,afterLeftAmountMember_card.add(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"创建已支付订单,数据中心-营收数据汇总-会员卡-待消耗金额应该增加对应的金额");
//③消耗之后,筛选全部和会员卡的待消耗金额减少,确认收入增加
//获取会员下的购买的会员卡
JSONObject fetchUserCardListResult=orderTools.fetchUserCardList("MEMBER",memberId,"NORMAL");
String memberCardId=fetchUserCardListResult.getJSONArray("result").getJSONObject(0).getString("id");//memberCardId
String benefitId=fetchUserCardListResult.getJSONArray("result").getJSONObject(0).getJSONObject("courseBenefit").getString("id");//benefitId
String balance=fetchUserCardListResult.getJSONArray("result").getJSONObject(0).getJSONObject("courseBenefit").getString("leftBalance");//memberCardId
//手动扣次,扣完
cardTools.manualDeduct(benefitId,memberCardId,balance);
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//再查一下当前营收数据-全部
JSONObject afterGetCostData2=financeDataTools.getCostData_all("DAY",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmount2=new BigDecimal(afterGetCostData2.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmount2=new BigDecimal(afterGetCostData2.getJSONObject("result").getString("leftAmount"));//待消耗金额
//再查一下当前营收数据-会员卡
JSONObject afterGetCostDataMember_card2=financeDataTools.getCostData_type("DAY","MEMBER_CARD",TimeUtils.getTodayTime(),TimeUtils.getTodayEndTime());
BigDecimal afterConfirmedAmountMember_card2=new BigDecimal(afterGetCostDataMember_card2.getJSONObject("result").getString("confirmedAmount"));//确认收入
BigDecimal afterLeftAmountMember_card2=new BigDecimal(afterGetCostDataMember_card2.getJSONObject("result").getString("leftAmount"));//待消耗金额
//校验3:
//校验手动扣次之后营收数据-筛选全部的待消耗金额应该减少对应的金额,确认收入应该增加对应的金额
Assert.assertEquals(afterConfirmedAmount2,afterConfirmedAmount1.add(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"手动扣完所有次数之后,数据中心-营收数据汇总-全部-确认收入应该增加对应的金额");
Assert.assertEquals(afterLeftAmount2,afterLeftAmount1.subtract(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"手动扣完所有次数,数据中心-营收数据汇总-全部-待消耗金额应该减少对应的金额");
//校验手动扣次之后营收数据-筛选会员卡的待消耗金额应该减少对应的金额,确认收入应该增加对应的金额
Assert.assertEquals(afterConfirmedAmountMember_card2, afterConfirmedAmountMember_card1.add(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"手动扣完所有次数之后,数据中心-营收数据汇总-会员卡-确认收入应该增加对应的金额");
Assert.assertEquals(afterLeftAmountMember_card2,afterLeftAmountMember_card1.subtract(paidAmount1.setScale(2, RoundingMode.HALF_UP)),"手动扣完所有次数,数据中心-营收数据汇总-会员卡-待消耗金额应该减少对应的金额");
}
}
}
package com.xiaomai.cases.polar.data.financeData;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.RequestType;
import com.xiaomai.enums.Terminal;
import com.xiaomai.utils.TimeUtils;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class TestGetCostDetail extends XMBaseTest {
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Data)
.setApiName("API_getCostDetail")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("yff")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@DataProvider
public Object[][] dataProvider(){
return new Object[][]{
{"DAY","LEFT_AMOUNT_ASC","MEMBER_CARD",TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime()},//今天,排序:待消耗金额正序
{"MONTH","LEFT_AMOUNT_DESC","EXPERIENCE_CARD",TimeUtils.getMonthLastDay(),TimeUtils.getMonthFristDay()},//本月,排序:待消耗金额倒序
{"DAY","CONFIRMED_AMOUNT_ASC", "TRAINING_CAMP",TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime()},//今天,排序:确认金额正序
{"MONTH","CONFIRMED_AMOUNT_DESC","DEPOSIT_CARD",TimeUtils.getMonthLastDay(),TimeUtils.getMonthFristDay()},//本月,排序:确认金额倒序
{"DAY","LEFT_AMOUNT_ASC", "SINGLE_RESERVE",TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime()}//今天,排序:待消耗金额正序
};
}
@Test(description = "获取数据中心-财务数据-营收明细:按天、按月以及各种排序各种类型筛选的营收明细",dataProvider = "dataProvider")
public void testGetCostDetail(String dateType, String sort,String type, long endTime,long startTime){
JSONObject getCostDetail=new JSONObject();
getCostDetail.put("dateType",dateType);
getCostDetail.put("memberId","");
getCostDetail.put("campId","");
getCostDetail.put("depositId","");
getCostDetail.put("sort",sort);
getCostDetail.put("type",type);
getCostDetail.put("itemId","");
getCostDetail.put("endTime",endTime);
getCostDetail.put("startTime",startTime);
getCostDetail.put("brandId",xmAppApi.getLoginInfo().getBrandId());
getCostDetail.put("studioId",xmAppApi.getLoginInfo().getStudioId());
getCostDetail.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
xmAppApi.doRequest(RequestType.JSON,params,getCostDetail.toJSONString(),headers).assetsSuccess(true);
String getOrderDetailResult=xmAppApi.getBodyInJSON().getString("success");
Assert.assertEquals(getOrderDetailResult,"true","获取数据中心-财务数据-营收明细失败");
}
@DataProvider
public Object[][] dataProvider1(){
return new Object[][]{
{"WEEK","LEFT_AMOUNT_ASC","MEMBER_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,排序:待消耗金额正序
{"WEEK","LEFT_AMOUNT_DESC","EXPERIENCE_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,排序:待消耗金额倒序
{"WEEK","CONFIRMED_AMOUNT_ASC","TRAINING_CAMP",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,排序:确认金额正序
{"WEEK","CONFIRMED_AMOUNT_DESC","DEPOSIT_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,排序:确认金额倒序
{"WEEK","LEFT_AMOUNT_ASC","SINGLE_RESERVE",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,排序:待消耗金额正序
};
}
@Test(description = "获取数据中心-财务数据-营收明细:按周以及各种排序各种类型筛选的营收明细",dataProvider = "dataProvider1")
public void testGetCostDetail1(String dateType,String sort,String type,String endTime,String startTime){
JSONObject getCostDetail=new JSONObject();
getCostDetail.put("dateType",dateType);
getCostDetail.put("memberId","");
getCostDetail.put("campId","");
getCostDetail.put("depositId","");
getCostDetail.put("sort",sort);
getCostDetail.put("type",type);
getCostDetail.put("itemId","");
getCostDetail.put("endTime",endTime);
getCostDetail.put("startTime",startTime);
getCostDetail.put("brandId",xmAppApi.getLoginInfo().getBrandId());
getCostDetail.put("studioId",xmAppApi.getLoginInfo().getStudioId());
getCostDetail.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
xmAppApi.doRequest(RequestType.JSON,params,getCostDetail.toJSONString(),headers).assetsSuccess(true);
String getOrderDetailResult=xmAppApi.getBodyInJSON().getString("success");
Assert.assertEquals(getOrderDetailResult,"true","获取数据中心-财务数据-营收明细失败");
}
}
package com.xiaomai.cases.polar.data.financeData;
import com.alibaba.fastjson.JSONObject;
import com.xiaomai.enums.ApiModule;
import com.xiaomai.enums.LoginAccount;
import com.xiaomai.enums.RequestType;
import com.xiaomai.enums.Terminal;
import com.xiaomai.utils.TimeUtils;
import com.xiaomai.utils.XMBaseTest;
import org.testng.Assert;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
public class TestGetCostTrend extends XMBaseTest {
@BeforeMethod
public void beforeTest(){
xmAppApi.setApiModule(ApiModule.Polar_Data)
.setApiName("API_getCostTrend")
.setLoginUser(LoginAccount.GYM_PROD)
.setTerminal(Terminal.B);
dal.setCase_owner("yff")
.setCase_name(Thread.currentThread().getStackTrace()[1].getFileName().split("\\.")[0]);
super.beforeTest();
}
@DataProvider
public Object[][] dataProvider(){
return new Object[][]{
{"DAY","LEFT_AMOUNT", TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime()},//今天,待消耗金额
{"MONTH","CONFIRMED_AMOUNT",TimeUtils.getMonthLastDay(),TimeUtils.getMonthFristDay()},//本月,确认收入
{"DAY","LEFT_AMOUNT", TimeUtils.getTodayEndTime(),TimeUtils.getTodayTime()},//今天,待消耗金额
{"MONTH","CONFIRMED_AMOUNT",TimeUtils.getMonthLastDay(),TimeUtils.getMonthFristDay()},//本月,确认收入
};
}
@Test(description = "数据中心-财务数据-筛选全部营收数据趋势图",dataProvider = "dataProvider")
public void testGetCostTrend(String dateType,String metric,long endTime,long startTime){
JSONObject trend=new JSONObject();
trend.put("dateType",dateType);
trend.put("endTime", endTime);
trend.put("startTime", startTime);
trend.put("metric",metric);
trend.put("brandId",xmAppApi.getLoginInfo().getBrandId());
trend.put("studioId",xmAppApi.getLoginInfo().getStudioId());
trend.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
xmAppApi.doRequest(RequestType.JSON,params,trend.toJSONString(),headers).assetsSuccess(true);
String trendResult=xmAppApi.getBodyInJSON().getString("success");
Assert.assertEquals(trendResult,"true","获取财务数据-筛选全部营收数据趋势图失败");
}
@DataProvider
public Object[][] dataProvider1(){
return new Object[][]{
{"WEEK","LEFT_AMOUNT","MEMBER_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,待消耗金额,会员卡
{"WEEK","CONFIRMED_AMOUNT","EXPERIENCE_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,确认收入,体验卡
{"WEEK","LEFT_AMOUNT","TRAINING_CAMP",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,待消耗金额,训练营
{"WEEK","CONFIRMED_AMOUNT","DEPOSIT_CARD",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,确认收入,储值卡
{"WEEK","LEFT_AMOUNT","SINGLE_RESERVE",TimeUtils.getWeekLastTime(),TimeUtils.getWeekFirstTime()},//本周,待消耗金额,单次约课
};
}
@Test(description = "数据中心-财务数据-筛选本周的各种类型营收数据趋势图",dataProvider = "dataProvider1")
public void testGetCostTrend(String dateType,String metric,String type,String endTime,String startTime){
JSONObject trend=new JSONObject();
trend.put("dateType",dateType);
trend.put("endTime", endTime);
trend.put("startTime", startTime);
trend.put("metric",metric);
trend.put("type",type);
trend.put("brandId",xmAppApi.getLoginInfo().getBrandId());
trend.put("studioId",xmAppApi.getLoginInfo().getStudioId());
trend.put("operatorId",xmAppApi.getLoginInfo().getAdminId());
xmAppApi.doRequest(RequestType.JSON,params,trend.toJSONString(),headers).assetsSuccess(true);
String trendResult=xmAppApi.getBodyInJSON().getString("success");
Assert.assertEquals(trendResult,"true","获取财务数据-筛选本周的各种类型营收数据趋势图失败");
}
}
...@@ -183,7 +183,7 @@ public class TestSignOrder extends XMBaseTest { ...@@ -183,7 +183,7 @@ public class TestSignOrder extends XMBaseTest {
//获取会员下的购买的会员卡 //获取会员下的购买的会员卡
JSONObject fetchUserCardListResult=orderTools.fetchUserCardList("MEMBER",memberId,"NORMAL"); JSONObject fetchUserCardListResult=orderTools.fetchUserCardList("MEMBER",memberId,"NORMAL");
String fetchUserCardListId=fetchUserCardListResult.getJSONArray("result").getJSONObject(0).getString("id");//权益ID String fetchUserCardListId=fetchUserCardListResult.getJSONArray("result").getJSONObject(0).getString("id");//memberCardId
//获取售卖详情 //获取售卖详情
JSONObject findDetailByIdResult=cardTools.memberCardFindDetailById(fetchUserCardListId); JSONObject findDetailByIdResult=cardTools.memberCardFindDetailById(fetchUserCardListId);
......
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