Explorar el Código

审批详情布局

shanbinzhang hace 2 semanas
padre
commit
ed1d1dcfe2

+ 59 - 46
src/views/approve_manage/approveDetail.vue

@@ -1,55 +1,67 @@
 <template>
     <!-- 审批详情:查看、进行审批操作 -->
     <div class="approve-detail-wrap" v-if="isETAApprove || IsBIApprove">
-        <div class="approve-detail">
-            <div class="approve-info">
-                <span>{{ mainType == 'report'?$t('AprrovalDetailPage.report_name_info'):$t('AprrovalPage.kanban_name')}}:{{reportInfo.title||''}}</span>
-                <span v-if="mainType == 'report'" style="margin-left: 60px;">{{$t('AprrovalDetailPage.classification_info')}}:{{reportInfo.classify||''}}</span>
-                <span style="min-width: 100px;margin-left: 60px;">{{$t('AprrovalPage.submitter_lable')}}:{{reportInfo.approver||''}}</span>
-            </div>
-            <div v-if="mainType == 'report'" class="approve-content" 
-                v-loading="isLoading"
-                element-loading-text="研报加载中...">
-                <component v-if="reportInfo.reportId&&!isError"
-                    :is="reportInfo.componentName"
-                    :reportId="reportInfo.reportId"
-                    :isPreview="true"
-                    :isEn="reportInfo.type===2"
-                    @reportStartLoading="isLoading=true"
-                    @reportEndLoading="isLoading=false"
-                    @reportError="isError=true"
-                ></component>
-                <tableNoData v-if="isError" text="无法获取到报告内容,该报告可能已被删除!"></tableNoData>
-            </div>
-            <div v-else class="approve-content" 
-                v-loading="isLoading"
-                element-loading-text="看板加载中...">
-                <BIBoardContent :value="boardDataList" renderHeight="calc(100vh - 250px)" />
-            </div>
-        </div>
-        <div class="approve-tool">
-            <div class="tool-btn">
-                <!-- 根据审批的状态决定显示 -->
-                <el-button type="danger" @click="changeApprove('reject')"
-                    v-if="formType==='approve'&&approveInfo.isCurrentApprover&&permissionBtn.isShowBtn('approvePermission','reportApprove_reject')">{{$t('AprrovalDetailPage.rejected_btn')}}</el-button>
-                <el-button type="primary" @click="changeApprove('pass')"
-                    v-if="formType==='approve'&&approveInfo.isCurrentApprover&&permissionBtn.isShowBtn('approvePermission','reportApprove_agree')">{{$t('AprrovalDetailPage.agree_btn')}}</el-button>
-                <el-button type="primary" @click="changeApprove('return')"
-                    v-if="formType==='myself'&&approveInfo.state!==4&&permissionBtn.isShowBtn('approvePermission','reportApprove_repeal')">{{$t('AprrovalDetailPage.cancel_btn')}}</el-button>
-                <el-button type="primary" plain @click="$router.replace(`/approveList?formType=${formType}&mainType=${mainType}`)">{{$t('AprrovalDetailPage.back_btn')}}</el-button>
+
+        <!-- bi审批 -->
+        <template v-if="mainType==='bi'">
+            <div class="approve-detail">
+                <div class="approve-info">
+                    <span>{{ mainType == 'report'?$t('AprrovalDetailPage.report_name_info'):$t('AprrovalPage.kanban_name')}}:{{reportInfo.title||''}}</span>
+                    <span v-if="mainType == 'report'" style="margin-left: 60px;">{{$t('AprrovalDetailPage.classification_info')}}:{{reportInfo.classify||''}}</span>
+                    <span style="min-width: 100px;margin-left: 60px;">{{$t('AprrovalPage.submitter_lable')}}:{{reportInfo.approver||''}}</span>
+                </div>
+                <div v-if="mainType == 'report'" class="approve-content" 
+                    v-loading="isLoading"
+                    element-loading-text="研报加载中...">
+                    <component v-if="reportInfo.reportId&&!isError"
+                        :is="reportInfo.componentName"
+                        :reportId="reportInfo.reportId"
+                        :isPreview="true"
+                        :isEn="reportInfo.type===2"
+                        @reportStartLoading="isLoading=true"
+                        @reportEndLoading="isLoading=false"
+                        @reportError="isError=true"
+                    ></component>
+                    <tableNoData v-if="isError" text="无法获取到报告内容,该报告可能已被删除!"></tableNoData>
+                </div>
+                <div v-else class="approve-content" 
+                    v-loading="isLoading"
+                    element-loading-text="看板加载中...">
+                    <BIBoardContent :value="boardDataList" renderHeight="calc(100vh - 250px)" />
+                </div>
             </div>
-            <div class="approve-timeline-wrap">
-                <p>{{$t('AprrovalDetailPage.approval_process')}}</p>
-                <div class="timeline">
-                    <TimeLine 
-                        :TimeLineData="TimeLineData"
-                    />
+            <div class="approve-tool">
+                <div class="tool-btn">
+                    <!-- 根据审批的状态决定显示 -->
+                    <el-button type="danger" @click="changeApprove('reject')"
+                        v-if="formType==='approve'&&approveInfo.isCurrentApprover&&permissionBtn.isShowBtn('approvePermission','reportApprove_reject')">{{$t('AprrovalDetailPage.rejected_btn')}}</el-button>
+                    <el-button type="primary" @click="changeApprove('pass')"
+                        v-if="formType==='approve'&&approveInfo.isCurrentApprover&&permissionBtn.isShowBtn('approvePermission','reportApprove_agree')">{{$t('AprrovalDetailPage.agree_btn')}}</el-button>
+                    <el-button type="primary" @click="changeApprove('return')"
+                        v-if="formType==='myself'&&approveInfo.state!==4&&permissionBtn.isShowBtn('approvePermission','reportApprove_repeal')">{{$t('AprrovalDetailPage.cancel_btn')}}</el-button>
+                    <el-button type="primary" plain @click="$router.replace(`/approveList?formType=${formType}&mainType=${mainType}`)">{{$t('AprrovalDetailPage.back_btn')}}</el-button>
                 </div>
-                <div class="approve-status" >
-                    <img :src="require(`@/assets/img/approve_m/${approveInfo.stateText||'pending'}.png`)" alt="">
+                <div class="approve-timeline-wrap">
+                    <p>{{$t('AprrovalDetailPage.approval_process')}}</p>
+                    <div class="timeline">
+                        <TimeLine 
+                            :TimeLineData="TimeLineData"
+                        />
+                    </div>
+                    <div class="approve-status" >
+                        <img :src="require(`@/assets/img/approve_m/${approveInfo.stateText||'pending'}.png`)" alt="">
+                    </div>
                 </div>
             </div>
-        </div>
+        </template>
+
+        <!-- 指标 图表审批 -->
+        <EdbChartApproveWrapper
+            v-else
+            :mainType="mainType"
+            :formType="formType"
+        />
+
         <RejectDialog 
             :isDetailDialogShow="isDetailDialogShow"
             :isEdit="true"
@@ -72,6 +84,7 @@ import {departInterence} from '@/api/api.js'
 import reportApproveConfig from "@/mixins/reportApproveConfig.js"
 import apiBiBoard from '@/api/modules/BIBoard.js'
 import BIBoardContent from '@/views/BI_manage/components/BoardContent.vue';
+import EdbChartApproveWrapper from './components/EdbChartApproveWrapper.vue'
 
 const ApproveType = ['','依次审批','会签','或签']
 const ApproveState = ['','待审批','已同意','已驳回']
@@ -373,7 +386,7 @@ export default {
         }
         if(this.mainType == 'bi') this.getBiApproveDetail();
     },
-    components: { TimeLine, ReportDetail, Reportdtl, RejectDialog, BIBoardContent }
+    components: { TimeLine, ReportDetail, Reportdtl, RejectDialog, BIBoardContent,EdbChartApproveWrapper }
 };
 </script>
 

+ 84 - 69
src/views/approve_manage/approveList.vue

@@ -10,12 +10,28 @@
             <el-tabs v-model="activeTab" @tab-click="handleClick">
                 <el-tab-pane :label="$t('AprrovalPage.be_processed_tab')" name="pending"></el-tab-pane>
                 <el-tab-pane :label="$t('AprrovalPage.processed_tab')" name="processed"></el-tab-pane>
-                <el-tab-pane :label="$t('AprrovalPage.i_initiated_tab')" name="originate"></el-tab-pane>
+                <el-tab-pane :label="$t('AprrovalPage.i_initiated_tab')" name="originate" v-if="activeMainTab==='bi'"></el-tab-pane>
             </el-tabs>
         </div>
         <div class="approve-list">
             <div class="select-box">
-                <el-cascader v-model="classify"
+                <!--  -->
+                <cascader
+                    v-if="['edb','chart'].includes(activeMainTab)"
+                    v-model="classify"
+                    :options="classifyOptions"
+                    clearable
+                    collapse-tags
+                    placeholder="选择分类"
+                    cascaderWidth="width: 240px"
+                    @changeVal="handleFilter"
+                    :config="{ multiple: true, emitPath: false }"
+                />
+                
+                <!-- bi分类 -->
+                <el-cascader 
+                    v-else-if="activeMainTab==='bi'"
+                    v-model="classify"
                     :placeholder="activeMainTab == 'report' ? $t('AprrovalPage.associated_report_ipt') : $t('AprrovalPage.select_associated_Kanban_tip')" clearable
                     :options="activeMainTab == 'report' ? classifyTree : biClassifyTree"
                     :props="activeMainTab == 'report' ? {value:'ClassifyId',label:'ClassifyName',children:'Children'} : {value:'BiDashboardClassifyId',label:'BiDashboardClassifyName',children:'Children'}"
@@ -56,7 +72,7 @@
                 </el-select>
 
                 <el-input v-model="keyword" prefix-icon="el-icon-search" clearable @input="handleCurrentChange(1)"
-                    :placeholder="activeMainTab == 'report'?$t('AprrovalPage.report_title_ipt'):$t('AprrovalPage.enter_Kanban_name_tip')" style="width:260px;margin-left: auto;"></el-input>
+                    :placeholder="searchPhLabel" style="width:260px;margin-left: auto;"></el-input>
             </div>
             <div class="list-box">
                 <el-table 
@@ -161,9 +177,36 @@ const tabMap = {
 }
 export default {
     mixins:[approveMixins,reportApproveConfig],
+    computed:{
+        edbTableColumns() {
+            const columns = [
+                { label: '审批名称',key:'ApproveName',show: true },
+                { label: '提交人',key:'ApplyUserName',show: true },
+                { label: '提交时间',key:'CreateTime',show: true },
+                { label: '审批状态',key:'RecordState',show: this.activeTab==='pending' },
+                { label: '处理时间',key:'HandleTime',show: this.activeTab==='processed' },
+                { label: '处理状态',key:'RecordState',show: this.activeTab==='processed' },
+            ]
+
+            let resultCols = columns.filter(_ => _.show);
+            return resultCols;
+        },
+
+        searchPhLabel() {
+            const phLabel = {
+                'edb': '指标Id/名称',
+                'chart': '图表名称',
+                'bi': this.$t('AprrovalPage.enter_Kanban_name_tip')
+            }
+            return phLabel[this.activeMainTab] && phLabel[this.activeMainTab];
+        }
+    },
     data() {
         return {
-            mainTabs:[],
+            mainTabs:[
+                { label:'指标审批',name:'edb' },
+                { label:'图表审批',name:'chart' },
+            ],
             activeMainTab:'',
             activeTab: 'pending',
             /* 筛选项 */
@@ -177,11 +220,8 @@ export default {
             SortField:0,
 
             tableLoading:false,
-            tableData: [
-                { label:'指标审批',name:'edb' },
-                { label:'图表审批',name:'chart' },
-            ],
-            tableColumns: approve_pending_columns,
+            tableData: [],
+            tableColumns: this.edbTableColumns,
             page: 1,
             pageSize: 10,
             total: 0,
@@ -213,7 +253,7 @@ export default {
 
             return ids
         },
-        getTableData(){
+        async getTableData(){
             this.tableLoading = true
             this.tableData=[]
             const baseParams = {
@@ -222,22 +262,6 @@ export default {
                 CurrentIndex:this.page,
                 Keyword:this.keyword,
             }
-            const selectParams = {
-                //关联报告
-                ReportType:this.classify[0]||0,
-                ClassifyFirstId:this.handleReportClassifyId().ClassifyFirstId||0,
-                ClassifySecondId:this.handleReportClassifyId().ClassifySecondId||0,
-                ClassifyThirdld:this.handleReportClassifyId().ClassifyThirdld||0,
-                //时间
-                TimeType:this.timeType,
-                StartTime:this.timeDate?this.timeDate[0]||'':'',
-                EndTime:this.timeDate?this.timeDate[1]||'':'',
-                //排序
-                SortRule:this.SortRule,
-                SortField:this.SortField,
-                //处理状态
-                ApproveState:this.ApproveState,
-            }
             const biApproveParams = {
                 ClassifyId:this.classify[0] || 0,
                 TimeType:this.timeType,
@@ -247,30 +271,22 @@ export default {
                 SortField:this.SortField,
                 ApproveState:this.ApproveState,
             }
-
-            if(this.activeMainTab == 'report'){
-                approveInterence.getApproveList({
-                    ...baseParams,
-                    ...selectParams
-                }).then(res=>{
-                    this.tableLoading=false
-                    if(res.Ret!==200) return 
-                    const {List=[],Paging={}} = res.Data||{}
-                    this.tableData = List||[]
-                    this.total = Paging.Totals||0
-                }).catch(err=>{this.tableLoading=false})
-            } else {
-                approveInterence.getBiApproveList({
+            let res = null;
+            if(this.activeMainTab === 'bi'){
+                res = await approveInterence.getBiApproveList({
                     ...baseParams,
                     ...biApproveParams,
-                }).then(res=>{
-                    this.tableLoading=false
-                    if(res.Ret!==200) return 
-                    const {List=[],Paging={}} = res.Data||{}
-                    this.tableData = List||[]
-                    this.total = Paging.Totals||0
-                }).catch(err=>{this.tableLoading=false})
+                })
+                  
+            }else {
+                res = null
             }
+
+            this.tableLoading=false
+            if(res.Ret!==200) return 
+            const {List=[],Paging={}} = res.Data||{}
+            this.tableData = List||[]
+            this.total = Paging.Totals||0
             
         },
         handleCurrentChange(page) {
@@ -294,7 +310,7 @@ export default {
           this.classify = '';
           this.keyword = '';
           this.activeTab = 'pending';
-          tabName == 'report' ? this.getClassifyTree() : this.getBIClassifyTree();
+          ['edb','chart'].includes(tabName) ? this.getClassifyOptions() : this.getBIClassifyTree();
           this.handleClick()
         },
         handleClick() {
@@ -303,7 +319,7 @@ export default {
             this.SortRule=0
             this.SortField=0
             this.ApproveState = '';
-            this.tableColumns = columnsMap[`${this.activeTab}_${this.activeMainTab}`];
+            this.tableColumns = ['edb','chart'].includes(this.activeMainTab) ? this.edbTableColumns : columnsMap[`${this.activeTab}_${this.activeMainTab}`];
             this.$refs.reftable&&this.$refs.reftable.clearSort()
             this.handleCurrentChange(1)
         },
@@ -332,23 +348,23 @@ export default {
         },
         // 语言切换
         getContentMenuOptText(e){
-            if(e==='报告标题') return this.$t('AprrovalPage.report_title_lable') 
-            if(e==='关联报告') return this.$t('AprrovalPage.associated_report_lable') 
-            if(e==='提交人') return this.$t('AprrovalPage.submitter_lable') 
-            if(e==='提交时间') return this.$t('AprrovalPage.submission_time_lable') 
-            if(e==='审批状态') return this.$t('AprrovalPage.approval_status_lable') 
-            if(e==='处理时间') return this.$t('AprrovalPage.processing_time_lable') 
-            if(e==='处理结果') return this.$t('AprrovalPage.processing_result_lable') 
-            if(e==='审批时间') return this.$t('AprrovalPage.approval_time') 
-            if(e==='BI看板名称') return this.$t('AprrovalPage.kanban_name') 
-            if(e==='关联分类') return this.$t('AprrovalPage.associative_classification') 
-            if(e==='关联看板') return this.$t('AprrovalPage.association_kanban') 
-            if(e==='处理状态') return this.$t('AprrovalPage.processing_state') 
-            if(e==='已通过') return this.$t('AprrovalPage.approved_option') 
-            if(e==='已驳回') return this.$t('AprrovalPage.rejected_option') 
-            if(e==='已撤销') return this.$t('AprrovalPage.revoked_option') 
-            if(e==='待审批') return this.$t('AprrovalPage.awaiting_approval_option') 
-            if(e==='已同意') return this.$t('AprrovalPage.agreed_option') 
+            // if(e==='报告标题') return this.$t('AprrovalPage.report_title_lable') 
+            // if(e==='关联报告') return this.$t('AprrovalPage.associated_report_lable') 
+            // if(e==='提交人') return this.$t('AprrovalPage.submitter_lable') 
+            // if(e==='提交时间') return this.$t('AprrovalPage.submission_time_lable') 
+            // if(e==='审批状态') return this.$t('AprrovalPage.approval_status_lable') 
+            // if(e==='处理时间') return this.$t('AprrovalPage.processing_time_lable') 
+            // if(e==='处理结果') return this.$t('AprrovalPage.processing_result_lable') 
+            // if(e==='审批时间') return this.$t('AprrovalPage.approval_time') 
+            // if(e==='BI看板名称') return this.$t('AprrovalPage.kanban_name') 
+            // if(e==='关联分类') return this.$t('AprrovalPage.associative_classification') 
+            // if(e==='关联看板') return this.$t('AprrovalPage.association_kanban') 
+            // if(e==='处理状态') return this.$t('AprrovalPage.processing_state') 
+            // if(e==='已通过') return this.$t('AprrovalPage.approved_option') 
+            // if(e==='已驳回') return this.$t('AprrovalPage.rejected_option') 
+            // if(e==='已撤销') return this.$t('AprrovalPage.revoked_option') 
+            // if(e==='待审批') return this.$t('AprrovalPage.awaiting_approval_option') 
+            // if(e==='已同意') return this.$t('AprrovalPage.agreed_option') 
             return e
         },
         downloadPdfImg(row,type){
@@ -385,13 +401,12 @@ export default {
                 'myself':'originate'
            }
            this.activeTab = formTypeMap[formType]||'pending'
-           this.tableColumns = columnsMap[`${this.activeTab}_${this.activeMainTab}`] || approve_pending_columns;
+           this.tableColumns = ['edb','chart'].includes(this.activeMainTab) ? this.edbTableColumns : columnsMap[`${this.activeTab}_${this.activeMainTab}`];
            this.getTableData()
         },
     },
     mounted(){
-        // this.getClassifyTree();
-        this.getBIClassifyTree();
+        this.getClassifyOptions()
     },
     components: { RejectDialog }
 };

+ 156 - 0
src/views/approve_manage/components/EdbChartApproveWrapper.vue

@@ -0,0 +1,156 @@
+<template>
+  <!-- 指标和图标审批页面 -->
+  <div class="approve-detail detail-wrapper">
+    <div class="top">
+      <div class="left">
+        <div class="item">
+          <label class="el-form-item__label">待审批图表数量</label>
+          <el-select
+            v-model="selectItem"
+            style="width: 240px"
+            clearable
+            multiple
+            collapse-tags
+            @change="handleChange"
+          >
+            <el-option
+              v-for="item in approvelistOption"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+            >
+            </el-option>
+          </el-select>
+        </div>
+        <div class="item">
+          <label class="el-form-item__label">公开目录</label>
+          一级/二级/三级
+        </div>
+      </div>
+    </div>
+
+    <div class="container">
+      <div class="preview-wrapper">
+          <div class="edb-detail" v-if="mainType==='edb'">
+            <chart-trend-render
+              :edbid="102179"
+              :isShowChartBasis="true"
+              :isAllowSwitchSeason="true"
+              :isAllowEditLimit="true"
+              ref="createChart"
+            />
+          </div>
+
+          <div class="chart-detail" v-if="LINK_CHART_URL&&mainType==='chart'">
+      
+						<iframe :src='`${LINK_CHART_URL}?code=f7067484afd24ffd26904ceddbba98ab`' width='100%' height='450' style='border-width:0px; min-height:450px;'></iframe>
+          </div>
+      </div>
+      <div class="right">
+        <div>
+          <label>公开理由</label>
+          <p class="reason">动物气得我经济法几千万if服务器】服务器【;【; </p>
+        </div>
+        <div class="tool-btn">
+            <el-button type="danger" @click="$parent.changeApprove('reject')"
+                v-if="permissionBtn.isShowBtn('approvePermission','reportApprove_reject')">{{$t('AprrovalDetailPage.rejected_btn')}}</el-button>
+            <el-button type="primary" @click="$parent.changeApprove('pass')"
+                v-if="permissionBtn.isShowBtn('approvePermission','reportApprove_agree')">{{$t('AprrovalDetailPage.agree_btn')}}</el-button>
+            <el-button type="primary" plain @click="$router.replace(`/approveList?formType=${formType}&mainType=${mainType}`)">{{$t('AprrovalDetailPage.back_btn')}}</el-button>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+<script>
+import chartDetailDia from '@/views/mychart_manage/components/chartDetailDia.vue'
+import chartTrendRender from '@/views/dataEntry_manage/databaseComponents/chartTrendRender.vue';
+export default {
+  components: { chartTrendRender,chartDetailDia },
+  computed: {
+      LINK_CHART_URL() {
+        let url = localStorage.getItem('dynamicOutLinks') ? JSON.parse(localStorage.getItem('dynamicOutLinks')).ChartViewUrl+'/chartshow' : '';
+        return url
+      }
+  },
+  props: {
+    formType: {
+      type: String
+    },
+    mainType: {
+      type: String,
+    },
+    detail: {
+      type: Object
+    }
+  },
+  data() {
+    return {
+      selectItem:'',
+      approvelistOption: []
+    }
+  },
+  methods:{
+    handleChange() {
+
+    }
+  },
+}
+</script>
+<style scoped lang='scss'>
+.detail-wrapper {
+  padding: 20px;
+  display: flex;
+  flex-direction: column;
+  .top {
+    display: flex;
+    justify-content: space-between;
+    .left,.item {
+      display: flex;
+      align-items: center;
+      flex-wrap: wrap;
+    }
+    .left {
+      gap: 30px;
+    }
+    .item {
+      max-width: 350px;
+    }
+  }
+
+  .container {
+    display: flex;
+    margin-top: 20px;
+    flex: 1;
+    .preview-wrapper {
+      flex: 1;
+      border: 1px solid #E9E9EB;
+      padding: 30px 20px;
+      border-radius: 4px;
+    }
+    .right {
+      margin-left: 20px;
+      width: 350px;
+      border: 1px solid #E9E9EB;
+      padding: 30px 20px;
+      border-radius: 4px;
+      display: flex;
+      flex-direction: column;
+      justify-content: space-between;
+      .tool-btn {
+        display: flex;
+        justify-content: flex-end;
+        align-items: center;
+        margin-top: 40px;
+      }
+
+      .reason {
+        margin-top: 20px;
+        padding: 10px 20px;
+        border: 1px solid #DCDFE6;
+        border-radius: 8px;
+      }
+    }
+  }
+}
+</style>

+ 21 - 0
src/views/approve_manage/mixins/approveMixins.js

@@ -1,4 +1,6 @@
 import {approveInterence} from '@/api/modules/approve.js'
+import { dataBaseInterface } from '@/api/api.js';
+
 const filterNodes = (arr,hasDisabled)=>{
     arr.length &&arr.forEach((item) => {
         hasDisabled&&(item.disabled = (item.Children&&item.Children.length)?false:item.HasFlow)
@@ -14,6 +16,7 @@ export default{
         return {
             classifyTree:[],
             biClassifyTree:[],
+            classifyOptions: []
         }
     },
     methods:{
@@ -34,5 +37,23 @@ export default{
                 this.biClassifyTree = res.Data
             })
         },
+
+        async getClassifyOptions() {
+            const res = this.activeMainTab==='edb'
+                ?  await dataBaseInterface.targetCatalog({
+                    IsOnlyMe:true,
+                    ParentId:0,
+                    ClassifyType:  2
+                  }) 
+                :  await dataBaseInterface.targetCatalog({
+                    IsOnlyMe:true,
+                    ParentId:0,
+                    ClassifyType:  2
+                  }) 
+          
+            if(res.Ret!==200) return 
+    
+            this.classifyOptions = res.Data.AllNodes || [];
+        }
     }
 }

+ 62 - 53
src/views/dataEntry_manage/databaseComponents/chartTrendRender.vue

@@ -1,6 +1,6 @@
 <template>
 	<div class="chart-trend-render">
-		<div class="header">
+		<div class="header" v-if="!onlyShowDetail">
 			<template v-if="chart_type===1">
 				<el-popover 
 					placement="bottom" 
@@ -41,58 +41,61 @@
 		<div class="min-wrapper">
 			<div class="chartWrapper" id="chartWrapper" v-if="showChart">
 				<Chart :options="options" :chartInfo="chartInfo" ref="chartRef"/>
-				<div class="range-cont left" v-if="leftIndex != -1">
-					<el-input
-						style="width: 80px; display: block"
-						size="mini"
-						type="number"
-						placeholder="上限"
-						:disabled="!isAllowEditLimit"
-						v-model="chartInfo.MaxValue"
-						@change="() => { chart_type===1?setOptions():setSeasonOptions() }"
-					/>
-					<el-input
-						class="min-data-input"
-						size="mini"
-						type="number"
-						placeholder="下限"
-						:disabled="!isAllowEditLimit"
-						v-model="chartInfo.MinValue"
-						@change="() => { chart_type===1?setOptions():setSeasonOptions() }"
-					/>
-				</div>
-				<div class="range-cont right" v-if="isShowOnyearData">
-					<el-input
-						style="width: 80px; display: block"
-						size="mini"
-						type="number"
-						placeholder="上限"
-						v-model="limitData.rightMax"
-						:disabled="!isAllowEditLimit"
-						@change="changeLimit"
-					/>
-					<el-input
-						class="min-data-input"
-						size="mini"
-						type="number"
-						placeholder="下限"
-						v-model="limitData.rightMin"
-						:disabled="!isAllowEditLimit"
-						@change="changeLimit"
-					/>
-				</div>
-				<!-- 公历农历切换 只用于季节性图 -->
-				<div style="text-align:center;">
-					<el-radio-group
-							v-model="calendar_type"
-							class="calendar-cont"
-							v-if="chart_type===2"
-							@change="getDataByPath"
-					>
-							<el-radio-button label="公历">{{$t('Chart.calendar_gre')}}</el-radio-button>
-							<el-radio-button label="农历">{{$t('Chart.calendar_lunar_text')}}</el-radio-button>
-					</el-radio-group>
-				</div>
+
+				<template v-if="!onlyShowDetail">
+					<div class="range-cont left" v-if="leftIndex != -1">
+						<el-input
+							style="width: 80px; display: block"
+							size="mini"
+							type="number"
+							placeholder="上限"
+							:disabled="!isAllowEditLimit"
+							v-model="chartInfo.MaxValue"
+							@change="() => { chart_type===1?setOptions():setSeasonOptions() }"
+						/>
+						<el-input
+							class="min-data-input"
+							size="mini"
+							type="number"
+							placeholder="下限"
+							:disabled="!isAllowEditLimit"
+							v-model="chartInfo.MinValue"
+							@change="() => { chart_type===1?setOptions():setSeasonOptions() }"
+						/>
+					</div>
+					<div class="range-cont right" v-if="isShowOnyearData">
+						<el-input
+							style="width: 80px; display: block"
+							size="mini"
+							type="number"
+							placeholder="上限"
+							v-model="limitData.rightMax"
+							:disabled="!isAllowEditLimit"
+							@change="changeLimit"
+						/>
+						<el-input
+							class="min-data-input"
+							size="mini"
+							type="number"
+							placeholder="下限"
+							v-model="limitData.rightMin"
+							:disabled="!isAllowEditLimit"
+							@change="changeLimit"
+						/>
+					</div>
+					<!-- 公历农历切换 只用于季节性图 -->
+					<div style="text-align:center;">
+						<el-radio-group
+								v-model="calendar_type"
+								class="calendar-cont"
+								v-if="chart_type===2"
+								@change="getDataByPath"
+						>
+								<el-radio-button label="公历">{{$t('Chart.calendar_gre')}}</el-radio-button>
+								<el-radio-button label="农历">{{$t('Chart.calendar_lunar_text')}}</el-radio-button>
+						</el-radio-group>
+					</div>
+				</template>
 			</div>
 			<img src="~@/assets/img/icons/edb-stopping.png" class="stop-mark" v-if="([2,34].includes(chartInfo.Source) || chartInfo.EdbType==2) && ( chartInfo.IsSupplierStop==1 || (chartInfo.IsSupplierStop==0&&chartInfo.NoUpdate==1))" />
 		</div>
@@ -147,6 +150,11 @@ export default {
 		isOnlyShowBaseChart() {
 			/* return [6,12,13,35,37].includes(this.chartInfo.Source) */
 			return false
+		},
+
+		/* 只预览图 */
+		onlyShowDetail() {
+			return this.$route.path==='/approveDetail'
 		}
 	},
 	watch: {
@@ -209,6 +217,7 @@ export default {
 			const apiMap = {
 				'/edbBasicbase': this.getEdbData,
 				'/database': this.getEdbData,
+				'/approveDetail': this.getEdbData,
 				'/analyseVariety': this.getPlantEdbData
 			}