zhaoyingbo 6cb7a26ad5
All checks were successful
CI Monitor CI/CD / build-image (push) Successful in 23s
CI Monitor CI/CD / deploy (push) Successful in 35s
feat: 优化统计信息获取逻辑
2024-05-21 06:41:33 +00:00

45 lines
1.0 KiB
TypeScript

import { RecordModel } from "pocketbase";
import { managePb404 } from "../../utils/pbTools";
import pbClient from "../pbClient";
export interface StatisticsPerWeekRecordModel extends RecordModel {
week: string;
total_count: number;
failed_count: number;
success_count: number;
success_rate: number;
duration: number;
}
export interface StatisticsPerProjRecordModel extends RecordModel {
week: string;
name: string;
duration: number;
ref: string;
}
const getFullStatisticsByWeek = (week: string) => {
return managePb404<StatisticsPerWeekRecordModel>(
async () =>
await pbClient
.collection("statisticsPerWeek")
.getFirstListItem(`week="${week}"`)
);
};
const getProjStatisticsByWeek = (week: string) => {
return managePb404<StatisticsPerProjRecordModel[]>(
async () =>
await pbClient
.collection("statisticsPerProj")
.getFullList({ filter: `week="${week}"` })
);
};
const view = {
getFullStatisticsByWeek,
getProjStatisticsByWeek,
};
export default view;