|
@ -0,0 +1,947 @@
|
|
|
package com.yihu.jw.hospital.endpoint.prescription;
|
|
|
|
|
|
import com.yihu.jw.entity.base.doctor.BaseDoctorDO;
|
|
|
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
|
|
|
import com.yihu.jw.entity.hospital.prescription.WlyyOutpatientDO;
|
|
|
import com.yihu.jw.hospital.prescription.service.InspectionService;
|
|
|
import com.yihu.jw.hospital.prescription.service.PrescriptionLogService;
|
|
|
import com.yihu.jw.hospital.prescription.service.PrescriptionService;
|
|
|
import com.yihu.jw.hospital.prescription.service.entrance.DoctorPreSignService;
|
|
|
import com.yihu.jw.hospital.service.SystemMessage.HospitalSystemMessageService;
|
|
|
import com.yihu.jw.im.service.ImService;
|
|
|
import com.yihu.jw.restmodel.base.dict.DictHospitalDeptVO;
|
|
|
import com.yihu.jw.restmodel.base.org.BaseOrgVO;
|
|
|
import com.yihu.jw.restmodel.hospital.consult.WlyyHospitalSysDictVO;
|
|
|
import com.yihu.jw.restmodel.hospital.doctor.WlyyDoctorWorkTimeVO;
|
|
|
import com.yihu.jw.restmodel.hospital.prescription.WlyyOutpatientVO;
|
|
|
import com.yihu.jw.restmodel.hospital.prescription.WlyyPrescriptionVO;
|
|
|
import com.yihu.jw.restmodel.im.ConsultVO;
|
|
|
import com.yihu.jw.restmodel.web.Envelop;
|
|
|
import com.yihu.jw.restmodel.web.ListEnvelop;
|
|
|
import com.yihu.jw.restmodel.web.MixEnvelop;
|
|
|
import com.yihu.jw.restmodel.web.ObjEnvelop;
|
|
|
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
|
|
|
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
|
|
|
import com.yihu.jw.util.date.DateUtil;
|
|
|
import com.yihu.jw.wlyy.service.WlyyBusinessService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.OutputStream;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* Created by Trick on 2019/5/16.
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping(value = BaseHospitalRequestMapping.Prescription.PREFIX)
|
|
|
@Api(value = "在线复诊", description = "在线复诊接口", tags = {"在线复诊接口"})
|
|
|
public class PrescriptionEndpoint extends EnvelopRestEndpoint {
|
|
|
|
|
|
@Autowired
|
|
|
private PrescriptionService prescriptionService;
|
|
|
|
|
|
@Autowired
|
|
|
private WlyyBusinessService wlyyBusinessService;
|
|
|
|
|
|
@Autowired
|
|
|
private PrescriptionLogService prescriptionLogService;
|
|
|
|
|
|
@Autowired
|
|
|
private InspectionService inspectionService;
|
|
|
|
|
|
@Autowired
|
|
|
private DoctorPreSignService doctorPreSignService;
|
|
|
|
|
|
@Autowired
|
|
|
private HospitalSystemMessageService hospitalSystemMessageService;
|
|
|
|
|
|
@Autowired
|
|
|
private ImService imService;
|
|
|
|
|
|
@Value("${demo.flag}")
|
|
|
private boolean demoFlag;
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findOutpatientList)
|
|
|
@ApiOperation(value = " 查询某个时间段的患者门诊就诊记录")
|
|
|
public ListEnvelop findOutpatientList(@ApiParam(name = "patient", value = "居民id")
|
|
|
@RequestParam(value = "patient",required = false) String patient,
|
|
|
@ApiParam(name = "startTime", value = "开始时间")
|
|
|
@RequestParam(value = "startTime",required = false) String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间")
|
|
|
@RequestParam(value = "endTime",required = false) String endTime) throws Exception {
|
|
|
List<WlyyOutpatientVO> vos = prescriptionService.findOutpatientList(patient, startTime, endTime, demoFlag);
|
|
|
return success(vos);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findOutpatientInfo)
|
|
|
@ApiOperation(value = " 查询单条门诊就诊记录")
|
|
|
public ObjEnvelop findOutpatientInfo(@ApiParam(name = "patient", value = "居民id")
|
|
|
@RequestParam(value = "patient",required = false) String patient,
|
|
|
@ApiParam(name = "conNo", value = "就诊次数")
|
|
|
@RequestParam(value = "conNo",required = false) String conNo)throws Exception{
|
|
|
WlyyOutpatientVO obj = prescriptionService.findOutpatientInfo(patient,conNo);
|
|
|
return success(obj);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findOriginPrescriptionList)
|
|
|
@ApiOperation(value = "门诊下所有处方信息")
|
|
|
public ListEnvelop findOriginPrescriptionList(
|
|
|
@ApiParam(name = "registerSn", value = "流水号")
|
|
|
@RequestParam(value = "registerSn",required = false) String registerSn,
|
|
|
@ApiParam(name = "patNo", value = "病人id")
|
|
|
@RequestParam(value = "patNo",required = false) String patNo,
|
|
|
@ApiParam(name = "admNo", value = "住院唯一号")
|
|
|
@RequestParam(value = "admNo",required = false) String admNo,
|
|
|
@ApiParam(name = "realOrder", value = "处方号")
|
|
|
@RequestParam(value = "realOrder",required = false) String realOrder) throws Exception {
|
|
|
List<WlyyPrescriptionVO> obj = prescriptionService.findOriginPrescriptionList(registerSn, patNo, realOrder, admNo,demoFlag);
|
|
|
return success(obj);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findOriginPrescription)
|
|
|
@ApiOperation(value = "历史处方信息(单条)")
|
|
|
public ObjEnvelop findOriginPrescription(
|
|
|
@ApiParam(name = "registerSn", value = "流水号", required = false)
|
|
|
@RequestParam(value = "registerSn",required = false) String registerSn,
|
|
|
@ApiParam(name = "patNo", value = "病人id", required = false)
|
|
|
@RequestParam(value = "patNo",required = false) String patNo,
|
|
|
@ApiParam(name = "admNo", value = "住院唯一号", required = false)
|
|
|
@RequestParam(value = "admNo",required = false) String admNo,
|
|
|
@ApiParam(name = "realOrder", value = "处方号", required = false)
|
|
|
@RequestParam(value = "realOrder",required = false) String realOrder) throws Exception {
|
|
|
WlyyPrescriptionVO obj = prescriptionService.findOriginPrescription(registerSn, patNo, admNo,realOrder, demoFlag);
|
|
|
return success(obj);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPrescriptionList)
|
|
|
@ApiOperation(value = "获取续方记录列表", notes = "获取续方记录列表")
|
|
|
public MixEnvelop<WlyyPrescriptionVO,WlyyPrescriptionVO> findPrescriptionList(@ApiParam(name = "patient", value = "居民code")
|
|
|
@RequestParam(value = "patient", required = false) String patient,
|
|
|
@ApiParam(name = "status", value = "状态,多状态‘,’分割,例如‘1,2’,‘1,2,3’")
|
|
|
@RequestParam(value = "status", required = false)String status,
|
|
|
@ApiParam(name = "startTime", value = "开始时间,‘yyyy-MM-dd’")
|
|
|
@RequestParam(value = "startTime", required = false)String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd’")
|
|
|
@RequestParam(value = "endTime", required = false)String endTime,
|
|
|
@ApiParam(name = "page", value = "第几页,1开始’")
|
|
|
@RequestParam(value = "page", required = false)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = true) Integer size) {
|
|
|
return prescriptionService.findPrescriptionList(patient,status,startTime,endTime,page,size);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findReOutpatientList)
|
|
|
@ApiOperation(value = "查询复诊记录列表", notes = "查询复诊记录列表")
|
|
|
public MixEnvelop<WlyyOutpatientVO,WlyyOutpatientVO> findReOutpatientList(@ApiParam(name = "patient", value = "居民code")
|
|
|
@RequestParam(value = "patient", required = true) String patient,
|
|
|
@ApiParam(name = "status", value = "状态:-1取消,0候诊中,1就诊中,2已完成")
|
|
|
@RequestParam(value = "status", required = false) Integer status,
|
|
|
@ApiParam(name = "startTime", value = "开始时间,‘yyyy-MM-dd’")
|
|
|
@RequestParam(value = "startTime", required = false)String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd’")
|
|
|
@RequestParam(value = "endTime", required = false)String endTime,
|
|
|
@ApiParam(name = "page", value = "第几页,1开始’")
|
|
|
@RequestParam(value = "page", required = false)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = true) Integer size) {
|
|
|
return prescriptionService.findReOutpatientList(patient,status,startTime,endTime,page,size);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findReOutpatientInfo)
|
|
|
@ApiOperation(value = "查询复诊记录,处方,居民信息,物流(单条)", notes = "查询复诊记录,处方,居民信息,物流(单条)")
|
|
|
public ObjEnvelop findReOutpatientInfo(@ApiParam(name = "outpatientId", value = "复诊ID")
|
|
|
@RequestParam(value = "outpatientId", required = true) String outpatientId,
|
|
|
@ApiParam(name = "prescriptionId", value = "处方ID")
|
|
|
@RequestParam(value = "prescriptionId", required = false) String prescriptionId)throws Exception{
|
|
|
com.alibaba.fastjson.JSONObject obj = prescriptionService.findReOutpatientInfo(outpatientId,prescriptionId);
|
|
|
return success(obj);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPrescriptionInfo)
|
|
|
@ApiOperation(value = "获取所有居民相关信息,续方信息,物流信息,药品信息(单条)", notes = "获取所有居民相关信息,续方信息,物流信息,药品信息(单条)")
|
|
|
public ObjEnvelop<Map<String,Object>> findPrescriptionInfo(@ApiParam(name = "prescriptionId", value = "续方明细")
|
|
|
@RequestParam(value = "prescriptionId", required = false) String prescriptionId) {
|
|
|
|
|
|
return success(BaseHospitalRequestMapping.Prescription.api_success,prescriptionService.findPrescriptionInfo(prescriptionId));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.checkPrescription)
|
|
|
@ApiOperation(value = "判断是否可续方,true 可以,false不可以", notes = "判断是否可续方,true 可以,false不可以")
|
|
|
public ObjEnvelop<Boolean> checkPrescription(@ApiParam(name = "patient", value = "续方明细")
|
|
|
@RequestParam(value = "patient", required = false) String patient) {
|
|
|
|
|
|
return success(BaseHospitalRequestMapping.Prescription.api_success,prescriptionService.checkPrescription(patient));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.cancelPrescription)
|
|
|
@ApiOperation(value = "居民取消续方", notes = "居民取消续方")
|
|
|
public ObjEnvelop<Boolean> cancelPrescription(@ApiParam(name = "prescriptionId", value = "续方ID")
|
|
|
@RequestParam(value = "prescriptionId", required = false) String prescriptionId) {
|
|
|
|
|
|
return success(BaseHospitalRequestMapping.Prescription.api_success,prescriptionService.cancelPrescription(prescriptionId));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPatientCard)
|
|
|
@ApiOperation(value = "查询患者就诊卡", notes = "查询患者就诊卡")
|
|
|
public ListEnvelop findPatientCard(@ApiParam(name = "patient", value = "居民Code")
|
|
|
@RequestParam(value = "patient", required = true)String patient)throws Exception {
|
|
|
return success(prescriptionService.findPatientCard(patient));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.checkOutpatient)
|
|
|
@ApiOperation(value = "判断是否可用发起门诊", notes = "判断是否可用发起门诊")
|
|
|
public ObjEnvelop checkOutpatient(@ApiParam(name = "patient", value = "续方明细")
|
|
|
@RequestParam(value = "patient", required = true)String patient)throws Exception{
|
|
|
return success(prescriptionService.checkOutpatient(patient));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findAllHospital)
|
|
|
@ApiOperation(value = "查询所有机构", notes = "查询所有机构")
|
|
|
public ListEnvelop findAllHospital(@ApiParam(name = "level", value = "医院等级")
|
|
|
@RequestParam(value = "level", required = false)Integer level) {
|
|
|
return success(prescriptionService.findAllHospital(level));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDeptByHospital)
|
|
|
@ApiOperation(value = "查询机构底下部门", notes = "查询机构底下部门")
|
|
|
public ListEnvelop findDeptByHospital(@ApiParam(name = "orgCode", value = "机构code")
|
|
|
@RequestParam(value = "orgCode", required = true)String orgCode,
|
|
|
@ApiParam(name = "dept", value = "需要置顶部门")
|
|
|
@RequestParam(value = "dept", required = false)String dept,
|
|
|
@ApiParam(name = "consultDeptFlag", value = "1为查询开通服务部门")
|
|
|
@RequestParam(value = "consultDeptFlag", required = false)String consultDeptFlag) {
|
|
|
return success(prescriptionService.findDeptByHospital(orgCode,dept,consultDeptFlag));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorByHospitalAndDept)
|
|
|
@ApiOperation(value = "查询部门下医生", notes = "查询部门下医生")
|
|
|
public ListEnvelop findDoctorByHospitalAndDept(@ApiParam(name = "orgCode", value = "机构code")
|
|
|
@RequestParam(value = "orgCode", required = false)String orgCode,
|
|
|
@ApiParam(name = "dept", value = "部门code")
|
|
|
@RequestParam(value = "dept", required = false)String dept,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType,
|
|
|
@ApiParam(name = "doctorCode", value = "需要置顶医生")
|
|
|
@RequestParam(value = "doctorCode", required = false)String doctorCode,
|
|
|
@ApiParam(name = "outpatientType", value = "1图文,2视频")
|
|
|
@RequestParam(value = "outpatientType", required = false)String outpatientType,
|
|
|
@ApiParam(name = "startDate", value = "开始时间,yyyy-MM-dd HH:mm:ss")
|
|
|
@RequestParam(value = "startDate", required = false)String startDate,
|
|
|
@ApiParam(name = "endDate", value = "结束时间,yyyy-MM-dd HH:mm:ss")
|
|
|
@RequestParam(value = "endDate", required = false)String endDate,
|
|
|
@ApiParam(name = "key", value = "关键字搜索,医生名字/科室名称/专长")
|
|
|
@RequestParam(value = "key", required = false)String key,
|
|
|
@ApiParam(name = "consultStatus", value = "是否在线")
|
|
|
@RequestParam(value = "consultStatus", required = false)String consultStatus) {
|
|
|
return success(prescriptionService.findDoctorByHospitalAndDept(orgCode,dept,chargeType,doctorCode,outpatientType,startDate,endDate,key,consultStatus));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.appointmentRevisit)
|
|
|
@ApiOperation(value = "居民发起复诊", notes = "居民发起复诊")
|
|
|
public ObjEnvelop appointmentRevisit(@ApiParam(name = "outpatientJson", value = "居民门诊json")
|
|
|
@RequestParam(value = "outpatientJson", required = false)String outpatientJson,
|
|
|
@ApiParam(name = "expressageJson", value = "居民物流json")
|
|
|
@RequestParam(value = "expressageJson", required = false)String expressageJson,
|
|
|
@ApiParam(name = "registerJson", value = "预约时间")
|
|
|
@RequestParam(value = "registerJson", required = false)String registerJson,
|
|
|
@ApiParam(name = "chargeType", value = "预约实体json")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType)throws Exception {
|
|
|
|
|
|
WlyyOutpatientDO wlyyOutpatientDO = prescriptionService.appointmentRevisit(outpatientJson,expressageJson,registerJson,chargeType);
|
|
|
|
|
|
//发送系统消息
|
|
|
SystemMessageDO systemMessageDO = prescriptionService.sendOutPatientMes(wlyyOutpatientDO);
|
|
|
//发送IM消息
|
|
|
hospitalSystemMessageService.sendImMessage(systemMessageDO);
|
|
|
|
|
|
//发送医生抢单消息
|
|
|
if(StringUtils.isBlank(wlyyOutpatientDO.getDoctor())){
|
|
|
hospitalSystemMessageService.sendImPichCheckMessage(wlyyOutpatientDO);
|
|
|
}
|
|
|
|
|
|
return success(BaseHospitalRequestMapping.Prescription.api_success,wlyyOutpatientDO);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getICD10)
|
|
|
@ApiOperation(value = "获取ICD10诊断编码", notes = "获取ICD10诊断编码")
|
|
|
public ListEnvelop getICD10(@ApiParam(name = "pyKey", value = "拼音关键字")
|
|
|
@RequestParam(value = "pyKey", required = false)String pyKey)throws Exception {
|
|
|
return success(prescriptionService.getICD10(pyKey));
|
|
|
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDrugDictionary)
|
|
|
@ApiOperation(value = "获取药品字典", notes = "获取药品字典")
|
|
|
public ListEnvelop getDrugDictionary(@ApiParam(name = "drugNo", value = "药品编码")
|
|
|
@RequestParam(value = "drugNo", required = false)String drugNo,
|
|
|
@ApiParam(name = "pyKey", value = "拼音关键字")
|
|
|
@RequestParam(value = "pyKey", required = false)String pyKey,
|
|
|
@ApiParam(name = "winNo", value = "分部编码")
|
|
|
@RequestParam(value = "winNo", required = false)String winNo,
|
|
|
@ApiParam(name = "groupNo", value = "药房编码")
|
|
|
@RequestParam(value = "groupNo", required = false)String groupNo)throws Exception {
|
|
|
return success(prescriptionService.getDrugDictionary(drugNo,pyKey,winNo,groupNo));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDrugUse)
|
|
|
@ApiOperation(value = "获取用法", notes = "获取用法")
|
|
|
public ListEnvelop getDrugUse(@ApiParam(name = "pyKey", value = "拼音关键字")
|
|
|
@RequestParam(value = "pyKey", required = false)String pyKey,
|
|
|
@ApiParam(name = "drugNo", value = "药品编码")
|
|
|
@RequestParam(value = "drugNo", required = false)String drugNo)throws Exception {
|
|
|
return success(prescriptionService.getDrugUse(drugNo,pyKey));
|
|
|
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDrugFrequency)
|
|
|
@ApiOperation(value = "获取用药频次", notes = "获取用药频次")
|
|
|
public ListEnvelop getDrugFrequency()throws Exception {
|
|
|
return success(prescriptionService.getDrugFrequency());
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.makeDiagnosis)
|
|
|
@ApiOperation(value = "下诊断", notes = "下诊断接口")
|
|
|
public ObjEnvelop makeDiagnosis(@ApiParam(name = "outPatientId", value = "门诊编号")
|
|
|
@RequestParam(value = "outPatientId", required = true)String outPatientId,
|
|
|
@ApiParam(name = "advice", value = "医嘱")
|
|
|
@RequestParam(value = "advice", required = false)String advice,
|
|
|
@ApiParam(name = "type", value = "1需要提交his,2不提交只下诊断")
|
|
|
@RequestParam(value = "type", required = true)String type,
|
|
|
@ApiParam(name = "infoJsons", value = "药品json")
|
|
|
@RequestParam(value = "infoJsons", required = false)String infoJsons,
|
|
|
@ApiParam(name = "diagnosisJson", value = "诊断json")
|
|
|
@RequestParam(value = "diagnosisJson", required = true)String diagnosisJson,
|
|
|
@ApiParam(name = "inspectionJson", value = "检查检验")
|
|
|
@RequestParam(value = "inspectionJson", required = false)String inspectionJson)throws Exception {
|
|
|
return success(prescriptionService.makeDiagnosis(outPatientId,advice,type,infoJsons,diagnosisJson,inspectionJson));
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findExpressageList)
|
|
|
@ApiOperation(value = "获取订单列表", notes = "获取订单列表")
|
|
|
public MixEnvelop findExpressageList(@ApiParam(name = "status", value = "流程状态,多状态用‘,’分割")
|
|
|
@RequestParam(value = "status", required = false)String status,
|
|
|
@ApiParam(name = "oneselfPickupFlg", value = "是否自取 1是 0否")
|
|
|
@RequestParam(value = "oneselfPickupFlg", required = false)String oneselfPickupFlg,
|
|
|
@ApiParam(name = "nameKey", value = "配送员名称")
|
|
|
@RequestParam(value = "nameKey", required = false)String nameKey,
|
|
|
@ApiParam(name = "startTime", value = "开始时间,yyyy-MM-dd")
|
|
|
@RequestParam(value = "startTime", required = false)String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd")
|
|
|
@RequestParam(value = "endTime", required = false)String endTime,
|
|
|
@ApiParam(name = "page", value = "第几页,1开始")
|
|
|
@RequestParam(value = "page", required = false)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = false)Integer size) {
|
|
|
return prescriptionService.findExpressageList(status,oneselfPickupFlg,nameKey,startTime,endTime,page,size);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.setMailno)
|
|
|
@ApiOperation(value = "设置订单编号", notes = "设置订单编号")
|
|
|
public ObjEnvelop setMailno(@ApiParam(name = "mailno", value = "订单号")
|
|
|
@RequestParam(value = "mailno", required = false)String mailno,
|
|
|
@ApiParam(name = "expressageId", value = "订单id")
|
|
|
@RequestParam(value = "expressageId", required = false)String expressageId) {
|
|
|
return success(prescriptionService.setMailno(mailno,expressageId));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.pushListWrite)
|
|
|
@ApiOperation(value = "订单导出", notes = "订单导出")
|
|
|
public void pushListWrite(@ApiParam(name = "status", value = "流程状态,多状态用‘,’分割")
|
|
|
@RequestParam(value = "status", required = false)String status,
|
|
|
@ApiParam(name = "oneselfPickupFlg", value = "是否自取 1是 0否")
|
|
|
@RequestParam(value = "oneselfPickupFlg", required = false)String oneselfPickupFlg,
|
|
|
@ApiParam(name = "nameKey", value = "配送员名称")
|
|
|
@RequestParam(value = "nameKey", required = false)String nameKey,
|
|
|
@ApiParam(name = "startTime", value = "开始时间,yyyy-MM-dd")
|
|
|
@RequestParam(value = "startTime", required = false)String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间,yyyy-MM-dd")
|
|
|
@RequestParam(value = "endTime", required = false)String endTime,
|
|
|
HttpServletResponse response) throws Exception{
|
|
|
MixEnvelop expressages = prescriptionService.findExpressageList(status,oneselfPickupFlg,nameKey,startTime,endTime,1,10000);
|
|
|
List<Map<String,Object>> list = expressages.getDetailModelList();
|
|
|
response.setContentType("octets/stream");
|
|
|
response.setHeader("Content-Disposition", "attachment; filename="+ new String( "pushDataList.xls"));
|
|
|
OutputStream os = response.getOutputStream();
|
|
|
prescriptionService.pushListWrite(os,list);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findByDeptTypeCode)
|
|
|
@ApiOperation(value = "就诊费用查询", notes = "就诊费用查询")
|
|
|
public ListEnvelop findByDeptTypeCode(@ApiParam(name = "deptTypeCode", value = "6总部7金榜8夏禾")
|
|
|
@RequestParam(value = "deptTypeCode", required = false)String deptTypeCode) throws Exception{
|
|
|
return success(prescriptionService.findByDeptTypeCode(deptTypeCode));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getCardInfo)
|
|
|
@ApiOperation(value = "获取卡信息", notes = "获取卡信息")
|
|
|
public ObjEnvelop getCardInfo(@ApiParam(name = "cardNo", value = "卡号")
|
|
|
@RequestParam(value = "cardNo", required = false)String cardNo) throws Exception {
|
|
|
return success(prescriptionService.getCardInfo(cardNo,demoFlag));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorWithWork)
|
|
|
@ApiOperation(value = "查询医生带排班", notes = "查询医生带排班")
|
|
|
public ObjEnvelop findDoctorWithWork(@ApiParam(name = "orgCode", value = "机构code")
|
|
|
@RequestParam(value = "orgCode", required = false)String orgCode,
|
|
|
@ApiParam(name = "dept", value = "部门code")
|
|
|
@RequestParam(value = "dept", required = false)String dept,
|
|
|
@ApiParam(name = "doctorCode", value = "需要置顶医生code")
|
|
|
@RequestParam(value = "doctorCode", required = false)String doctorCode,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType,
|
|
|
@ApiParam(name = "outpatientType", value = "1图文,2视频")
|
|
|
@RequestParam(value = "outpatientType", required = false)String outpatientType,
|
|
|
@ApiParam(name = "startDate", value = "开始时间,yyyy-MM-dd HH:mm:ss")
|
|
|
@RequestParam(value = "startDate", required = false)String startDate,
|
|
|
@ApiParam(name = "endDate", value = "结束时间,yyyy-MM-dd HH:mm:ss")
|
|
|
@RequestParam(value = "endDate", required = false)String endDate,
|
|
|
@ApiParam(name = "key", value = "关键字搜索,医生名字/科室名称/专长")
|
|
|
@RequestParam(value = "key", required = false)String key,
|
|
|
@ApiParam(name = "consultStatus", value = "是否在线")
|
|
|
@RequestParam(value = "consultStatus", required = false)String consultStatus,
|
|
|
@ApiParam(name = "page", value = "第几页")
|
|
|
@RequestParam(value = "page", required = true)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = true)Integer size) {
|
|
|
|
|
|
return success(prescriptionService.findDoctorWithWork(orgCode,dept,chargeType,doctorCode,outpatientType,startDate,endDate,key,consultStatus,page,size));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorWithMouthWork)
|
|
|
@ApiOperation(value = "查询医生列表带月份排班状态", notes = "查询医生列表带月份排班状态")
|
|
|
public ObjEnvelop findDoctorWithMouthWork(@ApiParam(name = "orgCode", value = "机构code")
|
|
|
@RequestParam(value = "orgCode", required = true)String orgCode,
|
|
|
@ApiParam(name = "dept", value = "部门code")
|
|
|
@RequestParam(value = "dept", required = false)String dept,
|
|
|
@ApiParam(name = "date", value = "yyyy-MM")
|
|
|
@RequestParam(value = "date", required = true)String date,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType,
|
|
|
@ApiParam(name = "nameKey", value = "名字关键字")
|
|
|
@RequestParam(value = "nameKey", required = false)String nameKey,
|
|
|
@ApiParam(name = "page", value = "第几页")
|
|
|
@RequestParam(value = "page", required = true)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = true)Integer size) {
|
|
|
|
|
|
return success(prescriptionService.findDoctorWithMouthWork(orgCode,dept,chargeType,date,nameKey,page,size));
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findWorkTimeInfo)
|
|
|
@ApiOperation(value = "获取具体号源", notes = "获取具体号源")
|
|
|
public ListEnvelop findWorkTimeInfo(@ApiParam(name = "id", value = "排班id")
|
|
|
@RequestParam(value = "id", required = false)String id) {
|
|
|
return success(prescriptionService.findWorkTimeInfo(id));
|
|
|
}
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorInfo)
|
|
|
@ApiOperation(value = "获取医生信息", notes = "获取医生信息")
|
|
|
public ObjEnvelop findDoctorInfo(@ApiParam(name = "doctor", value = "医生code")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor,
|
|
|
@ApiParam(name = "withWork", value = "传1带排班,其他不带")
|
|
|
@RequestParam(value = "withWork", required = false)String withWork){
|
|
|
return success(prescriptionService.findDoctorInfo(doctor,withWork));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorBaseInfo)
|
|
|
@ApiOperation(value = "获取医生基本信息信息", notes = "获取医生基本信息信息")
|
|
|
public ObjEnvelop findDoctorBaseInfo(@ApiParam(name = "doctor", value = "医生code")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor){
|
|
|
return success(prescriptionService.findDoctorBaseInfo(doctor));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.cancelOutPatient)
|
|
|
@ApiOperation(value = "取消复诊", notes = "取消复诊")
|
|
|
public ObjEnvelop cancelOutPatient(@ApiParam(name = "outPatientId", value = "门诊记录")
|
|
|
@RequestParam(value = "outPatientId", required = false)String outPatientId,
|
|
|
@ApiParam(name = "cancelType", value = "取消原因类型")
|
|
|
@RequestParam(value = "cancelType", required = false)String cancelType,
|
|
|
@ApiParam(name = "cancelValue", value = "取消原因名称")
|
|
|
@RequestParam(value = "cancelValue", required = false)String cancelValue,
|
|
|
@ApiParam(name = "cancelRemark", value = "取消原因详细说明")
|
|
|
@RequestParam(value = "cancelRemark", required = false)String cancelRemark) {
|
|
|
|
|
|
return success(prescriptionService.cancelOutPatient(outPatientId,cancelType,cancelValue,cancelRemark,1));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findCancelReasonList)
|
|
|
@ApiOperation(value = "获取居民取消原因字典", notes = "获取居民取消原因字典")
|
|
|
public ListEnvelop findCancelReasonList(){
|
|
|
return success(prescriptionService.findCancelReasonList());
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findFastRegisterDate)
|
|
|
@ApiOperation(value = "獲取快速咨詢時間", notes = "獲取快速咨詢時間")
|
|
|
public ListEnvelop findFastRegisterDate(){
|
|
|
return success(prescriptionService.findFastRegisterDate());
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findByTimeSlot)
|
|
|
@ApiOperation(value = "获取快速咨询时间分段", notes = "获取快速咨询时间分段")
|
|
|
public ListEnvelop findByTimeSlot(@ApiParam(name = "startTime", value = "开始时间")
|
|
|
@RequestParam(value = "startTime", required = false)String startTime,
|
|
|
@ApiParam(name = "endTime", value = "结束时间")
|
|
|
@RequestParam(value = "endTime", required = false)String endTime) {
|
|
|
return success(prescriptionService.findByTimeSlot(startTime,endTime));
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorWorkTimeByMonth)
|
|
|
@ApiOperation(value = "查询某个医生某个月份排班记录", notes = "查询某个医生某个月份排班记录")
|
|
|
public ListEnvelop findDoctorWorkTimeByMonth(@ApiParam(name = "doctor", value = "医生code")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor,
|
|
|
@ApiParam(name = "date", value = "年份和月份,yyyy-MM")
|
|
|
@RequestParam(value = "date", required = false)String date,
|
|
|
@ApiParam(name = "startDate", value = "yyyy-MM-dd")
|
|
|
@RequestParam(value = "startDate", required = false)String startDate,
|
|
|
@ApiParam(name = "endDate", value = "yyyy-MM-dd")
|
|
|
@RequestParam(value = "endDate", required = false)String endDate) {
|
|
|
return success(prescriptionService.findDoctorWorkTimeByMonth(doctor,date,startDate,endDate));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findWorkRule)
|
|
|
@ApiOperation(value = "查询排班规则", notes = "查询排班规则")
|
|
|
public ListEnvelop findWorkRule(@ApiParam(name = "hospital", value = "医生code")
|
|
|
@RequestParam(value = "hospital", required = true)String hospital) {
|
|
|
return success(prescriptionService.findWorkRule("Scheduling",hospital));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.updateWorkRule)
|
|
|
@ApiOperation(value = "保存排班规则", notes = "保存排班规则")
|
|
|
public ObjEnvelop updateWorkRule(@ApiParam(name = "workRoleJsons", value = "排班规则json")
|
|
|
@RequestParam(value = "workRoleJsons", required = true)String workRoleJsons) {
|
|
|
return success(prescriptionService.updateWorkRule(workRoleJsons));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.saveDoctorWorkTimeJson)
|
|
|
@ApiOperation(value = "排班批量保存接口", notes = "排班批量保存接口")
|
|
|
public ObjEnvelop saveDoctorWorkTimeJson(@ApiParam(name = "type", value = "1.全医院,2.科室,3.医生")
|
|
|
@RequestParam(value = "type", required = true)String type,
|
|
|
@ApiParam(name = "codes", value = "1.医院code,2.科室code,‘,’分割,3.医生code,‘,’分割")
|
|
|
@RequestParam(value = "codes", required = true)String codes,
|
|
|
@ApiParam(name = "workTimeJson", value = "排班列表json")
|
|
|
@RequestParam(value = "workTimeJson", required = true)String workTimeJson,
|
|
|
@ApiParam(name = "date", value = "yyyy-MM,支持‘,’分割")
|
|
|
@RequestParam(value = "date", required = false)String date)throws Exception {
|
|
|
return success(prescriptionService.saveDoctorWorkTimeJson(type,codes,workTimeJson,date));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = "test")
|
|
|
@ApiOperation(value = "test", notes = "test")
|
|
|
public Envelop test()throws Exception {
|
|
|
return success(prescriptionService.test());
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = "test2")
|
|
|
@ApiOperation(value = "test2", notes = "test2")
|
|
|
public Envelop test(String no)throws Exception {
|
|
|
return success(prescriptionService.test2(no));
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPatientInfo)
|
|
|
@ApiOperation(value = "获取居民信息接口", notes = "获取居民信息接口")
|
|
|
public ObjEnvelop findPatientInfo(@ApiParam(name = "patient", value = "居民ID")
|
|
|
@RequestParam(value = "patient", required = true)String patient){
|
|
|
return success(prescriptionService.findPatientInfo(patient));
|
|
|
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.saveDoctorOnlineWork)
|
|
|
@ApiOperation(value = "保存在线排班", notes = "保存在线排班")
|
|
|
public Envelop saveDoctorOnlineWork(@ApiParam(name = "onlineWorkJson", value = "保存在线排班json")
|
|
|
@RequestParam(value = "onlineWorkJson", required = true)String onlineWorkJson)throws Exception {
|
|
|
return prescriptionService.saveDoctorOnlineWork(onlineWorkJson);
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.delDoctorOnlineWork)
|
|
|
@ApiOperation(value = "删除在线排班", notes = "删除在线排班")
|
|
|
public Envelop delDoctorOnlineWork(@ApiParam(name = "id", value = "保存在线排班ID")
|
|
|
@RequestParam(value = "id", required = true)String id)throws Exception {
|
|
|
return prescriptionService.delDoctorOnlineWork(id);
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorOnlineWorkList)
|
|
|
@ApiOperation(value = "查询医生在线排班", notes = "查询医生在线排班")
|
|
|
public ListEnvelop findDoctorOnlineWorkList(@ApiParam(name = "doctor", value = "医生code")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor,
|
|
|
@ApiParam(name = "startDate", value = "开始时间,YYYY-MM-dd")
|
|
|
@RequestParam(value = "startDate", required = true)String startDate,
|
|
|
@ApiParam(name = "endDate", value = "结束时间,YYYY-MM-dd")
|
|
|
@RequestParam(value = "endDate", required = true)String endDate)throws Exception {
|
|
|
return success(prescriptionService.findDoctorOnlineWorkList(doctor,startDate,endDate));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.cooperativeOutpatient)
|
|
|
@ApiOperation(value = "发起协同门诊", notes = "发起协同门诊")
|
|
|
public ObjEnvelop cooperativeOutpatient(@ApiParam(name = "outpatientJson", value = "复诊实体json")
|
|
|
@RequestParam(value = "outpatientJson", required = true)String outpatientJson,
|
|
|
@ApiParam(name = "registerJson", value = "预约实体json")
|
|
|
@RequestParam(value = "registerJson", required = false)String registerJson,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType)throws Exception {
|
|
|
WlyyOutpatientDO wlyyOutpatientDO = prescriptionService.cooperativeOutpatient(outpatientJson,registerJson,chargeType);
|
|
|
|
|
|
//构建系统消息
|
|
|
SystemMessageDO systemMessageDO = prescriptionService.sendOutPatientMes(wlyyOutpatientDO);
|
|
|
//发送系统消息
|
|
|
hospitalSystemMessageService.sendImMessage(systemMessageDO);
|
|
|
|
|
|
//发送医生抢单消息
|
|
|
if(StringUtils.isBlank(wlyyOutpatientDO.getDoctor())){
|
|
|
hospitalSystemMessageService.sendImPichCheckMessage(wlyyOutpatientDO);
|
|
|
}
|
|
|
|
|
|
return success(wlyyOutpatientDO);
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.saveOutpatientDoctor)
|
|
|
@ApiOperation(value = "设置门诊医生", notes = "设置门诊医生")
|
|
|
public ObjEnvelop saveOutpatientDoctor(@ApiParam(name = "outpatientJson", value = "复诊实体json")
|
|
|
@RequestParam(value = "outpatientJson", required = true)String outpatientJson,
|
|
|
@ApiParam(name = "registerJson", value = "预约实体json")
|
|
|
@RequestParam(value = "registerJson", required = false)String registerJson,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType", required = false)String chargeType)throws Exception {
|
|
|
return success(prescriptionService.saveOutpatientDoctor(outpatientJson,registerJson,chargeType));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.checkOauthQRCode)
|
|
|
@ApiOperation(value = "验证授权", notes = "验证授权")
|
|
|
public ObjEnvelop checkOauthQRCode(@ApiParam(name = "authorizeNo", value = "流水编号")
|
|
|
@RequestParam(value = "authorizeNo", required = true)String authorizeNo)throws Exception {
|
|
|
return success(prescriptionService.checkOauthQRCode(authorizeNo));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findByGeneralDoctor)
|
|
|
@ApiOperation(value = "全科医生协同门诊列表", notes = "全科医生协同门诊列表")
|
|
|
public Envelop findByGeneralDoctor(@ApiParam(name = "generalDoctor", value = "全科医生")
|
|
|
@RequestParam(value = "generalDoctor", required = true)String generalDoctor,
|
|
|
@ApiParam(name = "startDate", value = "开始时间")
|
|
|
@RequestParam(value = "startDate", required = false)String startDate,
|
|
|
@ApiParam(name = "endDate", value = "结束时间")
|
|
|
@RequestParam(value = "endDate", required = false)String endDate,
|
|
|
@ApiParam(name = "status", value = "状态")
|
|
|
@RequestParam(value = "status", required = false)String status,
|
|
|
@ApiParam(name = "sort", value = "排序")
|
|
|
@RequestParam(value = "sort", required = false)String sort,
|
|
|
@ApiParam(name = "page", value = "第几页")
|
|
|
@RequestParam(value = "page", required = true)Integer page,
|
|
|
@ApiParam(name = "size", value = "每页大小")
|
|
|
@RequestParam(value = "size", required = true)Integer size) {
|
|
|
return prescriptionService.findByGeneralDoctor(generalDoctor,startDate,endDate,status,sort,page,size);
|
|
|
}
|
|
|
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findGeneralDoctorInfo)
|
|
|
@ApiOperation(value = "全科医生首页统计信息", notes = "全科医生首页统计信息")
|
|
|
public ObjEnvelop findGeneralDoctorInfo(@ApiParam(name = "generalDoctor", value = "全科医生")
|
|
|
@RequestParam(value = "generalDoctor", required = true)String generalDoctor) {
|
|
|
return success(prescriptionService.findGeneralDoctorInfo(generalDoctor));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.sendWlyyOutpatientMes)
|
|
|
@ApiOperation(value = "发送i健康系统消息", notes = "发送i健康系统消息")
|
|
|
public ObjEnvelop sendWlyyOutpatientMes(@ApiParam(name = "doctor", value = "全科医生Id")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor,
|
|
|
@ApiParam(name = "outPatientId", value = "门诊id")
|
|
|
@RequestParam(value = "outPatientId", required = true)String outPatientId) {
|
|
|
return success(wlyyBusinessService.sendWlyyOutpatientMes(doctor,outPatientId));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.readWlyyOutpatientMes)
|
|
|
@ApiOperation(value = "设置I健康消息已读", notes = "设置I健康消息已读")
|
|
|
public ObjEnvelop readWlyyOutpatientMes(@ApiParam(name = "outPatientId", value = "门诊id")
|
|
|
@RequestParam(value = "outPatientId", required = true)String outPatientId){
|
|
|
return success(wlyyBusinessService.readWlyyOutpatientMes(outPatientId));
|
|
|
}
|
|
|
//===========
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getTodayOutpatinetList)
|
|
|
@ApiOperation(value = "居民获取当日就诊列表", notes = "居民获取当日就诊列表")
|
|
|
public ListEnvelop getTodayOutpatinetList(@ApiParam(name = "patient", value = "居民ID")
|
|
|
@RequestParam(value = "patient", required = true) String patient){
|
|
|
return success(prescriptionService.getTodayOutpatinetList(patient));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDoctorMapping)
|
|
|
@ApiOperation(value = "获取医生mappingcode", notes = "获取医生mappingcode")
|
|
|
public ObjEnvelop getDoctorMapping(@ApiParam(name = "doctor", value = "医生code")
|
|
|
@RequestParam(value = "doctor", required = true)String doctor,
|
|
|
@ApiParam(name = "orgCode", value = "机构code")
|
|
|
@RequestParam(value = "orgCode", required = true)String orgCode){
|
|
|
return success(prescriptionService.getDoctorMapping(doctor,orgCode));
|
|
|
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getInspectionDictionary)
|
|
|
@ApiOperation(value = "获取检查检验", notes = "获取检查检验")
|
|
|
public ListEnvelop getInspectionDictionary(@ApiParam(name = "pyKey", value = "拼音码")
|
|
|
@RequestParam(value = "pyKey", required = false)String pyKey,
|
|
|
@ApiParam(name = "winNo", value = "6总部7金榜8夏禾")
|
|
|
@RequestParam(value = "winNo", required = true)String winNo,
|
|
|
@ApiParam(name = "codes", value = "检查检验收费码codes,用逗号分割")
|
|
|
@RequestParam(value = "codes", required = false)String codes)throws Exception{
|
|
|
return success(prescriptionService.getInspectionDictionary(pyKey,codes,winNo));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPrescriptionLogByPreId)
|
|
|
@ApiOperation(value = "查询处方日志", notes = "查询处方日志")
|
|
|
public ListEnvelop findPrescriptionLogByPreId(@ApiParam(name = "prescriptionCode", value = "处方code")
|
|
|
@RequestParam(value = "prescriptionCode", required = true)String prescriptionCode)throws Exception{
|
|
|
return success(prescriptionLogService.findPrescriptionLogByPreId(prescriptionCode));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findByPartsCode)
|
|
|
@ApiOperation(value = "查询部位字典", notes = "查询部位字典")
|
|
|
public ListEnvelop findByPartsCode(@ApiParam(name = "parentCode", value = "父节点ID,第一层为0")
|
|
|
@RequestParam(value = "parentCode", required = true)String parentCode)throws Exception{
|
|
|
return success(inspectionService.findByPartsCode(parentCode));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDictByName)
|
|
|
@ApiOperation(value = "查询检查检验字典", notes = "查询检查检验字典")
|
|
|
public ListEnvelop findDictByName(@ApiParam(name = "hospital", value = "医院")
|
|
|
@RequestParam(value = "hospital", required = true)String hospital,
|
|
|
@ApiParam(name = "name", value = "字典名称,类型:InspectionType;固定液体 :InspectionFixativeType")
|
|
|
@RequestParam(value = "name", required = true)String name)throws Exception{
|
|
|
return success(inspectionService.findDictByName(hospital,name));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getJymb)
|
|
|
@ApiOperation(value = "检验模板接口")
|
|
|
public ListEnvelop getJymb(@ApiParam(name = "bz_code", value = "入参条件为第一节点代码")
|
|
|
@RequestParam(value = "bz_code",defaultValue = "") String bz_code,
|
|
|
@ApiParam(name = "tc_no", value = "二级节点代码")
|
|
|
@RequestParam(value = "tc_no",defaultValue = "") String tc_no,
|
|
|
@ApiParam(name = "flag", value = "入参条件为第一节点代码")
|
|
|
@RequestParam(value = "flag",defaultValue = "1") String flag) throws Exception {
|
|
|
return success(prescriptionService.getJymb(bz_code,tc_no,flag));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getJcmb)
|
|
|
@ApiOperation(value = "检查模板接口")
|
|
|
public ListEnvelop getJcmb(
|
|
|
@ApiParam(name = "bz_code", value = "入参条件为第一节点代码")
|
|
|
@RequestParam(value = "bz_code",defaultValue = "") String bz_code,
|
|
|
@ApiParam(name = "tc_no", value = "二级节点代码")
|
|
|
@RequestParam(value = "tc_no",defaultValue = "") String tc_no,
|
|
|
@ApiParam(name = "flag", value = "入参条件为第一节点代码")
|
|
|
@RequestParam(value = "flag",defaultValue = "1") String flag) throws Exception {
|
|
|
return success(prescriptionService.getJcmb(bz_code,tc_no,flag));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getTcChild)
|
|
|
@ApiOperation(value = "套餐子项目字典接口")
|
|
|
public ListEnvelop getTcChild(
|
|
|
@ApiParam(name = "parent_code", value = "入参条件为子项目编码")
|
|
|
@RequestParam(value = "parent_code",defaultValue = "") String parent_code) throws Exception {
|
|
|
return success(prescriptionService.getTcChild(parent_code));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getInsChild)
|
|
|
@ApiOperation(value = "主项目绑定子项目字典接口")
|
|
|
public ListEnvelop getInsChild(
|
|
|
@ApiParam(name = "zd_charge_code", value = "入参条件为项目代码")
|
|
|
@RequestParam(value = "zd_charge_code",defaultValue = "") String zd_charge_code) throws Exception {
|
|
|
return success(prescriptionService.getInsChild(zd_charge_code));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getTcxz)
|
|
|
@ApiOperation(value = "套餐选择接口")
|
|
|
public ListEnvelop getTcxz(
|
|
|
@ApiParam(name = "bz_code", value = "入参条件为收费项目代码")
|
|
|
@RequestParam(value = "bz_code",defaultValue = "") String charge_code,
|
|
|
@ApiParam(name = "tc_no", value = "二级节点代码")
|
|
|
@RequestParam(value = "tc_no",defaultValue = "") String tc_no,
|
|
|
@ApiParam(name = "flag", value = "入参条件为第一节点代码")
|
|
|
@RequestParam(value = "flag",defaultValue = "1") String flag) throws Exception {
|
|
|
return success(prescriptionService.getTcxz(charge_code,tc_no,flag));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDoctorPreSign)
|
|
|
@ApiOperation(value = "获取医生签名")
|
|
|
public ObjEnvelop getDoctorPreSign(@ApiParam(name = "doctor", value = "医生编码")
|
|
|
@RequestParam(value = "doctor",required = false) String doctor)throws Exception{
|
|
|
return success(doctorPreSignService.getDoctorSign(doctor));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getDoctorIntroduction)
|
|
|
@ApiOperation(value = "获取医生简介")
|
|
|
public ObjEnvelop getDoctorIntroduction(@ApiParam(name = "doctor", value = "医生编码")
|
|
|
@RequestParam(value = "doctor",required = false) String doctor)throws Exception{
|
|
|
return success(prescriptionService.getDoctorIntroduction(doctor));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findByDict)
|
|
|
@ApiOperation(value = "查询医院字典", notes = "查询医院字典")
|
|
|
public ListEnvelop findByDict(@ApiParam(name = "name", value = "字典名称")
|
|
|
@RequestParam(value = "name", required = true)String name,
|
|
|
@ApiParam(name = "hospital", value = "医生code")
|
|
|
@RequestParam(value = "hospital", required = true)String hospital) {
|
|
|
return success(prescriptionService.findByDict(name,hospital));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.getPatientAccetokenByIdcard)
|
|
|
@ApiOperation(value = "根据居民CODE换取居民请求秘钥")
|
|
|
public Envelop getPatientAccetokenByIdcard(@ApiParam(name = "patientCode", value = "居民CODE")
|
|
|
@RequestParam(value = "patientCode",required = true) String patientCode)throws Exception{
|
|
|
return success(wlyyBusinessService.wlyyGetPatientAccetokenByIdcard(patientCode));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findWlyyPatient)
|
|
|
@ApiOperation(value = "获取居民信息")
|
|
|
public Envelop findWlyyPatient(@ApiParam(name = "idcard", value = "idcard")
|
|
|
@RequestParam(value = "idcard",required = true) String idcard)throws Exception{
|
|
|
return success(wlyyBusinessService.findWlyyPatient(idcard));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPatientListBySscOrIdCard)
|
|
|
@ApiOperation(value = "获取居民身份证信息")
|
|
|
public Envelop findPatientListBySscOrIdCard(@ApiParam(name = "idcard", value = "idcard")
|
|
|
@RequestParam(value = "idcard",required = false) String idcard,
|
|
|
@ApiParam(name = "ssc", value = "社保卡")
|
|
|
@RequestParam(value = "ssc",required = false) String ssc)throws Exception{
|
|
|
if(StringUtils.isNotBlank(idcard)&&idcard.length()>=6){
|
|
|
return success(wlyyBusinessService.findPatientListBySscOrIdCard(idcard,null));
|
|
|
}
|
|
|
if(StringUtils.isNotBlank(ssc)&&ssc.length()>=6){
|
|
|
return success(wlyyBusinessService.findPatientListBySscOrIdCard(null,ssc));
|
|
|
}
|
|
|
return failed("身份证或医保卡格式有误");
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.makeBase64Qrcode)
|
|
|
@ApiOperation(value = "获取医生二维码")
|
|
|
public ObjEnvelop makeBase64Qrcode(@ApiParam(name = "doctor", value = "医生ID")
|
|
|
@RequestParam(value = "doctor",required = true) String doctor)throws Exception{
|
|
|
return success("获取医生二维码成功",wlyyBusinessService.makeBase64Qrcode(doctor));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.doctorUpcomingList)
|
|
|
@ApiOperation(value = "医生待办事项列表")
|
|
|
public Envelop doctorUpcomingList(@ApiParam(name = "doctorCode", value = "医生CODE")
|
|
|
@RequestParam(value = "doctorCode",required = true) String doctorCode,
|
|
|
@ApiParam(name = "type", value = "类型:1.视频复诊(16)、2.专科协同(12)、3.图文复诊(9)、4.专家咨询(1,15)")
|
|
|
@RequestParam(value = "type",required = true) String type)throws Exception{
|
|
|
|
|
|
com.alibaba.fastjson.JSONArray array = new com.alibaba.fastjson.JSONArray();
|
|
|
List<ConsultVO> data = imService.doctorUpcomingList(doctorCode, type);
|
|
|
|
|
|
if (data != null) {
|
|
|
for (ConsultVO consult : data) {
|
|
|
if (consult == null) {
|
|
|
continue;
|
|
|
}
|
|
|
com.alibaba.fastjson.JSONObject json = new com.alibaba.fastjson.JSONObject();
|
|
|
json.put("id", consult.getId());
|
|
|
// 设置咨询类型:1专家咨询,9在线复诊,待扩展,13协同门诊
|
|
|
json.put("type", consult.getType());
|
|
|
//
|
|
|
// //如果是协同门诊,多返回全科医生的详细信息
|
|
|
// if(13 == consult.getType() && StringUtils.isNoneBlank(consult.getGeneralDoctor())){
|
|
|
// BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(consult.getGeneralDoctor());
|
|
|
// json.put("generalDoctorName", baseDoctorDO.getName());
|
|
|
// }
|
|
|
|
|
|
// 设置显示标题
|
|
|
json.put("title", consult.getTitle());
|
|
|
// 设置主诉
|
|
|
json.put("symptoms", consult.getSymptoms());
|
|
|
// 咨询状态
|
|
|
json.put("status", consult.getStatus());
|
|
|
// 设置咨询日期
|
|
|
json.put("czrq", DateUtil.dateToStrLong(consult.getCzrq()));
|
|
|
//是否评价
|
|
|
json.put("evaluate", consult.getEvaluate());
|
|
|
|
|
|
//患者ID
|
|
|
json.put("patientId", consult.getPatientId());
|
|
|
//患者性别
|
|
|
json.put("patientsex", consult.getPatientsex());
|
|
|
//患者姓名
|
|
|
json.put("patientName", consult.getPatientName());
|
|
|
//患者年龄
|
|
|
json.put("patientAge", DateUtil.getAgeForIdcard(consult.getPatientIdcard()));
|
|
|
//就诊记录ID
|
|
|
json.put("outpatientId", consult.getOutpatientid());
|
|
|
//就诊记录状态
|
|
|
json.put("outpatientstatus", consult.getOutpatientstatus());
|
|
|
// 设置咨询日期
|
|
|
json.put("registerDate", DateUtil.dateToStrLong(consult.getRegisterDate()));
|
|
|
//图文或者视频类型
|
|
|
json.put("consultType", consult.getConsultType());
|
|
|
//诊断
|
|
|
json.put("icd10Name", consult.getIcd10Name());
|
|
|
|
|
|
if("1,15".equals(type)){//专家咨询
|
|
|
if(1 == consult.getType()){//专家咨询
|
|
|
json.put("session_id", consult.getPatientId()+"_"+ consult.getDoctorCode()+"_1");
|
|
|
}else if(15 == consult.getType()){//家医求助
|
|
|
json.put("session_id", consult.getPatientId()+"_"+ consult.getGeneralDoctor()+"_"+ consult.getDoctorCode()+"_15");
|
|
|
}else{}
|
|
|
}else if("9".equals(type)){//图文复诊
|
|
|
json.put("session_id", consult.getPatientId()+"_"+ consult.getOutpatientid()+"_9");
|
|
|
json.put("type",type);
|
|
|
}else if("16".equals(type)){//视频复诊
|
|
|
json.put("session_id", consult.getPatientId()+"_"+ consult.getOutpatientid()+"_16");
|
|
|
json.put("type",type);
|
|
|
}else if("12".equals(type)){//协同门诊
|
|
|
json.put("session_id", consult.getPatientId()+"_"+ consult.getOutpatientid()+"_12");
|
|
|
json.put("type",type);
|
|
|
}else{}
|
|
|
|
|
|
array.add(json);
|
|
|
}
|
|
|
}
|
|
|
return success(array);
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = BaseHospitalRequestMapping.Prescription.setRecord)
|
|
|
@ApiOperation(value = "his建立档案与互联网医院账户同步")
|
|
|
public Envelop setRecord(@ApiParam(name = "json", value = "档案实体json")
|
|
|
@RequestParam(value = "json",required = true) String json,
|
|
|
@ApiParam(name = "type", value = "1.需要his建档,2.仅同步互联网医院账户")
|
|
|
@RequestParam(value = "type",required = true)String type)throws Exception{
|
|
|
return success(prescriptionService.setRecord(json,type));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findPatientRecord)
|
|
|
@ApiOperation(value = "获取HIIS居民档案信息")
|
|
|
public Envelop findPatientRecord(@ApiParam(name = "idcard", value = "居民身份证")
|
|
|
@RequestParam(value = "idcard",required = false) String idcard,
|
|
|
@ApiParam(name = "patient", value = "居民code")
|
|
|
@RequestParam(value = "patient",required = false)String patient,
|
|
|
@ApiParam(name = "admitNum", value = "就诊次数")
|
|
|
@RequestParam(value = "admitNum",required = false)String admitNum,
|
|
|
@ApiParam(name = "ybcard", value = "医保卡")
|
|
|
@RequestParam(value = "ybcard",required = false)String ybcard)throws Exception{
|
|
|
return success(prescriptionService.findPatientRecord(idcard,patient,admitNum,ybcard));
|
|
|
}
|
|
|
|
|
|
@GetMapping(value = BaseHospitalRequestMapping.Prescription.findDoctorByName)
|
|
|
@ApiOperation(value = "获取医生信息")
|
|
|
public ListEnvelop findDoctorByName(@ApiParam(name = "hospital", value = "医院code")
|
|
|
@RequestParam(value = "hospital",required = false)String hospital,
|
|
|
@ApiParam(name = "name", value = "医生名称")
|
|
|
@RequestParam(value = "name",required = false)String name,
|
|
|
@ApiParam(name = "chargeType", value = "号别")
|
|
|
@RequestParam(value = "chargeType",required = false)String chargeType) {
|
|
|
return success(prescriptionService.findDoctorByName(hospital,name,chargeType));
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|