Bladeren bron

满意度评价数据清洗

trick9191 7 jaren geleden
bovenliggende
commit
da7adcaabe

+ 7 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/consult/EvaluateDao.java

@ -3,6 +3,7 @@ package com.yihu.wlyy.repository.consult;
import com.yihu.wlyy.entity.consult.Evaluate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
@ -33,4 +34,10 @@ public interface EvaluateDao extends PagingAndSortingRepository<Evaluate, Long>,
     */
    List<Evaluate> findByDoctorAndType(String doctor,int type);
    /**
     * 查找所有分数为零的接口
     */
    @Query("select a from Evaluate a where a.score =0")
    List<Evaluate> findByScoreZero();
}

+ 1 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/consult/EvaluateScoreDao.java

@ -22,4 +22,5 @@ public interface EvaluateScoreDao extends PagingAndSortingRepository<EvaluateSco
     */
    List<EvaluateScore> findByConsult(String consult);
    List<EvaluateScore> findByConsultAndDoctor(String consult,String doctor);
}

+ 27 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statistics/StatisticsAllService.java

@ -1,6 +1,8 @@
package com.yihu.wlyy.service.app.statistics;
import com.yihu.wlyy.entity.address.Town;
import com.yihu.wlyy.entity.consult.Evaluate;
import com.yihu.wlyy.entity.consult.EvaluateScore;
import com.yihu.wlyy.entity.doctor.team.admin.AdminTeam;
import com.yihu.wlyy.entity.organization.Hospital;
import com.yihu.wlyy.entity.statistics.PopulationBase;
@ -8,6 +10,8 @@ import com.yihu.wlyy.entity.statistics.WlyyQuotaResult;
import com.yihu.wlyy.job.Constant;
import com.yihu.wlyy.repository.address.CityDao;
import com.yihu.wlyy.repository.address.TownDao;
import com.yihu.wlyy.repository.consult.EvaluateDao;
import com.yihu.wlyy.repository.consult.EvaluateScoreDao;
import com.yihu.wlyy.repository.doctor.DoctorAdminTeamDao;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.organization.HospitalDao;
@ -23,6 +27,7 @@ import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.text.DecimalFormat;
@ -55,6 +60,10 @@ public class StatisticsAllService extends BaseService {
    private WlyyQuotaResultDao wlyyQuotaResultDao;
    @Autowired
    private SystemDictService systemDictService;
    @Autowired
    private EvaluateDao evaluateDao;
    @Autowired
    private EvaluateScoreDao evaluateScoreDao;
    /**
     * 获取时间戳
@ -2822,4 +2831,22 @@ public class StatisticsAllService extends BaseService {
        List<PopulationBase> peopleNum = jdbcTemplate.query(sql, new BeanPropertyRowMapper(PopulationBase.class), code, year);
        return peopleNum.get(0);
    }
    @Transactional
    public int cleanDoctorScore(){
        List<Evaluate> evaluates = evaluateDao.findByScoreZero();
        if(evaluates!=null&&evaluates.size()>0){
            for(Evaluate eva : evaluates){
                List<EvaluateScore> scores =  evaluateScoreDao.findByConsultAndDoctor(eva.getConsult(),eva.getDoctor());
                if(scores!=null&&scores.size()>0){
                    EvaluateScore score = scores.get(0);
                    if(score!=null){
                        eva.setScore(score.getScore().intValue());
                        evaluateDao.save(eva);
                    }
                }
            }
        }
        return 1;
    }
}

+ 12 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/statistic/StatisticsController.java

@ -1540,4 +1540,16 @@ public class StatisticsController extends BaseController {
            return error(-1, "查询失败");
        }
    }
    @RequestMapping("/cleanDoctorScore")
    @ResponseBody
    public String cleanDoctorScore(){
        try{
            return write(200, "清洗完成", "data", statisticsAllService.cleanDoctorScore());
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
         }
    }
}