Files
hospital-admin/src/api/basic/pharmacy.js
T
2026-09-17 08:57:53 +08:00

161 lines
3.7 KiB
JavaScript

import request from '@/utils/request';
/**
* 获取药房分页列表
* @param {Object} data - 查询参数及分页参数
* @returns {Promise}
*/
export function getPharmacyPage(data) {
return request({
url: '/admin/basic/pharmacy/page',
method: 'post',
data,
});
}
/**
* 获取药房列表(下拉选择框)
* @param {Object} params - 过滤条件
* @returns {Promise}
*/
export function getPharmacyList(params) {
return request({
url: '/admin/basic/pharmacy/list',
method: 'get',
params,
});
}
/**
* 获取药房详情
* @param {String} pharmacy_id - 药房 ID
* @returns {Promise}
*/
export function getPharmacyDetail(pharmacy_id) {
return request({
url: `/admin/basic/pharmacy/${pharmacy_id}`,
method: 'get',
});
}
/**
* 新增药房
* @param {Object} data - 药房实体参数
* @returns {Promise}
*/
export function addPharmacy(data) {
return request({
url: '/admin/basic/pharmacy',
method: 'post',
data,
});
}
/**
* 修改药房
* @param {String} pharmacy_id - 药房 ID
* @param {Object} data - 药房实体参数
* @returns {Promise}
*/
export function updatePharmacy(pharmacy_id, data) {
return request({
url: `/admin/basic/pharmacy/${pharmacy_id}`,
method: 'put',
data,
});
}
/**
* 切换药房状态(快捷开关)
* @param {String} pharmacy_id - 药房 ID
* @param {Number} status - 0: 禁用, 1: 正常
* @returns {Promise}
*/
export function updatePharmacyStatus(pharmacy_id, status) {
return request({
url: `/admin/basic/pharmacy/status/${pharmacy_id}`,
method: 'put',
data: { status },
});
}
/**
* 删除药房(软删除)
* @param {String} pharmacy_id - 药房 ID
* @returns {Promise}
*/
export function deletePharmacy(pharmacy_id) {
return request({
url: `/admin/basic/pharmacy/${pharmacy_id}`,
method: 'delete',
});
}
/**
* 获取药房绑定的医生列表-分页
* @param {Object} data - { pharmacy_id: string, page?: number, page_size?: number, doctor_name?: string, mobile?: string }
* @returns {Promise}
*/
export function getPharmacyDoctorPage(data) {
return request({
url: '/admin/basic/pharmacy/doctor/page',
method: 'post',
data,
});
}
/**
* 获取药房绑定的医生列表(全部/不分页)
* @param {String} pharmacy_id - 药房 ID
* @returns {Promise}
*/
export function getPharmacyDoctorList(pharmacy_id) {
return request({
url: `/admin/basic/pharmacy/doctor/${pharmacy_id}`,
method: 'get',
});
}
/**
* 导出药房关联医生列表
* @param {Object} data - 请求参数
* @param {1|2|3} data.type - 1:当前筛选导出, 2:选中的数据导出, 3:全部导出
* @param {string} [data.pharmacy_id] - 药房 ID
* @param {string} [data.doctor_name] - 医生姓名
* @param {string} [data.mobile] - 医生手机号
* @param {string} [data.id] - 选中的数据 ID,多条用英文逗号分隔
* @returns {Promise}
*/
export function exportPharmacyDoctor(data) {
return request({
url: '/admin/export/pharmacy/doctor',
method: 'post',
data,
});
}
/**
* 获取药房下线受影响医生列表(预检接口)
* @param {String|Number} pharmacy_id - 药房 ID
* @returns {Promise}
*/
export function getAffectedDoctors(pharmacy_id) {
return request({
url: `/admin/pharmacy/affected-doctors/${pharmacy_id}`,
method: 'get',
});
}
/**
* 批量迁移默认药房并执行下线操作
* @param {Object} data - { source_pharmacy_id, action: 'disable'|'delete', unbind_source: 1|0, transfers: Array<{ doctor_id, target_pharmacy_id }> }
* @returns {Promise}
*/
export function batchTransferAndAction(data) {
return request({
url: '/admin/pharmacy/batch-transfer-and-action',
method: 'post',
data,
});
}