Commit 9c5d3cbf by 周晓航

根据商户号微信数据上报, 首次提交 还有xxl-job没配置

parent bb06dc67
...@@ -17,6 +17,13 @@ ...@@ -17,6 +17,13 @@
<artifactId>order-application-service</artifactId> <artifactId>order-application-service</artifactId>
<dependencies> <dependencies>
<dependency>
<groupId>com.xuxueli</groupId>
<artifactId>xxl-job-core</artifactId>
<version>2.0.1</version>
</dependency>
<dependency> <dependency>
<groupId>com.freemud.application.service.sdk</groupId> <groupId>com.freemud.application.service.sdk</groupId>
<artifactId>sdk-common-base</artifactId> <artifactId>sdk-common-base</artifactId>
......
package cn.freemud.config;
import com.xxl.job.core.executor.impl.XxlJobSpringExecutor;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午6:21
* @description : xxl-job 配置
*/
@Configuration
@Log4j2
public class XxlJobConfig {
@Value("${xxl.job.admin.addresses:http://111.231.99.41:7788/xxl-job-admin}")
private String adminAddresses;
@Value("${xxl.job.executor.appname:xxl-job-executor-report-orders-wechat}")
private String appName;
@Value("${xxl.job.executor.ip}")
private String ip;
@Value("${xxl.job.executor.port}")
private int port;
@Value("${xxl.job.accessToken}")
private String accessToken;
@Value("${xxl.job.executor.logpath:/data/applogs/xxl-job/jobhandler}")
private String logPath;
@Value("${xxl.job.executor.logretentiondays:-1}")
private int logRetentionDays;
@Bean(initMethod = "start", destroyMethod = "destroy")
public XxlJobSpringExecutor xxlJobExecutor() {
log.info(">>>>>>>>>>> xxl-job config init.");
XxlJobSpringExecutor xxlJobSpringExecutor = new XxlJobSpringExecutor();
xxlJobSpringExecutor.setAdminAddresses(adminAddresses);
xxlJobSpringExecutor.setAppName(appName);
xxlJobSpringExecutor.setIp(ip);
xxlJobSpringExecutor.setPort(port);
xxlJobSpringExecutor.setAccessToken(accessToken);
xxlJobSpringExecutor.setLogPath(logPath);
xxlJobSpringExecutor.setLogRetentionDays(logRetentionDays);
return xxlJobSpringExecutor;
}
}
package cn.freemud.entities.dto.delivery;
import java.util.List;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:53
* @description :
*/
public class GetFilterPartnerResponse {
private List<PartnerFilterResponse> partnerFilterVos;
public List<PartnerFilterResponse> getPartnerFilterVos() {
return partnerFilterVos;
}
public void setPartnerFilterVos(List<PartnerFilterResponse> partnerFilterVos) {
this.partnerFilterVos = partnerFilterVos;
}
}
package cn.freemud.entities.dto.delivery;
import java.util.Set;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:53
* @description :
*/
public class PartnerFilterResponse {
private String partnerId;
private Set<String> miniAppIds;
public String getPartnerId() {
return partnerId;
}
public void setPartnerId(String partnerId) {
this.partnerId = partnerId;
}
public Set<String> getMiniAppIds() {
return miniAppIds;
}
public void setMiniAppIds(Set<String> miniAppIds) {
this.miniAppIds = miniAppIds;
}
}
package cn.freemud.entities.vo;
import lombok.Data;
import java.util.*;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:38
* @description :
*/
@Data
public class OrderCountRequestVo {
Set<String> partnerIds;
private Date beginTime;
private Date endTmie;
}
...@@ -4,8 +4,10 @@ import cn.freemud.base.entity.BaseResponse; ...@@ -4,8 +4,10 @@ import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.ConfirmOrderDto; import cn.freemud.entities.dto.ConfirmOrderDto;
import cn.freemud.entities.dto.QueryOrdersResponseDto; import cn.freemud.entities.dto.QueryOrdersResponseDto;
import cn.freemud.entities.vo.*; import cn.freemud.entities.vo.*;
import com.freemud.application.sdk.api.ordercenter.response.OrderCountResp;
import com.freemud.sdk.api.assortment.order.enums.OrderSdkType; import com.freemud.sdk.api.assortment.order.enums.OrderSdkType;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -113,14 +115,16 @@ public interface Orderservice { ...@@ -113,14 +115,16 @@ public interface Orderservice {
/** /**
* 创建积分订单 * 创建积分订单
*
* @param vo * @param vo
* @return * @return
*/ */
BaseResponse createIntegralOrder(IntegralOrderVo vo); BaseResponse createIntegralOrder(IntegralOrderVo vo);
/**
* @用户积分订单列表 /**
* @param queryOrderByConditionsRequestVo * @param queryOrderByConditionsRequestVo
* @return * @return
* @用户积分订单列表
*/ */
BaseResponse queryOrderByConditions(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo); BaseResponse queryOrderByConditions(QueryOrderByConditionsRequestVo queryOrderByConditionsRequestVo);
...@@ -132,7 +136,7 @@ public interface Orderservice { ...@@ -132,7 +136,7 @@ public interface Orderservice {
BaseResponse mcCafeQueryOrders(McCafeQueryOrderVo queryOrderVo); BaseResponse mcCafeQueryOrders(McCafeQueryOrderVo queryOrderVo);
BaseResponse mcCafePollingPickUpCode(MaCafeQueryOrderVo vo ); BaseResponse mcCafePollingPickUpCode(MaCafeQueryOrderVo vo);
/** /**
* 通过订单号查询订单详情 * 通过订单号查询订单详情
...@@ -141,7 +145,7 @@ public interface Orderservice { ...@@ -141,7 +145,7 @@ public interface Orderservice {
* @param oid 订单ID * @param oid 订单ID
* @return * @return
*/ */
BaseResponse queryCollageOrderById(Integer operation,String sessionId, String oid, String partnerId,String channel); BaseResponse queryCollageOrderById(Integer operation, String sessionId, String oid, String partnerId, String channel);
BaseResponse timeOutOrderRefund(TimeOutOrderVo timeOutOrderVo); BaseResponse timeOutOrderRefund(TimeOutOrderVo timeOutOrderVo);
...@@ -149,6 +153,7 @@ public interface Orderservice { ...@@ -149,6 +153,7 @@ public interface Orderservice {
/** /**
* 统计当日订单数 * 统计当日订单数
*
* @param queryOrderByConditionsRequestVo * @param queryOrderByConditionsRequestVo
* @return * @return
*/ */
...@@ -156,4 +161,12 @@ public interface Orderservice { ...@@ -156,4 +161,12 @@ public interface Orderservice {
BaseResponse scoreRecord(QueryOrderVo queryOrderVo); BaseResponse scoreRecord(QueryOrderVo queryOrderVo);
/**
* 【ID1028455】 【订单】非码-腾讯有数数据上报V1.0.0
* 每天6点前上报昨天数据
*
* @param orderCountRequestVo
* @return
*/
BaseResponse<List<OrderCountResp>> selectCountOrdersByPartnerIds(OrderCountRequestVo orderCountRequestVo, String trackingNo);
} }
...@@ -81,6 +81,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum; ...@@ -81,6 +81,7 @@ import com.freemud.application.sdk.api.ordercenter.enums.ProductTypeEnum;
import com.freemud.application.sdk.api.ordercenter.request.*; import com.freemud.application.sdk.api.ordercenter.request.*;
import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq; import com.freemud.application.sdk.api.ordercenter.request.carpark.ParkingOrderCreateReq;
import com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse; import com.freemud.application.sdk.api.ordercenter.response.BaseDownLoadResponse;
import com.freemud.application.sdk.api.ordercenter.response.OrderCountResp;
import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp; import com.freemud.application.sdk.api.ordercenter.response.carpark.OrderResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp; import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp;
...@@ -1329,11 +1330,11 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1329,11 +1330,11 @@ public class OrderServiceImpl implements Orderservice {
responseVo.setRiderPhone(deliveryBaseResponse.getData().getRiderPhone()); responseVo.setRiderPhone(deliveryBaseResponse.getData().getRiderPhone());
// responseVo.setExpressType(orderBean.getExpressType()); // responseVo.setExpressType(orderBean.getExpressType());
if(orderBean.getAddInfo() != null && orderBean.getAddInfo().getDeliveryType() !=null && QueryDeliveryType.THIRD.getCode().equals(orderBean.getAddInfo().getDeliveryType()) if (orderBean.getAddInfo() != null && orderBean.getAddInfo().getDeliveryType() != null && QueryDeliveryType.THIRD.getCode().equals(orderBean.getAddInfo().getDeliveryType())
&& (DeliveryStatus.DELIVERYERROR.getCode() == orderBean.getAddInfo().getDeliverStatus() || DeliveryStatus.DELIVERYCANCEL.getCode() == orderBean.getAddInfo().getDeliverStatus()) && (DeliveryStatus.DELIVERYERROR.getCode() == orderBean.getAddInfo().getDeliverStatus() || DeliveryStatus.DELIVERYCANCEL.getCode() == orderBean.getAddInfo().getDeliverStatus())
){ ) {
responseVo.setDeliveryType(QueryDeliveryType.SELF.getCode()); responseVo.setDeliveryType(QueryDeliveryType.SELF.getCode());
}else{ } else {
responseVo.setDeliveryType(orderBean.getAddInfo() == null ? "" : orderBean.getAddInfo().getDeliveryType()); responseVo.setDeliveryType(orderBean.getAddInfo() == null ? "" : orderBean.getAddInfo().getDeliveryType());
} }
...@@ -1412,13 +1413,13 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1412,13 +1413,13 @@ public class OrderServiceImpl implements Orderservice {
List<String> skuIds = queryOrderResponseVo.getProducts().stream().map(p -> p.getPid()).collect(Collectors.toList()); List<String> skuIds = queryOrderResponseVo.getProducts().stream().map(p -> p.getPid()).collect(Collectors.toList());
if (hlsPartnerId != null && hlsPartnerId.contains(partnerId)) { if (hlsPartnerId != null && hlsPartnerId.contains(partnerId)) {
// 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入 // 华莱士获取支付有理促销数据时须将套餐商品内固定搭配、可选搭配商品的skuId一同传入
queryOrderResponseVo.getProducts().forEach(productVo -> { queryOrderResponseVo.getProducts().forEach(productVo -> {
if (CollectionUtils.isNotEmpty(productVo.getSetMealProducts())) { if (CollectionUtils.isNotEmpty(productVo.getSetMealProducts())) {
productVo.getSetMealProducts().forEach(setMealProduct -> { productVo.getSetMealProducts().forEach(setMealProduct -> {
skuIds.add(setMealProduct.getPid()); skuIds.add(setMealProduct.getPid());
}); });
} }
}); });
} }
payGitRequestDto.setSkuIds(skuIds); payGitRequestDto.setSkuIds(skuIds);
...@@ -3240,7 +3241,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -3240,7 +3241,7 @@ public class OrderServiceImpl implements Orderservice {
//混合支付项 //混合支付项
if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem())) { if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem())) {
orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem()); orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem());
if(orderPayResponse.getPayItem().size()==2){ if (orderPayResponse.getPayItem().size() == 2) {
orderEditRequest.setPayChannel(PayChannelType.COMB.getEbcode()); orderEditRequest.setPayChannel(PayChannelType.COMB.getEbcode());
orderEditRequest.setPayChannelName(PayChannelType.COMB.getName()); orderEditRequest.setPayChannelName(PayChannelType.COMB.getName());
orderEditRequest.setPayChannelType(PayChannelType.COMB.getIndex()); orderEditRequest.setPayChannelType(PayChannelType.COMB.getIndex());
...@@ -4076,7 +4077,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4076,7 +4077,7 @@ public class OrderServiceImpl implements Orderservice {
} }
@Override @Override
public BaseResponse scoreRecord(QueryOrderVo queryOrderVo){ public BaseResponse scoreRecord(QueryOrderVo queryOrderVo) {
AssortmentCustomerInfoVo userLoginInfoDto = customerInfoManager.getCustomerInfoByObject(queryOrderVo.getSessionId()); AssortmentCustomerInfoVo userLoginInfoDto = customerInfoManager.getCustomerInfoByObject(queryOrderVo.getSessionId());
if (userLoginInfoDto == null || StringUtils.isBlank(userLoginInfoDto.getMemberId())) { if (userLoginInfoDto == null || StringUtils.isBlank(userLoginInfoDto.getMemberId())) {
return ResponseUtil.error(ResponseResult.NOT_LOGIN); return ResponseUtil.error(ResponseResult.NOT_LOGIN);
...@@ -4087,7 +4088,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4087,7 +4088,7 @@ public class OrderServiceImpl implements Orderservice {
Date now = new Date(); Date now = new Date();
startDate = DateUtil.addMonths(now, -6); startDate = DateUtil.addMonths(now, -6);
endDate = DateUtil.addDays(now, 1); endDate = DateUtil.addDays(now, 1);
}else{ } else {
String startDateStr = queryOrderVo.getStartDate() + " 00:00:00"; String startDateStr = queryOrderVo.getStartDate() + " 00:00:00";
String endDateStr = queryOrderVo.getEndDate() + " 23:59:59"; String endDateStr = queryOrderVo.getEndDate() + " 23:59:59";
startDate = DateUtil.convert2Date(startDateStr, "yyyy-MM-dd HH:mm:ss"); startDate = DateUtil.convert2Date(startDateStr, "yyyy-MM-dd HH:mm:ss");
...@@ -4115,21 +4116,39 @@ public class OrderServiceImpl implements Orderservice { ...@@ -4115,21 +4116,39 @@ public class OrderServiceImpl implements Orderservice {
List<ScoreRecordVo> result = new ArrayList<>(); List<ScoreRecordVo> result = new ArrayList<>();
if (null == response || null == response.getResult()) { if (null == response || null == response.getResult()) {
return ResponseUtil.success(result); return ResponseUtil.success(result);
} }
List<OrderInfoReqs> list = response.getResult(); List<OrderInfoReqs> list = response.getResult();
list.forEach(order->{ list.forEach(order -> {
ScoreRecordVo responseVo = new ScoreRecordVo(); ScoreRecordVo responseVo = new ScoreRecordVo();
responseVo.setOrderCode(order.getOrderCode()); responseVo.setOrderCode(order.getOrderCode());
if (order.getCreateTime() != null) { if (order.getCreateTime() != null) {
responseVo.setCreateTime(Long.parseLong(order.getCreateTime())); responseVo.setCreateTime(Long.parseLong(order.getCreateTime()));
} }
if(CollectionUtils.isNotEmpty(order.getOrderItemList())){ if (CollectionUtils.isNotEmpty(order.getOrderItemList())) {
responseVo.setProductName(order.getOrderItemList().get(0).getProductName()); responseVo.setProductName(order.getOrderItemList().get(0).getProductName());
responseVo.setProductQuantity(order.getOrderItemList().get(0).getProductQuantity()); responseVo.setProductQuantity(order.getOrderItemList().get(0).getProductQuantity());
} }
result.add(responseVo); result.add(responseVo);
}); });
return ResponseUtil.success(result); return ResponseUtil.success(result);
}
@Override
public BaseResponse<List<OrderCountResp>> selectCountOrdersByPartnerIds(OrderCountRequestVo orderCountRequestVo, String trackingNo) {
OrderCountReqs orderCountReqs = new OrderCountReqs();
BeanUtil.convertBean(orderCountRequestVo, orderCountReqs);
com.freemud.application.sdk.api.ordercenter.response.BaseResponse<List<OrderCountResp>> result = orderSdkService.countOrdersByPartnerIds(orderCountReqs, trackingNo);
if (Objects.isNull(result)) {
return new BaseResponse(ResponseResultEnum.SYSTEM_ERROR.getCode(), ResponseResultEnum.SYSTEM_ERROR.getMessage(), "", null);
}
if (!ResponseResultEnum.SUCCESS.getCode().equalsIgnoreCase(result.getCode()) || Objects.isNull(result.getResult())) {
return new BaseResponse(result.getCode(), result.getMessage(), "", null);
}
return ResponseUtil.success(result.getResult());
} }
} }
package cn.freemud.service.thirdparty;
import cn.freemud.entities.dto.delivery.GetFilterPartnerResponse;
import cn.freemud.base.entity.BaseResponse;
import com.freemud.application.sdk.api.ordercenter.response.OrderCountResp;
import com.freemud.application.sdk.api.ordercenter.response.OrderGetPartnerRequest;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:03
* @description :
*/
@FeignClient(name = "MICRO-OPENPLATFORM")
@RequestMapping(consumes = MediaType.APPLICATION_JSON_UTF8_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public interface MicroOpenplatformClient {
/**
* 上报微信 有数 统计数据
*
* @param orderCounts
* @return
*/
@PostMapping("/thirdApp/order/addOrderSum")
BaseResponse addOrderSum(@RequestBody List<OrderCountResp> orderCounts);
/**
* 获取需要 上报腾讯有数的 商户号
*
* @return
*/
@PostMapping("/thirdApp/getFilterPartner")
BaseResponse<GetFilterPartnerResponse> getFilterPartner(@RequestBody OrderGetPartnerRequest request);
}
package cn.freemud.xxljob;
import cn.freemud.base.entity.BaseResponse;
import cn.freemud.entities.dto.delivery.GetFilterPartnerResponse;
import cn.freemud.entities.dto.delivery.PartnerFilterResponse;
import cn.freemud.entities.vo.OrderCountRequestVo;
import cn.freemud.service.Orderservice;
import cn.freemud.service.thirdparty.MicroOpenplatformClient;
import com.freemud.application.sdk.api.constant.ResponseResultEnum;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.ordercenter.request.OrderCountReqs;
import com.freemud.application.sdk.api.ordercenter.response.OrderCountResp;
import com.freemud.application.sdk.api.ordercenter.response.OrderGetPartnerRequest;
import com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant;
import com.xxl.job.core.biz.model.ReturnT;
import com.xxl.job.core.handler.IJobHandler;
import com.xxl.job.core.handler.annotation.JobHandler;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.List;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:27
* @description :
*/
@Component
@JobHandler("orderCountJobHandler")
@Log4j2
public class OrderCountJobHandler extends IJobHandler {
@Autowired
private Orderservice orderservice;
@Autowired
private MicroOpenplatformClient microOpenplatformClient;
/**
* 【ID1028455】 【订单】非码-腾讯有数数据上报V1.0.0
* 每天6点前上报昨天数据
*
* @param param
* @return
* @throws Exception
*/
@Override
public ReturnT<String> execute(String param) throws Exception {
// 获取需要 上报的商户号
BaseResponse<GetFilterPartnerResponse> filterPartner = microOpenplatformClient.getFilterPartner(OrderGetPartnerRequest.builder().type(2).build());
String trackingNo = LogThreadLocal.getTrackingNo();
log.info("orderCountJobHandler getFilterPartner filterPartner: {} , trackingNo:{}", filterPartner, trackingNo);
if (filterPartner == null || filterPartner.getResult() == null) {
return ReturnT.SUCCESS;
}
OrderCountRequestVo orderCountRequestVo = new OrderCountRequestVo();
Set<String> partnerFilter = getPartnerFilter(filterPartner.getResult());
orderCountRequestVo.setPartnerIds(partnerFilter);
// 时间设置 前一天
setBeginAndEndTime(orderCountRequestVo);
BaseResponse<List<OrderCountResp>> result = orderservice.selectCountOrdersByPartnerIds(orderCountRequestVo, trackingNo);
log.info("orderCountJobHandler send report order count msg request:{} response:{} , trackingNo:{} ", orderCountRequestVo, result, trackingNo);
if (!ResponseResultEnum.SUCCESS.getCode().equalsIgnoreCase(result.getCode()) || Objects.isNull(result.getResult())) {
return ReturnT.SUCCESS;
}
// 每次推送 只能 50条 让生态端处理
List<OrderCountResp> orderCounts = result.getResult();
BaseResponse baseResponse = microOpenplatformClient.addOrderSum(orderCounts);
log.info("orderCountJobHandler send report order end result :{} , trackingNo:{}", baseResponse, trackingNo);
return ReturnT.SUCCESS;
}
private void setBeginAndEndTime(OrderCountRequestVo request) {
Calendar start = Calendar.getInstance();
// 取昨天时间 的 00:00:00
start.add(5, -1);
start.set(Calendar.HOUR_OF_DAY, 00);
start.set(Calendar.MINUTE, 0);
start.set(Calendar.SECOND, 0);
// 取昨天时间 的 23:59:59
Calendar end = Calendar.getInstance();
end.add(5, -1);
end.set(Calendar.HOUR_OF_DAY, 23);
end.set(Calendar.MINUTE, 59);
end.set(Calendar.SECOND, 59);
SimpleDateFormat sm = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
request.setBeginTime(start.getTime());
request.setEndTmie(end.getTime());
}
private Set<String> getPartnerFilter(GetFilterPartnerResponse data) {
if (data.getPartnerFilterVos().isEmpty()) {
return null;
}
return data.getPartnerFilterVos().stream().map(PartnerFilterResponse::getPartnerId).collect(Collectors.toSet());
}
}
...@@ -246,4 +246,9 @@ public class InterfaceAddressConstant { ...@@ -246,4 +246,9 @@ public class InterfaceAddressConstant {
*/ */
public static final String QUERY_LINEUP_ORDER = "order/v2/queryLineUpOrder"; public static final String QUERY_LINEUP_ORDER = "order/v2/queryLineUpOrder";
/**
* 查询 指定日期对应 商户号 的订单汇总数据
*/
public static final String QUERY_ORDER_COUNT_REPORT = "order/v2/orderCount";
} }
package com.freemud.application.sdk.api.ordercenter.request;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Set;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午8:48
* @description :
*/
@Data
public class OrderCountReqs {
@ApiModelProperty(value = "查询的商户集合", required = true)
Set<String> partnerIds;
@ApiModelProperty(value = "开始时间,如 2021-04-21 00:00:00", required = true)
private Date beginTime;
@ApiModelProperty(value = "结束时间,如 2021-04-21 23:59:59", required = true)
private Date endTmie;
}
package com.freemud.application.sdk.api.ordercenter.response;
import lombok.Builder;
import lombok.Data;
import java.util.Date;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/26 下午9:04
* @description :
* ref_date string Y 日期,unix时间戳,字段长度为13字节
*
* give_order_amount_sum float Y 该日期的下单金额之和
* give_order_num_sum integer Y 该日期的下单数量之和
* payment_amount_sum float Y 该日期的支付金额之和
* payed_num_sum integer Y 该日期的支付数量之和
*/
@Data
@Builder
public class OrderCountResp {
// 商户号 用于内存剔除 不需要的商户号统计
private String partnerId;
// 日期,unix时间戳,字段长度为13字节
private Date ref_date;
// 该日期的下单金额之和
private Float give_order_amount_sum;
// 该日期的下单数量之和
private Integer give_order_num_sum;
// 该日期的支付金额之和
private Float payment_amount_sum;
// 该日期的支付数量之和
private Integer payed_num_sum;
}
package com.freemud.application.sdk.api.ordercenter.response;
import lombok.Builder;
import lombok.Data;
/**
* @author : xh.Z
* @email : fisherman0510@163.com
* @Date : 2021/4/27 下午2:49
* @description :
*/
@Data
@Builder
public class OrderGetPartnerRequest {
//1,活动招商;2,腾讯有数
private Integer type;
}
...@@ -937,4 +937,10 @@ public class OrderSdkService { ...@@ -937,4 +937,10 @@ public class OrderSdkService {
return responseHandle(responseDTO); return responseHandle(responseDTO);
} }
public BaseResponse<List<OrderCountResp>> countOrdersByPartnerIds(OrderCountReqs orderCountReqs,String trackingNo) {
OrderBaseResp<List<OrderCountResp>> responseDTO = RequestThirdPartyUtils.httpJsonReqComplexNew(restTemplate, QUERY_ORDER_COUNT_REPORT,
createBaseRequest(orderCountReqs, trackingNo), new ParameterizedTypeReference<OrderBaseResp<List<OrderCountResp>>>() {
});
return responseHandle(responseDTO);
}
} }
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