|
@ -821,7 +821,7 @@ public class MedOrderService {
|
|
|
BigDecimal totalAmount = new BigDecimal(0.00);
|
|
|
BigDecimal ownPay = new BigDecimal(0.00);
|
|
|
|
|
|
String RATE_TYPE = "";//续方费用类别 1自费 2医保
|
|
|
String RATE_TYPE = visitDetail.getString("RATE_TYPE");//续方费用类别 1自费 2医保
|
|
|
//医保支付下,sumCost=0 当作自费号处理
|
|
|
//待结算自付总费用
|
|
|
|
|
@ -835,7 +835,7 @@ public class MedOrderService {
|
|
|
String atddr_no = "";//就诊医生国家医保编码【对应基线接口:atddr_no】
|
|
|
String dr_name = "";//科别【挂号科别】
|
|
|
boolean newYlzRelation = false;//新的记录
|
|
|
RATE_TYPE = visitDetail.getString("RATE_TYPE");//续方费用类别 1自费 2医保
|
|
|
|
|
|
// 费别是医保时,医保挂号流水号空则需发起门诊挂号
|
|
|
if (visitDetail.get("INSUR_VISIT_NO")==null&&"2".equals(RATE_TYPE)){//医保挂号流水号:
|
|
|
|
|
@ -843,6 +843,7 @@ public class MedOrderService {
|
|
|
if (visitDetail.get("INSUR_VISIT_NO")!=null){
|
|
|
INSUR_VISIT_NO = visitDetail.getString("INSUR_VISIT_NO");
|
|
|
}
|
|
|
|
|
|
visitDate = visitDetail.getDate("begntime");
|
|
|
USER_NAME = visitDetail.getString("USER_NAME");
|
|
|
visit_msgid = visitDetail.getString("visit_msgid");
|
|
@ -876,15 +877,19 @@ public class MedOrderService {
|
|
|
}
|
|
|
|
|
|
ylzMedicalRelationDO = ylzMedicailRelationDao.findByLog_no(VISIT_NO);
|
|
|
//新的记录
|
|
|
//新记录
|
|
|
if (null==ylzMedicalRelationDO){
|
|
|
newYlzRelation = true;
|
|
|
ylzMedicalRelationDO = new YlzMedicalRelationDO();
|
|
|
ylzMedicalRelationDO.setDel(1);
|
|
|
ylzMedicalRelationDO.setStatus(0);
|
|
|
ylzMedicalRelationDO.setState(0);
|
|
|
ylzMedicalRelationDO = ylzMedicailRelationDao.save(ylzMedicalRelationDO);
|
|
|
}
|
|
|
//医保单 未进行医保支付的 均获取最新的报文id;
|
|
|
else if (1==ylzMedicalRelationDO.getMedicalState()&&0==ylzMedicalRelationDO.getStatus()){
|
|
|
newYlzRelation = true;
|
|
|
}
|
|
|
|
|
|
if(newYlzRelation){
|
|
|
ylzMedicailMxDao.deleteByMedicalId(ylzMedicalRelationDO.getId());
|
|
|
for (int j = 0; j < SETTLE_DETAILS.size(); j++) {
|
|
|
SETTLE_DETAIL_OBJ = SETTLE_DETAILS.getJSONObject(j);
|
|
|
YlzMedicalMxDO ylzMedicalMxDO = new YlzMedicalMxDO();
|
|
@ -967,6 +972,7 @@ public class MedOrderService {
|
|
|
List<YlzMedicalIcdDO> ylzMedicalIcdDOList = ylzMedicailIcdDao.findByMedicalId(ylzMedicalRelationDO.getId());
|
|
|
icdDOList.addAll(ylzMedicalIcdDOList);
|
|
|
}else {
|
|
|
ylzMedicailIcdDao.deleteByMedicalId(ylzMedicalRelationDO.getId());
|
|
|
for (int j=0;j<DIAGNOSIS_DETAIL.size();j++){
|
|
|
JSONObject DIAGNOSIS_DETAIL_OBJ = DIAGNOSIS_DETAIL.getJSONObject(j);
|
|
|
YlzMedicalIcdDO ylzMedicalIcdDO = new YlzMedicalIcdDO();
|
|
@ -988,7 +994,10 @@ public class MedOrderService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (newYlzRelation){
|
|
|
if (newYlzRelation){//新记录
|
|
|
ylzMedicalRelationDO.setDel(1);
|
|
|
ylzMedicalRelationDO.setStatus(0);
|
|
|
ylzMedicalRelationDO.setState(0);
|
|
|
ylzMedicalRelationDO.setLogNo(VISIT_NO);
|
|
|
ylzMedicalRelationDO.setOrgCode(orgCode);
|
|
|
ylzMedicalRelationDO.setRegionCode("350200");//参保地区划代码 医保读卡返回
|