From 50ad0a40d942624f7fcdfa8af3bc67d656a747a3 Mon Sep 17 00:00:00 2001
From: tanghaolin <1723298894@qq.com>
Date: 星期三, 11 一月 2023 10:34:08 +0800
Subject: [PATCH] 添加预览菜单表格详情弹框

---
 src/views/main/istation/overview/preview.vue |  456 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 449 insertions(+), 7 deletions(-)

diff --git a/src/views/main/istation/overview/preview.vue b/src/views/main/istation/overview/preview.vue
index 4217e08..582fd48 100644
--- a/src/views/main/istation/overview/preview.vue
+++ b/src/views/main/istation/overview/preview.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="preview-page">
          <fks-row :gutter="20" style="width:100%;height:100%;">
-        <fks-col :span="4" style="height:100%">
+         <fks-col :span="4" style="height:100%">
             <div class="model-binding-left-box">
                 <titleBox title="娉电珯鍒楄〃"></titleBox>
                     <fks-tree
@@ -26,25 +26,246 @@
                     </div>
                     <div class="bottom-tabs-div">
                         <fks-tabs type="border-card">
-                            <fks-tab-pane label="鍋ュ悍璇勪环">鍋ュ悍璇勪环</fks-tab-pane>
-                            <fks-tab-pane label="鏁呴殰璇婃柇">鏁呴殰璇婃柇</fks-tab-pane>
-                            <fks-tab-pane label="鏃跺簭瓒嬪娍鍒嗘瀽">鏃跺簭瓒嬪娍鍒嗘瀽</fks-tab-pane>
-                            <fks-tab-pane label="涓撳瓒嬪娍鍒嗘瀽">涓撳瓒嬪娍鍒嗘瀽</fks-tab-pane>
+                            <fks-tab-pane label="鍋ュ悍璇勪环">
+                                <div class="time-pick-div">
+                                 <label>寮�濮嬫椂闂达細</label>
+                                  <fks-date-picker
+                                    v-model="date1"
+                                    type="date"
+                                    placeholder="閫夋嫨鏃ユ湡">
+                                  </fks-date-picker>
+                                  <fks-button type="primary" style="margin-left:10px;">鍔犺浇</fks-button>
+                                </div>
+                                <div id="healthRate" class="health-rate-chart"></div>
+                            </fks-tab-pane>
+                            <fks-tab-pane label="鏁呴殰璇婃柇">
+                               <div class="time-pick-div">
+                                 <label>寮�濮嬫椂闂达細</label>
+                                    <fks-date-picker
+                                    v-model="date2"
+                                    type="daterange"
+                                    range-separator="~"
+                                    start-placeholder="寮�濮嬫棩鏈�"
+                                    end-placeholder="缁撴潫鏃ユ湡">
+                                    </fks-date-picker>
+                                  <fks-button type="primary" style="margin-left:10px;">鎼滅储</fks-button>
+                                </div>
+                                <div class="table-box-div">
+                                    <fks-table 
+                                        border
+                                        :data="brokenTableData"
+                                        style="width: 100%;margin-top:15px;">
+                                        <fks-table-column
+                                            prop="name"
+                                            label="鍚嶇О"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="broken"
+                                            label="鏁呴殰"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="version"
+                                            label="鏁呴殰鏍戠増鏈�">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="diagnosticModel"
+                                            label="璇婃柇妯″瀷">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="diagnoser"
+                                            label="璇婃柇浜�">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="desc"
+                                            label="璇存槑">
+                                        </fks-table-column>
+                                        <fks-table-column label="鎿嶄綔">
+                                            <template slot-scope="scope">
+                                                <fks-button
+                                                type="primary"
+                                                size="mini"
+                                                @click="handleDetailByBroken(scope.$index, scope.row)">璇︾粏</fks-button>
+                                            </template>
+                                        </fks-table-column>                                                      
+                                    </fks-table>
+                                </div>
+                            </fks-tab-pane>
+                            <fks-tab-pane label="鏃跺簭瓒嬪娍鍒嗘瀽">
+                                <div class="time-pick-div">
+                                 <label>寮�濮嬫椂闂达細</label>
+                                    <fks-date-picker
+                                    v-model="date3"
+                                    type="daterange"
+                                    range-separator="~"
+                                    start-placeholder="寮�濮嬫棩鏈�"
+                                    end-placeholder="缁撴潫鏃ユ湡">
+                                    </fks-date-picker>
+                                  <fks-button type="primary" style="margin-left:10px;">鎼滅储</fks-button>
+                                </div>
+                                <div class="table-box-div">
+                                    <fks-table 
+                                        border
+                                        :data="sequentialTableData"
+                                        style="width: 100%;margin-top:15px;">
+                                        <fks-table-column
+                                            prop="point"
+                                            label="娴嬬偣"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="signal"
+                                            label="淇″彿"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="earlyWarnModel"
+                                            label="棰勮鏃堕棿">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="occurrenceTime"
+                                            label="鍙戠敓鏃堕棿">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="recordTime"
+                                            label="璁板綍鏃堕棿">
+                                        </fks-table-column>
+                                        <fks-table-column label="鎿嶄綔">
+                                            <template slot-scope="scope">
+                                                <fks-button
+                                                type="primary"
+                                                size="mini"
+                                                @click="handleDetailBySequential(scope.$index, scope.row)">璇︾粏</fks-button>
+                                            </template>
+                                        </fks-table-column>                                                      
+                                    </fks-table>
+                                </div>
+                            </fks-tab-pane>
+                            <fks-tab-pane label="涓撳瓒嬪娍鍒嗘瀽">
+                               <div class="time-pick-div">
+                                 <label>寮�濮嬫椂闂达細</label>
+                                    <fks-date-picker
+                                    v-model="date4"
+                                    type="daterange"
+                                    range-separator="~"
+                                    start-placeholder="寮�濮嬫棩鏈�"
+                                    end-placeholder="缁撴潫鏃ユ湡">
+                                    </fks-date-picker>
+                                  <fks-button type="primary" style="margin-left:10px;">鎼滅储</fks-button>
+                                </div>
+                                <div class="table-box-div">
+                                    <fks-table 
+                                        border
+                                        :data="expertTrendsTableData"
+                                        style="width: 100%;margin-top:15px;">
+                                        <fks-table-column
+                                            prop="point"
+                                            label="娴嬬偣"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="signal"
+                                            label="淇″彿"
+                                            width="180">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="analysisMethod"
+                                            label="鍒嗘瀽鏂规硶">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="direction"
+                                            label="鏂瑰悜">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="threshold"
+                                            label="闃�鍊�">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="analyst"
+                                            label="鍒嗘瀽浜�">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="occurrenceTime"
+                                            label="鍙戠敓鏃堕棿">
+                                        </fks-table-column>
+                                        <fks-table-column
+                                            prop="recordTime"
+                                            label="璁板綍鏃堕棿">
+                                        </fks-table-column>                                                                                                                        
+                                        <fks-table-column label="鎿嶄綔">
+                                            <template slot-scope="scope">
+                                                <fks-button
+                                                type="primary"
+                                                size="mini"
+                                                @click="handleDetailByExpertTrends(scope.$index, scope.row)">璇︾粏</fks-button>
+                                            </template>
+                                        </fks-table-column>                                                      
+                                    </fks-table>
+                                </div>
+                            </fks-tab-pane>
                         </fks-tabs>
                     </div>
                </div>
             </div>
         </fks-col>
     </fks-row>
+    <!-- 鏁呴殰璇婃柇鎶ュ憡璇︽儏 -->
+    <fks-dialog
+        title="娴嬭瘯01"
+        :visible.sync="brokenDownDialog"
+        >
+
+        <div slot="footer" class="dialog-footer">
+            <fks-button @click="brokenDownDialog = false">鍙� 娑�</fks-button>
+            <fks-button type="primary" @click="brokenDownDialog = false">纭� 瀹�</fks-button>
+        </div>
+    </fks-dialog>
+    <!-- 鏁呴殰璇婃柇鎶ュ憡璇︽儏 -->
+    <fks-dialog
+        title="鏃跺簭瓒嬪娍棰勮璁板綍璇︾粏"
+        :visible.sync="sequentialDialog"
+        >
+
+        <div slot="footer" class="dialog-footer">
+            <fks-button @click="sequentialDialog = false">鍙� 娑�</fks-button>
+            <fks-button type="primary" @click="sequentialDialog = false">纭� 瀹�</fks-button>
+        </div>
+    </fks-dialog>
+    <!-- 鏁呴殰璇婃柇鎶ュ憡璇︽儏 -->
+    <fks-dialog
+        title="涓撳瓒嬪娍鍒嗘瀽棰勮璁板綍璇︾粏"
+        :visible.sync="expertTrendsDialog"
+        >
+
+        <div slot="footer" class="dialog-footer">
+            <fks-button @click="expertTrendsDialog = false">鍙� 娑�</fks-button>
+            <fks-button type="primary" @click="expertTrendsDialog = false">纭� 瀹�</fks-button>
+        </div>
+    </fks-dialog>
   </div>
 </template>
 
 <script>
+import * as echarts from 'echarts';
 import titleBox from "@/views/main/components/titleBox.vue"
+
+let healthRateObj = {
+     chartDom: "",
+     myChart: "",
+     option: ""
+}
 export default {
     components:{titleBox},
     data(){
         return {
+            date1:"",
+            date2:"",
+            date3:"",
+            date4:"",
+            brokenDownDialog:false,
+            sequentialDialog:false,
+            expertTrendsDialog:false,
             treeData:[
                 {
                     label: "閲戝垰娌辨车绔�",
@@ -67,12 +288,216 @@
                 children: "children",
                 label: "label",
             },
+            healthRateChartData:[
+              {
+                DataTime: "2023-01-05 23:54:52",
+                DataValue: "10",
+              },
+              {
+                DataTime: "2023-01-04 22:30:52",
+                DataValue: "11",
+              },{
+                DataTime: "2023-01-02 21:50:52",
+                DataValue: "13",
+              },{
+                DataTime: "2023-01-01 20:44:52",
+                DataValue: "12",
+              },{
+                DataTime: "2023-01-02 19:44:52",
+                DataValue: "14",
+              },{
+                DataTime: "2023-01-01 09:04:52",
+                DataValue: "16",
+              },{
+                DataTime: "2023-01-02 07:04:52",
+                DataValue: "18",
+              },{
+                DataTime: "2023-01-03 06:51:52",
+                DataValue: "20",
+              },{
+                DataTime: "2023-01-04 10:14:52",
+                DataValue: "21",
+              },{
+                DataTime: "2023-01-05 20:33:52",
+                DataValue: "24",
+              },{
+                DataTime: "2023-01-05 23:15:52",
+                DataValue: "22",
+              },{
+                DataTime: "2023-01-05 23:54:52",
+                DataValue: "22",
+              },{
+                DataTime: "2023-01-05 03:12:52",
+                DataValue: "23",
+              },{
+                DataTime: "2023-01-05 09:21:52",
+                DataValue: "21",
+              },{
+                DataTime: "2023-01-05 20:48:52",
+                DataValue: "15",
+              },{
+                DataTime: "2023-01-05 19:54:52",
+                DataValue: "16",
+              },{
+                DataTime: "2023-01-05 19:36:52",
+                DataValue: "18",
+              },{
+                DataTime: "2023-01-05 19:22:52",
+                DataValue: "15",
+              },
+            ],
+            brokenTableData:[
+                {
+                    name:"娴嬭瘯01",
+                    broken:"姘存车鏃犳硶鍚姩",
+                    version:"鐗堟湰01",
+                    diagnosticModel:"妯″瀷01",
+                    diagnoser:"绠$悊鍛�",
+                    desc:""
+                },
+                {
+                    name:"娴嬭瘯02",
+                    broken:"姘存车鍑哄彛鍘嬪姏杩囦綆",
+                    version:"鐗堟湰01",
+                    diagnosticModel:"妯″瀷01",
+                    diagnoser:"绠$悊鍛�",
+                    desc:""
+                },
+                {
+                    name:"娴嬭瘯03",
+                    broken:"姘存车涓嶅惛姘�",
+                    version:"鐗堟湰01",
+                    diagnosticModel:"妯″瀷01",
+                    diagnoser:"绠$悊鍛�",
+                    desc:""
+                },
+            ],
+            sequentialTableData:[
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"鏈夋晥鍊�",
+                    earlyWarnModel:"涓�闃跺钩婊戝垎鏋�",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"宄害",
+                    earlyWarnModel:"闃诲凹瓒嬪娍棰勬祴鍒嗘瀽",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"姝害",
+                    earlyWarnModel:"浜岄樁骞虫粦鍒嗘瀽",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+            ],
+            expertTrendsTableData:[
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"鏈夋晥鍊�",
+                    analysisMethod:"涓�闃跺钩婊戝垎鏋�",
+                    direction:"姝e悜",
+                    threshold:"0.6",
+                    analyst:"涓撳",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"宄害",
+                    analysisMethod:"闃诲凹瓒嬪娍棰勬祴鍒嗘瀽",
+                    direction:"姝e悜",
+                    threshold:"0.6",
+                    analyst:"涓撳",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+                {
+                    point:"椹卞姩绔疿鏂瑰悜鎸姩",
+                    signal:"姝害",
+                    analysisMethod:"鑷畾涔�",
+                    direction:"姝e悜",
+                    threshold:"0.6",
+                    analyst:"涓撳",
+                    occurrenceTime:"2023-1-11",
+                    recordTime:"2023-1-1",
+                },
+            ]                                        
         }
-    }
+    },
+    mounted(){
+        setTimeout(() => {
+            this.initHealthRateChart()
+        }, 100);
+    },
+    methods:{
+        initHealthRateChart(){
+            healthRateObj.chartDom = document.getElementById('healthRate')
+            healthRateObj.myChart = echarts.init(healthRateObj.chartDom);
+            let xData = []
+            let yData = []
+            this.healthRateChartData.forEach(item=>{
+                xData.push(item.DataTime)
+                yData.push(item.DataValue)
+            })
+            healthRateObj.option = {
+            xAxis: {
+                type: 'category',
+                boundaryGap: false,
+                name: "鏃堕棿",
+                data:xData
+            },
+            grid:{
+                top:20,
+                bottom:20,
+                left:50,
+                right:40
+            },
+            yAxis: {
+                type: 'value',
+                min:0,
+                max:100,
+                name: "鎵e垎",
+                nameGap: 35,
+                nameLocation: "center",
+                // boundaryGap: x.boundaryGap,
+                scale: true,
+                axisLine: {
+                show: true,
+                },
+            },
+                series: [
+                    {
+                    data: yData,
+                    type: 'line',
+                    smooth: true
+                    }
+                ]
+            };
+            healthRateObj.option && healthRateObj.myChart.setOption(healthRateObj.option);
+        },
+        //鏁呴殰璇婃柇璇︽儏
+        handleDetailByBroken(index,item){
+            this.brokenDownDialog = true
+        },
+        //鏃跺簭瓒嬪娍鍒嗘瀽璇︽儏
+        handleDetailBySequential(index,item){
+            this.sequentialDialog = true
+        },
+        //涓撳瓒嬪娍鍒嗘瀽璇︽儏
+        handleDetailByExpertTrends(index,item){
+            this.expertTrendsDialog = true
+        }
+    },
+    
 }
 </script>
 
-<style scoped>
+<style>
 .preview-page{
     width: 100%;
     height: 100%;
@@ -105,4 +530,21 @@
     height: 45%;
     margin-top: 1%;
 }
+.bottom-tabs-div .fks-tabs--border-card{
+    height: 100%;
+}
+.fks-tabs--border-card>.fks-tabs__content{
+    height: calc(100% - 39px);
+}
+.time-pick-div{
+    width: 100%;
+    height: 36px;
+}
+.bottom-tabs-div .fks-tab-pane{
+    height: calc(100% - 36px);
+}
+.health-rate-chart{
+    width: 100%;
+    height:100%;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.9.3