|
|
@@ -2,7 +2,7 @@ import { ApiRequest } from '../api/req/ApiRequest'
|
|
|
import { Job } from '../api/rsp/Job'
|
|
|
import { Message } from '../api/rsp/Message'
|
|
|
import { Task } from '../api/rsp/Task'
|
|
|
-import { User } from '../api/rsp/User'
|
|
|
+import { getUserRolesName, User } from '../api/rsp/User'
|
|
|
import { Loading } from '../components/loading/Loading'
|
|
|
|
|
|
@Observed
|
|
|
@@ -26,13 +26,19 @@ export class VMHome {
|
|
|
// 获取最近三条通知
|
|
|
homeMessages: Message[] = []
|
|
|
// 作业页面Page加载器
|
|
|
- jobsPage: HomePageLoad = new HomePageLoad()
|
|
|
+ jobsPage: PageLoader = new PageLoader()
|
|
|
// 作业列表
|
|
|
jobs: Job[] = []
|
|
|
+ // 是否还有更多数据
|
|
|
+ jobsNoMore = false
|
|
|
// 任务页面Page加载器
|
|
|
- tasksPage: HomePageLoad = new HomePageLoad()
|
|
|
+ tasksPage: PageLoader = new PageLoader()
|
|
|
// 任务列表
|
|
|
tasks: Task[] = []
|
|
|
+ // 是否还有更多数据
|
|
|
+ tasksNoMore = false
|
|
|
+ // 处理角色类型
|
|
|
+ role: string = ""
|
|
|
|
|
|
/**
|
|
|
* 初始化首页数据
|
|
|
@@ -61,14 +67,25 @@ export class VMHome {
|
|
|
// 获取未读消息数
|
|
|
const msgCountRsp = await ApiRequest.getMessagesUnread()
|
|
|
// 查询进行中的作业,主要为了获取当前进行中的作业数
|
|
|
- const jobsRsp = await ApiRequest.getJobs({ pageNo: 1, pageSize: 1, status: "running" })
|
|
|
+ const jobsRsp = await ApiRequest.getJobs({
|
|
|
+ pageNo: 1,
|
|
|
+ pageSize: 1,
|
|
|
+ status: "running",
|
|
|
+ key: null
|
|
|
+ })
|
|
|
// 查询最近三条任务
|
|
|
- const tasksRsp = await ApiRequest.getTasks({ pageNo: 1, pageSize: 3, approvalStatus: "running" })
|
|
|
+ const tasksRsp = await ApiRequest.getTasks({
|
|
|
+ pageNo: 1,
|
|
|
+ pageSize: 3,
|
|
|
+ approvalStatus: "running",
|
|
|
+ key: null
|
|
|
+ })
|
|
|
// 获取最新三条通知
|
|
|
const msgRsp = await ApiRequest.getMessages({ pageNo: 1, pageSize: 3 })
|
|
|
// 查询进行中的任务
|
|
|
// 赋值操作放到最后,统一性
|
|
|
this.user = upRsp.data?.user ?? new User()
|
|
|
+ this.role = getUserRolesName(upRsp.data?.roles ?? [])
|
|
|
this.taskProgressCount = statisticsRsp.data?.inProgressCount ?? 0
|
|
|
this.taskFinishedCount = statisticsRsp.data?.completedCount ?? 0
|
|
|
this.jobProgressCount = jobsRsp.data?.total ?? 0
|
|
|
@@ -96,10 +113,6 @@ export class VMHome {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- onTabTaskRefresh() {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 更新当前选中状态
|
|
|
* @param index
|
|
|
@@ -113,7 +126,7 @@ export class VMHome {
|
|
|
*
|
|
|
* @param page
|
|
|
*/
|
|
|
- getJobsData(page: HomePageLoad) {
|
|
|
+ getJobsData(page: PageLoader) {
|
|
|
// 如果当前正在获取数据,则不进行获取
|
|
|
if (this.jobsPage.isGetData) {
|
|
|
return
|
|
|
@@ -123,9 +136,15 @@ export class VMHome {
|
|
|
pageSize: this.jobsPage.pageSize,
|
|
|
type: page.type,
|
|
|
isRefreshing: page.isRefreshing,
|
|
|
- isGetData: true
|
|
|
+ isGetData: true,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
- ApiRequest.getJobs({ pageNo: page.pageNo, pageSize: page.pageSize, status: page.type })
|
|
|
+ ApiRequest.getJobs({
|
|
|
+ pageNo: page.pageNo,
|
|
|
+ pageSize: page.pageSize,
|
|
|
+ status: page.type,
|
|
|
+ key: page.keywords
|
|
|
+ })
|
|
|
.then((rsp) => {
|
|
|
setTimeout(() => {
|
|
|
if (page.pageNo <= 1) {
|
|
|
@@ -133,12 +152,14 @@ export class VMHome {
|
|
|
} else {
|
|
|
this.jobs.push(...rsp.data?.list ?? [])
|
|
|
}
|
|
|
+ this.jobsNoMore = this.jobs.length == (rsp.data?.total ?? 0)
|
|
|
this.jobsPage = {
|
|
|
pageNo: page.pageNo,
|
|
|
pageSize: this.jobsPage.pageSize,
|
|
|
type: this.jobsPage.type,
|
|
|
isRefreshing: false,
|
|
|
- isGetData: false
|
|
|
+ isGetData: false,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
}, 500)
|
|
|
}).catch(() => {
|
|
|
@@ -148,7 +169,8 @@ export class VMHome {
|
|
|
pageSize: this.jobsPage.pageSize,
|
|
|
type: this.jobsPage.type,
|
|
|
isRefreshing: false,
|
|
|
- isGetData: false
|
|
|
+ isGetData: false,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
}, 500)
|
|
|
})
|
|
|
@@ -159,7 +181,7 @@ export class VMHome {
|
|
|
*
|
|
|
* @param page 当前加载的页
|
|
|
*/
|
|
|
- getTasksData(page: HomePageLoad) {
|
|
|
+ getTasksData(page: PageLoader) {
|
|
|
// 如果当前正在获取数据,则不进行获取
|
|
|
if (this.tasksPage.isGetData) {
|
|
|
return
|
|
|
@@ -169,9 +191,15 @@ export class VMHome {
|
|
|
pageSize: this.tasksPage.pageSize,
|
|
|
type: page.type,
|
|
|
isRefreshing: page.isRefreshing,
|
|
|
- isGetData: true
|
|
|
+ isGetData: true,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
- ApiRequest.getTasks({ pageNo: page.pageNo, pageSize: page.pageSize, approvalStatus: page.type })
|
|
|
+ ApiRequest.getTasks({
|
|
|
+ pageNo: page.pageNo,
|
|
|
+ pageSize: page.pageSize,
|
|
|
+ approvalStatus: page.type,
|
|
|
+ key: page.keywords
|
|
|
+ })
|
|
|
.then((rsp) => {
|
|
|
setTimeout(() => {
|
|
|
if (page.pageNo <= 1) {
|
|
|
@@ -179,12 +207,14 @@ export class VMHome {
|
|
|
} else {
|
|
|
this.tasks.push(...rsp.data?.list ?? [])
|
|
|
}
|
|
|
+ this.tasksNoMore = this.tasks.length == (rsp.data?.total ?? 0)
|
|
|
this.tasksPage = {
|
|
|
pageNo: page.pageNo,
|
|
|
pageSize: this.tasksPage.pageSize,
|
|
|
type: this.tasksPage.type,
|
|
|
isRefreshing: false,
|
|
|
- isGetData: false
|
|
|
+ isGetData: false,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
}, 500)
|
|
|
}).catch(() => {
|
|
|
@@ -194,7 +224,8 @@ export class VMHome {
|
|
|
pageSize: this.tasksPage.pageSize,
|
|
|
type: this.tasksPage.type,
|
|
|
isRefreshing: false,
|
|
|
- isGetData: false
|
|
|
+ isGetData: false,
|
|
|
+ keywords: page.keywords
|
|
|
}
|
|
|
}, 500)
|
|
|
})
|
|
|
@@ -202,12 +233,13 @@ export class VMHome {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 首页Page加载器
|
|
|
+ * Page加载器
|
|
|
*/
|
|
|
-export class HomePageLoad {
|
|
|
+export class PageLoader {
|
|
|
public pageNo: number = 1
|
|
|
public pageSize: number = 10
|
|
|
public type: string = ""
|
|
|
public isRefreshing: boolean = false
|
|
|
public isGetData: boolean = false
|
|
|
+ public keywords: string = ""
|
|
|
}
|