|
@@ -1,24 +1,24 @@
|
|
<template>
|
|
<template>
|
|
- <div id="YS-data-container" v-loading="dataLoading" element-loading-text="指标数据加载中,请勿切换到其他页面">
|
|
|
|
- <div class="search-zone" v-loading="listLoading" element-loading-text="列表加载中,请稍后">
|
|
|
|
|
|
+ <div id="YS-data-container" v-loading="dataLoading" :element-loading-text="$t('YsDataPage.loading_data_msg')">
|
|
|
|
+ <div class="search-zone" v-loading="listLoading" :element-loading-text="$t('YsDataPage.loading_list_msg')">
|
|
<div class="search-row">
|
|
<div class="search-row">
|
|
<el-cascader @change="searchList" :options="classifyList" v-model="typeChecks"
|
|
<el-cascader @change="searchList" :options="classifyList" v-model="typeChecks"
|
|
- clearable placeholder="请选择分类" class="search-item" collapse-tags
|
|
|
|
|
|
+ clearable :placeholder="$t('YsDataPage.ph_classify')" class="search-item" collapse-tags
|
|
:props="{
|
|
:props="{
|
|
value:'Type',
|
|
value:'Type',
|
|
label:'Type',
|
|
label:'Type',
|
|
children:'Child',
|
|
children:'Child',
|
|
multiple:true
|
|
multiple:true
|
|
}"></el-cascader>
|
|
}"></el-cascader>
|
|
- <el-select v-model="frequencyChecks" class="search-item" placeholder="请选择频度"
|
|
|
|
|
|
+ <el-select v-model="frequencyChecks" class="search-item" :placeholder="$t('Edb.InputHolderAll.input_fre')"
|
|
multiple collapse-tags clearable @change="searchListDelay">
|
|
multiple collapse-tags clearable @change="searchListDelay">
|
|
<el-option :label="item" :value="item" v-for="item in frequencyList" :key="item" ></el-option>
|
|
<el-option :label="item" :value="item" v-for="item in frequencyList" :key="item" ></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
- <el-select v-model="dataStateChecks" class="search-item" placeholder="请选择指标数据状态"
|
|
|
|
|
|
+ <el-select v-model="dataStateChecks" class="search-item" :placeholder="$t('YsDataPage.ph_data_status')"
|
|
multiple collapse-tags clearable @change="searchListDelay">
|
|
multiple collapse-tags clearable @change="searchListDelay">
|
|
<el-option :label="item.label" :value="item.value" v-for="item in dataStatusList" :key="item.value"></el-option>
|
|
<el-option :label="item.label" :value="item.value" v-for="item in dataStatusList" :key="item.value"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
- <el-input v-model="searchParams.Keyword" placeholder="请输入指标ID/指标名称" class="search-item" clearable
|
|
|
|
|
|
+ <el-input v-model="searchParams.Keyword" :placeholder="$t('Edb.InputHolderAll.input_name_orid')" class="search-item" clearable
|
|
@blur="searchListDelay(!keyWordChanged)" @keyup.enter.native="searchListDelay(!keyWordChanged)" @clear="searchList"></el-input>
|
|
@blur="searchListDelay(!keyWordChanged)" @keyup.enter.native="searchListDelay(!keyWordChanged)" @clear="searchList"></el-input>
|
|
<!-- <el-select v-model="edbCheckList" multiple filterable remote clearable collapse-tags class="search-item edb-filter"
|
|
<!-- <el-select v-model="edbCheckList" multiple filterable remote clearable collapse-tags class="search-item edb-filter"
|
|
reserve-keyword placeholder="指标ID/指标名称" :remote-method="remoteMethod"
|
|
reserve-keyword placeholder="指标ID/指标名称" :remote-method="remoteMethod"
|
|
@@ -27,66 +27,66 @@
|
|
:label="item.IndexName" :value="item.IndexCode">
|
|
:label="item.IndexName" :value="item.IndexCode">
|
|
</el-option>
|
|
</el-option>
|
|
</el-select> -->
|
|
</el-select> -->
|
|
- <el-checkbox label="列表全选" v-model="isCheckAll" :indeterminate="isCheckIndeterminate" style="margin: 0 20px 10px 0;"
|
|
|
|
|
|
+ <el-checkbox :label="$t('YsDataPage.label_all_check')" v-model="isCheckAll" :indeterminate="isCheckIndeterminate" style="margin: 0 20px 10px 0;"
|
|
@change="listCheckAllChange"></el-checkbox>
|
|
@change="listCheckAllChange"></el-checkbox>
|
|
</div>
|
|
</div>
|
|
<el-button type="primary" style="margin: 0 0 10px 0;padding:12px 18px ;" @click="addToEdbBase"
|
|
<el-button type="primary" style="margin: 0 0 10px 0;padding:12px 18px ;" @click="addToEdbBase"
|
|
- :disabled="addBaseDisable" v-permission="permissionBtn.dataSourcePermission.ysTarget_addBatch">添加到指标库</el-button>
|
|
|
|
|
|
+ :disabled="addBaseDisable" v-permission="permissionBtn.dataSourcePermission.ysTarget_addBatch"><!-- 添加到指标库 -->{{$t('YsDataPage.add_base_btn')}}</el-button>
|
|
</div>
|
|
</div>
|
|
<div class="table-zone">
|
|
<div class="table-zone">
|
|
<el-table :data="tableData" border @sort-change="sortChange" @selection-change="selectionChange"
|
|
<el-table :data="tableData" border @sort-change="sortChange" @selection-change="selectionChange"
|
|
ref="edbDataRef" @select="selectHandle" @select-all="selectAllHandle">
|
|
ref="edbDataRef" @select="selectHandle" @select-all="selectAllHandle">
|
|
<el-table-column type="selection" min-width="50" align="center"></el-table-column>
|
|
<el-table-column type="selection" min-width="50" align="center"></el-table-column>
|
|
- <el-table-column label="指标ID" align="center" prop="IndexCode">
|
|
|
|
|
|
+ <el-table-column :label="$t('Edb.Detail.e_id')" align="center" prop="IndexCode">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.IndexCode}}
|
|
{{row.IndexCode}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="指标名称" align="center" prop="IndexName">
|
|
|
|
|
|
+ <el-table-column :label="$t('Edb.Detail.e_name')" align="center" prop="IndexName">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.IndexName}}
|
|
{{row.IndexName}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="频度" align="center" prop="Frequency" width="80">
|
|
|
|
|
|
+ <el-table-column :label="$t('Edb.Detail.e_fre')" align="center" prop="Frequency" width="80">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.Frequency}}
|
|
{{row.Frequency}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="单位" align="center" prop="Unit" >
|
|
|
|
|
|
+ <el-table-column :label="$t('Edb.Detail.e_unit')" align="center" prop="Unit" >
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.Unit}}
|
|
{{row.Unit}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="指标开始时间" align="center" prop="StartDate"
|
|
|
|
|
|
+ <el-table-column :label="$t('YsDataPage.col_start_time')" align="center" prop="StartDate"
|
|
sortable="custom">
|
|
sortable="custom">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.StartDate}}
|
|
{{row.StartDate}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="指标最新时间" align="center" prop="EndDate"
|
|
|
|
|
|
+ <el-table-column :label="$t('YsDataPage.col_newest_time')" align="center" prop="EndDate"
|
|
sortable="custom" >
|
|
sortable="custom" >
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.EndDate}}
|
|
{{row.EndDate}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="更新时间" align="center" prop="ModifyTime" sortable="custom">
|
|
|
|
|
|
+ <el-table-column :label="$t('Edb.Detail.e_update_time')" align="center" prop="ModifyTime" sortable="custom">
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.ModifyTime}}
|
|
{{row.ModifyTime}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="预计发布时间" align="center" prop="ReleaseTime" sortable="custom" >
|
|
|
|
|
|
+ <el-table-column :label="$t('YsDataPage.col_pub_time')" align="center" prop="ReleaseTime" sortable="custom" >
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.ReleaseTime}}
|
|
{{row.ReleaseTime}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="指标数据状态" align="center" prop="DataState" >
|
|
|
|
|
|
+ <el-table-column :label="$t('YsDataPage.col_data_status')" align="center" prop="DataState" >
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.DataState?
|
|
{{row.DataState?
|
|
dataStatusList.find(it => it.value == row.DataState)?dataStatusList.find(it => it.value == row.DataState).label:''
|
|
dataStatusList.find(it => it.value == row.DataState)?dataStatusList.find(it => it.value == row.DataState).label:''
|
|
- :'正常更新'}}
|
|
|
|
|
|
+ :$t('YsDataPage.col_status_normal')}}
|
|
</template>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table-column>
|
|
- <el-table-column label="分类" align="center" prop="TypeAll" >
|
|
|
|
|
|
+ <el-table-column :label="$t('YsDataPage.col_classify')" align="center" prop="TypeAll" >
|
|
<template slot-scope="{row}">
|
|
<template slot-scope="{row}">
|
|
{{row.TypeAll}}
|
|
{{row.TypeAll}}
|
|
</template>
|
|
</template>
|
|
@@ -99,24 +99,24 @@
|
|
@handleCurrentChange="pageNumberChange"/>
|
|
@handleCurrentChange="pageNumberChange"/>
|
|
<!-- 指标重复弹窗 -->
|
|
<!-- 指标重复弹窗 -->
|
|
<el-dialog :visible.sync="checkFailShow" :close-on-click-modal="false" :modal-append-to-body='false'
|
|
<el-dialog :visible.sync="checkFailShow" :close-on-click-modal="false" :modal-append-to-body='false'
|
|
- width="600px" title="操作提示">
|
|
|
|
|
|
+ width="600px" :title="$t('Dialog.warn_tit')">
|
|
<div class="check-fail-box">
|
|
<div class="check-fail-box">
|
|
<div>
|
|
<div>
|
|
<div style="margin-bottom: 20px;">
|
|
<div style="margin-bottom: 20px;">
|
|
- {{ indexAllExist?'本次添加的指标均已在指标库中,请勿重复添加!':'指标库中已存在以下指标,会自动过滤!' }}
|
|
|
|
|
|
+ {{ indexAllExist?$t('YsDataPage.haved_all_msg'):$t('YsDataPage.haved_some_msg') }}
|
|
</div>
|
|
</div>
|
|
- <div v-for="(item,index) in existIndexList" class="exist-index-item" @click="existIndexClick(item)">
|
|
|
|
|
|
+ <div v-for="(item,index) in existIndexList" :key="index" class="exist-index-item" @click="existIndexClick(item)">
|
|
{{ index+1+'、'+item.text }}
|
|
{{ index+1+'、'+item.text }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="check-fail-button">
|
|
<div class="check-fail-button">
|
|
- <el-button type="primary" @click="edbCheckFinished" style="width: 120px;">知道了</el-button>
|
|
|
|
|
|
+ <el-button type="primary" @click="edbCheckFinished" style="width: 120px;"><!-- 知道了 -->{{$t('Dialog.known')}}</el-button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
<!-- 添加到指标库 -->
|
|
<!-- 添加到指标库 -->
|
|
<el-dialog :visible.sync="addToEbdDiaShow" :close-on-click-modal="false" :modal-append-to-body='false'
|
|
<el-dialog :visible.sync="addToEbdDiaShow" :close-on-click-modal="false" :modal-append-to-body='false'
|
|
- width="980px" title="添加到指标库">
|
|
|
|
|
|
+ width="980px" :title="$t('YsDataPage.add_base_btn')">
|
|
<div class="edb-table-box">
|
|
<div class="edb-table-box">
|
|
<div class="edb-table-preview">
|
|
<div class="edb-table-preview">
|
|
<table width="auto" border="0">
|
|
<table width="auto" border="0">
|
|
@@ -128,7 +128,7 @@
|
|
<td v-for="(data, sub_index) in edbIndexDatas" :key="sub_index" :colspan="2"
|
|
<td v-for="(data, sub_index) in edbIndexDatas" :key="sub_index" :colspan="2"
|
|
:class="highLightIndex.includes(data.EdbName) && item=='EdbName' ?'exist-highlight':''">
|
|
:class="highLightIndex.includes(data.EdbName) && item=='EdbName' ?'exist-highlight':''">
|
|
<template v-if="item === 'ClassifyId'">
|
|
<template v-if="item === 'ClassifyId'">
|
|
- <el-cascader :options="options" v-model="data[item]" placeholder="请选择所属目录"
|
|
|
|
|
|
+ <el-cascader :options="options" v-model="data[item]" :placeholder="$t('Edb.InputHolderAll.input_menu')"
|
|
size="mini" :disabled="!data.Source"
|
|
size="mini" :disabled="!data.Source"
|
|
:props="{label: 'ClassifyName',
|
|
:props="{label: 'ClassifyName',
|
|
value: 'ClassifyId',
|
|
value: 'ClassifyId',
|
|
@@ -142,19 +142,19 @@
|
|
:disabled="!data.Source"
|
|
:disabled="!data.Source"
|
|
v-model.trim="data[item]"
|
|
v-model.trim="data[item]"
|
|
:fetch-suggestions="querySearchUnit"
|
|
:fetch-suggestions="querySearchUnit"
|
|
- placeholder="请输入单位"
|
|
|
|
|
|
+ :placeholder="$t('Edb.InputHolderAll.input_unit')"
|
|
suffix-icon="el-icon-arrow-down"
|
|
suffix-icon="el-icon-arrow-down"
|
|
size="mini"
|
|
size="mini"
|
|
></el-autocomplete>
|
|
></el-autocomplete>
|
|
</template>
|
|
</template>
|
|
<template v-else-if="item === 'Frequency'">
|
|
<template v-else-if="item === 'Frequency'">
|
|
- <el-select v-model="data[item]" placeholder="请选择频度" size="mini" :disabled="!data.Source">
|
|
|
|
|
|
+ <el-select v-model="data[item]" :placeholder="$t('Edb.InputHolderAll.input_fre')" size="mini" :disabled="!data.Source">
|
|
<el-option :label="item" :value="item"
|
|
<el-option :label="item" :value="item"
|
|
v-for="item in edbFrequencyList" :key="item"></el-option>
|
|
v-for="item in edbFrequencyList" :key="item"></el-option>
|
|
</el-select>
|
|
</el-select>
|
|
</template>
|
|
</template>
|
|
<template v-else-if="item === 'EdbName'">
|
|
<template v-else-if="item === 'EdbName'">
|
|
- <el-input v-model.trim="data[item]" placeholder="请输入指标名称" size="mini" :disabled="!data.Source"></el-input>
|
|
|
|
|
|
+ <el-input v-model.trim="data[item]" :placeholder="$t('Edb.InputHolderAll.input_name')" size="mini" :disabled="!data.Source"></el-input>
|
|
</template>
|
|
</template>
|
|
<template v-else>
|
|
<template v-else>
|
|
<div style="padding: 0 7px;">{{ data[item] }}</div>
|
|
<div style="padding: 0 7px;">{{ data[item] }}</div>
|
|
@@ -166,7 +166,7 @@
|
|
<tr v-for="(item,index) in edbIndexDatas[0].DataList.length" :key="index">
|
|
<tr v-for="(item,index) in edbIndexDatas[0].DataList.length" :key="index">
|
|
<td :rowspan="edbIndexDatas[0].DataList.length" v-if="index==0"
|
|
<td :rowspan="edbIndexDatas[0].DataList.length" v-if="index==0"
|
|
class="sticky" style="left: 0;text-align: center;">
|
|
class="sticky" style="left: 0;text-align: center;">
|
|
- 数据详情
|
|
|
|
|
|
+ <!-- 数据详情 -->{{$t('Edb.data_detail_tab')}}
|
|
</td>
|
|
</td>
|
|
<template v-for="(item1,index1) in edbIndexDatas.length">
|
|
<template v-for="(item1,index1) in edbIndexDatas.length">
|
|
<td>{{ edbIndexDatas[index1].DataList[index].DataTime }}</td>
|
|
<td>{{ edbIndexDatas[index1].DataList[index].DataTime }}</td>
|
|
@@ -177,8 +177,8 @@
|
|
</table>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="dia-bot">
|
|
<div class="dia-bot">
|
|
- <el-button @click="addToEbdDiaShow=false" style="width: 120px;">取消</el-button>
|
|
|
|
- <el-button type="primary" @click="ysEdbSaveHandle" style="width: 120px;margin-left: 30px;" :loading="saveLoading">保存</el-button>
|
|
|
|
|
|
+ <el-button @click="addToEbdDiaShow=false" style="width: 120px;"><!-- 取消 -->{{$t('Dialog.cancel_btn')}}</el-button>
|
|
|
|
+ <el-button type="primary" @click="ysEdbSaveHandle" style="width: 120px;margin-left: 30px;" :loading="saveLoading"><!-- 保存 -->{{$t('Dialog.confirm_save_btn')}}</el-button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</el-dialog>
|
|
</el-dialog>
|
|
@@ -218,7 +218,11 @@ import { frequencyArr} from '../databaseComponents/util';
|
|
classifyList:[],
|
|
classifyList:[],
|
|
frequencyList: ["日度", "周度", "月度", "季度", "半年", "年度"],
|
|
frequencyList: ["日度", "周度", "月度", "季度", "半年", "年度"],
|
|
edbFrequencyList:frequencyArr,
|
|
edbFrequencyList:frequencyArr,
|
|
- dataStatusList:[{value:'normal',label:'正常更新'},{value:'ceased',label:'已停更'},{value:'irregular',label:'更新依赖外部会有不定期延迟'}],
|
|
|
|
|
|
+ dataStatusList:[
|
|
|
|
+ {value:'normal',label:this.$t('YsDataPage.col_status_normal')},
|
|
|
|
+ {value:'ceased',label:this.$t('YsDataPage.col_status_close')},
|
|
|
|
+ {value:'irregular',label:this.$t('YsDataPage.col_status_irr')}
|
|
|
|
+ ],
|
|
// forSearchParams:{
|
|
// forSearchParams:{
|
|
// Keyword:'',
|
|
// Keyword:'',
|
|
// CurrentIndex:1,
|
|
// CurrentIndex:1,
|
|
@@ -248,13 +252,6 @@ import { frequencyArr} from '../databaseComponents/util';
|
|
"EdbName",
|
|
"EdbName",
|
|
"EdbCode",
|
|
"EdbCode",
|
|
],
|
|
],
|
|
- edbTableHeadData:new Map([
|
|
|
|
- ["ClassifyId", "所属目录"],
|
|
|
|
- ["Unit", "单位"],
|
|
|
|
- ["Frequency", "频度"],
|
|
|
|
- ["EdbName", "指标名称"],
|
|
|
|
- ["EdbCode", "指标ID"],
|
|
|
|
- ]),
|
|
|
|
BatchList:[],
|
|
BatchList:[],
|
|
addToEbdDiaShow:false,
|
|
addToEbdDiaShow:false,
|
|
highLightIndex:[],
|
|
highLightIndex:[],
|
|
@@ -268,6 +265,15 @@ import { frequencyArr} from '../databaseComponents/util';
|
|
},
|
|
},
|
|
isCanView(){
|
|
isCanView(){
|
|
return this.permissionBtn.isShowBtn('dataSourcePermission','ysTarget_view')
|
|
return this.permissionBtn.isShowBtn('dataSourcePermission','ysTarget_view')
|
|
|
|
+ },
|
|
|
|
+ edbTableHeadData(){
|
|
|
|
+ return new Map([
|
|
|
|
+ ["ClassifyId", /* "所属目录" */this.$t('Edb.Detail.e_menu')],
|
|
|
|
+ ["Unit", /* "单位" */this.$t('Edb.Detail.e_unit')],
|
|
|
|
+ ["Frequency", /* "频度" */this.$t('Edb.Detail.e_fre')],
|
|
|
|
+ ["EdbName", /* "指标名称" */this.$t('Edb.Detail.e_name')],
|
|
|
|
+ ["EdbCode", /* "指标ID" */this.$t('Edb.Detail.e_id')],
|
|
|
|
+ ])
|
|
}
|
|
}
|
|
},
|
|
},
|
|
watch:{
|
|
watch:{
|
|
@@ -688,7 +694,7 @@ import { frequencyArr} from '../databaseComponents/util';
|
|
// return
|
|
// return
|
|
smmDataInterface.ysEdbAddBatch({BatchList:this.BatchList}).then(res=>{
|
|
smmDataInterface.ysEdbAddBatch({BatchList:this.BatchList}).then(res=>{
|
|
if(res.Ret == 200){
|
|
if(res.Ret == 200){
|
|
- this.$message.success("添加指标成功")
|
|
|
|
|
|
+ this.$message.success(/* "添加指标成功" */this.$t('MsgPrompt.add_msg2'))
|
|
let {href} = this.$router.resolve({
|
|
let {href} = this.$router.resolve({
|
|
path:'/database',
|
|
path:'/database',
|
|
query:{code:res.Data.UniqueCode,id:res.Data.EdbInfoId,classifyId:res.Data.ClassifyId}
|
|
query:{code:res.Data.UniqueCode,id:res.Data.EdbInfoId,classifyId:res.Data.ClassifyId}
|