import request from '@/config/axios'

// 叫号 VO
export interface CallVO {
  id: number // id
  patId: string // 患者编号
  patName: string // 患者姓名
  patGender: number // 患者性别
  bookDate: Date // 预约日期
  seqNum: number // 排队序号
  passed: number // 过号标记
  expired: number // 预约过期标记
  called: number // 叫号状态 0 未播 1 已播 
  jumpFlag: number // 插队标记
  roomId: number // 诊室编号
  roomName: string // 诊室名称
  bedNo: string // 诊疗床编号
}

// 叫号 API
export const CallApi = {
  // 查询叫号分页
  getCallPage: async (params: any) => {
    return await request.get({ url: `/ecg/call/page`, params })
  },

  // 查询叫号详情
  getCall: async (id: number) => {
    return await request.get({ url: `/ecg/call/get?id=` + id })
  },

  // 新增叫号
  createCall: async (data: CallVO) => {
    return await request.post({ url: `/ecg/call/create`, data })
  },

  // 修改叫号
  updateCall: async (data: CallVO) => {
    return await request.put({ url: `/ecg/call/update`, data })
  },

  // 删除叫号
  deleteCall: async (id: number) => {
    return await request.delete({ url: `/ecg/call/delete?id=` + id })
  },

  // 导出叫号 Excel
  exportCall: async (params) => {
    return await request.download({ url: `/ecg/call/export-excel`, params })
  },

  // 大屏..获取下一叫号
  getNextCall: async () => {
    return await request.get({ url: `/ecg/call/next` })
  },

  // 诊间屏..获取下一叫号
  getNextInstallCall: async () => {
    return await request.get({ url: `/ecg/call/next-install` })
  }
}
