93 lines
2.1 KiB
Plaintext
93 lines
2.1 KiB
Plaintext
import { useWebUserStore } from '@/store/user/webUser';
|
|
import { reactive, ref } from 'vue';
|
|
import type { WebUser, WebUserUpdateForm } from '../../../../../../types/store/user/webUser';
|
|
import { messageBox } from '@/utils/message';
|
|
|
|
const webUserStore = useWebUserStore();
|
|
export const ids = ref<string[]>([]);
|
|
export const updateForm = reactive<WebUserUpdateForm>({
|
|
|
|
});
|
|
|
|
/**
|
|
* * 获取用户数据
|
|
*/
|
|
export const getDataList = async () => {
|
|
webUserStore.loading = true;
|
|
await webUserStore.getUserinfoList();
|
|
webUserStore.loading = false;
|
|
};
|
|
|
|
/**
|
|
* * 当前页改变时
|
|
*/
|
|
export const onCurrentPageChange = async (value: number) => {
|
|
webUserStore.pagination.currentPage = value;
|
|
await getDataList();
|
|
};
|
|
|
|
/**
|
|
* * 当分页发生变化
|
|
* @param value
|
|
*/
|
|
export const onPageSizeChange = (value: number) => {
|
|
webUserStore.pagination.pageSize = value;
|
|
getDataList().then();
|
|
};
|
|
|
|
/**
|
|
* * 选择行
|
|
* @param itemList
|
|
*/
|
|
export const handleSelectionChange = (itemList: WebUser[]) => {
|
|
ids.value = itemList.map(item => item.id);
|
|
};
|
|
|
|
/**
|
|
* * 添加操作
|
|
*/
|
|
export const onAdd = () => {
|
|
webUserStore.addDialogVisible = true;
|
|
};
|
|
|
|
/**
|
|
* * 当更新时
|
|
*/
|
|
export const onUpdate = ({ row }): void => {
|
|
// 合并数据
|
|
Object.assign(updateForm, row);
|
|
// 设置基础数据格式
|
|
updateForm.sex = row.sex === '女' ? 0 : 1;
|
|
// 打开弹窗
|
|
webUserStore.updateDialogVisible = true;
|
|
};
|
|
|
|
/**
|
|
* * 当删除时
|
|
*/
|
|
export const onDelete = async ({ row }) => {
|
|
const result = await webUserStore.deleteUserinfo([row.id]).then();
|
|
// 成功刷新数据
|
|
result && (await webUserStore.getUserinfoList());
|
|
};
|
|
|
|
/**
|
|
* * 批量删除
|
|
*/
|
|
export const onDeleteBatch = async () => {
|
|
const isConfirm = await messageBox({
|
|
message: '是否确认批量删除',
|
|
title: '删除警告',
|
|
showMessage: false,
|
|
confirmMessage: '删除成功',
|
|
cancelMessage: '取消删除',
|
|
});
|
|
// 确认删除时执行
|
|
if (isConfirm) {
|
|
const result = await webUserStore.deleteUserinfo(ids.value);
|
|
|
|
// 成功刷新数据
|
|
result && (await webUserStore.getUserinfoList());
|
|
}
|
|
};
|