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 String message = "";
private Integer code = 0; private Integer code = 0;
private T result; 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.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.dtos.result.JiMuReportResultDTO;
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 com.epmet.commons.tools.utils.Result;
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;
import java.util.Map;
/** /**
* @Author zxc * @Author zxc
* @DateTime 2022/8/8 13:52 * @DateTime 2022/8/8 13:52
@ -33,6 +31,6 @@ public interface JiMuReportOpenFeignClient {
@RequestHeader MultiValueMap<String, String> headers); @RequestHeader MultiValueMap<String, String> headers);
@GetMapping("jmreport/show") @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.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.dtos.result.JiMuReportResultDTO;
import com.epmet.commons.feignclient.feigns.JiMuReportOpenFeignClient; 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.util.MultiValueMap;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestParam; import java.util.Map;
/** /**
* @Author zxc * @Author zxc
@ -22,12 +17,13 @@ public class JiMuReportOpenFeignClientFallback implements JiMuReportOpenFeignCli
@Override @Override
public JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> getList(Integer pageNo, Integer pageSize, String name, String reportType, String token, MultiValueMap<String, String> headers) { 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; return rst;
} }
@Override @Override
public Result<JiMuReportResultDTO> getReport(JiMuReportFormDTO formDTO) { public JiMuResult<Map<String,Object>> getReport(String id,String apiUrl,String params,MultiValueMap<String, String> headers) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_JM_REPORT, "getReport",formDTO); 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 List<T> list;
private int pages;
/** /**
* 分页 * 分页
* @param list 列表数据 * @param list 列表数据
@ -38,4 +39,10 @@ public class PageData<T> implements Serializable {
this.list = list; this.list = list;
this.total = (int)total; 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())); 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()); 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); 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); 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; 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;
/** /**
@ -87,28 +87,19 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
*/ */
@Override @Override
public List<ReportResultDTO> reportList() { public List<ReportResultDTO> reportList() {
String authorization = EpmetRequestHolder.getHeader("Authorization"); String authorization = EpmetRequestHolder.getHeader("Authorization");
// 自定义header传递 // 自定义header传递
MultiValueMap<String, String> headers = new HttpHeaders(); MultiValueMap<String, String> headers = new HttpHeaders();
headers.add("token", authorization); headers.add("token", authorization);
JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> result = jiMuReportOpenFeignClient.getList(1, 10000, "", "datainfo", authorization, headers); JiMuResult<JiMuPage<JiMuReportDetailResultDTO>> result = jiMuReportOpenFeignClient.getList(1, 10000, "", "datainfo", authorization, headers);
if (!result.isSuccess()){
// 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)){
throw new EpmetException("获取所有jm报表失败"); throw new EpmetException("获取所有jm报表失败");
} }
Map<String,Object> map2 = (Map<String,Object>)map.get("result"); List<Map<String,Object>> records = (List<Map<String,Object>>)result.getResult().getRecords();
List<Map<String,Object>> map3 = (List<Map<String,Object>>) map2.get("records");
List<JiMuReportResultDTO> allReports = new ArrayList<>(); List<JiMuReportResultDTO> allReports = new ArrayList<>();
map3.forEach(m -> { for (Map<String, Object> record : records) {
allReports.add(ConvertUtils.mapToEntity(m,JiMuReportResultDTO.class)); allReports.add(ConvertUtils.mapToEntity(record,JiMuReportResultDTO.class));
}); }
if (CollectionUtils.isEmpty(allReports)){ if (CollectionUtils.isEmpty(allReports)){
return new ArrayList<>(); return new ArrayList<>();
} }
@ -174,11 +165,13 @@ public class IcCustomerReportServiceImpl extends BaseServiceImpl<IcCustomerRepor
} }
if (formDTO.getType().equals(CustomerFunctionConstant.REPORT_EDIT)){ 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)){ }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())){ if (CollectionUtils.isNotEmpty(formDTO.getCustomerList())){
List<IcCustomerReportEntity> entities = new ArrayList<>(); List<IcCustomerReportEntity> entities = new ArrayList<>();
List<IcReportFunEntity> funEntities = new ArrayList<>(); List<IcReportFunEntity> funEntities = new ArrayList<>();
@ -218,14 +211,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);
Result<String> url = getUrl(NumConstant.ONE, r); String authorization = EpmetRequestHolder.getHeader("Authorization");
log.info("模板详情"+url); // 自定义header传递
Map<String,Object> map = JSON.parseObject(url.getData(), Map.class); MultiValueMap<String, String> headers = new HttpHeaders();
if (!map.containsValue(true)){ 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); 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);
@ -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 id="delCustomerReport">
DELETE FROM ic_customer_report DELETE FROM ic_customer_report
WHERE REPORT_ID = #{reportId}
<if test="null != customerIds and customerIds.size() > 0"> <if test="null != customerIds and customerIds.size() > 0">
WHERE CUSTOMER_ID IN ( AND CUSTOMER_ID IN (
<foreach collection="customerIds" item="c" separator=","> <foreach collection="customerIds" item="c" separator=",">
#{c} #{c}
</foreach> </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); pageInfo.setList(list);
if (formDTO.getIsPage()) {
return new PageData<>(pageInfo.getList(), pageInfo.getTotal(), formDTO.getPageSize());
}
return new PageData<>(pageInfo.getList(), pageInfo.getTotal()); return new PageData<>(pageInfo.getList(), pageInfo.getTotal());
} }

Loading…
Cancel
Save