From 4299bf547e315c824dd59b587be8778937dfb08e Mon Sep 17 00:00:00 2001
From: “zhuo” <“zhuo@itcast.cn”>
Date: 星期三, 09 八月 2023 17:54:06 +0800
Subject: [PATCH] 8-9提交代码

---
 src/views/experiment/planAssignments/index.vue |  307 +++++++++++++++++++++++----------------------------
 1 files changed, 139 insertions(+), 168 deletions(-)

diff --git a/src/views/experiment/planAssignments/index.vue b/src/views/experiment/planAssignments/index.vue
index cffcc61..f5bdf13 100644
--- a/src/views/experiment/planAssignments/index.vue
+++ b/src/views/experiment/planAssignments/index.vue
@@ -3,12 +3,17 @@
     <div class="top-bar">
       <el-form ref="form" :inline="true" :model="searchData">
         <el-form-item label="璁惧鍚嶇О:" class="sermargin">
-          <el-select v-model="searchData.devicename" placeholder="鍏ㄩ儴" style="width: 100px;">
+          <el-select
+            v-model="searchData.devicename"
+            placeholder="鍏ㄩ儴"
+            style="width: 100px"
+          >
             <el-option
-              v-for="item in options"
+              v-for="item in options1"
               :key="item.value"
               :label="item.label"
-              :value="item.value">
+              :value="item.value"
+            >
             </el-option>
           </el-select>
         </el-form-item>
@@ -18,131 +23,132 @@
             type="daterange"
             range-separator="~"
             start-placeholder="寮�濮嬫棩鏈�"
-            end-placeholder="缁撴潫鏃ユ湡">
+            end-placeholder="缁撴潫鏃ユ湡"
+          >
           </el-date-picker>
         </el-form-item>
-        <el-form-item label="妫�楠屼汉:" style="margin-right: 20px;">
-          <el-select v-model="searchData.person" placeholder="鍏ㄩ儴" style="width: 80px;margin-right: 100px;">
+        <el-form-item label="妫�楠屼汉:" style="margin-right: 20px">
+          <el-select
+            v-model="searchData.person"
+            placeholder="鍏ㄩ儴"
+            style="width: 80px; margin-right: 100px"
+          >
             <el-option
-              v-for="item in options"
+              v-for="item in options2"
               :key="item.value"
               :label="item.label"
-              :value="item.value">
+              :value="item.value"
+            >
             </el-option>
           </el-select>
         </el-form-item>
         <el-form-item>
-          <el-button type="primary" plain style="margin-right: 10px;">閲嶇疆</el-button>
+          <el-button type="primary" plain style="margin-right: 10px"
+            >閲嶇疆</el-button
+          >
           <el-button type="primary">鏌ヨ</el-button>
         </el-form-item>
-        </el-form>
+      </el-form>
     </div>
     <div class="table-box">
       <div class="formwrapper">
         <el-table
           ref="planTable"
           :max-height="800"
-          :cell-style="{textAlign: 'center'}"
-          :header-cell-style="{border:'0px',background:'#f5f7fa',color:'#606266',boxShadow: 'inset 0 1px 0 #ebeef5',textAlign: 'center'}"
+          :cell-style="{ textAlign: 'center' }"
+          :header-cell-style="{
+            border: '0px',
+            background: '#f5f7fa',
+            color: '#606266',
+            boxShadow: 'inset 0 1px 0 #ebeef5',
+            textAlign: 'center',
+          }"
           :data="planTable"
           style="width: 100%"
         >
-        <el-table-column
-          type="index"
-          label="搴忓彿"
-          min-width="10%"
-        />
-        <el-table-column
-          prop="device"
-          label="妫�楠岃澶�"
-          min-width="8%"
-        />
-        <el-table-column
-          prop="samplename"
-          label="鏍峰搧鍚嶇О"
-          min-width="8%"
-        />
-        <el-table-column
-          prop="sampleid"
-          label="鏍峰搧缂栧彿"
-          min-width="10%"
-        />
-        <el-table-column
-          prop="modelandspecification"
-          label="瑙勬牸鍨嬪彿"
-          min-width="12%"
-        />
-        <el-table-column
-          prop="unit"
-          label="鍗曚綅"
-          min-width="5%"
-        />
-        <el-table-column
-          prop="amount"
-          label="鏁伴噺"
-          min-width="5%"
-        />
-        <el-table-column
-          prop="checkproject"
-          label="妫�楠岄」鐩�"
-          min-width="12%"
-        />
-        <el-table-column
-          prop="checker"
-          label="妫�楠屼汉"
-          min-width="6%"
-        />
-        <el-table-column
-          prop="duration"
-          label="璁″垝宸ユ湡/h"
-          min-width="8%"
-        />
-        <el-table-column
-          prop="progress"
-          label="妫�楠岃繘搴�"
-          min-width="12%">
-          <template slot-scope="scope">
-            <div v-if="scope.row.progress === 100" style="display: flex;">
-              <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" status="success" style="width: 70%;"></el-progress>
-              <span style="color: rgb(103, 194, 58);">宸插畬鎴�</span>
-            </div>
-            <div v-if="scope.row.progress <100 && scope.row.progress >0" style="display: flex;">
-              <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" status="warning" style="width: 70%;"></el-progress>
-              <span style="color: rgb(230, 162, 60);">妫�楠屼腑</span>
-            </div>
-            <div v-if="scope.row.progress === 0" style="display: flex;">
-              <el-progress :text-inside="true" :stroke-width="15" :percentage="scope.row.progress" style="width: 70%;"></el-progress>
-              <span style="color: gray">鏈垎閰�</span>
-            </div>
-            <div v-else>
-            </div>
-          </template>
-        </el-table-column>
-        <el-table-column
-          prop="starttime"
-          label="璁″垝寮�濮嬫椂闂�"
-          min-width="10%"
-        />
-        <el-table-column
-          prop="finishtime"
-          label="璁″垝缁撴潫鏃堕棿"
-          min-width="10%"
-        />
-        <el-table-column
-            label="鎿嶄綔"
-            min-width="8%"
-        >
-          <template slot-scope="scope">
-            <el-button type="text" size="small" @click="handleClick(scope.row)">鏌ョ湅</el-button>
-          </template>
-        </el-table-column>
+          <el-table-column type="index" label="搴忓彿" min-width="10%" />
+          <el-table-column prop="device" label="妫�楠岃澶�" min-width="8%" />
+          <el-table-column prop="samplename" label="鏍峰搧鍚嶇О" min-width="8%" />
+          <el-table-column prop="sampleid" label="鏍峰搧缂栧彿" min-width="10%" />
+          <el-table-column
+            prop="modelandspecification"
+            label="瑙勬牸鍨嬪彿"
+            min-width="12%"
+          />
+          <el-table-column prop="unit" label="鍗曚綅" min-width="5%" />
+          <el-table-column prop="amount" label="鏁伴噺" min-width="5%" />
+          <el-table-column
+            prop="checkproject"
+            label="妫�楠岄」鐩�"
+            min-width="12%"
+          />
+          <el-table-column prop="checker" label="妫�楠屼汉" min-width="6%" />
+          <el-table-column prop="duration" label="璁″垝宸ユ湡/h" min-width="8%" />
+          <el-table-column prop="progress" label="妫�楠岃繘搴�" min-width="12%">
+            <template slot-scope="scope">
+              <div v-if="scope.row.progress === 100" style="display: flex">
+                <el-progress
+                  :text-inside="true"
+                  :stroke-width="15"
+                  :percentage="scope.row.progress"
+                  status="success"
+                  style="width: 70%"
+                ></el-progress>
+                <span style="color: rgb(103, 194, 58)">宸插畬鎴�</span>
+              </div>
+              <div
+                v-if="scope.row.progress < 100 && scope.row.progress > 0"
+                style="display: flex"
+              >
+                <el-progress
+                  :text-inside="true"
+                  :stroke-width="15"
+                  :percentage="scope.row.progress"
+                  status="warning"
+                  style="width: 70%"
+                ></el-progress>
+                <span style="color: rgb(230, 162, 60)">妫�楠屼腑</span>
+              </div>
+              <div v-if="scope.row.progress === 0" style="display: flex">
+                <el-progress
+                  :text-inside="true"
+                  :stroke-width="15"
+                  :percentage="scope.row.progress"
+                  style="width: 70%"
+                ></el-progress>
+                <span style="color: gray">鏈垎閰�</span>
+              </div>
+              <div v-else></div>
+            </template>
+          </el-table-column>
+          <el-table-column
+            prop="starttime"
+            label="璁″垝寮�濮嬫椂闂�"
+            min-width="10%"
+          />
+          <el-table-column
+            prop="finishtime"
+            label="璁″垝缁撴潫鏃堕棿"
+            min-width="10%"
+          />
+          <el-table-column label="鎿嶄綔" min-width="8%">
+            <template slot-scope="scope">
+              <el-button
+                type="text"
+                size="small"
+                @click="handleClick(scope.row)"
+                >鏌ョ湅</el-button
+              >
+            </template>
+          </el-table-column>
         </el-table>
       </div>
-      </div>
+    </div>
   </div>
 </template>
 
 <script>
+import { selectAllPlan } from "@/api/experiment/planAssignments";
 export default {
   data() {
     return {
@@ -151,71 +157,36 @@
         time: "",
         person: "",
       },
-      options: [
-        {
-          value: "閫夐」1",
-          label: "閫夐」1",
-        },
-        {
-          value: "閫夐」2",
-          label: "閫夐」2",
-          disabled: true,
-        },
-      ],
-      planTable: [{
-        device: '鎷夊姏鏈�',
-        samplename: '闀�閿岄挗缁炵嚎',
-        sampleid: 'SN1027401-12937',
-        modelandspecification: 'JLHA/G1A-185/30-14/7',
-        unit: 'm',
-        amount: '200',
-        checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
-        checker: '榛勫皬鏄�',
-        duration: '2',
-        progress: 100,
-        starttime: '2023-08-04 8:00',
-        finishtime: '2023-08-04 10:00',
-      },{
-        device: '鎷夊姏鏈�',
-        samplename: '闀�閿岄挗缁炵嚎',
-        sampleid: 'SN1027401-12937',
-        modelandspecification: 'JLHA/G1A-185/30-14/7',
-        unit: 'm',
-        amount: '200',
-        checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
-        checker: '榛勫皬鏄�',
-        duration: '2',
-        progress: 60,
-        starttime: '2023-08-04 8:00',
-        finishtime: '2023-08-04 10:00',
-      },{
-        device: '鎷夊姏鏈�',
-        samplename: '闀�閿岄挗缁炵嚎',
-        sampleid: 'SN1027401-12937',
-        modelandspecification: 'JLHA/G1A-185/30-14/7',
-        unit: 'm',
-        amount: '200',
-        checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
-        checker: '榛勫皬鏄�',
-        duration: '2',
-        progress: 30,
-        starttime: '2023-08-04 8:00',
-        finishtime: '2023-08-04 10:00',
-      },{
-        device: '鎷夊姏鏈�',
-        samplename: '闀�閿岄挗缁炵嚎',
-        sampleid: 'SN1027401-12937',
-        modelandspecification: 'JLHA/G1A-185/30-14/7',
-        unit: 'm',
-        amount: '200',
-        checkproject: '鎶楀帇寮哄害锛堢粸鍓嶏級',
-        checker: '榛勫皬鏄�',
-        duration: '2',
-        progress: 0,
-        starttime: '2023-08-04 8:00',
-        finishtime: '2023-08-04 10:00',
-      }]
+      options1: [],
+      options2: [],
+      planTable: [],
     };
+  },
+  created() {
+    this.getData();
+  },
+  methods: {
+    // 鏌ヨ鍒楄〃
+    async getData() {
+      const params = {};
+      const { data } = await selectAllPlan(params);
+      this.planTable = data;
+      this.planTable.forEach((res) => {
+        let o1 = {
+          value: res.device,
+          label: res.device,
+        };
+        this.options1.push(o1);
+
+        if(res.userId == undefined) {
+
+        }
+      });
+      let d=this.options1.filter((val,index,self)=>{
+        return self.indexOf(val)==index;
+      })
+      console.log(d);
+    },
   },
 };
 </script>
@@ -236,14 +207,14 @@
     margin-right: 60px;
   }
 }
-.table-box{
+.table-box {
   background-color: #fff;
   margin: 0px -15px;
   margin-top: 35px;
   display: flex;
   flex-direction: column;
   height: 78vh;
-  .formwrapper{
+  .formwrapper {
     padding: 0px 20px;
     margin-top: 0px;
     flex: 1;

--
Gitblit v1.9.3