| 
					
				 | 
			
			
				@ -1,9 +1,18 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.jw.security.service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.doctor.BaseDoctorDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.entity.base.patient.BasePatientDO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.security.dao.doctor.BaseDoctorDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.security.dao.patient.BasePatientDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.date.DateUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.http.HttpClientUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.util.idcard.IdCardUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.utils.security.MD5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.Logger; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.slf4j.LoggerFactory; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -16,10 +25,17 @@ import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				public class YkyyService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private Logger logger = LoggerFactory.getLogger(YkyyService.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private HttpClientUtil httpClientUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private static String yktUrl = "http://www.yanketong.com:90/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private static String yktUrl1 = "http://www.yanketong.com:90/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private BasePatientDao patientDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private static String yktUrl = "http://www.yanketong.com:133/api/"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 眼科医院单点登录接口 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -27,7 +43,239 @@ public class YkyyService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getDoctorInfoByVerifycode(String verifyCode){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = "api/Doctor/GetDoctorInfoByverifycode"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return httpClientUtil.get(yktUrl+url+"?verifyCode="+verifyCode,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return httpClientUtil.get(yktUrl1+url+"?verifyCode="+verifyCode,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     *获取家庭成员信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param tel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param userId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getFamilyList(String tel,String userId){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = yktUrl+"doc_jkzl/get_family_list?"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNoneBlank(tel)&&StringUtils.isNoneBlank(userId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            url+="tel="+tel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            url+="&user_id="+userId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (StringUtils.isNoneBlank(tel)&&!StringUtils.isNoneBlank(userId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            url+="tel="+tel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if (!StringUtils.isNoneBlank(tel)&&StringUtils.isNoneBlank(userId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            url+="user_id="+userId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.get(url,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("获取家庭成员信息:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 眼科通登录接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param tel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param password 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String yktLogin(String tel,String password){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = yktUrl+"user_center/patient_login?patient_account="+tel+"&patient_pwd="+password; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.get(url,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("获取眼科通登录信息:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 眼科通验证码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param type 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param phone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getShortMessage(String type,String phone){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = yktUrl+"verification_code/short_message?type="+type+"&telephone="+phone; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.get(url,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("眼科通验证码:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 增加家庭成员 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param userId 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param idcard 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param name 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param sex 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param birth 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param age 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param tel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String addFamily(String userId,String idcard,String name,String sex,String birth,String age,String tel){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = yktUrl+"doc_jkzl/add_family?ass_user_id="+userId+"&id_card="+idcard+"&name="+name+"&sex="+sex 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                +"&birth="+birth+"&age="+age+"&tel="+tel+"&medical_card=&illness=本人&clinic_id="; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.get(url,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("增加家庭成员:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /**获取眼科通忘记密码信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param tel 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param password 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param vercode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String forgetPassword(String tel,String password,String vercode){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject jsonObject = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jsonObject.put("loginid",tel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jsonObject.put("password",password); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = "http://www.yanketong.com:90/api/Patient/ForgotPassword4Jkzl"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.sendPost(url,jsonObject.toJSONString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("获取眼科通忘记密码信息:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * telephone=15578008051&patient_pwd=123456&code=513970&invite_code=a01522&equipment_type=ios&equipment_guid=12312321 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 眼科通用户注册 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param telephone 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param patientPwd 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param code 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getRegisterUser(String telephone,String patientPwd,String code,String inviteCode,String equipmentType,String equipmentGuid){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String response=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String url = yktUrl+"user_center/patient_register01?telephone="+telephone+"&patient_pwd="+patientPwd+"&code="+code+"&invite_code="+inviteCode+"&equipment_type="+equipmentType+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "&equipment_guid="+equipmentGuid; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        response = httpClientUtil.get(url,"GBK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logger.info("眼科通用户注册:"+response); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return response; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 同步眼科通数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param patient 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public void registerYkt(String patient,String pw,String code) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        BasePatientDO basePatientDO  = patientDao.findById(patient); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (basePatientDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String userId = basePatientDO.getUserId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (StringUtils.isNoneBlank(userId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String familyList =getFamilyList(null,userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject object = JSONObject.parseObject(familyList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (object.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject object1 = object.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONArray array = object1.getJSONArray("list"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (array!=null&&array.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        JSONObject jsonObject = array.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (jsonObject!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String yktId = jsonObject.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String birdth = IdCardUtil.getBirthdayForIdcardStr(basePatientDO.getIdcard()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        Integer age = IdCardUtil.getAgeForIdcard(basePatientDO.getIdcard()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        Integer sex = basePatientDO.getSex()!=null?basePatientDO.getSex():0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String family = addFamily(userId,basePatientDO.getIdcard(),basePatientDO.getName(),sex.toString(),birdth,age.toString(),basePatientDO.getMobile()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        JSONObject object2 = JSONObject.parseObject(family); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object2.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            JSONObject object3 = object2.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String yktId = object3.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception("查询家庭成员失败!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String r =getRegisterUser(basePatientDO.getMobile(),pw,code,"a01522","xmijk","xmijk"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject object4 = JSONObject.parseObject(r); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (object4.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject object5 = object4.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object5!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        userId = object5.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        basePatientDO.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String familyList =getFamilyList(null,userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        JSONObject object = JSONObject.parseObject(familyList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (object.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            JSONObject object1 = object.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            JSONArray array = object1.getJSONArray("list"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            if (array!=null&&array.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                JSONObject jsonObject1 = array.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                if (jsonObject1!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    String yktId = jsonObject1.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    userId = jsonObject1.getString("ASSUSERID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    basePatientDO.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                String birdth = IdCardUtil.getBirthdayForIdcardStr(basePatientDO.getIdcard()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                Integer age = IdCardUtil.getAgeForIdcard(basePatientDO.getIdcard()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                Integer sex = basePatientDO.getSex()!=null?basePatientDO.getSex():0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                String family = addFamily(userId,basePatientDO.getIdcard(),basePatientDO.getName(),sex.toString(),birdth,age.toString(),basePatientDO.getMobile()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                JSONObject object2 = JSONObject.parseObject(family); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                if (object2.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    JSONObject object3 = object2.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    String yktId = object3.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    userId = object3.getString("ASSUSERID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    basePatientDO.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                    patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            throw new Exception("查询家庭成员失败!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String familyList =getFamilyList(basePatientDO.getMobile(),null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject object = JSONObject.parseObject(familyList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        JSONObject object1 = object.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        JSONArray array = object1.getJSONArray("list"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (array!=null&&array.size()!=0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            JSONObject jsonObject1 = array.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            if (jsonObject1!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                String yktId = jsonObject1.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                userId = jsonObject1.getString("ASSUSERID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                basePatientDO.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            userId=object1.getString("user_id"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String birdth = DateUtil.dateToStrShort(IdCardUtil.getBirthdayForIdcard(basePatientDO.getIdcard())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            Integer age = IdCardUtil.getAgeForIdcard(basePatientDO.getIdcard()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            Integer sex = basePatientDO.getSex()!=null?basePatientDO.getSex():0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String family = addFamily(userId,basePatientDO.getIdcard(),basePatientDO.getName(),sex.toString(),birdth,age.toString(),basePatientDO.getMobile()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            JSONObject object2 = JSONObject.parseObject(family); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            if (object2.getString("code").equalsIgnoreCase("200")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                JSONObject object3 = object2.getJSONObject("data"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                String yktId = object3.getString("ID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                basePatientDO.setYktId(yktId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                userId = object3.getString("ASSUSERID"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                basePatientDO.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                patientDao.save(basePatientDO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        throw new Exception("查询家庭成员失败!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |