批量分配教室

This commit is contained in:
Qi 2025-06-17 11:48:02 +08:00
parent 04b8fa5cbc
commit e58fe6f13f
4 changed files with 62 additions and 35 deletions

View File

@ -1,5 +1,5 @@
import { defHttp } from '/@/utils/http/axios';
import { useMessage } from "/@/hooks/web/useMessage";
import { useMessage } from '/@/hooks/web/useMessage';
const { createConfirm } = useMessage();
@ -25,8 +25,7 @@ export const getImportUrl = Api.importExcel;
*
* @param params
*/
export const list = (params) =>
defHttp.get({url: Api.list, params});
export const list = (params) => defHttp.get({ url: Api.list, params });
/**
*
@ -35,7 +34,7 @@ export const deleteOne = (params,handleSuccess) => {
return defHttp.delete({ url: Api.deleteOne, params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
}
};
/**
*
* @param params
@ -51,14 +50,14 @@ export const batchDelete = (params, handleSuccess) => {
return defHttp.delete({ url: Api.deleteBatch, data: params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
}
},
});
}
};
/**
*
* @param params
*/
export const saveOrUpdate = (params, isUpdate) => {
let url = isUpdate ? Api.edit : Api.save;
const url = isUpdate ? Api.edit : Api.save;
return defHttp.post({ url: url, params });
}
};

View File

@ -1,5 +1,5 @@
import { defHttp } from '/@/utils/http/axios';
import { useMessage } from "/@/hooks/web/useMessage";
import { useMessage } from '/@/hooks/web/useMessage';
const { createConfirm } = useMessage();
@ -11,6 +11,7 @@ enum Api {
deleteBatch = '/cet/cetGroup/deleteBatch',
importExcel = '/cet/cetGroup/importExcel',
exportXls = '/cet/cetGroup/exportXls',
batchHandleClassRooms = '/cet/cetGroup/batchHandleClassRoom',
}
/**
* api
@ -25,8 +26,7 @@ export const getImportUrl = Api.importExcel;
*
* @param params
*/
export const list = (params) =>
defHttp.get({url: Api.list, params});
export const list = (params) => defHttp.get({ url: Api.list, params });
/**
*
@ -35,7 +35,7 @@ export const deleteOne = (params,handleSuccess) => {
return defHttp.delete({ url: Api.deleteOne, params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
}
};
/**
*
* @param params
@ -51,14 +51,32 @@ export const batchDelete = (params, handleSuccess) => {
return defHttp.delete({ url: Api.deleteBatch, data: params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
}
},
});
}
};
/**
*
* @param params
*/
export const batchHandleClassRoom = (params, handleSuccess) => {
createConfirm({
iconType: 'warning',
title: '确认分配教室',
content: '是否对选中数据进行分配教室',
okText: '确认',
cancelText: '取消',
onOk: () => {
return defHttp.post({ url: Api.batchHandleClassRooms, data: params }, { joinParamsToUrl: true }).then(() => {
handleSuccess();
});
},
});
};
/**
*
* @param params
*/
export const saveOrUpdate = (params, isUpdate) => {
let url = isUpdate ? Api.edit : Api.save;
const url = isUpdate ? Api.edit : Api.save;
return defHttp.post({ url: url, params });
}
};

View File

@ -10,6 +10,10 @@
<a-dropdown v-if="selectedRowKeys.length > 0">
<template #overlay>
<a-menu>
<a-menu-item key="1" @click="batchHandleClassRooms">
<Icon icon="ant-design:delete-outlined" />
批量分配教室
</a-menu-item>
<a-menu-item key="1" @click="batchHandleDelete">
<Icon icon="ant-design:delete-outlined" />
删除
@ -43,7 +47,7 @@
import { useListPage } from '/@/hooks/system/useListPage';
import CetGroupModal from './components/CetGroupModal.vue';
import { columns, searchFormSchema, superQuerySchema } from './CetGroup.data';
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './CetGroup.api';
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, batchHandleClassRoom } from './CetGroup.api';
import { downloadFile } from '/@/utils/common/renderUtils';
import { useUserStore } from '/@/store/modules/user';
const queryParam = reactive<any>({});
@ -140,6 +144,12 @@
async function batchHandleDelete() {
await batchDelete({ ids: selectedRowKeys.value }, handleSuccess);
}
/**
* 批量分配教室事件
*/
async function batchHandleClassRooms() {
await batchHandleClassRoom({ ids: selectedRowKeys.value }, handleSuccess);
}
/**
* 成功回调
*/

View File

@ -10,14 +10,14 @@
<a-dropdown v-if="selectedRowKeys.length > 0">
<template #overlay>
<a-menu>
<a-menu-item key="1" @click="batchHandleDelete">
<Icon icon="ant-design:delete-outlined" />
删除
</a-menu-item>
<a-menu-item key="1" @click="batchHandleGroup">
<Icon icon="ant-design:delete-outlined" />
批量分组
</a-menu-item>
<a-menu-item key="1" @click="batchHandleDelete">
<Icon icon="ant-design:delete-outlined" />
删除
</a-menu-item>
</a-menu>
</template>
<a-button