Commit 4b294ac6 authored by 周健威's avatar 周健威

修改代码

parent f07d440f
......@@ -81,7 +81,7 @@ public class GtdataController extends CommonBaseController implements UserRestIn
OutputStream out = null;
try {
Map<String, Object> result = gtDataRestClient.open(filePath);
Map<String, Object> result = gtDataRestClient.open(filePath );
byte[] content = (byte[]) result.get("file");
getResponse().setContentLength(content.length);
// response.setContentType("image/jpeg");
......
package com.upyuns.platform.rs.website.biz;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONUtil;
import com.upyuns.platform.rs.gtdata.GtDataRestClient;
import com.upyuns.platform.rs.website.dto.GainDataDTO;
import com.upyuns.platform.rs.website.entity.DataMenu;
import com.upyuns.platform.rs.website.entity.FileData;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
......@@ -12,6 +16,7 @@ import org.springframework.stereotype.Service;
import com.upyuns.platform.rs.website.entity.GainData;
import com.upyuns.platform.rs.website.mapper.GainDataMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
import java.util.Map;
......@@ -29,6 +34,9 @@ import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FA
@Service
public class GainDataBiz extends BaseBiz<GainDataMapper,GainData> {
@Autowired
DataMenuBiz dataMenuBiz;
@Value("${universal.gaindataPath}")
private String gaindataPath;
......@@ -39,6 +47,49 @@ public class GainDataBiz extends BaseBiz<GainDataMapper,GainData> {
GtDataRestClient gtDataRestClient;
public DataMenu getTopMenu(Map<Integer, DataMenu> dataMenuMap, DataMenu dataMenu){
if(dataMenu != null && dataMenu.getParentId() != null && dataMenu.getParentId() != -1) {
if(null == dataMenuMap.get(dataMenu.getParentId())) {
return dataMenu;
}else {
return getTopMenu(dataMenuMap,dataMenuMap.get(dataMenu.getParentId()));
}
}else {
return dataMenu;
}
}
public Example initExample(GainDataDTO dto) {
Example example = new Example(GainData.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("isDel", 0);
criteria.andEqualTo("status",2);
if (StringUtils.isNotBlank(dto.getMenuId())){
criteria.andEqualTo("menuId", dto.getMenuId());
}
if (StrUtil.isNotBlank(dto.getTopMenuId())){
criteria.andIn("menuId", dataMenuBiz.getIdsByTopId(Integer.valueOf(dto.getTopMenuId())));
}
if (StrUtil.isNotBlank(dto.getTime())){
criteria.andEqualTo("time", dto.getTime());
}
if (StrUtil.isNotBlank(dto.getSupplier())){
criteria.andLike("supplier", "%" + dto.getSupplier() + "%");
}
if (StrUtil.isNotBlank(dto.getName())){
criteria.andLike("name", "%" + dto.getName() + "%");
}
if (null != dto.getCrtTimeStart()){
criteria.andGreaterThanOrEqualTo("crtTime", DateUtil.beginOfDay(dto.getCrtTimeStart()));
}
if (null != dto.getCrtTimeEnd()){
criteria.andLessThanOrEqualTo("crtTime", DateUtil.endOfDay(dto.getCrtTimeEnd()));
}
return example;
}
public void dealGtdata(List<GainData> list) {
for(GainData gainData: list) {
String gtdataPath = gainData.getGtdataPath();
......@@ -66,8 +117,6 @@ public class GainDataBiz extends BaseBiz<GainDataMapper,GainData> {
}
}
//查询包含的数据是否存在
List<FileData> fileDataList = fileDataBiz.selectList(new FileData(){{
setGainId(gainData.getId());
......
package com.upyuns.platform.rs.website.controller;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.github.wxiaoqi.security.auth.client.annotation.IgnoreUserToken;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
......@@ -8,13 +10,17 @@ import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.vo.PageDataVO;
import com.upyuns.platform.rs.gtdata.GtDataRestClient;
import com.upyuns.platform.rs.gtdata.GtFileInfo;
import com.upyuns.platform.rs.website.biz.DataMenuBiz;
import com.upyuns.platform.rs.website.biz.FileDataBiz;
import com.upyuns.platform.rs.website.biz.GainDataBiz;
import com.upyuns.platform.rs.website.controller.web.GainDataController;
import com.upyuns.platform.rs.website.dto.FileDataDTo;
import com.upyuns.platform.rs.website.dto.GainDataDTO;
import com.upyuns.platform.rs.website.entity.DataMenu;
import com.upyuns.platform.rs.website.entity.FileData;
import com.upyuns.platform.rs.website.entity.GainData;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -25,13 +31,21 @@ import tk.mybatis.mapper.entity.Example;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
import static com.upyuns.platform.rs.website.controller.AdminGaindataController.GainDataAdminDTO.STATISTICSTYPE_SUPPLIER;
import static com.upyuns.platform.rs.website.controller.AdminGaindataController.GainDataAdminDTO.STATISTICSTYPE_TOPMENU;
@RestController
@RequestMapping("Gaindata")
@Slf4j
public class AdminGaindataController extends BaseController<GainDataBiz, GainData> {
@Autowired
DataMenuBiz dataMenuBiz;
@Autowired
FileDataBiz fileDataBiz;
......@@ -150,17 +164,39 @@ public class AdminGaindataController extends BaseController<GainDataBiz, GainDat
return ObjectRestResponse.succ();
}
@ApiModelProperty("统计")
@IgnoreUserToken
@RequestMapping(value = "/app/unauth/statistics",method = RequestMethod.GET)
public ObjectRestResponse<List<GainData>> statistics(GainDataAdminDTO dto) {
Example example = baseBiz.initExample(dto);
List<GainData> list = baseBiz.selectByExample(example);
List<DataMenu> dataMenuList = dataMenuBiz.selectListAll();
List<GainDataController.GainDataVO> voList = Convert.toList(GainDataController.GainDataVO.class, list);
Map<Integer, DataMenu> dataMenuMap = dataMenuList.parallelStream().collect(Collectors.toMap(DataMenu::getId, Function.identity()));
for(GainDataController.GainDataVO gainDataVO : voList) {
if(null != gainDataVO.getMenuId()) {
DataMenu topMenu = baseBiz.getTopMenu(dataMenuMap, dataMenuMap.get(gainDataVO.getMenuId()));
if(null != topMenu) {
gainDataVO.setTopMenuId(topMenu.getId());
gainDataVO.setTopMenuName(topMenu.getTitle());
}
}
}
Map<String, Long> map = CollUtil.newHashMap();
if(dto.getStatisticsType() == null || dto.getStatisticsType() == STATISTICSTYPE_SUPPLIER) {
map = list.parallelStream().filter(o -> StrUtil.isNotBlank(o.getSupplier())).collect(Collectors.groupingBy(GainData::getSupplier, Collectors.counting()));
}else if(dto.getStatisticsType() == STATISTICSTYPE_TOPMENU) {
map = voList.parallelStream().filter(o -> (null != o.getMenuId())).collect(Collectors.groupingBy(GainDataController.GainDataVO::getTopMenuName, Collectors.counting()));
}
return ObjectRestResponse.succ(map);
}
@Data
static class GainDataAdminDTO extends GainDataDTO {
public static final int STATISTICSTYPE_SUPPLIER = 1;
public static final int STATISTICSTYPE_TOPMENU = 2;
private Integer statisticsType;
}
}
......@@ -52,7 +52,7 @@ public class GainDataController extends BaseController<GainDataBiz,GainData> {
@IgnoreUserToken
@RequestMapping(value = "/app/unauth/mapAll",method = RequestMethod.GET)
public ObjectRestResponse<List<GainData>> getPageList(GainDataDTO dto) {
Example example = initExample(dto);
Example example = baseBiz.initExample(dto);
PageDataVO pageDataVO = PageDataVO.pageInfo(dto.getPage(), dto.getLimit(), ()->baseBiz.selectByExample(example));
return ObjectRestResponse.succ(pageDataVO);
......@@ -62,7 +62,7 @@ public class GainDataController extends BaseController<GainDataBiz,GainData> {
@IgnoreUserToken
@RequestMapping(value = "/app/unauth/statistics",method = RequestMethod.GET)
public ObjectRestResponse<List<GainData>> statistics(GainDataDTO dto) {
Example example = initExample(dto);
Example example = baseBiz.initExample(dto);
List<GainData> list = baseBiz.selectByExample(example);
List<DataMenu> dataMenuList = dataMenuBiz.selectListAll();
......@@ -70,7 +70,7 @@ public class GainDataController extends BaseController<GainDataBiz,GainData> {
Map<Integer, DataMenu> dataMenuMap = dataMenuList.parallelStream().collect(Collectors.toMap(DataMenu::getId, Function.identity()));
for(GainDataVO gainDataVO : voList) {
if(null != gainDataVO.getMenuId()) {
DataMenu topMenu = getTopMenu(dataMenuMap, dataMenuMap.get(gainDataVO.getMenuId()));
DataMenu topMenu = baseBiz.getTopMenu(dataMenuMap, dataMenuMap.get(gainDataVO.getMenuId()));
if(null != topMenu) {
gainDataVO.setTopMenuId(topMenu.getId());
gainDataVO.setTopMenuName(topMenu.getTitle());
......@@ -116,49 +116,6 @@ public class GainDataController extends BaseController<GainDataBiz,GainData> {
String topMenuName;
}
private DataMenu getTopMenu(Map<Integer, DataMenu> dataMenuMap, DataMenu dataMenu){
if(dataMenu != null && dataMenu.getParentId() != null && dataMenu.getParentId() != -1) {
if(null == dataMenuMap.get(dataMenu.getParentId())) {
return dataMenu;
}else {
return getTopMenu(dataMenuMap,dataMenuMap.get(dataMenu.getParentId()));
}
}else {
return dataMenu;
}
}
private Example initExample(GainDataDTO dto) {
Example example = new Example(GainData.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("isDel", 0);
criteria.andEqualTo("status",2);
if (StringUtils.isNotBlank(dto.getMenuId())){
criteria.andEqualTo("menuId", dto.getMenuId());
}
if (StrUtil.isNotBlank(dto.getTopMenuId())){
criteria.andIn("menuId", dataMenuBiz.getIdsByTopId(Integer.valueOf(dto.getTopMenuId())));
}
if (StrUtil.isNotBlank(dto.getTime())){
criteria.andEqualTo("time", dto.getTime());
}
if (StrUtil.isNotBlank(dto.getSupplier())){
criteria.andLike("supplier", "%" + dto.getSupplier() + "%");
}
if (StrUtil.isNotBlank(dto.getName())){
criteria.andLike("name", "%" + dto.getName() + "%");
}
if (null != dto.getCrtTimeStart()){
criteria.andGreaterThanOrEqualTo("crtTime", DateUtil.beginOfDay(dto.getCrtTimeStart()));
}
if (null != dto.getCrtTimeEnd()){
criteria.andLessThanOrEqualTo("crtTime", DateUtil.endOfDay(dto.getCrtTimeEnd()));
}
return example;
}
@ApiModelProperty("查询详情")
@IgnoreUserToken
@RequestMapping(value = "/app/unauth/getbyId",method = RequestMethod.GET)
......
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