chenweida %!s(int64=8) %!d(string=hai) anos
pai
achega
748969f547

+ 9 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/doctor/profile/Doctor.java

@ -61,6 +61,7 @@ public class Doctor extends IdEntity {
	private String idcard;          //身份证号
	private Integer isFamous;       //是否是名医 1是  0或者空不是
	private String isPasswordPrompt;// 是否提示密码信息 1是 0或者空是否
	private String isHelp;//是否求助
	public Doctor() {}
@ -351,6 +352,14 @@ public class Doctor extends IdEntity {
    public boolean isHealthDoctor(){
        return level == 3;
    }
	@Transient
	public String getIsHelp() {
		return isHelp;
	}
	public void setIsHelp(String isHelp) {
		this.isHelp = isHelp;
	}
	@Column(name = "is_password_prompt")
	public String getIsPasswordPrompt() {

+ 4 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/doctor/DoctorTeamMemberDao.java

@ -1,5 +1,6 @@
package com.yihu.wlyy.repository.doctor;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeamMember;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
@ -61,4 +62,7 @@ public interface DoctorTeamMemberDao extends PagingAndSortingRepository<DoctorTe
    @Query("SELECT case when count(a) > 0 THEN true else false END FROM DoctorTeamMember a WHERE a.signType = 1 AND a" +
            ".memberCode = :memberCode")
    Boolean isSanShiSigning(@Param("memberCode") String doctorCode);
    @Query("select d FROM DoctorTeamMember a,Doctor d WHERE a.memberCode=d.code  and  a.del='1'and  a.type=1 and a.team in ( select b.team from DoctorTeamMember b where b.memberCode= ?1 and b.del='1' and b.type=2) ")
    List<Doctor> getTeamZKByQK(String qkCode);
}

+ 22 - 5
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/team/DrHealthTeamService.java

@ -6,12 +6,10 @@
package com.yihu.wlyy.service.app.team;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.team.admin.AdminTeam;
import com.yihu.wlyy.entity.doctor.team.sign.DoctorPatient;
import com.yihu.wlyy.entity.doctor.team.sign.DoctorTeam;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.doctor.DoctorPatientDao;
import com.yihu.wlyy.repository.doctor.DoctorTeamDao;
import com.yihu.wlyy.repository.doctor.DoctorTeamMemberDao;
import com.yihu.wlyy.repository.doctor.*;
import com.yihu.wlyy.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
@ -19,6 +17,7 @@ import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -40,7 +39,8 @@ public class DrHealthTeamService extends BaseService {
    private DoctorTeamMemberDao doctorTeamMemberDao;
    @Autowired
    private DoctorDao doctorDao;
    @Autowired
    DoctorAdminTeamMemberDao memberDao;
    /**
     * 查询签约团队的其他医生
     *
@ -256,4 +256,21 @@ public class DrHealthTeamService extends BaseService {
            return null;
        }
    }
    public Map<String,List<Doctor>> getTeamDoctorsAndAdminTeamDoctors(String doctorCode,Long teamId) {
        Map<String,List<Doctor>> returnMap=new HashMap<>();
        //得到责任医生
        List<Doctor> zrDoctors=  doctorTeamMemberDao.getTeamZKByQK(doctorCode);
        for(Doctor doctor:zrDoctors){
            //判断是否求助
        }
        //得到医生所在的团队的除了自己的所有人
        List<Doctor> teamDoctors= memberDao.findAllHeathExcludeThis(teamId, doctorCode);
        for(Doctor doctor:teamDoctors){
            //判断是否求助
        }
        returnMap.put("zr",zrDoctors);
        returnMap.put("team",teamDoctors);
        return returnMap;
    }
}

+ 33 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/BaseController.java

@ -1,8 +1,7 @@
package com.yihu.wlyy.web;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.lang.reflect.Field;
import java.util.*;
import javax.servlet.http.HttpServletRequest;
@ -16,6 +15,7 @@ import org.springframework.data.domain.Page;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yihu.wlyy.entity.IdEntity;
import org.springframework.util.ReflectionUtils;
public class BaseController {
@ -480,5 +480,35 @@ public class BaseController {
			return null;
		}
	}
	public List<Map<String, Object>> copyBeans(Collection<? extends Object> beans, String...propertyNames){
		List<Map<String, Object>> result = new ArrayList<>();
		for (Object bean : beans){
			result.add(copyBeanProperties(bean, propertyNames));
		}
		return result;
	}
	/**
	 * 复制特定属性。
	 *
	 * @param bean
	 * @param propertyNames
	 * @return
	 */
	public Map<String, Object> copyBeanProperties(Object bean, String...propertyNames){
		Map<String, Object> simplifiedBean = new HashMap<>();
		for (String propertyName : propertyNames){
			Field field = ReflectionUtils.findField(bean.getClass(), propertyName);
			if (field != null){
				field.setAccessible(true);
				Object value = ReflectionUtils.getField(field, bean);
				simplifiedBean.put(propertyName, value == null ? "" : value);
			} else {
				simplifiedBean.put(propertyName, "");
			}
		}
		return simplifiedBean;
	}
}

+ 0 - 31
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/team/AdminTeamController.java

@ -296,35 +296,4 @@ public class AdminTeamController extends BaseController {
        }
    }
    private List<Map<String, Object>> copyBeans(Collection<? extends Object> beans, String...propertyNames){
        List<Map<String, Object>> result = new ArrayList<>();
        for (Object bean : beans){
            result.add(copyBeanProperties(bean, propertyNames));
        }
        return result;
    }
    /**
     * 复制特定属性。
     *
     * @param bean
     * @param propertyNames
     * @return
     */
    private Map<String, Object> copyBeanProperties(Object bean, String...propertyNames){
        Map<String, Object> simplifiedBean = new HashMap<>();
        for (String propertyName : propertyNames){
            Field field = ReflectionUtils.findField(bean.getClass(), propertyName);
            if (field != null){
                field.setAccessible(true);
                Object value = ReflectionUtils.getField(field, bean);
                simplifiedBean.put(propertyName, value == null ? "" : value);
            } else {
                simplifiedBean.put(propertyName, "");
            }
        }
        return simplifiedBean;
    }
}

+ 53 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/team/SignTeamController.java

@ -1,8 +1,10 @@
package com.yihu.wlyy.web.doctor.team;
import java.util.List;
import java.util.Map;
import io.swagger.annotations.Api;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
@ -159,4 +161,55 @@ public class SignTeamController extends BaseController {
            return invalidUserException(e, -1, "查询失败!");
        }
    }
    /**
     * 求助页面需要的医生查找
     * @return
     */
    @RequestMapping(value = "teamDoctorsAndAdminTeamDoctors", method = RequestMethod.GET)
    @ResponseBody
    public String getTeamDoctorsAndAdminTeamDoctors(Long teamId) {
        try {
            Map<String,List<Doctor>> doctors = drHealthTeamService.getTeamDoctorsAndAdminTeamDoctors("64de930c-5b15-11e6-8344-fa163e8aee56",teamId);
            JSONObject jo=new JSONObject();
            jo.put("zr", addDoctor(doctors.get("zr")));
            jo.put("team", addDoctor(doctors.get("team")));
            return write(200, "查询成功!", "data",jo );
        } catch (Exception e) {
            error(e);
            return invalidUserException(e, -1, "查询失败!");
        }
    }
    private JSONArray addDoctor(List<Doctor> zr) {
        JSONArray array=new JSONArray();
        for (Doctor doctor : zr) {
            if (doctor == null) {
                continue;
            }
            JSONObject json = new JSONObject();
            json.put("id", doctor.getId());
            // 医生标识
            json.put("code", doctor.getCode());
            // 医生姓名
            json.put("name", doctor.getName());
            // 所在医院名称
            json.put("hospital_name", doctor.getHosptialName());
            // 科室名称
            json.put("dept_name", StringUtils.isEmpty(doctor.getDeptName()) ? " " : doctor.getDeptName());
            // 职称名称
            json.put("job_name", StringUtils.isEmpty(doctor.getJobName()) ? " " : doctor.getJobName());
            // 头像
            json.put("photo", doctor.getPhoto());
            // 简介
            json.put("introduce", doctor.getIntroduce());
            // 专长
            json.put("expertise", doctor.getExpertise());
            // 是否求出
            json.put("isHelp", doctor.getIsHelp());
            array.put(json);
        }
        return array;
    }
}