From 917cc6911e9cb36ed37eee11e644129a510dfeec Mon Sep 17 00:00:00 2001 From: colynn Date: Thu, 23 Dec 2021 00:32:12 +0800 Subject: [PATCH] fix: projectID status save to store --- web/src/router/index.js | 6 +++++ web/src/router/modules/projectDetailRouter.js | 8 +++---- web/src/views/project/CICDStats.vue | 10 +------- web/src/views/project/ProjectApp.vue | 24 +++---------------- web/src/views/project/ProjectCICD.vue | 16 ++++--------- web/src/views/project/ProjectDashboard.vue | 10 +------- web/src/views/project/ProjectEnv.vue | 10 +------- web/src/views/project/ProjectInfo.vue | 12 ++-------- web/src/views/project/ProjectPipeline.vue | 12 ++-------- web/src/views/project/Service.vue | 10 +------- web/src/views/project/detail/PipelineAdd.vue | 10 +------- .../views/project/detail/ProjectAppAdd.vue | 12 +++++----- .../views/project/detail/ProjectAppDetail.vue | 12 +++++----- .../views/project/detail/ProjectCIDetail.vue | 22 ++++++++--------- .../views/project/detail/ProjectPubDetail.vue | 2 +- .../views/project/detail/ServiceDetail.vue | 2 +- .../views/project/dialog/ProjectAppEdit.vue | 2 +- .../views/project/dialogCI/ProjectBuild.vue | 12 ++-------- 18 files changed, 54 insertions(+), 138 deletions(-) diff --git a/web/src/router/index.js b/web/src/router/index.js index ec1c9cd..39a07d6 100644 --- a/web/src/router/index.js +++ b/web/src/router/index.js @@ -186,6 +186,12 @@ router.beforeEach((to, from, next) => { // determine whether the user has obtained his permission roles through getInfo const hasRoles = store.getters.roles && store.getters.roles.length > 0 if (hasRoles) { + if (to.path.startsWith('/project/')) { + const projectID = store.getters.projectID + if (projectID === 0 || projectID === undefined) { + store.dispatch('project/setProjectID', to.params.projectID) + } + } next() NProgress.done() } else { diff --git a/web/src/router/modules/projectDetailRouter.js b/web/src/router/modules/projectDetailRouter.js index 0b7e51d..0715c76 100644 --- a/web/src/router/modules/projectDetailRouter.js +++ b/web/src/router/modules/projectDetailRouter.js @@ -29,14 +29,14 @@ export function projectDetailRouter() { component: () => import('@/views/project/ProjectApp.vue'), }, { - path: '/project/addApp/:projectId', + path: '/project/addApp/:projectID', name: 'addApp', meta: { title: '新增应用', noCache: true }, component: () => import('@/views/project/detail/ProjectAppAdd.vue'), hidden: true }, { - path: '/project/projectAppDetail/:projectId/:appId/:tabs', + path: '/project/projectAppDetail/:projectID/:appId/:tabs', name: 'projectAppDetail', meta: { title: '代码仓库详情', noCache: true }, component: () => import('@/views/project/detail/ProjectAppDetail.vue'), @@ -57,14 +57,14 @@ export function projectDetailRouter() { component: () => import('@/views/project/ProjectCICD.vue'), }, { - path: '/project/projectCIDetail/:projectId/:versionId', + path: '/project/projectCIDetail/:projectID/:versionId', meta: { title: '构建部署详情', noCache: true }, name: 'projectCIDetail', component: () => import('@/views/project/detail/ProjectCIDetail.vue'), hidden: true }, { - path: '/project/projectPubDetail/:projectId/:jobName/:runId/:stageId', + path: '/project/projectPubDetail/:projectID/:jobName/:runId/:stageId', rename: '发布详情', name: 'projectPubDetail', component: () => import('@/views/project/detail/ProjectPubDetail.vue'), diff --git a/web/src/views/project/CICDStats.vue b/web/src/views/project/CICDStats.vue index a5d4bfb..1695051 100644 --- a/web/src/views/project/CICDStats.vue +++ b/web/src/views/project/CICDStats.vue @@ -133,16 +133,8 @@ const echarts = require('echarts'); computed: { ...mapGetters({ loading: 'getLoading', - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, }, components: {}, created() { diff --git a/web/src/views/project/ProjectApp.vue b/web/src/views/project/ProjectApp.vue index 7586393..9eafbae 100644 --- a/web/src/views/project/ProjectApp.vue +++ b/web/src/views/project/ProjectApp.vue @@ -148,16 +148,8 @@ export default { computed: { ...mapGetters({ loading: 'getLoading', - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, dataList() { // 强制替换dataList替代listtemplate中的方法 return this.listCol; @@ -215,26 +207,16 @@ export default { this.$router.push({ name: 'addApp', params: { - projectId: this.projectID + projectID: this.projectID } }); }, - // // 分支管理 - // branchManage(scmAppId) { - // this.$router.push({ - // path: `/project/projectBranch/${projectId}/${scmAppId}`, - // params: { - // projectId: this.projectID, - // appId: scmAppId - // }, - // }); - // }, // 代码仓库详情 appDetail(scmAppId, tabs) { this.$router.push({ name: 'projectAppDetail', params: { - projectId: this.projectID, + projectID: this.projectID, appId: scmAppId, tabs: tabs }, diff --git a/web/src/views/project/ProjectCICD.vue b/web/src/views/project/ProjectCICD.vue index c71327d..cfbebb7 100644 --- a/web/src/views/project/ProjectCICD.vue +++ b/web/src/views/project/ProjectCICD.vue @@ -280,16 +280,8 @@ computed: { ...mapGetters({ loading: 'getLoading', - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, }, destroyed() { }, @@ -311,7 +303,7 @@ // 终止发布 stopPub() { MessageBox.confirm(this.$t('bm.add.sureStopCodeModule'), this.$t('bm.infrast.tips'), { type: 'warning' }).then(() => { - backend.execStopPub(this.curPubRow.id, this.$route.params.projectId, (data) => { + backend.execStopPub(this.curPubRow.id, this.$route.params.projectID, (data) => { this.hasStop = true; this.hasError = true; this.getList(true); @@ -320,7 +312,7 @@ }, goPubDetail(type, id) { window.open( - `//${window.location.host}/project/projectPubDetail/${this.$route.params.projectId}/${ + `//${window.location.host}/project/projectPubDetail/${this.$route.params.projectID}/${ this.$props.pubItem.id }/${id}/${type}` ); @@ -384,7 +376,7 @@ this.$router.push({ name: 'projectCIDetail', params: { - projectId: this.projectID, + projectID: this.projectID, versionId: id } }); diff --git a/web/src/views/project/ProjectDashboard.vue b/web/src/views/project/ProjectDashboard.vue index 6b8af18..5c5f551 100644 --- a/web/src/views/project/ProjectDashboard.vue +++ b/web/src/views/project/ProjectDashboard.vue @@ -266,16 +266,8 @@ }, computed: { ...mapGetters({ - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, }, components: {}, activated() { diff --git a/web/src/views/project/ProjectEnv.vue b/web/src/views/project/ProjectEnv.vue index 8c924a5..d3844d1 100644 --- a/web/src/views/project/ProjectEnv.vue +++ b/web/src/views/project/ProjectEnv.vue @@ -95,16 +95,8 @@ export default { computed: { ...mapGetters({ loading: 'getLoading', - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, dataList() { // 强制替换dataList替代listtemplate中的方法 return this.curList; diff --git a/web/src/views/project/ProjectInfo.vue b/web/src/views/project/ProjectInfo.vue index 5cb9a67..966e567 100644 --- a/web/src/views/project/ProjectInfo.vue +++ b/web/src/views/project/ProjectInfo.vue @@ -300,16 +300,8 @@ export default { computed: { ...mapGetters({ isSysAdmin: 'isAdmin', - projectIDgetter: 'projectID', - }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, + projectID: 'projectID', + }) }, created() { //角色、成员下拉框初始化 diff --git a/web/src/views/project/ProjectPipeline.vue b/web/src/views/project/ProjectPipeline.vue index a110a9f..bbfa15e 100644 --- a/web/src/views/project/ProjectPipeline.vue +++ b/web/src/views/project/ProjectPipeline.vue @@ -97,16 +97,8 @@ export default { computed: { ...mapGetters({ loading: 'getLoading', - projectIDgetter: 'projectID', - }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, + projectID: 'projectID', + }) }, methods: { goEdit(id) { diff --git a/web/src/views/project/Service.vue b/web/src/views/project/Service.vue index b493178..7f9f70b 100644 --- a/web/src/views/project/Service.vue +++ b/web/src/views/project/Service.vue @@ -115,16 +115,8 @@ export default { computed: { ...mapGetters({ loadings: 'getLoading', - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, dataList() { // 强制替换dataList替代listtemplate中的方法 return this.curList; diff --git a/web/src/views/project/detail/PipelineAdd.vue b/web/src/views/project/detail/PipelineAdd.vue index e248372..4c10103 100644 --- a/web/src/views/project/detail/PipelineAdd.vue +++ b/web/src/views/project/detail/PipelineAdd.vue @@ -190,16 +190,8 @@ export default { }, computed: { ...mapGetters({ - projectIDgetter: 'projectID', + projectID: 'projectID', }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, }, mounted() {}, created() {}, diff --git a/web/src/views/project/detail/ProjectAppAdd.vue b/web/src/views/project/detail/ProjectAppAdd.vue index 2c52c5c..3c0b0f1 100644 --- a/web/src/views/project/detail/ProjectAppAdd.vue +++ b/web/src/views/project/detail/ProjectAppAdd.vue @@ -231,7 +231,7 @@ methods: { handleClick(index) {}, getRepos() { - backend.getRepos(this.$route.params.projectId, (data) => { + backend.getRepos(this.$route.params.projectID, (data) => { if(data) { data.map((item, index) => { if(item.user && item.base_url) { @@ -258,7 +258,7 @@ 'addr': item.base_url, 'user': item.user, }; - backend.getReposList(item.repo_id, this.$route.params.projectId, cl, (col) => { + backend.getReposList(item.repo_id, this.$route.params.projectID, cl, (col) => { this.getTabs[index].proCol = col; this.getRepoLoading = false }); @@ -276,7 +276,7 @@ "user": this.getTabs[index].user, "token": this.getTabs[index].token }; - backend.getReposList(this.getTabs[index].repo_id, this.$route.params.projectId, cl, (data) => { + backend.getReposList(this.getTabs[index].repo_id, this.$route.params.projectID, cl, (data) => { if(data) { this.getTabs[index].proCol = data; this.getRepoLoading = false @@ -307,10 +307,10 @@ if (this.form.name !== '') { cl.name = this.form.name } - backend.addAppPro(this.$route.params.projectId, cl, (data) => { + backend.addAppPro(this.$route.params.projectID, cl, (data) => { Message.success('添加成功!'); this.$router.push({ - name: 'projectApp', params: {projectID: this.$route.params.projectId} + name: 'projectApp', params: {projectID: this.$route.params.projectID} }); }); } @@ -325,7 +325,7 @@ MessageBox.confirm('确定取消添加?', this.$t('bm.infrast.tips'), { type: 'warning' }) .then(() => { this.$router.push({ - name: 'projectApp', params: {projectID: this.$route.params.projectId} + name: 'projectApp', params: {projectID: this.$route.params.projectID} }); }) .catch(() => {}); diff --git a/web/src/views/project/detail/ProjectAppDetail.vue b/web/src/views/project/detail/ProjectAppDetail.vue index f9eac56..2927eb8 100644 --- a/web/src/views/project/detail/ProjectAppDetail.vue +++ b/web/src/views/project/detail/ProjectAppDetail.vue @@ -5,7 +5,7 @@
编辑 - 删除 + 删除
{{detailInfo.name}}
@@ -169,7 +169,7 @@ export default { page_size: this.$refs.pages.pageSize, page_index: this.$refs.pages.currentPage, }; - backend.getProjectBranch(this.$route.params.projectId, this.$route.params.appId, params, (data) => { + backend.getProjectBranch(this.$route.params.projectID, this.$route.params.appId, params, (data) => { this.listCol = data.item; this.$refs.pages.total = data.total; }); @@ -188,7 +188,7 @@ export default { branch_name: item.branch_name }; backend.changeBranch( - this.$route.params.projectId, + this.$route.params.projectID, this.$route.params.appId, params, () => { @@ -202,7 +202,7 @@ export default { synBranch() { MessageBox.confirm('确定同步远程分支吗?', this.$t('bm.infrast.tips'), { type: 'warning' }) .then(() => { - backend.asyncBranch(this.$route.params.projectId, this.$route.params.appId, (data) => { + backend.asyncBranch(this.$route.params.projectID, this.$route.params.appId, (data) => { Message.success(this.$t('bm.add.optionSuc')); this.getList(); }); @@ -210,7 +210,7 @@ export default { .catch(() => {}); }, appDetail(flag) { - backend.getAppDetail(this.$route.params.projectId, this.$route.params.appId, (data) => { + backend.getAppDetail(this.$route.params.projectID, this.$route.params.appId, (data) => { if(flag) { let history = []; this.listCol.map((i) => { @@ -226,7 +226,7 @@ export default { }, backTo() { this.$router.push({ - name: 'projectApp', params: {projectID: this.$route.params.projectId} + name: 'projectApp', params: {projectID: this.$route.params.projectID} }); }, } diff --git a/web/src/views/project/detail/ProjectCIDetail.vue b/web/src/views/project/detail/ProjectCIDetail.vue index 4ef3c5b..ec67e61 100644 --- a/web/src/views/project/detail/ProjectCIDetail.vue +++ b/web/src/views/project/detail/ProjectCIDetail.vue @@ -121,7 +121,7 @@ -

添加应用

+

添加应用

@@ -318,7 +318,7 @@ export default { }, methods: { getVersionInfo() { - backend.getListdetail(this.$route.params.projectId, this.$route.params.versionId, (data) => { + backend.getListdetail(this.$route.params.projectID, this.$route.params.versionId, (data) => { if(data) { data.create_at = Utils.format(new Date(data.create_at), 'yyyy-MM-dd hh:mm:ss'); data.start_at = Utils.format(new Date(data.start_at), 'yyyy-MM-dd hh:mm:ss'); @@ -333,7 +333,7 @@ export default { }); }, getVersionBaseInfo() { - backend.getListdetail(this.$route.params.projectId, this.$route.params.versionId, (data) => { + backend.getListdetail(this.$route.params.projectID, this.$route.params.versionId, (data) => { if(data) { this.projectInfo.name = data.name this.projectInfo.version_no = data.version_no @@ -348,12 +348,12 @@ export default { }; const that = this; if(name === 'build') { - backend.setBuildMerge(this.$route.params.projectId, id, stargid, params, (data) => { + backend.setBuildMerge(this.$route.params.projectID, id, stargid, params, (data) => { Message.success(this.$t('bm.add.optionSuc')); that.getVersionInfo(); }); } else if(name === 'deploy') { - backend.setDeploy(this.$route.params.projectId, id, stargid, params, (data)=> { + backend.setDeploy(this.$route.params.projectID, id, stargid, params, (data)=> { Message.success(this.$t('bm.add.optionSuc')); that.getVersionInfo(); }); @@ -365,7 +365,7 @@ export default { gotoclose(id) { MessageBox.confirm(this.$t('bm.add.isAgreeAchieved'), this.$t('bm.infrast.tips'), { type: 'warning' }).then(() => { const that = this; - backend.goclose(this.$route.params.projectId, id, (data) => { + backend.goclose(this.$route.params.projectID, id, (data) => { Message.success(this.$t('bm.add.optionSuc')); that.getVersionInfo(); }); @@ -376,12 +376,12 @@ export default { gotodelete(id) { MessageBox.confirm(this.$t('bm.add.isAgreeDelete'), this.$t('bm.infrast.tips'), { type: 'warning' }).then(() => { const that = this; - backend.getDeletionPublish(this.$route.params.projectId, id, (data) => { + backend.getDeletionPublish(this.$route.params.projectID, id, (data) => { Message.success(this.$t('bm.add.optionSuc')); that.$router.push({ name: 'projectCI', params: { - projectID: this.$route.params.projectId + projectID: this.$route.params.projectID } }); }); @@ -392,7 +392,7 @@ export default { page_size: this.$refs.pages.pageSize, page_index: this.$refs.pages.currentPage, }; - backend.getOperationLog(this.$route.params.projectId, this.$route.params.versionId, params, (data) => { + backend.getOperationLog(this.$route.params.projectID, this.$route.params.versionId, params, (data) => { this.historyData = data.item; this.historyData.map((i) => { if(i.status >= 0) i.status = this.statePublish[i.status]; @@ -407,14 +407,14 @@ export default { }, viewFile(item) { window.open( - `//${window.location.host}/project/projectPubDetail/${this.$route.params.projectId}/${item.job_name}/${item.run_id}/${item.stage_id}` + `//${window.location.host}/project/projectPubDetail/${this.$route.params.projectID}/${item.job_name}/${item.run_id}/${item.stage_id}` ); }, // 移除应用 removeApp(id) { MessageBox.confirm(this.$t('bm.add.sureDelete'), this.$t('bm.infrast.tips'), { type: 'warning' }) .then(() => { - backend.removeApp(this.$route.params.projectId, this.$route.params.versionId, id, (data) => { + backend.removeApp(this.$route.params.projectID, this.$route.params.versionId, id, (data) => { Message.success(this.$t('bm.add.optionSuc')); this.getVersionInfo(); }); diff --git a/web/src/views/project/detail/ProjectPubDetail.vue b/web/src/views/project/detail/ProjectPubDetail.vue index 9dc6076..5a50f80 100644 --- a/web/src/views/project/detail/ProjectPubDetail.vue +++ b/web/src/views/project/detail/ProjectPubDetail.vue @@ -63,7 +63,7 @@ export default { }, 1000); }, created() { - const projectId = this.$route.params.projectId; + const projectId = this.$route.params.projectID; const jobName = this.$route.params.jobName; const runId = this.$route.params.runId; const stageId = this.$route.params.stageId; diff --git a/web/src/views/project/detail/ServiceDetail.vue b/web/src/views/project/detail/ServiceDetail.vue index c9538fb..8cef313 100644 --- a/web/src/views/project/detail/ServiceDetail.vue +++ b/web/src/views/project/detail/ServiceDetail.vue @@ -96,7 +96,7 @@
- +
diff --git a/web/src/views/project/dialog/ProjectAppEdit.vue b/web/src/views/project/dialog/ProjectAppEdit.vue index e5ba185..855a9b2 100644 --- a/web/src/views/project/dialog/ProjectAppEdit.vue +++ b/web/src/views/project/dialog/ProjectAppEdit.vue @@ -142,7 +142,7 @@ export default { build_path: this.form.build_path, dockerfile: this.form.dockerfile || 'Dockerfile', }; - backend.updateAppInfo(this.$route.params.projectId, this.rowId, cl, (data) => { + backend.updateAppInfo(this.$route.params.projectID, this.rowId, cl, (data) => { successCallBack(); }); diff --git a/web/src/views/project/dialogCI/ProjectBuild.vue b/web/src/views/project/dialogCI/ProjectBuild.vue index 3b21591..9cc09b1 100644 --- a/web/src/views/project/dialogCI/ProjectBuild.vue +++ b/web/src/views/project/dialogCI/ProjectBuild.vue @@ -147,16 +147,8 @@ }, computed: { ...mapGetters({ - projectIDgetter: 'projectID', - }), - projectID() { - if (this.projectIDgetter === 0 || this.projectIDgetter === undefined) { - this.$store.dispatch('project/setProjectID', this.$route.params.projectID); - return this.$route.params.projectID - } else { - return this.projectIDgetter - } - }, + projectID: 'projectID', + }) }, methods: { golist(rows) { -- GitLab