| 
					
				 | 
			
			
				@ -12219,22 +12219,34 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> map = findRandomDoctor(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            net.sf.json.JSONObject rs = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                //先进行核算检测预约 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String result = entranceService.BS10144("3150000","0001",natTime,mediaCard,name,cardNo,mobile,pm,demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                com.alibaba.fastjson.JSONObject object = com.alibaba.fastjson.JSONObject.parseObject(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                logger.info("核酸检测预约结束"+result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                WlyyHospitalSysDictDO hospitalSysDictDO = hospitalSysDictDao.findById("natTimeConfig"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String isOpen = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (hospitalSysDictDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String dictValue = hospitalSysDictDO.getDictValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSONObject.parseObject(dictValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    isOpen = jsonObject.getString("isOpen"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Boolean flag = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (object!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    com.alibaba.fastjson.JSONObject jsonObject = object.getJSONObject("MsgInfo"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String Msg = jsonObject.getString("Msg"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (Msg.contains("Error")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (isOpen!=null&&isOpen.equalsIgnoreCase("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    //先进行核算检测预约 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    String result = entranceService.BS10144("3150000","0001",natTime,mediaCard,name,cardNo,mobile,pm,demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    com.alibaba.fastjson.JSONObject object = com.alibaba.fastjson.JSONObject.parseObject(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    logger.info("核酸检测预约结束"+result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (object!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        com.alibaba.fastjson.JSONObject jsonObject = object.getJSONObject("MsgInfo"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String Msg = jsonObject.getString("Msg"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (Msg.contains("Error")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            returnMap.put("msg",Msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            returnMap.put("status","-1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            return  returnMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        flag = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            flag = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    flag = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (flag){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    BaseNatAppointmentDO baseNatAppointmentDO= new BaseNatAppointmentDO(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    baseNatAppointmentDO.setChargeAmount(chargeAmount); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -12978,10 +12990,24 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                BaseNatAppointmentDO baseNatAppointmentDO = baseNatAppointmentDao.findOne(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (null!=baseNatAppointmentDO){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if ("xm_zsyy_wx".equalsIgnoreCase(wechatId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        res = entranceService.BS10145("3150000","0001",DateUtil.dateToStrLong(baseNatAppointmentDO.getAppointmentTime()),baseNatAppointmentDO.getMedicare(),baseNatAppointmentDO.getName(),baseNatAppointmentDO.getCardNo(),baseNatAppointmentDO.getMobile(),baseNatAppointmentDO.getAmpm(),demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        logger.info("核酸检测预约取消"+res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSONObject.parseObject(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        WlyyHospitalSysDictDO hospitalSysDictDO = hospitalSysDictDao.findById("natTimeConfig"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        String isOpen = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (hospitalSysDictDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String dictValue = hospitalSysDictDO.getDictValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSONObject.parseObject(dictValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            isOpen = jsonObject.getString("isOpen"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        Boolean flag = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (isOpen!=null&&isOpen.equalsIgnoreCase("0")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            res = entranceService.BS10145("3150000","0001",DateUtil.dateToStrLong(baseNatAppointmentDO.getAppointmentTime()),baseNatAppointmentDO.getMedicare(),baseNatAppointmentDO.getName(),baseNatAppointmentDO.getCardNo(),baseNatAppointmentDO.getMobile(),baseNatAppointmentDO.getAmpm(),demoFlag); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            logger.info("核酸检测预约取消"+res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            jsonObject = com.alibaba.fastjson.JSONObject.parseObject(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            com.alibaba.fastjson.JSONObject object = new com.alibaba.fastjson.JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            object.put("Msg","success"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            jsonObject.put("MsgInfo",object); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        if (jsonObject!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            com.alibaba.fastjson.JSONObject object = jsonObject.getJSONObject("MsgInfo"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                            String Msg = object.getString("Msg"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -14390,4 +14416,80 @@ public class PrescriptionService extends BaseJpaService<WlyyPrescriptionDO, Pres 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw e; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public ObjEnvelop selectNatTime()throws Exception{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ObjEnvelop envelop = new ObjEnvelop(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        GregorianCalendar ca = new GregorianCalendar(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //i结果为“0”是上午 结果为“1”是下午 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer  i = ca.get(GregorianCalendar.AM_PM); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        WlyyHospitalSysDictDO hospitalSysDictDO = hospitalSysDictDao.findById("natTimeConfig"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String isOpen = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT COUNT(1) as count FROM `base_nat_appointment` where is_success = 1 and pay_status=1 "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (hospitalSysDictDO!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String dictValue = hospitalSysDictDO.getDictValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            com.alibaba.fastjson.JSONObject jsonObject = com.alibaba.fastjson.JSONObject.parseObject(dictValue); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String startAm = jsonObject.getString("startAm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String endAm = jsonObject.getString("endAm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String startPm = jsonObject.getString("startPm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String endPm = jsonObject.getString("endPm"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String message1 = jsonObject.getString("message1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            String message2 = jsonObject.getString("message2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer amTotal = jsonObject.getInteger("amTotal"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer pmTotal = jsonObject.getInteger("pmTotal"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date startAmDate = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" "+startAm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date endAmDate = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" "+endAm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date startPmDate = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" "+startPm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date endPmDate = DateUtil.strToDateLong(DateUtil.getStringDateShort()+" "+endPm); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Date now = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (i==0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (now.getTime()>=startAmDate.getTime()&&now.getTime()<=endAmDate.getTime()){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql += " and create_time >= '"+DateUtil.dateToStrLong(startAmDate)+"' and create_time <='"+DateUtil.dateToStrLong(endAmDate)+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setMessage(message1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setStatus(500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else if (i==1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (now.getTime()>=(startPmDate.getTime())&&now.getTime()<=(endPmDate.getTime())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    sql += " and create_time >= '"+DateUtil.dateToStrLong(startPmDate)+"' and create_time <='"+DateUtil.dateToStrLong(endPmDate)+"' "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setMessage(message1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setStatus(500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,Object> map = jdbcTemplate.queryForMap(sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            logger.info("map"+sql); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer count = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (map!=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                count= Integer.parseInt(map.get("count").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (i==0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (amTotal>count){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    Integer remainTotal = amTotal-count; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jsonObject.put("remainTotal",remainTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setMessage(message2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setStatus(500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }else if (i==1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (pmTotal>count){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    Integer remainTotal = pmTotal-count; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jsonObject.put("remainTotal",remainTotal); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setMessage(message2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    envelop.setStatus(500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            envelop.setStatus(200); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            envelop.setMessage("获取号源成功"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            envelop.setObj(jsonObject); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            envelop.setStatus(500); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            envelop.setMessage("获取号源失败"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return envelop; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |