|
@@ -12,6 +12,7 @@
|
|
>
|
|
>
|
|
<div class="part-box part-box-filter" slot="title">
|
|
<div class="part-box part-box-filter" slot="title">
|
|
<el-form
|
|
<el-form
|
|
|
|
+ v-if="modalIsShow"
|
|
ref="FilterForm"
|
|
ref="FilterForm"
|
|
label-position="left"
|
|
label-position="left"
|
|
label-width="80px"
|
|
label-width="80px"
|
|
@@ -24,16 +25,22 @@
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item prop="versionId" label="版本">
|
|
<el-form-item prop="versionId" label="版本">
|
|
<version-select
|
|
<version-select
|
|
|
|
+ ref="VersionSelect"
|
|
v-model="filter.versionId"
|
|
v-model="filter.versionId"
|
|
:app-id="filter.appId"
|
|
:app-id="filter.appId"
|
|
:clearable="false"
|
|
:clearable="false"
|
|
|
|
+ manual-fetch
|
|
|
|
+ select-default
|
|
></version-select>
|
|
></version-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item prop="moduleId" label="模块">
|
|
<el-form-item prop="moduleId" label="模块">
|
|
<module-select
|
|
<module-select
|
|
|
|
+ ref="ModuleSelect"
|
|
v-model="filter.moduleId"
|
|
v-model="filter.moduleId"
|
|
:app-id="filter.appId"
|
|
:app-id="filter.appId"
|
|
:clearable="false"
|
|
:clearable="false"
|
|
|
|
+ manual-fetch
|
|
|
|
+ select-default
|
|
></module-select>
|
|
></module-select>
|
|
</el-form-item>
|
|
</el-form-item>
|
|
<el-form-item label-width="0px">
|
|
<el-form-item label-width="0px">
|
|
@@ -54,25 +61,13 @@
|
|
<div class="config-menu box-justify mb-2">
|
|
<div class="config-menu box-justify mb-2">
|
|
<div class="tab-btns tab-nowrap">
|
|
<div class="tab-btns tab-nowrap">
|
|
<el-button
|
|
<el-button
|
|
- v-if="checkPrivilege('app_config_baseline')"
|
|
|
|
|
|
+ v-for="env in envList"
|
|
|
|
+ :key="env.id"
|
|
size="medium"
|
|
size="medium"
|
|
- :type="filter.envId == null ? 'primary' : 'default'"
|
|
|
|
- @click="selectEnv({ id: null })"
|
|
|
|
- >基线
|
|
|
|
|
|
+ :type="filter.envId == env.id ? 'primary' : 'default'"
|
|
|
|
+ @click="selectEnv(env)"
|
|
|
|
+ >{{ env.name }}
|
|
</el-button>
|
|
</el-button>
|
|
- <template v-for="env in envList">
|
|
|
|
- <el-button
|
|
|
|
- v-if="
|
|
|
|
- (checkPrivilege('app_config_test') && env.type === 'TEST') ||
|
|
|
|
- (checkPrivilege('app_config_prod') && env.type === 'PROD')
|
|
|
|
- "
|
|
|
|
- :key="env.id"
|
|
|
|
- size="medium"
|
|
|
|
- :type="filter.envId == env.id ? 'primary' : 'default'"
|
|
|
|
- @click="selectEnv(env)"
|
|
|
|
- >{{ env.name }}
|
|
|
|
- </el-button>
|
|
|
|
- </template>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="menu-set" v-if="!IS_BASELINE">
|
|
<div class="menu-set" v-if="!IS_BASELINE">
|
|
<el-checkbox v-model="hideReadonly">隐藏只读配置</el-checkbox>
|
|
<el-checkbox v-model="hideReadonly">隐藏只读配置</el-checkbox>
|
|
@@ -269,9 +264,11 @@ export default {
|
|
await this.appConfigGroups();
|
|
await this.appConfigGroups();
|
|
if (!this.filter.appId !== this.app.id) this.resetData();
|
|
if (!this.filter.appId !== this.app.id) this.resetData();
|
|
this.filter.appId = this.app.id;
|
|
this.filter.appId = this.app.id;
|
|
|
|
+ await this.$refs.VersionSelect.search();
|
|
|
|
+ await this.$refs.ModuleSelect.search();
|
|
|
|
|
|
await this.getEnvList();
|
|
await this.getEnvList();
|
|
- this.selectEnv({ id: null });
|
|
|
|
|
|
+ this.selectEnv(this.envList[0]);
|
|
},
|
|
},
|
|
resetData() {
|
|
resetData() {
|
|
this.filter = {
|
|
this.filter = {
|
|
@@ -320,7 +317,17 @@ export default {
|
|
const res = await appEnvList({
|
|
const res = await appEnvList({
|
|
appId: this.app.id
|
|
appId: this.app.id
|
|
});
|
|
});
|
|
- this.envList = res || [];
|
|
|
|
|
|
+ let envList = res || [];
|
|
|
|
+ const testValid = this.checkPrivilege("app_config_test");
|
|
|
|
+ const prodValid = this.checkPrivilege("app_config_prod");
|
|
|
|
+ this.envList = envList.filter(env => {
|
|
|
|
+ return (
|
|
|
|
+ (testValid && env.type === "TEST") ||
|
|
|
|
+ (prodValid && env.type === "PROD")
|
|
|
|
+ );
|
|
|
|
+ });
|
|
|
|
+ if (this.checkPrivilege("app_config_baseline"))
|
|
|
|
+ this.envList.unshift({ id: null, name: "基线" });
|
|
},
|
|
},
|
|
async getConfigModes() {
|
|
async getConfigModes() {
|
|
if (Object.keys(this.modeMap).length) return;
|
|
if (Object.keys(this.modeMap).length) return;
|