diff --git a/admin/server/config.docker.yaml b/admin/server/config.docker.yaml index abd27d1d4..ea7a99496 100644 --- a/admin/server/config.docker.yaml +++ b/admin/server/config.docker.yaml @@ -131,6 +131,12 @@ qiniu: secret-key: "" use-https: false use-cdn-domains: false +dify-redis: + name: "" + addr: redis:6379 + password: difyai123456 + db: 0 + useCluster: false redis: name: "" addr: redis:6379 diff --git a/admin/server/initialize/ensure_tables.go b/admin/server/initialize/ensure_tables.go index f4f19990f..f70df220e 100644 --- a/admin/server/initialize/ensure_tables.go +++ b/admin/server/initialize/ensure_tables.go @@ -65,6 +65,8 @@ func (e *ensureTables) MigrateTable(ctx context.Context) (context.Context, error gaia.AccountDingTalkExtend{}, gaia.AppRequestTestBatch{}, gaia.AppRequestTest{}, + gaia.SystemIntegration{}, // Extend System Integration + sysModel.SysUserGlobalCode{}, // Extend Global Code // Extend gaia model } for _, t := range tables { @@ -109,6 +111,8 @@ func (e *ensureTables) TableCreated(ctx context.Context) bool { gaia.AccountDingTalkExtend{}, gaia.AppRequestTestBatch{}, gaia.AppRequestTest{}, + gaia.SystemIntegration{}, // Extend System Integration + sysModel.SysUserGlobalCode{}, // Extend Global Code // Extend gaia model } yes := true diff --git a/admin/server/initialize/gorm.go b/admin/server/initialize/gorm.go index c29c33fec..43bce835f 100644 --- a/admin/server/initialize/gorm.go +++ b/admin/server/initialize/gorm.go @@ -66,9 +66,9 @@ func RegisterTables() { gaia.AccountDingTalkExtend{}, gaia.AppRequestTestBatch{}, gaia.AppRequestTest{}, - // Extend gaia model gaia.SystemIntegration{}, // Extend System Integration system.SysUserGlobalCode{}, // Extend Global Code + // Extend gaia model ) if err != nil { global.GVA_LOG.Error("register table failed", zap.Error(err)) diff --git a/admin/server/source/system/menu.go b/admin/server/source/system/menu.go index 9876f108c..5bd29bfea 100644 --- a/admin/server/source/system/menu.go +++ b/admin/server/source/system/menu.go @@ -87,11 +87,11 @@ func (i *initMenu) InitializeData(ctx context.Context) (next context.Context, er {MenuLevel: 0, Hidden: false, ParentId: 0, Path: "UserList", Name: "UserList", Component: "view/user/index.vue", Sort: 1, Meta: Meta{Title: "用户列表", Icon: "user"}}, {MenuLevel: 0, Hidden: false, ParentId: 0, Path: "QuotaList", Name: "QuotaList", Component: "view/quota/index.vue", Sort: 2, Meta: Meta{Title: "额度管理", Icon: "wallet"}}, {MenuLevel: 0, Hidden: false, ParentId: 0, Path: "SuperTest", Name: "SuperTest", Component: "view/test/index.vue", Sort: 2, Meta: Meta{Title: "测试管理", Icon: "management"}}, - {MenuLevel: 0, Hidden: false, ParentId: 36, Path: "AppRequestTestBatch", Name: "AppRequestTestBatch", Component: "view/test/appRequest/index.vue", Sort: 1, Meta: Meta{Title: "测试批次", Icon: "list"}}, - {MenuLevel: 0, Hidden: true, ParentId: 36, Path: "AppRequestTestList", Name: "AppRequestTestList", Component: "view/test/appRequest/list.vue", Sort: 1, Meta: Meta{Title: "测试列表", Icon: "list"}}, + {MenuLevel: 0, Hidden: false, ParentId: 35, Path: "AppRequestTestBatch", Name: "AppRequestTestBatch", Component: "view/test/appRequest/index.vue", Sort: 1, Meta: Meta{Title: "测试批次", Icon: "list"}}, + {MenuLevel: 0, Hidden: true, ParentId: 35, Path: "AppRequestTestList", Name: "AppRequestTestList", Component: "view/test/appRequest/list.vue", Sort: 1, Meta: Meta{Title: "测试列表", Icon: "list"}}, // Extend Start: system integration {MenuLevel: 0, Hidden: false, ParentId: 0, Path: "SystemIntegrated", Name: "SystemIntegrated", Component: "view/systemIntegrated/index.vue", Sort: 1, Meta: Meta{Title: "系统集成", Icon: "box"}}, - {MenuLevel: 0, Hidden: false, ParentId: 39, Path: "IntegratedDingTalk", Name: "IntegratedDingTalk", Component: "view/systemIntegrated/dingTalk/index.vue", Sort: 1, Meta: Meta{Title: "钉钉", Icon: "turn-off"}}, + {MenuLevel: 0, Hidden: false, ParentId: 38, Path: "IntegratedDingTalk", Name: "IntegratedDingTalk", Component: "view/systemIntegrated/dingTalk/index.vue", Sort: 1, Meta: Meta{Title: "钉钉", Icon: "turn-off"}}, // Extend Stop: system integration // 二开部分 diff --git a/api/migrations/versions/2025_03_31_2136-588f1696997b_add_system_integration_extend.py b/api/migrations/versions/2025_03_31_2136-588f1696997b_add_system_integration_extend.py new file mode 100644 index 000000000..567493578 --- /dev/null +++ b/api/migrations/versions/2025_03_31_2136-588f1696997b_add_system_integration_extend.py @@ -0,0 +1,43 @@ +"""add_system_integration_extend + +Revision ID: 588f1696997b +Revises: 37e5bf7a1e53 +Create Date: 2025-03-31 21:36:03.818117 + +""" +from alembic import op +import models as models +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision = '588f1696997b' +down_revision = '37e5bf7a1e53' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('system_integration_extend', + sa.Column('id', sa.BigInteger(), autoincrement=True, nullable=False), + sa.Column('classify', sa.Integer(), server_default=sa.text('1'), nullable=False), + sa.Column('status', sa.Boolean(), server_default=sa.text('false'), nullable=False), + sa.Column('corp_id', sa.String(length=120), nullable=True), + sa.Column('agent_id', sa.String(length=120), nullable=True), + sa.Column('app_key', sa.String(length=120), nullable=True), + sa.Column('app_secret', sa.Text(), nullable=True), + sa.PrimaryKeyConstraint('id', name='system_integration_joins_pkey') + ) + with op.batch_alter_table('system_integration_extend', schema=None) as batch_op: + batch_op.create_index('system_integration_joins_classify_idx', ['classify'], unique=False) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('system_integration_extend', schema=None) as batch_op: + batch_op.drop_index('system_integration_joins_classify_idx') + + op.drop_table('system_integration_extend') + # ### end Alembic commands ### diff --git a/docker/docker-compose.dify-plus.yaml b/docker/docker-compose.dify-plus.yaml index a749df451..d8e957d29 100644 --- a/docker/docker-compose.dify-plus.yaml +++ b/docker/docker-compose.dify-plus.yaml @@ -393,7 +393,7 @@ x-shared-env: &shared-api-worker-env services: # API service api: - image: famousmai/dify-plus-api:0.0.7 + image: ccr.ccs.tencentyun.com/yfgaia/api:0.0.7 # build: # context: ../api # dockerfile: ./Dockerfile @@ -419,7 +419,7 @@ services: # worker service # The Celery worker for processing the queue. worker: - image: famousmai/dify-plus-api:0.0.7 + image: ccr.ccs.tencentyun.com/yfgaia/api:0.0.7 # build: # context: ../api # dockerfile: ./Dockerfile @@ -444,7 +444,7 @@ services: # Frontend web application. web: - image: famousmai/dify-plus-web:0.0.7 + image: ccr.ccs.tencentyun.com/yfgaia/web:0.0.7 # build: # context: ../web # dockerfile: ./Dockerfile @@ -608,7 +608,7 @@ services: AUTHORIZATION_ADMINLIST_USERS: ${WEAVIATE_AUTHORIZATION_ADMINLIST_USERS:-hello@dify.ai} admin-web: - image: famousmai/dify-plus-admin-web:0.0.7 + image: ccr.ccs.tencentyun.com/yfgaia/admin-web:0.0.7 # build: # context: ../admin/web # dockerfile: ./Dockerfile @@ -622,7 +622,7 @@ services: - default admin-server: - image: famousmai/dify-plus-admin-server:0.0.7 + image: ccr.ccs.tencentyun.com/yfgaia/admin-server:0.0.7-arm64 # build: # context: ../admin/server # dockerfile: ./Dockerfile