feat: 患者端挂号预约流程改造与就诊人选择
- 挂号预约:register-info 流程重构、确认步骤/患者选择步骤组件、我的预约(myappiont)页对接 - 接口:register.js 补充挂号相关接口,api.js 调整 - 就诊人:claim-patient-modal 复用弹窗 - 医生信息:doctor-detail/doctor-userinfo 配合排班展示 - 规范:新增 Api-Module-Split.mdc 接口模块拆分规则
This commit is contained in:
@@ -1,5 +1,4 @@
|
||||
import http from './request'
|
||||
import { get } from './http'
|
||||
import {
|
||||
getPatientListApi,
|
||||
savePatientApi,
|
||||
@@ -113,11 +112,8 @@ export async function commentListTop(params) {
|
||||
return data
|
||||
}
|
||||
|
||||
// 医生 挂号信息
|
||||
export async function registerList(params) {
|
||||
let data = await http('/oldApi/v1/register/doc-register-info', params)
|
||||
return data
|
||||
}
|
||||
// 挂号域接口(registerList/registerCalendar/registe/registeInfo/registePay/registeUnpay/registeCancle)
|
||||
// 已按 Api-Module-Split 规则迁至 ./register.js,调用方请从 '@/request/api/register.js' 导入
|
||||
|
||||
|
||||
/** 就诊人列表(xk-api POST /patient/list) */
|
||||
@@ -174,42 +170,6 @@ export async function userEidtPatient(params) {
|
||||
return normalizeXkApiResponse(await getPatientHealthInfoApi(data))
|
||||
}
|
||||
|
||||
// 挂号
|
||||
export async function registe(params) {
|
||||
let data = await http('/oldApi/v1/register/register', params)
|
||||
return data
|
||||
}
|
||||
|
||||
// 挂号详情
|
||||
export async function registeInfo(params) {
|
||||
let data = await http('/oldApi/v1/register/register-detail', params)
|
||||
return data
|
||||
}
|
||||
|
||||
// 支付挂号(xk-api register/pay,易票联)
|
||||
export async function registePay(params) {
|
||||
let data = await http('/xkApi/register/pay', params)
|
||||
return normalizeXkApiResponse(data)
|
||||
}
|
||||
|
||||
// 取消挂号
|
||||
export async function registeUnpay(params) {
|
||||
let data = await http('/oldApi/v1/register/cancel', params)
|
||||
return data
|
||||
}
|
||||
|
||||
// 挂号退款
|
||||
export async function registeCancle(params) {
|
||||
let data = await http('/oldApi/v1/register/refund', params)
|
||||
return data
|
||||
}
|
||||
|
||||
// 挂号列表
|
||||
export async function registeList(params) {
|
||||
let data = await http('/oldApi/v1/register/list', params)
|
||||
return data
|
||||
}
|
||||
|
||||
// 设置 服务协议
|
||||
export async function service(params) {
|
||||
let data = await http('/oldApi/v1/other/service', params)
|
||||
|
||||
@@ -1,8 +1,30 @@
|
||||
import http from './request'
|
||||
import {post} from './http'
|
||||
import { unwrapXkApi } from '@/utils/api-response.js'
|
||||
|
||||
/**
|
||||
* 获取挂号记录列表
|
||||
* 挂号域接口统一模块(除 registerList 外均为 xk-api)
|
||||
* 取值:unwrapXkApi → code / result / message
|
||||
*
|
||||
* 说明:registe/registeInfo 等函数迁自 api.js,保持「http(url, { method, data })」
|
||||
* 老签名不动,避免改动全部调用方的传参结构;新增接口请用 post(url, params, 3) 新封装。
|
||||
*/
|
||||
|
||||
/**
|
||||
* 存量页面兼容:把 xk-api 的 code/result 抹成旧版 errcode/data
|
||||
* @deprecated 仅供 registePay 的存量调用方(读 res.data.errcode/data)过渡使用,
|
||||
* 新代码一律直接按 code/result 取值或用 unwrapXkApi,禁止再新增本函数的调用
|
||||
*/
|
||||
function normalizeXkApiResponse(res) {
|
||||
if (res && res.data && (res.data.code === 0 || res.data.code === '0')) {
|
||||
res.data.errcode = 0;
|
||||
res.data.data = res.data.result;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取挂号记录列表 xk-api POST /register/list
|
||||
* @param params { patient_id: number, store_id: number, page: number }
|
||||
* @returns {Promise<*>}
|
||||
*/
|
||||
@@ -11,7 +33,7 @@ export async function getRegisterListApi(params) {
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取待支付挂号列表(首页提醒用)
|
||||
* 获取待支付挂号列表(首页提醒用) xk-api POST /register/list
|
||||
* @param params
|
||||
* @returns {Promise<Array>}
|
||||
*/
|
||||
@@ -30,3 +52,69 @@ export async function fetchUnpaidRegisterListApi(params = {}) {
|
||||
const list = (payload && payload.list) || [];
|
||||
return list.filter((item) => item.status === 0 && item.is_cancel !== 1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 医生号源日历 xk-api GET /register/schedule-calendar(登录态)
|
||||
* 返回 { register_status, register_price, book_days, days[] },days 含每天出诊/时段/余号
|
||||
* 读值按 xk-api 形态:res.data.code == 0 → res.data.result
|
||||
*/
|
||||
export async function registerCalendar(params) {
|
||||
let data = await http('/xkApi/register/schedule-calendar', params)
|
||||
return data
|
||||
}
|
||||
|
||||
/**
|
||||
* 医生号源信息(游客态专用)
|
||||
* URL 写老 Yii doc-register-info,但 request.js 会在 guest 模式下重写到
|
||||
* xk-api /guest/guest-doctor/doc-register-info(响应 code/result 形态,result 带 calendar)
|
||||
* @deprecated 登录态请勿使用(会打到老 Yii),登录态一律走 registerCalendar
|
||||
*/
|
||||
export async function registerList(params) {
|
||||
let data = await http('/oldApi/v1/register/doc-register-info', params)
|
||||
return data
|
||||
}
|
||||
|
||||
/**
|
||||
* 挂号建单 xk-api POST /register/create(迁自老 Yii /v1/register/register)
|
||||
* 入参新增 visit_date(Y-m-d) + slot_id(0=全天兜底);返回 result{register_id, isHas}
|
||||
* 读值按 xk-api 形态:res.data.code == 0 → res.data.result
|
||||
*/
|
||||
export async function registe(params) {
|
||||
let data = await http('/xkApi/register/create', params)
|
||||
return data
|
||||
}
|
||||
|
||||
/**
|
||||
* 挂号详情 xk-api POST /register/detail(迁自老 Yii /v1/register/register-detail)
|
||||
* 返回 result 为单对象(老接口是 data.list[0]),附 appointment 预约日期/时段信息
|
||||
*/
|
||||
export async function registeInfo(params) {
|
||||
let data = await http('/xkApi/register/detail', params)
|
||||
return data
|
||||
}
|
||||
|
||||
/**
|
||||
* 挂号支付 xk-api POST /register/pay(易票联)
|
||||
* 存量调用方读 errcode/data,这里保留 normalize 过渡;0 元单返回 data.is_paid=1
|
||||
*/
|
||||
export async function registePay(params) {
|
||||
let data = await http('/xkApi/register/pay', params)
|
||||
return normalizeXkApiResponse(data)
|
||||
}
|
||||
|
||||
/**
|
||||
* 取消挂号 xk-api POST /register/cancel(仅未支付单,迁自老 Yii /v1/register/cancel)
|
||||
*/
|
||||
export async function registeUnpay(params) {
|
||||
let data = await http('/xkApi/register/cancel', params)
|
||||
return data
|
||||
}
|
||||
|
||||
/**
|
||||
* 挂号退款 xk-api POST /register/refund(已支付未接诊单,迁自老 Yii /v1/register/refund)
|
||||
* 注意:老 Yii refund 同时兼容未付取消,xk-api 拆成 cancel/refund 两个接口,页面按 status 分流
|
||||
*/
|
||||
export async function registeCancle(params) {
|
||||
let data = await http('/xkApi/register/refund', params)
|
||||
return data
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user