Sfoglia il codice sorgente

Merge branch 'dev' of huangwenjie/wlyy2.0 into dev

huangwenjie 5 anni fa
parent
commit
482abae54b

+ 52 - 14
business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

@ -14,11 +14,16 @@ import com.yihu.jw.entity.base.score.BaseEvaluateDO;
import com.yihu.jw.entity.base.score.BaseEvaluateScoreDO;
import com.yihu.jw.entity.hospital.consult.WlyyHospitalSysDictDO;
import com.yihu.jw.entity.hospital.consult.WlyyHospitalWaitingRoomDO;
import com.yihu.jw.entity.hospital.httplog.WlyyHttpLogDO;
import com.yihu.jw.entity.hospital.mapping.DoctorMappingDO;
import com.yihu.jw.entity.hospital.prescription.WlyyOutpatientDO;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateDao;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateScoreDao;
import com.yihu.jw.hospital.consult.dao.HospitalWaitingRoomDao;
import com.yihu.jw.hospital.httplog.dao.WlyyHttpLogDao;
import com.yihu.jw.hospital.mapping.service.DoctorMappingService;
import com.yihu.jw.hospital.prescription.dao.OutpatientDao;
import com.yihu.jw.hospital.prescription.service.entrance.EntranceService;
import com.yihu.jw.im.dao.ConsultDao;
import com.yihu.jw.im.dao.ConsultTeamDao;
import com.yihu.jw.im.dao.ConsultTeamDoctorDao;
@ -121,6 +126,9 @@ public class ImService {
	@Value("${fastDFS.fastdfs_file_url}")
	private String fastdfs_file_url;
	
	@Value("${demo.flag}")
	private boolean demoFlag;
	
	@Autowired
	private JdbcTemplate jdbcTemplate;
	
@ -130,6 +138,13 @@ public class ImService {
	@Autowired
	private OutpatientDao outpatientDao;
	
	@Autowired
	private EntranceService entranceService;
	@Autowired
	private DoctorMappingService doctorMappingService;
	@Autowired
	private WlyyHttpLogDao wlyyHttpLogDao;
	
	
	
	/**
@ -877,13 +892,45 @@ public class ImService {
	public JSONObject addPrescriptionConsult(String outpatientCode, String patient,String doctorCode, ConsultTeamDo ct, String reason, Integer type) throws Exception {
		
		synchronized (outpatientCode.intern()) {
			
			//1、获取his就诊记录详情(保存续方表、药品续方信息表、续方疾病类型表)
			WlyyOutpatientDO wlyyOutpatientDO = outpatientDao.findOne(outpatientCode);
			
			//2. 调用HIS挂号接口---START
			DoctorMappingDO doctorMappingDO = doctorMappingService.findMappingCode(doctorCode,wlyyOutpatientDO.getHospital());
			if(doctorMappingDO==null){
				throw new RuntimeException("未找到医生映射信息");
			}
			
			net.sf.json.JSONObject rs = entranceService.BS10111(wlyyOutpatientDO.getCardNo(),doctorMappingDO.getMappingCode(),wlyyOutpatientDO.getDept(),null,wlyyOutpatientDO.getWinNo(),demoFlag);
			String rsCode = (String)rs.get("@RESULT");
			if("0".equals(rsCode)){
				//存储挂号号
				String serialNo = (String)rs.get("serial_no");
				wlyyOutpatientDO.setRegisterNo(serialNo);
				String conNo = (String)rs.get("@times");
				wlyyOutpatientDO.setConNo(conNo);
			}
			
			//保存日志
			WlyyHttpLogDO log = new WlyyHttpLogDO();
			log.setCode("registerOutPatient");
			log.setName("挂号");
			log.setPatient(wlyyOutpatientDO.getPatient());
			log.setDoctor(doctorCode);
			log.setResponse(rs.toString());
			log.setRequest("outPatientId="+outpatientCode+"&doctor="+doctorCode);
			log.setStatus(rsCode);
			log.setCreateTime(new Date());
			wlyyHttpLogDao.save(log);
			
			// 调用HIS挂号接口---END
			
			
			/**
			 * toto 判断是否存在未审核的复诊
			 */
//			String check = prescriptionInfoService.presCheckState(jwCode);
//			if ("0".equals(check)) {//存在未审核的续方
//				return -1;
//			}
			
			
			BaseDoctorDO doctor = baseDoctorDao.findById(doctorCode);
@ -891,8 +938,7 @@ public class ImService {
			// 查询患者信息
			BasePatientDO p = basePatientDao.findById(patient);
			
			//1、获取his就诊记录详情(保存续方表、药品续方信息表、续方疾病类型表)
			WlyyOutpatientDO wlyyOutpatientDO = outpatientDao.findOne(outpatientCode);
			
			
			if(!"0".equals(wlyyOutpatientDO.getStatus())){
				throw new RuntimeException("该就诊记录已被取消,无法接单!");
@ -920,14 +966,6 @@ public class ImService {
			// 设置患者信息
			ct.setPatient(patient);
			ct.setSymptoms(wlyyOutpatientDO.getDescription());
//			if (1 == type) {
//				ct.setSymptoms("高血压");
//			} else if (2 == type) {
//				ct.setSymptoms("糖尿病");
//			} else if (3 == type) {
//				ct.setSymptoms("高血压,糖尿病");
//			} else {
//			}
			
			// 设置患者姓名
			ct.setName(p.getName());