|
@ -970,29 +970,31 @@ public class XzzxEntranceService{
|
|
|
String response="";
|
|
|
String url = entranceUrl+"findOutpatientInfo?patient="+patient+"&conNo="+conNo;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
logger.info("response:"+response);
|
|
|
JSONObject jsonObject = JSONObject.parseObject(response);
|
|
|
if (jsonObject.getInteger("status")==200){
|
|
|
array = JSONArray.parseArray(jsonObject.getString("obj")).getJSONArray(0);
|
|
|
JSONObject object = array.getJSONObject(0);
|
|
|
outpatientVO.setAdmNo(isEmty(object.getString("admNo")));
|
|
|
outpatientVO.setOriginAdmNo(isEmty(object.getString("originAdmNo")));
|
|
|
outpatientVO.setRegisterNo(isEmty(object.getString("registerNo")));
|
|
|
outpatientVO.setOriginRegisterNo(isEmty(object.getString("originRegisterNo")));
|
|
|
outpatientVO.setDept(isEmty(object.getString("dept")));
|
|
|
outpatientVO.setDeptName(isEmty(object.getString("deptName")));
|
|
|
outpatientVO.setPatient(isEmty(object.getString("patient")));
|
|
|
outpatientVO.setPatientName(isEmty(object.getString("patientName")));
|
|
|
outpatientVO.setDoctor(isEmty(object.getString("doctor")));
|
|
|
outpatientVO.setIdcard(isEmty(object.getString("idcard")));
|
|
|
outpatientVO.setMjz(isEmty(object.getString("mjz")));
|
|
|
outpatientVO.setIcd10(isEmty(object.getString("icd10")));
|
|
|
outpatientVO.setIcd10Name(isEmty(object.getString("icd10Name")));
|
|
|
outpatientVO.setAdmDate(DateUtil.strToDate(object.getString("admDate")));
|
|
|
outpatientVO.setConDate(DateUtil.strToDate(object.getString("conDate")));
|
|
|
outpatientVO.setDescription(isEmty(object.getString("description")));
|
|
|
outpatientVO.setDiseaseImg(isEmty(object.getString("diseaseImg")));
|
|
|
outpatientVO.setCreateTime(DateUtil.strToDate(object.getString("createTime")));
|
|
|
outpatientVO.setStatus(isEmty(object.getString("status")));
|
|
|
outpatientVO.setAdmNo(isEmty(object.getString("ADMNO")));
|
|
|
outpatientVO.setOriginAdmNo(isEmty(object.getString("ORIGINADMNO")));
|
|
|
outpatientVO.setRegisterNo(isEmty(object.getString("REGISTERNO")));
|
|
|
outpatientVO.setOriginRegisterNo(isEmty(object.getString("ORIGINREGISTERNO")));
|
|
|
outpatientVO.setDept(isEmty(object.getString("DEPT")));
|
|
|
outpatientVO.setDeptName(isEmty(object.getString("DEPTNAME")));
|
|
|
outpatientVO.setPatient(isEmty(object.getString("PATIENT")));
|
|
|
outpatientVO.setPatientName(isEmty(object.getString("PATIENTNAME")));
|
|
|
outpatientVO.setDoctor(isEmty(object.getString("DOCTOR")));
|
|
|
outpatientVO.setDoctorName(isEmty(object.getString("DOCTORNAME")));
|
|
|
outpatientVO.setIdcard(isEmty(object.getString("IDCARD")));
|
|
|
outpatientVO.setMjz(isEmty(object.getString("MJZ")));
|
|
|
outpatientVO.setIcd10(isEmty(object.getString("ICDCODE")));
|
|
|
outpatientVO.setIcd10Name(isEmty(object.getString("ICDNAME")));
|
|
|
outpatientVO.setAdmDate(DateUtil.strToDate(object.getString("ADMDATE")));
|
|
|
outpatientVO.setConDate(DateUtil.strToDate(object.getString("CONDATE")));
|
|
|
outpatientVO.setDescription(isEmty(object.getString("DESCRIPTION")));
|
|
|
outpatientVO.setDiseaseImg(isEmty(object.getString("DISEASEIMG")));
|
|
|
outpatientVO.setCreateTime(DateUtil.strToDate(object.getString("CREATETIME")));
|
|
|
outpatientVO.setStatus(isEmty(object.getString("STATUS")));
|
|
|
}
|
|
|
return outpatientVO;
|
|
|
}
|
|
@ -1016,6 +1018,7 @@ public class XzzxEntranceService{
|
|
|
}
|
|
|
String url = entranceUrl+"getOriginPrescriptionList?registerSn="+registerSn+"&patNo="+patNo+"&admNo="+admNo+params;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
logger.info("response:"+response);
|
|
|
JSONObject object = JSONObject.parseObject(response);
|
|
|
if (object.getInteger("status")==200){
|
|
|
array = JSONArray.parseArray(object.getString("obj")).getJSONArray(0);
|
|
@ -1194,6 +1197,7 @@ public class XzzxEntranceService{
|
|
|
String response="";
|
|
|
String url = entranceUrl+"registered?doctor="+doctor+"&dept="+dept+"&sickId="+sickId+"&clinicclass"+clinicclass;
|
|
|
response = httpClientUtil.get(url,"GBK");
|
|
|
logger.info("response:"+response);
|
|
|
JSONObject object = JSONObject.parseObject(response);
|
|
|
if (object.getInteger("status")==200){
|
|
|
array = JSONArray.parseArray(object.getString("obj")).getJSONArray(0);
|
|
@ -1207,112 +1211,7 @@ public class XzzxEntranceService{
|
|
|
|
|
|
//============================hospital业务层==================start====================
|
|
|
|
|
|
/**
|
|
|
* 挂号接口
|
|
|
* @param outPatientId
|
|
|
* @param doctor
|
|
|
* @param chargeType
|
|
|
* @return
|
|
|
*/
|
|
|
public JSONObject registerOutPatient(String outPatientId, String doctor,String chargeType){
|
|
|
WlyyOutpatientDO outpatientDO = outpatientDao.findOne(outPatientId);
|
|
|
DoctorMappingDO doctorMappingDO = doctorMappingDao.findByDoctor(doctor);
|
|
|
if (doctorMappingDO == null) {
|
|
|
throw new RuntimeException("未找到医生映射信息");
|
|
|
}
|
|
|
PatientMappingDO patientMappingDO = patientMappingDao.findByPatient(outpatientDO.getPatient());
|
|
|
if (patientMappingDO==null){
|
|
|
throw new RuntimeException("未找到居民映射信息");
|
|
|
}
|
|
|
|
|
|
//查找居民当天挂号记录
|
|
|
String date = DateUtil.dateToStr(new Date(), "yyyy-MM-dd");
|
|
|
List<WlyyPatientRegisterDO> patientRegisterDOs = patientRegisterDao.findByPatientAndDateAndDoctor(outpatientDO.getPatient(), date, doctor);
|
|
|
if (patientRegisterDOs != null && patientRegisterDOs.size() > 0) {
|
|
|
WlyyPatientRegisterDO registerDO = patientRegisterDOs.get(0);
|
|
|
//判断是否已经挂号,如果已经挂号
|
|
|
if (StringUtils.isNotBlank(registerDO.getRegisterNo())) {
|
|
|
|
|
|
JSONObject res = new JSONObject();
|
|
|
res.put("@RESULT", "0");
|
|
|
logger.info("已经挂号 res: " + res.toString());
|
|
|
|
|
|
//更新挂号流水号
|
|
|
outpatientDO.setConNo(registerDO.getConNo());
|
|
|
outpatientDO.setRegisterNo(registerDO.getRegisterNo());
|
|
|
outpatientDO.setAdmDate(registerDO.getCreateTime());
|
|
|
outpatientDao.save(outpatientDO);
|
|
|
return res;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
JSONArray response = registeredOperate(doctorMappingDO.getMappingCode(),outpatientDO.getDept(),patientMappingDO.getMappingCode(),chargeType);
|
|
|
JSONObject res = response.getJSONObject(0);
|
|
|
logger.info("挂号结果 res: " + response.toString());
|
|
|
String rsCode = res.getString("registerNo");
|
|
|
|
|
|
if ("0".equals(rsCode)) {
|
|
|
//存储挂号号
|
|
|
String serialNo = (String) res.get("registerNo");
|
|
|
outpatientDO.setRegisterNo(serialNo);
|
|
|
outpatientDO.setAdmDate(new Date());
|
|
|
logger.info("挂号流水 registerNo: ");
|
|
|
outpatientDao.save(outpatientDO);
|
|
|
|
|
|
//存储就诊记录
|
|
|
WlyyPatientRegisterDO registerDO = new WlyyPatientRegisterDO();
|
|
|
// 存储挂号医生与挂号科室
|
|
|
registerDO.setDoctor(outpatientDO.getDoctor());
|
|
|
registerDO.setDoctorName(outpatientDO.getDoctorName());
|
|
|
registerDO.setDept(outpatientDO.getDept());
|
|
|
registerDO.setDeptName(outpatientDO.getDeptName());
|
|
|
|
|
|
registerDO.setPatient(outpatientDO.getPatient());
|
|
|
registerDO.setPatientName(outpatientDO.getPatientName());
|
|
|
//挂号流水号与挂号次数
|
|
|
registerDO.setRegisterNo(serialNo);
|
|
|
registerDO.setCreateTime(new Date());
|
|
|
registerDO.setDate(DateUtil.dateToStr(new Date(), "yyyy-MM-dd"));
|
|
|
patientRegisterDao.save(registerDO);
|
|
|
|
|
|
} else if ("-2".equals(rsCode)) {
|
|
|
|
|
|
String serialNo = (String) res.get("registerNo");
|
|
|
outpatientDO.setRegisterNo(serialNo);
|
|
|
outpatientDO.setAdmDate(new Date());
|
|
|
logger.info("挂号流水 registerNo: " + serialNo );
|
|
|
outpatientDao.save(outpatientDO);
|
|
|
|
|
|
//存储就诊记录
|
|
|
WlyyPatientRegisterDO registerDO = new WlyyPatientRegisterDO();
|
|
|
|
|
|
registerDO.setDoctor(outpatientDO.getDoctor());
|
|
|
registerDO.setDoctorName(outpatientDO.getDoctorName());
|
|
|
registerDO.setDept(outpatientDO.getDept());
|
|
|
registerDO.setDeptName(outpatientDO.getDeptName());
|
|
|
|
|
|
registerDO.setPatient(outpatientDO.getPatient());
|
|
|
registerDO.setPatientName(outpatientDO.getPatientName());
|
|
|
registerDO.setRegisterNo(serialNo);
|
|
|
registerDO.setCreateTime(new Date());
|
|
|
registerDO.setDate(DateUtil.dateToStr(new Date(), "yyyy-MM-dd"));
|
|
|
|
|
|
patientRegisterDao.save(registerDO);
|
|
|
|
|
|
}
|
|
|
//保存日志
|
|
|
WlyyHttpLogDO log = new WlyyHttpLogDO();
|
|
|
log.setCode("registerOutPatient");
|
|
|
log.setName("挂号");
|
|
|
log.setPatient(outpatientDO.getPatient());
|
|
|
log.setDoctor(doctor);
|
|
|
log.setResponse(response.toString());
|
|
|
log.setRequest("outPatientId=" + outPatientId + "&doctor=" + doctor);
|
|
|
log.setStatus(rsCode);
|
|
|
log.setCreateTime(new Date());
|
|
|
wlyyHttpLogDao.save(log);
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
|
|
|
/**
|