Browse Source

修改报表

feature/evaluate
zxc 3 years ago
parent
commit
25b5fac2b3
  1. 4
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/JiMuReportOpenFeignClient.java
  2. 3
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/fallback/JiMuReportOpenFeignClientFallback.java
  3. 69
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcCustomerReportServiceImpl.java

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

@ -2,14 +2,12 @@ package com.epmet.commons.feignclient.feigns;
import com.epmet.commons.feignclient.dtos.JiMuPage; import com.epmet.commons.feignclient.dtos.JiMuPage;
import com.epmet.commons.feignclient.dtos.JiMuResult; 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.JiMuReportDetailResultDTO;
import com.epmet.commons.feignclient.feigns.fallback.JiMuReportOpenFeignClientFallbackFactory; import com.epmet.commons.feignclient.feigns.fallback.JiMuReportOpenFeignClientFallbackFactory;
import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.constant.ServiceConstant;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.util.MultiValueMap; import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.GetMapping; 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.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
@ -33,6 +31,6 @@ public interface JiMuReportOpenFeignClient {
@RequestHeader MultiValueMap<String, String> headers); @RequestHeader MultiValueMap<String, String> headers);
@GetMapping("jmreport/show") @GetMapping("jmreport/show")
JiMuResult<Map<String,Object>> getReport(@RequestBody JiMuReportFormDTO formDTO); JiMuResult<Map<String,Object>> getReport(@RequestParam("id") String id,@RequestParam("apiUrl") String apiUrl,@RequestParam("params") String params,@RequestHeader MultiValueMap<String, String> headers);
} }

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

@ -2,7 +2,6 @@ package com.epmet.commons.feignclient.feigns.fallback;
import com.epmet.commons.feignclient.dtos.JiMuPage; import com.epmet.commons.feignclient.dtos.JiMuPage;
import com.epmet.commons.feignclient.dtos.JiMuResult; 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.JiMuReportDetailResultDTO;
import com.epmet.commons.feignclient.feigns.JiMuReportOpenFeignClient; import com.epmet.commons.feignclient.feigns.JiMuReportOpenFeignClient;
import org.springframework.util.MultiValueMap; import org.springframework.util.MultiValueMap;
@ -23,7 +22,7 @@ public class JiMuReportOpenFeignClientFallback implements JiMuReportOpenFeignCli
} }
@Override @Override
public JiMuResult<Map<String,Object>> getReport(JiMuReportFormDTO formDTO) { public JiMuResult<Map<String,Object>> getReport(String id,String apiUrl,String params,MultiValueMap<String, String> headers) {
JiMuResult<Map<String,Object>> rst = new JiMuResult<>(false, "请求失败", 200, null,null); JiMuResult<Map<String,Object>> rst = new JiMuResult<>(false, "请求失败", 200, null,null);
return rst; return rst;
} }

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

@ -1,6 +1,5 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import com.epmet.commons.feignclient.dtos.JiMuPage; import com.epmet.commons.feignclient.dtos.JiMuPage;
@ -19,7 +18,6 @@ import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.EpmetRequestHolder; import com.epmet.commons.tools.utils.EpmetRequestHolder;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.CustomerFunctionConstant; import com.epmet.constant.CustomerFunctionConstant;
import com.epmet.dao.IcCustomerReportDao; import com.epmet.dao.IcCustomerReportDao;
@ -44,8 +42,10 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.MultiValueMap; import org.springframework.util.MultiValueMap;
import java.net.InetAddress; import java.util.ArrayList;
import java.util.*; import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -209,15 +209,16 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
recordIds.forEach(r -> { recordIds.forEach(r -> {
JiMuReportFormDTO form = new JiMuReportFormDTO(); JiMuReportFormDTO form = new JiMuReportFormDTO();
form.setId(r); form.setId(r);
JiMuResult<Map<String, Object>> report = jiMuReportOpenFeignClient.getReport(form); String authorization = EpmetRequestHolder.getHeader("Authorization");
Result<String> url = getUrl(NumConstant.ONE, r); // 自定义header传递
log.info("模板详情"+url); MultiValueMap<String, String> headers = new HttpHeaders();
Map<String,Object> map = JSON.parseObject(url.getData(), Map.class); headers.add("token", authorization);
if (!map.containsValue(true)){ headers.add("Authorization", authorization);
JiMuResult<Map<String, Object>> report = jiMuReportOpenFeignClient.getReport(r,"","",headers);
if (!report.isSuccess()){
throw new EpmetException("获取jm报表详情失败:"+r); throw new EpmetException("获取jm报表详情失败:"+r);
} }
Map<String,Object> map2 = (Map<String,Object>)map.get("result"); JiMuReportResultDTO data = ConvertUtils.mapToEntity(report.getResult(), JiMuReportResultDTO.class);
JiMuReportResultDTO data = ConvertUtils.mapToEntity(map2, JiMuReportResultDTO.class);
data.setReportId(data.getId()); data.setReportId(data.getId());
data.setReportName(data.getName()); data.setReportName(data.getName());
result.add(data); result.add(data);
@ -235,50 +236,4 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
} }
} }
/**
* Desc:
* @param type 1:代表根据ID查询2查询全部
* @author zxc
* @date 2022/8/9 10:14
*/
public Result<String> getUrl(Integer type,String id) {
String add = "";
Result<String> result;
try {
InetAddress localHost = InetAddress.getLocalHost();
// add = "http://"+localHost.getHostAddress()+":8118";
add = "http://"+"192.168.1.141"+":8118";
}catch (Exception e){
log.warn("获取url失败");
}
if (type.compareTo(NumConstant.TWO) == NumConstant.ZERO){
add = add.concat("/jmreport/excelQuery");
Map<String,Object> params = new HashMap<>(16);
params.put("pageNo",1);
params.put("pageSize",10000);
params.put("reportType","datainfo");
params.put("name","");
params.put("token", EpmetRequestHolder.getHeader("Authorization"));
Map<String,Object> headers = new HashMap<>(16);
headers.put("token", EpmetRequestHolder.getHeader("Authorization"));
headers.put("X-Access-Token", EpmetRequestHolder.getHeader("Authorization"));
headers.put("Accept", "application/json, text/plain, */*");
headers.put("Content-Type", "application/json;charset=utf-8");
result = HttpClientManager.getInstance().sendGet(add, params, headers);
}else {
add = add.concat("/jmreport/show");
Map<String,Object> params = new HashMap<>(16);
params.put("id",id);
params.put("apiUrl","");
params.put("params","");
Map<String,String> headers = new HashMap<>(16);
headers.put("token", EpmetRequestHolder.getHeader("Authorization"));
headers.put("X-Access-Token", EpmetRequestHolder.getHeader("Authorization"));
headers.put("Accept", "application/json, text/plain, */*");
headers.put("Content-Type", "application/json;charset=utf-8");
result = HttpClientManager.getInstance().sendPostByJSONAndHeader(add, JSON.toJSONString(params), headers);
}
return result;
}
} }
Loading…
Cancel
Save