Commit 11491e2b by 墨竹

feat:请求数据组参数和返参

parent 42cd5437
package com.gic.haoban.manage.api.dto.statistics;
import com.gic.api.base.commons.Constant;
import org.apache.commons.collections.CollectionUtils;
import java.io.Serializable;
import java.util.List;
/**
* @author BaiShan
* @since 2022-01-06 14:15
*/
public class StatisticsDTO<T> implements Serializable {
private static final long serialVersionUID = -1988630310497970760L;
private List<T> data;
private Boolean success;
private Integer errorCode;
private String errorInfo;
private StatisticsPage page;
private Integer space;
public T getOne() {
if (CollectionUtils.isEmpty(data)) {
return null;
}
return data.get(Constant.NUMBER_0);
}
public void setData(List<T> data) {
this.data = data;
}
public List<T> getData() {
return data;
}
public Boolean getSuccess() {
return success;
}
public void setSuccess(Boolean success) {
this.success = success;
}
public Integer getErrorCode() {
return errorCode;
}
public void setErrorCode(Integer errorCode) {
this.errorCode = errorCode;
}
public String getErrorInfo() {
return errorInfo;
}
public void setErrorInfo(String errorInfo) {
this.errorInfo = errorInfo;
}
public StatisticsPage getPage() {
return page;
}
public void setPage(StatisticsPage page) {
this.page = page;
}
public Integer getSpace() {
return space;
}
public void setSpace(Integer space) {
this.space = space;
}
@Override
public String toString() {
return "StatisticsDTO{" +
"data=" + data +
", success=" + success +
", errorCode=" + errorCode +
", errorInfo='" + errorInfo + '\'' +
", page=" + page +
", space=" + space +
'}';
}
}
package com.gic.haoban.manage.api.dto.statistics;
import java.io.Serializable;
/**
* Auto-generated: 2022-01-06 14:14:52
*
* @author json.cn (i@json.cn)
*/
public class StatisticsPage implements Serializable {
private static final long serialVersionUID = 782947970893704488L;
private int totalPage;
private int pageSize;
private int totalCount;
private int currentPage;
@Override
public String toString() {
return "StatisticsPage{" +
"totalPage=" + totalPage +
", pageSize=" + pageSize +
", totalCount=" + totalCount +
", currentPage=" + currentPage +
'}';
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getTotalPage() {
return totalPage;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getPageSize() {
return pageSize;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
}
public int getTotalCount() {
return totalCount;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public int getCurrentPage() {
return currentPage;
}
}
\ No newline at end of file
package com.gic.haoban.manage.api.dto.statistics;
import java.io.Serializable;
/**
* 描述: StatisticsPageDTO
*
* @author yujie
* @date 2021/12/29 20:33
*/
public class StatisticsPageDTO implements Serializable {
private static final long serialVersionUID = 7915429898054727383L;
/**
* 页码
*/
private Integer pageNo;
/**
* 每页数量
*/
private Integer pageSize;
/**
* 查询条件
*/
public Object inFields;
public Integer getPageNo() {
return pageNo;
}
public void setPageNo(Integer pageNo) {
this.pageNo = pageNo;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
public Object getInFields() {
return inFields;
}
public void setInFields(Object inFields) {
this.inFields = inFields;
}
public void intPageParameterDefault() {
this.pageNo = 1;
this.pageSize = 10;
}
public void intPageParameterOne() {
this.pageNo = 1;
this.pageSize = 1;
}
public void intPageParameterMaxSize() {
this.pageNo = 1;
this.pageSize = Integer.MAX_VALUE;
}
@Override
public String toString() {
return "StatisticsPageDTO{" +
"pageNo=" + pageNo +
", pageSize=" + pageSize +
", inFields=" + inFields +
'}';
}
}
package com.gic.haoban.manage.service.service.out.impl.hm;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Random;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.BasePageInfo;
......@@ -47,6 +35,17 @@ import com.gic.member.api.service.MemberService;
import com.gic.wechat.api.dto.qywx.welcome.QywxExternalcontactDTO;
import com.gic.wechat.api.dto.qywx.welcome.QywxExternalcontactResultDTO;
import com.gic.wechat.api.service.qywx.QywxUserApiService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Random;
@Service("hmLinkApiService")
public class HmLinkApiServiceImpl implements HmLinkApiService {
......@@ -306,8 +305,8 @@ public class HmLinkApiServiceImpl implements HmLinkApiService {
paramsDTO.setExpiresIn(60L * 60);
paramsDTO.setUser(Arrays.asList(hm.getWxUserId()));
QywxExternalcontactResultDTO dto = qywxUserApiService.addContactWay(corpid, config.getWxSuiteid(), paramsDTO);
log.info("创建动态活码参数={},返回={}", corpid, JSON.toJSONString(paramsDTO), JSON.toJSONString(dto));
if (null != dto) {
log.info("创建动态活码参数corpid:{},param={},返回={}", corpid, JSON.toJSONString(paramsDTO), JSON.toJSONString(dto));
if (null != dto && "0".equals(dto.getErrcode())) {
retDTO.setHmQrcode(retDTO.getHmQrcode());
}
}
......
package com.gic.haoban.manage.service.util;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.ctrip.framework.apollo.Config;
import com.ctrip.framework.apollo.ConfigService;
import com.gic.haoban.manage.api.dto.statistics.StatisticsDTO;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 描述: DataHttpUtil
*
* @author yujie
* @date 2021/12/29 17:57
*/
public class DataHttpUtil {
private final static Logger logger = LoggerFactory.getLogger(DataHttpUtil.class);
public static StatisticsDTO post(String apolloKey, Object body) {
Config config = ConfigService.getConfig("COMMON.data-api-config");
String value = config.getProperty(apolloKey, "");
if (StringUtils.isBlank(value)) {
throw new RuntimeException("配置有误!");
}
String[] split = value.split(StatisticsApolloKeyConstant.INTERVAL);
String url = split[0];
String token = split[1];
HttpRequest request = HttpUtil.createPost(url);
request.body(JSON.toJSONString(body));
// milliseconds – 超时毫秒数
request.timeout(10000);
request.header("API-TOKEN", token);
logger.info("当前请求: {}", JSON.toJSONString(request, true));
logger.info("当前请求参数: {}", JSON.toJSONString(body, true));
HttpResponse execute = request.execute();
String responseBody = execute.body();
logger.info("当前请求结果 : {}", JSONUtil.formatJsonStr(responseBody));
StatisticsDTO responseBodyDTO = JSON.parseObject(responseBody, StatisticsDTO.class);
if (!execute.isOk() || !responseBodyDTO.getSuccess()) {
logger.error("请求数据组失败:{}", responseBody);
}
return responseBodyDTO;
}
}
\ No newline at end of file
package com.gic.haoban.manage.service.util;
/**
* 描述: 数据组 api
* http://10.0.1.11:7070/config.html#/appid=data-api-config&env=DEV&cluster=default
* value: 为访问地址 ++++ token
* 案例:http://110.42.144.153:81/api/gateway/data_mkt_mvp_activityStatistics++++E488193652356772E42EAE28425914B2
*
* @author yujie
* @date 2021/12/29 16:24
*/
public interface StatisticsApolloKeyConstant {
String INTERVAL = "\\+\\+\\+\\+";
/**
* API 描述:好办活码列表
*/
String data_haoban_hm_list = "data_haoban_hm_list";
/**
* API 描述:活码数据概览
*/
String data_haoban_hm_overview = "data_haoban_hm_overview";
/**
* 活码趋势图(天)
*/
String data_haoban_hm_trend_d = "data_haoban_hm_trend_d";
/**
* 活码趋势图(月)
*/
String data_haoban_hm_trend_m = "data_haoban_hm_trend_m";
/**
* 单人活码明细
*/
String data_haoban_hm_single_detail = "data_haoban_hm_single_detail";
/**
* 多人活码列表
*/
String data_haoban_hm_many_detail = "data_haoban_hm_many_detail";
}
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