Flowise

Форк
0
82 строки · 2.9 Кб
1
import { StatusCodes } from 'http-status-codes'
2
import { getRunningExpressApp } from '../../utils/getRunningExpressApp'
3
import { Variable } from '../../database/entities/Variable'
4
import { InternalFlowiseError } from '../../errors/internalFlowiseError'
5
import { getErrorMessage } from '../../errors/utils'
6

7
const createVariable = async (newVariable: Variable) => {
8
    try {
9
        const appServer = getRunningExpressApp()
10
        const variable = await appServer.AppDataSource.getRepository(Variable).create(newVariable)
11
        const dbResponse = await appServer.AppDataSource.getRepository(Variable).save(variable)
12
        return dbResponse
13
    } catch (error) {
14
        throw new InternalFlowiseError(
15
            StatusCodes.INTERNAL_SERVER_ERROR,
16
            `Error: variablesServices.createVariable - ${getErrorMessage(error)}`
17
        )
18
    }
19
}
20

21
const deleteVariable = async (variableId: string): Promise<any> => {
22
    try {
23
        const appServer = getRunningExpressApp()
24
        const dbResponse = await appServer.AppDataSource.getRepository(Variable).delete({ id: variableId })
25
        return dbResponse
26
    } catch (error) {
27
        throw new InternalFlowiseError(
28
            StatusCodes.INTERNAL_SERVER_ERROR,
29
            `Error: variablesServices.deleteVariable - ${getErrorMessage(error)}`
30
        )
31
    }
32
}
33

34
const getAllVariables = async () => {
35
    try {
36
        const appServer = getRunningExpressApp()
37
        const dbResponse = await appServer.AppDataSource.getRepository(Variable).find()
38
        return dbResponse
39
    } catch (error) {
40
        throw new InternalFlowiseError(
41
            StatusCodes.INTERNAL_SERVER_ERROR,
42
            `Error: variablesServices.getAllVariables - ${getErrorMessage(error)}`
43
        )
44
    }
45
}
46

47
const getVariableById = async (variableId: string) => {
48
    try {
49
        const appServer = getRunningExpressApp()
50
        const dbResponse = await appServer.AppDataSource.getRepository(Variable).findOneBy({
51
            id: variableId
52
        })
53
        return dbResponse
54
    } catch (error) {
55
        throw new InternalFlowiseError(
56
            StatusCodes.INTERNAL_SERVER_ERROR,
57
            `Error: variablesServices.getVariableById - ${getErrorMessage(error)}`
58
        )
59
    }
60
}
61

62
const updateVariable = async (variable: Variable, updatedVariable: Variable) => {
63
    try {
64
        const appServer = getRunningExpressApp()
65
        const tmpUpdatedVariable = await appServer.AppDataSource.getRepository(Variable).merge(variable, updatedVariable)
66
        const dbResponse = await appServer.AppDataSource.getRepository(Variable).save(tmpUpdatedVariable)
67
        return dbResponse
68
    } catch (error) {
69
        throw new InternalFlowiseError(
70
            StatusCodes.INTERNAL_SERVER_ERROR,
71
            `Error: variablesServices.updateVariable - ${getErrorMessage(error)}`
72
        )
73
    }
74
}
75

76
export default {
77
    createVariable,
78
    deleteVariable,
79
    getAllVariables,
80
    getVariableById,
81
    updateVariable
82
}
83

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.