From 8118f56d86267e443f147c17ccb014338607e247 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期五, 18 八月 2023 20:26:18 +0800
Subject: [PATCH] 面板 前端开发+ 后端 没数据

---
 src/views/visualization.vue | 1058 ++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 727 insertions(+), 331 deletions(-)

diff --git a/src/views/visualization.vue b/src/views/visualization.vue
index 7f6c12b..23c3a5a 100644
--- a/src/views/visualization.vue
+++ b/src/views/visualization.vue
@@ -1,252 +1,583 @@
 
 <template>
   <div class="home">
-    <div class="left">
-      <div class="left_top">
-        <p class="title">
-          璁続423鐢熶骇绠$悊鐪嬫澘
-          <span class="font el-icon-setting set-title"></span>
-        </p>
-        <div class="statelist">
-          <span class="title-item"
-            >璁㈠崟缂栧彿: <span class="color_4efefa">Q-22038</span>
-          </span>
-          <span class="title-item"
-            >褰撳墠宸ュ簭: <span class="color_4efefa">鍓嶇汉(QF)</span>
-          </span>
-          <span class="title-item"
-            >鍚庨亾宸ュ簭: <span class="color_4efefa">Q-22038</span>
-          </span>
-          <span class="title-item"
-            >宸ヤ綔浜烘暟: <span class="color_4efefa">6浜�</span>
-          </span>
-        </div>
-        <div class="content">
-          <div class="content_left">
-            <div class="content-top">
-              <div class="small_title">褰撳墠瀹屾垚</div>
-              <div class="content_leftBttom">
-                <dl>
-                  <dd style="font-size: 26px; font-weight: 600">0m</dd>
-                </dl>
-              </div>
-            </div>
-            <div class="content-top">
-              <div class="small_title">姝e搧鐢熶骇</div>
-              <div class="content_leftBttom">
-                <dl>
-                  <dd style="font-size: 26px; font-weight: 600">400m</dd>
-                </dl>
-              </div>
-            </div>
+    <template v-if="Object.keys(taskData).length > 0">
+      <div class="left">
+          <p class="title">
+            璁続423鐢熶骇绠$悊鐪嬫澘
+            <span
+              class="font el-icon-setting set-title"
+              style="float: right"
+              @click="setUrl"
+            ></span>
+          </p>
+          <div class="statelist">
+            <span class="title-item"
+              >璁㈠崟缂栧彿:
+              <span class="color_4efefa">{{
+                taskData.order.orderId || ""
+              }}</span>
+            </span>
+            <span class="title-item"
+              >褰撳墠宸ュ簭:
+              <span class="color_4efefa">{{
+                taskData.procedure.procedure.procedureName || ""
+              }}</span>
+            </span>
+            <span class="title-item"
+              >鍚庨亾宸ュ簭: <span class="color_4efefa">Q-22038</span>
+            </span>
+            <span class="title-item"
+              >宸ヤ綔浜烘暟: <span class="color_4efefa">6浜�</span>
+            </span>
           </div>
-          <div class="content_right">
-            <el-descriptions :column="2" :colon="true">
-              <el-descriptions-item label="浜у搧鍚嶇О"
-                >kooriookami</el-descriptions-item
-              >
-              <el-descriptions-item label="鏁伴噺:"
-                >18100000000</el-descriptions-item
-              >
-              <el-descriptions-item label="浜よ揣鏃ユ湡:"
-                >鑻忓窞甯�</el-descriptions-item
-              >
-              <el-descriptions-item label="宸ユ椂:"> 瀛︽牎 </el-descriptions-item>
-              <el-descriptions-item label="璧锋鏃堕棿"
-                >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
-              >
-              <el-descriptions-item label="璐х墿鎻忚堪"
-                >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
-              >
-              <el-descriptions-item label="瀹㈡埛鍚嶇О"
-                >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
-              >
-              <el-descriptions-item label="鍙傛暟瑕佹眰"
-                >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
-              >
-            </el-descriptions>
-            <el-descriptions :column="1" :colon="true">
-              <el-descriptions-item label="瀹屾垚搴�" style="width: 100%">
-                <el-progress
-                  define-back-color="#007101"
-                  color="#00CC66"
-                  :text-inside="true"
-                  :stroke-width="30"
-                  :percentage="progress"
-                  :text-format="format"
-                  >瀹屾垚鐜�50%</el-progress
+          <div class="content">
+            <div class="content_left">
+              <div class="content-top">
+                <div class="small_title">褰撳墠瀹屾垚</div>
+                <div class="content_leftBttom">
+                  <dl>
+                    <dd style="font-size: 26px; font-weight: 600">0m</dd>
+                  </dl>
+                </div>
+              </div>
+              <div class="content-top">
+                <div class="small_title">姝e搧鐢熶骇</div>
+                <div class="content_leftBttom">
+                  <dl>
+                    <dd style="font-size: 26px; font-weight: 600">400m</dd>
+                  </dl>
+                </div>
+              </div>
+            </div>
+            <div class="content_right">
+              <el-descriptions :column="2" :colon="true">
+                <el-descriptions-item label="浜у搧鍚嶇О">{{
+                  taskData.order.productName || ""
+                }}</el-descriptions-item>
+                <el-descriptions-item label="鏁伴噺:">{{
+                  taskData.order.amount || ""
+                }}</el-descriptions-item>
+                <el-descriptions-item label="浜よ揣鏃ユ湡:">{{
+                  taskData.order.deliverDate || ""
+                }}</el-descriptions-item>
+                <el-descriptions-item label="宸ユ椂:">
+                  {{ taskData.order.deliverDate || "" }}
+                </el-descriptions-item>
+                <el-descriptions-item label="璧锋鏃堕棿">{{
+                  taskData.order.startTime || ""
+                }}</el-descriptions-item>
+                <el-descriptions-item label="璐х墿鎻忚堪"
+                  >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
                 >
-              </el-descriptions-item>
-              <el-descriptions-item label="鍚堟牸鐜�" style="width: 100%">
-                <el-progress
-                  define-back-color="#007101"
-                  color="#00CC66"
-                  :text-inside="true"
-                  :stroke-width="30"
-                  :percentage="passrate"
-                ></el-progress>
-              </el-descriptions-item>
-            </el-descriptions>
+                <el-descriptions-item label="瀹㈡埛鍚嶇О"
+                  >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
+                >
+                <el-descriptions-item label="鍙傛暟瑕佹眰"
+                  >姹熻嫃鐪佽嫃宸炲競鍚翠腑鍖哄惔涓ぇ閬� 1188 鍙�</el-descriptions-item
+                >
+              </el-descriptions>
+              <el-descriptions :column="1" :colon="true">
+                <el-descriptions-item label="瀹屾垚搴�" style="width: 100%">
+                  <!--  -->
+                  <el-progress
+                    define-back-color="#007101"
+                    color="#00CC66"
+                    :text-inside="true"
+                    :stroke-width="30"
+                    :percentage="progress"
+                    :text-format="format"
+                    >瀹屾垚鐜�50%</el-progress
+                  >
+                </el-descriptions-item>
+                <el-descriptions-item label="鍚堟牸鐜�" style="width: 100%">
+                  <el-progress
+                    define-back-color="#007101"
+                    color="#00CC66"
+                    :text-inside="true"
+                    :stroke-width="30"
+                    :percentage="passrate"
+                  ></el-progress>
+                </el-descriptions-item>
+              </el-descriptions>
+            </div>
+          </div>
+          <div class="bottom">
+            <div class="bottom_list">
+              <div class="bottom-title">
+                杈撳叆璧勬簮
+                <el-button type="primary" class="color_f70f83" size="small">
+                  鐗╂枡鍛煎彨</el-button
+                >
+              </div>
+              <el-carousel
+                direction="vertical"
+                height="calc(100% -  0px)"
+                :interval="500"
+                class="card-box"
+                ref="cardBox1"
+                v-if="
+                  taskData.procedure.procedure &&
+                  taskData.procedure.procedure.inputMaterials
+                "
+              >
+                <el-carousel-item
+                  :key="index"
+                  v-for="(item, index) in inputMaterials"
+                >
+                  <div
+                    class="card"
+                    :key="index2"
+                    v-for="(list, index2) in item"
+                  >
+                    <div class="card_content">
+                      <div class="card_contentLeft">
+                        鍖呭彿:G22122304 100鍚▄{ index }}
+                      </div>
+                    </div>
+                    <div class="card_top">
+                      <div>
+                        璁惧12<i
+                          style="font-size: 14px"
+                          class="el-icon-right font-arrow-20"
+                        ></i>
+                        璁惧13
+                      </div>
+                    </div>
+                    <div class="card_top-2">
+                      <span class="card-top-r-t">鐢熶骇瀹屾垚</span>
+                      <span class="card-top-r-b">12鏈�28鏃� 08:24</span>
+                    </div>
+                  </div>
+                </el-carousel-item>
+              </el-carousel>
+            </div>
+            <i class="el-icon-arrow-right font-arrow-20 color_4efefa"></i>
+            <div class="bottom_list">
+              <div class="bottom-title">褰撳墠宸ュ簭:鍓嶇汉(QF)</div>
+              <el-carousel
+                direction="vertical"
+                height="calc(100% -  0px)"
+                :interval="500"
+                class="card-box"
+                v-if="
+                  taskData.procedure.procedure &&
+                  taskData.procedure.procedure.inputMaterials
+                "
+              >
+                <el-carousel-item
+                  :key="index"
+                  v-for="(item, index) in inputMaterials"
+                >
+                  <div class="card" 
+                  :key="index2"
+                    v-for="(list, index2) in item">
+                    <div class="card_content">
+                      <div class="card_contentLeft color_blue">
+                        鍖呭彿:G22122304 100鍚�
+                        <span style="float: right">6m/s</span>
+                      </div>
+                    </div>
+                    <div class="card_top-3">
+                      <span class="card-top-r-t">瀹屾垚杩涘害锛�50%</span>
+                      <span class="card-top-r-b">
+                        <el-progress
+                          define-back-color="#007101"
+                          color="#00CC66"
+                          :text-inside="true"
+                          :stroke-width="10"
+                          :percentage="50"
+                          :show-text="false"
+                        ></el-progress>
+                      </span>
+                    </div>
+                    <div class="card_top-2">
+                      <span class="card-top-r-t">瀹屾垚杩涘害锛�50%</span>
+                      <span class="card-top-r-b">12鏈�28鏃� 08:24</span>
+                    </div>
+                  </div>
+                </el-carousel-item>
+              </el-carousel>
+              <div class="card">
+                <div class="card_content">
+                  <div class="card_contentLeft color_blue">
+                    鍖呭彿:G22122304 100鍚�
+                  </div>
+                </div>
+                <div class="card_top-4">
+                  姝ゆā鍨嬬敤浜庢暟鍊兼娴嬶紝绮惧噯妫�娴嬬浉鍏崇敓浜ф暟鎹��
+                  姝ゆā鍨嬬敤浜庢暟鍊兼娴嬶紝绮惧噯妫�娴嬬浉鍏崇敓浜ф暟鎹�
+                </div>
+              </div>
+              <p
+                style="font-size: 22px; margin-left: 12px; margin-top: 50px"
+              ></p>
+            </div>
+            <i class="el-icon-arrow-right font-arrow-20 color_4efefa"></i>
+            <div class="bottom_list">
+              <div class="bottom-title">
+                <span>杈撳嚭璧勬簮</span>
+                <el-button type="primary" class="color_organge" size="small">
+                  杩愯緭鍛煎彨</el-button
+                >
+              </div>
+              <el-carousel
+                direction="vertical"
+                height="calc(100% -  0px)"
+                :interval="500"
+                ref="cardBox3"
+                class="card-box"
+                v-if="
+                  taskData.procedure.procedure &&
+                  taskData.procedure.procedure.outputMaterials
+                "
+              >
+                <el-carousel-item
+                  :key="index"
+                  v-for="(item, index) in outputMaterials"
+                >
+                <div
+                  class="card-box"
+                  :key="index2"
+                  v-for="(list, index2) in item"
+                >
+                  <div
+                    class="card"
+                  >
+                    <div class="card_content">
+                      <div class="card_contentLeft">鍖呭彿:G22122304 100鍚�</div>
+                    </div>
+                    <div class="card_top">
+                      <div>
+                        璁惧12<i
+                          style="font-size: 14px"
+                          class="el-icon-right font-arrow-20"
+                        ></i>
+                        璁惧13
+                      </div>
+                    </div>
+                    <div class="card_top-2">
+                      <span class="card-top-r-t">鐢熶骇瀹屾垚</span>
+                      <span class="card-top-r-b">12鏈�28鏃� 08:24</span>
+                    </div>
+                    <div class="card-info-box">棰勮10鍒嗛挓閫佽揪</div>
+                  </div>
+                  <div class="card">
+                    <div class="card_content">
+                      <div class="card_contentLeft color_green">
+                        鍖呭彿:G22122304 100鍚�
+                      </div>
+                    </div>
+                    <div class="card_top">
+                      <div>
+                        璁惧12<i
+                          style="font-size: 14px"
+                          class="el-icon-right font-arrow-20"
+                        ></i>
+                        璁惧13
+                      </div>
+                    </div>
+                    <div class="card_top-2">
+                      <span class="card-top-r-t">鐢熶骇瀹屾垚</span>
+                      <span class="card-top-r-b">12鏈�28鏃� 08:24</span>
+                    </div>
+                  </div>
+                </div>
+                </el-carousel-item>
+                </el-carousel>
+            </div>
+          </div>
+      </div>
+      <div class="right">
+        <div class="right_top">
+          <div class="right-top-l">浣滀笟鐘舵��</div>
+          <div class="time">
+            <dl>
+              <dd><span style="font-size: 32px">17:50</span></dd>
+              <dd>
+                <span style="font-size: 12px; margin-right: 10px"
+                  >2023/02/16</span
+                >
+                <span style="font-size: 14px">鏄熸湡鍥�</span>
+              </dd>
+            </dl>
           </div>
         </div>
-        <div class="bottom">
-          <div class="bottom_list">
-            <div class="bottom-title">杈撳叆璧勬簮</div>
-            <Card />
-            <Card />
-            <Card />
-            <!-- <span class="call">鍛煎彨鐗╂枡</span> -->
-          </div>
-          <i class="el-icon-arrow-right font-arrow-20"></i>
-          <div class="bottom_list">
-            <div class="bottom-title">褰撳墠宸ュ簭:鍓嶇汉(QF)</div>
-            <!-- format:format(percentage) -->
-            <div
-              style="
-                display: flex;
-                margin: auto;
-                width: 160px;
-                margin-top: 12px;
-              "
+        <div class="right-top-m">
+          璁惧鐘舵��:
+          <span style="position: relative"
+            >姝e父
+            <span class="yuandian"></span>
+          </span>
+        </div>
+        <div class="right-top-m-btn">
+          <el-button type="primary" @click="controlClick"> 鎺у埗</el-button>
+        </div>
+        <div class="right_dutyLst">
+          <div class="right-small-title">褰撳墠鍊肩彮</div>
+          <dl class="right-small-person">
+            <dt>
+              <el-avatar
+                class="img-class"
+                src="https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
+              ></el-avatar>
+            </dt>
+            <span
+              style="font-size: 20px; font-weight: 600; margin-right: 10px"
+              >{{ taskData.procedure.procedure.workers.workerName || "" }}</span
             >
-              <el-progress
-                :stroke-width="12"
-                text-color="#4EFEFA"
-                color="#4C6CEC"
-                define-back-color="#4EFEFA"
-                type="circle"
-                :percentage="production"
-                :width="160"
-                style="font-size: 20px"
-              ></el-progress>
-            </div>
-
-            <Card />
-            <p style="font-size: 22px; margin-left: 12px; margin-top: 50px">
-             
-            </p>
-            <!-- <div class="qfcall">
-              <span
-                style="
-                  width: 63%;
-                  height: 100%;
-                  background: #4efefa;
-                  display: inline-block;
-                  border-radius: 5px;
-                  color: #000;
-                "
-                >鎵撳嵃</span
-              >
-              <span
-                style="
-                  width: 33%;
-                  height: 100%;
-                  background: #ff0000;
-                  display: inline-block;
-                  border-radius: 5px;
-                  margin-left: 2%;
-                "
-                >缁撴潫</span
-              >
-            </div> -->
-          </div>
-          <i class="el-icon-arrow-right font-arrow-20"></i>
-          <div class="bottom_list">
-            <div class="bottom-title">杈撳嚭璧勬簮</div>
-            <Card />
-            <Card />
-            <Card />
-            <!-- <span class="call">鍛煎彨杩愯緭</span> -->
-          </div>
-        </div>
-      </div>
-    </div>
-    <div class="right">
-      <div class="right_top">
-        <div class="right-top-l">浣滀笟鐘舵��</div>
-        <div class="time">
-          <dl>
-            <dd><span style="font-size: 32px">17:50</span></dd>
-            <dd>
-              <span style="font-size: 12px; margin-right: 10px"
-                >2023/02/16</span
-              >
-              <span style="font-size: 14px">鏄熸湡鍥�</span>
-            </dd>
+            <span style="color: #666">{{
+              taskData.procedure.procedure.workers.phoneNum || ""
+            }}</span>
           </dl>
+          <div
+            style="
+              width: 100%;
+              font-size: 18px;
+              font-weight: 600;
+              margin-top: 50px;
+              text-align: center;
+              line-height: 50px;
+            "
+          >
+            缂栧彿锛歿{ taskData.procedure.procedure.workers.workerId || "" }}
+          </div>
+          <div class="right-small-btn">
+            <el-button type="primary"> 鎵撳嵃</el-button>
+            <el-popover
+              placement="top-end"
+              width="160"
+              class="button-finish"
+              v-model="finishShow"
+              trigger="click"
+            >
+              <p>璇风‘璁ゆ槸鍚﹀凡瀹屾垚璇ョ敓浜т换鍔�?</p>
+              <div style="text-align: right; margin: 0">
+                <el-button size="mini" @click="finishShow = false">
+                  鍙栨秷</el-button
+                >
+                <el-button type="primary" size="mini" @click="finishClick">
+                  纭畾</el-button
+                >
+              </div>
+              <el-button type="primary" slot="reference"> 瀹屾垚</el-button>
+            </el-popover>
+          </div>
+        </div>
+        <div class="right_base">
+          <Knowledge />
+          <div class="right-base-btn call">
+            <el-button type="primary"> 绾㈢伅鍛煎彨</el-button>
+          </div>
         </div>
       </div>
-      <div class="right-top-m">
-        璁惧鐘舵��:
-        <span style="position: relative"
-          >姝e父
-          <span class="yuandian"></span>
-        </span>
-      </div>
-      <div class="right-top-m-btn">
-        <el-button type="primary" @click="openorder">
-               鎺у埗</el-button
-              >
-      </div>
-      <div class="right_dutyLst">
-        <div class="right-small-title">褰撳墠鍊肩彮</div>
-        <dl class='right-small-person'>
-          <dt>
-            <el-avatar
-            class="img-class"
-              src="https://cube.elemecdn.com/0/88/03b0d39583f48206768a7534e55bcpng.png"
-            ></el-avatar>
-          </dt>
-          <span style="font-size:20px; font-weight:600;margin-right:10px">寮犱笁</span>
-          <span style="color:#666;">1867654329</span>
-        </dl>
-        <div style="width:100%;font-size:18px;font-weight:600;margin-top:50px;text-align:center;line-height:50px;">缂栧彿锛�12233</div>
-        <div class="right-small-btn">
-          <el-button type="primary" @click="openorder">
-                鎵撳嵃</el-button
-                >
-                <el-button type="primary" @click="openorder">
-                瀹屾垚</el-button
-                >
+    </template>
+    <template v-else>
+      <div
+        style="
+          width: 100%;
+          height: 100%;
+          font-size: 20px;
+          text-align: center;
+          line-height: 100px;
+        "
+      >
+        <div
+          style="
+            width: 200px;
+            height: 200px;
+            margin: 0 auto;
+            line-height: 200px;
+            margin-top: calc(20% - 100px);
+          "
+        >
+          鏆傛棤浠诲姟
         </div>
       </div>
-      <div class="right_base">
-       
-        <Knowledge />
-        <div class="right-base-btn call">
-        <el-button type="primary" @click="openorder">
-          绾㈢伅鍛煎彨</el-button
-              >
-      </div>
-      </div>
-    </div>
+    </template>
+    <!-- 鎺у埗鐨勫脊妗� -->
+    <AddControl ref="control" :id="taskData.procedure.id" />
   </div>
 </template>
 
 <script>
+import {
+  getTaskInfo,
+  finishTask,
+  getMiniDictList,
+  saveMiniDict,
+} from "@/api/home/index"; // 浜х嚎
 import Card from "@/components/Card.vue";
 import Knowledge from "../components/Knowledge.vue";
+import AddControl from "../components/AddControl.vue";
 export default {
   components: {
     Card,
     Knowledge,
+    AddControl,
   },
   data() {
     return {
       progress: 70, //杩涘害
       passrate: 30, //鍚堟牸鐜�
       production: 25, //鐢熶骇涓�
+      // 鍙充晶瀹屾垚
+      finishShow: false,
+      inputMaterials: [],
+      outputMaterials:[],
+      taskData: {
+        order: {
+          amount: "",
+          customer: "",
+          deliverDate: "",
+          endTime: "",
+          orderAttr: [],
+          orderId: "",
+          parameter: "",
+          productId: "",
+          productName: "",
+          startTime: "",
+          unit: "",
+        },
+        procedure: {
+          id: 1,
+          procedure: {
+            deviceId: "",
+            endTime: "",
+            inputMaterials: [
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+            ],
+            outputMaterials: [
+              {
+                amount: "",
+                materialId: "",
+                materialName: "",
+                unit: "",
+              },
+            ],
+            procedureId: "",
+            procedureName: "",
+            startTime: "",
+            workHours: "",
+            workers: [
+              {
+                phoneNum: "",
+                workerId: "",
+                workerName: "",
+              },
+            ],
+          },
+        },
+      },
     };
   },
-  created() {
-    setInterval(() => {
-      this.progress = this.getRandomNumber(1, 100);
-      this.passrate = this.getRandomNumber(1, 100);
-      this.production = this.getRandomNumber(1, 100);
-    }, 3000);
+  mounted() {
+    // setInterval(() => {
+    //   this.progress = this.getRandomNumber(1, 100);
+    //   this.passrate = this.getRandomNumber(1, 100);
+    //   this.production = this.getRandomNumber(1, 100);
+    // }, 3000);
+    this.getTaskInfo();
   },
 
   methods: {
+    setInterCard(value, name) {
+      let height = 200;
+      let num = 1;
+      if (this.$refs[name]) {
+        height = this.$refs[name].$el.offsetHeight;
+        num = Math.floor(height / 80);
+      }
+      let inputMaterials = JSON.parse(
+        JSON.stringify(this.taskData.procedure.procedure[value])
+      );
+      let newDataList = [];
+      let current = 0;
+      // let num=4;
+      if (inputMaterials && inputMaterials.length > 0) {
+        for (let i = 0; i <= inputMaterials.length - 1; i++) {
+          if (i % num !== 0 || i === 0) {
+            if (!newDataList[current]) {
+              newDataList[current] = [];
+              newDataList[current].push(inputMaterials[i]);
+            } else {
+              newDataList[current].push(inputMaterials[i]);
+            }
+          } else {
+            current++;
+            newDataList[current] = [];
+            newDataList[current].push(inputMaterials[i]);
+          }
+        }
+      }
+      this[value] = [...newDataList];
+      console.log(this.inputMaterials, "inputMaterials");
+    },
+
+    getTaskInfo() {
+      getTaskInfo().then((res) => {
+        if (res.code == 200) {
+          // setTimeout(() => {
+            this.setInterCard("inputMaterials", "cardBox1");
+            this.setInterCard('outputMaterials','cardBox3')
+          // }, 5000);
+        }
+      });
+    },
+    // 璁剧疆
+    setUrl() {
+      const { href } = this.$router.resolve({
+        path: "/set",
+      });
+      window.open(href, "_blank");
+    },
+    // 鍙充晶鎺у埗
+    controlClick() {
+      this.$refs.control.islook = true;
+    },
+    // 鍙充晶瀹屾垚
+    finishClick() {
+      finishTask({ id: this.taskData.procedure.id }).then((res) => {
+        if (res.code == 200) {
+          this.$message.success("鎿嶄綔鎴愬姛锛�");
+        }
+      });
+    },
     getRandomNumber(min, max) {
       return Math.floor(Math.random() * (max - min + 1) + min);
     },
@@ -260,17 +591,44 @@
 <style lang="scss">
 .font-arrow-20 {
   font-size: 30px;
-  color: #4efefa;
   font-weight: 700;
+}
+.color_4efefa {
+  color: #4efefa;
+}
+.el-carousel__indicators--vertical{
+  display:none;
+}
+.color_blue {
+  background: #33ccff !important;
+}
+.color_green {
+  background: #00cc66 !important;
+}
+.color_organge {
+  background: #f76c0f !important;
+}
+.color_f70f83 {
+  background: #f70f83 !important;
 }
 .bottom_list {
   position: relative;
-  padding:10px;
-  .bottom-title{
+  padding: 10px;
+  width: 30%;
+  height: 100%;
+  background: #111438;
+  // float:left;
+  .bottom-title {
     font-weight: 600;
-    font-size:16px;
-
-
+    font-size: 16px;
+    height: 30px;
+    line-height: 30px;
+    margin-bottom: 10px;
+    .el-button--primary {
+      color: #fff;
+      float: right;
+      border: 0 !important;
+    }
   }
   .call {
     background: #4efefa;
@@ -301,6 +659,12 @@
     // color: #000;
     font-size: 16px;
   }
+  .card-box {
+    width: 100%;
+    height: calc(100% - 40px);
+    // overflow:auto;
+    // height:300px;
+  }
 }
 
 .small_title {
@@ -309,14 +673,13 @@
 }
 .home {
   width: 100%;
-  height: auto;
-  min-height: 100%;
+  height: 100%;
   color: #fff;
   background: rgba(2, 10, 38, 1);
   overflow: hidden;
   .left {
     width: calc(78% - 60px);
-    height: auto;
+    height: 100%;
     min-height: 100%;
     background: rgba(2, 10, 38, 1);
     float: left;
@@ -327,9 +690,6 @@
       font-weight: 600;
 
       text-align: center;
-    }
-    .color_4efefa {
-      color: #4efefa;
     }
 
     .statelist {
@@ -415,63 +775,75 @@
 
     .bottom {
       width: 100%;
-      height: 500px;
+      height: calc(100% - 470px);
       display: flex;
       flex-wrap: nowrap;
       align-content: center;
       justify-content: space-between;
       align-items: center;
-      margin-top: 6%;
+      margin-top: 20px;
       // position: relative;
 
-      > div {
-        // background: #333333;
-        width: 30%;
-        height: 100%;
-        background: #111438;
-
         .card {
-          width: calc(100% - 20px);
+          width: 100%;
           height: 70px;
           // border: 1px solid #ccc;
-          background:#ffff;
+          background: #ffff;
           border-radius: 5px;
           margin-top: 10px;
           color: #333;
-          .card_top-2{
+          position: relative;
+          .card_top-2,
+          .card_top-3 {
             width: 50%;
-            height:45px;
+            height: 45px;
             border-radius: 5px;
-            background:#fff;
+            background: #fff;
             font-size: 12px;
-            float:left;
-            .card-top-r-t{
-              width:100%;
-              text-align:center;
-              display:inline-block;
-              height:20px;
-              line-height:20px;
-              margin-top:3px;
+            float: left;
+            .card-top-r-t {
+              width: 100%;
+              text-align: center;
+              display: inline-block;
+              height: 20px;
+              line-height: 20px;
+              margin-top: 3px;
             }
-            .card-top-r-b{
-              width:100%;
-              height:20px;
-              line-height:20px;
-               text-align:center;
-              display:inline-block;
-              
+            .card-top-r-b {
+              width: 100%;
+              height: 20px;
+              line-height: 20px;
+              text-align: center;
+              display: inline-block;
             }
           }
-          .card_top {
+          .card_top-3 {
+            background: #f2f2f2;
+            .card-top-r-t {
+              width: 90%;
+
+              margin: 0 auto;
+              margin-bottom: 5px;
+              display: block;
+              text-align: left;
+            }
+            .card-top-r-b {
+              width: 90%;
+              display: block;
+              margin: 0 auto;
+            }
+          }
+
+          .card_top,
+          .card_top-4 {
             width: 50%;
-            height:45px;
+            height: 45px;
             border-radius: 5px;
-            background:#f2f2f2;
+            background: #f2f2f2;
             font-size: 12px;
             line-height: 45px;
-            float:left;
-            
-           
+            float: left;
+
             > div {
               margin-left: 12px;
               position: relative;
@@ -483,6 +855,21 @@
               }
             }
           }
+          .card_top-4 {
+            width: calc(100% - 20px);
+            padding: 0 10px;
+            line-height: 20px;
+          }
+          .card-info-box {
+            position: absolute;
+            background: red;
+            border-radius: 6px;
+            font-size: 12px;
+            color: #fff;
+            padding: 3px 5px;
+            top: 3px;
+            right: 40px;
+          }
           .card_content {
             width: 100%;
             border-radius: 5px;
@@ -491,12 +878,13 @@
             .card_contentLeft {
               width: calc(100% - 10px);
               height: 25px;
-              line-height:25px;
+              line-height: 25px;
               font-size: 12px;
-              padding:0 5px;
-              border-radius:5px 5px 0 0;
-              background:#ffcc33;
+              padding: 0 5px;
+              border-radius: 5px 5px 0 0;
+              background: #ffcc33;
             }
+
             .card_contentRight {
               width: 100%;
               height: 38%;
@@ -504,12 +892,11 @@
             }
           }
         }
-      }
     }
   }
   .right {
     width: calc(20% - 10px);
-    height: auto;
+    height: 100%;
     min-height: 100%;
     background: #233b9e;
     float: left;
@@ -550,71 +937,70 @@
       }
     }
     .right-top-m {
-      width:100%;
-      background:rgba(28,48,133,1);
-      line-height:50px;
+      width: 100%;
+      background: rgba(28, 48, 133, 1);
+      line-height: 50px;
       font-weight: 700;
-      font-size:18px;
-      padding:0 4%;
-      overflow-x:hidden;
-      margin-left:-4%;
+      font-size: 18px;
+      padding: 0 4%;
+      overflow-x: hidden;
+      margin-left: -4%;
       .yuandian {
         width: 25px;
         height: 25px;
-        line-height:40px;
-        margin-top:12.5px;
-        display:inline-block;
+        line-height: 40px;
+        margin-top: 12.5px;
+        display: inline-block;
         background: #15d815;
         display: block;
         border-radius: 50%;
-        float:right;
-        
+        float: right;
       }
     }
-    .right-top-m-btn{
-        margin-top:10px;
-        width:100%;
-        .el-button--primary{
-          width:100%;
-          background:#fff;
-          color:#4765c0;
-          font-weight: 700;
-          font-size:18px;
-        }
+    .right-top-m-btn {
+      margin-top: 10px;
+      width: 100%;
+      .el-button--primary {
+        width: 100%;
+        background: #fff;
+        color: #4765c0;
+        font-weight: 700;
+        font-size: 18px;
       }
+    }
     .right_dutyLst {
       width: calc(100% - 20px);
       height: 270px;
       border-radius: 4px;
-      line-height:30px;
+      line-height: 30px;
       overflow: hidden;
-      background:#00CC66;
-      margin-top:10px;
-      padding:5px 10px;
-      .right-small-title{
-        width:auto;
-        padding:5px;
-        font-size:14px;
-        float:right;
-        border-radius:8px;
-        background:#007101;
+      background: #00cc66;
+      margin-top: 10px;
+      padding: 5px 10px;
+      .right-small-title {
+        width: auto;
+        padding: 5px;
+        font-size: 14px;
+        float: right;
+        border-radius: 8px;
+        background: #007101;
       }
       .right-small-person {
         width: 100%;
         height: 60px;
-        line-height:60px;
-        margin-top:50px;
+        line-height: 60px;
+        margin-top: 50px;
         border-radius: 10px;
-        background:#fff;
-        color:#333;
-        
+        background: #fff;
+        color: #333;
+
         dt {
           float: left;
           padding: 5px;
-          margin-right:10px;
-          .img-class{
-            height:50px;
-            padding:0!important;
+          margin-right: 10px;
+          .img-class {
+            height: 50px;
+            padding: 0 !important;
           }
         }
         span {
@@ -622,37 +1008,47 @@
           padding-top: 10px;
         }
       }
-      .right-small-btn{
-        margin-top:10px;
-        width:100%;
-        .el-button--primary{
-          width:45%;
-          background:#fff;
-          float:right;
-          border-radius:6px;
-          color:#4765c0;
+      .right-small-btn {
+        margin-top: 10px;
+        width: 100%;
+        overflow: hidden;
+        .el-button--primary {
+          width: 46%;
+          background: #fff;
+          float: left;
+          border-radius: 6px;
+          color: #4765c0;
           font-weight: 700;
-          font-size:18px;
-          &:nth-of-type(1){
-            float:left;
+          font-size: 18px;
+        }
+        .button-finish {
+          width: 46%;
+          float: right;
+          .el-button--primary {
+            width: 100%;
           }
         }
       }
     }
     .right_base {
       width: 100%;
-      height: 45%;
+      height: calc(100% - 520px);
+      min-height:200px;
+      // overflow-y:auto;
       position: relative;
-      .right-base-btn{
-        .el-button--primary{
-          width:100%;
-          background:#ff0000;
-          float:right;
-          border-radius:6px;
-          color:#fff;
+      .right-base-btn {
+        width:100%;
+        position:absolute;
+        bottom:0;
+        left:0;
+        .el-button--primary {
+          width: 100%;
+          background: #ff0000;
+          float: right;
+          border-radius: 6px;
+          color: #fff;
           font-weight: 700;
-          font-size:18px;
-          
+          font-size: 18px;
         }
       }
       // .call {

--
Gitblit v1.8.0