Browse Source

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

Sand 8 years ago
parent
commit
7e8e48a077

+ 10 - 0
src/main/java/com/yihu/wlyy/entity/patient/SignFamily.java

@ -60,6 +60,7 @@ public class SignFamily extends IdEntity {
	private String agentDoctorCode;//代理簽約人code
	private String agentDoctorName;//代理簽約人銘
	private String agentDoctorLevel;//代理簽約人等级
	private String adminTeamCode;//行政团队code
	public String getCode() {
		return code;
@ -416,6 +417,15 @@ public class SignFamily extends IdEntity {
		this.signSource = signSource;
	}
	@Column(name = "admin_team_code")
	public String getAdminTeamCode() {
		return adminTeamCode;
	}
	public void setAdminTeamCode(String adminTeamCode) {
		this.adminTeamCode = adminTeamCode;
	}
	@Override
	public String toString() {
		return "SignFamily{" +

+ 2 - 1
src/main/java/com/yihu/wlyy/job/ChangeSignJob.java

@ -122,7 +122,8 @@ public class ChangeSignJob implements Job {
                //统计社区
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

+ 2 - 1
src/main/java/com/yihu/wlyy/job/ConsultJob.java

@ -123,7 +123,8 @@ public class ConsultJob implements Job {
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

+ 2 - 1
src/main/java/com/yihu/wlyy/job/FollowUpJob.java

@ -131,7 +131,8 @@ public class FollowUpJob implements Job {
                //统计社区
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

+ 2 - 1
src/main/java/com/yihu/wlyy/job/HealthGuideJob.java

@ -122,7 +122,8 @@ public class HealthGuideJob implements Job {
                //统计社区
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

+ 6 - 6
src/main/java/com/yihu/wlyy/job/SignAgeGroupDiseaseJob.java

@ -121,7 +121,7 @@ public class SignAgeGroupDiseaseJob implements Job {
                    JSONArray redisValues = new JSONArray(jsonString);
                    if(redisValues.length()>0){
                        for (Object obj : redisValues) {
                            JSONObject redisValue = new JSONObject(obj);
                            JSONObject redisValue = (JSONObject)(obj);
                            if(!redisValue.has("signType")){
                                continue;
                            }
@ -129,23 +129,23 @@ public class SignAgeGroupDiseaseJob implements Job {
                            if ("1".equals(redisValue.get("signType").toString())) {
                                continue;
                            }
                            String disease = redisValue.get("disease").toString();
                            if (Integer.valueOf(disease).equals("1")) {
                            String disease =  redisValue.getString("disease");
                            if ("1".equals(disease)) {
                                jsonObjects.add(redisValue);
                                hasGXY = true;//设置有高血压
                                diseaseType="1";
                            }
                            if (Integer.valueOf(disease).equals("2")) {
                            if ("2".equals(disease)) {
                                jsonObjects.add(redisValue);
                                hasTNB = true;//设置有糖尿病
                                diseaseType="2";
                            }
                        }
                        if(hasGXY&&hasTNB){
                            diseaseType="3";
                            diseaseType="3";//高血压和糖尿病
                        }
                    }else{
                        diseaseType="4";
                        diseaseType="4";//健康人群
                    }
                }
                //统计市

+ 4 - 4
src/main/java/com/yihu/wlyy/job/SignJob.java

@ -890,7 +890,7 @@ public class SignJob implements Job {
            Map<String, Map<String, Long>> townAgeMap = new HashMap<String, Map<String, Long>>();//key是区行政代码
            Map<String, Map<String, Long>> orgAgeMap = new HashMap<String, Map<String, Long>>();//key是机构代码
            //统计有签约的
            for (SignFamily signFamily : signFamilys) {
           for (SignFamily signFamily : signFamilys) {
                Hospital hospital = hospitalsMap.get(signFamily.getHospital());//得到患者签约的机构
                String town = hospital.getTown();
                int age = IdCardUtil.getAgeForIdcard(signFamily.getIdcard());//根据card解析年龄
@ -923,7 +923,7 @@ public class SignJob implements Job {
                    String orgCodeTemp=orgCode.substring(0,orgCode.length()-2)+"00";
                    //统计机构
                    if (orgAgeMap.containsKey(orgCodeTemp)) {
                        Map<String, Long> groupMapTemp = orgAgeMap.get(hospital.getCode());
                        Map<String, Long> groupMapTemp = orgAgeMap.get(orgCodeTemp);
                        groupMapTemp.put(ageCode, (groupMapTemp.get(ageCode) == null ? 0l : groupMapTemp.get(ageCode)) + 1);
                        orgAgeMap.put(orgCodeTemp, groupMapTemp);
                    } else {
@ -1392,8 +1392,8 @@ public class SignJob implements Job {
                compute_level1(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute_level1(tjTownMap, townCode);
            //统计市

+ 2 - 1
src/main/java/com/yihu/wlyy/job/UnSignJob.java

@ -121,7 +121,8 @@ public class UnSignJob implements Job {
                //统计社区
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

+ 2 - 1
src/main/java/com/yihu/wlyy/job/WaitSignJob.java

@ -123,7 +123,8 @@ public class WaitSignJob implements Job {
                //统计社区
                compute(tjOrgMap, orgCode);
            }
            String townCode = doctor.getTown();
            Hospital hospital=hospitalsMap.get(doctor.getHospital());
            String townCode = hospital.getTown();
            //统计区
            compute(tjTownMap, townCode);
            //统计市

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

@ -67,4 +67,7 @@ public interface DoctorAdminTeamDao extends
            "WHERE d1.code = f.doctor AND f.doctorHealth = d2.code AND f.patient = :patientCode AND m.doctorCode = " +
            "d1.code AND m.teamId = t.id")
    Object getPatientSigningTeam(@Param("patientCode") String patientCode);
    @Query("SELECT t.id from AdminTeam t WHERE t.leaderCode = :leaderCode")
    Long findIdByLeaderCode(@Param("leaderCode") String leaderCode);
}

+ 2 - 2
src/main/java/com/yihu/wlyy/repository/doctor/DoctorDao.java

@ -120,9 +120,9 @@ public interface DoctorDao extends PagingAndSortingRepository<Doctor, Long>, Jpa
    List<Doctor> findByIsFamous(Integer isFamous);
    @Query("select p from Doctor p ,DoctorFamousConsultTimesRemain w where p.code=w.doctor and w.consultDate = ?1 and p.name like ?2 order by w.timesRemain desc")
    @Query("select p from Doctor p ,DoctorFamousConsultTimesRemain w where p.code=w.doctor and p.isFamous=1 and w.consultDate = ?1 and p.name like ?2 order by w.timesRemain desc")
    Page<Doctor> famousDoctorList(String date, String name, Pageable pageRequest);
    @Query("select p from Doctor p ,DoctorFamousConsultTimesRemain w where p.code=w.doctor and w.consultDate = ?1 order by w.timesRemain desc")
    @Query("select p from Doctor p ,DoctorFamousConsultTimesRemain w where p.code=w.doctor and p.isFamous=1 and w.consultDate = ?1 order by w.timesRemain desc")
    Page<Doctor> famousDoctorList(String date, Pageable pageRequest);
}

+ 1 - 1
src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java

@ -335,7 +335,7 @@ public class ConsultTeamService extends ConsultService {
				consultTeamDoctorDao.updateReply(log.getConsult(), teamOrDoctor);
				//shenzaixin v1.2.0 推送消息给患者
				HttpUtil.sendWeixinWebsocketMsg(patient,"data={busiType:'qianyuezixun',msgid:'"+log.getId()+"'}");
				HttpUtil.sendWeixinWebsocketMsg(patient,"{busiType:'qianyuezixun',msgid:'"+log.getId()+"'}");
			} else if (type == 0 || type == 2) {
				// 查询相关联的医生
				Iterable<ConsultTeamDoctor> iterable = consultTeamDoctorDao.findByConsult(log.getConsult());

+ 8 - 0
src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -93,6 +93,9 @@ public class FamilyContractService extends BaseService {
    @Autowired
    private SocialSecurityInfoDao socialSecurityInfoDao;
    @Autowired
    private DoctorAdminTeamDao doctorAdminTeamDao;
    public SignFamily findByPatientByType(String patient, int type) {
        return signFamilyDao.findByPatientAndType(patient, type);
    }
@ -365,6 +368,8 @@ public class FamilyContractService extends BaseService {
        sf.setCzrq(new Date());
        sf.setPatientApplyDate(new Date());
        sf.setDoctor(doctor);
        //设置全科医生的行政团队
        sf.setAdminTeamCode(doctorAdminTeamDao.findIdByLeaderCode(doctor)+"");
        sf.setMobile(mobile);
        sf.setDoctorName(d.getName());
        sf.setEmerMobile(emerMobile);
@ -647,6 +652,9 @@ public class FamilyContractService extends BaseService {
        sf.setBegin(DateUtil.getNowDateShort());
        sf.setCode(getCode());
        sf.setCzrq(new Date());
        //设置全科医生的行政团队
        sf.setAdminTeamCode(doctorAdminTeamDao.findIdByLeaderCode(doctor)+"");
        sf.setDoctor(doctor);
        sf.setDoctorName(doctorName);
        sf.setDoctorHealth(doctorHealth);

+ 2 - 0
src/main/java/com/yihu/wlyy/util/HttpUtil.java

@ -197,6 +197,7 @@ public class HttpUtil {
		BufferedReader in = null;
		HttpURLConnection conn = null;
		try {
			System.out.println("consult-send:" + userid + ":" + data);
			String url = SystemConf.getInstance().getWeixinWebsocketServer() + "?userid=" + userid + "&data=" + data;
			URL realUrl = new URL(url);
			// 打开和URL之间的连接
@ -219,6 +220,7 @@ public class HttpUtil {
			}
			System.out.println(buffer.toString());
			JSONObject json = new JSONObject(buffer.toString());
			System.out.println("consult-reply:" + json.toString());
			return json.toString();
		} catch (Exception e) {
			logger.error("push message error:", e);

+ 2 - 0
src/main/java/com/yihu/wlyy/web/patient/consult/ConsultController.java

@ -363,6 +363,8 @@ public class ConsultController extends WeixinBaseController {
					json.put("id", doctor.getId());
					// 医生标识
					json.put("code", doctor.getCode());
					// 医生性别
					json.put("sex", doctor.getSex());
					// 医生姓名
					json.put("name", doctor.getName());
					// 所在医院名称