From 300a38e851e5dd41c299f82f739a40eea77f4d56 Mon Sep 17 00:00:00 2001 From: Megghy Date: Sat, 1 Mar 2025 00:18:46 +0800 Subject: [PATCH] add text review --- src/api/api-models.ts | 24 ++++ src/components/QuestionItem.vue | 38 ++++++- src/main.ts | 3 + src/store/useNotificationStore.ts | 39 +++++++ src/store/useQuestionBox.ts | 81 +++++++++---- src/views/manage/HistoryView.vue | 6 +- src/views/manage/QuestionBoxManageView.vue | 125 +++++++++++++++++---- 7 files changed, 271 insertions(+), 45 deletions(-) create mode 100644 src/store/useNotificationStore.ts diff --git a/src/api/api-models.ts b/src/api/api-models.ts index 93d3f67..e32539e 100644 --- a/src/api/api-models.ts +++ b/src/api/api-models.ts @@ -104,8 +104,16 @@ export interface Setting_SendEmail { recieveQA: boolean recieveQAReply: boolean } +export enum SaftyLevels { + Disabled, + Low, + Medium, + High +} export interface Setting_QuestionBox { allowUnregistedUser: boolean + + saftyLevel: SaftyLevels } export interface UserSetting { sendEmail: Setting_SendEmail @@ -326,6 +334,21 @@ export interface NotifactionInfo { message: string type: LevelTypes } +//SENSITIVE_TERM, HATE, VIOLENCE, PORNOGRAPHY, POLITICS, ADVERTISING, AGGRESSION +export enum ViolationTypes { + SENSITIVE_TERM, + HATE, + VIOLENCE, + PORNOGRAPHY, + POLITICS, + ADVERTISING, + AGGRESSION, +} +export type QAReviewInfo = { + isApproved: boolean + saftyScore: number + violationType: ViolationTypes[] +} export interface QAInfo { id: number sender: UserBasicInfo @@ -340,6 +363,7 @@ export interface QAInfo { isAnonymous: boolean tag?: string + reviewResult?: QAReviewInfo } export interface LotteryUserInfo { name: string diff --git a/src/components/QuestionItem.vue b/src/components/QuestionItem.vue index 50ff78c..682f023 100644 --- a/src/components/QuestionItem.vue +++ b/src/components/QuestionItem.vue @@ -1,10 +1,16 @@ - + {{ item.isAnonymous ? '匿名用户' : item.sender?.name }} @@ -39,6 +45,25 @@ const props = defineProps<{ + + - - {{ item.question?.message }} + + + {{ item.question?.message }} + +