zhaoqingang
2024-12-06 cc04b89890cc057a64e976a271b5491df7dbd721
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
"""Initial migration
 
Revision ID: 580e984b9882
Revises: 
Create Date: 2024-12-06 10:54:42.146182
 
"""
from typing import Sequence, Union
 
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import mysql
 
# revision identifiers, used by Alembic.
revision: str = '580e984b9882'
down_revision: Union[str, None] = None
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
 
 
def upgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table('user_test',
    sa.Column('id', sa.Integer(), nullable=False),
    sa.Column('username', sa.String(length=255), nullable=True),
    sa.Column('hashed_password', sa.String(length=255), nullable=True),
    sa.Column('password', sa.String(length=255), nullable=True),
    sa.Column('compellation', sa.String(length=255), nullable=False),
    sa.Column('phone', sa.String(length=255), nullable=False),
    sa.Column('email', sa.String(length=255), nullable=False),
    sa.Column('description', sa.String(length=255), nullable=False),
    sa.Column('ragflow_id', sa.String(length=32), nullable=True),
    sa.Column('bisheng_id', sa.Integer(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_index(op.f('ix_user_test_id'), 'user_test', ['id'], unique=False)
    op.create_index(op.f('ix_user_test_username'), 'user_test', ['username'], unique=True)
    op.drop_table('df_api_token')
    op.drop_table('sessions')
    op.drop_table('flow_test')
    op.drop_table('app_register')
    op.drop_table('user_canvas')
    op.drop_table('flow')
    op.drop_index('ix_group_info_group_id', table_name='group_info')
    op.drop_index('ix_group_info_group_name', table_name='group_info')
    op.drop_table('group_info')
    op.drop_table('group_agent')
    op.drop_table('organization_group')
    op.drop_table('token')
    op.drop_table('dialog')
    op.drop_index('ix_agent_id', table_name='agent')
    op.add_column('user', sa.Column('updated_at11', sa.Integer(), nullable=True))
    op.alter_column('user', 'compellation',
               existing_type=mysql.VARCHAR(length=255),
               nullable=False)
    op.alter_column('user', 'phone',
               existing_type=mysql.VARCHAR(length=255),
               nullable=False)
    op.alter_column('user', 'email',
               existing_type=mysql.VARCHAR(length=255),
               nullable=False)
    op.alter_column('user', 'description',
               existing_type=mysql.VARCHAR(length=255),
               nullable=False)
    op.alter_column('user', 'ragflow_id',
               existing_type=mysql.VARCHAR(length=32),
               nullable=True)
    op.alter_column('user', 'bisheng_id',
               existing_type=mysql.INTEGER(),
               nullable=True)
    # ### end Alembic commands ###
 
 
def downgrade() -> None:
    # ### commands auto generated by Alembic - please adjust! ###
    op.alter_column('user', 'bisheng_id',
               existing_type=mysql.INTEGER(),
               nullable=False)
    op.alter_column('user', 'ragflow_id',
               existing_type=mysql.VARCHAR(length=32),
               nullable=False)
    op.alter_column('user', 'description',
               existing_type=mysql.VARCHAR(length=255),
               nullable=True)
    op.alter_column('user', 'email',
               existing_type=mysql.VARCHAR(length=255),
               nullable=True)
    op.alter_column('user', 'phone',
               existing_type=mysql.VARCHAR(length=255),
               nullable=True)
    op.alter_column('user', 'compellation',
               existing_type=mysql.VARCHAR(length=255),
               nullable=True)
    op.drop_column('user', 'updated_at11')
    op.create_index('ix_agent_id', 'agent', ['id'], unique=False)
    op.create_table('dialog',
    sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('llm_id', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('status', mysql.VARCHAR(length=1), nullable=False),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('token',
    sa.Column('id', mysql.INTEGER(), autoincrement=True, nullable=False),
    sa.Column('user_id', mysql.INTEGER(), autoincrement=False, nullable=True),
    sa.Column('token', mysql.TEXT(), nullable=True),
    sa.Column('bisheng_token', mysql.TEXT(), nullable=True),
    sa.Column('ragflow_token', mysql.TEXT(), nullable=True),
    sa.Column('created_at', mysql.DATETIME(), nullable=True),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('organization_group',
    sa.Column('group_id', mysql.INTEGER(), autoincrement=False, nullable=True),
    sa.Column('organization_id', mysql.VARCHAR(length=36), nullable=True),
    sa.ForeignKeyConstraint(['group_id'], ['group.id'], name='organization_group_ibfk_1'),
    sa.ForeignKeyConstraint(['organization_id'], ['organization.id'], name='organization_group_ibfk_2'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('group_agent',
    sa.Column('group_id', mysql.INTEGER(), autoincrement=False, nullable=True),
    sa.Column('agent_id', mysql.VARCHAR(length=36), nullable=True),
    sa.ForeignKeyConstraint(['agent_id'], ['canvas.id'], name='group_agent_ibfk_2', ondelete='CASCADE'),
    sa.ForeignKeyConstraint(['group_id'], ['group.id'], name='group_agent_ibfk_1', ondelete='CASCADE'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('group_info',
    sa.Column('group_id', mysql.INTEGER(), autoincrement=True, nullable=False),
    sa.Column('group_name', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('group_description', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('group_status', mysql.INTEGER(), autoincrement=False, nullable=False),
    sa.Column('created_at', mysql.DATETIME(), nullable=True),
    sa.Column('updated_at', mysql.DATETIME(), nullable=True),
    sa.PrimaryKeyConstraint('group_id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_index('ix_group_info_group_name', 'group_info', ['group_name'], unique=True)
    op.create_index('ix_group_info_group_id', 'group_info', ['group_id'], unique=False)
    op.create_table('flow',
    sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('status', mysql.INTEGER(), autoincrement=False, nullable=False),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('user_canvas',
    sa.Column('id', mysql.VARCHAR(length=32), nullable=False),
    sa.Column('create_date', mysql.DATETIME(), nullable=True),
    sa.Column('update_date', mysql.DATETIME(), nullable=True),
    sa.Column('avatar', mysql.TEXT(), nullable=True),
    sa.Column('user_id', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('title', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('description', mysql.TEXT(), nullable=True),
    sa.Column('canvas_type', mysql.VARCHAR(length=32), nullable=True),
    sa.Column('dsl', mysql.TEXT(), nullable=True),
    sa.Column('agent_type', mysql.VARCHAR(length=2), nullable=True),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('app_register',
    sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
    sa.Column('name', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('status', mysql.INTEGER(), autoincrement=False, nullable=False),
    sa.Column('created_at', mysql.DATETIME(), nullable=True),
    sa.Column('updated_at', mysql.DATETIME(), nullable=True),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('flow_test',
    sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('status', mysql.INTEGER(), autoincrement=False, nullable=False),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('sessions',
    sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
    sa.Column('name', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('agent_id', mysql.VARCHAR(length=255), nullable=True),
    sa.Column('agent_type', mysql.ENUM('RAGFLOW', 'BISHENG', 'BASIC', 'DIFY'), nullable=False),
    sa.Column('create_date', mysql.DATETIME(), nullable=True),
    sa.Column('update_date', mysql.DATETIME(), nullable=True),
    sa.Column('tenant_id', mysql.INTEGER(), autoincrement=False, nullable=True),
    sa.Column('message', mysql.TEXT(), nullable=True),
    sa.Column('conversation_id', mysql.VARCHAR(length=64), nullable=True),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.create_table('df_api_token',
    sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
    sa.Column('token', mysql.VARCHAR(length=36), nullable=True),
    sa.Column('created_at', mysql.DATETIME(), nullable=True),
    sa.Column('updated_at', mysql.DATETIME(), nullable=True),
    sa.PrimaryKeyConstraint('id'),
    mysql_collate='utf8mb4_0900_ai_ci',
    mysql_default_charset='utf8mb4',
    mysql_engine='InnoDB'
    )
    op.drop_index(op.f('ix_user_test_username'), table_name='user_test')
    op.drop_index(op.f('ix_user_test_id'), table_name='user_test')
    op.drop_table('user_test')
    # ### end Alembic commands ###