From f841f45e41dee0ecd167e23f260e33005bfe1e77 Mon Sep 17 00:00:00 2001
From: liufan9527 <937359084@qq.com>
Date: 星期三, 27 十一月 2024 09:39:42 +0800
Subject: [PATCH] 页面搭建

---
 se-index/src/assets/img/interactive/left_btn_height.png |    0 
 se-index/src/assets/img/interactive/left_btn.png        |    0 
 se-index/src/components/home.vue                        |    2 
 se-index/src/components/door.vue                        |    4 
 se-index/src/assets/img/interactive/refresh_icon.png    |    0 
 se-index/src/assets/img/interactive/yes.png             |    0 
 se-index/src/assets/img/interactive/left_bg.png         |    0 
 se-index/src/components/interactive.vue                 |  570 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 se-index/src/assets/img/interactive/details.png         |    0 
 se-index/src/assets/img/interactive/call_icon.png       |    0 
 10 files changed, 571 insertions(+), 5 deletions(-)

diff --git a/se-index/src/assets/img/interactive/call_icon.png b/se-index/src/assets/img/interactive/call_icon.png
new file mode 100644
index 0000000..c71d187
--- /dev/null
+++ b/se-index/src/assets/img/interactive/call_icon.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/details.png b/se-index/src/assets/img/interactive/details.png
new file mode 100644
index 0000000..ea49bc3
--- /dev/null
+++ b/se-index/src/assets/img/interactive/details.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/left_bg.png b/se-index/src/assets/img/interactive/left_bg.png
new file mode 100644
index 0000000..afc4552
--- /dev/null
+++ b/se-index/src/assets/img/interactive/left_bg.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/left_btn.png b/se-index/src/assets/img/interactive/left_btn.png
new file mode 100644
index 0000000..00a5515
--- /dev/null
+++ b/se-index/src/assets/img/interactive/left_btn.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/left_btn_height.png b/se-index/src/assets/img/interactive/left_btn_height.png
new file mode 100644
index 0000000..95ee440
--- /dev/null
+++ b/se-index/src/assets/img/interactive/left_btn_height.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/refresh_icon.png b/se-index/src/assets/img/interactive/refresh_icon.png
new file mode 100644
index 0000000..e6979a3
--- /dev/null
+++ b/se-index/src/assets/img/interactive/refresh_icon.png
Binary files differ
diff --git a/se-index/src/assets/img/interactive/yes.png b/se-index/src/assets/img/interactive/yes.png
new file mode 100644
index 0000000..942cd7f
--- /dev/null
+++ b/se-index/src/assets/img/interactive/yes.png
Binary files differ
diff --git a/se-index/src/components/door.vue b/se-index/src/components/door.vue
index 85265bc..78d11e6 100644
--- a/se-index/src/components/door.vue
+++ b/se-index/src/components/door.vue
@@ -90,10 +90,12 @@
   padding: 0 60px;
   display: flex;
   justify-content: space-between;
+  height: 100%;
   .item {
     width: 554px;
-    height: 830px;
+    height: 90%;
     background: url("../assets/img/home/door_bg.png");
+    background-size: 100% 100%;
     .title {
       position: relative;
       font-family: Source Han Sans SC;
diff --git a/se-index/src/components/home.vue b/se-index/src/components/home.vue
index 99650e9..16e864d 100644
--- a/se-index/src/components/home.vue
+++ b/se-index/src/components/home.vue
@@ -117,7 +117,7 @@
   }
   .content {
     width: 100%;
-    height:calc(100vh - 183px);
+    height:calc(100vh - 147px);
     margin-top: 60px;
   }
 }
diff --git a/se-index/src/components/interactive.vue b/se-index/src/components/interactive.vue
index b56d03a..f79aaa0 100644
--- a/se-index/src/components/interactive.vue
+++ b/se-index/src/components/interactive.vue
@@ -1,11 +1,575 @@
 <template>
   <div class="interactive">
-    <h1>1111111111</h1>
+    <div class="left">
+      <div
+        :class="leftBtnName == item ? 'btn-height' : 'btn'"
+        v-for="(item, index) in leftBtnList"
+        :key="index"
+        @click="leftBtnClick(item, index)"
+      >
+        {{ item }}
+      </div>
+    </div>
+    <div class="right">
+      <div class="select">
+        <div class="log">
+          <div class="name">閫氶亾寮傚父鏃ュ織</div>
+          <div class="sum">1</div>
+        </div>
+        <div class="from">
+          <el-form style="margin-bottom: 20px" label-width="120px">
+            <el-row style="height: 50px">
+              <el-form-item style="float: left" label="淇℃簮锛�">
+                <el-select
+                  :popper-append-to-body="false"
+                  v-model="source.value"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in source.options"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item style="float: left" label="淇″锛�">
+                <el-select
+                  :popper-append-to-body="false"
+                  v-model="destination.value"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in destination.options"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+              <el-form-item style="float: left" label="浼犺緭鏂瑰紡锛�">
+                <el-select
+                  :popper-append-to-body="false"
+                  v-model="transmission.value"
+                  placeholder="璇烽�夋嫨"
+                >
+                  <el-option
+                    v-for="item in transmission.options"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value"
+                  >
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-row>
+          </el-form>
+        </div>
+        <div class="refresh">
+          <img src="../assets/img/interactive/refresh_icon.png" alt="" />
+          <div class="name">鍒锋柊</div>
+        </div>
+        <div class="call">
+          <img src="../assets/img/interactive/call_icon.png" alt="" />
+          <div class="name">鍏ㄩ儴鎶ヨ</div>
+        </div>
+      </div>
+      <el-table :data="table.data" height="85%">
+        <el-table-column label="淇℃簮" width="150px">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.source }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="淇″">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.destination }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="浼犺緭鏂瑰紡">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.transmission }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鐘舵��">
+          <template>
+            <img src="../assets/img/interactive/yes.png" alt="" />
+          </template>
+        </el-table-column>
+        <el-table-column label="鎻忚堪">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.describe }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="浼犺緭鏁版嵁">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.transfer }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鏁呴殰鎶ヨ">
+          <template slot-scope="scope">
+            <el-switch v-model="scope.row.call"> </el-switch>
+          </template>
+        </el-table-column>
+        <el-table-column label="寮傚父澶勭悊">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.abnormal }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鏇存柊鏃堕棿">
+          <template slot-scope="scope">
+            <div>
+              {{ scope.row.time }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鍋ュ悍">
+          <template>
+            <img src="../assets/img/interactive/yes.png" alt="" />
+          </template>
+        </el-table-column>
+        <el-table-column label="鍙敤">
+          <template>
+            <img src="../assets/img/interactive/yes.png" alt="" />
+          </template>
+        </el-table-column>
+        <el-table-column label="璇︽儏">
+          <template>
+            <img
+              src="../assets/img/interactive/details.png"
+              alt=""
+              @click="detailsClick"
+            />
+          </template>
+        </el-table-column>
+      </el-table>
+      <div class="block">
+        <el-pagination
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-sizes="[10, 20, 30, 40]"
+          :page-size="10"
+          layout="total, sizes, prev, pager, next, jumper"
+          :total="40"
+        >
+        </el-pagination>
+      </div>
+    </div>
   </div>
 </template>
 
 <script>
-export default {};
+export default {
+  data() {
+    return {
+      leftBtnList: ["浜や簰閫氶亾绠$悊", "浜や簰杩囩▼鐩戞帶"],
+      leftBtnName: "浜や簰閫氶亾绠$悊",
+      source: {
+        options: [
+          {
+            value: "qx102stect1",
+            label: "qx102stect1"
+          },
+          {
+            value: "qx102stect2",
+            label: "qx102stect2"
+          }
+        ],
+        value: ""
+      },
+      destination: {
+        options: [
+          {
+            value: "qx102stect1",
+            label: "qx102stect1"
+          },
+          {
+            value: "qx102stect2",
+            label: "qx102stect2"
+          }
+        ],
+        value: ""
+      },
+      transmission: {
+        options: [
+          {
+            value: "qx102stect1",
+            label: "qx102stect1"
+          },
+          {
+            value: "qx102stect2",
+            label: "qx102stect2"
+          }
+        ],
+        value: ""
+      },
+      table: {
+        data: [
+          {
+            source: "鏁版嵁绠$悊鍒嗙郴缁�",
+            destination: "鍒嗙郴缁�",
+            transmission: "娑堟伅涓棿浠�",
+            state: "",
+            describe: "绯荤粺绠$悊鏈嶅姟鏁拌>",
+            transfer: "",
+            call: "",
+            abnormal: "閫氶亾鏂紑",
+            time: "2024-11-05 09:51:34",
+            healthy: "鏄�",
+            available: "鏄�",
+            details: ""
+          },
+          {
+            source: "鏁版嵁绠$悊鍒嗙郴缁�",
+            destination: "鍒嗙郴缁�",
+            transmission: "娑堟伅涓棿浠�",
+            state: "鏄�",
+            describe: "缃戝叧鏈嶅姟",
+            transfer: "",
+            call: "",
+            abnormal: "浼犺緭瓒呮椂",
+            time: "2024-11-05 18:20:04",
+            healthy: "鏄�",
+            available: "鏄�",
+            details: ""
+          }
+        ],
+        tableTh: [
+          {
+            label: "淇℃簮",
+            prop: "source"
+          },
+          {
+            label: "淇″",
+            prop: "destination"
+          },
+          {
+            label: "浼犺緭鏂瑰紡",
+            prop: "transmission"
+          },
+          {
+            label: "鐘舵��",
+            prop: "state"
+          },
+          {
+            label: "鎻忚堪",
+            prop: "describe"
+          },
+          {
+            label: "浼犺緭鏁版嵁",
+            prop: "transfer"
+          },
+          {
+            label: "鏁呴殰鎶ヨ",
+            prop: "call"
+          },
+          {
+            label: "寮傚父澶勭悊",
+            prop: "abnormal"
+          },
+          {
+            label: "鏇存柊鏃堕棿",
+            prop: "time"
+          },
+          {
+            label: "鍋ュ悍",
+            prop: "healthy"
+          },
+          {
+            label: "鍙敤",
+            prop: "available"
+          },
+          {
+            label: "璇︽儏",
+            prop: "details"
+          }
+        ]
+      },
+      currentPage: 4
+    };
+  },
+  methods: {
+    leftBtnClick(item, index) {
+      this.leftBtnName = item;
+    },
+    detailsClick() {},
+    handleSizeChange(val) {
+      console.log(`姣忛〉 ${val} 鏉);
+    },
+    handleCurrentChange(val) {
+      console.log(`褰撳墠椤�: ${val}`);
+    }
+  }
+};
 </script>
 
-<style lang="less" scope></style>
+<style lang="less" scoped>
+.interactive {
+  padding: 20px 30px;
+  display: flex;
+  height: 100%;
+  .left {
+    padding-top: 20px;
+    width: 320px;
+    height: 90%;
+    background: url("../assets/img/interactive/left_bg.png") no-repeat;
+    background-size: 100% 100%;
+    font-family: Source Han Sans SC;
+    font-weight: 400;
+    font-size: 18px;
+    color: #ffffff;
+    .btn {
+      margin: 20px auto;
+      width: 268px;
+      height: 43px;
+      line-height: 43px;
+      text-align: center;
+      background: url("../assets/img/interactive/left_btn.png");
+    }
+    .btn-height {
+      margin: 20px auto;
+      width: 268px;
+      height: 43px;
+      line-height: 43px;
+      text-align: center;
+      background: url("../assets/img/interactive/left_btn_height.png");
+    }
+  }
+  .right {
+    position: relative;
+    margin-left: 30px;
+    padding-top: 20px;
+    height: 90%;
+    .select {
+      display: flex;
+      .log {
+        position: relative;
+        width: 128px;
+        height: 48px;
+        background: radial-gradient(circle, #00c0fa 0%, #015eea 100%);
+        border-radius: 6px;
+        .name {
+          width: 100%;
+          height: 100%;
+          text-align: center;
+          line-height: 48px;
+          font-family: Source Han Sans SC;
+          font-weight: 400;
+          font-size: 18px;
+          color: #ffffff;
+        }
+        .sum {
+          position: absolute;
+          right: -10px;
+          top: -10px;
+          width: 25px;
+          height: 25px;
+          text-align: center;
+          line-height: 25px;
+          background: #10ad40;
+          border-radius: 50%;
+          border: 1px solid #ffffff;
+          font-size: 14px;
+          color: #ffffff;
+        }
+      }
+      .from {
+        margin-left: 300px;
+      }
+      .refresh {
+        margin-left: 10px;
+        display: flex;
+        align-items: center;
+        width: 76px;
+        height: 50px;
+        line-height: 50px;
+        background: #015eea;
+        border-radius: 6px;
+        font-size: 18px;
+        color: #ffffff;
+        img {
+          margin-left: 5px;
+          width: 23px;
+          height: 23px;
+        }
+        .name {
+          margin-left: 5px;
+        }
+      }
+      .call {
+        margin-left: 10px;
+        display: flex;
+        align-items: center;
+        width: 115px;
+        height: 49px;
+        line-height: 49px;
+        background: #083d62;
+        border-radius: 6px;
+        border: 1px solid #4b96dd;
+        font-size: 18px;
+        color: #ffffff;
+        img {
+          margin-left: 5px;
+          width: 23px;
+          height: 23px;
+        }
+        .name {
+          margin-left: 5px;
+        }
+      }
+    }
+    .block {
+      position: absolute;
+      left: 50%;
+      transform: translateX(-50%);
+      /deep/.el-pagination__total {
+        margin-top: 8px;
+        font-size: 18px;
+        color: #ffffff;
+      }
+      /deep/.el-input__inner {
+        width: 110px;
+        height: 40px;
+        font-size: 18px;
+      }
+      /deep/.btn-prev {
+        margin-top: 6px;
+        color: #fff;
+        background: rgba(0, 0, 0, 0);
+      }
+      /deep/.btn-next {
+        margin-top: 6px;
+        color: #fff;
+        background: rgba(0, 0, 0, 0);
+      }
+      /deep/.el-pager {
+        margin-top: 6px;
+        .number {
+          background: rgba(0, 0, 0, 0);
+          font-size: 18px;
+          color: #fff;
+        }
+        .active {
+          color: #0cb8ff;
+        }
+      }
+      /deep/.el-icon {
+        font-size: 16px;
+      }
+      /deep/.el-pagination__jump {
+        font-size: 18px;
+        color: #fff;
+      }
+      /deep/.el-pagination__editor {
+        width: 100px;
+        margin-left: 10px;
+        .el-input__inner {
+          width: 60px;
+          background: rgba(0, 0, 0, 0);
+          border: 1px solid #409eff;
+          color: #fff;
+          font-size: 18px;
+        }
+      }
+    }
+  }
+}
+/deep/ .el-form-item__label {
+  margin-top: 5px;
+  color: #fff;
+  font-size: 16px;
+}
+/deep/ .el-select {
+  input {
+    border: 1px solid #4b96dd;
+    background-color: rgba(0, 0, 0, 0);
+    color: #ddd;
+    height: 50px;
+    width: 160px;
+    font-size: 16px;
+  }
+}
+/deep/ .el-select-dropdown {
+  border: 1px solid #4b96dd;
+  background-color: #091631;
+  .el-select-dropdown__item.hover,
+  .el-select-dropdown__item:hover {
+    background-color: #2d4c9e;
+    color: #fff;
+  }
+  .el-select-dropdown__item {
+    color: #bbb;
+  }
+}
+
+/deep/ .el-table {
+  background-color: rgba(0, 0, 0, 0);
+  
+  thead {
+    tr {
+  
+      th {
+        background-color: #2d4c9e;
+        border-bottom: 0px;
+        .cell {
+          font-weight: 400;
+          font-size: 20px;
+          color: #fff;
+          text-shadow: 0px 0px 2px #00fbff;
+        }
+      }
+    }
+  }
+  tbody {
+    font-size: 16px;
+    color: #fff;
+    tr {
+      background-color: rgba(0, 0, 0, 0);
+      td {
+        background-color: rgba(0, 0, 0, 0);
+        border-bottom: 0px;
+      }
+    }
+    tr:hover {
+      border: 2px solid #4b96dd;
+      td {
+        background-color: #2d4c9e;
+      }
+    }
+  }
+}
+/deep/ .el-table::before {
+  height: 0px;
+}
+</style>
+
+<style>
+.el-select-dropdown {
+  border: 1px solid #4b96dd;
+  background-color: #091631;
+}
+.el-select-dropdown__item.hover,
+.el-select-dropdown__item:hover {
+  background-color: #2d4c9e;
+  color: #fff;
+}
+.el-select-dropdown__item {
+  color: #bbb;
+}
+
+
+</style>

--
Gitblit v1.9.3