Browse Source

代码修改

LAPTOP-KB9HII50\70708 1 week ago
parent
commit
7893653c57

+ 3 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/consult/SysDictEndpoint.java

@ -160,10 +160,12 @@ public class SysDictEndpoint extends EnvelopRestEndpoint {
    public Envelop findByHosAndDict(
            @ApiParam(name = "hospital", value = "医院编码", required = false)
            @RequestParam(value = "hospital", required = false) String hospital,
            @ApiParam(name = "filter", value = "是否过滤空值 1是0否", required = false)
            @RequestParam(value = "filter", required = false) String filter,
            @ApiParam(name = "dictName", value = "字典名称", required = true)
            @RequestParam(value = "dictName", required = true) String dictName ) throws Exception {
        try {
            List<Map<String, Object>> list = sysDictService.findByHosAndDict(hospital, dictName);
            List<Map<String, Object>> list = sysDictService.findByHosAndDict(hospital, dictName,filter);
            return success("查询成功",list);
        }catch (Exception e){
            return failedException(e);

+ 1 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/patient/PatientNoLoginEndPoint.java

@ -418,7 +418,7 @@ public class PatientNoLoginEndPoint extends EnvelopRestEndpoint {
        try {
            List<Map<String, Object>> list = sysDictService.findByHosAndDict(hospital, dictName);
            List<Map<String, Object>> list = sysDictService.findByHosAndDict(hospital, dictName,null);
            return success("查询成功",list);
        } catch (Exception e){
            return  failedException2(e);

+ 5 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/SysDictService.java

@ -87,7 +87,7 @@ public class SysDictService {
    public List<Map<String, Object>> findByHosAndDict(String hospital, String dictName){
    public List<Map<String, Object>> findByHosAndDict(String hospital, String dictName,String filter){
        Map<String,Object> params = new HashedMap();
        String sql ="SELECT " +
                " a.id AS \"id\", " +
@ -105,6 +105,10 @@ public class SysDictService {
            sql+=" AND a.dict_name =:dictName";
            params.put("dictName",dictName);
        }
        if("1".equals(filter)){
            sql += " and dict_code is not null";
        }
        sql += " order by sort";
        List<Map<String, Object>> list = hibenateUtils.createSQLQuery(sql, params);
        return  list;
    }

+ 30 - 22
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/rehabilitation/service/SynchronizePatientService.java

@ -106,10 +106,12 @@ public class SynchronizePatientService  {
        String hisPid = infoDO.getHisPid();//his居民id
        JSONArray cardList = null;
        if(StringUtils.isBlank(hisPid)){
            cardList = dsyyPrescriptionService.findCardNo(idcard);
        }
        BasePatientDO patient = null;
        if(StringUtils.isBlank(infoDO.getPatient())){
            List<BasePatientDO> patientList = patientDao.getPatientByIdcard(idcard);//获取患者信息
            cardList = dsyyPrescriptionService.findCardNo(idcard);
            if (patientList.size() == 0) {
                //未找到居民,从his视图添加居民
                patient = dsyyPrescriptionService.addPaitentByIdcard(cardList,idcard,name);
@ -147,33 +149,35 @@ public class SynchronizePatientService  {
        JSONObject jaMzbl = new JSONObject();
        JSONObject jaCy = new JSONObject();
        String eventType = infoDO.getEventType();//1门诊 2住院
        boolean eventTypeFlag = true;
        try {
            if(StringUtils.isBlank(eventType)){
            if(StringUtils.isBlank(hisPid)){
                for (int i=0;i<cardList.size();i++){
                    JSONObject tmp = cardList.getJSONObject(i);
                    String SICK_ID = tmp.getString("SICK_ID");
                    String CARD_NO = tmp.getString("CARD_NO");
                    String LXDH = tmp.getString("LXDH");
                    //门诊病历
                    if(StringUtils.isBlank(eventType)){
                    if("1".equals(eventType)){
                        String mzbl = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWMZBL-014",SICK_ID,conNo,1,1);
                        if(StringUtils.isNotBlank(mzbl)&&!"[]".equals(mzbl)){
                            jaMzbl = JSONArray.parseArray(mzbl).getJSONObject(0);
                            eventType = "1";
                            hisPid = SICK_ID;
                            ssc = CARD_NO;
                            mobile = LXDH;
                            eventTypeFlag = false;
                            break;
                        }
                    }
                    if(StringUtils.isBlank(eventType)){
                    }else {
                        //出院小结
                        String cyxj = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWCYXJ-013",SICK_ID,conNo,1,1);
                        if(StringUtils.isNotBlank(cyxj)&&!"[]".equals(cyxj)){
                            jaCy = JSONArray.parseArray(cyxj).getJSONObject(0);
                            eventType = "2";
                            hisPid = SICK_ID;
                            ssc = CARD_NO;
                            mobile = LXDH;
                            eventTypeFlag = false;
                            break;
                        }
                    }
                }
@ -181,18 +185,20 @@ public class SynchronizePatientService  {
                String mzbl = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWMZBL-014",hisPid,conNo,1,1);
                if(StringUtils.isNotBlank(mzbl)&&!"[]".equals(mzbl)){
                    jaMzbl = JSONArray.parseArray(mzbl).getJSONObject(0);
                    eventTypeFlag = false;
                }
            }else if("2".equals(eventType)){
                String cyxj = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWCYXJ-013",hisPid,conNo,1,1);
                if(StringUtils.isNotBlank(cyxj)&&!"[]".equals(cyxj)){
                    jaCy = JSONArray.parseArray(cyxj).getJSONObject(0);
                    eventTypeFlag = false;
                }
            }
        }catch (Exception e){
            e.printStackTrace();
            return "获取患者无门诊病历/患者无出院小结失败";
        }
        if(StringUtils.isBlank(eventType)){
        if(eventTypeFlag){
            infoDO.setStatus(3);
            rehabilitationPatientInfoDao.save(infoDO);
            return "患者无门诊病历或患者无出院小结";
@ -203,8 +209,9 @@ public class SynchronizePatientService  {
        if(StringUtils.isNotBlank(mobile)){
            infoDO.setMobile(mobile);
        }
        infoDO.setHisPid(hisPid);
        infoDO.setEventType(eventType);
        if(StringUtils.isNotBlank(hisPid)){
            infoDO.setHisPid(hisPid);
        }
        String dept = "科室";
        String deptName = null;
@ -455,8 +462,6 @@ public class SynchronizePatientService  {
    //康复管理自动下转
    public StringBuilder synchronizePation(String type) throws Exception {
        StringBuilder results = new StringBuilder("居民下转\n");
        Date nowDate = new Date();
//        String preTimeStr = DateUtil.dateToStrShort(DateUtil.getPreDays(nowDate,-30));
        String preTimeStr = DateUtil.getStringDateShort();
        String sql = "";
        if (StringUtils.isBlank(type)){//为空
@ -505,6 +510,13 @@ public class SynchronizePatientService  {
            String cardNo = json.getString("cardNo");
            String conNo = json.getString("conNo");//就诊次数
            String visitNo = json.getString("visitNo");//就诊号
            String settle_mode = json.getString("settle_mode");//0表示门诊;1表示住院
            if(StringUtils.isBlank(settle_mode)){
                re.setStatus("-1");
                basePatientDischargeRecordDao.save(re);
                continue;
            }
            String eventType = "0".equals(settle_mode)?"1":"2";//1门诊 2住院
            //创建下转记录表
            RehabilitationPatientInfoDO infoDO = rehabilitationPatientInfoDao.findByVisitNo(idcard,conNo,visitNo);
            if(infoDO==null){
@ -518,6 +530,7 @@ public class SynchronizePatientService  {
                infoDO.setConNo(conNo);
                infoDO.setVisitNo(visitNo);
                infoDO.setSignStatus(0);
                infoDO.setEventType(eventType);
                infoDO.setCrzq(DateUtil.dateToStrLong(re.getCreateTime()));
                infoDO.setDischargeRecordId(re.getId());
                rehabilitationPatientInfoDao.save(infoDO);
@ -563,9 +576,7 @@ public class SynchronizePatientService  {
                patientDao.save(patient);
            }
            infoDO.setSex(patient.getSex());
//            infoDO.setMobile(patient.getMobile());
            infoDO.setPatient(patient.getId());
            infoDO.setIdcard(patient.getIdcard());
            String ssc = null;
            String mobile = null;
@ -574,7 +585,6 @@ public class SynchronizePatientService  {
            JSONObject jaMzbl = new JSONObject();
            JSONObject jaCy = new JSONObject();
            String hisPid = null;
            String eventType = "";//1门诊 2住院
            try {
                for (int i=0;i<cardList.size();i++){
                    JSONObject tmp = cardList.getJSONObject(i);
@ -582,26 +592,25 @@ public class SynchronizePatientService  {
                    String CARD_NO = tmp.getString("CARD_NO");
                    String LXDH = tmp.getString("LXDH");
                    //门诊病历
                    if(StringUtils.isBlank(eventType)){
                    if("1".equals(eventType)){
                        String mzbl = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWMZBL-014",SICK_ID,conNo,1,1);
                        if(StringUtils.isNotBlank(mzbl)&&!"[]".equals(mzbl)){
                            jaMzbl = JSONArray.parseArray(mzbl).getJSONObject(0);
                            //判断门诊病历是否下转当天的数据
                            eventType = "1";
                            hisPid = SICK_ID;
                            ssc = CARD_NO;
                            mobile = LXDH;
                            break;
                        }
                    }
                    if(StringUtils.isBlank(eventType)){
                    }else {
                        //出院小结
                        String cyxj = dsyyPrescriptionService.selectReportInfo("JHIDS-USD-HLWCYXJ-013",SICK_ID,conNo,1,1);
                        if(StringUtils.isNotBlank(cyxj)&&!"[]".equals(cyxj)){
                            jaCy = JSONArray.parseArray(cyxj).getJSONObject(0);
                            eventType = "2";
                            hisPid = SICK_ID;
                            ssc = CARD_NO;
                            mobile = LXDH;
                            break;
                        }
                    }
                }
@ -609,7 +618,7 @@ public class SynchronizePatientService  {
            }catch (Exception e){
                e.printStackTrace();
            }
            if(StringUtils.isBlank(eventType)){
            if(StringUtils.isBlank(hisPid)){
                infoDO.setStatus(3);
                rehabilitationPatientInfoDao.save(infoDO);
                results.append("患者无门诊病历或患者无出院小结\n");
@ -618,7 +627,6 @@ public class SynchronizePatientService  {
            infoDO.setSsc(ssc);
            infoDO.setMobile(mobile);
            infoDO.setHisPid(hisPid);
            infoDO.setEventType(eventType);
            String dept = "科室";
            String deptName = null;