|
@ -6,8 +6,10 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import com.yihu.jw.dict.dao.DictHospitalDeptDao;
|
|
|
import com.yihu.jw.dict.service.DictHospitalDeptService;
|
|
|
import com.yihu.jw.entity.base.dict.DictHospitalDeptDO;
|
|
|
import com.yihu.jw.entity.hospital.dict.WlyyChargeDictDO;
|
|
|
import com.yihu.jw.entity.hospital.mapping.HospitalDeptMappingDO;
|
|
|
import com.yihu.jw.entity.hospital.mapping.PatientMappingDO;
|
|
|
import com.yihu.jw.hospital.dict.WlyyChargeDictDao;
|
|
|
import com.yihu.jw.hospital.mapping.dao.HospitalDeptMappingDao;
|
|
|
import com.yihu.jw.hospital.mapping.dao.PatientMappingDao;
|
|
|
import com.yihu.jw.hospital.prescription.service.entrance.util.ConvertUtil;
|
|
@ -79,6 +81,8 @@ public class EntranceService {
|
|
|
private DictHospitalDeptDao dictHospitalDeptDao;
|
|
|
@Autowired
|
|
|
private PatientMappingDao patientMappingDao;
|
|
|
@Autowired
|
|
|
private WlyyChargeDictDao wlyyChargeDictDao;
|
|
|
|
|
|
/**
|
|
|
* 获取本地示例返参
|
|
@ -362,9 +366,9 @@ public class EntranceService {
|
|
|
String patientName=null != jsonObjectBody.get("UOM") ? jsonObjectBody.get("UOM").toString() : "";
|
|
|
PatientMappingDO patientMappingDo=new PatientMappingDO();
|
|
|
if(StringUtils.isNotBlank(patNo)){
|
|
|
patientMappingDo= patientMappingDao.findByMappingCodeAndSource(patNo,"1");
|
|
|
patNo=StringUtils.isBlank(patientMappingDo.getPatient())?patNo:patientMappingDo.getPatient();
|
|
|
patientName=StringUtils.isBlank(patientMappingDo.getPatientName())?patientName:patientMappingDo.getPatientName();
|
|
|
patientMappingDo= patientMappingDao.findByMappingCodeAndSource(patNo.trim(),"1");
|
|
|
patNo=null==patientMappingDo?null:patientMappingDo.getPatient();
|
|
|
patientName=null==patientMappingDo?null:patientMappingDo.getPatientName();
|
|
|
}
|
|
|
|
|
|
wlyyPrescriptionVO.setPatientCode(patNo);
|
|
@ -406,7 +410,7 @@ public class EntranceService {
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
public List<WlyyOutpatientVO> BS30025(String PAT_NO,String admNo,String registerSn,String startTime,String endTime,boolean demoFlag) throws Exception {
|
|
|
public List<WlyyOutpatientVO> BS30025(String PAT_NO,String conNo,String admNo,String registerSn,String startTime,String endTime,boolean demoFlag) throws Exception {
|
|
|
String fid = BS30025;
|
|
|
String resp = "";
|
|
|
if (demoFlag) {
|
|
@ -422,6 +426,9 @@ public class EntranceService {
|
|
|
if (StringUtils.isNotBlank(PAT_NO)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"PAT_NO\" splice=\"and\" value=\"'" + PAT_NO + "'\"/>");
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(conNo)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"CON_NO\" splice=\"and\" value=\"'" + conNo + "'\"/>");
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(admNo)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"ADM_NO\" splice=\"and\" value=\"'" + admNo + "'\"/>");
|
|
|
}
|
|
@ -456,9 +463,9 @@ public class EntranceService {
|
|
|
String patientName=null != jsonObjectMgsInfo.get("PAT_NAME") ? jsonObjectMgsInfo.get("PAT_NAME").toString() : "";
|
|
|
PatientMappingDO patientMappingDo=new PatientMappingDO();
|
|
|
if(StringUtils.isNotBlank(patNo)){
|
|
|
patientMappingDo= patientMappingDao.findByMappingCodeAndSource(patNo,"1");
|
|
|
patNo=StringUtils.isBlank(patientMappingDo.getPatient())?patNo:patientMappingDo.getPatient();
|
|
|
patientName=StringUtils.isBlank(patientMappingDo.getPatientName())?patientName:patientMappingDo.getPatientName();
|
|
|
patientMappingDo= patientMappingDao.findByMappingCodeAndSource(patNo.trim(),"1");
|
|
|
patNo=null==patientMappingDo?null:patientMappingDo.getPatient();
|
|
|
patientName=null==patientMappingDo?null:patientMappingDo.getPatientName();
|
|
|
}
|
|
|
wlyyOutpatientVO.setPatient(patNo);
|
|
|
wlyyOutpatientVO.setPatientName(patientName);
|
|
@ -811,22 +818,21 @@ public class EntranceService {
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
public JSONArray MS02013(boolean demoFlag) throws Exception {
|
|
|
public net.sf.json.JSONArray MS02013(String code) throws Exception {
|
|
|
String fid=MS02013;
|
|
|
String resp="";
|
|
|
if (demoFlag) {
|
|
|
resp = getJosnFileResullt(fid);
|
|
|
} else {
|
|
|
StringBuffer sbs = new StringBuffer();
|
|
|
//AccessControl :用户、密码、服务id
|
|
|
sbs.append("<ESBEntry><AccessControl><Fid>" + fid + "</Fid><UserName>"+mqUser+"</UserName><Password>"+mqPwd+"</Password></AccessControl>");
|
|
|
//MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
|
|
|
sbs.append("<MessageHeader><Fid>" + fid + "</Fid><MsgDate>" + DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD_HH_MM_SS) + "</MsgDate><SourceSysCode>"+sourceSysCode+"</SourceSysCode><TargetSysCode>"+targetSysCode+"</TargetSysCode></MessageHeader>");
|
|
|
//查询信息拼接
|
|
|
sbs.append("<MsgInfo><endNum>20000</endNum><Msg/><startNum>1</startNum></MsgInfo></ESBEntry>");
|
|
|
resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
|
|
|
resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
|
StringBuffer sbs= new StringBuffer();
|
|
|
//AccessControl :用户、密码、服务id
|
|
|
sbs.append("<ESBEntry><AccessControl><Fid>"+fid+"</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>");
|
|
|
//MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
|
|
|
sbs.append("<MessageHeader><Fid>"+fid+"</Fid><MsgDate>"+ DateUtil.dateToStr(new Date(),DateUtil.YYYY_MM_DD_HH_MM_SS)+"</MsgDate><SourceSysCode>S60</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>");
|
|
|
//查询信息拼接
|
|
|
sbs.append("<MsgInfo><endNum>20000</endNum><Msg/>");
|
|
|
if(StringUtils.isNotBlank(code)){
|
|
|
sbs.append("<query compy=\"=\" item=\"code\" splice=\"and\" value=\"'"+code+"'\"/>");
|
|
|
}
|
|
|
sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
|
|
|
String resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid );
|
|
|
resp= MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
|
return ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
}
|
|
|
|
|
@ -1065,12 +1071,6 @@ public class EntranceService {
|
|
|
sbs.append("<query compy=\"=\" item=\"times\" splice=\"and\" value=\"'" + conNo + "'\"/>");
|
|
|
}
|
|
|
sbs.append("<order item=\"apply_date\" sort=\"desc\"/>");
|
|
|
//<ESBEntry><AccessControl><Fid>BS25017</Fid><UserName>JKZL</UserName><Password>123456</Password></AccessControl>
|
|
|
// <MessageHeader><Fid>BS25017</Fid><MsgDate>2019-06-03 13:52:39</MsgDate><SourceSysCode>S47</SourceSysCode><TargetSysCode>S01</TargetSysCode></MessageHeader>
|
|
|
// <MsgInfo><endNum>20000</endNum><Msg/>
|
|
|
// <query compy="=" item="inpatient_no" splice="and" value="'P10728535-0'"/>
|
|
|
// <query compy="=" item="times" splice="and" value="'62'"/>
|
|
|
// <order item="apply_date" sort="desc"/><startNum>1</startNum></MsgInfo></ESBEntry>
|
|
|
sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
|
|
|
resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
|
|
|
resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
@ -1124,6 +1124,7 @@ public class EntranceService {
|
|
|
public JSONArray BS20019(String patNo,String conNo,boolean demoFlag) throws Exception {
|
|
|
String fid="BS20019";
|
|
|
String resp="";
|
|
|
net.sf.json.JSONArray jsonArrayLast=new net.sf.json.JSONArray();
|
|
|
if (demoFlag) {
|
|
|
resp = getJosnFileResullt(fid);
|
|
|
} else {
|
|
@ -1131,8 +1132,6 @@ public class EntranceService {
|
|
|
JSONArray jsonArray= BS20010(patNo,conNo,demoFlag);
|
|
|
for(Object object:jsonArray){
|
|
|
net.sf.json.JSONObject jsonObjectBody=(net.sf.json.JSONObject)object;
|
|
|
jsonObjectBody= (net.sf.json.JSONObject)jsonObjectBody.get("body");
|
|
|
jsonObjectBody=null==jsonObjectBody?jsonObjectBody:(net.sf.json.JSONObject)jsonObjectBody.get("row");
|
|
|
if(null!=jsonObjectBody){
|
|
|
String applyno=null==jsonObjectBody.get("applyno")?"":jsonObjectBody.get("applyno").toString();
|
|
|
if(StringUtils.isNotBlank(applyno)){
|
|
@ -1150,15 +1149,15 @@ public class EntranceService {
|
|
|
sbs.append("</MsgInfo></ESBEntry>");
|
|
|
resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
|
|
|
resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
|
ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
net.sf.json.JSONArray jsonArray1= ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
jsonArrayLast.add(jsonArray1);
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|
|
|
return ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
return jsonArrayLast;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@ -1172,6 +1171,7 @@ public class EntranceService {
|
|
|
public JSONArray BS20011(String patNo,String conNo,boolean demoFlag) throws Exception {
|
|
|
String fid="BS20011";
|
|
|
String resp="";
|
|
|
net.sf.json.JSONArray jsonArrayLast=new net.sf.json.JSONArray();
|
|
|
if (demoFlag) {
|
|
|
resp = getJosnFileResullt(fid);
|
|
|
} else {
|
|
@ -1192,20 +1192,18 @@ public class EntranceService {
|
|
|
//查询信息拼接
|
|
|
sbs.append("<MsgInfo><endNum>20000</endNum><Msg/>");
|
|
|
if (StringUtils.isNotBlank(applyno)) {
|
|
|
//TODO 是ApplyNo?
|
|
|
sbs.append("<query compy=\"=\" item=\"applyno\" splice=\"and\" value=\"'" + applyno + "'\"/>");
|
|
|
}
|
|
|
sbs.append("<order item=\"ResultTime\" sort=\"desc\"/>");
|
|
|
sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
|
|
|
resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
|
|
|
resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
|
ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
net.sf.json.JSONArray jsonArray1= ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
jsonArrayLast.add(jsonArray1);
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
}
|
|
|
return ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
return jsonArrayLast;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@ -1244,4 +1242,66 @@ public class EntranceService {
|
|
|
}
|
|
|
|
|
|
|
|
|
public List<WlyyChargeDictDO> BS55010(String windowsNo,String code,String chargeType,boolean demoFlag) throws Exception {
|
|
|
String fid="BS55010";
|
|
|
String resp="";
|
|
|
Map<String,Object> map=new HashMap<>();
|
|
|
List<WlyyChargeDictDO> wlyyChargeDictDOS=new ArrayList<>();
|
|
|
if (demoFlag) {
|
|
|
resp = getJosnFileResullt(fid);
|
|
|
} else {
|
|
|
StringBuffer sbs = new StringBuffer();
|
|
|
//AccessControl :用户、密码、服务id
|
|
|
sbs.append("<ESBEntry><AccessControl><Fid>" + fid + "</Fid><UserName>"+mqUser+"</UserName><Password>"+mqPwd+"</Password></AccessControl>");
|
|
|
//MessageHeader :固定值 消费方系统编号 S60,提供方系统编号 S01
|
|
|
sbs.append("<MessageHeader><Fid>" + fid + "</Fid><MsgDate>" + DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD_HH_MM_SS) + "</MsgDate><SourceSysCode>"+sourceSysCode+"</SourceSysCode><TargetSysCode>"+targetSysCode+"</TargetSysCode></MessageHeader>");
|
|
|
//查询信息拼接
|
|
|
sbs.append("<MsgInfo><endNum>20000</endNum><Msg/>");
|
|
|
if (StringUtils.isNotBlank(windowsNo)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"windows_no\" splice=\"and\" value=\"'"+windowsNo+"'\"/>");
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(chargeType)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"charge_type\" splice=\"and\" value=\"'"+chargeType+"'\"/>");
|
|
|
}
|
|
|
if (StringUtils.isNotBlank(code)) {
|
|
|
sbs.append("<query compy=\"=\" item=\"code\" splice=\"and\" value=\"'"+code+"'\"/>");
|
|
|
}
|
|
|
sbs.append("<startNum>1</startNum></MsgInfo></ESBEntry>");
|
|
|
resp = MqSdkUtil.putReqAndGetRespByQueryStr(sbs.toString(), fid);
|
|
|
resp = MqSdkUtil.xml2jsonArrayRootRow(resp);
|
|
|
}
|
|
|
net.sf.json.JSONArray jsonArray= ConvertUtil.convertListEnvelopInBodyRow(resp);
|
|
|
for(Object object:jsonArray){
|
|
|
net.sf.json.JSONObject jsonObjectBody=(net.sf.json.JSONObject)object;
|
|
|
String chareName="";
|
|
|
if(null!=jsonObjectBody){
|
|
|
String chareCode=null==jsonObjectBody.get("charge_type")?"":jsonObjectBody.get("charge_type").toString();
|
|
|
String winNo=null==jsonObjectBody.get("windows_no")?"":jsonObjectBody.get("windows_no").toString();
|
|
|
//WlyyChargeDictDO
|
|
|
if(!map.containsKey(chareCode+"_"+winNo)){
|
|
|
//查询号别
|
|
|
net.sf.json.JSONArray chares= MS02013(chareCode);
|
|
|
for(Object object1:chares) {
|
|
|
net.sf.json.JSONObject jsonObjectBody1 = (net.sf.json.JSONObject) object1;
|
|
|
chareName=null==jsonObjectBody1.get("name")?"":jsonObjectBody1.get("name").toString();
|
|
|
System.out.println(chareCode+chareName);
|
|
|
WlyyChargeDictDO wlyyChargeDictDO=new WlyyChargeDictDO();
|
|
|
wlyyChargeDictDO.setChargeType(chareCode);
|
|
|
wlyyChargeDictDO.setChargeName(chareName);
|
|
|
|
|
|
wlyyChargeDictDO.setDeptTypeCode(winNo);
|
|
|
Double free=null==jsonObjectBody.get("req_fee")?0:Double.parseDouble(jsonObjectBody.get("req_fee").toString());
|
|
|
wlyyChargeDictDO.setReqFee(free);
|
|
|
wlyyChargeDictDO.setCreateTime(new Date());
|
|
|
map.put(chareCode+"_"+winNo,chareName);
|
|
|
wlyyChargeDictDO=wlyyChargeDictDao.save(wlyyChargeDictDO);
|
|
|
wlyyChargeDictDOS.add(wlyyChargeDictDO);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return wlyyChargeDictDOS;
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|