|
@@ -152,6 +152,81 @@ public class StatisticServiceImpl implements StatisticService {
|
|
|
return list;
|
|
return list;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public Map<String,Object> getTrainingDashBoardByDfx(String dept, String types, String dates) {
|
|
|
|
|
+ Map<String,Object> map = new HashMap<>();
|
|
|
|
|
+ String dateCondition = "";String year = "";
|
|
|
|
|
+ // 在岗人员培训统计情况
|
|
|
|
|
+ if (dates.contains("-")){
|
|
|
|
|
+ year = dates.substring(0,4);
|
|
|
|
|
+ }else {
|
|
|
|
|
+ // 年
|
|
|
|
|
+ year =dates;
|
|
|
|
|
+ }
|
|
|
|
|
+ // 年度外部培训统计
|
|
|
|
|
+ List<Map<String, Object>> list = getExternalTrainByYear(getYearMonth(),dept,year);
|
|
|
|
|
+ map.put("yearList",list);
|
|
|
|
|
+ // 年度外部培训类别占比
|
|
|
|
|
+ ExternalTrainDTO externalTrainDTO = getExternalType(dept,year);
|
|
|
|
|
+ map.put("externalType",externalTrainDTO);
|
|
|
|
|
+ return map;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public ExternalTrainDTO getExternalType(String dept,String year){
|
|
|
|
|
+ ExternalTrainDTO externalTrainDTO = new ExternalTrainDTO();
|
|
|
|
|
+ externalTrainDTO.setRemark("本年度岗前培训类别占比");
|
|
|
|
|
+ List<ExternalTrainTypeDTO> rateDtoList = new ArrayList<>();
|
|
|
|
|
+ String sql = "select pei_xun_hui_yi_le,count(pei_xun_hui_yi_le)as nums from t_lhpxsqb where " +
|
|
|
|
|
+ " shi_fou_guo_shen_='已完成' %s group by pei_xun_hui_yi_le";
|
|
|
|
|
+ String talSql = "SELECT count(*) AS total FROM t_lhpxsqb WHERE shi_fou_guo_shen_ = '已完成' %s ";
|
|
|
|
|
+ String dateCondition = String.format(" AND di_dian_ = '%s' ", getDiDian());
|
|
|
|
|
+ if (BeanUtils.isNotEmpty(dept)){
|
|
|
|
|
+ dateCondition += String.format(" AND bian_zhi_bu_men_ = '%s' ", dept);
|
|
|
|
|
+ }
|
|
|
|
|
+ dateCondition += String.format(" AND DATE_FORMAT(pei_xun_kai_shi_s,'%%Y')='%s' ", year);
|
|
|
|
|
+ sql = String.format(sql,dateCondition);
|
|
|
|
|
+ talSql = String.format(talSql,dateCondition);
|
|
|
|
|
+ List<Map<String,Object>> list = (List<Map<String, Object>>) commonDao.query(sql);
|
|
|
|
|
+ Map<String,Object> sumMap = commonDao.queryOne(talSql);
|
|
|
|
|
+ int total = Integer.parseInt(sumMap==null?"0":sumMap.get("total").toString());
|
|
|
|
|
+ externalTrainDTO.setTotal(total);
|
|
|
|
|
+ if (BeanUtils.isNotEmpty(list)){
|
|
|
|
|
+ for (Map<String,Object> map : list){
|
|
|
|
|
+ ExternalTrainTypeDTO rateDto = new ExternalTrainTypeDTO();
|
|
|
|
|
+ String nums = map.get("nums").toString();
|
|
|
|
|
+ rateDto.setTypeName(map.get("pei_xun_hui_yi_le").toString());
|
|
|
|
|
+ rateDto.setTypeNum(nums);
|
|
|
|
|
+ rateDto.setRate(getRate(total,Integer.parseInt(nums)));
|
|
|
|
|
+ rateDtoList.add(rateDto);
|
|
|
|
|
+ }
|
|
|
|
|
+ externalTrainDTO.setNdwbpxTypeList(rateDtoList);
|
|
|
|
|
+ }
|
|
|
|
|
+ return externalTrainDTO;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ public List<Map<String, Object>> getExternalTrainByYear(List<String> dateStr, String dept,String year) {
|
|
|
|
|
+ String baseSql = "SELECT count(*) AS total from t_lhpxsqb WHERE shi_fou_guo_shen_='已完成' and di_dian_='%s'";
|
|
|
|
|
+ baseSql = String.format(baseSql,getDiDian());
|
|
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
|
|
+ for (String date : dateStr) {
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
|
+ map.put("date", date + "月");
|
|
|
|
|
+ String formattedDate = year + "-" + (Integer.parseInt(date) < 10 ? "0" + date : date);
|
|
|
|
|
+ StringBuilder queryBuilder = new StringBuilder(baseSql)
|
|
|
|
|
+ .append("AND DATE_FORMAT(pei_xun_kai_shi_s, '%Y-%m') = '").append(formattedDate).append("' ");
|
|
|
|
|
+ if (BeanUtils.isNotEmpty(dept)) {
|
|
|
|
|
+ queryBuilder.append("AND bian_zhi_bu_men_ = '").append(dept).append("' ");
|
|
|
|
|
+ }
|
|
|
|
|
+ String countSql = queryBuilder.toString();
|
|
|
|
|
+ Map<String, Object> countResult = commonDao.queryOne(countSql);
|
|
|
|
|
+ map.put("num", Integer.parseInt(countResult==null?"0":countResult.get("total").toString()));
|
|
|
|
|
+ list.add(map);
|
|
|
|
|
+ }
|
|
|
|
|
+ return list;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public List<EquipmentDashBoardDTO> getEquipmentDashBoard() {
|
|
public List<EquipmentDashBoardDTO> getEquipmentDashBoard() {
|
|
|
List<EquipmentDashBoardDTO> list = new ArrayList<>();
|
|
List<EquipmentDashBoardDTO> list = new ArrayList<>();
|