|
@@ -6,6 +6,7 @@ import SelectEDB from './SelectEDB.vue'
|
|
|
import SelectEDBClassify from '../../components/SelectEDBClassify.vue'
|
|
|
import SelectEDBUnit from '../../components/SelectEDBUnit.vue'
|
|
|
import SelectEDBFrequency from '../../components/SelectEDBFrequency.vue'
|
|
|
+import EDBHistory from '@/views/dataEDB/components/EDBHistory.vue'
|
|
|
import {calculateTypeTipsMap} from '../../util/config'
|
|
|
import { useRoute, useRouter } from 'vue-router';
|
|
|
import moment from 'moment';
|
|
@@ -74,14 +75,16 @@ const edbList=ref([
|
|
|
target:'',
|
|
|
startDate:'',
|
|
|
endDate:'',
|
|
|
- name:''
|
|
|
+ name:'',
|
|
|
+ EdbType:0
|
|
|
},
|
|
|
{
|
|
|
tag:letterOpts[1],
|
|
|
target:'',
|
|
|
startDate:'',
|
|
|
endDate:'',
|
|
|
- name:''
|
|
|
+ name:'',
|
|
|
+ EdbType:0
|
|
|
}
|
|
|
])
|
|
|
function handleAddEdbList(){
|
|
@@ -96,7 +99,8 @@ function handleAddEdbList(){
|
|
|
target: '',
|
|
|
start_date: '',
|
|
|
end_date: '',
|
|
|
- name:''
|
|
|
+ name:'',
|
|
|
+ EdbType:0
|
|
|
};
|
|
|
edbList.value.push(item);
|
|
|
}
|
|
@@ -124,6 +128,7 @@ function handleConfirmSelectEDB(e){
|
|
|
edbList.value[whichIndex].startDate=e.StartDate
|
|
|
edbList.value[whichIndex].endDate=e.EndDate
|
|
|
edbList.value[whichIndex].name=e.EdbName
|
|
|
+ edbList.value[whichIndex].EdbType=e.EdbType
|
|
|
}
|
|
|
|
|
|
// 日期合并类型
|
|
@@ -236,6 +241,25 @@ async function handleSave(){
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+// 显示指标溯源
|
|
|
+const showEDBHistory=ref(false)
|
|
|
+const edbHistoryId=ref(0)
|
|
|
+function handleShowEDBHistory(item){
|
|
|
+ //计算指标打开弹窗,基础指标打开新页面
|
|
|
+ if(item.EdbType===2){
|
|
|
+ edbHistoryId.value=item.target
|
|
|
+ showEDBHistory.value=true
|
|
|
+ }else{
|
|
|
+ const routerEl=router.resolve({
|
|
|
+ path:'/dataEDB/detail',
|
|
|
+ query:{
|
|
|
+ edbInfoId:item.target
|
|
|
+ }
|
|
|
+ })
|
|
|
+ window.open(routerEl.href,'_blank')
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
</script>
|
|
|
|
|
@@ -249,6 +273,11 @@ async function handleSave(){
|
|
|
@click-input="handleShowSelectEDB(index)"
|
|
|
:disabled="isPreview"
|
|
|
>
|
|
|
+ <template #left-icon>
|
|
|
+ <div class="left-icon">
|
|
|
+ <svg-icon name="edb-history-tag" size="24px" v-if="item.target" @click="handleShowEDBHistory(item)"/>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
<template #input>
|
|
|
<div class="edb-info-box">
|
|
|
<div class="edb-info" v-if="item.target">
|
|
@@ -371,6 +400,9 @@ async function handleSave(){
|
|
|
<!-- 选择频度 -->
|
|
|
<SelectEDBFrequency v-model:show="showSelectFrequency" @select="handleConfirmFrequency"/>
|
|
|
|
|
|
+ <!-- 指标溯源 -->
|
|
|
+ <EDBHistory v-model:show="showEDBHistory" :edbInfoId="edbHistoryId"/>
|
|
|
+
|
|
|
<!-- 公式说明 -->
|
|
|
<van-dialog
|
|
|
v-model:show="showTips"
|
|
@@ -491,6 +523,10 @@ async function handleSave(){
|
|
|
margin-bottom: 16px;
|
|
|
}
|
|
|
.select-edb-box{
|
|
|
+ .left-icon{
|
|
|
+ width: 24px;
|
|
|
+ height: 24px;
|
|
|
+ }
|
|
|
.edb-info-box{
|
|
|
.time{
|
|
|
font-size: 12px;
|