Commit 7c369f43 by wqc

接入大屏数据

parent 5a3e139e
package com.zq.datacollect.controller; package com.zq.datacollect.controller;
import com.zq.common.vo.ResultVo; import com.zq.common.vo.ResultVo;
import com.zq.datacollect.entity.DataCollectSetting; import com.zq.datacollect.service.BigScreenService;
import com.zq.datacollect.service.DataCollecSiteService; import com.zq.datacollect.service.DataCollecSiteService;
import com.zq.datacollect.vo.DataCollectSiteAddReq;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
...@@ -17,22 +16,44 @@ public class BigScreenController { ...@@ -17,22 +16,44 @@ public class BigScreenController {
@Resource @Resource
private DataCollecSiteService dataCollecSiteService; private DataCollecSiteService dataCollecSiteService;
@Resource
private BigScreenService bigScreenService;
@ApiOperation("根据汇聚数据列表") @ApiOperation("根据汇聚数据列表")
@GetMapping(value = "/getCollectList") @GetMapping(value = "/getCollectList")
public ResultVo getCollectList() { public ResultVo getCollectList() {
return ResultVo.success(dataCollecSiteService.getCollectList()); return ResultVo.success(bigScreenService.getCollectList());
} }
@ApiOperation("获取特殊数据统计") @ApiOperation("获取检察院数据统计")
@GetMapping(value = "/getAllCount") @GetMapping(value = "/getAllCount")
public ResultVo getAllCount() { public ResultVo getAllCount() {
return ResultVo.success(dataCollecSiteService.getAllCount()); return ResultVo.success(bigScreenService.getAllCount());
} }
@ApiOperation("获取模型类型数据统计")
@GetMapping(value = "/getModelTypeCount")
public ResultVo getModelTypeCount() {
return ResultVo.success(bigScreenService.getModelTypeCount());
}
@ApiOperation("获取模型地区数据统计")
@GetMapping(value = "/getModelCityCount")
public ResultVo getModelCityCount() {
return ResultVo.success(bigScreenService.getModelCityCount());
}
@ApiOperation("获取业务类型数据统计")
@GetMapping(value = "/getYwuType")
public ResultVo getYwuType() {
return ResultVo.success(bigScreenService.getYwuType());
}
@ApiOperation("获取线索数据统计")
@GetMapping(value = "/getCluesNum")
public ResultVo getCluesNum() {
return ResultVo.success(bigScreenService.getCluesNum());
}
} }
package com.zq.datacollect.service; package com.zq.datacollect.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zq.datacollect.entity.DataCollectSetting; import com.zq.datacollect.entity.DataCollectSetting;
import com.zq.datacollect.entity.QueryDb;
import com.zq.datacollect.holder.DatabaseHolder;
import com.zq.datacollect.mapper.DataCollectMapper; import com.zq.datacollect.mapper.DataCollectMapper;
import com.zq.datacollect.mapper.QueryDbMapper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
@Slf4j
@Service
@RequiredArgsConstructor
public class BigScreenService { public class BigScreenService {
@Resource @Resource
private DataCollectMapper dataCollectMapper; private DataCollectMapper dataCollectMapper;
@Resource
private QueryDbMapper queryDbMapper;
public Object getModelTypeCount() {
List<DataCollectSetting> collectList = getCollectList();
Integer toDbId = null;
for (DataCollectSetting list : collectList) {
toDbId = list.getToDbId();
}
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(toDbId);
List<Map<String, Object>> mapList = jdbcTemplate.queryForList("SELECT mx.`建设进度` as jsjd, COUNT(1) as typeCount FROM qsdsjfljdmxsjmx mx GROUP BY mx.`建设进度`");
return mapList;
}
public Object getModelCityCount() {
List<DataCollectSetting> collectList = getCollectList();
Integer toDbId = null;
for (DataCollectSetting list : collectList) {
toDbId = list.getToDbId();
}
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(toDbId);
List<Map<String, Object>> cityArea = jdbcTemplate.queryForList("SELECT id,diqu FROM city_area");
ArrayList<Object> objects = new ArrayList<>();
for (Map<String, Object> city : cityArea) {
String diqu = city.get("diqu").toString();
String id = city.get("id").toString();
Map<String, Object> dataMap = new HashMap<>();
List<Map<String, Object>> mapLists = jdbcTemplate.queryForList("SELECT mx.`部门` as dept,mx.`模型名称` as modelName,mx.业务条线 as caseType FROM qsdsjfljdmxsjmx mx WHERE mx.`部门` like CONCAT('%','" + diqu + "','%') ");
dataMap.put("id",id);
dataMap.put("numCount", mapLists.size());
dataMap.put("cityName", mapLists);
objects.add(dataMap);
}
return objects;
}
public List<DataCollectSetting> getCollectList() {
List<QueryDb> datasource = queryDbMapper.selectList(new QueryWrapper<>());
List<DataCollectSetting> collectSettings =null;
for (QueryDb ds : datasource) {
if (ds.getDbName().contains("data_collect")) {
collectSettings = dataCollectMapper.selectList(new LambdaQueryWrapper<DataCollectSetting>().eq(DataCollectSetting::getToDbId, ds.getId()));
}
}
return collectSettings;
}
public Object getAllCount() {
List<Object> objects = new ArrayList<>();
List<DataCollectSetting> collectList = getCollectList();
for (DataCollectSetting list : collectList) {
Map<String, Object> dataMap = new HashMap<>();
String toTable = list.getToTable();
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(list.getToDbId());
List<Map<String, Object>> mapList = jdbcTemplate.queryForList("SELECT count(1) as dataCount FROM " + toTable);
String dataCount = null;
for (Map<String, Object> map : mapList) {
dataCount = map.get("dataCount").toString();
}
dataMap.put("dataType", list.getDataType());
dataMap.put("TaskName", list.getTaskName());
dataMap.put("dataCount", dataCount);
objects.add(dataMap);
}
return objects;
}
public Object getYwuType() {
List<DataCollectSetting> collectList = getCollectList();
Integer toDbId = null;
for (DataCollectSetting list : collectList) {
toDbId = list.getToDbId();
}
List<String> ywuList = getYwuList();
List<Object> dataList = new ArrayList<>();
for (String data:ywuList) {
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(toDbId);
List<Map<String, Object>> mapList = jdbcTemplate.queryForList("SELECT mx.业务条线 as caseType,COUNT(1) as numsCount FROM qsdsjfljdmxsjmx mx WHERE mx.业务条线 like CONCAT('%','" + data + "','%') GROUP BY caseType");
HashMap<String, Object> dataMap = new HashMap<>();
BigDecimal addNums =BigDecimal.ZERO;
for (Map<String, Object> map:mapList) {
BigDecimal numsCount = new BigDecimal(map.get("numsCount").toString());
addNums=addNums.add(numsCount);
}
dataMap.put("caseType",data);
dataMap.put("numsCount",addNums);
dataList.add(dataMap);
}
return dataList;
}
public Object getCluesNum() {
List<DataCollectSetting> collectList = getCollectList();
Integer toDbId = null;
for (DataCollectSetting list : collectList) {
toDbId = list.getToDbId();
}
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(toDbId);
List<Map<String, Object>> cityArea = jdbcTemplate.queryForList("SELECT id,diqu FROM city_area");
List<Object> objects = new ArrayList<>();
for (Map<String, Object> city : cityArea) {
String diqu = city.get("diqu").toString();
String id = city.get("id").toString();
Map<String, Object> dataMap = new HashMap<>();
if (diqu.contains("市院")) {
List<Map<String, Object>> mapList = jdbcTemplate.queryForList("SELECT '市院' as dept ,SUM(mx.筛查出线索数) as screenNums,SUM(mx.符合监督线索数) as clueNums FROM qsdsjfljdmxsjmx mx WHERE mx.`部门` like CONCAT('市院','%')");
dataMap.put("cityNums", mapList);
} else {
List<Map<String, Object>> mapLists = jdbcTemplate.queryForList("SELECT mx.`部门` as dept,SUM(mx.筛查出线索数) as screenNums,SUM(mx.符合监督线索数) as clueNums FROM qsdsjfljdmxsjmx mx WHERE mx.`部门` like CONCAT('%','" + diqu + "','%') GROUP BY dept");
dataMap.put("cityNums", mapLists);
}
dataMap.put("id", id);
objects.add(dataMap);
}
return objects;
}
public List<String> getYwuList(){
List<String> list = new ArrayList<>();
list.add("公益诉讼检察");
list.add("未成年人检察");
list.add("刑事检察");
list.add("刑事执行");
list.add("行政检察");
list.add("行政执行");
list.add("控告申诉检察");
return list;
}
} }
package com.zq.datacollect.service; package com.zq.datacollect.service;
import com.zq.datacollect.entity.DataCollectSetting;
import com.zq.datacollect.entity.DataCollectSettingSite; import com.zq.datacollect.entity.DataCollectSettingSite;
import com.zq.datacollect.vo.DataCollectSettingAddReq;
import com.zq.datacollect.vo.DataCollectSiteAddReq; import com.zq.datacollect.vo.DataCollectSiteAddReq;
import java.util.List;
public interface DataCollecSiteService { public interface DataCollecSiteService {
...@@ -15,7 +12,4 @@ public interface DataCollecSiteService { ...@@ -15,7 +12,4 @@ public interface DataCollecSiteService {
void update(DataCollectSiteAddReq dataCollectSiteAddReq); void update(DataCollectSiteAddReq dataCollectSiteAddReq);
List<DataCollectSetting> getCollectList();
Object getAllCount();
} }
package com.zq.datacollect.service.impl; package com.zq.datacollect.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zq.common.utils.AssertUtils; import com.zq.common.utils.AssertUtils;
import com.zq.datacollect.entity.DataCollectSetting; import com.zq.datacollect.entity.DataCollectSetting;
import com.zq.datacollect.entity.DataCollectSettingSite; import com.zq.datacollect.entity.DataCollectSettingSite;
import com.zq.datacollect.holder.DatabaseHolder;
import com.zq.datacollect.mapper.DataCollectMapper; import com.zq.datacollect.mapper.DataCollectMapper;
import com.zq.datacollect.mapper.DataCollectSettingSiteMapper; import com.zq.datacollect.mapper.DataCollectSettingSiteMapper;
import com.zq.datacollect.service.DataCollecSiteService; import com.zq.datacollect.service.DataCollecSiteService;
import com.zq.datacollect.vo.DataCollectSiteAddReq; import com.zq.datacollect.vo.DataCollectSiteAddReq;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service @Service
public class DataCollecSiteServiceImpl extends ServiceImpl<DataCollectSettingSiteMapper, DataCollectSettingSite> implements DataCollecSiteService { public class DataCollecSiteServiceImpl extends ServiceImpl<DataCollectSettingSiteMapper, DataCollectSettingSite> implements DataCollecSiteService {
...@@ -49,32 +42,5 @@ public class DataCollecSiteServiceImpl extends ServiceImpl<DataCollectSettingSit ...@@ -49,32 +42,5 @@ public class DataCollecSiteServiceImpl extends ServiceImpl<DataCollectSettingSit
AssertUtils.isTrue(dataCollectMapper.updateById(dataCollectSiteAddReq.getDataCollectSetting()) == 1, "修改失败"); AssertUtils.isTrue(dataCollectMapper.updateById(dataCollectSiteAddReq.getDataCollectSetting()) == 1, "修改失败");
} }
@Override
public List<DataCollectSetting> getCollectList() {
List<DataCollectSetting> collectSettings = dataCollectMapper.selectList(new LambdaQueryWrapper<DataCollectSetting>().eq(DataCollectSetting::getToDbId, 27));
return collectSettings;
}
@Override
public Object getAllCount() {
List<DataCollectSetting> collectList = getCollectList();
List<Object> objects = new ArrayList<>();
// for (int i = 0; i < collectList.size(); i++) {
Map<String, Object> dataMap = new HashMap<>();
for (DataCollectSetting list : collectList) {
String toTable = list.getToTable();
JdbcTemplate jdbcTemplate = DatabaseHolder.getJdbcTemplate(list.getToDbId());
List<Map<String, Object>> mapList = jdbcTemplate.queryForList("SELECT count(1) as dataCount FROM " + toTable);
String dataCount = null;
for (Map<String, Object> map : mapList) {
dataCount = map.get("dataCount").toString();
}
dataMap.put("dataType", list.getDataType());
dataMap.put("TaskName", list.getTaskName());
dataMap.put("dataCount", dataCount);
}
objects.add(dataMap);
// }
return objects;
}
} }
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