| | |
| | | import com.smartor.common.ScheduleSubtaskBuilder; |
| | | import com.smartor.config.PhoneUtils; |
| | | import com.smartor.domain.DTO.MydTrendReqDTO; |
| | | import com.smartor.domain.DTO.MzMydScoreRankDTO; |
| | | import com.smartor.domain.DTO.QuestionCountKsOrBqDTO; |
| | | import com.smartor.domain.DTO.ServiceSubtaskDetailDTO; |
| | | import com.smartor.domain.*; |
| | |
| | | |
| | | return result; |
| | | } |
| | | |
| | | /** |
| | | * 门诊满意度综合得分排名(按科室或病区) |
| | | * <p> |
| | | * 综合满意度 = Σ(评分明细权重) / 评分明细条数 × 100%, |
| | | * 权重只取 1、0.8、0.6、0.4、0.2 五档(很满意、满意、一般、不满意、很不满意)。 |
| | | * |
| | | * @param mzMydScoreRankVO 查询条件 |
| | | * @return 排名结果,名次从 1 开始顺序编号 |
| | | */ |
| | | @Override |
| | | public List<MzMydScoreRankDTO> mzMydScoreRank(MzMydScoreRankVO mzMydScoreRankVO) { |
| | | if (StringUtils.isEmpty(mzMydScoreRankVO.getDimensionType())) { |
| | | mzMydScoreRankVO.setDimensionType("1"); |
| | | } |
| | | if (StringUtils.isEmpty(mzMydScoreRankVO.getServiceType())) { |
| | | mzMydScoreRankVO.setServiceType("14"); |
| | | } |
| | | List<MzMydScoreRankDTO> list = serviceSubtaskMapper.selectMzMydScoreRank(mzMydScoreRankVO); |
| | | if (CollectionUtils.isEmpty(list)) { |
| | | return new ArrayList<>(); |
| | | } |
| | | // 名次:SQL 已按综合得分降序返回,这里顺序编号 |
| | | for (int i = 0; i < list.size(); i++) { |
| | | list.get(i).setRank(i + 1); |
| | | } |
| | | return list; |
| | | } |
| | | } |