Browse Source

流程初始化

吴世龙 3 years ago
parent
commit
7e1006d356

+ 12 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/orderLogProcess/OrderLogProcessController.java

@ -96,4 +96,16 @@ public class OrderLogProcessController extends BaseController {
        }
    }
    @RequestMapping(value = "initialize",method = RequestMethod.POST)
    @ApiOperation(value = "预警流程初始化")
    public String initialize(){
        try {
            easervice.initialize();
            return write(200,"成功");
        } catch (Exception e) {
            error(e);
            return errorResult(e);
        }
    }
}

+ 92 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/assistance/EmergencyAssistanceService.java

@ -1511,5 +1511,97 @@ public class EmergencyAssistanceService extends BaseJpaService<EmergencyAssistan
        return 1;
    }
    @Transactional(rollbackFor = Exception.class)
    public void initialize(){
        String sql ="SELECT DISTINCT o.id AS id,o.doctor AS doctor,o.doctor_name AS doctorName,o.`status` AS status, DATE_FORMAT(o.create_time,'%Y-%m-%d %H:%i:%s') AS createTime,DATE_FORMAT(o.update_time,'%Y-%m-%d %H:%i:%s') as updateTime,o.patient AS patient,o.patient_name AS patientName FROM base_emergency_assistance_order o LEFT JOIN base_emergency_warn_conclusion c ON o.id=c.order_id  " +
                "  UNION SELECT DISTINCT o.id AS id,o.doctor AS doctor,o.doctor_name AS doctorName,o.`status` AS status,DATE_FORMAT(o.create_time,'%Y-%m-%d %H:%i:%s') AS createTime,DATE_FORMAT(o.update_time,'%Y-%m-%d %H:%i:%s') as updateTime,o.patient AS patient,o.patient_name AS patientName FROM base_security_monitoring_order o LEFT JOIN base_emergency_warn_conclusion c ON o.id=c.order_id";
        List<Map<String, Object>> emeList = jdbcTemplate.queryForList(sql);
         List<BaseEmergencyWarnLogDO> list =new ArrayList<>();
         List<EmergencyWarnConclusionDO> listC = new ArrayList<>();
        for (Map<String, Object> map : emeList) {
            BaseEmergencyWarnLogDO baseEmergencyWarnLogDO = new BaseEmergencyWarnLogDO();
            String sqlLog = "SELECT * FROM base_emergency_warn_log WHERE order_id = '"+map.get("id")+"' AND (type IS NULL OR  type = '')";
            List<Map<String, Object>> logList = jdbcTemplate.queryForList(sqlLog);
            if (logList.size()<=0){
                switch (map.get("status").toString()){
                    case "0" :
                        //小结完成
                        baseEmergencyWarnLogDO.setType(5);
                        baseEmergencyWarnLogDO.setCreateTime(DateUtil.strToDateLong(map.get("createTime").toString()));
                        baseEmergencyWarnLogDO.setContent("完成服务小结");
                        baseEmergencyWarnLogDO.setUserType(2);
                        baseEmergencyWarnLogDO.setUserCode(map.get("doctor").toString());
                        baseEmergencyWarnLogDO.setUserName(map.get("doctorName").toString());
                        baseEmergencyWarnLogDO.setOrderId(map.get("id").toString());
                        list.add(baseEmergencyWarnLogDO);
                        baseEmergencyWarnLogDO = new BaseEmergencyWarnLogDO();
                        //已知悉
                        baseEmergencyWarnLogDO.setType(1);
                        baseEmergencyWarnLogDO.setCreateTime(DateUtil.strToDate(map.get("createTime").toString()));
                        baseEmergencyWarnLogDO.setContent("已知悉");
                        baseEmergencyWarnLogDO.setUserType(2);
                        baseEmergencyWarnLogDO.setUserCode(map.get("doctor").toString());
                        baseEmergencyWarnLogDO.setUserName(map.get("doctorName").toString());
                        baseEmergencyWarnLogDO.setOrderId(map.get("id").toString());
                        list.add(baseEmergencyWarnLogDO);
                        break;
                    case "-1":    //取消
                        baseEmergencyWarnLogDO.setType(6);
                        baseEmergencyWarnLogDO.setCreateTime(DateUtil.strToDate(map.get("updateTime").toString()));
                        baseEmergencyWarnLogDO.setContent("已取消");
                        baseEmergencyWarnLogDO.setUserType(1);
                        baseEmergencyWarnLogDO.setUserCode(map.get("patient").toString());
                        baseEmergencyWarnLogDO.setUserName(map.get("patientName").toString());
                        baseEmergencyWarnLogDO.setOrderId(map.get("id").toString());
                        list.add(baseEmergencyWarnLogDO);
                        break;
                    case "-2":  //误报警
                        String sqlsign = "SELECT sign_doctor_code AS signDoctorCode,sign_doctor_name AS signDoctorName FROM wlyy_sign_family WHERE patient = '"+map.get("patient").toString()+"' LIMIT 1";
                        List<Map<String, Object>> maps = jdbcTemplate.queryForList(sqlsign);
                        String signCode = "";
                        String signName = "";
                        if (maps.size()<=0) {
                             signCode = "";
                             signName = "";
                        }else {
                            signCode = maps.get(0).get("signDoctorCode").toString();
                            signName = maps.get(0).get("signDoctorName").toString();
                        }
                        //创建小结
                        String countSql = "SELECT COUNT(id) FROM base_emergency_warn_conclusion WHERE order_id = '"+map.get("id").toString()+"'";
                        List<Map<String, Object>> countList = jdbcTemplate.queryForList(countSql);
                        if (countList.size()<=0) {
                            EmergencyWarnConclusionDO emergencyWarnConclusionDO = new EmergencyWarnConclusionDO();
                            emergencyWarnConclusionDO.setOrderId(map.get("id").toString());
                            emergencyWarnConclusionDO.setConclusion("误报警!");
                            emergencyWarnConclusionDO.setPatient(map.get("patient").toString());
                            emergencyWarnConclusionDO.setPatientName(map.get("patientName").toString());
                            emergencyWarnConclusionDO.setDoctor(signCode);
                            emergencyWarnConclusionDO.setDoctorName(signName);
                            emergencyWarnConclusionDO.setCreateTime(DateUtil.strToDate(map.get("updateTime").toString()));
                            emergencyWarnConclusionDO.setCreateUser(signCode);
                            emergencyWarnConclusionDO.setCreateUserName(signName);
                            emergencyWarnConclusionDO.setEmergencyReason(3);
                            emergencyWarnConclusionDO.setEmergencyTreatmentStatus(3);
                            listC.add(emergencyWarnConclusionDO);
                        }
                        //完成服务小结
                        baseEmergencyWarnLogDO.setType(5);
                        baseEmergencyWarnLogDO.setCreateTime(DateUtil.strToDate(map.get("createTime").toString()));
                        baseEmergencyWarnLogDO.setContent("完成服务小结");
                        baseEmergencyWarnLogDO.setUserType(1);
                        baseEmergencyWarnLogDO.setUserCode(signCode);
                        baseEmergencyWarnLogDO.setUserName(signName);
                        baseEmergencyWarnLogDO.setOrderId(map.get("id").toString());
                        list.add(baseEmergencyWarnLogDO);
                        break;
                }
            }
        }
        emergencyWarnConclusionDao.save(listC);
        logDao.save(list);
    }
}