Browse Source

调通customize调用jmreport

feature/evaluate
wangxianzhang 3 years ago
parent
commit
0705950123
  1. 22
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/JiMuPage.java
  2. 19
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/JiMuResult.java
  3. 31
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/result/JiMuReportDetailResultDTO.java
  4. 14
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/JiMuReportOpenFeignClient.java
  5. 11
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/fallback/JiMuReportOpenFeignClientFallback.java
  6. 16
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcCustomerReportServiceImpl.java

22
epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/JiMuPage.java

@ -0,0 +1,22 @@
package com.epmet.commons.feignclient.dtos;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 积木报表的返回值Page对象
* @param <T>
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class JiMuPage<T> {
private int pageNo;
private int pageSize;
private int total;
private int pages;
private List<?> records;
}

19
epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/JiMuResult.java

@ -0,0 +1,19 @@
package com.epmet.commons.feignclient.dtos;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 积木报表的返回值Result对象
* @param <T>
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class JiMuResult<T> {
private boolean success = true;
private String message = "";
private Integer code = 0;
private T result;
}

31
epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/result/JiMuReportDetailResultDTO.java

@ -0,0 +1,31 @@
package com.epmet.commons.feignclient.dtos.result;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import java.util.Map;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class JiMuReportDetailResultDTO {
private String id;
private String code;
private String name;
private String note;
private String status;
private String type;
private String jsonStr;
private String apiUrl;
private String apiMethod;
private String apiCode;
private String thumb;
private Integer template;
private String createBy;
private Date createTime;
private String updateBy;
private Date updateTime;
private Map<String, Object> dataList;
}

14
epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/JiMuReportOpenFeignClient.java

@ -1,13 +1,18 @@
package com.epmet.commons.feignclient.feigns;
import com.epmet.commons.feignclient.dtos.JiMuPage;
import com.epmet.commons.feignclient.dtos.JiMuResult;
import com.epmet.commons.feignclient.dtos.form.JiMuReportFormDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportDetailResultDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportResultDTO;
import com.epmet.commons.feignclient.feigns.fallback.JiMuReportOpenFeignClientFallbackFactory;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam;
/**
@ -19,10 +24,13 @@ import org.springframework.web.bind.annotation.RequestParam;
//@FeignClient(name = ServiceConstant.EPMET_JM_REPORT, fallbackFactory = JiMuReportOpenFeignClientFallbackFactory.class, url = "localhost:8118")
public interface JiMuReportOpenFeignClient {
@GetMapping("jmreport/excelQuery")
Result<String> getList(@RequestParam("pageNo") Integer pageNo,@RequestParam("pageSize") Integer pageSize,
@GetMapping(value = "jmreport/excelQuery")
JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> getList(@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize,
@RequestParam("name") String name,
@RequestParam("reportType") String reportType,
@RequestParam("token") String token);
@RequestParam("token") String token,
@RequestHeader MultiValueMap<String, String> headers);
@GetMapping("jmreport/show")
Result<JiMuReportResultDTO> getReport(@RequestBody JiMuReportFormDTO formDTO);

11
epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/fallback/JiMuReportOpenFeignClientFallback.java

@ -1,11 +1,17 @@
package com.epmet.commons.feignclient.feigns.fallback;
import com.epmet.commons.feignclient.dtos.JiMuPage;
import com.epmet.commons.feignclient.dtos.JiMuResult;
import com.epmet.commons.feignclient.dtos.form.JiMuReportFormDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportDetailResultDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportResultDTO;
import com.epmet.commons.feignclient.feigns.JiMuReportOpenFeignClient;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @Author zxc
@ -15,8 +21,9 @@ import com.epmet.commons.tools.utils.Result;
public class JiMuReportOpenFeignClientFallback implements JiMuReportOpenFeignClient {
@Override
public Result<String> getList(Integer pageNo, Integer pageSize, String reportType, String token) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_JM_REPORT, "getList",pageNo,pageSize,reportType, token);
public JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> getList(Integer pageNo, Integer pageSize, String name, String reportType, String token, MultiValueMap<String, String> headers) {
JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> rst = new JiMuResult<>(false, "请求失败", 200, null);
return rst;
}
@Override

16
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcCustomerReportServiceImpl.java

@ -3,7 +3,10 @@ package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.epmet.commons.feignclient.dtos.JiMuPage;
import com.epmet.commons.feignclient.dtos.JiMuResult;
import com.epmet.commons.feignclient.dtos.form.JiMuReportFormDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportDetailResultDTO;
import com.epmet.commons.feignclient.dtos.result.JiMuReportResultDTO;
import com.epmet.commons.feignclient.feigns.JiMuReportOpenFeignClient;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -36,8 +39,10 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.MultiValueMap;
import java.net.InetAddress;
import java.util.*;
@ -82,7 +87,16 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
*/
@Override
public List<ReportResultDTO> reportList() {
Result<String> list = jiMuReportOpenFeignClient.getList(1,10000,"datainfo", EpmetRequestHolder.getHeader("Authorization"));
String authorization = EpmetRequestHolder.getHeader("Authorization");
// 自定义header传递
MultiValueMap<String, String> headers = new HttpHeaders();
headers.add("token", authorization);
JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> result = jiMuReportOpenFeignClient.getList(1, 10000, "", "datainfo", authorization, headers);
// todo 下面的删掉吧
Result<String> url = getUrl(2, null);
log.info("所有jm报表"+url);
Map<String,Object> map = JSON.parseObject(url.getData(), Map.class);

Loading…
Cancel
Save