Browse Source

Merge branch 'dev_jmreport' of http://git.elinkit.com.cn:7070/r/epmet-cloud into dev_jmreport

master
wangxianzhang 3 years ago
parent
commit
df7cedb2b4
  1. 1
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/dtos/JiMuResult.java
  2. 8
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/JiMuReportOpenFeignClient.java
  3. 16
      epmet-commons/epmet-commons-feignclient/src/main/java/com/epmet/commons/feignclient/feigns/fallback/JiMuReportOpenFeignClientFallback.java
  4. 7
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/page/PageData.java
  5. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java
  6. 2
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcCustomerReportDao.java
  7. 95
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcCustomerReportServiceImpl.java
  8. 3
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcCustomerReportDao.xml
  9. 3
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java

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

@ -16,4 +16,5 @@ public class JiMuResult<T> {
private String message = "";
private Integer code = 0;
private T result;
private T data;
}

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

@ -2,19 +2,17 @@ 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;
import java.util.Map;
/**
* @Author zxc
* @DateTime 2022/8/8 13:52
@ -33,6 +31,6 @@ public interface JiMuReportOpenFeignClient {
@RequestHeader MultiValueMap<String, String> headers);
@GetMapping("jmreport/show")
Result<JiMuReportResultDTO> 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);
}

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

@ -2,16 +2,11 @@ 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;
import java.util.Map;
/**
* @Author zxc
@ -22,12 +17,13 @@ public class JiMuReportOpenFeignClientFallback implements JiMuReportOpenFeignCli
@Override
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);
JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> rst = new JiMuResult<>(false, "请求失败", 200, null,null);
return rst;
}
@Override
public Result<JiMuReportResultDTO> getReport(JiMuReportFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_JM_REPORT, "getReport",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);
return rst;
}
}

7
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/page/PageData.java

@ -29,6 +29,7 @@ public class PageData<T> implements Serializable {
private List<T> list;
private int pages;
/**
* 分页
* @param list 列表数据
@ -38,4 +39,10 @@ public class PageData<T> implements Serializable {
this.list = list;
this.total = (int)total;
}
public PageData(List<T> list, long total,int pageSize) {
this.list = list;
this.total = (int)total;
this.pages = (int) Math.ceil((double)total / pageSize);
}
}

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java

@ -385,7 +385,9 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver {
item.setPurpose(HousePurposeEnums.getTypeValue(item.getPurposeKey()));
});
if (formDTO.getIsPage()) {
return new PageData<>(records == null ? new ArrayList<>() : records, pageInfo.getTotal(), formDTO.getPageSize());
}
return new PageData<>(records == null ? new ArrayList<>() : records, pageInfo.getTotal());
}

2
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcCustomerReportDao.java

@ -33,7 +33,7 @@ public interface IcCustomerReportDao extends BaseDao<IcCustomerReportEntity> {
*/
List<String> getIdsByCustomer(@Param("customerIds") List<String> customerIds,@Param("reportId") String reportId);
void delCustomerReport(@Param("customerIds") List<String> customerIds);
void delCustomerReport(@Param("customerIds") List<String> customerIds,@Param("reportId")String reportId);
void delCustomerReportFun(@Param("reportIds") List<String> reportIds);

95
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;
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;
@ -19,7 +18,6 @@ import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.redis.RedisUtils;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.EpmetRequestHolder;
import com.epmet.commons.tools.utils.HttpClientManager;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.CustomerFunctionConstant;
import com.epmet.dao.IcCustomerReportDao;
@ -44,8 +42,10 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.MultiValueMap;
import java.net.InetAddress;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@ -87,28 +87,19 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
*/
@Override
public List<ReportResultDTO> reportList() {
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);
if (!map.containsValue(true)){
if (!result.isSuccess()){
throw new EpmetException("获取所有jm报表失败");
}
Map<String,Object> map2 = (Map<String,Object>)map.get("result");
List<Map<String,Object>> map3 = (List<Map<String,Object>>) map2.get("records");
List<Map<String,Object>> records = (List<Map<String,Object>>)result.getResult().getRecords();
List<JiMuReportResultDTO> allReports = new ArrayList<>();
map3.forEach(m -> {
allReports.add(ConvertUtils.mapToEntity(m,JiMuReportResultDTO.class));
});
for (Map<String, Object> record : records) {
allReports.add(ConvertUtils.mapToEntity(record,JiMuReportResultDTO.class));
}
if (CollectionUtils.isEmpty(allReports)){
return new ArrayList<>();
}
@ -174,11 +165,13 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
}
if (formDTO.getType().equals(CustomerFunctionConstant.REPORT_EDIT)){
// 单个编辑
baseDao.delCustomerReport(Arrays.asList(formDTO.getCustomerList().get(NumConstant.ZERO).getCustomerId()));
baseDao.delCustomerReport(Arrays.asList(formDTO.getCustomerList().get(NumConstant.ZERO).getCustomerId()), formDTO.getReportId());
}else if (formDTO.getType().equals(CustomerFunctionConstant.REPORT_ADD)){
baseDao.delCustomerReport(null);
baseDao.delCustomerReport(null, formDTO.getReportId());
}
if (CollectionUtils.isNotEmpty(reportIds)){
baseDao.delCustomerReportFun(reportIds);
}
baseDao.delCustomerReportFun(reportIds);
if (CollectionUtils.isNotEmpty(formDTO.getCustomerList())){
List<IcCustomerReportEntity> entities = new ArrayList<>();
List<IcReportFunEntity> funEntities = new ArrayList<>();
@ -218,14 +211,16 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
recordIds.forEach(r -> {
JiMuReportFormDTO form = new JiMuReportFormDTO();
form.setId(r);
Result<String> url = getUrl(NumConstant.ONE, r);
log.info("模板详情"+url);
Map<String,Object> map = JSON.parseObject(url.getData(), Map.class);
if (!map.containsValue(true)){
String authorization = EpmetRequestHolder.getHeader("Authorization");
// 自定义header传递
MultiValueMap<String, String> headers = new HttpHeaders();
headers.add("token", authorization);
headers.add("Authorization", authorization);
JiMuResult<Map<String, Object>> report = jiMuReportOpenFeignClient.getReport(r,"","",headers);
if (!report.isSuccess()){
throw new EpmetException("获取jm报表详情失败:"+r);
}
Map<String,Object> map2 = (Map<String,Object>)map.get("result");
JiMuReportResultDTO data = ConvertUtils.mapToEntity(map2, JiMuReportResultDTO.class);
JiMuReportResultDTO data = ConvertUtils.mapToEntity(report.getResult(), JiMuReportResultDTO.class);
data.setReportId(data.getId());
data.setReportName(data.getName());
result.add(data);
@ -243,50 +238,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";
System.out.println(add);
}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;
}
}

3
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcCustomerReportDao.xml

@ -5,8 +5,9 @@
<delete id="delCustomerReport">
DELETE FROM ic_customer_report
WHERE REPORT_ID = #{reportId}
<if test="null != customerIds and customerIds.size() > 0">
WHERE CUSTOMER_ID IN (
AND CUSTOMER_ID IN (
<foreach collection="customerIds" item="c" separator=",">
#{c}
</foreach>

3
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java

@ -960,6 +960,9 @@ public class IcResiUserServiceImpl extends BaseServiceImpl<IcResiUserDao, IcResi
}
}
pageInfo.setList(list);
if (formDTO.getIsPage()) {
return new PageData<>(pageInfo.getList(), pageInfo.getTotal(), formDTO.getPageSize());
}
return new PageData<>(pageInfo.getList(), pageInfo.getTotal());
}

Loading…
Cancel
Save