Files
qhmes/jeecgboot-vue3/src/views/xslmes/mesXslCustomer/MesXslCustomer.api.ts

69 lines
2.3 KiB
Vue
Raw Normal View History

import { defHttp } from '/@/utils/http/axios';
import { useMessage } from '/@/hooks/web/useMessage';
const { createConfirm } = useMessage();
enum Api {
list = '/xslmes/mesXslCustomer/list',
checkCustomerCode = '/xslmes/mesXslCustomer/checkCustomerCode',
queryById = '/xslmes/mesXslCustomer/queryById',
save = '/xslmes/mesXslCustomer/add',
edit = '/xslmes/mesXslCustomer/edit',
updateStatus = '/xslmes/mesXslCustomer/updateStatus',
deleteOne = '/xslmes/mesXslCustomer/delete',
deleteBatch = '/xslmes/mesXslCustomer/deleteBatch',
importExcel = '/xslmes/mesXslCustomer/importExcel',
exportXls = '/xslmes/mesXslCustomer/exportXls',
}
export const getExportUrl = Api.exportXls;
export const getImportUrl = Api.importExcel;
export const list = (params) => defHttp.get({ url: Api.list, params });
export const queryById = (params: { id: string }) => defHttp.get({ url: Api.queryById, params });
/** 客户编码唯一性校验(同租户;编辑传 dataId */
export const checkCustomerCode = (params: { customerCode: string; dataId?: string }) =>
defHttp.get(
{ url: Api.checkCustomerCode, params },
{
// 唯一性校验只走表单字段内联提示,不显示顶部全局消息
successMessageMode: 'none',
errorMessageMode: 'none',
}
);
export const deleteOne = (params, handleSuccess) => {
return defHttp.delete({ url: Api.deleteOne, params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
};
export const batchDelete = (params, handleSuccess) => {
createConfirm({
iconType: 'warning',
title: '确认删除',
content: '是否删除选中数据',
okText: '确认',
cancelText: '取消',
onOk: () => {
return defHttp.delete({ url: Api.deleteBatch, data: params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
},
});
};
export const saveOrUpdate = (params, isUpdate) => {
const url = isUpdate ? Api.edit : Api.save;
return defHttp.post({ url, params });
};
/** 启用/停用status 0 启用 1 停用(与供应商管理 MesXslSupplier.api.updateStatus 一致) */
export const updateStatus = (params: { id: string; status: string }, handleSuccess?: () => void) => {
return defHttp.post({ url: Api.updateStatus, params }, { joinParamsToUrl: true }).then(() => {
handleSuccess?.();
});
};