Files
xk-doctor-wx/api/businessApi.js
2026-08-12 08:57:35 +08:00

226 lines
8.5 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { req } from '@/common/js/index.js';
import { unwrapClinicRes } from '@/api/clinicAdmin.js';
/**
* 按前缀生成业务 API(订单/对账/提现/仓库等)
*/
export function createBusinessApi(prefix, headerFlag) {
const headerKey = headerFlag || '_businessAdmin';
function bizRequest(options) {
return req.request({
...options,
header: {
...(options.header || {}),
[headerKey]: '1',
},
}).then((res) => {
const data = unwrapClinicRes(res);
const ok = res && (res.code === 0 || (res.errcode != null && Number(res.errcode) !== -1));
return { res, data, ok };
});
}
return {
prefix,
getMyInfo() {
return bizRequest({ url: `${prefix}-auth/my-info`, method: 'GET' });
},
/** 个人中心 - 我的资料(xk-api GET {prefix}-auth/my-profile,实时库数据) */
getMyProfile() {
return bizRequest({ url: `${prefix}-auth/my-profile`, method: 'GET' });
},
/** 个人中心 - 修改资料(仅昵称/头像,xk-api POST {prefix}-auth/update-my-profile) */
updateMyProfile(data) {
return bizRequest({ url: `${prefix}-auth/update-my-profile`, method: 'POST', data });
},
/** 个人中心 - 修改登录密码(xk-api POST {prefix}-auth/update-password) */
updateMyPassword(data) {
return bizRequest({ url: `${prefix}-auth/update-password`, method: 'POST', data });
},
getInputStats() {
return bizRequest({ url: `${prefix}-auth/input-stats`, method: 'GET' });
},
getMyBalance() {
return bizRequest({ url: `${prefix}-account/my-balance`, method: 'GET' });
},
getMyCard() {
return bizRequest({ url: `${prefix}-account/my-card`, method: 'GET' });
},
saveMyCard(data) {
return bizRequest({ url: `${prefix}-account/save-card`, method: 'POST', data });
},
getLedgerLogList(params) {
return bizRequest({ url: `${prefix}-settlement/ledger-log-list`, method: 'GET', data: params });
},
getLedgerDetail(params) {
return bizRequest({ url: `${prefix}-settlement/ledger-detail`, method: 'GET', data: params });
},
getAccountChangeLogList(params) {
return bizRequest({ url: `${prefix}-account-change-log/list`, method: 'GET', data: params });
},
getWithdrawalList(params) {
return bizRequest({ url: `${prefix}-withdrawal/list`, method: 'GET', data: params });
},
getWithdrawalAuditList(params) {
return bizRequest({ url: `${prefix}-withdrawal/audit-list`, method: 'GET', data: params });
},
getWithdrawalDetail(id) {
return bizRequest({ url: `${prefix}-withdrawal/detail`, method: 'GET', data: { id } });
},
submitWithdrawal(data) {
return bizRequest({ url: `${prefix}-withdrawal/withdrawal`, method: 'POST', data });
},
passWithdrawal(data) {
return bizRequest({ url: `${prefix}-withdrawal/pass-application`, method: 'POST', data });
},
refuseWithdrawal(data) {
return bizRequest({ url: `${prefix}-withdrawal/refuse-application`, method: 'POST', data });
},
getReconciliationList(params) {
return bizRequest({ url: `${prefix}-reconciliation/list`, method: 'GET', data: params });
},
getReconciliationDrugList(params) {
return bizRequest({ url: `${prefix}-reconciliation/drug-list`, method: 'GET', data: params });
},
getReconciliationDrugOptions(params) {
return bizRequest({ url: `${prefix}-reconciliation/drug-options`, method: 'GET', data: params });
},
getReconciliationOrderOptions(params) {
return bizRequest({ url: `${prefix}-reconciliation/order-options`, method: 'GET', data: params });
},
getOrderSaleAmount(params) {
return bizRequest({ url: `${prefix}-order/sale-amount`, method: 'GET', data: params });
},
getPrescriptionDetail(id) {
return bizRequest({ url: `${prefix}-prescription/detail`, method: 'GET', data: { id } });
},
getOrderList(params) {
return bizRequest({ url: `${prefix}-order/list`, method: 'GET', data: params });
},
getOrderStatusOption() {
return bizRequest({ url: `${prefix}-order/status-option`, method: 'GET' });
},
/** 各状态订单数量(筛选不含 status,供 Tab 徽标) */
getOrderStatusCount(params) {
return bizRequest({ url: `${prefix}-order/status-count`, method: 'GET', data: params });
},
getOrderDetail(id) {
return bizRequest({ url: `${prefix}-order/detail`, method: 'GET', data: { id } });
},
getOrderTrace(params) {
return bizRequest({ url: `${prefix}-order/trace`, method: 'GET', data: params });
},
getOrderLedgerDetail(params) {
return bizRequest({ url: `${prefix}-order/ledger-detail`, method: 'GET', data: params });
},
getOrderReconciliationDetail(params) {
return bizRequest({ url: `${prefix}-order/reconciliation-detail`, method: 'GET', data: params });
},
refundOrder(data) {
return bizRequest({ url: `${prefix}-order/refund`, method: 'POST', data });
},
wareSendOrder(data) {
return bizRequest({ url: `${prefix}-order/ware-send`, method: 'POST', data });
},
getExpressDetailByOrderId(orderId) {
return bizRequest({
url: `${prefix}-express-detail/detail-by-order`,
method: 'POST',
data: { order_id: orderId },
});
},
getExpressCompaniesOption() {
return bizRequest({ url: `${prefix}-express-companies/option`, method: 'GET' });
},
getChinaErpSyncLogs(params) {
return bizRequest({ url: `${prefix}-order/china-erp-sync-logs`, method: 'GET', data: params });
},
syncChinaOrderToErp(data) {
return bizRequest({ url: `${prefix}-order/sync-china-erp`, method: 'POST', data });
},
getPriceAdjustConfig(storeId) {
return bizRequest({ url: `${prefix}-order/price-adjust-config`, method: 'GET', data: storeId ? { store_id: storeId } : {} });
},
adjustOrderPercent(data) {
return bizRequest({ url: `${prefix}-order/adjust-order-percent`, method: 'POST', data });
},
getWarehouseList(params) {
return bizRequest({ url: `${prefix}-warehouse/list`, method: 'GET', data: params });
},
getWarehouseDetail(id) {
return bizRequest({ url: `${prefix}-warehouse/detail`, method: 'GET', data: { id } });
},
updateWarehouseStatus(id) {
return bizRequest({ url: `${prefix}-warehouse/update-status`, method: 'GET', data: { id } });
},
updateWarehousePrice(data) {
return bizRequest({ url: `${prefix}-warehouse/update`, method: 'POST', data });
},
getWarehouseProductTypeOptions() {
return bizRequest({ url: `${prefix}-warehouse/product-type-options`, method: 'GET' });
},
getStoreOption() {
return bizRequest({ url: `${prefix}-store/option`, method: 'GET' });
},
getStoreInputList(params) {
return bizRequest({ url: `${prefix}-store-input/list`, method: 'GET', data: params });
},
getStoreInputDetail(id) {
return bizRequest({ url: `${prefix}-store-input/detail`, method: 'GET', data: { id } });
},
getPromoterOptions() {
return bizRequest({ url: `${prefix}-store-input/promoter-options`, method: 'GET' });
},
getPromoterDetail(params) {
return bizRequest({ url: `${prefix}-store-input/promoter-detail`, method: 'GET', data: params });
},
getStoreInputOption() {
return bizRequest({ url: `${prefix}-store-input/option`, method: 'GET' });
},
createStoreInput(data) {
return bizRequest({ url: `${prefix}-store-input/create`, method: 'POST', data });
},
updateStoreInput(data) {
return bizRequest({ url: `${prefix}-store-input/update`, method: 'POST', data });
},
auditStoreInput(data) {
return bizRequest({ url: `${prefix}-store-input/audit`, method: 'POST', data });
},
getDoctorInputList(params) {
return bizRequest({ url: `${prefix}-doctor-input/list`, method: 'GET', data: params });
},
getDoctorInputDetail(id) {
return bizRequest({ url: `${prefix}-doctor-input/detail`, method: 'GET', data: { id } });
},
createDoctorInput(data) {
return bizRequest({ url: `${prefix}-doctor-input/create`, method: 'POST', data });
},
updateDoctorInput(data) {
return bizRequest({ url: `${prefix}-doctor-input/update`, method: 'POST', data });
},
auditDoctorInput(data) {
return bizRequest({ url: `${prefix}-doctor-input/audit`, method: 'POST', data });
},
getDoctorTitleOption() {
return bizRequest({
url: `${prefix}-pharmacist/title-option`,
method: 'GET',
data: { type: 1 },
});
},
getDepartOption() {
return bizRequest({ url: `${prefix}-doctor/depart-option`, method: 'GET' });
},
};
}
export const platformAdminApi = createBusinessApi('/newApi/platform-admin', '_platformAdmin');
export const salespersonApi = createBusinessApi('/newApi/salesperson', '_salesperson');
export function getActiveBusinessApi() {
const mode = uni.getStorageSync('loginMode');
if (mode === 'platform_admin') return platformAdminApi;
if (mode === 'salesperson') return salespersonApi;
return null;
}