Filter by feedback type in view messages dialog (#2869)

* Update get chat messages and stats filter to work with feedback type filter

* Add feedback type filter to view messages dialog

* Fix issues with feedback type filter
This commit is contained in:
Ilango
2024-07-26 20:17:58 +05:30
committed by GitHub
parent 1c730323e2
commit e5018d2743
6 changed files with 175 additions and 18 deletions
@@ -1,6 +1,6 @@
import { DeleteResult, FindOptionsWhere } from 'typeorm'
import { StatusCodes } from 'http-status-codes'
import { chatType, IChatMessage } from '../../Interface'
import { ChatMessageRatingType, chatType, IChatMessage } from '../../Interface'
import { utilGetChatMessage } from '../../utils/getChatMessage'
import { utilAddChatMessage } from '../../utils/addChatMesage'
import { getRunningExpressApp } from '../../utils/getRunningExpressApp'
@@ -35,7 +35,8 @@ const getAllChatMessages = async (
startDate?: string,
endDate?: string,
messageId?: string,
feedback?: boolean
feedback?: boolean,
feedbackTypes?: ChatMessageRatingType[]
): Promise<ChatMessage[]> => {
try {
const dbResponse = await utilGetChatMessage(
@@ -48,7 +49,8 @@ const getAllChatMessages = async (
startDate,
endDate,
messageId,
feedback
feedback,
feedbackTypes
)
return dbResponse
} catch (error) {
@@ -70,7 +72,8 @@ const getAllInternalChatMessages = async (
startDate?: string,
endDate?: string,
messageId?: string,
feedback?: boolean
feedback?: boolean,
feedbackTypes?: ChatMessageRatingType[]
): Promise<ChatMessage[]> => {
try {
const dbResponse = await utilGetChatMessage(
@@ -83,7 +86,8 @@ const getAllInternalChatMessages = async (
startDate,
endDate,
messageId,
feedback
feedback,
feedbackTypes
)
return dbResponse
} catch (error) {
+5 -3
View File
@@ -1,5 +1,5 @@
import { StatusCodes } from 'http-status-codes'
import { chatType } from '../../Interface'
import { ChatMessageRatingType, chatType } from '../../Interface'
import { ChatMessage } from '../../database/entities/ChatMessage'
import { utilGetChatMessage } from '../../utils/getChatMessage'
import { ChatMessageFeedback } from '../../database/entities/ChatMessageFeedback'
@@ -13,7 +13,8 @@ const getChatflowStats = async (
startDate?: string,
endDate?: string,
messageId?: string,
feedback?: boolean
feedback?: boolean,
feedbackTypes?: ChatMessageRatingType[]
): Promise<any> => {
try {
const chatmessages = (await utilGetChatMessage(
@@ -26,7 +27,8 @@ const getChatflowStats = async (
startDate,
endDate,
messageId,
feedback
feedback,
feedbackTypes
)) as Array<ChatMessage & { feedback?: ChatMessageFeedback }>
const totalMessages = chatmessages.length
const totalFeedback = chatmessages.filter((message) => message?.feedback).length