/**
* 获得门诊部迟到最多的前10个科室
* @return
*/
public String getDepartmentCount(){
List<OutpDoctorLoginRecVO> list = getOutpDoctorLoginRec();
Map<String, Integer> resultMap1 = new TreeMap<String, Integer>();
if(list!=null){
for(OutpDoctorLoginRecVO vo: list){
if(vo.getAttendanceType()==3){
if(resultMap1.containsKey(vo.getLoginDept())){
Integer value = resultMap1.get(vo.getLoginDept());
if(value==null){
value=0;
}
resultMap1.put(vo.getLoginDept(), value+1);
}else{
resultMap1.put(vo.getLoginDept(), 1);
}
}
}
}
//开始
List<Map.Entry<String, Integer>> infoIds = new ArrayList<Map.Entry<String, Integer>>(
resultMap1.entrySet());
Collections.sort(infoIds, new Comparator<Map.Entry<String, Integer>>() {
public int compare(Map.Entry<String, Integer> o1,
Map.Entry<String, Integer> o2) {
return (o2.getValue() - o1.getValue());
}
});
//结束
StringBuffer sb = new StringBuffer();
sb.append("{");
if(infoIds!=null){
int size = infoIds.size();
if(infoIds.size()>10){
size = 10;
}
for(int i=0;i<infoIds.size();i++){
Map.Entry<String, Integer> entry = infoIds.get(i);
if(i<infoIds.size()-1){
sb.append("\""+entry.getKey()+"\":"+entry.getValue()+",");
}
else{
sb.append("\""+entry.getKey()+"\":"+entry.getValue());
}
}
}
sb.append("}");
return sb.toString();
}