项目库-项目详情-参数收集统计-前端接收数据结构修改
This commit is contained in:
+1
-1
@@ -44,7 +44,7 @@ public class ProjectDetailsStatisticsCollectManifestController {
|
|||||||
@GetMapping(value = "/getProjectDetailsStatisticsCollectManifestData")
|
@GetMapping(value = "/getProjectDetailsStatisticsCollectManifestData")
|
||||||
public Result<?> getProjectDetailsStatisticsCollectManifestData(@RequestParam(name="paramsManifestId",required=true) String paramsManifestId,
|
public Result<?> getProjectDetailsStatisticsCollectManifestData(@RequestParam(name="paramsManifestId",required=true) String paramsManifestId,
|
||||||
@RequestParam(name="cut",required=true) String cut) {
|
@RequestParam(name="cut",required=true) String cut) {
|
||||||
List<Map<String, Object>> data = paramsManifestEOService.getStatisticsForProjectDetails(paramsManifestId, cut);
|
Map<String, Object> data = paramsManifestEOService.getStatisticsForProjectDetails(paramsManifestId, cut);
|
||||||
return Result.OK(data);
|
return Result.OK(data);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -86,5 +86,5 @@ public interface IParamsManifestEOService extends IService<ParamsManifestEO> {
|
|||||||
|
|
||||||
List<Map<String, String>> labelListForProjectDetails(String projectId);
|
List<Map<String, String>> labelListForProjectDetails(String projectId);
|
||||||
|
|
||||||
List<Map<String, Object>> getStatisticsForProjectDetails(String paramsManifestId, String cut);
|
Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut);
|
||||||
}
|
}
|
||||||
|
|||||||
+34
-34
@@ -15,7 +15,6 @@ import com.jero.modules.cert.collect.entity.ParamsConfigEO;
|
|||||||
import com.jero.modules.cert.collect.entity.ParamsManifestEO;
|
import com.jero.modules.cert.collect.entity.ParamsManifestEO;
|
||||||
import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum;
|
import com.jero.modules.cert.collect.enums.CollectManifestChangeFlagEnum;
|
||||||
import com.jero.modules.cert.collect.enums.CollectManifestStateEnum;
|
import com.jero.modules.cert.collect.enums.CollectManifestStateEnum;
|
||||||
import com.jero.modules.cert.collect.enums.CollectManifestStatisticsStateEnum;
|
|
||||||
import com.jero.modules.cert.collect.enums.ManifestStateEnum;
|
import com.jero.modules.cert.collect.enums.ManifestStateEnum;
|
||||||
import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper;
|
import com.jero.modules.cert.collect.mapper.ParamsCollectManifestEOMapper;
|
||||||
import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper;
|
import com.jero.modules.cert.collect.mapper.ParamsConfigEOMapper;
|
||||||
@@ -637,10 +636,17 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<Map<String, Object>> getStatisticsForProjectDetails(String paramsManifestId, String cut) {
|
public Map<String, Object> getStatisticsForProjectDetails(String paramsManifestId, String cut) {
|
||||||
// 查询所有责任领域
|
// 查询所有责任领域
|
||||||
List<DictModel> dutyTerritoryDictList = sysDictMapper.queryDictItemsByCode("duty_territory");
|
List<DictModel> dutyTerritoryDictList = sysDictMapper.queryDictItemsByCode("duty_territory");
|
||||||
|
|
||||||
|
Map<String, Object> result = new LinkedHashMap<>();
|
||||||
|
List<String> dutyTerritoryNameList = new LinkedList<>();
|
||||||
|
List<Map<String, Object>> notStartList = new LinkedList<>();
|
||||||
|
List<Map<String, Object>> collectingList = new LinkedList<>();
|
||||||
|
List<Map<String, Object>> submitList = new LinkedList<>();
|
||||||
|
List<Map<String, Object>> syncReportList = new LinkedList<>();
|
||||||
|
|
||||||
// 统计清单参数
|
// 统计清单参数
|
||||||
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
|
ParamsCollectManifestEO paramsCollectManifestEO = new ParamsCollectManifestEO();
|
||||||
paramsCollectManifestEO.setParamsManifestId(paramsManifestId);
|
paramsCollectManifestEO.setParamsManifestId(paramsManifestId);
|
||||||
@@ -648,9 +654,16 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
|
|
||||||
double total = listAll.size();
|
double total = listAll.size();
|
||||||
|
|
||||||
if (total > 0) {
|
|
||||||
List<Map<String, Object>> result = new LinkedList<>();
|
|
||||||
dutyTerritoryDictList.forEach(item->{
|
dutyTerritoryDictList.forEach(item->{
|
||||||
|
|
||||||
|
if (CutEnum.EN.getValue().equals(cut)) {
|
||||||
|
dutyTerritoryNameList.add(item.getTextEn());
|
||||||
|
|
||||||
|
} else {
|
||||||
|
dutyTerritoryNameList.add(item.getText());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
// 计算数量
|
// 计算数量
|
||||||
double notStartNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.get("state"))
|
double notStartNumber = listAll.stream().filter(e -> (CollectManifestStateEnum.WAIT_COLLECT.getValue().equals(e.get("state"))
|
||||||
|| CollectManifestStateEnum.SDT_BACK.getValue().equals(e.get("state"))
|
|| CollectManifestStateEnum.SDT_BACK.getValue().equals(e.get("state"))
|
||||||
@@ -675,41 +688,28 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
String submitPercent = getRatio(submitNumber, total); // 已提交的参数项 百分比
|
String submitPercent = getRatio(submitNumber, total); // 已提交的参数项 百分比
|
||||||
String syncReportPercent = getRatio(syncReportNumber, total); // 已同步上报库的参数项 百分比
|
String syncReportPercent = getRatio(syncReportNumber, total); // 已同步上报库的参数项 百分比
|
||||||
|
|
||||||
|
|
||||||
Map<String, Object> map = new HashMap<>();
|
|
||||||
// 组装数据 返回前端
|
// 组装数据 返回前端
|
||||||
List<Map<String, Object>> data = new LinkedList<>();
|
getData(notStartList, notStartNumber, notStartPercent);
|
||||||
getData(data, cut, CollectManifestStatisticsStateEnum.NOT_START, notStartNumber, notStartPercent);
|
getData(collectingList, collectingNumber, collectingPercent);
|
||||||
getData(data, cut, CollectManifestStatisticsStateEnum.COLLECTING, collectingNumber, collectingPercent);
|
getData(submitList, submitNumber, submitPercent);
|
||||||
getData(data, cut, CollectManifestStatisticsStateEnum.SUBMIT, submitNumber, submitPercent);
|
getData(syncReportList, syncReportNumber, syncReportPercent);
|
||||||
getData(data, cut, CollectManifestStatisticsStateEnum.SYNC_REPORT, syncReportNumber, syncReportPercent);
|
|
||||||
|
|
||||||
if (CutEnum.EN.getValue().equals(cut)) {
|
|
||||||
map.put(item.getTextEn(), data);
|
|
||||||
} else {
|
|
||||||
map.put(item.getText(), data);
|
|
||||||
}
|
|
||||||
|
|
||||||
result.add(map);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
result.put("dutyTerritory", dutyTerritoryNameList);
|
||||||
|
result.put("notStart", notStartList);
|
||||||
|
result.put("collecting", collectingList);
|
||||||
|
result.put("submit", submitList);
|
||||||
|
result.put("syncReport", syncReportList);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
private void getData(List<Map<String, Object>> data, double quantity, String percentage) {
|
||||||
}
|
Map<String, Object> map = new HashMap<>();
|
||||||
|
map.put("quantity", quantity);
|
||||||
private void getData(List<Map<String, Object>> data, String cut, CollectManifestStatisticsStateEnum statisticsStateEnum, double quantity, String percentage) {
|
map.put("percentage", percentage);
|
||||||
|
data.add(map);
|
||||||
Map<String, Object> notStartMap = new HashMap<>();
|
|
||||||
if (CutEnum.EN.getValue().equals(cut)) {
|
|
||||||
notStartMap.put("name", statisticsStateEnum.getEnName());
|
|
||||||
} else {
|
|
||||||
notStartMap.put("name", statisticsStateEnum.getName());
|
|
||||||
}
|
|
||||||
notStartMap.put("type", statisticsStateEnum.getValue());
|
|
||||||
notStartMap.put("quantity", quantity);
|
|
||||||
notStartMap.put("percentage", percentage);
|
|
||||||
data.add(notStartMap);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -720,7 +720,7 @@ public class ParamsManifestEOServiceImpl extends ServiceImpl<ParamsManifestEOMap
|
|||||||
*/
|
*/
|
||||||
private String getRatio(Double d1, Double d2) {
|
private String getRatio(Double d1, Double d2) {
|
||||||
if (d1 == null || d2 == null || d2 <= 0) {
|
if (d1 == null || d2 == null || d2 <= 0) {
|
||||||
return "0%";
|
return "0.00%";
|
||||||
}
|
}
|
||||||
NumberFormat percent = NumberFormat.getPercentInstance();
|
NumberFormat percent = NumberFormat.getPercentInstance();
|
||||||
percent.setMaximumFractionDigits(2);
|
percent.setMaximumFractionDigits(2);
|
||||||
|
|||||||
Reference in New Issue
Block a user