Pārlūkot izejas kodu

完成全科与健康管理师队内签约人数获取

Sand 8 gadi atpakaļ
vecāks
revīzija
8b98841962

+ 7 - 0
src/main/java/com/yihu/wlyy/repository/doctor/DoctorAdminTeamDao.java

@ -5,6 +5,7 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param;
import java.util.List;
@ -16,5 +17,11 @@ import java.util.List;
public interface DoctorAdminTeamDao extends
        PagingAndSortingRepository<AdminTeam, Long>,
        JpaSpecificationExecutor<AdminTeam> {
    @Query("SELECT count(s) FROM SignFamily s WHERE doctor = :doctorCode AND doctorHealth IN (:patterns)")
    Integer getDoctorSignCount(@Param(value = "doctorCode") String doctorCode,
                               @Param(value = "patterns") List<String> patterns);
    @Query("SELECT count(s) FROM SignFamily s WHERE doctorHealth = :healthDoctorCode AND doctor IN (:patterns)")
    Integer getHealthDoctorSignCount(@Param(value = "healthDoctorCode") String healthDoctorCode,
                                     @Param(value = "patterns") List<String> patterns);
}

+ 0 - 8
src/main/java/com/yihu/wlyy/repository/doctor/DoctorAdminTeamMemberDao.java

@ -29,14 +29,6 @@ public interface DoctorAdminTeamMemberDao extends
            ".teamId AND m.doctorCode = d.code ORDER BY d.level")
    List<Doctor> findAllMembers(@Param(value = "teamId") long teamId);
    @Query("SELECT count(s) FROM SignFamily s WHERE doctor = :doctorCode AND doctorHealth IN (:patterns)")
    Integer getDoctorSignCount(@Param(value = "doctorCode") String doctorCode,
                               @Param(value = "patterns") List<String> patterns);
    @Query("SELECT count(s) FROM SignFamily s WHERE doctorHealth = :healthDoctorCode AND doctor IN (:patterns)")
    Integer getHealthDoctorSignCount(@Param(value = "healthDoctorCode") String healthDoctorCode,
                                     @Param(value = "patterns") List<String> patterns);
    @Query("SELECT 1 FROM AdminTeamMember WHERE teamId = :teamId AND doctorCode = :doctorCode")
    Integer isMemberExist(@Param(value = "teamId") long teamId, @Param(value = "doctorCode") String doctorCode);
}

+ 3 - 3
src/main/java/com/yihu/wlyy/service/app/team/AdminTeamService.java

@ -111,7 +111,7 @@ public class AdminTeamService extends BaseService {
                if (isHealthDoctor && partner.getLevel() == 2){
                    partners.add(partner.getCode());
                } else if (!isHealthDoctor && partner.getLevel() == 1) {
                } else if (!isHealthDoctor && partner.getLevel() == 3) {
                    partners.add(partner.getCode());
                }
            }
@ -120,9 +120,9 @@ public class AdminTeamService extends BaseService {
            if(partners.isEmpty()){
                signingCount = 0;
            } else if (isHealthDoctor){
                signingCount = memberDao.getHealthDoctorSignCount(doctor.getCode(), partners);
                signingCount = teamDao.getHealthDoctorSignCount(doctor.getCode(), partners);
            } else {
                signingCount = memberDao.getDoctorSignCount(doctor.getCode(), partners);
                signingCount = teamDao.getDoctorSignCount(doctor.getCode(), partners);
            }
            counts.put(doctor.getCode(), signingCount);

+ 1 - 1
src/main/java/com/yihu/wlyy/web/doctor/team/AdminTeamController.java

@ -177,7 +177,7 @@ public class AdminTeamController extends BaseController {
            List<Doctor> members = memberService.getMembers(teamId);
            Map<String, Integer> counts = memberService.getMemberSigningCount(members);
            return null;
            return write(200, "OK", "data", new JSONObject(counts));
        } catch (Exception e){
            error(e);
            return error(-1, e.getMessage());