3091a16c34a6_sessions_add_index_update_time.py 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. """sessions add index update_time
  2. Revision ID: 3091a16c34a6
  3. Revises:
  4. Create Date: 2025-01-15 18:07:00.151468
  5. """
  6. from typing import Sequence, Union
  7. from alembic import op
  8. import sqlalchemy as sa
  9. from sqlalchemy.dialects import mysql
  10. # revision identifiers, used by Alembic.
  11. revision: str = '3091a16c34a6'
  12. down_revision: Union[str, None] = None
  13. branch_labels: Union[str, Sequence[str], None] = None
  14. depends_on: Union[str, Sequence[str], None] = None
  15. def upgrade() -> None:
  16. # ### commands auto generated by Alembic - please adjust! ###
  17. op.drop_table('knowledgebase')
  18. op.drop_table('user_tenant')
  19. op.drop_table('apps')
  20. op.drop_table('flow')
  21. op.create_index(op.f('ix_sessions_update_date'), 'sessions', ['update_date'], unique=False)
  22. # ### end Alembic commands ###
  23. def downgrade() -> None:
  24. # ### commands auto generated by Alembic - please adjust! ###
  25. op.drop_index(op.f('ix_sessions_update_date'), table_name='sessions')
  26. op.add_column('dialogs', sa.Column('parameters', mysql.TEXT(), nullable=True))
  27. op.create_table('flow',
  28. sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
  29. sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
  30. sa.Column('status', mysql.INTEGER(), autoincrement=False, nullable=False),
  31. sa.Column('description', mysql.VARCHAR(length=255), nullable=False),
  32. sa.Column('user_id', mysql.INTEGER(), autoincrement=False, nullable=False),
  33. sa.PrimaryKeyConstraint('id'),
  34. mysql_collate='utf8mb4_0900_ai_ci',
  35. mysql_default_charset='utf8mb4',
  36. mysql_engine='InnoDB'
  37. )
  38. op.create_table('apps',
  39. sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
  40. sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
  41. sa.Column('status', mysql.VARCHAR(length=16), nullable=False),
  42. sa.Column('description', mysql.TEXT(), nullable=False),
  43. sa.Column('tenant_id', mysql.VARCHAR(length=36), nullable=False),
  44. sa.Column('mode', mysql.VARCHAR(length=36), nullable=False),
  45. sa.PrimaryKeyConstraint('id'),
  46. mysql_collate='utf8mb4_0900_ai_ci',
  47. mysql_default_charset='utf8mb4',
  48. mysql_engine='InnoDB'
  49. )
  50. op.create_table('user_tenant',
  51. sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
  52. sa.Column('tenant_id', mysql.VARCHAR(length=32), nullable=True),
  53. sa.Column('user_id', mysql.VARCHAR(length=32), nullable=True),
  54. sa.Column('role', mysql.VARCHAR(length=32), nullable=True),
  55. sa.PrimaryKeyConstraint('id'),
  56. mysql_collate='utf8mb4_0900_ai_ci',
  57. mysql_default_charset='utf8mb4',
  58. mysql_engine='InnoDB'
  59. )
  60. op.create_table('knowledgebase',
  61. sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
  62. sa.Column('name', mysql.VARCHAR(length=128), nullable=True),
  63. sa.Column('permission', mysql.VARCHAR(length=32), nullable=True),
  64. sa.Column('tenant_id', mysql.VARCHAR(length=32), nullable=True),
  65. sa.Column('description', mysql.TEXT(), nullable=True),
  66. sa.Column('status', mysql.VARCHAR(length=1), nullable=True),
  67. sa.Column('doc_num', mysql.INTEGER(), autoincrement=False, nullable=True),
  68. sa.PrimaryKeyConstraint('id'),
  69. mysql_collate='utf8mb4_0900_ai_ci',
  70. mysql_default_charset='utf8mb4',
  71. mysql_engine='InnoDB'
  72. )
  73. op.create_table('chat_sessions',
  74. sa.Column('id', mysql.VARCHAR(length=36), nullable=False),
  75. sa.Column('name', mysql.VARCHAR(length=255), nullable=True),
  76. sa.Column('agent_id', mysql.VARCHAR(length=255), nullable=True),
  77. sa.Column('agent_type', mysql.INTEGER(), autoincrement=False, nullable=True),
  78. sa.Column('create_date', mysql.DATETIME(), nullable=True),
  79. sa.Column('update_date', mysql.DATETIME(), nullable=True),
  80. sa.Column('tenant_id', mysql.INTEGER(), autoincrement=False, nullable=True),
  81. sa.Column('message', mysql.TEXT(), nullable=True),
  82. sa.Column('reference', mysql.TEXT(), nullable=True),
  83. sa.Column('conversation_id', mysql.VARCHAR(length=36), nullable=True),
  84. sa.Column('event_type', mysql.VARCHAR(length=16), nullable=True),
  85. sa.Column('session_type', mysql.VARCHAR(length=16), nullable=True),
  86. sa.PrimaryKeyConstraint('id'),
  87. mysql_collate='utf8mb4_0900_ai_ci',
  88. mysql_default_charset='utf8mb4',
  89. mysql_engine='InnoDB'
  90. )
  91. op.create_index('ix_chat_sessions_update_date', 'chat_sessions', ['update_date'], unique=False)
  92. op.create_index('ix_chat_sessions_tenant_id', 'chat_sessions', ['tenant_id'], unique=False)
  93. op.create_index('ix_chat_sessions_conversation_id', 'chat_sessions', ['conversation_id'], unique=False)
  94. op.create_table('dialog',
  95. sa.Column('id', mysql.VARCHAR(length=255), nullable=False),
  96. sa.Column('name', mysql.VARCHAR(length=255), nullable=False),
  97. sa.Column('status', mysql.VARCHAR(length=1), nullable=False),
  98. sa.Column('description', mysql.VARCHAR(length=255), nullable=False),
  99. sa.Column('tenant_id', mysql.VARCHAR(length=36), nullable=False),
  100. sa.PrimaryKeyConstraint('id'),
  101. mysql_collate='utf8mb4_0900_ai_ci',
  102. mysql_default_charset='utf8mb4',
  103. mysql_engine='InnoDB'
  104. )
  105. op.create_table('chat_api_tokens',
  106. sa.Column('id', mysql.VARCHAR(charset='utf8mb3', collation='utf8mb3_general_ci', length=36), nullable=False),
  107. sa.Column('app_id', mysql.VARCHAR(charset='utf8mb3', collation='utf8mb3_general_ci', length=36), nullable=True),
  108. sa.Column('type', mysql.VARCHAR(charset='utf8mb3', collation='utf8mb3_general_ci', length=16), nullable=True),
  109. sa.Column('token', mysql.VARCHAR(charset='utf8mb3', collation='utf8mb3_general_ci', length=255), nullable=True),
  110. sa.Column('created_at', mysql.DATETIME(), nullable=True),
  111. sa.Column('last_used_at', mysql.DATETIME(), nullable=True),
  112. sa.PrimaryKeyConstraint('id'),
  113. mysql_default_charset='utf8mb3',
  114. mysql_engine='InnoDB',
  115. mysql_row_format='DYNAMIC'
  116. )
  117. op.create_index('ix_chat_api_tokens_app_id', 'chat_api_tokens', ['app_id'], unique=False)
  118. op.create_table('user_token',
  119. sa.Column('id', mysql.VARCHAR(length=16), nullable=False),
  120. sa.Column('account', mysql.VARCHAR(length=255), nullable=True),
  121. sa.Column('password', mysql.VARCHAR(length=255), nullable=True),
  122. sa.Column('access_token', mysql.VARCHAR(length=1000), nullable=True),
  123. sa.Column('refresh_token', mysql.VARCHAR(length=1000), nullable=True),
  124. sa.Column('created_at', mysql.DATETIME(), nullable=True),
  125. sa.Column('updated_at', mysql.DATETIME(), nullable=True),
  126. sa.PrimaryKeyConstraint('id'),
  127. mysql_collate='utf8mb4_0900_ai_ci',
  128. mysql_default_charset='utf8mb4',
  129. mysql_engine='InnoDB'
  130. )
  131. # ### end Alembic commands ###