import request from '@/utils/request' // 中医诊单列表 export function tcmDiagnosisLists(params: any) { return request.get({ url: '/tcm.diagnosis/lists', params }) } // 医助理诊单统计(按部门、按人) export function assistantDiagnosisStats(params?: { start_time?: string; end_time?: string; days?: number }) { return request.get({ url: '/tcm.diagnosis/assistantDiagnosisStats', params }) } // 添加中医诊单 export function tcmDiagnosisAdd(params: any) { return request.post({ url: '/tcm.diagnosis/add', params }) } // 编辑中医诊单 export function tcmDiagnosisEdit(params: any) { return request.post({ url: '/tcm.diagnosis/edit', params }) } // 删除中医诊单 export function tcmDiagnosisDelete(params: any) { return request.post({ url: '/tcm.diagnosis/delete', params }) } // 中医诊单详情 export function tcmDiagnosisDetail(params: any) { return request.get({ url: '/tcm.diagnosis/detail', params }) } /** 诊单挂号 / 取消挂号 操作日志 */ export function tcmDiagnosisGuahaoLogList(params: { id: number }) { return request.get({ url: '/tcm.diagnosis/guahaoLogList', params }) } // 检查手机号是否重复 export function checkPhone(params: any) { return request.post({ url: '/tcm.diagnosis/checkPhone', params }) } // 检查身份证号是否重复 export function checkIdCard(params: any) { return request.post({ url: '/tcm.diagnosis/checkIdCard', params }) } // 补全身份证号(自动更新年龄) export function fillIdCard(params: { id: number; id_card: string }) { return request.post({ url: '/tcm.diagnosis/fillIdCard', params }) } // 指派医助 export function tcmDiagnosisAssign(params: any) { return request.post({ url: '/tcm.diagnosis/assign', params }) } export function tcmDiagnosisAssignLogList(params: { id: number }) { return request.get({ url: '/tcm.diagnosis/assignLogList', params }) } // 获取医助列表 export function getAssistants() { return request.get({ url: '/tcm.diagnosis/getAssistants' }) } // 获取医生列表 export function getDoctors() { return request.get({ url: '/tcm.diagnosis/getDoctors' }) } // ========== 血糖血压记录 ========== // 添加血糖血压记录 export function bloodRecordAdd(params: any) { return request.post({ url: '/tcm.bloodRecord/add', params }) } // 编辑血糖血压记录 export function bloodRecordEdit(params: any) { return request.post({ url: '/tcm.bloodRecord/edit', params }) } // 删除血糖血压记录 export function bloodRecordDelete(params: any) { return request.post({ url: '/tcm.bloodRecord/delete', params }) } // 血糖血压记录详情 export function bloodRecordDetail(params: any) { return request.get({ url: '/tcm.bloodRecord/detail', params }) } // 获取患者的血糖血压记录列表 export function getRecordsByPatient(params: any) { return request.get({ url: '/tcm.bloodRecord/getRecordsByPatient', params }) } // 获取血糖趋势图数据 export function getBloodSugarTrend(params: any) { return request.get({ url: '/tcm.bloodRecord/getBloodSugarTrend', params }) } // ========== 饮食记录 ========== // 添加饮食记录 export function dietRecordAdd(params: any) { return request.post({ url: '/tcm.dietRecord/add', params }) } // 编辑饮食记录 export function dietRecordEdit(params: any) { return request.post({ url: '/tcm.dietRecord/edit', params }) } // 删除饮食记录 export function dietRecordDelete(params: any) { return request.post({ url: '/tcm.dietRecord/delete', params }) } // 饮食记录详情 export function dietRecordDetail(params: any) { return request.get({ url: '/tcm.dietRecord/detail', params }) } // 获取患者的饮食记录列表 export function getDietRecordsByPatient(params: any) { return request.get({ url: '/tcm.dietRecord/getRecordsByPatient', params }) } // ========== 运动记录 ========== // 添加运动记录 export function exerciseRecordAdd(params: any) { return request.post({ url: '/tcm.exerciseRecord/add', params }) } // 编辑运动记录 export function exerciseRecordEdit(params: any) { return request.post({ url: '/tcm.exerciseRecord/edit', params }) } // 删除运动记录 export function exerciseRecordDelete(params: any) { return request.post({ url: '/tcm.exerciseRecord/delete', params }) } // 运动记录详情 export function exerciseRecordDetail(params: any) { return request.get({ url: '/tcm.exerciseRecord/detail', params }) } // 获取患者的运动记录列表 export function getExerciseRecordsByPatient(params: any) { return request.get({ url: '/tcm.exerciseRecord/getRecordsByPatient', params }) } // 获取运动趋势图数据 export function getExerciseTrend(params: any) { return request.get({ url: '/tcm.exerciseRecord/getExerciseTrend', params }) } // ========== 音视频通话 ========== // 获取通话签名(忽略取消令牌,避免 open + 会话切换 watch 重复请求互斥取消) export function getCallSignature(params: any) { return request.post( { url: '/tcm.diagnosis/getCallSignature', params }, { ignoreCancelToken: true, isOpenRetry: false } ) } // 发起通话 export function startCall(params: any) { return request.post({ url: '/tcm.diagnosis/startCall', params }) } // 结束通话(忽略取消令牌:idle / afterCalling 可能并发触发相同请求体) export function endCall(params: any) { return request.post( { url: '/tcm.diagnosis/endCall', params }, { ignoreCancelToken: true, isOpenRetry: false } ) } // 获取通话记录 export function getCallRecords(params: any) { return request.get({ url: '/tcm.diagnosis/getCallRecords', params }) } // 将 TRTC 房间号写入通话记录(与云端录制回调 room 关联) export function bindCallRoom(params: { diagnosis_id: number; room_id: string }) { return request.post({ url: '/tcm.diagnosis/bindCallRoom', params }) } /** 医生接通并绑定房间后:发起腾讯云云端混流录制 */ export function startCloudRecording(params: { diagnosis_id: number }) { return request.post({ url: '/tcm.diagnosis/startCloudRecording', params }) } /** 本地录制完成后,将已上传视频的访问地址写入通话记录(忽略取消令牌,避免与其它 POST 互斥取消) */ export function attachLocalCallRecording(params: { diagnosis_id: number; file_url: string }) { return request.post( { url: '/tcm.diagnosis/attachLocalCallRecording', params }, { ignoreCancelToken: true, isOpenRetry: false } ) } /** 医助旁观当前进行中的视频通话(进房参数,Web TRTC 只拉流) */ export function getAssistantWatchCallParams(params: { diagnosis_id: number }) { return request.get({ url: '/tcm.diagnosis/watchCall', params }) } // ========== 小程序分享 ========== // 生成小程序码 export function generateMiniProgramQrcode(params: any) { return request.post({ url: '/tcm.diagnosis/generateMiniProgramQrcode', params }) } // 生成订单小程序码 export function generateOrderQrcode(params: any) { return request.post({ url: '/tcm.diagnosis/generateOrderQrcode', params }) } // ========== IM / 企业微信聊天记录 ========== /** 腾讯云 IM 单聊漫游消息(诊单维度:患者 patient_* 与医生 doctor_*) */ export function getImChatMessages(params: { diagnosis_id: number; only_archived?: 0 | 1 }) { return request.get({ url: '/tcm.diagnosis/getImChatMessages', params }) } // 获取企业微信聊天记录 export function getWechatChatRecords(params: any) { return request.get({ url: '/tcm.diagnosis/getWechatChatRecords', params }) } // 添加企业微信聊天记录 export function addWechatChatRecord(params: any) { return request.post({ url: '/tcm.diagnosis/addWechatChatRecord', params }) } // 删除企业微信聊天记录 export function deleteWechatChatRecord(params: any) { return request.post({ url: '/tcm.diagnosis/deleteWechatChatRecord', params }) } // 获取企业微信外部联系人信息 export function getWechatExternalContact(params: any) { return request.get({ url: '/tcm.diagnosis/getWechatExternalContact', params }) } // 获取会话内容存档开启的成员列表 export function getMsgAuditPermitUsers() { return request.get({ url: '/tcm.diagnosis/getMsgAuditPermitUsers' }) } // ========== 中医处方单 ========== // 处方列表 export function prescriptionLists(params: any) { return request.get({ url: '/tcm.prescription/lists', params }) } // 添加处方 export function prescriptionAdd(params: any) { return request.post({ url: '/tcm.prescription/add', params }) } // 编辑处方 export function prescriptionEdit(params: any) { return request.post({ url: '/tcm.prescription/edit', params }) } // 删除处方 export function prescriptionDelete(params: { id: number }) { return request.post({ url: '/tcm.prescription/delete', params }) } // 处方详情 export function prescriptionDetail(params: { id: number }) { return request.get({ url: '/tcm.prescription/detail', params }) } // 根据诊单获取处方列表 export function prescriptionListByDiagnosis(params: { diagnosis_id: number }) { return request.get({ url: '/tcm.prescription/listByDiagnosis', params }) } // 根据预约获取处方 export function prescriptionGetByAppointment(params: { appointment_id: number }) { return request.get({ url: '/tcm.prescription/getByAppointment', params }) } // 作废处方 export function prescriptionVoid(params: { id: number }) { return request.post({ url: '/tcm.prescription/void', params }) } /** 处方审核:action approve | reject(驳回同时作废处方) */ export function prescriptionAudit(params: { id: number; action: 'approve' | 'reject'; remark?: string }) { return request.post({ url: '/tcm.prescription/audit', params }) } // ========== 处方业务订单(履约单,非支付单 zyt_order) ========== export function prescriptionOrderCreate(params: Record) { return request.post({ url: '/tcm.prescriptionOrder/create', params }) } export function prescriptionOrderLists(params: any) { return request.get({ url: '/tcm.prescriptionOrder/lists', params }) } /** * 诊单下可关联的支付单(已支付 zyt_order;已占用且未撤回的会排除;编辑时传 prescription_order_id 保留当前单已选)。 * 服务端仅返回创建时间在 2026-04-20(含)之后的支付单;编辑时本单已关联的旧单仍会出现在列表中。 */ export function prescriptionOrderPaidPayOrders(params: { diagnosis_id: number prescription_order_id?: number }) { return request.get({ url: '/tcm.prescriptionOrder/paidPayOrders', params }) } export function prescriptionOrderWithdraw(params: { id: number }) { return request.post({ url: '/tcm.prescriptionOrder/withdraw', params }) } /** 业务订单物流轨迹(快递100 + 顺丰/京东官网链接) */ export function prescriptionOrderLogisticsTrace(params: { id: number; express_company?: string }) { return request.get({ url: '/tcm.prescriptionOrder/logisticsTrace', params }) } export function prescriptionOrderDetail(params: { id: number }) { return request.get({ url: '/tcm.prescriptionOrder/detail', params }) } export function prescriptionOrderEdit(params: Record) { return request.post({ url: '/tcm.prescriptionOrder/edit', params }) } /** 业务订单详情:仅修改关联处方的患者姓名与手机号 */ export function prescriptionOrderPatchPrescriptionPatient(params: { id: number patient_name: string phone: string }) { return request.post({ url: '/tcm.prescriptionOrder/patchPrescriptionPatient', params }) } export function prescriptionOrderAuditPrescription(params: { id: number action: 'approve' | 'reject' remark?: string }) { return request.post({ url: '/tcm.prescriptionOrder/auditPrescription', params }) } export function prescriptionOrderAuditPayment(params: { id: number action: 'approve' | 'reject' remark?: string }) { return request.post({ url: '/tcm.prescriptionOrder/auditPayment', params }) } /** 撤回处方审核 */ export function prescriptionOrderRevokeRxAudit(params: { id: number }) { return request.post({ url: '/tcm.prescriptionOrder/revokeRxAudit', params }) } /** 撤回支付单审核 */ export function prescriptionOrderRevokePayAudit(params: { id: number }) { return request.post({ url: '/tcm.prescriptionOrder/revokePayAudit', params }) } /** 确认发货:将 fulfillment_status 从 2(履约中)推进到 5(已发货) */ export function prescriptionOrderShip(params: { id: number ship_mode?: 'gancao' | 'direct' express_company: string tracking_number: string }) { return request.post({ url: '/tcm.prescriptionOrder/ship', params }) } /** 为「已发货」订单新增支付单并重置支付审核为待审核 */ export function prescriptionOrderAddPayOrder(params: { id: number order_type: number pay_amount: number pay_remark?: string }) { return request.post({ url: '/tcm.prescriptionOrder/addPayOrder', params }) } /** 为「已发货」订单关联已有支付单并重置支付审核为待审核 */ export function prescriptionOrderLinkPayOrder(params: { id: number pay_order_id: number }) { return request.post({ url: '/tcm.prescriptionOrder/linkPayOrder', params }) } /** 将「已发货/已签收」且支付审核通过的订单结案(3=已完成 或 7-12 业务状态) */ export function prescriptionOrderComplete(params: { id: number; fulfillment_status: number }) { return request.post({ url: '/tcm.prescriptionOrder/complete', params }) } /** 甘草药管家:中药处方下单(服务端 CTM_PREVIEW → CTM_SUBMIT_RECIPEL) */ export function prescriptionOrderSubmitGancaoRecipel(params: { id: number }) { return request.post({ url: '/tcm.prescriptionOrder/submitGancaoRecipel', params }) } /** 甘草药管家:预下单测试(仅 CTM_PREVIEW,不提交订单) */ export function prescriptionOrderPreviewGancaoRecipel(params: { id: number; dose_count?: number; medication_days?: number }) { return request.post({ url: '/tcm.prescriptionOrder/previewGancaoRecipel', params }) } /** 订单操作日志 */ export function prescriptionOrderLogs(params: { id: number }) { return request.get({ url: '/tcm.prescriptionOrder/logs', params }) } // ========== 处方库 ========== // 处方库列表 export function prescriptionLibraryLists(params: any) { return request.get({ url: '/tcm.prescriptionLibrary/lists', params }) } // 添加处方库 export function prescriptionLibraryAdd(params: any) { return request.post({ url: '/tcm.prescriptionLibrary/add', params }) } // 编辑处方库 export function prescriptionLibraryEdit(params: any) { return request.post({ url: '/tcm.prescriptionLibrary/edit', params }) } // 删除处方库 export function prescriptionLibraryDelete(params: { id: number }) { return request.post({ url: '/tcm.prescriptionLibrary/delete', params }) } // 处方库详情 export function prescriptionLibraryDetail(params: { id: number }) { return request.get({ url: '/tcm.prescriptionLibrary/detail', params }) }