package com.ynxbd.common.action; import com.ynxbd.common.action.base.BaseAction; import com.ynxbd.common.bean.xbd.MRHistory; import com.ynxbd.common.bean.xbd.MedicalRecord; import com.ynxbd.common.helper.common.JsonHelper; import com.ynxbd.common.helper.xbd.XBDHttpHelper; import com.ynxbd.common.helper.xbd.XBDEnum; import com.ynxbd.common.helper.xbd.XBDHelper; import com.ynxbd.common.result.Result; import lombok.extern.slf4j.Slf4j; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; /** * @author 李进才 * @ClassName XBDAction * @Description description * @date 2023/3/30 16:50 */ @Slf4j @Namespace("/xbd") public class XBDAction extends BaseAction { /** * 获取智能云胶片的地址 * @param info patientId * @return 路径 */ @Action("cloudFilm") public Result cloudFilm (String info){ return Result.success(XBDHelper.outTeamDao.getCloudFilmPath(info)); } /** * 获取该病人已归档可以翻拍的病历 * @param patientId 病人id * @return 可以翻拍的病历列表 */ @Action("getMedicalRecordList") public Result getMedicalRecordList(String patientId){ String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_GetBA.Name,params->{ params.put("patientID",patientId); }); return Result.success(JsonHelper.parseArray(jsonString, MedicalRecord.class)); } /** * 获取该病人需要翻拍病历干啥的列表(用途)->直接绑定翻拍的病历类型 * @return 用途列表 */ @Action("getMRTemplateList") public Result getMRTemplateList(){ String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_GetTemplate.Name); return Result.success(JsonHelper.parseArray(jsonString)); } /** * 新增预约记录 * @param ipsID 住院号 * @param dx 诊断名称 * @param ptId 病人ID * @param ptName 病人姓名 * @param deptID 出院科室ID * @param deptName 出院科室 * @param ptIdcID 身份证 * @param phone 联系电话(邮寄时也填这个) * @param applicantName 委托代理人姓名 * @param applicantRel 申请人与病人关系 * @param applicantRelId 申请人与病人关系代码 * @param ptImg1 本人身份证正面照片 * @param ptImg2 本人身份证背面照片 * @param applicantIdcImg1 申请人身份证正面照片 * @param applicantIdcImg2 申请人身份证背面照片 * @param agreementLetterImg 申请书照片 * @param useWay 模板(templateName) * @param useWayId 模板id(templateNo) * @param getWay 获取方式:0.自提 1.邮寄 2.电子版 * @param address 邮寄的地址 * @return 是否成功及行数 */ @Action("addMRReserve") public Result addMRReserve(String ipsID, String dx, String ptId, String ptName, String deptID, String deptName, String ptIdcID, String phone, String applicantName, String applicantRel, String applicantRelId, byte[] ptImg1, byte[] ptImg2, byte[] applicantIdcImg1, byte[] applicantIdcImg2, byte[] agreementLetterImg, String useWay, String useWayId, String getWay, String address) { String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_SetAppointment.Name,params -> { params.put("ipsID", ipsID); params.put("dx", dx); params.put("ptId", ptId); params.put("ptName", ptName); params.put("deptID", deptID); params.put("deptName", deptName); params.put("ptIdcID", ptIdcID); params.put("phone", phone); params.put("applyerName", applicantName); params.put("applyerRel", applicantRel); params.put("applyerRelId", applicantRelId); params.put("ptImg1", ptImg1); params.put("ptImg2", ptImg2); params.put("applyerIdcImg1", applicantIdcImg1); params.put("applyerIdcImg2", applicantIdcImg2); params.put("agreementLetterImg", agreementLetterImg); params.put("useway", useWay); params.put("useWayId", useWayId); params.put("getWay", getWay); params.put("address", address); }); return Result.success(JsonHelper.parseObject(jsonString)); } /** * 获取该病人的病历翻拍历史 * @param patientId 病人Id * @return 历史记录 */ @Action("getMRHistory") public Result getMRHistory(String patientId,String flagTime,String begDate,String endDate){ String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_GetHistoryAppointment.Name,params->{ params.put("patientID",patientId); params.put("flagTime",flagTime); params.put("begdate",begDate); params.put("enddate",endDate); }); return Result.success(JsonHelper.parseArray(jsonString, MRHistory.class)); } /** * 病人修改病历的地址 * @param id 申请单号 * @param getWay 收货方式(0.自提 1.邮寄 2.电子版) * @param address 地址 * @return 是否修改成功 */ @Action("changeMRAddress") public Result changeMRAddress(Integer id,String getWay,String address) { String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_ChangeAddress.Name,params-> { params.put("Id",id); params.put("getWay",getWay); params.put("address",address); }); return Result.success(JsonHelper.parseObject(jsonString)); } /** * 停止未通过审核的病历预约 * @param id 申请单号 * @param delNote 删除理由 * @return 是否成功 */ @Action("stopMRReserve") public Result stopMRReserve(Integer id,String delNote){ String jsonString = XBDHttpHelper.ExecMethodGet(XBDEnum.BLSM_Appointment_StopAppointment.Name,params-> { params.put("Id",id); params.put("delNote",delNote); }); return Result.success(JsonHelper.parseObject(jsonString)); } }