training_data/packages/common/src/constants.ts

98 lines
2.0 KiB
TypeScript
Executable File

import { Prisma } from "@prisma/client";
import { AppConfigSlug, ObjectType, RolePerms, TaxonomySlug } from "./enum";
export const InitRoles: {
name: string;
permissions: string[];
system?: boolean;
}[] = [
{
name: "基层",
permissions: [
RolePerms.CREATE_TROUBLE,
RolePerms.CREATE_WORKPROGRESS,
RolePerms.READ_DOM_TERM,
RolePerms.READ_AUDIT_TROUBLE,
],
},
{
name: "机关",
permissions: [
RolePerms.CREATE_TROUBLE,
RolePerms.CREATE_WORKPROGRESS,
RolePerms.CREATE_ALERT,
RolePerms.READ_DOM_TERM,
RolePerms.MANAGE_DOM_TROUBLE,
RolePerms.READ_AUDIT_TROUBLE,
],
},
{
name: "领导",
permissions: [
RolePerms.READ_DOM_TERM,
RolePerms.READ_DOM_TROUBLE,
RolePerms.CREATE_INSTRUCTION,
],
},
{
name: "域管理员",
permissions: Object.keys(RolePerms).filter(
(perm) =>
![
RolePerms.READ_ANY_CHART,
RolePerms.READ_ANY_TROUBLE,
RolePerms.READ_ANY_TERM,
].includes(perm as any)
) as RolePerms[],
},
{
name: "根管理员",
permissions: Object.keys(RolePerms) as RolePerms[],
},
];
export const InitTaxonomies: {
name: string;
slug: string;
objectType?: string[];
}[] = [
{
name: "课程分类",
slug: TaxonomySlug.CATEGORY,
objectType: [ObjectType.COURSE],
},
{
name: "难度等级",
slug: TaxonomySlug.LEVEL,
objectType: [ObjectType.COURSE],
},
// {
// name: "研判单元",
// slug: TaxonomySlug.UNIT,
// },
// {
// name: "标签",
// slug: TaxonomySlug.TAG,
// },
];
export const InitAppConfigs: Prisma.AppConfigCreateInput[] = [
{
title: "基本设置",
slug: AppConfigSlug.BASE_SETTING,
description: "",
},
];
export const videoMimeTypes = [
"video/*", // 通配符 (部分浏览器可能不支持)
"video/mp4", // .mp4
"video/quicktime", // .mov
"video/x-msvideo", // .avi
"video/x-matroska", // .mkv
"video/webm", // .webm
"video/ogg", // .ogv
"video/mpeg", // .mpeg
"video/3gpp", // .3gp
"video/3gpp2", // .3g2
"video/x-flv", // .flv
"video/x-ms-wmv", // .wmv
];