Commit aee4f184 authored by fenghuazhong's avatar fenghuazhong

完善报告页面(数据库存入相关数据)

parent 50355ab1
...@@ -28,7 +28,7 @@ public interface CheckResultService extends IService<CheckResult> { ...@@ -28,7 +28,7 @@ public interface CheckResultService extends IService<CheckResult> {
List<CheckResultDto> selectDetails(String batchNo,Integer modelId); List<CheckResultDto> selectDetails(String batchNo,Integer modelId);
String select(String amosOrgCode); String select(String amosOrgCode,String userName);
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
</select> </select>
<select id="getOne" resultType="com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto"> <select id="getOne" resultType="com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto">
select batch_no,model_id from tdc_check_result where amos_org_code = #{amosOrgCode} group by model_name ORDER BY check_date desc limit 0,1; select amos_org_name,amos_org_code,batch_no,model_id from tdc_check_result where amos_org_code = #{amosOrgCode} group by model_name ORDER BY check_date desc limit 0,1;
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -6,6 +6,7 @@ import com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto; ...@@ -6,6 +6,7 @@ import com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto;
import com.yeejoin.amos.boot.module.tdc.api.dto.ModelTreeDto; import com.yeejoin.amos.boot.module.tdc.api.dto.ModelTreeDto;
import com.yeejoin.amos.boot.module.tdc.api.entity.CheckResult; import com.yeejoin.amos.boot.module.tdc.api.entity.CheckResult;
import com.yeejoin.amos.boot.module.tdc.api.service.CheckResultService; import com.yeejoin.amos.boot.module.tdc.api.service.CheckResultService;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -102,7 +103,8 @@ public class CheckResultController extends BaseController { ...@@ -102,7 +103,8 @@ public class CheckResultController extends BaseController {
@GetMapping(value = "/select") @GetMapping(value = "/select")
@ApiOperation(httpMethod = "GET", value = "result", notes = "result") @ApiOperation(httpMethod = "GET", value = "result", notes = "result")
public ResponseModel<String> select(String amosOrgCode) { public ResponseModel<String> select(String amosOrgCode) {
return ResponseHelper.buildResponse(checkResultService.select(amosOrgCode)); AgencyUserModel user = getUserInfo();
return ResponseHelper.buildResponse(checkResultService.select(amosOrgCode,user.getUserName()));
} }
......
...@@ -3,11 +3,14 @@ package com.yeejoin.amos.boot.module.tdc.biz.service.impl; ...@@ -3,11 +3,14 @@ package com.yeejoin.amos.boot.module.tdc.biz.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.mysql.cj.xdevapi.JsonArray; import com.mysql.cj.xdevapi.JsonArray;
import com.mysql.cj.xdevapi.Result;
import com.stoyanr.evictor.queue.NavigableMapEvictionQueue;
import com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto; import com.yeejoin.amos.boot.module.tdc.api.dto.CheckResultDto;
import com.yeejoin.amos.boot.module.tdc.api.dto.ModelTreeDto; import com.yeejoin.amos.boot.module.tdc.api.dto.ModelTreeDto;
import com.yeejoin.amos.boot.module.tdc.api.entity.CheckModel; import com.yeejoin.amos.boot.module.tdc.api.entity.CheckModel;
...@@ -16,12 +19,15 @@ import com.yeejoin.amos.boot.module.tdc.api.entity.CheckResult; ...@@ -16,12 +19,15 @@ import com.yeejoin.amos.boot.module.tdc.api.entity.CheckResult;
import com.yeejoin.amos.boot.module.tdc.api.entity.PowerReportFile; import com.yeejoin.amos.boot.module.tdc.api.entity.PowerReportFile;
import com.yeejoin.amos.boot.module.tdc.api.enums.WordPowerTypeEum; import com.yeejoin.amos.boot.module.tdc.api.enums.WordPowerTypeEum;
import com.yeejoin.amos.boot.module.tdc.api.feign.IdxFeignService; import com.yeejoin.amos.boot.module.tdc.api.feign.IdxFeignService;
import com.yeejoin.amos.boot.module.tdc.api.mapper.CheckReportMapper;
import com.yeejoin.amos.boot.module.tdc.api.mapper.CheckResultMapper; import com.yeejoin.amos.boot.module.tdc.api.mapper.CheckResultMapper;
import com.yeejoin.amos.boot.module.tdc.api.service.CheckReportService;
import com.yeejoin.amos.boot.module.tdc.api.service.CheckResultService; import com.yeejoin.amos.boot.module.tdc.api.service.CheckResultService;
import com.yeejoin.amos.boot.module.tdc.api.utils.WordPowerUtils; import com.yeejoin.amos.boot.module.tdc.api.utils.WordPowerUtils;
import com.yeejoin.amos.boot.module.tdc.api.vo.SubjectTreeVo; import com.yeejoin.amos.boot.module.tdc.api.vo.SubjectTreeVo;
import com.yeejoin.amos.boot.module.tdc.api.vo.TableColumnsVo; import com.yeejoin.amos.boot.module.tdc.api.vo.TableColumnsVo;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.Systemctl; import com.yeejoin.amos.feign.systemctl.Systemctl;
import org.codehaus.jettison.json.JSONString; import org.codehaus.jettison.json.JSONString;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -44,6 +50,12 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -44,6 +50,12 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
@Autowired @Autowired
IdxFeignService idxFeignService; IdxFeignService idxFeignService;
@Autowired
CheckReportService checkReportService;
@Autowired
CheckReportMapper checkReportMappere;
@Override @Override
public IPage<CheckResultDto> selectResult(int current,int size,String code) { public IPage<CheckResultDto> selectResult(int current,int size,String code) {
...@@ -66,6 +78,16 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -66,6 +78,16 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
return checkResultMapper.selectTotal(modelId, amosOrgCode); return checkResultMapper.selectTotal(modelId, amosOrgCode);
} }
@Override
public List<CheckResultDto> selectStatistion(String batchNo, String amosOrgCode) {
return checkResultMapper.selectStatistion(batchNo, amosOrgCode);
}
@Override
public List<CheckResultDto> selectDetails(String batchNo, Integer modelId) {
return checkResultMapper.selectDetails(batchNo, modelId);
}
@Override @Override
public List<ModelTreeDto> test() { public List<ModelTreeDto> test() {
...@@ -116,40 +138,16 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -116,40 +138,16 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
} }
@Override
public String select(String amosOrgCode) {
Map<String, Object> dataMap = getData(amosOrgCode);
WordPowerUtils instance = WordPowerUtils.getInstance();
String pdfUrlString = "";
File filepdf = null;
try {
filepdf = instance.getWordFileItem(dataMap, null, WordPowerTypeEum.select.getTemplateFile());
filepdf.getAbsolutePath();
MultipartFile multipartFile = new PowerReportFile("file", "file.pdf", "application/pdf", file2byte(filepdf));
FeignClientResult<Map<String, String>> result = Systemctl.fileStorageClient.updateCommonFile(multipartFile);
if (result != null) {
Iterator<String> it = result.getResult().keySet().iterator();
while (it.hasNext()) {
pdfUrlString = it.next();
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (filepdf != null) {
filepdf.delete();
}
}
return pdfUrlString;
}
/**
* 获取报告数据
* @param amosOrgCode
* @return
*/
private Map<String,Object> getData(String amosOrgCode) { private Map<String,Object> getData(String amosOrgCode) {
Map<String,Object> map = new HashMap<>(); Map<String,Object> map = new HashMap<>();
// JSONObject map=new JSONObject();
//3.统计 //获取统计表信息
ArrayList<Map<String, Object>> list = new ArrayList<>(); ArrayList<Map<String, Object>> list = new ArrayList<>();
List<CheckResultDto> selectBatch = checkResultMapper.getOne(amosOrgCode); List<CheckResultDto> selectBatch = checkResultMapper.getOne(amosOrgCode);
for(CheckResultDto checkResultDto1 : selectBatch){ for(CheckResultDto checkResultDto1 : selectBatch){
...@@ -157,28 +155,22 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -157,28 +155,22 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
for (CheckResultDto system : systemList) { for (CheckResultDto system : systemList) {
HashMap<String, Object> data = new HashMap<>(); HashMap<String, Object> data = new HashMap<>();
/*List<Map> collect = (List<Map>) indicatorConfiguration.stream().
filter(item -> item.get("code").equals(String.valueOf(system.getAmosOrgCode())));*/
map.put("station",system.getAmosOrgName()); map.put("station",system.getAmosOrgName());
data.put("modelName",system.getModelName()); data.put("modelName",system.getModelName());
System.out.println(system.getModelName()+"----------------------------------------------------------------"); System.out.println(system.getModelName()+"----------------------------------------------------------------");
data.put("allTotal",system.getAllTotal()); data.put("allTotal",system.getAllTotal());
data.put("failTotal",system.getFailTotal()); data.put("failTotal",system.getFailTotal());
list.add(data); list.add(data);
/*for(int i = 0;i<list.size();i++){
map.put(String.valueOf(i),list.get(i));
}*/
map.put("list",list); map.put("list",list);
} }
//1.站名 // 获取时间
// List<Map> indicatorConfiguration = JSONObject.parseArray(json, Map.class);
// 2.时间
String date = new SimpleDateFormat("yyyy-MM-dd ").format(Calendar.getInstance().getTime()); String date = new SimpleDateFormat("yyyy-MM-dd ").format(Calendar.getInstance().getTime());
map.put("time", date); map.put("time", date);
//4.校验明细 //获取校验明细信息
ArrayList<Map<String,Object>> list2 = new ArrayList<>(); ArrayList<Map<String,Object>> list2 = new ArrayList<>();
systemList.forEach(checkResultDto -> { systemList.forEach(checkResultDto -> {
List<CheckResultDto> systemList2 = selectDetails( checkResultDto.getBatchNo(), checkResultDto.getModelId()); List<CheckResultDto> systemList2 = selectDetails( checkResultDto.getBatchNo(), checkResultDto.getModelId());
...@@ -208,8 +200,81 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -208,8 +200,81 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
return map; return map;
} }
/**
* 调用方法获取报告的返回地址
* @param amosOrgCode
* @return
*/
public String getUrl(String amosOrgCode) {
Map<String, Object> dataMap = getData(amosOrgCode);
WordPowerUtils instance = WordPowerUtils.getInstance();
String pdfUrlString = "";
File filepdf = null;
try {
filepdf = instance.getWordFileItem(dataMap, null, WordPowerTypeEum.select.getTemplateFile());
filepdf.getAbsolutePath();
MultipartFile multipartFile = new PowerReportFile("file", "file.pdf", "application/pdf", file2byte(filepdf));
FeignClientResult<Map<String, String>> result = Systemctl.fileStorageClient.updateCommonFile(multipartFile);
if (result != null) {
Iterator<String> it = result.getResult().keySet().iterator();
while (it.hasNext()) {
pdfUrlString = it.next();
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (filepdf != null) {
filepdf.delete();
}
}
return pdfUrlString;
}
/**
* 通过amosOrgCode查询name,放入数据库
* @param amosOrgCode
* @return
*/
public String searchName(String amosOrgCode){
String name = null;
List<CheckResultDto> result = checkResultMapper.getOne(amosOrgCode);
for(CheckResultDto results : result){
name = results.getAmosOrgName();
}
return name;
}
/**
* 拿到getUrl的url存储到数据库
* @param amosOrgCode
* @return
*/
@Override
public String select(String amosOrgCode,String userName){
String url = getUrl(amosOrgCode);
CheckReport checkReport = new CheckReport();
checkReport.setReportUrl(url);
checkReport.setCreateDate(new Date());
checkReport.setAmosOrgCode(amosOrgCode);
String name = searchName(amosOrgCode);
checkReport.setAmosOrgName(name);
checkReport.setName(name.concat(""+"三维校验"));
checkReport.setCheckPeopleName(userName);
checkReportService.save(checkReport);
return null;
}
/**
* 转换成流的形式读取
* @param file
* @return
*/
private static byte[] file2byte(File file) { private static byte[] file2byte(File file) {
try { try {
FileInputStream in = new FileInputStream(file); FileInputStream in = new FileInputStream(file);
...@@ -223,14 +288,6 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult> ...@@ -223,14 +288,6 @@ public class CheckResultImpl extends ServiceImpl<CheckResultMapper, CheckResult>
} }
} }
@Override
public List<CheckResultDto> selectStatistion(String batchNo, String amosOrgCode) {
return checkResultMapper.selectStatistion(batchNo, amosOrgCode);
}
@Override
public List<CheckResultDto> selectDetails(String batchNo, Integer modelId) {
return checkResultMapper.selectDetails(batchNo, modelId);
}
} }
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