| 
					
				 | 
			
			
				@ -69,7 +69,7 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private final static String url="http://192.168.20.55:10023/ykyy/createSQLQuery"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    private final static String url="http://localhost:10023/ykyy/createSQLQuery"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    private final static String url="http://localhost:10023/ykyy/createSQLQuery";192.168.33.197 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private final static String saveUrl="http://192.168.20.55:10023/ykyy/save"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private final static String orderUrl="http://192.168.20.55:10023/ykyy/outPatientOrder"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1903,11 +1903,20 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //挂号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> map = findYkDoctor(natAppointmentDO.getHospitalFlag()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PatientMappingDO patientMappingDO = patientMappingDao.findByPatient(natAppointmentDO.getPatientId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //PatientMappingDO patientMappingDO = patientMappingDao.findByPatient(natAppointmentDO.getPatientId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PatientMedicareCardDO patientMedicareCardDO = patientMedicareCardDao.findByTypeAndPatientCodeAndDel("A_01",natAppointmentDO.getPatientId(),"1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer brid= 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //病人性质 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer GHXH = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //挂号明细表HLW_GHMX 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        HlwGhmxDO hlwGhmxDO = new HlwGhmxDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray jsonArray = findHisPatient(patientMedicareCardDO.getCode(),demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(jsonArray!=null&&jsonArray.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //获取居民信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = jsonArray.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwGhmxDO.setBRXZ(json.getInteger("brxz")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            brid = json.getInteger("brid"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setSBXH(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setGHCS(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setGHJE(0); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1927,24 +1936,18 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setJZZT(2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setJZXH(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setKSDM(map.get("deptCode").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setBRID(Integer.parseInt(patientMappingDO.getMappingCode())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setBRID(brid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setGHSJ(new Date());//挂号时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setGHLB(1);//挂号类别 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setYSDM(map.get("doctorCode").toString());//医生代码 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setJZYS(map.get("doctorCode").toString());//接诊医生 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //病人性质 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray jsonArray = findHisPatient(patientMedicareCardDO.getCode(),demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(jsonArray!=null&&jsonArray.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //获取居民信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = jsonArray.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwGhmxDO.setBRXZ(json.getInteger("brxz")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //获取医生信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwGhmxDO.setCZGH(map.get("doctorMappingCode").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        // 同一个医生同一个病人,一天一条挂号记录。 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray ja = fingHlwGhmx(patientMappingDO.getMappingCode(),map.get("doctorCode").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray ja = fingHlwGhmx(String.valueOf(brid),map.get("doctorCode").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(ja!=null&&ja.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = ja.getJSONObject(0); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1991,7 +1994,7 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        HlwYsMzJzLsDO hlwYsMzJzLsDO = new HlwYsMzJzLsDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setJZXH(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setGHXH(GHXH); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setBRBH(Integer.parseInt(patientMappingDO.getMappingCode())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setBRBH(brid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setKSDM(Integer.parseInt(map.get("deptCode").toString())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setYSDM(map.get("doctorCode").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        hlwYsMzJzLsDO.setKSSJ(DateUtil.getNowDate()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2038,7 +2041,7 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setICD("Z00.001"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setMSZD("健康查体"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setJBBH(icd10Flag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setBRBH(Integer.valueOf(patientMappingDO.getMappingCode())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setBRBH(brid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setZDLB(11);//诊断类别 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setZDSJ(DateUtil.getNowDate());//诊断时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            hlwYsMzJbzdDO.setZFPB(0);//作废标志 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2079,6 +2082,7 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ykEmrJcsqDO.setSqsl(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ykEmrJcsqDO.setJclx(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ykEmrJcsqDO.setXmdw("人次"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ykEmrJcsqDO.setJbbh(icd10Flag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ykEmrJcsqDO.setKdsj(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer brxb = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String brxm = ""; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2086,7 +2090,7 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer brnl =0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String doctorHis=""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer kdks = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer brid=0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        /*Integer brid=0;*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String mzhm="0"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray jsonArray3 = findHisPatient(patientMedicareCardDO.getCode(),demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,Object> resultMap = new HashMap(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -3133,16 +3137,17 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    //判断居民是否建过档,没有就建档 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject patientJDKH(String idcard, String name, String phoneNum, String medicare) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject res = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        res.put("status", 200); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Float brid = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //根据身份证查询是否建档 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sfzhSql = "SELECT jzkh \"jzkh\" ,brid \"brid\" from portal_his.V_ZKSG_BRCX@xec_link where sfzh = '" + idcard + "' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sfzhSql = "SELECT jzkh \"jzkh\" ,brid \"brid\" from portal_his.V_ZKSG_BRCX@xec_link where sfzh = '" + idcard + "' order by JDSJ "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //根据社保卡查询是否建档 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String jzkhSql = "SELECT brid \"brid\",sfzh \"sfzh\" from portal_his.V_ZKSG_BRCX@xec_link where jzkh = '" + medicare + "' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String jzkhSql = "SELECT brid \"brid\",sfzh \"sfzh\" from portal_his.V_ZKSG_BRCX@xec_link where jzkh = '" + medicare + "' order by JDSJ "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray sfzhArray = getSqlResult(sfzhSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int size = sfzhArray.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (size == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = sfzhArray.getJSONObject(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Object jzkh = json.get("JZKH");//社保卡 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Object jzkh = json.get("jzkh");//社保卡 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //获取居民信息 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            brid = json.getFloat("brid");//病人id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (jzkh != null && !jzkh.toString().equals(medicare)) {//判断是否跟当前医保卡号一致 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -3159,9 +3164,10 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                logger.info("更新患者信息updateResponse:" + updateContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject rsult = JSON.parseObject(updateContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Integer s = rsult.getInteger("status"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (s != 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String message = rsult.getString("message"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (s != 200 || !message.equals("成功")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    res.put("status", -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    res.put("message", "更新社保卡失败!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    res.put("message", message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return res; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -3169,9 +3175,14 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String sql = "SELECT brid \"brid\" from portal_his.V_ZKSG_BRCX@xec_link where sfzh = '" + idcard + "' and  jzkh = '" + medicare + "' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray array = getSqlResult(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            logger.info("查询身份证和社保卡:" + array.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (array==null||array.size()==0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                res.put("status", -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                res.put("message", "您输入的卡号和该就诊人在医院预留的卡号不一致,请重新输入。"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return res; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (array.size() == 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                brid = sfzhArray.getJSONObject(0).getFloat("brid"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { //判断社保卡号是否都为空 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { //否则就去最早一条更新 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String nullSql = "SELECT brid \"brid\" from portal_his.V_ZKSG_BRCX@xec_link where sfzh = '" + idcard + "' and  jzkh is null "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Integer count = getSqlResult(nullSql).size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (count == size) {//如果都为空就默认取一条,然后更新社保卡号 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -3185,19 +3196,26 @@ public class YkyyEntranceService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    logger.info("更新患者信息updateResponse:" + updateContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject rsult = JSON.parseObject(updateContent); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    Integer s = rsult.getInteger("status"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (s != 200) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String message = rsult.getString("message"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (s != 200 || !message.equals("成功")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        res.put("status", -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        res.put("message", "更新社保卡失败!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        res.put("message", message); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        return res; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    res.put("status", -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    res.put("message", "您输入的卡号和该就诊人在医院预留的卡号不一致,请重新输入。"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return res; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { //身份证号没查到信息,就用社保卡号查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray jzkhArray = getSqlResult(jzkhSql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            brid = jzkhArray.getJSONObject(0).getFloat("brid"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (jzkhArray!=null&&jzkhArray.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                brid = jzkhArray.getJSONObject(0).getFloat("brid"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //查询是否有这个病人id 如果有直接返回 如果没有则新建 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (brid != null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (brid == null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> params1 = new HashedMap(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params1.put("brxm", name); 
			 |