diff --git a/.gitignore b/.gitignore index 17943495..830ed6b3 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /config.yml /build/ /apipark +.gitlab-ci.yml \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index df0d9946..00000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,98 +0,0 @@ -variables: - PATH: /opt/go-1.21/go/bin/:/opt/node/node/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin - GOROOT: /opt/go-1.21/go - GOPROXY: https://goproxy.cn - VERSION: $CI_COMMIT_SHORT_SHA - APP: apipark - APP_PRE: ${APP}_${VERSION} - BUILD_DIR: ${APP}-build - DEPLOY_DESC: "DEV 环境" - VIEW_ADDR: http://172.18.166.219:8288 - SAVE_DIR: /opt/${APP} - NODE_OPTIONS: --max_old_space_size=8192 - -stages: - - notice - - prefix - - build - - deploy - - webhook - -feishu-informer: # 飞书回调 - stage: notice - variables: - DIFF_URL: "$CI_MERGE_REQUEST_PROJECT_URL/-/merge_requests/$CI_MERGE_REQUEST_IID/diffs" - rules: - - if: $CI_PIPELINE_SOURCE=="merge_request_event" && $CI_COMMIT_BRANCH =~ "main" - script: - - echo "merge request" - - | - curl -X POST -H "Content-Type: application/json" \ - -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"项目:${CI_PROJECT_NAME}\\n提交人:${GITLAB_USER_NAME}\\n提交信息:${CI_MERGE_REQUEST_TITLE}\\n合并分支信息:${CI_MERGE_REQUEST_SOURCE_BRANCH_NAME} -> ${CI_MERGE_REQUEST_TARGET_BRANCH_NAME}\\n差异性地址:${DIFF_URL}\\n请及时review代码\"}}" \ - https://open.feishu.cn/open-apis/bot/v2/hook/1c334752-2874-41a1-8f1b-3060f2d46b6c - -prebuild: - stage: prefix - rules: - - if: $CI_COMMIT_BRANCH == "main" - script: - - echo "prebuild" - - chmod +x ./scripts/prefix.sh - - ./scripts/prefix.sh - -builder: - stage: build - rules: - - if: $CI_COMMIT_BRANCH == "main" - script: - - set -e - - | - if [ ! -d "../artifacts" ]; then - mkdir -p ../artifacts - fi - if [ -d "../artifacts/dist" ]; then - cp -r ../artifacts/dist frontend/dist - fi - - | - if [ -n "$(git diff --name-status HEAD~1 HEAD -- frontend)" ]; then - ./scripts/build.sh $BUILD_DIR ${VERSION} all "" - else - ./scripts/build.sh $BUILD_DIR ${VERSION} - fi - if [ -d "frontend/dist" ]; then - echo "copy frontend/dist to artifacts/dist" - rm -fr ../artifacts/dist - cp -r frontend/dist ../artifacts/dist - fi - cp $BUILD_DIR/${APP_PRE}_linux_amd64.tar.gz ${SAVE_DIR} - -deployer: - stage: deploy - rules: - - if: $CI_COMMIT_BRANCH == "main" - variables: - APIPARK_GUEST_MODE: allow - APIPARK_GUEST_ID: dklejrfbhjqwdh - script: - - cd ${SAVE_DIR};mkdir -p ${APP_PRE};tar -zxvf ${APP_PRE}_linux_amd64.tar.gz -C ${APP_PRE};cd ${APP_PRE};./install.sh ${SAVE_DIR};./run.sh restart;cd ${SAVE_DIR} && ./clean.sh ${APP_PRE} - when: on_success -success: - stage: webhook - rules: - - if: $CI_COMMIT_BRANCH == "main" - script: - - | - curl -X POST -H "Content-Type: application/json" \ - -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"最近一次提交:${CI_COMMIT_TITLE}\\n提交人:${GITLAB_USER_NAME}\\n项目:${CI_PROJECT_NAME}\\n环境:${DEPLOY_DESC}\\n更新部署完成.\\n访问地址:${VIEW_ADDR}\\n工作流地址:${CI_PIPELINE_URL}\"}}" \ - https://open.feishu.cn/open-apis/bot/v2/hook/c3672932-4dfa-4989-8023-0128bae59338 - when: on_success -failure: - stage: webhook - rules: - - if: $CI_COMMIT_BRANCH == "main" - script: - - | - curl -X POST -H "Content-Type: application/json" \ - -d "{\"msg_type\":\"text\",\"content\":{\"text\":\"最近一次提交:${CI_COMMIT_TITLE}\\n提交人:${GITLAB_USER_NAME}\\n项目:${CI_PROJECT_NAME}\\n环境:${DEPLOY_DESC}\\n更新部署失败,请及时到gitlab上查看\\n工作流地址:${CI_PIPELINE_URL}\"}}" \ - https://open.feishu.cn/open-apis/bot/v2/hook/c3672932-4dfa-4989-8023-0128bae59338 - when: on_failure diff --git a/frontend/packages/common/src/components/aoplatform/WithPermission.tsx b/frontend/packages/common/src/components/aoplatform/WithPermission.tsx index e092d411..2b1a37d7 100644 --- a/frontend/packages/common/src/components/aoplatform/WithPermission.tsx +++ b/frontend/packages/common/src/components/aoplatform/WithPermission.tsx @@ -39,7 +39,7 @@ const WithPermission = ({access, tooltip, children,disabled, showDisabled = true { cloneElement(children, {disabled:true})} } {!editAccess && (children?.type !== Button && children?.type !== Upload && showDisabled) && - { cloneElement(children, {disabled:true,okButtonProps:{disabled:true}})} + { cloneElement(children, {disabled:true, onClick:(e)=>e.preventDefault(),okButtonProps:{disabled:true}})} } diff --git a/frontend/packages/core/src/App.css b/frontend/packages/core/src/App.css index 9afb2c31..dbc2b579 100644 --- a/frontend/packages/core/src/App.css +++ b/frontend/packages/core/src/App.css @@ -294,4 +294,9 @@ a{ .ant-select-selection-overflow-item:first-child { max-width: calc(100% - 60px); margin-right: 4px; - } \ No newline at end of file + } + + a[disabled]:hover { + color: #BBB; + cursor: not-allowed; + } \ No newline at end of file diff --git a/frontend/packages/core/src/pages/aiService/AiServiceInsidePage.tsx b/frontend/packages/core/src/pages/aiService/AiServiceInsidePage.tsx index 485e3684..e0eaad83 100644 --- a/frontend/packages/core/src/pages/aiService/AiServiceInsidePage.tsx +++ b/frontend/packages/core/src/pages/aiService/AiServiceInsidePage.tsx @@ -42,6 +42,7 @@ const AiServiceInsidePage:FC = ()=> { const getApiDefine = ()=>{ + console.log('@@@@@@@') setApiPrefix('') setPrefixForce(false) fetchData>('service/router/define',{method:'GET',eoParams:{service:serviceId,team:teamId}}).then(response=>{ @@ -119,7 +120,7 @@ const AiServiceInsidePage:FC = ()=> { }, [currentUrl]); useEffect(()=>{ - if(accessData && accessData.get('team') && accessData.get('team')?.indexOf('team.service.router.view') !== -1){ + if(accessData && checkPermission('team.service.router.view')){ getApiDefine() } },[accessData]) diff --git a/frontend/packages/core/src/pages/logsettings/LogSettingsInstruction.tsx b/frontend/packages/core/src/pages/logsettings/LogSettingsInstruction.tsx index b7f2d7e1..e545d1d0 100644 --- a/frontend/packages/core/src/pages/logsettings/LogSettingsInstruction.tsx +++ b/frontend/packages/core/src/pages/logsettings/LogSettingsInstruction.tsx @@ -1,4 +1,5 @@ +import WithPermission from "@common/components/aoplatform/WithPermission"; import { useBreadcrumb } from "@common/contexts/BreadcrumbContext"; import { $t } from "@common/locales"; import { useEffect } from "react"; @@ -24,7 +25,7 @@ export default function LogSettingsInstruction() {

环境配置

新增集群的地址、名称、描述和其他相关属性,以确保插件能够正确识别和连接到集群

-

添加集群地址

+

添加集群地址

diff --git a/frontend/packages/core/src/pages/resourcesettings/ResourceSettingsInstruction.tsx b/frontend/packages/core/src/pages/resourcesettings/ResourceSettingsInstruction.tsx index b1cd0af1..6afff314 100644 --- a/frontend/packages/core/src/pages/resourcesettings/ResourceSettingsInstruction.tsx +++ b/frontend/packages/core/src/pages/resourcesettings/ResourceSettingsInstruction.tsx @@ -1,3 +1,4 @@ +import WithPermission from "@common/components/aoplatform/WithPermission"; import { useBreadcrumb } from "@common/contexts/BreadcrumbContext"; import { useEffect } from "react"; import { Link } from "react-router-dom"; @@ -24,7 +25,7 @@ export default function ResourceSettingsInstruction() {

集群配置

新增集群地址、描述和其他相关属性,以确保插件能够正确识别和连接到集群

-

配置集群地址

+

配置集群地址

diff --git a/frontend/packages/core/src/pages/system/SystemInsidePage.tsx b/frontend/packages/core/src/pages/system/SystemInsidePage.tsx index 1685276a..afa7b7c5 100644 --- a/frontend/packages/core/src/pages/system/SystemInsidePage.tsx +++ b/frontend/packages/core/src/pages/system/SystemInsidePage.tsx @@ -117,7 +117,7 @@ const SystemInsidePage:FC = ()=> { }, [currentUrl]); useEffect(()=>{ - if(accessData && accessData.get('team') && accessData.get('team')?.indexOf('team.service.router.view') !== -1){ + if(accessData && checkPermission('team.service.router.view')){ getApiDefine() } },[accessData]) diff --git a/frontend/packages/dashboard/src/pages/DashboardInstruction.tsx b/frontend/packages/dashboard/src/pages/DashboardInstruction.tsx index f2a7c727..f3f577db 100644 --- a/frontend/packages/dashboard/src/pages/DashboardInstruction.tsx +++ b/frontend/packages/dashboard/src/pages/DashboardInstruction.tsx @@ -1,4 +1,5 @@ +import WithPermission from "@common/components/aoplatform/WithPermission"; import { $t } from "@common/locales"; import { Link } from "react-router-dom"; @@ -15,13 +16,13 @@ export default function DashboardInstruction({showClusterIns, showMonitorIns}:{s {showClusterIns &&

{$t('集群配置')}

{$t('配置集群地址,以确保监控系统能够正确识别和连接到集群')}

-

{$t('配置集群信息')}

+

{$t('配置集群信息')}

} {showMonitorIns &&

{$t('监控设置')}

{$t('设置监控报表的数据来源,设置完成之后即可获得详细的API调用统计图表。')}

-

{$t('配置监控信息')}

+

{$t('配置监控信息')}

} diff --git a/module/service/dto/output.go b/module/service/dto/output.go index 74b3ac36..d4d6e4c5 100644 --- a/module/service/dto/output.go +++ b/module/service/dto/output.go @@ -75,11 +75,14 @@ type App struct { } func ToService(model *service.Service) *Service { - + prefix := "/" + if model.Prefix != "" { + prefix = model.Prefix + } s := &Service{ Id: model.Id, Name: model.Name, - Prefix: model.Prefix, + Prefix: prefix, Description: model.Description, Team: auto.UUID(model.Team), ServiceType: model.ServiceType.String(),