|
@ -1,9 +1,12 @@
|
|
|
package com.yihu.wlyy.service.app.prescription;
|
|
|
|
|
|
import com.yihu.wlyy.entity.doctor.profile.Doctor;
|
|
|
import com.yihu.wlyy.entity.organization.Hospital;
|
|
|
import com.yihu.wlyy.entity.organization.HospitalDept;
|
|
|
import com.yihu.wlyy.entity.patient.Patient;
|
|
|
import com.yihu.wlyy.entity.patient.prescription.*;
|
|
|
import com.yihu.wlyy.repository.doctor.DoctorDao;
|
|
|
import com.yihu.wlyy.repository.organization.HospitalDao;
|
|
|
import com.yihu.wlyy.repository.patient.PatientDao;
|
|
|
import com.yihu.wlyy.repository.prescription.*;
|
|
|
import com.yihu.wlyy.util.DateUtil;
|
|
@ -41,6 +44,9 @@ public class PrescriptionExpressageService {
|
|
|
|
|
|
@Autowired
|
|
|
private DoctorDao doctorDao;
|
|
|
@Autowired
|
|
|
private HospitalDao hospitalDao;
|
|
|
|
|
|
@Autowired
|
|
|
private PatientDao patientDao;
|
|
|
@Value("${wechat.wechat_base_url}")
|
|
@ -205,11 +211,11 @@ public class PrescriptionExpressageService {
|
|
|
prescriptionDispensaryCode.setIsUse(1);
|
|
|
|
|
|
//发送模板消息通知患者药品开始配送
|
|
|
String url="prescription/html/order_tracking.html?openid=" + patient.getOpenid() + "" +
|
|
|
"&code=" + prescriptionDispensaryCode.getPrescriptionCode() + "&toUser=" + patient.getCode() + "&toName=" + patient.getName() ;
|
|
|
String url = "prescription/html/order_tracking.html?openid=" + patient.getOpenid() + "" +
|
|
|
"&code=" + prescriptionDispensaryCode.getPrescriptionCode() + "&toUser=" + patient.getCode() + "&toName=" + patient.getName();
|
|
|
|
|
|
|
|
|
prescriptionNoticesService.sendMessages(userCode,doctor.getName(), DateUtil.dateToStrLong(expressageing),3, 0,url );
|
|
|
prescriptionNoticesService.sendMessages(userCode, doctor.getName(), DateUtil.dateToStrLong(expressageing), 3, 0, url);
|
|
|
|
|
|
return prescriptionDispensaryCode.getType();
|
|
|
}
|
|
@ -253,11 +259,11 @@ public class PrescriptionExpressageService {
|
|
|
|
|
|
//发送模板消息通知患者取药
|
|
|
//发送模板消息通知患者药品开始配送
|
|
|
String url="prescription/html/order_tracking.html?openid=" + patient.getOpenid() + "" +
|
|
|
"&code=" + prescriptionDispensaryCode.getPrescriptionCode() + "&toUser=" + patient.getCode() + "&toName=" + patient.getName() ;
|
|
|
String url = "prescription/html/order_tracking.html?openid=" + patient.getOpenid() + "" +
|
|
|
"&code=" + prescriptionDispensaryCode.getPrescriptionCode() + "&toUser=" + patient.getCode() + "&toName=" + patient.getName();
|
|
|
|
|
|
|
|
|
prescriptionNoticesService.sendMessages(prescription.getPatient(),doctor.getName(), DateUtil.dateToStrLong(expressage2hospitalDate),4, 0, url);
|
|
|
prescriptionNoticesService.sendMessages(prescription.getPatient(), doctor.getName(), DateUtil.dateToStrLong(expressage2hospitalDate), 4, 0, url);
|
|
|
|
|
|
return prescriptionDispensaryCode.getType();
|
|
|
|
|
@ -273,7 +279,7 @@ public class PrescriptionExpressageService {
|
|
|
*/
|
|
|
public void updatePrescriptionExpressage(PrescriptionExpressage prescriptionExpressage) throws Exception {
|
|
|
//修改处方状态为配送配送中
|
|
|
prescriptionDao.updateStatus(prescriptionExpressage.getPrescriptionCode(),65);
|
|
|
prescriptionDao.updateStatus(prescriptionExpressage.getPrescriptionCode(), 65);
|
|
|
|
|
|
//保存处方物流记录
|
|
|
prescriptionExpressageDao.save(prescriptionExpressage);
|
|
@ -301,11 +307,16 @@ public class PrescriptionExpressageService {
|
|
|
*/
|
|
|
@Transactional
|
|
|
public void updateExpressageJGS(String code, String name, String mobile, String prescriptionCode, String doctorQK) {
|
|
|
Doctor doctor = doctorDao.findByCode(code);
|
|
|
Hospital hospital = hospitalDao.findByCode(doctor.getHospital());
|
|
|
//更新配送表 新增配送人员记录
|
|
|
PrescriptionExpressage prescriptionExpressage = prescriptionExpressageDao.findByPrescriptionPay(prescriptionCode);
|
|
|
prescriptionExpressage.setExpressageCode(code);
|
|
|
prescriptionExpressage.setExpressageMobile(mobile);
|
|
|
prescriptionExpressage.setExpressageName(name);
|
|
|
prescriptionExpressage.setExpressageHospitalAddress(hospital.getAddress());
|
|
|
prescriptionExpressage.setExpressageHospitalCode(doctor.getHospital());
|
|
|
prescriptionExpressage.setExpressageHospitalName(doctor.getHospitalName());
|
|
|
|
|
|
//新增日志
|
|
|
PrescriptionLog prescriptionLog = new PrescriptionLog();
|
|
@ -343,8 +354,8 @@ public class PrescriptionExpressageService {
|
|
|
/**
|
|
|
* 判断如果服务站和患者填写的服务站一致 那么就修改处方状态为送达服务站
|
|
|
*/
|
|
|
if(hospital.equals(prescriptionExpressage.getPatientHospitalCode())){
|
|
|
Prescription prescription=prescriptionDao.findByCode(prescriptionCode);
|
|
|
if (hospital.equals(prescriptionExpressage.getPatientHospitalCode())) {
|
|
|
Prescription prescription = prescriptionDao.findByCode(prescriptionCode);
|
|
|
prescription.setStatus(PrescriptionLog.PrescriptionLogStatus.expressage2hospital.getValue());
|
|
|
prescription.setExpressageTime(new Date());
|
|
|
|