auth-web/src/store/monitor/schedulers.ts

78 lines
1.9 KiB
TypeScript

import { defineStore } from 'pinia';
import { fetchAddSchedulers, fetchDeleteSchedulers, fetchGetSchedulersList, fetchUpdateSchedulers } from '@/api/v1/schedulers';
import { pageSizes } from '@/enums/baseConstant';
import { storeMessage } from '@/utils/message';
import { storePagination } from '@/store/useStorePagination';
/**
* Schedulers视图 Store
*/
export const useSchedulersStore = defineStore('schedulersStore', {
state() {
return {
// Schedulers视图列表
datalist: [],
// 查询表单
form: {
// 任务名称
jobName: undefined,
// 任务分组
jobGroup: undefined,
// 任务详情
description: undefined,
// 任务类名称
jobClassName: undefined,
// 触发器名称
triggerName: undefined,
// triggerState触发器状态
triggerState: undefined,
},
// 分页查询结果
pagination: {
currentPage: 1,
pageSize: 150,
total: 100,
pageSizes,
},
// 加载
loading: false,
};
},
getters: {},
actions: {
/** 获取Schedulers视图 */
async getSchedulersList() {
// 整理请求参数
const data = { ...this.pagination, ...this.form };
delete data.pageSizes;
delete data.total;
delete data.background;
// 获取Schedulers视图列表
const result = await fetchGetSchedulersList(data);
// 公共页面函数hook
const pagination = storePagination.bind(this);
return pagination(result);
},
/** 添加Schedulers视图 */
async addSchedulers(data: any) {
const result = await fetchAddSchedulers(data);
return storeMessage(result);
},
/** 修改Schedulers视图 */
async updateSchedulers(data: any) {
const result = await fetchUpdateSchedulers(data);
return storeMessage(result);
},
/** 删除Schedulers视图 */
async deleteSchedulers(data: any) {
const result = await fetchDeleteSchedulers(data);
return storeMessage(result);
},
},
});