|
@@ -260,6 +260,10 @@ public class StatisticServiceImpl implements StatisticService {
|
|
|
// 各部门设备检定/校准完成情况
|
|
// 各部门设备检定/校准完成情况
|
|
|
equipDTO.setVerificationData(getVerificationData());
|
|
equipDTO.setVerificationData(getVerificationData());
|
|
|
|
|
|
|
|
|
|
+ // 各部门设备期间核查完成情况
|
|
|
|
|
+ equipDTO.setIntermediateData(getPeriodicVerification());
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
// 所有设备维修次数
|
|
// 所有设备维修次数
|
|
|
equipDTO.setScrapData(getEquipScrapList());
|
|
equipDTO.setScrapData(getEquipScrapList());
|
|
|
|
|
|
|
@@ -301,13 +305,13 @@ public class StatisticServiceImpl implements StatisticService {
|
|
|
private List<EquipCalibrationByPositionDTO> getVerificationData(){
|
|
private List<EquipCalibrationByPositionDTO> getVerificationData(){
|
|
|
String planSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
String planSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
|
"FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
"FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
|
- "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_mjsbjdxzjhzb WHERE parent_id_!='' and parent_id_ is not null " +
|
|
|
|
|
|
|
+ "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_xzjlb WHERE ji_hua_zhu_biao_i <> '' and ji_hua_zhu_biao_i is not null " +
|
|
|
"AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
"AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
|
|
|
|
|
|
String finishSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
String finishSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
|
"FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
"FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
|
- "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_mjsbjdxzjhzb " +
|
|
|
|
|
- "WHERE shi_fou_guo_shen_ = '已完成' and parent_id_!='' and parent_id_ is not null " +
|
|
|
|
|
|
|
+ "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_xzjlb " +
|
|
|
|
|
+ "WHERE shi_fou_guo_shen_ = '已完成' and ji_hua_zhu_biao_i <> '' and ji_hua_zhu_biao_i is not null " +
|
|
|
"AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
"AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
|
|
|
|
|
|
planSql = String.format(planSql,getDiDian(),getDiDian());
|
|
planSql = String.format(planSql,getDiDian(),getDiDian());
|
|
@@ -345,6 +349,55 @@ public class StatisticServiceImpl implements StatisticService {
|
|
|
return mergedList;
|
|
return mergedList;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ private List<EquipIntermediateDTO> getPeriodicVerification(){
|
|
|
|
|
+ String planSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
|
|
|
+ "FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
|
|
|
+ "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_yqsbqjhcjlb WHERE ji_hua_zhu_biao_i <> '' and ji_hua_zhu_biao_i is not null " +
|
|
|
|
|
+ "AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
|
|
|
+
|
|
|
|
|
+ String finishSql = "SELECT p.name_,p.id_,p.depth_,COALESCE(q.assets, 0) AS assets " +
|
|
|
|
|
+ "FROM (SELECT name_,id_,depth_ FROM ibps_party_entity WHERE path_ LIKE '%%%s%%' AND depth_ >= 3) p " +
|
|
|
|
|
+ "LEFT JOIN (SELECT bian_zhi_bu_men_,COUNT(*) AS assets FROM t_yqsbqjhcjlb " +
|
|
|
|
|
+ "WHERE shi_fou_guo_shen_ = '已完成' and ji_hua_zhu_biao_i <> '' and ji_hua_zhu_biao_i is not null " +
|
|
|
|
|
+ "AND di_dian_ = '%s' GROUP BY bian_zhi_bu_men_) q ON p.id_ = q.bian_zhi_bu_men_ ORDER BY p.id_";
|
|
|
|
|
+
|
|
|
|
|
+ planSql = String.format(planSql,getDiDian(),getDiDian());
|
|
|
|
|
+ finishSql = String.format(finishSql,getDiDian(),getDiDian());
|
|
|
|
|
+ String sumPlanSql = "SELECT SUM(s.assets) as total from (%s) s";
|
|
|
|
|
+ String sumFinishSql = "SELECT SUM(s.assets) as total from (%s) s";
|
|
|
|
|
+ int planTotal = Integer.parseInt(commonDao.queryOne(String.format(sumPlanSql,planSql)).get("total").toString());
|
|
|
|
|
+ int finishTotal = Integer.parseInt(commonDao.queryOne(String.format(sumFinishSql,finishSql)).get("total").toString());
|
|
|
|
|
+ List<Map<String, Object>> planList = (List<Map<String, Object>>) commonDao.query(planSql);
|
|
|
|
|
+ List<Map<String, Object>> finishList = (List<Map<String, Object>>) commonDao.query(finishSql);
|
|
|
|
|
+ Map<String, EquipIntermediateDTO> mergedMap = new HashMap<>();
|
|
|
|
|
+ for (Map<String, Object> entry : finishList) {
|
|
|
|
|
+ String org = (String) entry.get("name_");
|
|
|
|
|
+ int count = ((Number) entry.get("assets")).intValue();
|
|
|
|
|
+ EquipIntermediateDTO dto = mergedMap.getOrDefault(org, new EquipIntermediateDTO());
|
|
|
|
|
+ dto.setOrg(org);
|
|
|
|
|
+ dto.setNumW(count);
|
|
|
|
|
+ if ("3".equals(entry.get("depth_").toString())){
|
|
|
|
|
+ dto.setNumW(finishTotal);
|
|
|
|
|
+ }
|
|
|
|
|
+ mergedMap.put(org, dto);
|
|
|
|
|
+ }
|
|
|
|
|
+ for (Map<String, Object> entry : planList) {
|
|
|
|
|
+ String org = (String) entry.get("name_");
|
|
|
|
|
+ int count = ((Number) entry.get("assets")).intValue();
|
|
|
|
|
+ EquipIntermediateDTO dto = mergedMap.getOrDefault(org, new EquipIntermediateDTO());
|
|
|
|
|
+ dto.setOrg(org);
|
|
|
|
|
+ dto.setNumJ(count);
|
|
|
|
|
+ if ("3".equals(entry.get("depth_").toString())){
|
|
|
|
|
+ dto.setNumJ(planTotal);
|
|
|
|
|
+ }
|
|
|
|
|
+ mergedMap.put(org, dto);
|
|
|
|
|
+ }
|
|
|
|
|
+ List<EquipIntermediateDTO> mergedList = new ArrayList<>(mergedMap.values());
|
|
|
|
|
+ return mergedList;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
private List<EquipMaintenanceDTO> getEquipMaintenanceByDept(){
|
|
private List<EquipMaintenanceDTO> getEquipMaintenanceByDept(){
|
|
|
String sql = "SELECT p.name_,p.id_,p.depth_,COUNT(q.bian_zhi_bu_men_) AS value \n" +
|
|
String sql = "SELECT p.name_,p.id_,p.depth_,COUNT(q.bian_zhi_bu_men_) AS value \n" +
|
|
|
"FROM ibps_party_entity p LEFT JOIN t_mjsbwhbyjlby q ON p.id_ = q.bian_zhi_bu_men_\n" +
|
|
"FROM ibps_party_entity p LEFT JOIN t_mjsbwhbyjlby q ON p.id_ = q.bian_zhi_bu_men_\n" +
|