Detail.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <script setup name="DataEDBCalculateDetail">
  2. import {ref} from 'vue'
  3. import apiDataEDB from '@/api/dataEDB'
  4. import { useRoute } from "vue-router";
  5. import DiffusionIndexCalcualate from './components/DiffusionIndexCalcualate.vue';
  6. import FittingResidualsCalculate from './components/FittingResidualsCalculate.vue';
  7. import FormulaCalculate from './components/FormulaCalculate.vue';
  8. import JointCalculate from './components/JointCalculate.vue';
  9. import OtherCalculate from './components/OtherCalculate.vue';
  10. const route=useRoute()
  11. const source=ref(route.query.source||'')//计算类型
  12. document.title=route.query.name||'指标运算'
  13. // 获取计算指标详情
  14. const edbInfo=ref(null)
  15. async function getCalculateInfo(){
  16. const res=await apiDataEDB.getCalculateEdbInfo({EdbInfoId:Number(route.query.edbInfoId)})
  17. if(res.Ret===200){
  18. edbInfo.value=res.Data
  19. }
  20. }
  21. if(['edit','preview'].includes(route.query.type)){
  22. getCalculateInfo()
  23. }
  24. </script>
  25. <template>
  26. <!-- 指标运算 -->
  27. <FormulaCalculate v-if="['4'].includes(source)" :edbInfo="edbInfo"/>
  28. <!-- 其他的运算 编辑时toMonthSeason=5\61 accumulate=62\63 -->
  29. <OtherCalculate v-if="['toMonthSeason','5','6','7','8','12','13','14','22','35','51','52','61','62','63','accumulate'].includes(source)" :edbInfo="edbInfo"/>
  30. <!-- 拼接计算 编辑时则为 23\24 -->
  31. <JointCalculate v-if="['joint','23','24'].includes(source)" :edbInfo="edbInfo"/>
  32. <!-- 拟合残差计算 -->
  33. <FittingResidualsCalculate v-if="source==='37'" :edbInfo="edbInfo"/>
  34. <!-- 扩散指数计算 -->
  35. <DiffusionIndexCalcualate v-if="source==='53'" :edbInfo="edbInfo"/>
  36. </template>