|  | @ -313,7 +313,7 @@ public class MedOrderService {
 | 
												
													
														
															|  |         settleTmp.put("needCharge",true);//是否需要医保结算
 |  |         settleTmp.put("needCharge",true);//是否需要医保结算
 | 
												
													
														
															|  |         settleTmp.put("needHisCharge",true);//是否需要医保结算
 |  |         settleTmp.put("needHisCharge",true);//是否需要医保结算
 | 
												
													
														
															|  |         settleTmp.put("medicalState",ylzMedicalRelationDO.getMedicalState());//结算方式
 |  |         settleTmp.put("medicalState",ylzMedicalRelationDO.getMedicalState());//结算方式
 | 
												
													
														
															|  |         settleTmp.put("RECIPE_NO",ylzMedicalRelationDO.getLogNo());
 |  | 
 | 
												
													
														
															|  | 
 |  |         settleTmp.put("RECIPE_NO",null==ylzMedicalRelationDO.getLogNo()?"":ylzMedicalRelationDO.getLogNo());//用挂号号关联,非处方号
 | 
												
													
														
															|  |         if (1==ylzMedicalRelationDO.getMedicalState()&&0.0==Double.valueOf(ylzMedicalRelationDO.getTotalAmount())){
 |  |         if (1==ylzMedicalRelationDO.getMedicalState()&&0.0==Double.valueOf(ylzMedicalRelationDO.getTotalAmount())){
 | 
												
													
														
															|  |             //费用为0的医保结算也需要当作自费处理
 |  |             //费用为0的医保结算也需要当作自费处理
 | 
												
													
														
															|  |             settleTmp.put("medicalState",0);//结算方式
 |  |             settleTmp.put("medicalState",0);//结算方式
 | 
												
											
												
													
														
															|  | @ -427,7 +427,7 @@ public class MedOrderService {
 | 
												
													
														
															|  |                    }
 |  |                    }
 | 
												
													
														
															|  |                    inputDetail.put("mdtrt_cert_type",mdtrt_cert_type);
 |  |                    inputDetail.put("mdtrt_cert_type",mdtrt_cert_type);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                    inputDetail.put("ipt_otp_no",ylzMedicalRelationDO.getRelationCode());
 |  | 
 | 
												
													
														
															|  | 
 |  |                    inputDetail.put("ipt_otp_no",ylzMedicalRelationDO.getLogNo());
 | 
												
													
														
															|  |                    inputDetail.put("atddr_no",ylzMedicalRelationDO.getAtddrNo());
 |  |                    inputDetail.put("atddr_no",ylzMedicalRelationDO.getAtddrNo());
 | 
												
													
														
															|  |                    inputDetail.put("dr_name",ylzMedicalRelationDO.getDrName());
 |  |                    inputDetail.put("dr_name",ylzMedicalRelationDO.getDrName());
 | 
												
													
														
															|  |                    inputDetail.put("dept_code",ylzMedicalRelationDO.getDeptCode());
 |  |                    inputDetail.put("dept_code",ylzMedicalRelationDO.getDeptCode());
 | 
												
											
												
													
														
															|  | @ -436,6 +436,7 @@ public class MedOrderService {
 | 
												
													
														
															|  |                    input.put("data",inputDetail);
 |  |                    input.put("data",inputDetail);
 | 
												
													
														
															|  |                    dataDetail.put("input",input);
 |  |                    dataDetail.put("input",input);
 | 
												
													
														
															|  |                    netData.put("msgid",ylzMedicalRelationDO.getVisitMsgid());//挂号发送方报文id
 |  |                    netData.put("msgid",ylzMedicalRelationDO.getVisitMsgid());//挂号发送方报文id
 | 
												
													
														
															|  | 
 |  |                    netData.put("insuplc_admdvs","");//参保地医保区划 前端替换
 | 
												
													
														
															|  |                    dataDetail.put("net_data",netData);
 |  |                    dataDetail.put("net_data",netData);
 | 
												
													
														
															|  |                    strinObj.put("func","fsi.terminal.register");
 |  |                    strinObj.put("func","fsi.terminal.register");
 | 
												
													
														
															|  |                    strinObj.put("data",dataDetail);
 |  |                    strinObj.put("data",dataDetail);
 | 
												
											
												
													
														
															|  | @ -580,6 +581,7 @@ public class MedOrderService {
 | 
												
													
														
															|  |                 JSONObject netData = new JSONObject();
 |  |                 JSONObject netData = new JSONObject();
 | 
												
													
														
															|  |                 netData.put("opter",ylzMedicalRelationDO.getOrgCode());
 |  |                 netData.put("opter",ylzMedicalRelationDO.getOrgCode());
 | 
												
													
														
															|  |                 netData.put("msgid",ylzMedicalMxDOSTmp.get(0).getSetlMsgid());//发送方结算报文id
 |  |                 netData.put("msgid",ylzMedicalMxDOSTmp.get(0).getSetlMsgid());//发送方结算报文id
 | 
												
													
														
															|  | 
 |  |                 netData.put("insuplc_admdvs",ylzMedicalRelationDO.getRegionCode());//参保地医保区划
 | 
												
													
														
															|  |                 netData.put("opmsgidter","123123");
 |  |                 netData.put("opmsgidter","123123");
 | 
												
													
														
															|  |                 netData.put("fixmedins_code",strinObj.getString("outBizNo"));
 |  |                 netData.put("fixmedins_code",strinObj.getString("outBizNo"));
 | 
												
													
														
															|  |                 netData.put("opter_name","自助机");
 |  |                 netData.put("opter_name","自助机");
 | 
												
											
												
													
														
															|  | @ -833,269 +835,277 @@ public class MedOrderService {
 | 
												
													
														
															|  |                         JSONArray jsonArray = array.getJSONArray(0);
 |  |                         JSONArray jsonArray = array.getJSONArray(0);
 | 
												
													
														
															|  |                         if (jsonArray != null && jsonArray.size() != 0) {
 |  |                         if (jsonArray != null && jsonArray.size() != 0) {
 | 
												
													
														
															|  |                             for (int waitPayIndex=0;waitPayIndex<jsonArray.size();waitPayIndex++){
 |  |                             for (int waitPayIndex=0;waitPayIndex<jsonArray.size();waitPayIndex++){
 | 
												
													
														
															|  |                                 YlzMedicalRelationDO ylzMedicalRelationDO = null;
 |  | 
 | 
												
													
														
															|  |                                 List<YlzMedicalIcdDO> icdDOList = new ArrayList<>();
 |  | 
 | 
												
													
														
															|  |                                 List<YlzMedicalMxDO> mxDOList = new ArrayList<>();
 |  | 
 | 
												
													
														
															|  |                                 JSONObject waitForPay = jsonArray.getJSONObject(waitPayIndex);
 |  |                                 JSONObject waitForPay = jsonArray.getJSONObject(waitPayIndex);
 | 
												
													
														
															|  |                                 if (waitForPay!=null){
 |  |                                 if (waitForPay!=null){
 | 
												
													
														
															|  |                                     JSONArray visitDetails = waitForPay.getJSONArray("VISIT_DETAIL");
 |  |                                     JSONArray visitDetails = waitForPay.getJSONArray("VISIT_DETAIL");
 | 
												
													
														
															|  |                                     String prescription_code = "";//处方编码 费用明细中只有药品有处方编码,诊查费无
 |  | 
 | 
												
													
														
															|  |                                     String INSUR_VISIT_NO = "";//医保挂号流水号
 |  | 
 | 
												
													
														
															|  |                                     String deptCode = "";
 |  | 
 | 
												
													
														
															|  |                                     String deptName = "";
 |  | 
 | 
												
													
														
															|  |                                     String hisDeptCode = "";
 |  | 
 | 
												
													
														
															|  |                                     String hisDeptName = "";
 |  | 
 | 
												
													
														
															|  |                                     String collector = "";//收费人
 |  | 
 | 
												
													
														
															|  |                                     String presItemCount="";
 |  | 
 | 
												
													
														
															|  |                                     String APPLY_TIME="";//开单时间
 |  | 
 | 
												
													
														
															|  |                                     Date visitDate = null;
 |  | 
 | 
												
													
														
															|  |                                     String USER_NAME = "";
 |  | 
 | 
												
													
														
															|  |                                     BigDecimal totalAmount = new BigDecimal(0.00);
 |  | 
 | 
												
													
														
															|  |                                     BigDecimal ownPay = new BigDecimal(0.00);
 |  | 
 | 
												
													
														
															|  |                                     DecimalFormat amountDf = new DecimalFormat("0.00");
 |  |                                     DecimalFormat amountDf = new DecimalFormat("0.00");
 | 
												
													
														
															|  |                                     String RATE_TYPE = "";//续方费用类别 1自费 2医保
 |  | 
 | 
												
													
														
															|  |                                     String SUM_COST =amountDf.format(Double.valueOf(waitForPay.getString("SUM_COST")));//医保支付下,sumCost=0 当作自费号处理
 |  | 
 | 
												
													
														
															|  |                                     String SUM_CHARGE =amountDf.format(Double.valueOf(waitForPay.getString("SUM_COST")));//待结算自付总费用
 |  | 
 | 
												
													
														
															|  |                                     BigDecimal INSUR_ITEM_PRICE = new BigDecimal(0);
 |  | 
 | 
												
													
														
															|  |                                     String visit_msgid = ""; //发送方报文ID【用于基线门诊挂号接口,自助机fsi.terminal.register接口】
 |  | 
 | 
												
													
														
															|  |                                     String visit_rush_msgid = ""; //发送方报文ID【用于基线门诊挂号撤销接口,自助机fsi.terminal.register.cancel接口】
 |  | 
 | 
												
													
														
															|  |                                     String VISIT_NO = ""; //门诊号【对应基线接口:ipt_otp_no】
 |  | 
 | 
												
													
														
															|  |                                     String med_type = "";//医疗类别
 |  | 
 | 
												
													
														
															|  |                                     String beginTime = "";//开始时间【挂号时间yyyy-MM-dd HH:mm:ss】
 |  | 
 | 
												
													
														
															|  |                                     String caty = "";//科别【挂号科别】
 |  | 
 | 
												
													
														
															|  |                                     String atddr_no = "";//就诊医生国家医保编码【对应基线接口:atddr_no】
 |  | 
 | 
												
													
														
															|  |                                     String dr_name = "";//科别【挂号科别】
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                     boolean newYlzRelation = false;//新的记录
 |  | 
 | 
												
													
														
															|  | 
 |  |                                     //所有订单总金额 用于二重验证
 | 
												
													
														
															|  | 
 |  |                                     BigDecimal hisAllTotalAmount = new BigDecimal(waitForPay.getString("SUM_COST"));
 | 
												
													
														
															|  | 
 |  |                                     BigDecimal allTotalAmount = new BigDecimal("0.00");
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                     if (visitDetails != null && visitDetails.size() != 0) {
 |  |                                     if (visitDetails != null && visitDetails.size() != 0) {
 | 
												
													
														
															|  |                                         JSONObject visitDetail = visitDetails.getJSONObject(0);
 |  | 
 | 
												
													
														
															|  |                                         RATE_TYPE = visitDetail.getString("RATE_TYPE");//续方费用类别 1自费 2医保
 |  | 
 | 
												
													
														
															|  |                                         // 费别是医保时,医保挂号流水号空则需发起门诊挂号
 |  | 
 | 
												
													
														
															|  |                                         if (visitDetail.get("INSUR_VISIT_NO")==null&&"2".equals(RATE_TYPE)){//医保挂号流水号:
 |  | 
 | 
												
													
														
															|  | 
 |  |                                         for (int visitDetailIndex=0;visitDetailIndex<visitDetails.size();visitDetailIndex++){
 | 
												
													
														
															|  | 
 |  |                                             JSONObject visitDetail = visitDetails.getJSONObject(visitDetailIndex);
 | 
												
													
														
															|  | 
 |  |                                             YlzMedicalRelationDO ylzMedicalRelationDO = null;
 | 
												
													
														
															|  | 
 |  |                                             List<YlzMedicalIcdDO> icdDOList = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  |                                             List<YlzMedicalMxDO> mxDOList = new ArrayList<>();
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             String prescription_code = "";//处方编码 费用明细中只有药品有处方编码,诊查费无
 | 
												
													
														
															|  | 
 |  |                                             String INSUR_VISIT_NO = "";//医保挂号流水号
 | 
												
													
														
															|  | 
 |  |                                             String deptCode = "";
 | 
												
													
														
															|  | 
 |  |                                             String deptName = "";
 | 
												
													
														
															|  | 
 |  |                                             String hisDeptCode = "";
 | 
												
													
														
															|  | 
 |  |                                             String hisDeptName = "";
 | 
												
													
														
															|  | 
 |  |                                             String collector = "";//收费人
 | 
												
													
														
															|  | 
 |  |                                             String presItemCount="";
 | 
												
													
														
															|  | 
 |  |                                             String APPLY_TIME="";//开单时间
 | 
												
													
														
															|  | 
 |  |                                             Date visitDate = null;
 | 
												
													
														
															|  | 
 |  |                                             String USER_NAME = "";
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal totalAmount = new BigDecimal(0.00);
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal ownPay = new BigDecimal(0.00);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             String RATE_TYPE = "";//续方费用类别 1自费 2医保
 | 
												
													
														
															|  | 
 |  |                                             //医保支付下,sumCost=0 当作自费号处理
 | 
												
													
														
															|  | 
 |  |                                             //待结算自付总费用
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal INSUR_ITEM_PRICE = new BigDecimal(0);
 | 
												
													
														
															|  | 
 |  |                                             String visit_msgid = ""; //发送方报文ID【用于基线门诊挂号接口,自助机fsi.terminal.register接口】
 | 
												
													
														
															|  | 
 |  |                                             String visit_rush_msgid = ""; //发送方报文ID【用于基线门诊挂号撤销接口,自助机fsi.terminal.register.cancel接口】
 | 
												
													
														
															|  | 
 |  |                                             String VISIT_NO = ""; //门诊号【对应基线接口:ipt_otp_no】
 | 
												
													
														
															|  | 
 |  |                                             String med_type = "";//医疗类别
 | 
												
													
														
															|  | 
 |  |                                             String beginTime = "";//开始时间【挂号时间yyyy-MM-dd HH:mm:ss】
 | 
												
													
														
															|  | 
 |  |                                             String caty = "";//科别【挂号科别】
 | 
												
													
														
															|  | 
 |  |                                             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)){//医保挂号流水号:
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                         }
 |  | 
 | 
												
													
														
															|  |                                         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");
 |  | 
 | 
												
													
														
															|  |                                         VISIT_NO = visitDetail.getString("VISIT_NO");
 |  | 
 | 
												
													
														
															|  |                                         med_type = visitDetail.getString("med_type");
 |  | 
 | 
												
													
														
															|  |                                         caty = visitDetail.getString("caty");
 |  | 
 | 
												
													
														
															|  |                                         atddr_no = visitDetail.getString("VISIT_IDENTITY_CARD_NO");
 |  | 
 | 
												
													
														
															|  |                                         dr_name = visitDetail.getString("VISIT_OPERATOR_NAME");
 |  | 
 | 
												
													
														
															|  |                                         deptCode = visitDetail.getString("VISIT_DEPT");
 |  | 
 | 
												
													
														
															|  |                                         deptName = visitDetail.getString("VISIT_DEPT_NAME");
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                         //收费明细
 |  | 
 | 
												
													
														
															|  |                                         JSONArray SETTLE_DETAILS = visitDetail.getJSONArray("SETTLE_DETAIL");
 |  | 
 | 
												
													
														
															|  |                                         if (SETTLE_DETAILS!=null&&SETTLE_DETAILS.size()>0) {
 |  | 
 | 
												
													
														
															|  |                                             presItemCount = SETTLE_DETAILS.size()+"";
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                             JSONObject SETTLE_DETAIL_OBJ = SETTLE_DETAILS.getJSONObject(0);
 |  | 
 | 
												
													
														
															|  |                                             String RECIPE_NO = SETTLE_DETAIL_OBJ.getString("RECIPE_NO");
 |  | 
 | 
												
													
														
															|  |                                             if (StringUtils.isBlank(prescription_code)){
 |  | 
 | 
												
													
														
															|  |                                                 prescription_code = RECIPE_NO;
 |  | 
 | 
												
													
														
															|  |                                             }
 |  |                                             }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO = ylzMedicailRelationDao.findByLog_no(prescription_code);
 |  | 
 | 
												
													
														
															|  |                                             //新的记录
 |  | 
 | 
												
													
														
															|  |                                             if (null==ylzMedicalRelationDO){
 |  | 
 | 
												
													
														
															|  |                                                 newYlzRelation = true;
 |  | 
 | 
												
													
														
															|  |                                                 ylzMedicalRelationDO = new YlzMedicalRelationDO();
 |  | 
 | 
												
													
														
															|  |                                                 ylzMedicalRelationDO.setDel(1);
 |  | 
 | 
												
													
														
															|  |                                                 ylzMedicalRelationDO.setStatus(0);
 |  | 
 | 
												
													
														
															|  |                                                 ylzMedicalRelationDO.setState(0);
 |  | 
 | 
												
													
														
															|  |                                                 ylzMedicalRelationDO =  ylzMedicailRelationDao.save(ylzMedicalRelationDO);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                                 for (int j = 0; j < SETTLE_DETAILS.size(); j++) {
 |  | 
 | 
												
													
														
															|  |                                                     SETTLE_DETAIL_OBJ = SETTLE_DETAILS.getJSONObject(j);
 |  | 
 | 
												
													
														
															|  |                                                     YlzMedicalMxDO ylzMedicalMxDO = new YlzMedicalMxDO();
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setMedicalId(ylzMedicalRelationDO.getId());//医保关联表id
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPrescriptionCode(prescription_code);//处方code
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHisDetailSn(SETTLE_DETAIL_OBJ.getString("feedetl_sn"));//his处方明细流水号
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setItemCode(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_CODE"));//医保项目编码
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setItemName(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_NAME"));//医保项目名称
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setInvoiceType(SETTLE_DETAIL_OBJ.getString("INSUR_INVOICE_TYPE_CODE"));//发票项目类别
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setSpecificationType(SETTLE_DETAIL_OBJ.getString("ITEM_SPEC"));//规格型号
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setDosageForm(SETTLE_DETAIL_OBJ.getString("PHYSIC_FORM"));//剂型
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setChargeUnit(SETTLE_DETAIL_OBJ.getString("ITEM_UNIT"));//单位
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setChargeUnitName(SETTLE_DETAIL_OBJ.getString("ITEM_UNIT_NAME"));//单位名称
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPrice(null==SETTLE_DETAIL_OBJ.get("INSUR_ITEM_PRICE")?"0.0":SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_PRICE"));//单价
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setAmount(SETTLE_DETAIL_OBJ.getString("ITEM_QUANTITY"));//数量
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setTotalMoney(amountDf.format(Double.valueOf(SETTLE_DETAIL_OBJ.getString("COST"))));//金额
 |  | 
 | 
												
													
														
															|  |                                                     totalAmount = totalAmount.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("COST")));
 |  | 
 | 
												
													
														
															|  |                                                     ownPay = ownPay.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("CHARGE")));
 |  | 
 | 
												
													
														
															|  |                                                     if (null!=SETTLE_DETAIL_OBJ.get("INSUR_ITEM_PRICE")){
 |  | 
 | 
												
													
														
															|  |                                                         INSUR_ITEM_PRICE = INSUR_ITEM_PRICE.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_PRICE")));
 |  | 
 | 
												
													
														
															|  |                                                     }
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setSingleDose(SETTLE_DETAIL_OBJ.getString("PHYSIC_DOSE"));//每次用量
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setUseFrequency(SETTLE_DETAIL_OBJ.getString("FREQUENCY"));//使用频率
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setMedicalWay(SETTLE_DETAIL_OBJ.getString("PHYSIC_USAGE"));//给药途径
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPrescriptionDate(SETTLE_DETAIL_OBJ.getDate("prescription_date"));//处方日期
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setMedicationDays(SETTLE_DETAIL_OBJ.getString("DAY_COUNT"));//执行天数
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setDeptCode(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT"));//科室编码
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setDeptName(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME"));//科室名称
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHisDeptCode(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT"));//his内部科室编码
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHisDeptName(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME"));//his内部科室名称
 |  | 
 | 
												
													
														
															|  |                                                     if (StringUtils.isBlank(hisDeptCode)){
 |  | 
 | 
												
													
														
															|  |                                                         hisDeptCode = SETTLE_DETAIL_OBJ.getString("APPLY_DEPT");
 |  | 
 | 
												
													
														
															|  |                                                     }
 |  | 
 | 
												
													
														
															|  |                                                     if (StringUtils.isBlank(APPLY_TIME)){
 |  | 
 | 
												
													
														
															|  |                                                         APPLY_TIME = SETTLE_DETAIL_OBJ.getString("APPLY_TIME");
 |  | 
 | 
												
													
														
															|  |                                                     }
 |  | 
 | 
												
													
														
															|  |                                                     if (StringUtils.isBlank(hisDeptName)){
 |  | 
 | 
												
													
														
															|  |                                                         hisDeptName = SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME");
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             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");
 | 
												
													
														
															|  | 
 |  |                                             VISIT_NO = visitDetail.getString("VISIT_NO");
 | 
												
													
														
															|  | 
 |  |                                             med_type = visitDetail.getString("med_type");
 | 
												
													
														
															|  | 
 |  |                                             caty = visitDetail.getString("caty");
 | 
												
													
														
															|  | 
 |  |                                             atddr_no = visitDetail.getString("VISIT_IDENTITY_CARD_NO");
 | 
												
													
														
															|  | 
 |  |                                             dr_name = visitDetail.getString("VISIT_OPERATOR_NAME");
 | 
												
													
														
															|  | 
 |  |                                             deptCode = visitDetail.getString("VISIT_DEPT");
 | 
												
													
														
															|  | 
 |  |                                             deptName = visitDetail.getString("VISIT_DEPT_NAME");
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             //收费明细
 | 
												
													
														
															|  | 
 |  |                                             JSONArray SETTLE_DETAILS = visitDetail.getJSONArray("SETTLE_DETAIL");
 | 
												
													
														
															|  | 
 |  |                                             if (SETTLE_DETAILS!=null&&SETTLE_DETAILS.size()>0) {
 | 
												
													
														
															|  | 
 |  |                                                 presItemCount = SETTLE_DETAILS.size()+"";
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                                 JSONObject SETTLE_DETAIL_OBJ = SETTLE_DETAILS.getJSONObject(0);
 | 
												
													
														
															|  | 
 |  |                                                 String RECIPE_NO = SETTLE_DETAIL_OBJ.getString("RECIPE_NO");
 | 
												
													
														
															|  | 
 |  |                                                 if (StringUtils.isBlank(prescription_code)){
 | 
												
													
														
															|  | 
 |  |                                                     prescription_code = RECIPE_NO;
 | 
												
													
														
															|  | 
 |  |                                                 }
 | 
												
													
														
															|  | 
 |  |                                                 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);
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                                     for (int j = 0; j < SETTLE_DETAILS.size(); j++) {
 | 
												
													
														
															|  | 
 |  |                                                         SETTLE_DETAIL_OBJ = SETTLE_DETAILS.getJSONObject(j);
 | 
												
													
														
															|  | 
 |  |                                                         YlzMedicalMxDO ylzMedicalMxDO = new YlzMedicalMxDO();
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setMedicalId(ylzMedicalRelationDO.getId());//医保关联表id
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPrescriptionCode(prescription_code);//处方code
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHisDetailSn(SETTLE_DETAIL_OBJ.getString("feedetl_sn"));//his处方明细流水号
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setItemCode(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_CODE"));//医保项目编码
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setItemName(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_NAME"));//医保项目名称
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setInvoiceType(SETTLE_DETAIL_OBJ.getString("INSUR_INVOICE_TYPE_CODE"));//发票项目类别
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setSpecificationType(SETTLE_DETAIL_OBJ.getString("ITEM_SPEC"));//规格型号
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setDosageForm(SETTLE_DETAIL_OBJ.getString("PHYSIC_FORM"));//剂型
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setChargeUnit(SETTLE_DETAIL_OBJ.getString("ITEM_UNIT"));//单位
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setChargeUnitName(SETTLE_DETAIL_OBJ.getString("ITEM_UNIT_NAME"));//单位名称
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPrice(null==SETTLE_DETAIL_OBJ.get("INSUR_ITEM_PRICE")?"0.0":SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_PRICE"));//单价
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setAmount(SETTLE_DETAIL_OBJ.getString("ITEM_QUANTITY"));//数量
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setTotalMoney(amountDf.format(Double.valueOf(SETTLE_DETAIL_OBJ.getString("COST"))));//金额
 | 
												
													
														
															|  | 
 |  |                                                         totalAmount = totalAmount.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("COST")));
 | 
												
													
														
															|  | 
 |  |                                                         ownPay = ownPay.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("CHARGE")));
 | 
												
													
														
															|  | 
 |  |                                                         if (null!=SETTLE_DETAIL_OBJ.get("INSUR_ITEM_PRICE")){
 | 
												
													
														
															|  | 
 |  |                                                             INSUR_ITEM_PRICE = INSUR_ITEM_PRICE.add(new BigDecimal(SETTLE_DETAIL_OBJ.getString("INSUR_ITEM_PRICE")));
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setSingleDose(SETTLE_DETAIL_OBJ.getString("PHYSIC_DOSE"));//每次用量
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setUseFrequency(SETTLE_DETAIL_OBJ.getString("FREQUENCY"));//使用频率
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setMedicalWay(SETTLE_DETAIL_OBJ.getString("PHYSIC_USAGE"));//给药途径
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPrescriptionDate(SETTLE_DETAIL_OBJ.getDate("prescription_date"));//处方日期
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setMedicationDays(SETTLE_DETAIL_OBJ.getString("DAY_COUNT"));//执行天数
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setDeptCode(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT"));//科室编码
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setDeptName(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME"));//科室名称
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHisDeptCode(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT"));//his内部科室编码
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHisDeptName(SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME"));//his内部科室名称
 | 
												
													
														
															|  | 
 |  |                                                         if (StringUtils.isBlank(hisDeptCode)){
 | 
												
													
														
															|  | 
 |  |                                                             hisDeptCode = SETTLE_DETAIL_OBJ.getString("APPLY_DEPT");
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                         if (StringUtils.isBlank(APPLY_TIME)){
 | 
												
													
														
															|  | 
 |  |                                                             APPLY_TIME = SETTLE_DETAIL_OBJ.getString("APPLY_TIME");
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                         if (StringUtils.isBlank(hisDeptName)){
 | 
												
													
														
															|  | 
 |  |                                                             hisDeptName = SETTLE_DETAIL_OBJ.getString("APPLY_DEPT_NAME");
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setMedicalPerName(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR_NAME"));//医疗服务人员姓名  开单医生姓名
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setMedicalPerId(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR"));//医疗服务人员证件号码  开单医生编码
 | 
												
													
														
															|  | 
 |  |                                                         if (StringUtils.isBlank(collector)){
 | 
												
													
														
															|  | 
 |  |                                                             collector = SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR");
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setLimitType(SETTLE_DETAIL_OBJ.getString("INSUR_FLAG"));//限制范围类别
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setActgDate(SETTLE_DETAIL_OBJ.getDate("fee_ocur_time"));//记帐日期
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHisItemCode(SETTLE_DETAIL_OBJ.getString("ITEM_CODE"));//HIS院内项目编码
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHisItemName(SETTLE_DETAIL_OBJ.getString("ITEM_NAME"));//HIS院内项目名称
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setClerkDays(SETTLE_DETAIL_OBJ.getDate("fee_ocur_time"));//记帐日期
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPrescriptionDate(visitDate);
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPeopleType(null);//医保服务人员类别 todo
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setDel(1);
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setCreateTime(new Date());
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setSetlMsgid(SETTLE_DETAIL_OBJ.getString("setl_msgid"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setFeeMsgid(SETTLE_DETAIL_OBJ.getString("fee_msgid"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setInsurSettleSort(SETTLE_DETAIL_OBJ.getString("INSUR_SETTLE_SORT"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setChrgBchno(SETTLE_DETAIL_OBJ.getString("chrg_bchno"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setRxCircFlag(SETTLE_DETAIL_OBJ.getString("rx_circ_flag"));
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setBilgDeptCodg(SETTLE_DETAIL_OBJ.getString("bilg_dept_codg"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setBilgDeptName(SETTLE_DETAIL_OBJ.getString("bilg_dept_name"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setBilgDrCodg(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setBilgDrName(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR_NAME"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setHospApprFlag(SETTLE_DETAIL_OBJ.getString("hosp_appr_flag"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setRxno(SETTLE_DETAIL_OBJ.getString("APPLY_NO"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalMxDO.setPsnSetlway(SETTLE_DETAIL_OBJ.getString("psn_setlway"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicailMxDao.save(ylzMedicalMxDO);
 | 
												
													
														
															|  | 
 |  |                                                         mxDOList.add(ylzMedicalMxDO);
 | 
												
													
														
															|  |                                                     }
 |  |                                                     }
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setMedicalPerName(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR_NAME"));//医疗服务人员姓名  开单医生姓名
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setMedicalPerId(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR"));//医疗服务人员证件号码  开单医生编码
 |  | 
 | 
												
													
														
															|  |                                                     if (StringUtils.isBlank(collector)){
 |  | 
 | 
												
													
														
															|  |                                                         collector = SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR");
 |  | 
 | 
												
													
														
															|  | 
 |  |                                                 }else {
 | 
												
													
														
															|  | 
 |  |                                                     List<YlzMedicalMxDO> ylzMedicalMxDOList = ylzMedicailMxDao.findByMedicalId(ylzMedicalRelationDO.getId());
 | 
												
													
														
															|  | 
 |  |                                                     mxDOList.addAll(ylzMedicalMxDOList);
 | 
												
													
														
															|  | 
 |  |                                                 }
 | 
												
													
														
															|  | 
 |  |                                             }
 | 
												
													
														
															|  | 
 |  |                                             //诊断明细
 | 
												
													
														
															|  | 
 |  |                                             JSONArray DIAGNOSIS_DETAIL = visitDetail.getJSONArray("DIAGNOSIS_DETAIL");
 | 
												
													
														
															|  | 
 |  |                                             if (DIAGNOSIS_DETAIL!=null&&DIAGNOSIS_DETAIL.size()>0){
 | 
												
													
														
															|  | 
 |  |                                                 if (!newYlzRelation){
 | 
												
													
														
															|  | 
 |  |                                                     List<YlzMedicalIcdDO> ylzMedicalIcdDOList = ylzMedicailIcdDao.findByMedicalId(ylzMedicalRelationDO.getId());
 | 
												
													
														
															|  | 
 |  |                                                     icdDOList.addAll(ylzMedicalIcdDOList);
 | 
												
													
														
															|  | 
 |  |                                                 }else {
 | 
												
													
														
															|  | 
 |  |                                                     for (int j=0;j<DIAGNOSIS_DETAIL.size();j++){
 | 
												
													
														
															|  | 
 |  |                                                         JSONObject DIAGNOSIS_DETAIL_OBJ = DIAGNOSIS_DETAIL.getJSONObject(j);
 | 
												
													
														
															|  | 
 |  |                                                         YlzMedicalIcdDO ylzMedicalIcdDO = new YlzMedicalIcdDO();
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setMedicalId(ylzMedicalRelationDO.getId());//医保关联表id
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseaseCodeIcd10(DIAGNOSIS_DETAIL_OBJ.getString("diag_code"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseaseNameIcd10(DIAGNOSIS_DETAIL_OBJ.getString("diag_name"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseaseType(DIAGNOSIS_DETAIL_OBJ.getString("diag_type"));//诊断或症状类型
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseaseOrder(DIAGNOSIS_DETAIL_OBJ.getString("diag_srt_no"));//诊断或症状序号
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setCreateTime(new Date());
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseMsgid(DIAGNOSIS_DETAIL_OBJ.getString("dise_msgid"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiagDept(DIAGNOSIS_DETAIL_OBJ.getString("diag_dept"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseDorNo(DIAGNOSIS_DETAIL_OBJ.getString("dise_dor_no"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiseDorName(DIAGNOSIS_DETAIL_OBJ.getString("dise_dor_name"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDiagTime(DIAGNOSIS_DETAIL_OBJ.getString("diag_time"));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicalIcdDO.setDel(Integer.valueOf(DIAGNOSIS_DETAIL_OBJ.getString("vali_flag")));
 | 
												
													
														
															|  | 
 |  |                                                         ylzMedicailIcdDao.save(ylzMedicalIcdDO);
 | 
												
													
														
															|  | 
 |  |                                                         icdDOList.add(ylzMedicalIcdDO);
 | 
												
													
														
															|  |                                                     }
 |  |                                                     }
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setLimitType(SETTLE_DETAIL_OBJ.getString("INSUR_FLAG"));//限制范围类别
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setActgDate(SETTLE_DETAIL_OBJ.getDate("fee_ocur_time"));//记帐日期
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHisItemCode(SETTLE_DETAIL_OBJ.getString("ITEM_CODE"));//HIS院内项目编码
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHisItemName(SETTLE_DETAIL_OBJ.getString("ITEM_NAME"));//HIS院内项目名称
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setClerkDays(SETTLE_DETAIL_OBJ.getDate("fee_ocur_time"));//记帐日期
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPrescriptionDate(visitDate);
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPeopleType(null);//医保服务人员类别 todo
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setDel(1);
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setCreateTime(new Date());
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setSetlMsgid(SETTLE_DETAIL_OBJ.getString("setl_msgid"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setFeeMsgid(SETTLE_DETAIL_OBJ.getString("fee_msgid"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setInsurSettleSort(SETTLE_DETAIL_OBJ.getString("INSUR_SETTLE_SORT"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setChrgBchno(SETTLE_DETAIL_OBJ.getString("chrg_bchno"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setRxCircFlag(SETTLE_DETAIL_OBJ.getString("rx_circ_flag"));
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setBilgDeptCodg(SETTLE_DETAIL_OBJ.getString("bilg_dept_codg"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setBilgDeptName(SETTLE_DETAIL_OBJ.getString("bilg_dept_name"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setBilgDrCodg(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setBilgDrName(SETTLE_DETAIL_OBJ.getString("APPLY_OPERATOR_NAME"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setHospApprFlag(SETTLE_DETAIL_OBJ.getString("hosp_appr_flag"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setRxno(SETTLE_DETAIL_OBJ.getString("APPLY_NO"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalMxDO.setPsnSetlway(SETTLE_DETAIL_OBJ.getString("psn_setlway"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicailMxDao.save(ylzMedicalMxDO);
 |  | 
 | 
												
													
														
															|  |                                                     mxDOList.add(ylzMedicalMxDO);
 |  | 
 | 
												
													
														
															|  |                                                 }
 |  |                                                 }
 | 
												
													
														
															|  |                                             }else {
 |  | 
 | 
												
													
														
															|  |                                                 List<YlzMedicalMxDO> ylzMedicalMxDOList = ylzMedicailMxDao.findByMedicalId(ylzMedicalRelationDO.getId());
 |  | 
 | 
												
													
														
															|  |                                                 mxDOList.addAll(ylzMedicalMxDOList);
 |  | 
 | 
												
													
														
															|  |                                             }
 |  |                                             }
 | 
												
													
														
															|  |                                         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                         //诊断明细
 |  | 
 | 
												
													
														
															|  |                                         JSONArray DIAGNOSIS_DETAIL = visitDetail.getJSONArray("DIAGNOSIS_DETAIL");
 |  | 
 | 
												
													
														
															|  |                                         if (DIAGNOSIS_DETAIL!=null&&DIAGNOSIS_DETAIL.size()>0){
 |  | 
 | 
												
													
														
															|  |                                             if (!newYlzRelation){
 |  | 
 | 
												
													
														
															|  |                                                 List<YlzMedicalIcdDO> ylzMedicalIcdDOList = ylzMedicailIcdDao.findByMedicalId(ylzMedicalRelationDO.getId());
 |  | 
 | 
												
													
														
															|  |                                                 icdDOList.addAll(ylzMedicalIcdDOList);
 |  | 
 | 
												
													
														
															|  |                                             }else {
 |  | 
 | 
												
													
														
															|  |                                                 for (int j=0;j<DIAGNOSIS_DETAIL.size();j++){
 |  | 
 | 
												
													
														
															|  |                                                     JSONObject DIAGNOSIS_DETAIL_OBJ = DIAGNOSIS_DETAIL.getJSONObject(j);
 |  | 
 | 
												
													
														
															|  |                                                     YlzMedicalIcdDO ylzMedicalIcdDO = new YlzMedicalIcdDO();
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setMedicalId(ylzMedicalRelationDO.getId());//医保关联表id
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseaseCodeIcd10(DIAGNOSIS_DETAIL_OBJ.getString("diag_code"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseaseNameIcd10(DIAGNOSIS_DETAIL_OBJ.getString("diag_name"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseaseType(DIAGNOSIS_DETAIL_OBJ.getString("diag_type"));//诊断或症状类型
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseaseOrder(DIAGNOSIS_DETAIL_OBJ.getString("diag_srt_no"));//诊断或症状序号
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setCreateTime(new Date());
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseMsgid(DIAGNOSIS_DETAIL_OBJ.getString("dise_msgid"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiagDept(DIAGNOSIS_DETAIL_OBJ.getString("diag_dept"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseDorNo(DIAGNOSIS_DETAIL_OBJ.getString("dise_dor_no"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiseDorName(DIAGNOSIS_DETAIL_OBJ.getString("dise_dor_name"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDiagTime(DIAGNOSIS_DETAIL_OBJ.getString("diag_time"));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicalIcdDO.setDel(Integer.valueOf(DIAGNOSIS_DETAIL_OBJ.getString("vali_flag")));
 |  | 
 | 
												
													
														
															|  |                                                     ylzMedicailIcdDao.save(ylzMedicalIcdDO);
 |  | 
 | 
												
													
														
															|  |                                                     icdDOList.add(ylzMedicalIcdDO);
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             if (newYlzRelation){
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setLogNo(VISIT_NO);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setOrgCode(orgCode);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setRegionCode("350200");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setIdcard(null);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setName(USER_NAME);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setCertType("01");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalMode("10");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalType("11");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setCardNo(cardNo);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setHisSerial(INSUR_VISIT_NO);//医保挂号流水号
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setHisSettleNo(INSUR_VISIT_NO);//his結算流水号
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDeptCode(deptCode);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDeptName(deptName);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setHisDeptCode(hisDeptCode);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setHisDeptName(hisDeptName);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setCollector(collector);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setEmergencySign("0");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setTraumaSign("0");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDate(visitDate);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setItemCount(mxDOList.size()+"");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setTotalAmount(amountDf.format(totalAmount));
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setPreCharges("0");//预扣费金额
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDataSource("53");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setPreCount(presItemCount);//处方项目数
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDoctorLevel("02");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setRelationCode(prescription_code);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setCreateTime(new Date());
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalPrice("0");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalState(0);
 | 
												
													
														
															|  | 
 |  |                                                 if ("1".equals(RATE_TYPE)){
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setOwnPay(amountDf.format(totalAmount));//自费金额
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setPersonCash(amountDf.format(totalAmount));//自费金额
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setPersonAccount("0.0");
 | 
												
													
														
															|  | 
 |  |                                                 }else {
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setOwnPay("0");//自费
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setPersonCash("0");
 | 
												
													
														
															|  | 
 |  |                                                     ylzMedicalRelationDO.setPersonAccount(amountDf.format(totalAmount));
 | 
												
													
														
															|  |                                                 }
 |  |                                                 }
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalPrice("0");
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalState("1".equals(RATE_TYPE)?0:1);//0自费 1医保
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedType(med_type);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setCaty(caty);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setApplyTime(APPLY_TIME);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setAtddrNo(atddr_no);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setDrName(dr_name);
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setVisitMsgid(visit_msgid);
 | 
												
													
														
															|  |                                             }
 |  |                                             }
 | 
												
													
														
															|  |                                         }
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                     }
 |  | 
 | 
												
													
														
															|  |                                     if (newYlzRelation){
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setLogNo(prescription_code);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setOrgCode(orgCode);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setRegionCode("350200");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setIdcard(null);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setName(USER_NAME);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setCertType("01");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalMode("10");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalType("11");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setCardNo(cardNo);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setHisSerial(INSUR_VISIT_NO);//医保挂号流水号
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setHisSettleNo(INSUR_VISIT_NO);//his結算流水号
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDeptCode(deptCode);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDeptName(deptName);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setHisDeptCode(hisDeptCode);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setHisDeptName(hisDeptName);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setCollector(collector);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setEmergencySign("0");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setTraumaSign("0");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDate(visitDate);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setItemCount(mxDOList.size()+"");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setTotalAmount(SUM_COST);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setPreCharges("0");//预扣费金额
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDataSource("53");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setPreCount(presItemCount);//处方项目数
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDoctorLevel("02");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setRelationCode(VISIT_NO);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setCreateTime(new Date());
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalPrice("0");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalState(0);
 |  | 
 | 
												
													
														
															|  |                                         if ("1".equals(RATE_TYPE)){
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setOwnPay(SUM_CHARGE);//自费金额
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setPersonCash(SUM_CHARGE);//自费金额
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setPersonAccount("0.0");
 |  | 
 | 
												
													
														
															|  |                                         }else {
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setOwnPay("0");//自费
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setPersonCash("0");
 |  | 
 | 
												
													
														
															|  |                                             ylzMedicalRelationDO.setPersonAccount(SUM_CHARGE);
 |  | 
 | 
												
													
														
															|  |                                         }
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalPrice("0");
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalState("1".equals(RATE_TYPE)?0:1);//0自费 1医保
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedType(med_type);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setCaty(caty);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setApplyTime(APPLY_TIME);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setAtddrNo(atddr_no);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setDrName(dr_name);
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setVisitMsgid(visit_msgid);
 |  | 
 | 
												
													
														
															|  |                                     }
 |  | 
 | 
												
													
														
															|  |                                     if (ylzMedicalRelationDO.getStatus()!=1){
 |  | 
 | 
												
													
														
															|  |                                         String balance =null;
 |  | 
 | 
												
													
														
															|  |                                         JSONObject balanceObj = jwService.getSickDispBalance(ylzMedicalRelationDO.getCardNo(),ylzMedicalRelationDO.getOrgCode());
 |  | 
 | 
												
													
														
															|  |                                         if (balanceObj.getString("status").equalsIgnoreCase("200")) {//i健康返回值
 |  | 
 | 
												
													
														
															|  |                                             JSONObject responseDataTmp = balanceObj.getJSONObject("data");
 |  | 
 | 
												
													
														
															|  |                                             String codeTMP = responseDataTmp.getString("CODE");//智业返回值 0失败 1成功
 |  | 
 | 
												
													
														
															|  |                                             if (codeTMP.equalsIgnoreCase("1")) {
 |  | 
 | 
												
													
														
															|  |                                                 JSONArray byRefParaData = responseDataTmp.getJSONArray("byRefParaData");
 |  | 
 | 
												
													
														
															|  |                                                 if (byRefParaData.size()>0){
 |  | 
 | 
												
													
														
															|  |                                                     balance = byRefParaData.getJSONObject(0).getString("dispBalance");
 |  | 
 | 
												
													
														
															|  | 
 |  |                                             if (ylzMedicalRelationDO.getStatus()!=1){
 | 
												
													
														
															|  | 
 |  |                                                 String balance =null;
 | 
												
													
														
															|  | 
 |  |                                                 JSONObject balanceObj = jwService.getSickDispBalance(ylzMedicalRelationDO.getCardNo(),ylzMedicalRelationDO.getOrgCode());
 | 
												
													
														
															|  | 
 |  |                                                 if (balanceObj.getString("status").equalsIgnoreCase("200")) {//i健康返回值
 | 
												
													
														
															|  | 
 |  |                                                     JSONObject responseDataTmp = balanceObj.getJSONObject("data");
 | 
												
													
														
															|  | 
 |  |                                                     String codeTMP = responseDataTmp.getString("CODE");//智业返回值 0失败 1成功
 | 
												
													
														
															|  | 
 |  |                                                     if (codeTMP.equalsIgnoreCase("1")) {
 | 
												
													
														
															|  | 
 |  |                                                         JSONArray byRefParaData = responseDataTmp.getJSONArray("byRefParaData");
 | 
												
													
														
															|  | 
 |  |                                                         if (byRefParaData.size()>0){
 | 
												
													
														
															|  | 
 |  |                                                             balance = byRefParaData.getJSONObject(0).getString("dispBalance");
 | 
												
													
														
															|  | 
 |  |                                                         }
 | 
												
													
														
															|  | 
 |  |                                                     }
 | 
												
													
														
															|  |                                                 }
 |  |                                                 }
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setBalance(balance);//预缴金余额
 | 
												
													
														
															|  |                                             }
 |  |                                             }
 | 
												
													
														
															|  | 
 |  |                                             if (1==ylzMedicalRelationDO.getMedicalState()&&0.0==Double.valueOf(ylzMedicalRelationDO.getTotalAmount())){
 | 
												
													
														
															|  | 
 |  |                                                 //费用为0的医保结算也需要当作自费处理
 | 
												
													
														
															|  | 
 |  |                                                 ylzMedicalRelationDO.setMedicalState(0);
 | 
												
													
														
															|  | 
 |  |                                             }
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal b1 = new BigDecimal(ylzMedicalRelationDO.getPersonCash());//个人现金支付金额
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal b2 = new BigDecimal(ylzMedicalRelationDO.getPersonAccount());//个人账户支付金额
 | 
												
													
														
															|  | 
 |  |                                             BigDecimal b3 = new BigDecimal(ylzMedicalRelationDO.getMedicalPrice());//医保基金总额
 | 
												
													
														
															|  | 
 |  |                                             Double totalPirce=b1.add(b2).add(b3).doubleValue();
 | 
												
													
														
															|  | 
 |  |                                             logger.info("总费用:"+totalPirce);
 | 
												
													
														
															|  | 
 |  |                                             if (totalPirce!=Double.parseDouble(ylzMedicalRelationDO.getTotalAmount())){
 | 
												
													
														
															|  | 
 |  |                                                 throw new Exception("金额不对无法结算");
 | 
												
													
														
															|  | 
 |  |                                             }
 | 
												
													
														
															|  | 
 |  |                                             allTotalAmount = allTotalAmount.add(new BigDecimal(ylzMedicalRelationDO.getTotalAmount()));
 | 
												
													
														
															|  | 
 |  |                                             ylzMedicailRelationDao.save(ylzMedicalRelationDO);
 | 
												
													
														
															|  | 
 |  |                                             ylzMedicalRelationDO.setYlzMedicalIcdDOList(icdDOList);
 | 
												
													
														
															|  | 
 |  |                                             ylzMedicalRelationDO.setYlzMedicalMxDOList(mxDOList);
 | 
												
													
														
															|  | 
 |  |                                             result.add(ylzMedicalRelationDO);
 | 
												
													
														
															|  |                                         }
 |  |                                         }
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setBalance(balance);//预缴金余额
 |  | 
 | 
												
													
														
															|  |                                     }
 |  | 
 | 
												
													
														
															|  |                                     if (1==ylzMedicalRelationDO.getMedicalState()&&0.0==Double.valueOf(ylzMedicalRelationDO.getTotalAmount())){
 |  | 
 | 
												
													
														
															|  |                                         //费用为0的医保结算也需要当作自费处理
 |  | 
 | 
												
													
														
															|  |                                         ylzMedicalRelationDO.setMedicalState(0);
 |  | 
 | 
												
													
														
															|  |                                     }
 |  |                                     }
 | 
												
													
														
															|  |                                     BigDecimal b1 = new BigDecimal(ylzMedicalRelationDO.getPersonCash());//个人现金支付金额
 |  | 
 | 
												
													
														
															|  |                                     BigDecimal b2 = new BigDecimal(ylzMedicalRelationDO.getPersonAccount());//个人账户支付金额
 |  | 
 | 
												
													
														
															|  |                                     BigDecimal b3 = new BigDecimal(ylzMedicalRelationDO.getMedicalPrice());//医保基金总额
 |  | 
 | 
												
													
														
															|  |                                     Double totalPirce=b1.add(b2).add(b3).doubleValue();
 |  | 
 | 
												
													
														
															|  |                                     logger.info("总费用:"+totalPirce);
 |  | 
 | 
												
													
														
															|  |                                     if (totalPirce!=Double.parseDouble(ylzMedicalRelationDO.getTotalAmount())){
 |  | 
 | 
												
													
														
															|  | 
 |  |                                     if (hisAllTotalAmount.compareTo(allTotalAmount)!=0){
 | 
												
													
														
															|  |                                         throw new Exception("金额不对无法结算");
 |  |                                         throw new Exception("金额不对无法结算");
 | 
												
													
														
															|  |                                     }
 |  |                                     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                     ylzMedicailRelationDao.save(ylzMedicalRelationDO);
 |  | 
 | 
												
													
														
															|  |                                     ylzMedicalRelationDO.setYlzMedicalIcdDOList(icdDOList);
 |  | 
 | 
												
													
														
															|  |                                     ylzMedicalRelationDO.setYlzMedicalMxDOList(mxDOList);
 |  | 
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |                                     result.add(ylzMedicalRelationDO);
 |  | 
 | 
												
													
														
															|  |                                 }
 |  |                                 }
 | 
												
													
														
															|  |                             }
 |  |                             }
 | 
												
													
														
															|  |                         }
 |  |                         }
 |