Browse Source

修改车载

chenrui  3 years ago
parent
commit
70f309e50a
5 changed files with 3567 additions and 3070 deletions
  1. 144 122
      src/api/request.js
  2. 1180 966
      src/pages/ArmManage/index.vue
  3. 1895 1685
      src/pages/Common/home.vue
  4. 345 295
      src/pages/admin.vue
  5. 3 2
      static/serve.js

+ 144 - 122
src/api/request.js

@@ -1,28 +1,27 @@
-import {Service} from './Service.js'
+import { Service } from './Service.js'
 export function getVehicles(data) {//获取车辆信息
   return Service({
-    url: '/Framework/IDSInfo/VehiclesInfo?page='+data.page+"&perpage="+data.pagie,
+    url: '/Framework/IDSInfo/VehiclesInfo?page=' + data.page + "&perpage=" + data.perpage,
     method: 'get',
-    params: { page: -1 }
   })
 }
 export function getVehicleByIds(id) {//
   return Service({
-    url: '/vehicles/'+id,
-	method: 'get',
+    url: '/vehicles/' + id,
+    method: 'get',
   })
 }
 export function setVehicleFace(data) {//设置车辆皮带
   return Service({
-    url: '/dbvehicle',
+    url: '/Framework/AmrPlc/ControlAmrPlc',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
 export function getVehicleStatus() {//获取车辆皮带
   return Service({
-    url: '/dbvehicle',
+    url: '/Framework/AmrPlc/GetAmrUpperPlcList',
     method: 'get'
   })
 }
@@ -56,57 +55,65 @@ export function ordersTemplate(data) {//通过模板下单
   return Service({
     url: '/orderstemplate',
     method: 'post',
-    data:data
+    data: data
   })
 }
 export function setVehicleStatus(data) {//设置车辆
   return Service({
-    url: '/vehicles',
+    url: '/Framework/VehiclesIDS/CommandVehicels',
     method: 'post',
-    data:data
+    data: data
   })
 }
-export function Getorders(data) {//订单列表templateslist
-  return Service({
-    url: '/Framework/IDSInfo/OrdersInfo?page='+data.page+"&perpage="+data.filter_by_state+'&perpage=5',
-    method: 'get',
-	data:data
-  })
+export function Getorders(data) {//
+  if (data.filter_by_state) {
+    return Service({
+      url: '/Framework/IDSInfo/OrdersInfo?page=' + data.page + "&perpage=" + data.filter_by_state + '&perpage=10',
+      method: 'get',
+      data: data
+    })
+  } else {
+    return Service({
+      url: '/Framework/IDSInfo/OrdersInfo?page=' + data.page + '&perpage=10',
+      method: 'get',
+      data: data
+    })
+  }
 }
 export function GetTemplateslist() {//订单模板
   return Service({
     url: '/templateslist',
     method: 'get',
-	 params: { page: -1 }
+    params: { page: -1 }
   })
 }
 export function getOrdersByIds(order_id) {//获取指定模板信息
   return Service({
-    url: '/orders?order_id='+order_id,
-	method: 'get'
+    url: '/orders?order_id=' + order_id,
+    method: 'get'
   })
 }
 export function SetOrders(data) {//命令控制指定订单
   return Service({
     url: '/orders',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
 export function GetUsers() {//获取用户列表
   return Service({
     url: '/usersmanagement',
-	method: 'get',
-	 params: { page: -1 }
+    method: 'get',
+    params: { page: -1 }
   })
 }
 
 export function GetTemplates() {
   return Service({
     url: '/templates/order',
-	method: 'get',
-	 params: { page: -1 }
+    method: 'get',
+    params: { page: -1 }
   })
 }
 
@@ -116,14 +123,14 @@ export function Homeadduser(data) {//注册用户
   return Service({
     url: '/homeadduser',
     method: 'post',
-    data:data
+    data: data
   })
 }
 export function Home(data) {//登录
   return Service({
     url: '/home',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -131,28 +138,28 @@ export function homedeleteuser(data) {//删除用户
   return Service({
     url: '/homedeleteuser',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
 export function Reboot() {//系统重启
   return Service({
     url: '/reboot',
-    method:'post'
+    method: 'post'
   })
 }
 export function Dborder(data) {//报表统计
   return Service({
     url: '/dborder1',
     method: 'get',
-	 params: data
+    params: data
   })
 }
 export function Dbalarm(data) {//报警Alarm
   return Service({
     url: '/dbalarm',
-	method: 'post',
-  data:data
+    method: 'post',
+    data: data
   })
 }
 export function DbalarmTime(data) {//报警Alarm平均时间
@@ -164,27 +171,27 @@ export function DbalarmTime(data) {//报警Alarm平均时间
 export function getAvragetime() {//
   return Service({
     url: '/averagetime',
-	method: 'get',
+    method: 'get',
   })
 }
 export function Dbcarry() {//获取输送机列表
   return Service({
     url: '/dbcarry',
-	method: 'get'
+    method: 'get'
   })
 }
 
 export function Deblock() {//解锁路径
   return Service({
     url: '/deblock',
-	method: 'get'
+    method: 'get'
   })
 }
 
 export function Dbbpc() {//解锁路径
   return Service({
     url: '/dbbpc',
-	method: 'get'
+    method: 'get'
   })
 }
 
@@ -192,7 +199,7 @@ export function Changestat(data) {//开包任务
   return Service({
     url: '/Framework/Mission/MissionSwitch',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -200,7 +207,7 @@ export function Changestat2(data) {//备用任务
   return Service({
     url: '/Framework/LimitCar/OnlineLimt',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -208,7 +215,7 @@ export function keepCarOnline(data) {//保持小车在线
   return Service({
     url: '/limcar',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -216,7 +223,7 @@ export function Changestat3(data) {//同时任务
   return Service({
     url: '/changestat',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -224,101 +231,101 @@ export function setDbcarry(data) {//设置输送机状态
   return Service({
     url: '/dbcarry',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
 export function networkConfiguration(data) {//网络配置
-    return Service({
-      url: '/Framework/AmrPlc/GetAllList?PageIndex='+data.page+"&PageSize="+data.PageSize,
-      method: 'get',
-      data:data
-    })
-  }
-  export function networkConfigurationadd(data) {//新增网络配置
-    return Service({
-      url: '/Framework/AmrPlc/AddAmrPlc',
-      method: 'post',
-      data:data
-    })
-  } 
-  export function networkConfigurationmod(data) {//修改网络配置
-    return Service({
-      url: '/Framework/AmrPlc/UpdateAmrPlc',
-      method: 'post',
-      data:data
-    })
-  } 
-  export function networkConfigurationele(data) {//网络配置删除
-    return Service({
-      url: '/Framework/AmrPlc/DeletAmrPlc',
-      method: 'post',
-      data:data
-    })
-  } 
+  return Service({
+    url: '/Framework/AmrPlc/GetAllList?PageIndex=' + data.page + "&PageSize=" + data.PageSize,
+    method: 'get',
+    data: data
+  })
+}
+export function networkConfigurationadd(data) {//新增网络配置
+  return Service({
+    url: '/Framework/AmrPlc/AddAmrPlc',
+    method: 'post',
+    data: data
+  })
+}
+export function networkConfigurationmod(data) {//修改网络配置
+  return Service({
+    url: '/Framework/AmrPlc/UpdateAmrPlc',
+    method: 'post',
+    data: data
+  })
+}
+export function networkConfigurationele(data) {//网络配置删除
+  return Service({
+    url: '/Framework/AmrPlc/DeletAmrPlc',
+    method: 'post',
+    data: data
+  })
+}
 export function orderConfiguration(data) {//订单配置
-    return Service({
-      url: '/Framework/OrderConfig/GetAllList?PageIndex='+data.page+"&PageSize="+data.PageSize,
-      method: 'get',
-      data:data
-    })
-  }
-  export function orderConfigurationadd(data) {//新增订单配置
-    return Service({
-      url: '/Framework/OrderConfig/AddOrderConfig',
-      method: 'post',
-      data:data
-    })
-  }
-  export function orderConfigurationmod(data) {//修改订单配置
-    return Service({
-      url: '/Framework/OrderConfig/UpdateOrderConfig',
-      method: 'post',
-      data:data
-    })
-  }
+  return Service({
+    url: '/Framework/OrderConfig/GetAllList?PageIndex=' + data.page + "&PageSize=" + data.PageSize,
+    method: 'get',
+    data: data
+  })
+}
+export function orderConfigurationadd(data) {//新增订单配置
+  return Service({
+    url: '/Framework/OrderConfig/AddOrderConfig',
+    method: 'post',
+    data: data
+  })
+}
+export function orderConfigurationmod(data) {//修改订单配置
+  return Service({
+    url: '/Framework/OrderConfig/UpdateOrderConfig',
+    method: 'post',
+    data: data
+  })
+}
 export function orderConfigurationele(data) {//订单配置删除
   return Service({
     url: '/Framework/OrderConfig/DeletOrderConfig',
     method: 'post',
-    data:data
+    data: data
   })
 }
 export function labelConfiguration(data) {//标签配置
-    return Service({
-      url: '/Framework/TagPlc/GetAllList?PageIndex='+data.page+"&PageSize="+data.PageSize,
-      method: 'get',
-      data:data
-    })
-  }
+  return Service({
+    url: '/Framework/TagPlc/GetAllList?PageIndex=' + data.page + "&PageSize=" + data.PageSize,
+    method: 'get',
+    data: data
+  })
+}
 
-  export function labelConfigurationadd(data) {//新增标签配置
-    return Service({
-      url: '/Framework/TagPlc/AddTagPlc',
-      method: 'post',
-      data:data
-    })
-  }
-  
-  export function labelConfigurationmod(data) {//修改标签配置
-    return Service({
-      url: '/Framework/TagPlc/UpdateTagPlc',
-      method: 'post',
-      data:data
-    })
-  }
-  export function labelConfigele(data) {//标签配置删除
-    return Service({
-      url: '/Framework/TagPlc/DeleteTagPlc',
-      method: 'post',
-      data:data
-    })
-  } 
+export function labelConfigurationadd(data) {//新增标签配置
+  return Service({
+    url: '/Framework/TagPlc/AddTagPlc',
+    method: 'post',
+    data: data
+  })
+}
+
+export function labelConfigurationmod(data) {//修改标签配置
+  return Service({
+    url: '/Framework/TagPlc/UpdateTagPlc',
+    method: 'post',
+    data: data
+  })
+}
+export function labelConfigele(data) {//标签配置删除
+  return Service({
+    url: '/Framework/TagPlc/DeleteTagPlc',
+    method: 'post',
+    data: data
+  })
+}
 export function alarmConfiguration(data) {//告警配置
   return Service({
-    url: '/Framework/AlarmPlc/GetAllList?PageIndex='+data.page+"&PageSize="+data.PageSize,
+    url: '/Framework/AlarmPlc/GetAllList?PageIndex=' + data.page + "&PageSize=" + data.PageSize,
     method: 'get',
-    data:data
+    data: data
   })
 }
 
@@ -326,7 +333,7 @@ export function alarmConfigurationadd(data) {//新增告警配置
   return Service({
     url: '/Framework/AlarmPlc/AddAlarmPlc',
     method: 'post',
-    data:data
+    data: data
   })
 }
 
@@ -334,14 +341,29 @@ export function alarmConfigurationmod(data) {//修改告警配置
   return Service({
     url: '/Framework/AlarmPlc/UpdateAmrPlc',
     method: 'post',
-    data:data
+    data: data
   })
 }
 export function alarmConfigurationele(data) {//告警配置删除
   return Service({
     url: '/Framework/AlarmPlc/DeletAmrPlc',
     method: 'post',
-    data:data
+    data: data
+  })
+}
+
+export function mapIp() {//地图url
+  return Service({
+    url: '/Framework/MapAddr/SonPatch',
+    method: 'get',
+  })
+}
+
+export function carUPlist(data) {//车辆接口
+  return Service({
+    url: '/Framework/AmrPlc/GetAllList?PageIndex=1&PageSize=999',
+    method: 'get',
+    data: data
   })
 }
 // export function getAllAndroidPlugins() {

+ 1180 - 966
src/pages/ArmManage/index.vue

@@ -1,138 +1,287 @@
 <template>
-	<div class="ARM_body EditCMBox">
-		<div class="outBox" v-if="isAdmin!=true"></div>
-		<div class="Batch">
-			<div class="title">
-				<div class="left_text">批量控制</div>
-				<img src="../../assets/img/title_style2.png" class="left_img" alt="" />
-			</div>
-			<div class="node">
-				<el-button class="custom_btn Colorbutton_blue" style="margin-right: 30px;" v-for="(item,index) in node" :key="item.value"
-				 @click="btnClick(item)">{{item.label}}</el-button>
-			</div>
-		</div>
-		<div class="ARM_content">
-			<el-scrollbar style="width:100%;height:100%">
-                <div class="item_body" v-for="(item, index) in datalist" :key="index">
-					<div class="item_left">
-						<div class="left_text">{{ item.nickname }}</div>
-						<img src="../../assets/img/title_style2.png" class="left_img" alt="" />
-						<img src="../../assets/img/blue.png" v-if="item.load_state==0&&item.ifOnline==1&& item.move_state=='MT_NA'&& item.emergency_state=='OK'||item.move_state=='MT_FINISHED'&&item.load_state==0"
-						class="left_center_img" alt="" />
-						<img src="../../assets/img/blue2.png" v-if="item.load_state>0&&item.ifOnline==1&& item.move_state=='MT_NA'&& item.emergency_state=='OK'||item.move_state=='MT_FINISHED'&&item.load_state>0"
-						class="left_center_img" alt="" /> 
-						
-						<img src="../../assets/img/green.png" v-if="item.load_state==0&&item.ifOnline==1&& item.move_state=='MT_RUNNING'&& item.emergency_state=='OK'"
-						class="left_center_img" alt="" />
-						<img src="../../assets/img/green2.png" v-if="item.load_state>0&&item.ifOnline==1&& item.move_state=='MT_RUNNING'&& item.emergency_state=='OK'"
-						class="left_center_img" alt="" />
-						
-						<img src="../../assets/img/yellow.png" v-if="item.load_state==0&&item.ifOnline==1&&item.move_state=='MT_PAUSED_OBSTACLE'||item.move_state=='MT_PAUSED'&&item.load_state==0&&item.ifOnline==1||item.move_state=='MT_WAIT_FOR_CHECKPOINT'&&item.load_state==0&&item.ifOnline==1"
-						class="left_center_img" alt="" />
-						<img src="../../assets/img/yellow2.png" v-if="item.load_state>0&&item.ifOnline==1&&item.move_state=='MT_PAUSED_OBSTACLE'||item.move_state=='MT_PAUSED'&&item.load_state>0&&item.ifOnline==1||item.move_state=='MT_WAIT_FOR_CHECKPOINT'&&item.load_state>0&&item.ifOnline==1"
-						class="left_center_img" alt="" />
-						
-						<img src="../../assets/img/red.png" v-if="item.load_state==0&&item.ifOnline==1&& item.emergency_state!='OK'"
-						class="left_center_img" alt="" />
-						<img src="../../assets/img/red2.png" v-if="item.load_state>0&&item.ifOnline==1&& item.emergency_state!='OK'"
-						class="left_center_img" alt="" />
-						
-						<img src="../../assets/img/grey.png" v-if="item.ifOnline==0" class="left_center_img" alt="" />
-						<div style="height: 146px;float: right;display: flex;flex-direction: column;align-items: center;justify-content: space-around;">
-							
-							<div v-for="(itemF, index) in VehicleFaceData" :key="itemF.id" v-if="item.nickname==itemF.car_name" :class="itemF.tag_val == 0 ? 'plcDiv' : 'plcDiv2'"></div>
-						</div>
-					</div>
-					<div class="item_right">
-						<div class="right_item_body">
-							<div class="item_upper" :class="">
-								<div class="upper_title">
-									手动任务
-								</div>
-							</div>
-							
-							<div class="item_lower">
-								<el-select v-model="item.taskId" placeholder="请选择" clearable @clear=""
-								@change="setTasks">
-									<el-option v-for="items in options" :key="items.template_name" :label="items.template_name" :value="items.template_name" v-if="items.appoint_vehicle_id==item.id">
-									</el-option>
-								</el-select>
-							</div>
-						</div>
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="carStop(item,index)" v-if="item.move_state == 'MT_RUNNING'||item.move_state == 'MT_WAIT_FOR_CHECKPOINT'||item.move_state == 'MT_PAUSED_OBSTACLE'||item.move_state == 'MT_WAIT_FOR_ACK'">
-								<div class="upper_title">
-									暂停
-								</div>
-							</div>
-							<div class="item_upper" :class="" @click="carGoOn(item,index)" v-if="item.move_state == 'MT_PAUSED'">
-								<div class="upper_title">
-									继续
-								</div>
-							</div>
-						</div>
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class=""  @click="overTask(item,index)" v-if="item.move_state != 'MT_NA'&&item.move_state != 'MT_IN_CANCEL'">
-								<div class="upper_title">
-									取消任务
-								</div>
-							</div>
-						</div>
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="shutDown(item,index)" v-if="item.emergency_state == 'OK'">
-								<div class="upper_title">
-									急停
-								</div>
-							</div>
-							<div class="item_upper" :class="" @click="UNshutDown(item,index)" v-if="item.emergency_state != 'OK'">
-								<div class="upper_title">
-									取消急停
-								</div>
-							</div>
-						</div>
-						
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class="{'right_item_active':item.isLeft==1}" @click="cartTurnLeft(item,index)">
-								<div class="upper_title">
-									移载左转
-								</div>
-							</div>
-						</div>
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class="{'right_item_active':item.isRight==1}" @click="cartTurnRight(item,index)">
-								<div class="upper_title">
-									移载右转
-								</div>
-							</div>
-						</div>
-						
-						<div class="right_item_body">
+  <div class="ARM_body EditCMBox">
+    <div class="outBox" v-if="isAdmin != true"></div>
+    <div class="Batch">
+      <div class="title">
+        <div class="left_text">批量控制</div>
+        <img src="../../assets/img/title_style2.png" class="left_img" alt="" />
+      </div>
+      <div class="node">
+        <el-button
+          class="custom_btn Colorbutton_blue"
+          style="margin-right: 30px"
+          v-for="(item, index) in node"
+          :key="item.value"
+          @click="btnClick(item)"
+          >{{ item.label }}</el-button
+        >
+      </div>
+    </div>
+    <div class="ARM_content">
+      <el-scrollbar style="width: 100%; height: 100%">
+        <div class="item_body" v-for="(item, index) in datalist" :key="index">
+          <div class="item_left">
+            <div class="left_text">{{ item.nickname }}</div>
+            <img
+              src="../../assets/img/title_style2.png"
+              class="left_img"
+              alt=""
+            />
+            <img
+              src="../../assets/img/blue.png"
+              v-if="
+                (item.load_state == 0 &&
+                  item.ifOnline == 1 &&
+                  item.move_state == 'MT_NA' &&
+                  item.emergency_state == 'OK') ||
+                (item.move_state == 'MT_FINISHED' && item.load_state == 0)
+              "
+              class="left_center_img"
+              alt=""
+            />
+            <img
+              src="../../assets/img/blue2.png"
+              v-if="
+                (item.load_state > 0 &&
+                  item.ifOnline == 1 &&
+                  item.move_state == 'MT_NA' &&
+                  item.emergency_state == 'OK') ||
+                (item.move_state == 'MT_FINISHED' && item.load_state > 0)
+              "
+              class="left_center_img"
+              alt=""
+            />
+
+            <img
+              src="../../assets/img/green.png"
+              v-if="
+                item.load_state == 0 &&
+                item.ifOnline == 1 &&
+                item.move_state == 'MT_RUNNING' &&
+                item.emergency_state == 'OK'
+              "
+              class="left_center_img"
+              alt=""
+            />
+            <img
+              src="../../assets/img/green2.png"
+              v-if="
+                item.load_state > 0 &&
+                item.ifOnline == 1 &&
+                item.move_state == 'MT_RUNNING' &&
+                item.emergency_state == 'OK'
+              "
+              class="left_center_img"
+              alt=""
+            />
+
+            <img
+              src="../../assets/img/yellow.png"
+              v-if="
+                (item.load_state == 0 &&
+                  item.ifOnline == 1 &&
+                  item.move_state == 'MT_PAUSED_OBSTACLE') ||
+                (item.move_state == 'MT_PAUSED' &&
+                  item.load_state == 0 &&
+                  item.ifOnline == 1) ||
+                (item.move_state == 'MT_WAIT_FOR_CHECKPOINT' &&
+                  item.load_state == 0 &&
+                  item.ifOnline == 1)
+              "
+              class="left_center_img"
+              alt=""
+            />
+            <img
+              src="../../assets/img/yellow2.png"
+              v-if="
+                (item.load_state > 0 &&
+                  item.ifOnline == 1 &&
+                  item.move_state == 'MT_PAUSED_OBSTACLE') ||
+                (item.move_state == 'MT_PAUSED' &&
+                  item.load_state > 0 &&
+                  item.ifOnline == 1) ||
+                (item.move_state == 'MT_WAIT_FOR_CHECKPOINT' &&
+                  item.load_state > 0 &&
+                  item.ifOnline == 1)
+              "
+              class="left_center_img"
+              alt=""
+            />
+
+            <img
+              src="../../assets/img/red.png"
+              v-if="
+                item.load_state == 0 &&
+                item.ifOnline == 1 &&
+                item.emergency_state != 'OK'
+              "
+              class="left_center_img"
+              alt=""
+            />
+            <img
+              src="../../assets/img/red2.png"
+              v-if="
+                item.load_state > 0 &&
+                item.ifOnline == 1 &&
+                item.emergency_state != 'OK'
+              "
+              class="left_center_img"
+              alt=""
+            />
+
+            <img
+              src="../../assets/img/grey.png"
+              v-if="item.ifOnline == 0"
+              class="left_center_img"
+              alt=""
+            />
+            <div
+              style="
+                height: 146px;
+                float: right;
+                display: flex;
+                flex-direction: column;
+                align-items: center;
+                justify-content: space-around;
+              "
+            >
+              <div
+                v-for="(itemF, index) in VehicleFaceData"
+                :key="itemF.id"
+                v-if="item.nickname == itemF.car_name"
+                :class="itemF.tag_val == 0 ? 'plcDiv' : 'plcDiv2'"
+              ></div>
+            </div>
+          </div>
+          <div class="item_right">
+            <div class="right_item_body">
+              <div class="item_upper" :class="">
+                <div class="upper_title">手动任务</div>
+              </div>
+
+              <div class="item_lower">
+                <el-select
+                  v-model="item.taskId"
+                  placeholder="请选择"
+                  clearable
+                  @clear=""
+                  @change="setTasks"
+                >
+                  <el-option
+                    v-for="items in options"
+                    :key="items.template_name"
+                    :label="items.template_name"
+                    :value="items.template_name"
+                    v-if="items.appoint_vehicle_id == item.id"
+                  >
+                  </el-option>
+                </el-select>
+              </div>
+            </div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="carStop(item, index)"
+                v-if="
+                  item.move_state == 'MT_RUNNING' ||
+                  item.move_state == 'MT_WAIT_FOR_CHECKPOINT' ||
+                  item.move_state == 'MT_PAUSED_OBSTACLE' ||
+                  item.move_state == 'MT_WAIT_FOR_ACK'
+                "
+              >
+                <div class="upper_title">暂停任务</div>
+              </div>
+              <div
+                class="item_upper"
+                :class=""
+                @click="carGoOn(item, index)"
+                v-if="item.move_state == 'MT_PAUSED'"
+              >
+                <div class="upper_title">继续任务</div>
+              </div>
+            </div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="overTask(item, index)"
+                v-if="
+                  item.move_state != 'MT_NA' &&
+                  item.move_state != 'MT_IN_CANCEL'
+                "
+              >
+                <div class="upper_title">取消任务</div>
+              </div>
+            </div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="shutDown(item, index)"
+                v-if="item.emergency_state == 'OK'"
+              >
+                <div class="upper_title">紧急停止</div>
+              </div>
+              <div
+                class="item_upper"
+                :class=""
+                @click="UNshutDown(item, index)"
+                v-if="item.emergency_state != 'OK'"
+              >
+                <div class="upper_title">取消急停</div>
+              </div>
+            </div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class="{ right_item_active: item.isLeft == 1 }"
+                @click="cartTurnLeft(item, index)"
+              >
+                <div class="upper_title">移载左转</div>
+              </div>
+            </div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class="{ right_item_active: item.isRight == 1 }"
+                @click="cartTurnRight(item, index)"
+              >
+                <div class="upper_title">移载右转</div>
+              </div>
+            </div>
+
+            <!-- <div class="right_item_body">
 							<div class="item_upper" :class="" @click="carTurnStop(item,index)">
 								<div class="upper_title">
 									移载停止
 								</div>
 							</div>
-						</div>
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="carTurnStop(item,index)">
-								<div class="upper_title">
-									移载初始化
-								</div>
-							</div>
-						</div>
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="carTurnStop(item,index)">
-								<div class="upper_title">
-									车辆重启
-								</div>
-							</div>
-						</div>
-						<!-- <div class="right_item_body">
+						</div> -->
+            <!-- <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="carTurnStop(item, index)"
+              >
+                <div class="upper_title">移载初始化</div>
+              </div>
+            </div> -->
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="carTurnStop(item, index)"
+              >
+                <div class="upper_title">车辆重启</div>
+              </div>
+            </div>
+            <!-- <div class="right_item_body">
 							<div class="item_upper" :class="" @click="">
 								<div class="upper_title">
 									站点定位
@@ -147,847 +296,912 @@
 								</el-select>
 							</div>
 						</div> -->
-						
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="toBatteryCharging(item,index)" v-if="item.sys_state!='CHARGING'">
-								<div class="upper_title">
-									开始充电
-								</div>
-							</div>
-							<div class="item_upper" :class="" @click="stopBatteryCharging(item,index)" v-if="item.sys_state=='CHARGING'">
-								<div class="upper_title">
-									停止充电
-								</div>
-							</div>
-						</div>
-						<div class="right_item_body">
-							<div class="item_upper" :class="" @click="carOpen(item,index)" v-if="item.control_mode == '1'">
-								<div class="upper_title">
-									手柄模式
-								</div>
-							</div>
-							
-							<div class="item_upper" :class="" @click="carClose(item,index)" v-if="item.control_mode == '0'">
-								<div class="upper_title">
-									自动模式
-								</div>
-							</div>
-						</div>
-					</div>
-				</div>
-			</el-scrollbar>
-		</div>
-	</div>
+
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="toBatteryCharging(item, index)"
+                v-if="item.sys_state != 'CHARGING'"
+              >
+                <div class="upper_title">开始充电</div>
+              </div>
+              <div
+                class="item_upper"
+                :class=""
+                @click="stopBatteryCharging(item, index)"
+                v-if="item.sys_state == 'CHARGING'"
+              >
+                <div class="upper_title">停止充电</div>
+              </div>
+            </div>
+            <div class="right_item_body">
+              <div
+                class="item_upper"
+                :class=""
+                @click="carOpen(item, index)"
+                v-if="item.control_mode == '1'"
+              >
+                <div class="upper_title">手柄模式</div>
+              </div>
+
+              <div
+                class="item_upper"
+                :class=""
+                @click="carClose(item, index)"
+                v-if="item.control_mode == '0'"
+              >
+                <div class="upper_title">自动模式</div>
+              </div>
+            </div>
+          </div>
+        </div>
+      </el-scrollbar>
+    </div>
+  </div>
 </template>
 
 <script>
-	import {
-		setVehicleStatus,
-		getVehicles,
-		setVehicleFace,
-		ordersTemplate,
-		getVehicleFace,
-		getLocalisation,
-		GetTemplateslist,
-		getVehicleStatus
-	} from '../../api/request.js'
-	export default {
-		data() {
-			return {
-				// itemindex: 0,
-				isAdmin:false,
-				value2:0,
-				LocalisationData:null,
-				sj:null,
-				command_type: '',
-				vehicle_id: '',
-				httpstatus: '',
-				ifOnline: true,
-				VehicleFaceData:[],
-				node: [{
-						value: 1,
-						label: '全部上线'
-					},
-					{
-						value: 2,
-						label: '全部下线'
-					},
-					{
-						value: 3,
-						label: '全部暂停'
-					},
-					{
-						value: 4,
-						label: '全部继续'
-					},
-					{
-						value: 5,
-						label: '全部急停'
-					},
-					{
-						value: 6,
-						label: '取消急停'
-					}
-				],
-				options: [
-					{
-						modeName: 'P1-Car1',
-						btnName: '开包任务',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'P1-Car2',
-						btnName: '开包任务',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'P1-Car3',
-						btnName: '开包任务',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'P1-Car4',
-						btnName: '开包任务',
-						carName: 'AMR04'
-					},
-					{
-						modeName: 'P2-Car1',
-						btnName: '备用任务',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'P2-Car2',
-						btnName: '备用任务',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'P2-Car3',
-						btnName: '备用任务',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'P2-Car4',
-						btnName: '备用任务',
-						carName: 'AMR04'
-					},
-					{
-						modeName: '充电桩1充电-Car1',
-						btnName: '充电桩1充电',
-						carName: 'AMR01'
-					},
-					{
-						modeName: '充电桩1充电-Car2',
-						btnName: '充电桩1充电',
-						carName: 'AMR02'
-					},
-					{
-						modeName: '充电桩1充电-Car3',
-						btnName: '充电桩1充电',
-						carName: 'AMR03'
-					},
-					{
-						modeName: '充电桩1充电-Car4',
-						btnName: '充电桩1充电',
-						carName: 'AMR04'
-					},
-					{
-						modeName: '充电桩2充电-Car1',
-						btnName: '充电桩2充电',
-						carName: 'AMR01'
-					},
-					{
-						modeName: '充电桩2充电-Car2',
-						btnName: '充电桩2充电',
-						carName: 'AMR02'
-					},
-					{
-						modeName: '充电桩2充电-Car3',
-						btnName: '充电桩2充电',
-						carName: 'AMR03'
-					},
-					{
-						modeName: '充电桩2充电-Car4',
-						btnName: '充电桩2充电',
-						carName: 'AMR04'
-					},
-					{
-						modeName: 'Lock_Car1',
-						btnName: '前往站点1',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'Lock_Car2',
-						btnName: '前往站点1',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'Lock_Car3',
-						btnName: '前往站点1',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'Lock_Car4',
-						btnName: '前往站点1',
-						carName: 'AMR04'
-					}
-				],
-				value: '',
-				datalist: [{
-						id: 1,
-						nickname: 'AMDDDD1',
-						itemindex: 0,
-						ifOnline: 1
-					},
-					{
-						id: 2,
-						nickname: 'AMDDDD2',
-						itemindex: 0,
-						ifOnline: 0
-					},
-					{
-						id: 3,
-						nickname: 'AMDDDD3',
-						itemindex: 0,
-						ifOnline: 1
-					},
-					{
-						id: 4,
-						nickname: 'AMDDDD4',
-						itemindex: 0,
-						ifOnline: 0
-					}
-				],
-				oldData:[],
-				VehicleStatusData:[]
-			}
-		},
-		created(){
-			this.getData();
-			this.getVehicleFaceData();
-			this.getLocalisationData();
-			this.gettempalteMode();
-		},
-		mounted() {
-			clearInterval(this.sj)
-			let that = this;
-			this.sj = setInterval(function(){
-				that.getData();
-				that.getVehicleFaceData();
-				that.getVehicleStatusData();
-			},3000)
-			let user = JSON.parse(sessionStorage.getItem("userData")).userName;
-			if(user=="admin"){
-				this.isAdmin=true;
-			}
-		},
-		beforeRouteLeave(to, from, next){
-			next();
-			if (this.sj) {
-			  clearInterval(this.sj)
-			  this.sj = null;
-			}
-		},
-		methods: {
-			getVehicleStatusData(){
-				getVehicleStatus().then(res => {
-					this.VehicleStatusData = res.VehicleBeltInfo;
-				})
-			},
-			gettempalteMode() {
-				GetTemplateslist().then(res => {
-					this.options = res.templates
-				})
-			},
-			getData() {
-				getVehicles().then(res => {
-					console.log(res.vehicles)
-					if(this.oldData == res.vehicles){
-						return;
-					}
-					else {
-						this.oldData = res.vehicles;
-						this.datalist = [];
-						for (let index in res.vehicles) {
-							let item = {
-								id: '',
-								nickname: '',
-								itemindex: 0,
-								ifOnline: 0,
-								ifCharge: 1,
-								move_state:"",
-								emergency_state:"",
-								load_state:"",
-								battery_state:"",
-							}
-							item['nickname'] = res.vehicles[index].nickname;
-							item.move_state = res.vehicles[index].move_state;
-							item.emergency_state = res.vehicles[index].emergency_state;
-							item.sys_state = res.vehicles[index].sys_state;
-							item.load_state = res.vehicles[index].load_state;
-							item['id'] = res.vehicles[index].id;
-							item['ifOnline'] = res.vehicles[index].is_online;
-							item['taskId'] = "";
-							item['siteId'] = "";
-							// item['siteId'] = "";
-							for(let index in this.VehicleStatusData){
-								let str = this.VehicleStatusData[index].tag_name;
-								if(str.indexOf('_L')>0){
-									if(item.nickname==this.VehicleStatusData[index].car_name){
-										item['isLeft']=this.VehicleStatusData[index].tag_val;
-									}
-								}
-								if(str.indexOf('_R')>0){
-									if(item.nickname==this.VehicleStatusData[index].car_name){
-										item['isRight']=this.VehicleStatusData[index].tag_val;
-									}
-								}
-							}
-							this.datalist.push(item)
-						}
-					console.log(this.datalist)
-					}
-				})
-			},
-			setCarStatus(data) {
-				setVehicleStatus(data).then(res => {
-					console.log(res)
-					this.httpstatus = res
-					if (res) { //返回200
-						this.getData()
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '操作成功!'
-						});
-					} else {
-						this.$message({
-							type: 'info',
-							duration: 800,
-							message: '操作失败'
-						});
-					}
-				})
-			},
-			setCarFaces(data) {
-				setVehicleFace(data).then(res => {
-					this.httpstatus = res
-					if (res) { //返回200
-						this.getData()
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '操作成功!'
-						});
-					} else {
-						this.$message({
-							type: 'info',
-							duration: 800,
-							message: '操作失败'
-						});
-					}
-				})
-			},
-			setTasks(e){
-				if(e==""){
-					return
-				}
-				this.$confirm('将添加'+e+'为新的任务订单?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let data = {
-						template_name: e
-					}
-					ordersTemplate(data).then(res => {
-						console.log(res)
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '下单成功!'
-						});
-					})
-				}).catch(() => {
-					this.$message({
-						type: 'info',
-						duration: 800,
-						message: '已取消操作'
-					});
-				});
-			},
-			carStop(item, index) { //暂停当前运行的车辆
-				let data = {
-					command_type: 'CMD_VEHICLE_PAUSE',
-					vehicle_id: item.id
-				}
-				this.setCarStatus(data);
-			},
-			carGoOn(item, index) { //继续当前运行的车辆
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_CONTINUE',
-					vehicle_id: item.id
-				}
-				this.setCarStatus(data);
-			},
-			overTask(item, index) { //取消车辆当前执行的任务
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_CANCEL_TASK',
-					vehicle_id: item.id
-				}
-				this.$confirm("是否取消任务?", '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					this.setCarStatus(data);
-					
-				}).catch(() => {});
-			},
-			shutDown(item, index){//小车急停
-				let data = {
-					command_type: 'CMD_VEHICLE_TRIGGER_EMERGENCY',
-					vehicle_id: item.id
-				}
-				this.setCarStatus(data);
-				
-			},
-			UNshutDown(item, index){//取消小车急停
-				let data = {
-					command_type: 'CMD_VEHICLE_CANCEL_EMERGENCY',
-					vehicle_id: item.id
-				}
-				this.setCarStatus(data);
-				
-			},
-			carOver(item, index) { //结束当前运行的车辆
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_PAUSE',
-					vehicle_id: item.id
-				}
-				this.setCarStatus(data);
-				
-			},
-			carOpen(item, index) { //打开手柄模式
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_MANUAL_CONTROL',
-					vehicle_id: item.id
-				}
-				this.$confirm('是否打开手柄模式, 是否继续?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					this.setCarStatus(data);
-					
-				}).catch(() => {
-					this.$message({
-						type: 'info',
-						duration: 800,
-						message: '已取消操作'
-					});
-				});
-			},
-			carClose(item, index) { //关闭手柄模式
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_CANCEL_TASK',
-					vehicle_id: item.id
-				}
-				this.$confirm('是否关闭手柄模式, 是否继续?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					 this.setCarStatus(data);
-					
-				}).catch(() => {
-					this.$message({
-						type: 'info',
-						duration: 800,
-						message: '已取消操作'
-					});
-				});
-			},
-
-			cartTurnLeft(item, index) { //移载车辆——左转
-				let that = this;
-				let num = item.nickname.substring(4);
-				this.carTurnStop(item, index,function(datas){
-					let data = {
-						ctg_name: 'Belt_Car' + num + '_L',
-						ctg_val: 1
-					}
-					setTimeout(function() {
-						that.setCarFaces(data)
-					}, 1000);
-				});
-				
-			},
-			cartTurnRight(item, index) { //移载车辆——右转
-				console.log(item)		
-				let that = this;
-				let num = item.nickname.substring(4);
-				this.carTurnStop(item, index,function(datas){
-					let data = {
-						ctg_name: 'Belt_Car' + num + '_R',
-						ctg_val: 1
-					}
-					setTimeout(function() {
-						that.setCarFaces(data)
-						
-					}, 1000);
-				});
-			},
-			carTurnStop(item, index,callback) { //移载车辆——暂停
-				console.log(item)
-				let num = item.nickname.substring(4);
-				let dataL = {
-					ctg_name: 'Belt_Car' + num + '_L',
-					ctg_val: 0
-				}
-				let dataR = {
-					ctg_name: 'Belt_Car' + num + '_R',
-					ctg_val: 0
-				}
-				this.setCarFaces(dataL)
-				this.setCarFaces(dataR)
-				callback(true);
-			},
-			carTurnContinue(item, index) { //移载车辆——继续carCharge
-				console.log(item)
-				let data = {
-					command_type: 'CMD_VEHICLE_PAUSE',
-					vehicle_id: item.id
-				}
-				this.setCarFaces(data);
-			},
-			btnClick(item) {//顶部按钮点击触发
-				let str = "";
-				let data = {};
-				if (item.value == 1) {
-					str = "是否全部上线?";
-					data = {
-						command_type: 'CMD_VEHICLE_ONLINE_ALL'
-					}
-				} else if (item.value == 2) {
-					str = "是否全部下线?";
-					data = {
-						command_type: 'CMD_VEHICLE_OFFLINE_ALL'
-					}
-				} else if (item.value == 3) {
-					str = "是否全部暂停?";
-					data = {
-						command_type: 'CMD_VEHICLE_PAUSE_ALL'
-					}
-				} else if (item.value == 4) {
-					str = "是否全部继续任务?";
-					data = {
-						command_type: 'CMD_VEHICLE_CONTINUE_ALL'
-					}
-				} else if (item.value == 5) {
-					str = "是否全部急停?";
-					data = {
-						command_type: 'CMD_VEHICLE_TRIGGER_EMERGENCY_ALL'
-					}
-				} else if (item.value == 6) {
-					str = "是否全部取消急停?";
-					data = {
-						command_type: 'CMD_VEHICLE_CANCEL_EMERGENCY_ALL'
-					}
-				}
-
-				this.$confirm(str, '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					this.setCarStatus(data);
-					
-				}).catch(() => {});
-			},
-			getVehicleFaceData(){	//获取小车PLC信号
-				getVehicleFace().then(res => {
-					 // alert(JSON.stringify(res))
-					 this.VehicleFaceData = res.VehicleBpcInfo;
-				})
-			},
-			getLocalisationData(){
-				getLocalisation().then(res => {
-					this.LocalisationData = res.Localisation;
-				})
-			},
-			sitePosition(item){			//站点定位
-				this.$confirm("是否定位为"+item.siteId.station+"站点", '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let json = {
-						command_type:"CMD_VEHICLE_STATION_LOCATE",
-						vehicle_id:item.id,
-						param1:item.siteId.id
-					}
-					this.setCarStatus(json);
-				}).catch(() => {});
-			},
-			toBatteryCharging(item,index){
-				let that = this;
-				this.$confirm("请确认"+item.nickname+"在正确的充电位置,开始充电?", '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let num = item.nickname.substring(3);
-					let data = {
-						ctg_name: 'StartCharge_Car'+num,
-						ctg_val: 1
-					}
-					this.setCarFaces(data)
-					setTimeout(function() {
-						let data1 = {
-							ctg_name: 'StartCharge_Car'+num,
-							ctg_val: 0
-						}
-						that.setCarFaces(data1)
-					}, 1000);
-				}).catch(() => {});
-			},
-			stopBatteryCharging(item,index){
-				let that = this;
-				this.$confirm(item.nickname+"是否停止充电?", '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let num = item.nickname.substring(3);
-					let data = {
-						ctg_name: 'EndCharge_Car'+num,
-						ctg_val: 1
-					}
-					this.setCarFaces(data)
-					setTimeout(function() {
-						let data1 = {
-							ctg_name: 'EndCharge_Car'+num,
-							ctg_val: 0
-						}
-						that.setCarFaces(data1)
-					}, 1000);
-				}).catch(() => {});
-			}
-		},
-	}
+import {
+  setVehicleStatus,
+  getVehicles,
+  setVehicleFace,
+  ordersTemplate,
+  getVehicleFace,
+  getLocalisation,
+  GetTemplateslist,
+  getVehicleStatus,
+  carUPlist,
+} from "../../api/request.js";
+export default {
+  data() {
+    return {
+      // itemindex: 0,
+      isAdmin: false,
+      value2: 0,
+      LocalisationData: null,
+      sj: null,
+      command_type: "",
+      vehicle_id: "",
+      httpstatus: "",
+      ifOnline: true,
+      VehicleFaceData: [],
+      node: [
+        {
+          value: 1,
+          label: "全部上线",
+        },
+        {
+          value: 2,
+          label: "全部下线",
+        },
+        {
+          value: 3,
+          label: "全部暂停",
+        },
+        {
+          value: 4,
+          label: "全部继续",
+        },
+        {
+          value: 5,
+          label: "全部急停",
+        },
+        {
+          value: 6,
+          label: "取消急停",
+        },
+      ],
+      options: [
+        {
+          modeName: "P1-Car1",
+          btnName: "开包任务",
+          carName: "AMR01",
+        },
+        {
+          modeName: "P1-Car2",
+          btnName: "开包任务",
+          carName: "AMR02",
+        },
+        {
+          modeName: "P1-Car3",
+          btnName: "开包任务",
+          carName: "AMR03",
+        },
+        {
+          modeName: "P1-Car4",
+          btnName: "开包任务",
+          carName: "AMR04",
+        },
+        {
+          modeName: "P2-Car1",
+          btnName: "备用任务",
+          carName: "AMR01",
+        },
+        {
+          modeName: "P2-Car2",
+          btnName: "备用任务",
+          carName: "AMR02",
+        },
+        {
+          modeName: "P2-Car3",
+          btnName: "备用任务",
+          carName: "AMR03",
+        },
+        {
+          modeName: "P2-Car4",
+          btnName: "备用任务",
+          carName: "AMR04",
+        },
+        {
+          modeName: "充电桩1充电-Car1",
+          btnName: "充电桩1充电",
+          carName: "AMR01",
+        },
+        {
+          modeName: "充电桩1充电-Car2",
+          btnName: "充电桩1充电",
+          carName: "AMR02",
+        },
+        {
+          modeName: "充电桩1充电-Car3",
+          btnName: "充电桩1充电",
+          carName: "AMR03",
+        },
+        {
+          modeName: "充电桩1充电-Car4",
+          btnName: "充电桩1充电",
+          carName: "AMR04",
+        },
+        {
+          modeName: "充电桩2充电-Car1",
+          btnName: "充电桩2充电",
+          carName: "AMR01",
+        },
+        {
+          modeName: "充电桩2充电-Car2",
+          btnName: "充电桩2充电",
+          carName: "AMR02",
+        },
+        {
+          modeName: "充电桩2充电-Car3",
+          btnName: "充电桩2充电",
+          carName: "AMR03",
+        },
+        {
+          modeName: "充电桩2充电-Car4",
+          btnName: "充电桩2充电",
+          carName: "AMR04",
+        },
+        {
+          modeName: "Lock_Car1",
+          btnName: "前往站点1",
+          carName: "AMR01",
+        },
+        {
+          modeName: "Lock_Car2",
+          btnName: "前往站点1",
+          carName: "AMR02",
+        },
+        {
+          modeName: "Lock_Car3",
+          btnName: "前往站点1",
+          carName: "AMR03",
+        },
+        {
+          modeName: "Lock_Car4",
+          btnName: "前往站点1",
+          carName: "AMR04",
+        },
+      ],
+      value: "",
+      datalist: [
+        {
+          id: 1,
+          nickname: "AMDDDD1",
+          itemindex: 0,
+          ifOnline: 1,
+        },
+        {
+          id: 2,
+          nickname: "AMDDDD2",
+          itemindex: 0,
+          ifOnline: 0,
+        },
+        {
+          id: 3,
+          nickname: "AMDDDD3",
+          itemindex: 0,
+          ifOnline: 1,
+        },
+        {
+          id: 4,
+          nickname: "AMDDDD4",
+          itemindex: 0,
+          ifOnline: 0,
+        },
+      ],
+      oldData: [],
+      VehicleStatusData: [],
+      carList: [],
+    };
+  },
+  created() {
+    this.getData();
+    this.getVehicleFaceData();
+    this.getLocalisationData();
+    this.gettempalteMode();
+    this.carUPlistall();
+  },
+  mounted() {
+    clearInterval(this.sj);
+    let that = this;
+    this.sj = setInterval(function () {
+      that.getData();
+      that.getVehicleFaceData();
+      that.getVehicleStatusData();
+    }, 3000);
+    let user = JSON.parse(sessionStorage.getItem("userData")).userName;
+    if (user == "admin") {
+      this.isAdmin = true;
+    }
+  },
+  beforeRouteLeave(to, from, next) {
+    next();
+    if (this.sj) {
+      clearInterval(this.sj);
+      this.sj = null;
+    }
+  },
+  methods: {
+    //获取车辆所有信息
+    carUPlistall() {
+      carUPlist().then((res) => {
+        this.carList = res.resultData;
+      });
+    },
+    getVehicleStatusData() {
+      getVehicleStatus().then((res) => {
+        this.VehicleStatusData = res.VehicleBeltInfo;
+      });
+    },
+    gettempalteMode() {
+      GetTemplateslist().then((res) => {
+        this.options = res.templates;
+      });
+    },
+    getData() {
+      let json = {
+        page: 1,
+        perpage: 99,
+      };
+      getVehicles(json).then((res) => {
+        let vehicles = JSON.parse(
+          JSON.parse(JSON.stringify(res.resultData))
+        ).vehicles;
+        if (this.oldData == vehicles) {
+          return;
+        } else {
+          this.oldData = vehicles;
+          this.datalist = [];
+          for (let index in vehicles) {
+            let item = {
+              id: "",
+              nickname: "",
+              itemindex: 0,
+              ifOnline: 0,
+              ifCharge: 1,
+              move_state: "",
+              emergency_state: "",
+              load_state: "",
+              battery_state: "",
+            };
+            item["nickname"] = vehicles[index].nickname;
+            item.move_state = vehicles[index].move_state;
+            item.emergency_state = vehicles[index].emergency_state;
+            item.sys_state = vehicles[index].sys_state;
+            item.load_state = vehicles[index].load_state;
+            item["id"] = vehicles[index].id;
+            item["ifOnline"] = vehicles[index].is_online;
+            item["taskId"] = "";
+            item["siteId"] = "";
+            // item['siteId'] = "";
+            for (let index in this.VehicleStatusData) {
+              let str = this.VehicleStatusData[index].tag_name;
+              if (str.indexOf("_L") > 0) {
+                if (item.nickname == this.VehicleStatusData[index].car_name) {
+                  item["isLeft"] = this.VehicleStatusData[index].tag_val;
+                }
+              }
+              if (str.indexOf("_R") > 0) {
+                if (item.nickname == this.VehicleStatusData[index].car_name) {
+                  item["isRight"] = this.VehicleStatusData[index].tag_val;
+                }
+              }
+            }
+            this.datalist.push(item);
+          }
+        }
+      });
+    },
+    setCarStatus(data) {
+      setVehicleStatus(data).then((res) => {
+        console.log(res);
+        this.httpstatus = res;
+        if (res) {
+          //返回200
+          this.getData();
+          this.$message({
+            type: "success",
+            duration: 800,
+            message: "操作成功!",
+          });
+        } else {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "操作失败",
+          });
+        }
+      });
+    },
+    setCarFaces(data) {
+      setVehicleFace(data).then((res) => {
+        this.httpstatus = res;
+        if (res) {
+          //返回200
+          this.getData();
+          this.$message({
+            type: "success",
+            duration: 800,
+            message: "操作成功!",
+          });
+        } else {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "操作失败",
+          });
+        }
+      });
+    },
+    setTasks(e) {
+      if (e == "") {
+        return;
+      }
+      this.$confirm("将添加" + e + "为新的任务订单?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let data = {
+            template_name: e,
+          };
+          ordersTemplate(data).then((res) => {
+            console.log(res);
+            this.$message({
+              type: "success",
+              duration: 800,
+              message: "下单成功!",
+            });
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "已取消操作",
+          });
+        });
+    },
+    carStop(item, index) {
+      //暂停当前运行的车辆
+      let data = {
+        command_type: "CMD_VEHICLE_PAUSE",
+        vehicle_id: item.id,
+      };
+      this.setCarStatus(data);
+    },
+    carGoOn(item, index) {
+      //继续当前运行的车辆
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_CONTINUE",
+        vehicle_id: item.id,
+      };
+      this.setCarStatus(data);
+    },
+    overTask(item, index) {
+      //取消车辆当前执行的任务
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_CANCEL_TASK",
+        vehicle_id: item.id,
+      };
+      this.$confirm("是否取消任务?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.setCarStatus(data);
+        })
+        .catch(() => {});
+    },
+    shutDown(item, index) {
+      //小车急停
+      let data = {
+        command_type: "CMD_VEHICLE_TRIGGER_EMERGENCY",
+        vehicle_id: item.id,
+      };
+      this.setCarStatus(data);
+    },
+    UNshutDown(item, index) {
+      //取消小车急停
+      let data = {
+        command_type: "CMD_VEHICLE_CANCEL_EMERGENCY",
+        vehicle_id: item.id,
+      };
+      this.setCarStatus(data);
+    },
+    carOver(item, index) {
+      //结束当前运行的车辆
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_PAUSE",
+        vehicle_id: item.id,
+      };
+      this.setCarStatus(data);
+    },
+    carOpen(item, index) {
+      //打开手柄模式
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_MANUAL_CONTROL",
+        vehicle_id: item.id,
+      };
+      this.$confirm("是否打开手柄模式, 是否继续?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.setCarStatus(data);
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "已取消操作",
+          });
+        });
+    },
+    carClose(item, index) {
+      //关闭手柄模式
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_CANCEL_TASK",
+        vehicle_id: item.id,
+      };
+      this.$confirm("是否关闭手柄模式, 是否继续?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.setCarStatus(data);
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "已取消操作",
+          });
+        });
+    },
+
+    cartTurnLeft(item, index) {
+      //移载车辆——左转
+      let arr = {};
+      this.carList.forEach((res) => {
+        if (item.nickname == res.ipname) {
+          arr = res;
+        }
+      });
+      let data = {
+        adress: arr.adress,
+        tagname: "UI_BeltRun_L",
+        value: false,
+      };
+      let datas = {
+        adress: arr.adress,
+        tagname: "UI_BeltRun_L",
+        value: true,
+      };
+      let that = this;
+      setVehicleFace(data).then((res) => {
+        if (res) {
+          that.setCarFaces(datas);
+        }
+      });
+    },
+    cartTurnRight(item, index) {
+      //移载车辆——右转
+      console.log(item);
+      let that = this;
+      let num = item.nickname.substring(4);
+      this.carTurnStop(item, index, function (datas) {
+        let data = {
+          ctg_name: "Belt_Car" + num + "_R",
+          ctg_val: 1,
+        };
+        setTimeout(function () {
+          that.setCarFaces(data);
+        }, 1000);
+      });
+    },
+    carTurnStop(item, index, callback) {
+      //移载车辆——暂停
+      console.log(item);
+      let num = item.nickname.substring(4);
+      let dataL = {
+        ctg_name: "Belt_Car" + num + "_L",
+        ctg_val: 0,
+      };
+      let dataR = {
+        ctg_name: "Belt_Car" + num + "_R",
+        ctg_val: 0,
+      };
+      this.setCarFaces(dataL);
+      this.setCarFaces(dataR);
+      callback(true);
+    },
+    carTurnContinue(item, index) {
+      //移载车辆——继续carCharge
+      console.log(item);
+      let data = {
+        command_type: "CMD_VEHICLE_PAUSE",
+        vehicle_id: item.id,
+      };
+      this.setCarFaces(data);
+    },
+    btnClick(item) {
+      //顶部按钮点击触发
+      let str = "";
+      let data = {};
+      if (item.value == 1) {
+        str = "是否全部上线?";
+        data = {
+          command_type: "CMD_VEHICLE_ONLINE_ALL",
+        };
+      } else if (item.value == 2) {
+        str = "是否全部下线?";
+        data = {
+          command_type: "CMD_VEHICLE_OFFLINE_ALL",
+        };
+      } else if (item.value == 3) {
+        str = "是否全部暂停?";
+        data = {
+          command_type: "CMD_VEHICLE_PAUSE_ALL",
+        };
+      } else if (item.value == 4) {
+        str = "是否全部继续任务?";
+        data = {
+          command_type: "CMD_VEHICLE_CONTINUE_ALL",
+        };
+      } else if (item.value == 5) {
+        str = "是否全部急停?";
+        data = {
+          command_type: "CMD_VEHICLE_TRIGGER_EMERGENCY_ALL",
+        };
+      } else if (item.value == 6) {
+        str = "是否全部取消急停?";
+        data = {
+          command_type: "CMD_VEHICLE_CANCEL_EMERGENCY_ALL",
+        };
+      }
+
+      this.$confirm(str, "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          this.setCarStatus(data);
+        })
+        .catch(() => {});
+    },
+    getVehicleFaceData() {
+      //获取小车PLC信号
+      getVehicleFace().then((res) => {
+        // alert(JSON.stringify(res))
+        this.VehicleFaceData = res.VehicleBpcInfo;
+      });
+    },
+    getLocalisationData() {
+      getLocalisation().then((res) => {
+        this.LocalisationData = res.Localisation;
+      });
+    },
+    sitePosition(item) {
+      //站点定位
+      this.$confirm("是否定位为" + item.siteId.station + "站点", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let json = {
+            command_type: "CMD_VEHICLE_STATION_LOCATE",
+            vehicle_id: item.id,
+            param1: item.siteId.id,
+          };
+          this.setCarStatus(json);
+        })
+        .catch(() => {});
+    },
+    toBatteryCharging(item, index) {
+      let that = this;
+      this.$confirm(
+        "请确认" + item.nickname + "在正确的充电位置,开始充电?",
+        "提示",
+        {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        }
+      )
+        .then(() => {
+          let num = item.nickname.substring(3);
+          let data = {
+            ctg_name: "StartCharge_Car" + num,
+            ctg_val: 1,
+          };
+          this.setCarFaces(data);
+          setTimeout(function () {
+            let data1 = {
+              ctg_name: "StartCharge_Car" + num,
+              ctg_val: 0,
+            };
+            that.setCarFaces(data1);
+          }, 1000);
+        })
+        .catch(() => {});
+    },
+    stopBatteryCharging(item, index) {
+      let that = this;
+      this.$confirm(item.nickname + "是否停止充电?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let num = item.nickname.substring(3);
+          let data = {
+            ctg_name: "EndCharge_Car" + num,
+            ctg_val: 1,
+          };
+          this.setCarFaces(data);
+          setTimeout(function () {
+            let data1 = {
+              ctg_name: "EndCharge_Car" + num,
+              ctg_val: 0,
+            };
+            that.setCarFaces(data1);
+          }, 1000);
+        })
+        .catch(() => {});
+    },
+  },
+};
 </script>
 
 <style lang="less" scoped>
-	.right_item_active {
-		box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
-		border-radius: 2px;
-		border: 1px solid #0194e4 !important;
-		background: green!important;
-	}
-	.outBox{
-		width: 100%;
-		height: 100%;
-		position: absolute;
-		left: 0;
-		top: 0;
-		z-index: 900;
-		background: rgba(0,0,0,.1);
-	}
-	.ARM_body {
-		padding: 10px 0px 10px 10px;
-		display: flex;
-		flex-direction: column;
-		height: calc(100% - 20px);
-		overflow-y: scroll;
-        .ARM_content {
-			width: 100%;
-			height: 710px;
-			z-index: 999;
-			.el-scrollbar{
-				.el-scrollbar__wrap{
-					overflow-x: hidden;
-					.el-scrollbar__view{
-						width: 100%;
-						display: flex;
-						flex-wrap: wrap;
-						justify-content: space-between;
-					}
-				}
-			}
-		}
-		.Batch {
-			width: 100%;
-			height: 50px;
-			position: relative;
-			display: flex;
-
-			.title {
-				flex: 2.4;
-				height: 100%;
-
-				.left_text {
-					position: absolute;
-					z-index: 2;
-					padding: 6px 13px;
-					color: #ffffff;
-					line-height: 23px;
-					font-size: 18px;
-					font-weight: bold;
-					top: 0px;
-					left: 0px;
-				}
-
-				.left_img {
-					height: 35px;
-					width: 255px;
-				}
-			}
-
-			.node {
-				flex: 10;
-				height: 100%;
-			}
-
-		}
-
-		.item_body {
-			width: 49%;
-			height: 146px;
-			display: flex;
-			margin-bottom: 20px;
-			border-radius: 20px 0px 0px 0px;
-			background: rgba(9, 39, 84, 0.3);
-			border: 1px solid #164078;
-			flex-direction: row;
-            float: left;
-			.item_right {
-				flex: 1;
-				// padding: 0px 24px;
-				display: flex;
-				flex-direction: row;
-				height: 100%;
-				justify-content: space-around;
-				align-items: stretch;
-				overflow-x: auto;
-				.right_item_body:nth-of-type(2) {
-					.Colorbutton_blue {
-						margin-left: 50px;
-					}
-				}
-
-				.right_item_body {
-					width: 140px;
-					height: calc(98% - 30px);
-					display: flex;
-					padding-top: 17px;
-					flex-direction: column;
-					cursor: pointer;
-					padding-left: 10px;
-					.item_upper {
-						width: 100%;
-						flex: 1;
-						background: #092754;
-						border-radius: 2px;
-						border: 1px solid #133a70;
-						display: flex;
-						flex-direction: column;
-						justify-content: center;
-						align-items: center;
-                   
-						.upper_title {
-							// width: calc(100% - 70px);
-							// height: 30px;
-							text-align: center;
-							font-size: 14px;
-							cursor: pointer;
-							font-weight: 400;
-							color: #ffffff;
-							border-top: 1px solid rgba(234, 234, 234, 0.24);
-							border-bottom: 1px solid rgba(234, 234, 234, 0.24);
-							line-height: 25px;
-						}
-
-						.upper_img_border {
-							flex: 1;
-							display: flex;
-							justify-content: center;
-							align-items: center;
-
-							.item_upper_img {
-								height: 32px;
-								width: 32px;
-							}
-						}
-					}
-
-					.item_lower {
-						width: 100%;
-						margin-top: 10px;
-						display: flex;
-						justify-content: space-between;
-						margin-bottom: 10px;
-						height: 32px;
-					}
-				}
-			}
-
-			.item_left {
-				width: 200px;
-				position: relative;
-
-				.left_text {
-					position: absolute;
-					z-index: 2;
-					padding: 6px 13px;
-					color: #ffffff;
-					line-height: 23px;
-					font-size: 18px;
-					font-weight: bold;
-					top: 0px;
-					left: 0px;
-				}
-
-				.left_img {
-					position: absolute;
-					top: 0px;
-					left: 0px;
-					width: 200px;
-					height: 35px;
-				}
-
-				.left_center_img {
-					position: absolute;
-					top: 40px;
-					left: 30px;
-					height: 70%;
-				}
-
-				.left_line_img {
-					position: absolute;
-					top: 10%;
-					right: 0px;
-					height: 80%;
-				}
-			}
-		}
-		.item_body:nth-child(even){
-            margin-left: 1%;
-		}
-	}
-	.plcDiv{
-		width: 13px;
-		height: 13px;
-		background: lawngreen;
-	}
-	
-	.plcDiv2{
-		width: 13px;
-		height: 13px;
-		background: yellow;
-	}
+.right_item_active {
+  box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
+  border-radius: 2px;
+  border: 1px solid #0194e4 !important;
+  background: green !important;
+}
+.outBox {
+  width: 100%;
+  height: 100%;
+  position: absolute;
+  left: 0;
+  top: 0;
+  z-index: 900;
+  background: rgba(0, 0, 0, 0.1);
+}
+.ARM_body {
+  padding: 10px 0px 10px 10px;
+  display: flex;
+  flex-direction: column;
+  height: calc(100% - 20px);
+  overflow-y: scroll;
+  .ARM_content {
+    width: 100%;
+    height: 710px;
+    z-index: 999;
+    .el-scrollbar {
+      .el-scrollbar__wrap {
+        overflow-x: hidden;
+        .el-scrollbar__view {
+          width: 100%;
+          display: flex;
+          flex-wrap: wrap;
+          justify-content: space-between;
+        }
+      }
+    }
+  }
+  .Batch {
+    width: 100%;
+    height: 50px;
+    position: relative;
+    display: flex;
+
+    .title {
+      flex: 2.4;
+      height: 100%;
+
+      .left_text {
+        position: absolute;
+        z-index: 2;
+        padding: 6px 13px;
+        color: #ffffff;
+        line-height: 23px;
+        font-size: 18px;
+        font-weight: bold;
+        top: 0px;
+        left: 0px;
+      }
+
+      .left_img {
+        height: 35px;
+        width: 255px;
+      }
+    }
+
+    .node {
+      flex: 10;
+      height: 100%;
+    }
+  }
+
+  .item_body {
+    width: 49%;
+    height: 146px;
+    display: flex;
+    margin-bottom: 20px;
+    border-radius: 20px 0px 0px 0px;
+    background: rgba(9, 39, 84, 0.3);
+    border: 1px solid #164078;
+    flex-direction: row;
+    float: left;
+    .item_right {
+      flex: 1;
+      // padding: 0px 24px;
+      display: flex;
+      flex-direction: row;
+      height: 100%;
+      justify-content: space-around;
+      align-items: stretch;
+      overflow-x: auto;
+      .right_item_body:nth-of-type(2) {
+        .Colorbutton_blue {
+          margin-left: 50px;
+        }
+      }
+
+      .right_item_body {
+        width: 140px;
+        height: calc(98% - 30px);
+        display: flex;
+        padding-top: 17px;
+        flex-direction: column;
+        cursor: pointer;
+        padding-left: 10px;
+        .item_upper {
+          width: 100%;
+          flex: 1;
+          background: #092754;
+          border-radius: 2px;
+          border: 1px solid #133a70;
+          display: flex;
+          flex-direction: column;
+          justify-content: center;
+          align-items: center;
+
+          .upper_title {
+            // width: calc(100% - 70px);
+            // height: 30px;
+            text-align: center;
+            font-size: 14px;
+            cursor: pointer;
+            font-weight: 400;
+            color: #ffffff;
+            border-top: 1px solid rgba(234, 234, 234, 0.24);
+            border-bottom: 1px solid rgba(234, 234, 234, 0.24);
+            line-height: 25px;
+          }
+
+          .upper_img_border {
+            flex: 1;
+            display: flex;
+            justify-content: center;
+            align-items: center;
+
+            .item_upper_img {
+              height: 32px;
+              width: 32px;
+            }
+          }
+        }
+
+        .item_lower {
+          width: 100%;
+          margin-top: 10px;
+          display: flex;
+          justify-content: space-between;
+          margin-bottom: 10px;
+          height: 32px;
+        }
+      }
+    }
+
+    .item_left {
+      width: 200px;
+      position: relative;
+
+      .left_text {
+        position: absolute;
+        z-index: 2;
+        padding: 6px 13px;
+        color: #ffffff;
+        line-height: 23px;
+        font-size: 18px;
+        font-weight: bold;
+        top: 0px;
+        left: 0px;
+      }
+
+      .left_img {
+        position: absolute;
+        top: 0px;
+        left: 0px;
+        width: 200px;
+        height: 35px;
+      }
+
+      .left_center_img {
+        position: absolute;
+        top: 40px;
+        left: 30px;
+        height: 70%;
+      }
+
+      .left_line_img {
+        position: absolute;
+        top: 10%;
+        right: 0px;
+        height: 80%;
+      }
+    }
+  }
+  .item_body:nth-child(even) {
+    margin-left: 1%;
+  }
+}
+.plcDiv {
+  width: 13px;
+  height: 13px;
+  background: lawngreen;
+}
+
+.plcDiv2 {
+  width: 13px;
+  height: 13px;
+  background: yellow;
+}
 </style>

+ 1895 - 1685
src/pages/Common/home.vue

@@ -1,6 +1,6 @@
 <template>
-	<div class="body EditCMBox">
-		<!-- <div class="left_body panel">
+  <div class="body EditCMBox">
+    <!-- <div class="left_body panel">
 			<div class="inner">
 				<el-menu default-active="首页" class="el-menu-vertical-demo" background-color="#00122d" text-color="#5BB7FF"
 				 active-text-color="#FFFFFF">
@@ -13,79 +13,141 @@
 				</el-menu>
 			</div>
 		</div> -->
-		<div class="right_body">
-			<div class="right_upper">
-				<div class="right_upper_left">
-					<top-title title="地图信息"></top-title>
-					<div class="right_upper_title">
-						<!-- <div class="right_uppertitle_left">
+    <div class="right_body">
+      <div class="right_upper">
+        <div class="right_upper_left">
+          <top-title title="地图信息"></top-title>
+          <div class="right_upper_title">
+            <!-- <div class="right_uppertitle_left">
 							<el-select class="Report order_select" v-model="value" placeholder="请选择订单模版">
 								<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
 								</el-option>
 							</el-select>
 						</div> -->
-						<div class="right_uppertitle_right">
-							<!-- <el-button class="custom_btn Colorbutton_blue" @click="pathOnlock">路径解锁</el-button> -->
-							<el-select class="maskright_select" v-model="addOrdersB" @change="addOrders(addOrdersB)" placeholder="">
-								<el-option v-for="item in tempalteMode" :key="item.template_name" :label="item.template_name" :value="item.template_name">
-								</el-option>
-							</el-select>
-							<el-select style="margin-left:24px" class="maskright_select" v-model="addOrdersC" @change="addOrders(addOrdersC)" placeholder="">
-								<el-option v-for="item in tempalteMode" :key="item.template_name" :label="item.template_name" :value="item.template_name">
-								</el-option>
-							</el-select>
-							<!-- <el-button class="custom_btn Colorbutton_blue" @click="showModels">模板总览</el-button> -->
-							<!-- <el-button class="custom_btn Colorbutton_blue" @click="goMap">全屏显示</el-button> -->
-							<div class="all_pul"  @click="goMap"></div>
-						</div>
-					</div>
-					<div class="right_map">
-						<iframe width="100%" frameborder="0" scrolling="yes" height="100%" id="map_iframe" src="http://localhost:8088/page/map_export"></iframe>
-					</div>
-					<div class="right_mapMax" v-show="ifRe">
-						<div class="right_mapMax_Top">
-							<el-select  class="maskright_select" v-model="addOrdersB" @change="addOrders(addOrdersB)" placeholder="">
-								<el-option v-for="item in tempalteMode" :key="item.template_name" :label="item.template_name" :value="item.template_name">
-								</el-option>
-							</el-select>
-							<el-select class="maskright_select" v-model="addOrdersB" @change="addOrders(addOrdersB)" placeholder="">
-								<el-option v-for="item in tempalteMode" :key="item.template_name" :label="item.template_name" :value="item.template_name">
-								</el-option>
-							</el-select>
-							<!-- <el-button class="custom_btn Colorbutton_blue" @click="showModels">模板总览</el-button> -->
-							<el-button class="custom_btn exitRe Colorbutton_blue" @click="goMap">退出全屏</el-button>
-						</div>
-						<div class="right_mapMax_Bottom">
-							<iframe frameborder="0" scrolling="no" width="100%" height="100%" id="map_iframe" src="http://localhost:8088/page/map_export"></iframe>
-						</div>
-					</div>
-					<!-- <top-title title="报警统计" style="margin-top:20px"></top-title>
+            <div class="right_uppertitle_right">
+              <!-- <el-button class="custom_btn Colorbutton_blue" @click="pathOnlock">路径解锁</el-button> -->
+              <el-select
+                class="maskright_select"
+                v-model="addOrdersB"
+                @change="addOrders(addOrdersB)"
+                placeholder=""
+              >
+                <el-option
+                  v-for="item in tempalteMode"
+                  :key="item.template_name"
+                  :label="item.template_name"
+                  :value="item.template_name"
+                >
+                </el-option>
+              </el-select>
+              <el-select
+                style="margin-left: 24px"
+                class="maskright_select"
+                v-model="addOrdersC"
+                @change="addOrders(addOrdersC)"
+                placeholder=""
+              >
+                <el-option
+                  v-for="item in tempalteMode"
+                  :key="item.template_name"
+                  :label="item.template_name"
+                  :value="item.template_name"
+                >
+                </el-option>
+              </el-select>
+              <!-- <el-button class="custom_btn Colorbutton_blue" @click="showModels">模板总览</el-button> -->
+              <!-- <el-button class="custom_btn Colorbutton_blue" @click="goMap">全屏显示</el-button> -->
+              <div class="all_pul" @click="goMap"></div>
+            </div>
+          </div>
+          <div class="right_map">
+            <iframe
+              width="100%"
+              frameborder="0"
+              scrolling="yes"
+              height="100%"
+              id="map_iframe"
+              :src="mapurl"
+            ></iframe>
+          </div>
+          <div class="right_mapMax" v-show="ifRe">
+            <div class="right_mapMax_Top">
+              <el-select
+                class="maskright_select"
+                v-model="addOrdersB"
+                @change="addOrders(addOrdersB)"
+                placeholder=""
+              >
+                <el-option
+                  v-for="item in tempalteMode"
+                  :key="item.template_name"
+                  :label="item.template_name"
+                  :value="item.template_name"
+                >
+                </el-option>
+              </el-select>
+              <el-select
+                class="maskright_select"
+                v-model="addOrdersB"
+                @change="addOrders(addOrdersB)"
+                placeholder=""
+              >
+                <el-option
+                  v-for="item in tempalteMode"
+                  :key="item.template_name"
+                  :label="item.template_name"
+                  :value="item.template_name"
+                >
+                </el-option>
+              </el-select>
+              <!-- <el-button class="custom_btn Colorbutton_blue" @click="showModels">模板总览</el-button> -->
+              <el-button
+                class="custom_btn exitRe Colorbutton_blue"
+                @click="goMap"
+                >退出全屏</el-button
+              >
+            </div>
+            <div class="right_mapMax_Bottom">
+              <iframe
+                frameborder="0"
+                scrolling="no"
+                width="100%"
+                height="100%"
+                id="map_iframe"
+                :src="mapurl"
+              ></iframe>
+            </div>
+          </div>
+          <!-- <top-title title="报警统计" style="margin-top:20px"></top-title>
 					<div class="alarm_statistics"></div> -->
-
-				</div>
-				<div class="right_upper_right">
-					<div class="right_upper_top">
-						<div class="right_upper_top_left">
-                            <top-title title="车辆信息">
-							</top-title>
-							<div class="cars_infor_body">
-								<el-scrollbar style="width:100%;height:100%">
-                                    <ul v-for="(item, index) in carsinfordata" :key="index">
-										<li>
-											{{ item.title }}
-										</li>
-										<li>
-											{{item.statues}}
-										</li>
-										<li>
-											电量:{{ item.elect }}
-										</li>
-										<li>
-											调度上线:<i @click="changestatus(item, index)" :class="item.dispatchstatues == '1' ? 'IconStart' : 'IconClose'"></i>
-										</li>
-									</ul>
-								</el-scrollbar>
-								<!-- <div class="cars_item" :class="carsindex == index ? 'cars_item_active' : ''" @click="activeCar(index),carsindex=index"
+        </div>
+        <div class="right_upper_right">
+          <div class="right_upper_top">
+            <div class="right_upper_top_left">
+              <top-title title="车辆信息"> </top-title>
+              <div class="cars_infor_body">
+                <el-scrollbar style="width: 100%; height: 100%">
+                  <ul v-for="(item, index) in carsinfordata" :key="index">
+                    <li>
+                      {{ item.title }}
+                    </li>
+                    <li>
+                      {{ item.statues }}
+                    </li>
+                    <li>电量:{{ item.elect }}</li>
+                    <li>
+                      调度上线:<i
+                        @click="changestatus(item, index)"
+                        :class="
+                          item.dispatchstatues == '1'
+                            ? 'IconStart'
+                            : 'IconClose'
+                        "
+                      ></i>
+                    </li>
+                  </ul>
+                </el-scrollbar>
+                <!-- <div class="cars_item" :class="carsindex == index ? 'cars_item_active' : ''" @click="activeCar(index),carsindex=index"
 								v-for="(item, index) in carsinfordata" :key="index">
 									<div class="cars_item_body">
 										<div class="cars_item_title">
@@ -104,103 +166,189 @@
 										</div>
 									</div>
 								</div> -->
-							</div>
-						</div>
-						<div class="right_upper_top_right">
-							<div style="width: 100%;height: 110px;position: relative;top: 0px;float:left">
-								<top-title title="任务控制"></top-title>
-								<div class="carbtn_box" style="width: 100%;height: 70%;">
-									<div v-if="showCar.ifshow" class="carbtn_item" style="width: 100%;height: 120px;margin-bottom:13px;
-						background-color: #092754;display: flex;align-items: center;justify-content: space-around;"
-									v-for="(item,index) in carbtn">
-									<label style="color: #FFFFFF;font-size: 20px;">{{item.btn_title}}</label>
-											<i class="IconFont" style="font-size: 20px;"
-											@click="changeCarbtn(item, index)" :class="item.btn_icon == '1' ? 'IconStart' : 'IconClose'"></i>
-										
-									</div>
-									<!-- <p v-if="Offline" style="float: left;font-size: 28px;color: #606266b0;letter-spacing: 3px;line-height: 10px;padding-left: 40px;">车辆已下线</p> -->
-								</div>
-								<div class="moreOrder" style="float: right;position: relative;top: -5px; width: 100px;height: 50px;right: 30px;"
-								@click="">
-									<!-- <el-button class="Colorbutton_blue">更多订单</el-button> -->
-								</div>
-							</div>
-						</div>
-					</div>
-                     
-					<div class="alarm_up" style="width: 100%;height:120px;position: relative;top: 0px;float:left">
-						<top-title title="告警信息"></top-title>
-						<div style="width: 100%;height: 80%;overflow: hidden;">
-							<vue-seamless-scroll :data="agreepersonlist"  :class-option="optionSetting" ref="myScoll">
-								<div class="givealarm_child" v-for="(item, index) in agreepersonlist" :key="index">
-									<!-- <div class="top">
+              </div>
+            </div>
+            <div class="right_upper_top_right">
+              <div
+                style="
+                  width: 100%;
+                  height: 110px;
+                  position: relative;
+                  top: 0px;
+                  float: left;
+                "
+              >
+                <top-title title="任务控制"></top-title>
+                <div class="carbtn_box" style="width: 100%; height: 70%">
+                  <div
+                    v-if="showCar.ifshow"
+                    class="carbtn_item"
+                    style="
+                      width: 100%;
+                      height: 120px;
+                      margin-bottom: 13px;
+                      background-color: #092754;
+                      display: flex;
+                      align-items: center;
+                      justify-content: space-around;
+                    "
+                    v-for="(item, index) in carbtn"
+                  >
+                    <label style="color: #ffffff; font-size: 20px">{{
+                      item.btn_title
+                    }}</label>
+                    <i
+                      class="IconFont"
+                      style="font-size: 20px"
+                      @click="changeCarbtn(item, index)"
+                      :class="item.btn_icon == '1' ? 'IconStart' : 'IconClose'"
+                    ></i>
+                  </div>
+                  <!-- <p v-if="Offline" style="float: left;font-size: 28px;color: #606266b0;letter-spacing: 3px;line-height: 10px;padding-left: 40px;">车辆已下线</p> -->
+                </div>
+                <div
+                  class="moreOrder"
+                  style="
+                    float: right;
+                    position: relative;
+                    top: -5px;
+                    width: 100px;
+                    height: 50px;
+                    right: 30px;
+                  "
+                  @click=""
+                >
+                  <!-- <el-button class="Colorbutton_blue">更多订单</el-button> -->
+                </div>
+              </div>
+            </div>
+          </div>
+
+          <div
+            class="alarm_up"
+            style="
+              width: 100%;
+              height: 120px;
+              position: relative;
+              top: 0px;
+              float: left;
+            "
+          >
+            <top-title title="告警信息"></top-title>
+            <div style="width: 100%; height: 80%; overflow: hidden">
+              <vue-seamless-scroll
+                :data="agreepersonlist"
+                :class-option="optionSetting"
+                ref="myScoll"
+              >
+                <div
+                  class="givealarm_child"
+                  v-for="(item, index) in agreepersonlist"
+                  :key="index"
+                >
+                  <!-- <div class="top">
 										<div  :class="{'logcomplete':item.start2 == 1,'logwarning':item.start2 == 2,'logalarm':item.start2 == 3,}"></div>
 										<div class="content">{{item.name}}</div>
 										<div class="start" :class="item.start == 1 ? 'start': 'starter'">{{item.start == 1 ? '已处理': '未处理'}}</div>
 									</div> -->
-									<p>{{item.alarm_date}}</p>
-									<span>{{item.error_content}}</span>
-								</div>
-							</vue-seamless-scroll>
-							<!-- <p v-if="Offline" style="float: left;font-size: 28px;color: #606266b0;letter-spacing: 3px;line-height: 10px;padding-left: 40px;">车辆已下线</p> -->
-						</div>
-					</div>
-					<top-title title="订单信息" style="margin-top: 30px;"></top-title>
-					<div class="right_lower">
-						<div class="filter_by_state">
-							<el-select v-model="filter_by_state" placeholder="全部" clearable class="filter_by_state_select" @change="filterChange">
-								<el-option
-								v-for="item in typeOptions"
-								:key="item.value"
-								:label="item.label"
-								:value="item.value">
-								</el-option>
-							</el-select>
-						</div>
-						<el-table :data="tableData" height="267px" width="100%">
-							<el-table-column :label="item.label"  :align="item.label=='完成进度'?'left':'center'"
-							v-for="(item, index) in tableprop" :key="index">
-								<template slot-scope="scope">
-									<div v-if="item.label == '操作'">
-										<!-- <el-button class="Colorbutton_blue" @click="showDetial(scope.row.Id)">详情信息</el-button> -->
-										<el-button class="Colorbutton"  @click="thisOrderStop(scope.row.Id)">暂停</el-button>
-										<el-button class="Colorbutton"  @click="thisOrderRun(scope.row.Id)">继续</el-button>
-										<el-button class="Colorbutton_blue"  @click="thisOrderClres(scope.row.Id)">取消</el-button>
-									</div>
-									<div v-else-if="item.label == '完成进度'">
-										<div class="progress_body">
-											<span class="progress_span">{{ scope.row[item.prop] }}</span>
-											<div :style="{
-												width: scope.row[item.prop],
-												background: '#20CEA0',
-												height: '100%',
-												}"
-											class="progress_item"></div>
-										</div>
-									</div>
-									<div v-else>
-										<div v-if="item.render" :style="{color: item.rendercolor ? item.rendercolor(scope.row) : '',}">
-											{{ item.render(scope.row) }}
-										</div>
-										<div v-else>
-											{{ scope.row[item.prop] }}
-										</div>
-									</div>
-								</template>
-							</el-table-column>
-						</el-table>
-						<el-pagination
-		                v-show="typeOptions.length<= 1"
-						@current-change="changePage"
-						@prev-click = "changePage"
-						@next-click = "changePage"
-						layout="prev, pager, next"
-						:total="pageCount">
-						</el-pagination>
-					</div>
-				</div>
-			</div>
-			<!-- <top-title title="具体订单状态" style="margin-top: 10px;"></top-title>
+                  <p>{{ item.alarm_date }}</p>
+                  <span>{{ item.error_content }}</span>
+                </div>
+              </vue-seamless-scroll>
+              <!-- <p v-if="Offline" style="float: left;font-size: 28px;color: #606266b0;letter-spacing: 3px;line-height: 10px;padding-left: 40px;">车辆已下线</p> -->
+            </div>
+          </div>
+          <top-title title="订单信息" style="margin-top: 30px"></top-title>
+          <div class="right_lower">
+            <div class="filter_by_state">
+              <el-select
+                v-model="filter_by_state"
+                placeholder="全部"
+                clearable
+                class="filter_by_state_select"
+                @change="filterChange"
+              >
+                <el-option
+                  v-for="item in typeOptions"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
+                </el-option>
+              </el-select>
+            </div>
+            <el-table :data="tableData" height="267px" width="100%">
+              <el-table-column
+                :label="item.label"
+                :align="item.label == '完成进度' ? 'left' : 'center'"
+                :width="item.label == '操作' ? '280' : ''"
+                v-for="(item, index) in tableprop"
+                :key="index"
+              >
+                <template slot-scope="scope">
+                  <div v-if="item.label == '操作'">
+                    <!-- <el-button class="Colorbutton_blue" @click="showDetial(scope.row.Id)">详情信息</el-button> -->
+                    <el-button
+                      class="Colorbutton"
+                      @click="thisOrderStop(scope.row.Id)"
+                      >暂停</el-button
+                    >
+                    <el-button
+                      class="Colorbutton"
+                      @click="thisOrderRun(scope.row.Id)"
+                      >继续</el-button
+                    >
+                    <el-button
+                      class="Colorbutton_blue"
+                      @click="thisOrderClres(scope.row.Id)"
+                      >取消</el-button
+                    >
+                  </div>
+                  <div v-else-if="item.label == '完成进度'">
+                    <div class="progress_body">
+                      <span class="progress_span">{{
+                        scope.row[item.prop]
+                      }}</span>
+                      <div
+                        :style="{
+                          width: scope.row[item.prop],
+                          background: '#20CEA0',
+                          height: '100%',
+                        }"
+                        class="progress_item"
+                      ></div>
+                    </div>
+                  </div>
+                  <div v-else>
+                    <div
+                      v-if="item.render"
+                      :style="{
+                        color: item.rendercolor
+                          ? item.rendercolor(scope.row)
+                          : '',
+                      }"
+                    >
+                      {{ item.render(scope.row) }}
+                    </div>
+                    <div v-else>
+                      {{ scope.row[item.prop] }}
+                    </div>
+                  </div>
+                </template>
+              </el-table-column>
+            </el-table>
+            <el-pagination
+              @current-change="changePage"
+              @prev-click="changePage"
+              @next-click="changePage"
+              layout="prev, pager, next"
+              :total="pageCount"
+            >
+            </el-pagination>
+          </div>
+        </div>
+      </div>
+      <!-- <top-title title="具体订单状态" style="margin-top: 10px;"></top-title>
 			<div class="right_lower">
 				<div class="filter_by_state">
 					<el-select v-model="filter_by_state" placeholder="全部" clearable class="filter_by_state_select" @change="filterChange">
@@ -252,1590 +400,1652 @@
 				  :total="pageCount">
 				</el-pagination>
 			</div> -->
-		</div>
-		<el-dialog title="模板总览" :visible.sync="dialogVisible" width="800px" @close="closeDialog" id="addUserDialog">
-			<el-table :data="ModeList" height="590" style="width: 100%;color: #2DAFF5;background-color: #103366;">
-				<el-table-column prop="modeName" align="center" label="模板名称">
-				</el-table-column>
-				<el-table-column prop="btnName" align="center" label="对应按钮">
-				</el-table-column>
-				<el-table-column prop="carName" align="center" label="对应车辆">
-				</el-table-column>
-				<el-table-column prop="" align="center" label="操作">
-					<template slot-scope="{row}">
-						<el-button class="Colorbutton_blue" @click="bindOrder(row)">下单</el-button>
-					</template>
-				</el-table-column>
-			</el-table>
-		</el-dialog>
-		<OrdersInfo ref="OrdersInfo"></OrdersInfo>
-	</div>
+    </div>
+    <el-dialog
+      title="模板总览"
+      :visible.sync="dialogVisible"
+      width="800px"
+      @close="closeDialog"
+      id="addUserDialog"
+    >
+      <el-table
+        :data="ModeList"
+        height="590"
+        style="width: 100%; color: #2daff5; background-color: #103366"
+      >
+        <el-table-column prop="modeName" align="center" label="模板名称">
+        </el-table-column>
+        <el-table-column prop="btnName" align="center" label="对应按钮">
+        </el-table-column>
+        <el-table-column prop="carName" align="center" label="对应车辆">
+        </el-table-column>
+        <el-table-column prop="" align="center" label="操作">
+          <template slot-scope="{ row }">
+            <el-button class="Colorbutton_blue" @click="bindOrder(row)"
+              >下单</el-button
+            >
+          </template>
+        </el-table-column>
+      </el-table>
+    </el-dialog>
+    <OrdersInfo ref="OrdersInfo"></OrdersInfo>
+  </div>
 </template>
 
 <script>
-	import {
-		GetUsers,
-		getVehicles,
-		Getorders,
-		GetTemplates,
-		GetTemplateslist,
-		getVehicleByIds,
-		ordersTemplate,
-		setVehicleStatus,
-		setVehicleFace,
-		Deblock,
-		SetOrders,
-		Changestat,
-		getOrdersByIds,
-		Changestat2,
-		keepCarOnline,
-		Changestat3,
-		Dbalarm,
-		getbuttonstat,
-		alarmInformation
-	} from '@/api/request.js'
-	import OrdersInfo from '../../components/OrdersInfo.vue'
-	export default {
-		data() {
-			return {
-				// heighter: '100%',
-				mapURL:"",
-				pageCount:0,
-				isopen1:false,
-				isopen2:false,
-				isopen3:false,
-				ifRe: false,
-				Offline: false,
-				agreepersonlist: [],
-				showCar: {
-					ifshow: true,
-					num: '#'
-				},
-				addOrdersC: '地图切换',
-				modeList3: [{
-						modeName: 'P1-Car1'
-					},
-					{
-						modeName: 'P1-Car2'
-					},
-					{
-						modeName: 'P1-Car3'
-					},
-					{
-						modeName: 'P1-Car4'
-					},
-					{
-						modeName: 'P1-Car5'
-					},
-					{
-						modeName: 'P1-Car6'
-					},
-					{
-						modeName: 'P1-Car7'
-					},
-					{
-						modeName: 'P1-Car8'
-					}
-				],
-				addOrdersB: '选择模板下单',
-				modeList2: [{
-						modeName: 'P1-Car1'
-					},
-					{
-						modeName: 'P1-Car2'
-					},
-					{
-						modeName: 'P1-Car3'
-					},
-					{
-						modeName: 'P1-Car4'
-					},
-					{
-						modeName: 'P1-Car5'
-					},
-					{
-						modeName: 'P1-Car6'
-					},
-					{
-						modeName: 'P1-Car7'
-					},
-					{
-						modeName: 'P1-Car8'
-					}
-				],
-				ModeList: [ //模板总览数据
-					{
-						modeName: 'P1-Car1',
-						btnName: '开包任务',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'P1-Car2',
-						btnName: '开包任务',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'P1-Car3',
-						btnName: '开包任务',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'P1-Car4',
-						btnName: '开包任务',
-						carName: 'AMR04'
-					},
-					{
-						modeName: 'P2-Car1',
-						btnName: '备用任务',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'P2-Car2',
-						btnName: '备用任务',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'P2-Car3',
-						btnName: '备用任务',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'P2-Car4',
-						btnName: '备用任务',
-						carName: 'AMR04'
-					},
-					{
-						modeName: '充电桩1充电-Car1',
-						btnName: '充电桩1充电',
-						carName: 'AMR01'
-					},
-					{
-						modeName: '充电桩1充电-Car2',
-						btnName: '充电桩1充电',
-						carName: 'AMR02'
-					},
-					{
-						modeName: '充电桩1充电-Car3',
-						btnName: '充电桩1充电',
-						carName: 'AMR03'
-					},
-					{
-						modeName: '充电桩1充电-Car4',
-						btnName: '充电桩1充电',
-						carName: 'AMR04'
-					},
-					{
-						modeName: '充电桩2充电-Car1',
-						btnName: '充电桩2充电',
-						carName: 'AMR01'
-					},
-					{
-						modeName: '充电桩2充电-Car2',
-						btnName: '充电桩2充电',
-						carName: 'AMR02'
-					},
-					{
-						modeName: '充电桩2充电-Car3',
-						btnName: '充电桩2充电',
-						carName: 'AMR03'
-					},
-					{
-						modeName: '充电桩2充电-Car4',
-						btnName: '充电桩2充电',
-						carName: 'AMR04'
-					},
-					{
-						modeName: 'Lock_Car1',
-						btnName: '前往站点1',
-						carName: 'AMR01'
-					},
-					{
-						modeName: 'Lock_Car2',
-						btnName: '前往站点1',
-						carName: 'AMR02'
-					},
-					{
-						modeName: 'Lock_Car3',
-						btnName: '前往站点1',
-						carName: 'AMR03'
-					},
-					{
-						modeName: 'Lock_Car4',
-						btnName: '前往站点1',
-						carName: 'AMR04'
-					}
-				],
-				carbtn: [{
-						type:"kbrw",
-						btn_icon: 0,
-						btn_title: '任务状态'
-					},
-					{
-						type:"byrw",
-						btn_icon: 0,
-						btn_title: '在线控制'
-					}
-				],
-				singleVehicle: {
-					nickname: "cccc",
-				},
-				tempalteMode: '',
-				tempalteModes: '',
-				statusCarInfo: false, //正在执行车辆下方看板显示隐藏
-				CarInfoData: {
-					nickname: 'sss',
-					renwuname: '当前任务',
-					systemstatus: '系统任务',
-					datastatus: '数据状态',
-					movestatus: '移动状态',
-					dostatus: '动作状态',
-					elect: '电量',
-				},
-				templateDatas: [],
-				vehiclesDatas: [],
-				usersData: [],
-				dialogVisible: false,
-				value: '',
-				valuemap: '请选择',
-				valuemap1: '请选择',
-				carsindex: -1,
-				map_center: '',
-				my_scroll_wheel_zoom: '',
-				my_zoom: '',
-				carsinfordata: [
-				],
-				broderoptions: [{
-					value: '1',
-					label: '边组合'
-				}],
-				mapoptions: [{
-					value: '1',
-					label: '地图元素'
-				}],
-				coordinateoptions: [],
-				tableprop: [{
-						"prop": 'Id',
-						"label": 'ID',
-						"width": '116',
-					},
-					{
-						"prop": 'Status',
-						"label": '状态',
-						"width": '186',
-					},
-					{
-						"prop": 'ChildStatus',
-						"label": '子任务状态',
-						"width": '186',
-					},
-					{
-						"prop": 'template_name',
-						"label": '模版名称',
-						"width": '216',
-					},
-					{
-						"prop": 'StartEnd',
-						"label": '起点>终点',
-						"width": '166',
-					},
-					{
-						"prop": 'Type',
-						"label": '类型',
-						"width": '156',
-					},
-					{
-						"prop": 'create_time',
-						"label": '接收时间',
-						"width": '286',
-					},
-					// {
-					// 	"prop": 'Progress',
-					// 	"label": '完成进度',
-					// 	"width": '180',
-					// },
-					{
-						"prop": 'Cars',
-						"label": '执行车辆',
-						"width": '156',
-					},
-					// {
-					// 	"prop": 'OptionUser',
-					// 	"label": '操作用户',
-					// 	"width": '80',
-					// },
-					{
-						"prop": 'Option',
-						"label": '操作',
-						"width": '',
-					},
-				],
-				tableData: [],
-				menuList: [{
-						title: '车辆管理',
-						path: '/CarAdministration',
-						icon: 'Icon-cars IconFont',
-					},
-					{
-						title: '订单管理',
-						path: '/OrderAdministration',
-						icon: 'Icon-order IconFont',
-					},
-					{
-						title: '异常与日志',
-						path: '/',
-						icon: 'Icon-nomore IconFont',
-					},
-					{
-						title: '系统管理',
-						path: '/',
-						icon: 'Icon-system IconFont',
-					}
-				],
-				ifonline: 0,
-				pageSize:1,
-				pageSizes:1,
-				sj:null,
-				typeOptions:[
-					{
-					  value: '1',
-					  label: '队列中'
-					},
-					{
-					  value: '2',
-					  label: '已取消'
-					},
-					{
-					  value: '3',
-					  label: '执行中'
-					},
-					{
-					  value: '4',
-					  label: '已失败'
-					},
-					{
-					  value: '5',
-					  label: '已成功'
-					},
-					{
-					  value: '6',
-					  label: '已删除'
-					},
-					{
-					  value: '7',
-					  label: '手动暂停'
-					},
-					{
-					  value: '8',
-					  label: '暂停执行'
-					},
-					{
-					  value: '9',
-					  label: '已挂起'
-					},
-					{
-					  value: '10',
-					  label: '队列外'
-					}
-				],
-				filter_by_state:null
-			}
-		},
-		computed:{
-			optionSetting () {
-				return{
-					step: 0.3,
-					limitMoveNum:5,
-					hoverStop:true,//是否悬停
-					openWatch: true, // 开启数据实时监控刷新dom
-					singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
-					singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
-					waitTime: 10000 // 单步运动停止的时间(默认值1000ms)
-				}
-			}
-		},
-		components: {
-			OrdersInfo
-		},
-		mounted() {
-			clearInterval(this.sj)
-			let that = this;
-			this.js = setInterval(()=>{//实时更新数据
-				that.getVehicle();
-				that.GetTemplate();
-				that.gettempalteMode()
-				that.Getorder();
-				that.getbuttonstats();
-				that.alarmList()
-			 },3000)
-		},
-		beforeRouteLeave(to, from, next){
-			next();
-			if (this.sj) {
-			  clearInterval(this.sj)
-			  this.sj = null;
-			}
-		},
-		methods: {
-			//告警信息
-			alarmList() {
-				alarmInformation().then(res => {
-					this.agreepersonlist = res.resultData.result
-					this.agreepersonlist.push()
-					this.$refs.myScoll.reset();
-				})
-			},
-			getbuttonstats(){
-				getbuttonstat().then(res => {
-					// console.log(res)
-					if (res.resultData) {
-						if(res.resultData[0].mission_boutton==1){
-							this.isopen1==true
-							this.carbtn[0].btn_icon=1;
-						}
-						else{
-							this.isopen1==false
-							this.carbtn[0].btn_icon=0;
-						}
-						
-						if(res.resultData[1].mission_boutton==1){
-							this.isopen2==true
-							this.carbtn[1].btn_icon=1;
-						}
-						else{
-							this.isopen2==false
-							this.carbtn[1].btn_icon=0;
-						}
-						
-						if(res.resultData[2].mission_boutton==1){
-							this.isopen3==true
-							this.carbtn[2].btn_icon=1;
-						}
-						else{
-							this.isopen3==false
-							this.carbtn[2].btn_icon=0;
-						}
-					}
-				})
-			},
-			filterChange(){
-				if(this.filter_by_state){
-					this.pageSize = 1;
-					this.Getorder();
-				}
-			},
-			changePage(e){
-				this.pageSize = e;
-				this.Getorder();
-			},
-			setVehicleStatusTo(data) { //控制车辆状态公用接口
-				setVehicleStatus(data).then(res => {
-					console.log(res)
-					if (res) {
-						this.ifonline = 1;
-					}
-				})
-			},
-			pathOnlock() { //路径解锁
-				this.$confirm('是否解锁路径?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					Deblock().then(res => {
-						if(res){
-							this.$message({
-								type: 'info',
-								duration: 800,
-								message: res.Message
-							});
-						}
-					})
-				}).catch(() => {
-				});
-			},
-			goMap() { //地图全屏
-				this.ifRe = !this.ifRe;
-			},
-			showDetial(Id){
-				// let data = {
-				// 	order_id:Id
-				// }
-				getOrdersByIds(Id).then(res => {
-					if(res){
-						this.$refs.OrdersInfo.modelData=res;
-						this.$refs.OrdersInfo.dialogVisible = true;
-					}
-				})
-			},
-			thisOrderStop(Id) { //当前订单暂停
-				let data = {
-					order_id:Id,
-					command_type:"CMD_ORDER_HELD"
-				}
-				this.$confirm('是否暂停该任务?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					SetOrders(data).then(res => {
-						if(res){
-							this.$message({
-								type: 'info',
-								duration: 800,
-								message: "操作成功"
-							});
-						}
-					})
-				}).catch(() => {
-				});
-			},
-			thisOrderRun(Id){
-				let data = {
-					order_id:Id,
-					command_type:"CMD_ORDER_CONTINUE_FROM_HELD"
-				}
-				this.$confirm('是否继续该任务?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					SetOrders(data).then(res => {
-						if(res){
-							this.$message({
-								type: 'info',
-								duration: 800,
-								message: "操作成功"
-							});
-						}
-					})
-				}).catch(() => {
-				});
-			},
-			thisOrderClres(Id) { //当前订单取消
-				let data = {
-					order_id:Id,
-					command_type:"CMD_ORDER_CANCEL"
-				}
-				this.$confirm('是否取消该任务?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					SetOrders(data).then(res => {
-						if(res){
-							this.$message({
-								type: 'info',
-								duration: 800,
-								message: "操作成功"
-							});
-						}
-					})
-				}).catch(() => {
-				});
-			},
-			addOrders(name) { //下拉模板下单
-				this.$confirm('将添加'+name+'为新的任务订单?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let data = {
-						template_name: name
-					}
-					ordersTemplate(data).then(res => {
-						console.log(res)
-						this.Getorder();
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '下单成功!'
-						});
-					})
-				}).catch(() => {
-					this.$message({
-						type: 'info',
-						duration: 800,
-						message: '已取消操作'
-					});
-				});
-			},
-			bindOrder(row) { //模板总览-绑定订单
-				console.log(row)
-				this.$confirm('将添加'+row.modeName+'为新的任务订单?', '提示', {
-					confirmButtonText: '确定',
-					cancelButtonText: '取消',
-					type: 'warning'
-				}).then(() => {
-					let data = {
-						template_name: row.modeName
-					}
-					ordersTemplate(data).then(res => {
-						console.log(res)
-						this.Getorder();
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '下单成功!'
-						});
-					})
-				}).catch(() => {
-					this.$message({
-						type: 'info',
-						duration: 800,
-						message: '已取消操作'
-					});
-				});
+import {
+  GetUsers,
+  getVehicles,
+  Getorders,
+  GetTemplates,
+  GetTemplateslist,
+  getVehicleByIds,
+  ordersTemplate,
+  setVehicleStatus,
+  setVehicleFace,
+  Deblock,
+  SetOrders,
+  Changestat,
+  getOrdersByIds,
+  Changestat2,
+  keepCarOnline,
+  Changestat3,
+  Dbalarm,
+  getbuttonstat,
+  alarmInformation,
+  mapIp,
+} from "@/api/request.js";
+import OrdersInfo from "../../components/OrdersInfo.vue";
+export default {
+  data() {
+    return {
+      // heighter: '100%',
+      mapURL: "",
+      pageCount: 0,
+      isopen1: false,
+      isopen2: false,
+      isopen3: false,
+      ifRe: false,
+      Offline: false,
+      agreepersonlist: [],
+      showCar: {
+        ifshow: true,
+        num: "#",
+      },
+      addOrdersC: "地图切换",
+      modeList3: [
+        {
+          modeName: "P1-Car1",
+        },
+        {
+          modeName: "P1-Car2",
+        },
+        {
+          modeName: "P1-Car3",
+        },
+        {
+          modeName: "P1-Car4",
+        },
+        {
+          modeName: "P1-Car5",
+        },
+        {
+          modeName: "P1-Car6",
+        },
+        {
+          modeName: "P1-Car7",
+        },
+        {
+          modeName: "P1-Car8",
+        },
+      ],
+      addOrdersB: "选择模板下单",
+      modeList2: [
+        {
+          modeName: "P1-Car1",
+        },
+        {
+          modeName: "P1-Car2",
+        },
+        {
+          modeName: "P1-Car3",
+        },
+        {
+          modeName: "P1-Car4",
+        },
+        {
+          modeName: "P1-Car5",
+        },
+        {
+          modeName: "P1-Car6",
+        },
+        {
+          modeName: "P1-Car7",
+        },
+        {
+          modeName: "P1-Car8",
+        },
+      ],
+      ModeList: [
+        //模板总览数据
+        {
+          modeName: "P1-Car1",
+          btnName: "开包任务",
+          carName: "AMR01",
+        },
+        {
+          modeName: "P1-Car2",
+          btnName: "开包任务",
+          carName: "AMR02",
+        },
+        {
+          modeName: "P1-Car3",
+          btnName: "开包任务",
+          carName: "AMR03",
+        },
+        {
+          modeName: "P1-Car4",
+          btnName: "开包任务",
+          carName: "AMR04",
+        },
+        {
+          modeName: "P2-Car1",
+          btnName: "备用任务",
+          carName: "AMR01",
+        },
+        {
+          modeName: "P2-Car2",
+          btnName: "备用任务",
+          carName: "AMR02",
+        },
+        {
+          modeName: "P2-Car3",
+          btnName: "备用任务",
+          carName: "AMR03",
+        },
+        {
+          modeName: "P2-Car4",
+          btnName: "备用任务",
+          carName: "AMR04",
+        },
+        {
+          modeName: "充电桩1充电-Car1",
+          btnName: "充电桩1充电",
+          carName: "AMR01",
+        },
+        {
+          modeName: "充电桩1充电-Car2",
+          btnName: "充电桩1充电",
+          carName: "AMR02",
+        },
+        {
+          modeName: "充电桩1充电-Car3",
+          btnName: "充电桩1充电",
+          carName: "AMR03",
+        },
+        {
+          modeName: "充电桩1充电-Car4",
+          btnName: "充电桩1充电",
+          carName: "AMR04",
+        },
+        {
+          modeName: "充电桩2充电-Car1",
+          btnName: "充电桩2充电",
+          carName: "AMR01",
+        },
+        {
+          modeName: "充电桩2充电-Car2",
+          btnName: "充电桩2充电",
+          carName: "AMR02",
+        },
+        {
+          modeName: "充电桩2充电-Car3",
+          btnName: "充电桩2充电",
+          carName: "AMR03",
+        },
+        {
+          modeName: "充电桩2充电-Car4",
+          btnName: "充电桩2充电",
+          carName: "AMR04",
+        },
+        {
+          modeName: "Lock_Car1",
+          btnName: "前往站点1",
+          carName: "AMR01",
+        },
+        {
+          modeName: "Lock_Car2",
+          btnName: "前往站点1",
+          carName: "AMR02",
+        },
+        {
+          modeName: "Lock_Car3",
+          btnName: "前往站点1",
+          carName: "AMR03",
+        },
+        {
+          modeName: "Lock_Car4",
+          btnName: "前往站点1",
+          carName: "AMR04",
+        },
+      ],
+      carbtn: [
+        {
+          type: "kbrw",
+          btn_icon: 0,
+          btn_title: "任务状态",
+        },
+        {
+          type: "byrw",
+          btn_icon: 0,
+          btn_title: "在线控制",
+        },
+      ],
+      singleVehicle: {
+        nickname: "cccc",
+      },
+      tempalteMode: "",
+      tempalteModes: "",
+      statusCarInfo: false, //正在执行车辆下方看板显示隐藏
+      CarInfoData: {
+        nickname: "sss",
+        renwuname: "当前任务",
+        systemstatus: "系统任务",
+        datastatus: "数据状态",
+        movestatus: "移动状态",
+        dostatus: "动作状态",
+        elect: "电量",
+      },
+      templateDatas: [],
+      vehiclesDatas: [],
+      usersData: [],
+      dialogVisible: false,
+      value: "",
+      valuemap: "请选择",
+      valuemap1: "请选择",
+      carsindex: -1,
+      map_center: "",
+      my_scroll_wheel_zoom: "",
+      my_zoom: "",
+      carsinfordata: [],
+      broderoptions: [
+        {
+          value: "1",
+          label: "边组合",
+        },
+      ],
+      mapoptions: [
+        {
+          value: "1",
+          label: "地图元素",
+        },
+      ],
+      coordinateoptions: [],
+      tableprop: [
+        {
+          prop: "Id",
+          label: "ID",
+          width: "116",
+        },
+        {
+          prop: "Status",
+          label: "状态",
+          width: "186",
+        },
+        {
+          prop: "ChildStatus",
+          label: "子任务状态",
+          width: "186",
+        },
+        {
+          prop: "template_name",
+          label: "模版名称",
+          width: "216",
+        },
+        {
+          prop: "StartEnd",
+          label: "起点>终点",
+          width: "166",
+        },
+        {
+          prop: "Type",
+          label: "类型",
+          width: "156",
+        },
+        {
+          prop: "create_time",
+          label: "接收时间",
+          width: "286",
+        },
+        // {
+        // 	"prop": 'Progress',
+        // 	"label": '完成进度',
+        // 	"width": '180',
+        // },
+        {
+          prop: "Cars",
+          label: "执行车辆",
+          width: "156",
+        },
+        // {
+        // 	"prop": 'OptionUser',
+        // 	"label": '操作用户',
+        // 	"width": '80',
+        // },
+        {
+          prop: "Option",
+          label: "操作",
+          width: "",
+        },
+      ],
+      tableData: [],
+      menuList: [
+        {
+          title: "车辆管理",
+          path: "/CarAdministration",
+          icon: "Icon-cars IconFont",
+        },
+        {
+          title: "订单管理",
+          path: "/OrderAdministration",
+          icon: "Icon-order IconFont",
+        },
+        {
+          title: "异常与日志",
+          path: "/",
+          icon: "Icon-nomore IconFont",
+        },
+        {
+          title: "系统管理",
+          path: "/",
+          icon: "Icon-system IconFont",
+        },
+      ],
+      ifonline: 0,
+      pageSize: 1,
+      pageSizes: 1,
+      sj: null,
+      typeOptions: [
+        {
+          value: "1",
+          label: "队列中",
+        },
+        {
+          value: "2",
+          label: "已取消",
+        },
+        {
+          value: "3",
+          label: "执行中",
+        },
+        {
+          value: "4",
+          label: "已失败",
+        },
+        {
+          value: "5",
+          label: "已成功",
+        },
+        {
+          value: "6",
+          label: "已删除",
+        },
+        {
+          value: "7",
+          label: "手动暂停",
+        },
+        {
+          value: "8",
+          label: "暂停执行",
+        },
+        {
+          value: "9",
+          label: "已挂起",
+        },
+        {
+          value: "10",
+          label: "队列外",
+        },
+      ],
+      filter_by_state: null,
+      mapurl: "",
+    };
+  },
+  computed: {
+    optionSetting() {
+      return {
+        step: 0.3,
+        limitMoveNum: 5,
+        hoverStop: true, //是否悬停
+        openWatch: true, // 开启数据实时监控刷新dom
+        singleHeight: 0, // 单步运动停止的高度(默认值0是无缝不停止的滚动) direction => 0/1
+        singleWidth: 0, // 单步运动停止的宽度(默认值0是无缝不停止的滚动) direction => 2/3
+        waitTime: 10000, // 单步运动停止的时间(默认值1000ms)
+      };
+    },
+  },
+  components: {
+    OrdersInfo,
+  },
+  mounted() {
+    clearInterval(this.sj);
+    let that = this;
+    this.js = setInterval(() => {
+      //实时更新数据
+      that.getVehicle();
+      that.GetTemplate();
+      that.gettempalteMode();
+      that.Getorder();
+      that.getbuttonstats();
+      that.alarmList();
+      that.getmapurl();
+    }, 3000);
+  },
+  beforeRouteLeave(to, from, next) {
+    next();
+    if (this.sj) {
+      clearInterval(this.sj);
+      this.sj = null;
+    }
+  },
+  methods: {
+    //地图地址获取
+    getmapurl() {
+      mapIp().then((res) => {
+        if (res.resultCode == 1) {
+          this.mapurl = res.resultData;
+        }
+      });
+    },
+    //告警信息
+    alarmList() {
+      alarmInformation().then((res) => {
+        this.agreepersonlist = res.resultData.result;
+        this.agreepersonlist.push();
+        this.$refs.myScoll.reset();
+      });
+    },
+    getbuttonstats() {
+      getbuttonstat().then((res) => {
+        // console.log(res)
+        if (res.resultData) {
+          if (res.resultData[0].mission_boutton == 1) {
+            this.isopen1 == true;
+            this.carbtn[0].btn_icon = 1;
+          } else {
+            this.isopen1 == false;
+            this.carbtn[0].btn_icon = 0;
+          }
 
-			},
-			activeCar(index) { //切换车辆信息
-				this.showCar.num = index + 1
-			},
-			map_handler(e) {
-			},
-			serchCarStatus(valuemap) {
-				this.statusCarInfo = true
-			},
-			changestatus(item, index) { //车辆调度上线
-				
-				this.carsindex = index;
-				if (item.dispatchstatues == '1') {
-					let data = {
-							command_type: 'CMD_VEHICLE_UPDATE_ONLINE',
-							param1:0,
-							vehicle_id: item.id
-						};
-					item.dispatchstatues = '0'
-					this.setVehicleStatusTo(data)
-					if (this.ifonline) {
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '下线成功!'
-						});
-					} else {
-					}
-				} else {
-					let data = {
-							command_type: 'CMD_VEHICLE_UPDATE_ONLINE',
-							param1:1,
-							vehicle_id: item.id
-						};
-					item.dispatchstatues = '1'
-					this.setVehicleStatusTo(data)
-					if (this.ifonline) {
-						this.$message({
-							type: 'success',
-							duration: 800,
-							message: '上线成功!'
-						});
-					} else {
-					}
-				}
-				
-			},
-			changeCarbtn(item, index) {
-				if (item.btn_icon == '1') {
-					let data = {
-						state:"0"
-					}
-					if(index == 0){
-						Changestat(data).then(res => {				
-							item.btn_icon = '0';
-							sessionStorage.setItem("isopen1",false);
-							this.isopen1 = false;
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '关闭开包任务成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-					else if(index == 1){
-						Changestat2(data).then(res => {
-							item.btn_icon = '0';
-							this.isopen2 = false;
-							sessionStorage.setItem("isopen2",false);
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '关闭备用任务成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-					else{
-						keepCarOnline(data).then(res => {
-							item.btn_icon = '0';
-							this.isopen3 = false;
-							sessionStorage.setItem("isopen3",false);
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '关闭小车在线控制成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-				} else {
-					let data = {
-						state:"1"
-					}
-					if(index == 0){
-						Changestat(data).then(res => {
-							item.btn_icon = '1'
-							this.isopen1 = true;
-							sessionStorage.setItem("isopen1",true);
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '执行开包任务成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-					else if(index == 1){
-						Changestat2(data).then(res => {
-							item.btn_icon = '1'
-							this.isopen2 = true;
-							sessionStorage.setItem("isopen2",true);
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '执行备用任务成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-					else if(index == 2){
-						keepCarOnline(data).then(res => {
-							item.btn_icon = '1'
-							this.isopen3 = true;
-							sessionStorage.setItem("isopen3",true);
-							this.$message({
-								type: 'success',
-								duration: 800,
-								message: '执行小车在线控制成功!'
-							});
-						}).catch(() =>{
-							this.$message({
-								type: 'error',
-								duration: 800,
-								message: '执行失败!'
-							});
-						})
-					}
-				}
-			},
-			goPage(item) { //路由跳转
-				this.$router.push(item.path);
-			},
-			closeDialog() {
-				this.dialogVisible = false;
-			},
-			showModels() {
-				this.dialogVisible = true;
-			},
+          if (res.resultData[1].mission_boutton == 1) {
+            this.isopen2 == true;
+            this.carbtn[1].btn_icon = 1;
+          } else {
+            this.isopen2 == false;
+            this.carbtn[1].btn_icon = 0;
+          }
 
-			getVehicle() {
-				let json = {
-					page:this.pageSizes,
-					pagie:99
-				}
-				//获取全部车辆
-				getVehicles(json)
-					.then(res => {
-						// console.log(res, '车辆信息')
-						let vehiclesData = JSON.parse(JSON.stringify(res.vehicles));
-						this.vehiclesDatas = vehiclesData;
-						this.carsinfordata = [];
-						for (let index in vehiclesData) {
-							let item = {
-								id:vehiclesData[index].id,
-								title: vehiclesData[index].nickname,
-								elect: vehiclesData[index].battery + "%",
-							}
-							let coordinateoptions = {
-								value: '',
-								label: ''
-							}
-							if(vehiclesData[index].is_online == 0){
-								item['dispatchstatues'] = 0;
-							}
-							else{
-								item['dispatchstatues'] = 1;
-							}
-							if (vehiclesData[index].sys_state == "UNKNOWN") {
-								item["statues"] = "离线";
-								coordinateoptions['value'] = index + 1;
-								coordinateoptions['label'] = vehiclesData[index].nickname
-								this.coordinateoptions.push(coordinateoptions)
-								console.log(this.coordinateoptions)
-							} else if (vehiclesData[index].sys_state == "UNAVAILABLE") {
-								item["statues"] = "不可执行";
-							} else if (vehiclesData[index].sys_state == "IDLE") {
-								item["statues"] = "空闲中";
-							} else if (vehiclesData[index].sys_state == "EXECUTING") {
-								item["statues"] = "执行中";
-							} else if (vehiclesData[index].sys_state == "ERROR") {
-								item["statues"] = "状态出错";
-							} else if (vehiclesData[index].sys_state == "CHARGING") {
-								item["statues"] = "充电中";
-							} else {
-								item["statues"] = "避障中";
-							}
-							this.carsinfordata.push(item);
-						}
-					})
-			},
-			gettempalteMode() {
-				GetTemplateslist().then(res => {
-					// alert(JSON.stringify(res))
-					this.tempalteMode = res.templates
-				})
-			},
+          if (res.resultData[2].mission_boutton == 1) {
+            this.isopen3 == true;
+            this.carbtn[2].btn_icon = 1;
+          } else {
+            this.isopen3 == false;
+            this.carbtn[2].btn_icon = 0;
+          }
+        }
+      });
+    },
+    filterChange() {
+      if (this.filter_by_state) {
+        this.pageSize = 1;
+        this.Getorder();
+      }
+    },
+    changePage(e) {
+      this.pageSize = e;
+      this.Getorder();
+    },
+    setVehicleStatusTo(data) {
+      //控制车辆状态公用接口
+      setVehicleStatus(data).then((res) => {
+        console.log(res);
+        if (res) {
+          this.ifonline = 1;
+        }
+      });
+    },
+    pathOnlock() {
+      //路径解锁
+      this.$confirm("是否解锁路径?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          Deblock().then((res) => {
+            if (res) {
+              this.$message({
+                type: "info",
+                duration: 800,
+                message: res.Message,
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    goMap() {
+      //地图全屏
+      this.ifRe = !this.ifRe;
+    },
+    showDetial(Id) {
+      // let data = {
+      // 	order_id:Id
+      // }
+      getOrdersByIds(Id).then((res) => {
+        if (res) {
+          this.$refs.OrdersInfo.modelData = res;
+          this.$refs.OrdersInfo.dialogVisible = true;
+        }
+      });
+    },
+    thisOrderStop(Id) {
+      //当前订单暂停
+      let data = {
+        order_id: Id,
+        command_type: "CMD_ORDER_HELD",
+      };
+      this.$confirm("是否暂停该任务?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          SetOrders(data).then((res) => {
+            if (res) {
+              this.$message({
+                type: "info",
+                duration: 800,
+                message: "操作成功",
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    thisOrderRun(Id) {
+      let data = {
+        order_id: Id,
+        command_type: "CMD_ORDER_CONTINUE_FROM_HELD",
+      };
+      this.$confirm("是否继续该任务?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          SetOrders(data).then((res) => {
+            if (res) {
+              this.$message({
+                type: "info",
+                duration: 800,
+                message: "操作成功",
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    thisOrderClres(Id) {
+      //当前订单取消
+      let data = {
+        order_id: Id,
+        command_type: "CMD_ORDER_CANCEL",
+      };
+      this.$confirm("是否取消该任务?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          SetOrders(data).then((res) => {
+            if (res) {
+              this.$message({
+                type: "info",
+                duration: 800,
+                message: "操作成功",
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+    addOrders(name) {
+      //下拉模板下单
+      this.$confirm("将添加" + name + "为新的任务订单?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let data = {
+            template_name: name,
+          };
+          ordersTemplate(data).then((res) => {
+            console.log(res);
+            this.Getorder();
+            this.$message({
+              type: "success",
+              duration: 800,
+              message: "下单成功!",
+            });
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "已取消操作",
+          });
+        });
+    },
+    bindOrder(row) {
+      //模板总览-绑定订单
+      console.log(row);
+      this.$confirm("将添加" + row.modeName + "为新的任务订单?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let data = {
+            template_name: row.modeName,
+          };
+          ordersTemplate(data).then((res) => {
+            console.log(res);
+            this.Getorder();
+            this.$message({
+              type: "success",
+              duration: 800,
+              message: "下单成功!",
+            });
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            duration: 800,
+            message: "已取消操作",
+          });
+        });
+    },
+    activeCar(index) {
+      //切换车辆信息
+      this.showCar.num = index + 1;
+    },
+    map_handler(e) {},
+    serchCarStatus(valuemap) {
+      this.statusCarInfo = true;
+    },
+    changestatus(item, index) {
+      //车辆调度上线
 
-			//获取全部订单
-			Getorder() {
-				let json = {
-					page:this.pageSize,
-					filter_by_state:this.filter_by_state
-				}
-				Getorders(json)
-					.then(res => {
-						let orderData = JSON.parse(JSON.stringify(res.orders));
-						this.tableData = [];
-						this.pageCount = res.total;
-						for (let index in orderData) {
-							let item = {
-								"template_name": orderData[index].template_id,
-								"Id": orderData[index].id,
-								"Status": orderData[index].order_state,
-								"ChildStatus": '1',
-								"ModelName": orderData[index].template_id,
-								"StartEnd": orderData[index].start_station_name + "/" + orderData[index].end_station_name,
-								"Type": orderData[index].order_type,
-								"Time": orderData[index].create_time,
-								"Progress": (Number(orderData[index].total_distance)-Number(orderData[index].distance))/Number(orderData[index].total_distance)*100 + "%",
-								"Cars": orderData[index].execute_vehicle_id,
-								"OptionUser": orderData[index].user_id,
-								"order_state":orderData[index].order_state,
-								"create_time":orderData[index].create_time
-							}
-							
-							if(orderData[index].total_distance==0){
-								item.Progress = 0;
-							}
-							if (orderData[index].order_state == "QUEUEING") {
-								item.Status = "正在排队";
-							} else if (orderData[index].order_state == "CANCELLED") {
-								item.Status = "订单被取消";
-							} else if (orderData[index].order_state == "EXECUTING") {
-								item.Status = "正在执行";
-								this.singleVehicle.orderName = orderData[index].battery
-								this.getVehicleById(orderData[index].execute_vehicle_id);
-							} else if (orderData[index].order_state == "FAILED") {
-								item.Status = "订单未能成功执行完";
-							} else if (orderData[index].order_state == "DELETED") {
-								item.Status = "订单被删除";
-							} else if (orderData[index].order_state == "SUCCESS") {
-								item.Status = "订单被成功执行完";
-							} else if (orderData[index].order_state == "HELD") {
-								item.Status = "在执行中手动暂停任务";
-							} else if (orderData[index].order_state == "REJECTED") {
-								item.Status = "暂停执行";
-							} else if (orderData[index].order_state == "HANG") {
-								item.Status = "因为错误导致暂停执行 ";
-							} else if (orderData[index].order_state == "QUEUED") {
-								item.Status = "正在排队 ";
-							} else {
-								item.Status = "未知 ";
-							}
+      this.carsindex = index;
+      if (item.dispatchstatues == "1") {
+        let data = {
+          command_type: "CMD_VEHICLE_UPDATE_ONLINE",
+          param1: 0,
+          vehicle_id: item.id,
+        };
+        item.dispatchstatues = "0";
+        this.setVehicleStatusTo(data);
+        if (this.ifonline) {
+          this.$message({
+            type: "success",
+            duration: 800,
+            message: "下线成功!",
+          });
+        } else {
+        }
+      } else {
+        let data = {
+          command_type: "CMD_VEHICLE_UPDATE_ONLINE",
+          param1: 1,
+          vehicle_id: item.id,
+        };
+        item.dispatchstatues = "1";
+        this.setVehicleStatusTo(data);
+        if (this.ifonline) {
+          this.$message({
+            type: "success",
+            duration: 800,
+            message: "上线成功!",
+          });
+        } else {
+        }
+      }
+    },
+    changeCarbtn(item, index) {
+      if (item.btn_icon == "1") {
+        let data = {
+          state: "0",
+        };
+        if (index == 0) {
+          Changestat(data)
+            .then((res) => {
+              item.btn_icon = "0";
+              sessionStorage.setItem("isopen1", false);
+              this.isopen1 = false;
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "关闭开包任务成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        } else if (index == 1) {
+          Changestat2(data)
+            .then((res) => {
+              item.btn_icon = "0";
+              this.isopen2 = false;
+              sessionStorage.setItem("isopen2", false);
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "关闭备用任务成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        } else {
+          keepCarOnline(data)
+            .then((res) => {
+              item.btn_icon = "0";
+              this.isopen3 = false;
+              sessionStorage.setItem("isopen3", false);
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "关闭小车在线控制成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        }
+      } else {
+        let data = {
+          state: "1",
+        };
+        if (index == 0) {
+          Changestat(data)
+            .then((res) => {
+              item.btn_icon = "1";
+              this.isopen1 = true;
+              sessionStorage.setItem("isopen1", true);
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "执行开包任务成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        } else if (index == 1) {
+          Changestat2(data)
+            .then((res) => {
+              item.btn_icon = "1";
+              this.isopen2 = true;
+              sessionStorage.setItem("isopen2", true);
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "执行备用任务成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        } else if (index == 2) {
+          keepCarOnline(data)
+            .then((res) => {
+              item.btn_icon = "1";
+              this.isopen3 = true;
+              sessionStorage.setItem("isopen3", true);
+              this.$message({
+                type: "success",
+                duration: 800,
+                message: "执行小车在线控制成功!",
+              });
+            })
+            .catch(() => {
+              this.$message({
+                type: "error",
+                duration: 800,
+                message: "执行失败!",
+              });
+            });
+        }
+      }
+    },
+    goPage(item) {
+      //路由跳转
+      this.$router.push(item.path);
+    },
+    closeDialog() {
+      this.dialogVisible = false;
+    },
+    showModels() {
+      this.dialogVisible = true;
+    },
 
-							if (orderData[index].order_type == "NORMAL") {
-								item.Type = "工作任务";
-							} else if (orderData[index].order_type == "CHARGE") {
-								item.Type = "调度任务 ";
-							} else {
-								item.Type = "其他任务";
-							}
-							for (let key1 in this.usersData) {
-								if (this.usersData[key1].id == orderData[index].user_id) {
-									item.OptionUser = this.usersData[key1].username;
-								}
-							}
-							for (let key in this.vehiclesDatas) {
-								if (this.vehiclesDatas[key].id == orderData[index].execute_vehicle_id) {
-									item.Cars = this.vehiclesDatas[key].nickname;
-								}
-							}
-							for (let te in this.tempalteMode) {
-								if (this.tempalteMode[te].id == orderData[index].template_id) {
-									item.ModelName = this.tempalteMode[te].template_name;
-									item.template_name = this.tempalteMode[te].template_name
-								}
-							}
-							let num = orderData[index].executing_index;
-							let missions =  orderData[index].mission;
-							let result_strs=""
-							if(missions[num]&&missions[num].result_str){
-								result_strs = missions[num].result_str;
-							}
-							result_strs=result_strs.substr(0,result_strs.length-1);
-							item.ChildStatus = result_strs;
-							this.tableData.push(item);
-						}
-					})
-			},
-			//获取全部用户
-			GetUser() {
-				GetUsers()
-					.then(res => {
-						this.usersData = JSON.parse(JSON.stringify(res.UsersManagement));
-					})
-			},
-			//获取全部订单模板
-			GetTemplate() {
-				// GetTemplates()
-				// 	.then(res => {
-				// 		console.log(res.templates);
-				// 		this.templateDatas = JSON.parse(JSON.stringify(res.templates));
-				// 	})
-			},
-			getVehicleById(id) {
-				getVehicleByIds()
-					.then(res => {
-						this.singleVehicle = JSON.parse(JSON.stringify(res));
-					})
-			}
-		},
-		async created() {
-			if(sessionStorage.getItem("isopen1")){
-				this.isopen1 =  sessionStorage.getItem("isopen1");
-				if(this.isopen1==true){
-					this.carbtn[0].btn_icon=1
-				}
-				else{
-					this.carbtn[0].btn_icon=0
-				}
-			}
-			if(sessionStorage.getItem("isopen2")){
-				this.isopen2 =  sessionStorage.getItem("isopen2");
-				if(this.isopen2==true){
-					this.carbtn[1].btn_icon=1
-				}
-				else{
-					this.carbtn[1].btn_icon=0
-				}
-			}
-			this.GetUser();
-			this.getVehicle();
-			this.GetTemplate();
-			this.gettempalteMode()
-			this.Getorder();
-		}
-	}
+    getVehicle() {
+      let json = {
+        page: this.pageSizes,
+        perpage: 99,
+      };
+      //获取全部车辆
+      getVehicles(json).then((res) => {
+        // console.log(res, '车辆信息')
+        let vehiclesData = JSON.parse(
+          JSON.parse(JSON.stringify(res.resultData))
+        ).vehicles;
+        // console.log(vehiclesData.vehicles, "vehiclesData");
+        this.vehiclesDatas = vehiclesData;
+        this.carsinfordata = [];
+        for (let index in vehiclesData) {
+          let item = {
+            id: vehiclesData[index].id,
+            title: vehiclesData[index].nickname,
+            elect: vehiclesData[index].battery + "%",
+          };
+          let coordinateoptions = {
+            value: "",
+            label: "",
+          };
+          if (vehiclesData[index].is_online == 0) {
+            item["dispatchstatues"] = 0;
+          } else {
+            item["dispatchstatues"] = 1;
+          }
+          if (vehiclesData[index].sys_state == "UNKNOWN") {
+            item["statues"] = "离线";
+            coordinateoptions["value"] = index + 1;
+            coordinateoptions["label"] = vehiclesData[index].nickname;
+            this.coordinateoptions.push(coordinateoptions);
+            console.log(this.coordinateoptions);
+          } else if (vehiclesData[index].sys_state == "UNAVAILABLE") {
+            item["statues"] = "不可执行";
+          } else if (vehiclesData[index].sys_state == "IDLE") {
+            item["statues"] = "空闲中";
+          } else if (vehiclesData[index].sys_state == "EXECUTING") {
+            item["statues"] = "执行中";
+          } else if (vehiclesData[index].sys_state == "ERROR") {
+            item["statues"] = "状态出错";
+          } else if (vehiclesData[index].sys_state == "CHARGING") {
+            item["statues"] = "充电中";
+          } else {
+            item["statues"] = "避障中";
+          }
+          this.carsinfordata.push(item);
+          // console.log(this.carsinfordata, "this.carsinfordata");
+        }
+      });
+    },
+    gettempalteMode() {
+      GetTemplateslist().then((res) => {
+        // alert(JSON.stringify(res))
+        this.tempalteMode = res.templates;
+      });
+    },
+
+    //获取全部订单
+    Getorder() {
+      let json = {
+        page: this.pageSize,
+        filter_by_state: this.filter_by_state,
+      };
+      Getorders(json).then((res) => {
+        let orderData = JSON.parse(
+          JSON.parse(JSON.stringify(res.resultData))
+        ).orders;
+        this.tableData = [];
+        this.pageCount = JSON.parse(
+          JSON.parse(JSON.stringify(res.resultData))
+        ).total;
+        for (let index in orderData) {
+          let item = {
+            template_name: orderData[index].template_id,
+            Id: orderData[index].id,
+            Status: orderData[index].order_state,
+            ChildStatus: "1",
+            ModelName: orderData[index].template_id,
+            StartEnd:
+              orderData[index].start_station_name +
+              "/" +
+              orderData[index].end_station_name,
+            Type: orderData[index].order_type,
+            Time: orderData[index].create_time,
+            Progress:
+              ((Number(orderData[index].total_distance) -
+                Number(orderData[index].distance)) /
+                Number(orderData[index].total_distance)) *
+                100 +
+              "%",
+            Cars: orderData[index].execute_vehicle_id,
+            OptionUser: orderData[index].user_id,
+            order_state: orderData[index].order_state,
+            create_time: orderData[index].create_time,
+          };
+
+          if (orderData[index].total_distance == 0) {
+            item.Progress = 0;
+          }
+          if (orderData[index].order_state == "QUEUEING") {
+            item.Status = "正在排队";
+          } else if (orderData[index].order_state == "CANCELLED") {
+            item.Status = "订单被取消";
+          } else if (orderData[index].order_state == "EXECUTING") {
+            item.Status = "正在执行";
+            this.singleVehicle.orderName = orderData[index].battery;
+            this.getVehicleById(orderData[index].execute_vehicle_id);
+          } else if (orderData[index].order_state == "FAILED") {
+            item.Status = "订单未能成功执行完";
+          } else if (orderData[index].order_state == "DELETED") {
+            item.Status = "订单被删除";
+          } else if (orderData[index].order_state == "SUCCESS") {
+            item.Status = "订单被成功执行完";
+          } else if (orderData[index].order_state == "HELD") {
+            item.Status = "在执行中手动暂停任务";
+          } else if (orderData[index].order_state == "REJECTED") {
+            item.Status = "暂停执行";
+          } else if (orderData[index].order_state == "HANG") {
+            item.Status = "因为错误导致暂停执行 ";
+          } else if (orderData[index].order_state == "QUEUED") {
+            item.Status = "正在排队 ";
+          } else {
+            item.Status = "未知 ";
+          }
+
+          if (orderData[index].order_type == "NORMAL") {
+            item.Type = "工作任务";
+          } else if (orderData[index].order_type == "CHARGE") {
+            item.Type = "调度任务 ";
+          } else {
+            item.Type = "其他任务";
+          }
+          for (let key1 in this.usersData) {
+            if (this.usersData[key1].id == orderData[index].user_id) {
+              item.OptionUser = this.usersData[key1].username;
+            }
+          }
+          for (let key in this.vehiclesDatas) {
+            if (
+              this.vehiclesDatas[key].id == orderData[index].execute_vehicle_id
+            ) {
+              item.Cars = this.vehiclesDatas[key].nickname;
+            }
+          }
+          for (let te in this.tempalteMode) {
+            if (this.tempalteMode[te].id == orderData[index].template_id) {
+              item.ModelName = this.tempalteMode[te].template_name;
+              item.template_name = this.tempalteMode[te].template_name;
+            }
+          }
+          let num = orderData[index].executing_index;
+          let missions = orderData[index].mission;
+          let result_strs = "";
+          if (missions[num] && missions[num].result_str) {
+            result_strs = missions[num].result_str;
+          }
+          result_strs = result_strs.substr(0, result_strs.length - 1);
+          item.ChildStatus = result_strs;
+          this.tableData.push(item);
+        }
+      });
+    },
+    //获取全部用户
+    GetUser() {
+      GetUsers().then((res) => {
+        this.usersData = JSON.parse(JSON.stringify(res.UsersManagement));
+      });
+    },
+    //获取全部订单模板
+    GetTemplate() {
+      // GetTemplates()
+      // 	.then(res => {
+      // 		console.log(res.templates);
+      // 		this.templateDatas = JSON.parse(JSON.stringify(res.templates));
+      // 	})
+    },
+    getVehicleById(id) {
+      getVehicleByIds().then((res) => {
+        this.singleVehicle = JSON.parse(JSON.stringify(res));
+      });
+    },
+  },
+  async created() {
+    if (sessionStorage.getItem("isopen1")) {
+      this.isopen1 = sessionStorage.getItem("isopen1");
+      if (this.isopen1 == true) {
+        this.carbtn[0].btn_icon = 1;
+      } else {
+        this.carbtn[0].btn_icon = 0;
+      }
+    }
+    if (sessionStorage.getItem("isopen2")) {
+      this.isopen2 = sessionStorage.getItem("isopen2");
+      if (this.isopen2 == true) {
+        this.carbtn[1].btn_icon = 1;
+      } else {
+        this.carbtn[1].btn_icon = 0;
+      }
+    }
+    this.GetUser();
+    this.getVehicle();
+    this.GetTemplate();
+    this.gettempalteMode();
+    this.Getorder();
+  },
+};
 </script>
 
 <style lang="less" scoped>
-	.right_mapMax {
-		position: fixed;
-		z-index: 99;
-		width: 98%;
-		height: 100%;
-		background-color: #00122D;
-		left: 20px;
-		top:0;
-		.right_mapMax_Top {
-			height: 5%;
-			width: 100%;
-			background-color: #00122D;
+.right_mapMax {
+  position: fixed;
+  z-index: 99;
+  width: 98%;
+  height: 100%;
+  background-color: #00122d;
+  left: 20px;
+  top: 0;
+  .right_mapMax_Top {
+    height: 5%;
+    width: 100%;
+    background-color: #00122d;
 
-			.exitRe {
-				float: right;
-			}
-		}
+    .exitRe {
+      float: right;
+    }
+  }
 
-		.right_mapMax_Bottom {
-			width: 100%;
-			height: 95%;
-		}
-	}
+  .right_mapMax_Bottom {
+    width: 100%;
+    height: 95%;
+  }
+}
 
-	.IconStart {
-		display: inline-block;
-		width: 35px;
-		height: 20px;
-		background: url(../../assets/img/icon/开启@2x.png) no-repeat;
-		background-size: 100% 100%;
-		// position: relative;
-		// top: 5px;
-	}
+.IconStart {
+  display: inline-block;
+  width: 35px;
+  height: 20px;
+  background: url(../../assets/img/icon/开启@2x.png) no-repeat;
+  background-size: 100% 100%;
+  // position: relative;
+  // top: 5px;
+}
 
-	.IconClose {
-		display: inline-block;
-		width: 48px;
-		height: 24px;
-		background: url(../../assets/img/icon/关闭@2x.png) no-repeat;
-		background-size: 100% 100%;
-		position: relative;
-		top: 5px;
-	}
+.IconClose {
+  display: inline-block;
+  width: 48px;
+  height: 24px;
+  background: url(../../assets/img/icon/关闭@2x.png) no-repeat;
+  background-size: 100% 100%;
+  position: relative;
+}
 
-	.el-menu-item:hover {
-		background: linear-gradient(201deg, #0194E4 0%, #002497 100%) !important;
-	}
+.el-menu-item:hover {
+  background: linear-gradient(201deg, #0194e4 0%, #002497 100%) !important;
+}
 
-	.progress_item {
-		background: rgba(1, 148, 228, 0.19);
-		display: inline-block;
-		height: 100%;
-		border-radius: 1px;
-		position: relative;
-		top: 0;
-		left: 0;
-	}
+.progress_item {
+  background: rgba(1, 148, 228, 0.19);
+  display: inline-block;
+  height: 100%;
+  border-radius: 1px;
+  position: relative;
+  top: 0;
+  left: 0;
+}
 
-	.progress_span {
-		position: absolute;
-		padding-left: 10px;
-		line-height: 19px;
-		color: #fff;
-		top: 0px;
-		left: 0px;
-		z-index: 10;
-	}
+.progress_span {
+  position: absolute;
+  padding-left: 10px;
+  line-height: 19px;
+  color: #fff;
+  top: 0px;
+  left: 0px;
+  z-index: 10;
+}
 
-	.progress_body {
-		border-radius: 1px;
-		background: rgba(1, 148, 228, 0.19);
-		height: 19px;
-		position: relative;
-	}
+.progress_body {
+  border-radius: 1px;
+  background: rgba(1, 148, 228, 0.19);
+  height: 19px;
+  position: relative;
+}
 
-	.cars_item_active {
-		background: #00122d;
-		box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
-		border-radius: 2px 2px 0px 0px;
-		border: 2px solid #0194e4 !important;
-	}
+.cars_item_active {
+  background: #00122d;
+  box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
+  border-radius: 2px 2px 0px 0px;
+  border: 2px solid #0194e4 !important;
+}
 
-	.dispatch_body {
-		margin-top: 10px;
-	}
+.dispatch_body {
+  margin-top: 10px;
+}
 
-	.elect_body {
-		font-weight: 400;
-		color: #ffffff;
-	}
+.elect_body {
+  font-weight: 400;
+  color: #ffffff;
+}
 
-	.cars_item_status {
-		padding-bottom: 6px;
-		margin-bottom: 6px;
-		border-bottom: 1px solid rgba(1, 148, 228, 0.25);
-	}
+.cars_item_status {
+  padding-bottom: 6px;
+  margin-bottom: 6px;
+  border-bottom: 1px solid rgba(1, 148, 228, 0.25);
+}
 
-	.status_tips_body {
-		display: inline-block;
-		// width: 48px;
-		height: 18px;
-		background: rgba(249, 185, 14, 0.2);
-		border-radius: 0px 100px 100px 0px;
+.status_tips_body {
+  display: inline-block;
+  // width: 48px;
+  height: 18px;
+  background: rgba(249, 185, 14, 0.2);
+  border-radius: 0px 100px 100px 0px;
 
-		// opacity: 0.13;
-		.status_tips_text {
-			display: flex;
-			align-items: center;
-			padding:0 5px;
-			font-size: 12px;
-			font-weight: 500;
-			line-height: 18px;
-			color: #ffdf89;
-		}
-	}
+  // opacity: 0.13;
+  .status_tips_text {
+    display: flex;
+    align-items: center;
+    padding: 0 5px;
+    font-size: 12px;
+    font-weight: 500;
+    line-height: 18px;
+    color: #ffdf89;
+  }
+}
 
-	.infor_progeress_body {
-		display: inline-block;
-		width: 31px;
-		height: 6px;
-		border-radius: 6px;
-		position: relative;
-		background: rgba(27, 27, 27, 0.37);
+.infor_progeress_body {
+  display: inline-block;
+  width: 31px;
+  height: 6px;
+  border-radius: 6px;
+  position: relative;
+  background: rgba(27, 27, 27, 0.37);
 
-		.infor_progeress {
-			position: absolute;
-			top: 0px;
-			left: 0px;
-			display: inline-block;
-			height: 6px;
-			border-radius: 6px;
-			background: rgba(255, 223, 137, 1);
-		}
-	}
+  .infor_progeress {
+    position: absolute;
+    top: 0px;
+    left: 0px;
+    display: inline-block;
+    height: 6px;
+    border-radius: 6px;
+    background: rgba(255, 223, 137, 1);
+  }
+}
 
-	.infor_statues {
-		display: inline-block;
-		width: 6px;
-		border-radius: 6px;
-		background: #ffdf89;
-		height: 6px;
-	}
+.infor_statues {
+  display: inline-block;
+  width: 6px;
+  border-radius: 6px;
+  background: #ffdf89;
+  height: 6px;
+}
 
-	.mask_right_infor {
-		width: 100%;
-		margin-top: 10px;
-		flex: 1;
-		display: flex;
-		flex-direction: column;
-		justify-content: center;
-		background: #1f5eb7;
+.mask_right_infor {
+  width: 100%;
+  margin-top: 10px;
+  flex: 1;
+  display: flex;
+  flex-direction: column;
+  justify-content: center;
+  background: #1f5eb7;
 
-		.infor_title {
-			width: 100%;
-			height: 43px;
+  .infor_title {
+    width: 100%;
+    height: 43px;
 
-			font-weight: 500;
-			color: #ffffff;
-			line-height: 43px;
-			text-align: center;
-		}
+    font-weight: 500;
+    color: #ffffff;
+    line-height: 43px;
+    text-align: center;
+  }
 
-		.infor_item {
-			flex: 1;
-			display: flex;
-			justify-items: center;
-			align-items: center;
-			padding: 0px 10px;
+  .infor_item {
+    flex: 1;
+    display: flex;
+    justify-items: center;
+    align-items: center;
+    padding: 0px 10px;
 
-			.infor_item_title {
-				width: 80px;
-				font-weight: 400;
-				color: rgba(255, 255, 255, 0.41);
-			}
+    .infor_item_title {
+      width: 80px;
+      font-weight: 400;
+      color: rgba(255, 255, 255, 0.41);
+    }
 
-			.infor_item_body {
-				flex: 1;
-				text-align: right;
+    .infor_item_body {
+      flex: 1;
+      text-align: right;
 
-				font-weight: 400;
-				color: #ffffff;
-			}
-		}
-	}
+      font-weight: 400;
+      color: #ffffff;
+    }
+  }
+}
 
-	.mask_icon_img {
-		margin-left: 10px;
-	}
+.mask_icon_img {
+  margin-left: 10px;
+}
 
-	.mask_right_bottom {
-		height: 30px;
-		width: 100%;
-		display: flex;
-		margin-top: 10px;
-		justify-content: flex-end;
-		align-items: center;
-	}
+.mask_right_bottom {
+  height: 30px;
+  width: 100%;
+  display: flex;
+  margin-top: 10px;
+  justify-content: flex-end;
+  align-items: center;
+}
 
-	.mask_left {
-		flex: 3;
-	}
+.mask_left {
+  flex: 3;
+}
 
-	.mask_right {
-		flex: 1;
-		display: flex;
-		flex-direction: column;
-	}
+.mask_right {
+  flex: 1;
+  display: flex;
+  flex-direction: column;
+}
 
-	.right_uppermap_mask {
-		width: calc(100% - 20px);
-		position: absolute;
-		padding: 10px;
-		top: 0px;
-		left: 0px;
-		display: flex;
-		flex-direction: row;
-		pointer-events: none;
-		height: calc(100% - 20px);
-		background: rgba(0, 1, 7, 0);
-	}
+.right_uppermap_mask {
+  width: calc(100% - 20px);
+  position: absolute;
+  padding: 10px;
+  top: 0px;
+  left: 0px;
+  display: flex;
+  flex-direction: row;
+  pointer-events: none;
+  height: calc(100% - 20px);
+  background: rgba(0, 1, 7, 0);
+}
 
-	.right_map {
-		// background-color: #FFFFFF;
-		width: 100%;
-		position: relative;
-		margin-top: 10px;
-		flex: 1;
-		min-height: 347px;
-	}
+.right_map {
+  // background-color: #FFFFFF;
+  width: 100%;
+  position: relative;
+  margin-top: 10px;
+  flex: 1;
+  min-height: 347px;
+}
 
-	.panel {
-		-webkit-box-sizing: border-box;
-		box-sizing: border-box;
-		border: 2px solid;
-		border-image: url("../../assets/img/border_two_upper.png") 142 38 128 134 !important;
-		border-width: 4.125rem 1.583rem 3.875rem 5.5rem;
-		position: relative;
-		margin-bottom: 0.833rem;
-	}
+.panel {
+  -webkit-box-sizing: border-box;
+  box-sizing: border-box;
+  border: 2px solid;
+  border-image: url("../../assets/img/border_two_upper.png") 142 38 128 134 !important;
+  border-width: 4.125rem 1.583rem 3.875rem 5.5rem;
+  position: relative;
+  margin-bottom: 0.833rem;
+}
 
-	.inner {
-		position: absolute;
-		top: -2.125rem;
-		right: -1.583rem;
-		bottom: -0.875rem;
-		left: -5.5rem;
-		padding: 2rem 0.59rem 1rem 0.5rem;
-	}
+.inner {
+  position: absolute;
+  top: -2.125rem;
+  right: -1.583rem;
+  bottom: -0.875rem;
+  left: -5.5rem;
+  padding: 2rem 0.59rem 1rem 0.5rem;
+}
 
-	.body {
-		width: 100%;
-		height: 100%;
-		display: flex;
-		flex-direction: row;
+.body {
+  width: 100%;
+  height: 100%;
+  display: flex;
+  flex-direction: row;
 
-		.left_body {
-			width: 216px;
-			height: 100%;
-		}
+  .left_body {
+    width: 216px;
+    height: 100%;
+  }
 
-		.right_body {
-			margin-left: 15px;
-			flex: 1;
-			display: flex;
-			flex-direction: column;
-			width: 80%;
+  .right_body {
+    margin-left: 15px;
+    flex: 1;
+    display: flex;
+    flex-direction: column;
+    width: 80%;
 
-			.right_upper {
-				flex: 2;
-				display: flex;
-				flex-direction: row;
+    .right_upper {
+      flex: 2;
+      display: flex;
+      flex-direction: row;
 
-				.right_upper_left {
-					width: 40%;
-					display: flex;
-					flex-direction: column;
-                    .alarm_statistics{
-						width: 100%;
-						height: 300px;
-					}
-					.right_upper_title {
-						height: 35px;
-						margin-top: 8px;
-						display: flex;
-						flex-direction: row;
+      .right_upper_left {
+        width: 40%;
+        display: flex;
+        flex-direction: column;
+        .alarm_statistics {
+          width: 100%;
+          height: 300px;
+        }
+        .right_upper_title {
+          height: 35px;
+          margin-top: 8px;
+          display: flex;
+          flex-direction: row;
 
-						.right_uppertitle_left {
-							flex: 1;
-						}
+          .right_uppertitle_left {
+            flex: 1;
+          }
 
-						.right_uppertitle_right {
-							flex: 1;
-							text-align: right;
-							.all_pul{
-								width: 40px;
-								height: 40px;
-								background: url('../../assets/img/ic_fullscreen_map@2x.png') no-repeat;
-								background-size: 100% 100%;
-								cursor: pointer;
-								float: right;
-								margin-left: 24px;
-							}
-						}
-					}
+          .right_uppertitle_right {
+            flex: 1;
+            text-align: right;
+            .all_pul {
+              width: 40px;
+              height: 40px;
+              background: url("../../assets/img/ic_fullscreen_map@2x.png")
+                no-repeat;
+              background-size: 100% 100%;
+              cursor: pointer;
+              float: right;
+              margin-left: 24px;
+            }
+          }
+        }
 
-					// background: sienna;
-				}
+        // background: sienna;
+      }
 
-				.right_upper_right {
-					flex: 1;
-					margin-left: 50px;
-					display: flex;
-					flex-direction: column;
-					.givealarm_child{
-						width: 100%;
-                        height: 30px;
-						display: flex;
-						align-items: center;
-						>p{
-							font-size: 14px;
-							font-family: Microsoft YaHei;
-							font-weight: 400;
-							color: #F27A7A;
-							margin-left: 27px;
-							// margin-top: 0;
-						}
-						>span{
-							font-size: 14px;
-							font-family: Microsoft YaHei;
-							font-weight: 400;
-							color: #F27A7A;
-							margin-left: 45px;
-						}
-						>.top{
-							width: 100%;
-							height: 15px;
-							display: flex;
-							align-items: center;
-							position: relative;
-							>.logcomplete{
-								width: 14px;
-								height: 14px;
-								// background: url('../../../../assets/givealarm/ic_clear_hint_alarm.png') no-repeat;
-								background-size: 100%;
-								border-radius: 50%;
-								margin-right: 12px;
-							}
-							>.logwarning{
-								width: 14px;
-								height: 14px;
-								// background: url('../../../../assets/givealarm/ic_warning_hint_alarm.png') no-repeat;
-								background-size: 100%;
-								border-radius: 50%;
-								margin-right: 12px;
-							}
-							>.logalarm{
-								width: 14px;
-								height: 14px;
-								// background: url('../../../../assets/givealarm/ic_hint_alarm.png') no-repeat;
-								background-size: 100%;
-								border-radius: 50%;
-								margin-right: 12px;
-							}
-							>.content{
-								width: 80%;
-								white-space: nowrap;
-								text-overflow: ellipsis;
-								overflow: hidden;
-								word-break: break-all;
-								font-size: 14px;
-								font-family: Microsoft YaHei;
-								font-weight: 400;
-								color: #303133;
-								line-height: 22px;
-								
-							}
-							>.start{
-								font-size: 14px;
-								font-family: Microsoft YaHei;
-								font-weight: bold;
-								color: #5BC267;
-								line-height: 22px;
-								position: absolute;
-								right: 0;
-							}
-							>.starter{
-								font-size: 14px;
-								font-family: Microsoft YaHei;
-								font-weight: bold;
-								color: #EE6666;
-								line-height: 22px;
-							}
-						}
-					}
-                    .right_upper_top{
-						width: 100%;
-						height: 295px;
-						display: flex;
-						justify-content: space-between;
-						.right_upper_top_left{
-							width: 65%;
-							height: 100%;
-						}
-						.right_upper_top_right{
-							width: 30%;
-							height: 100%;
-							
-						}
-					}
-					.cars_infor_body {
-						margin-top: 10px;
-						width: 100%;
-						height: 80%;
-						flex: 1;
-						display: flex;
-						flex-direction: row;
-						justify-content: space-between;
-						flex-wrap: wrap;
-						align-content: space-between;
-                        .el-scrollbar{
-							.el-scrollbar__wrap{
-								overflow-x: hidden;
-								ul{
-									width: 100%;
-									height: 42px;
-									background: #092754;
-									display: flex;
-									align-items: center;
-									margin-bottom: 16px;
-									>li{
-										width: 23%;
-										height: 100%;
-										display: flex;
-										align-items: center;
-										justify-content: flex-start;
-										font-size: 14px;
-										font-family: Microsoft YaHei;
-										font-weight: 400;
-										color: #FFFFFF;
-										>i{
-											margin-left: 16px;
-										}
-									}
-								}
-							}
-						}
-						// align-self: flex-end;
-						// align-items: flex-end;
-						// background: chartreuse;
-						.cars_item:hover {
-							background: #00122d;
-							box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
-							border-radius: 2px 2px 0px 0px;
-							border: 2px solid #0194e4 !important;
-						}
+      .right_upper_right {
+        flex: 1;
+        margin-left: 50px;
+        display: flex;
+        flex-direction: column;
+        .givealarm_child {
+          width: 100%;
+          height: 30px;
+          display: flex;
+          align-items: center;
+          > p {
+            font-size: 14px;
+            font-family: Microsoft YaHei;
+            font-weight: 400;
+            color: #f27a7a;
+            margin-left: 27px;
+            // margin-top: 0;
+          }
+          > span {
+            font-size: 14px;
+            font-family: Microsoft YaHei;
+            font-weight: 400;
+            color: #f27a7a;
+            margin-left: 45px;
+          }
+          > .top {
+            width: 100%;
+            height: 15px;
+            display: flex;
+            align-items: center;
+            position: relative;
+            > .logcomplete {
+              width: 14px;
+              height: 14px;
+              // background: url('../../../../assets/givealarm/ic_clear_hint_alarm.png') no-repeat;
+              background-size: 100%;
+              border-radius: 50%;
+              margin-right: 12px;
+            }
+            > .logwarning {
+              width: 14px;
+              height: 14px;
+              // background: url('../../../../assets/givealarm/ic_warning_hint_alarm.png') no-repeat;
+              background-size: 100%;
+              border-radius: 50%;
+              margin-right: 12px;
+            }
+            > .logalarm {
+              width: 14px;
+              height: 14px;
+              // background: url('../../../../assets/givealarm/ic_hint_alarm.png') no-repeat;
+              background-size: 100%;
+              border-radius: 50%;
+              margin-right: 12px;
+            }
+            > .content {
+              width: 80%;
+              white-space: nowrap;
+              text-overflow: ellipsis;
+              overflow: hidden;
+              word-break: break-all;
+              font-size: 14px;
+              font-family: Microsoft YaHei;
+              font-weight: 400;
+              color: #303133;
+              line-height: 22px;
+            }
+            > .start {
+              font-size: 14px;
+              font-family: Microsoft YaHei;
+              font-weight: bold;
+              color: #5bc267;
+              line-height: 22px;
+              position: absolute;
+              right: 0;
+            }
+            > .starter {
+              font-size: 14px;
+              font-family: Microsoft YaHei;
+              font-weight: bold;
+              color: #ee6666;
+              line-height: 22px;
+            }
+          }
+        }
+        .right_upper_top {
+          width: 100%;
+          height: 295px;
+          display: flex;
+          justify-content: space-between;
+          .right_upper_top_left {
+            width: 65%;
+            height: 100%;
+          }
+          .right_upper_top_right {
+            width: 30%;
+            height: 100%;
+          }
+        }
+        .cars_infor_body {
+          margin-top: 10px;
+          width: 100%;
+          height: 80%;
+          flex: 1;
+          display: flex;
+          flex-direction: row;
+          justify-content: space-between;
+          flex-wrap: wrap;
+          align-content: space-between;
+          .el-scrollbar {
+            .el-scrollbar__wrap {
+              overflow-x: hidden;
+              ul {
+                width: 100%;
+                height: 42px;
+                background: #092754;
+                display: flex;
+                align-items: center;
+                margin-bottom: 16px;
+                > li {
+                  width: 23%;
+                  height: 100%;
+                  display: flex;
+                  align-items: center;
+                  justify-content: flex-start;
+                  font-size: 14px;
+                  font-family: Microsoft YaHei;
+                  font-weight: 400;
+                  color: #ffffff;
+                  > i {
+                    margin-left: 16px;
+                  }
+                }
+              }
+            }
+          }
+          // align-self: flex-end;
+          // align-items: flex-end;
+          // background: chartreuse;
+          .cars_item:hover {
+            background: #00122d;
+            box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4);
+            border-radius: 2px 2px 0px 0px;
+            border: 2px solid #0194e4 !important;
+          }
 
-						.cars_item {
-							width: 23%;
-							height: 46%;
-							cursor: pointer;
-							display: flex;
-							flex-direction: column;
-							background: rgba(9, 39, 84, 1);
-							border: 2px solid rgba(255, 255, 255, 0);
-							font-size: 13px;
-							.cars_item_body {
-								padding: 10px 5px;
+          .cars_item {
+            width: 23%;
+            height: 46%;
+            cursor: pointer;
+            display: flex;
+            flex-direction: column;
+            background: rgba(9, 39, 84, 1);
+            border: 2px solid rgba(255, 255, 255, 0);
+            font-size: 13px;
+            .cars_item_body {
+              padding: 10px 5px;
 
-								.cars_item_title {
-									color: rgba(255, 255, 255, 1);
-									font-weight: 500;
-								}
-							}
-						}
-					}
+              .cars_item_title {
+                color: rgba(255, 255, 255, 1);
+                font-weight: 500;
+              }
+            }
+          }
+        }
 
-					// background: yellow;
-				}
-			}
+        // background: yellow;
+      }
+    }
 
-			.right_lower {
-				width: 100%;
-				margin-top: 10px;
-				flex: 1;
-				position: relative;
-				.filter_by_state{
-					// position: absolute;
-					// right: 40px;
-					// top: -55px;
-					float: right;
-					margin-bottom: 5px;
-				}
-			}
-		}
-	}
+    .right_lower {
+      width: 100%;
+      margin-top: 10px;
+      flex: 1;
+      position: relative;
+      .filter_by_state {
+        // position: absolute;
+        // right: 40px;
+        // top: -55px;
+        float: right;
+        margin-bottom: 5px;
+      }
+    }
+  }
+}
 </style>
 <style scoped>
-	#addUserDialog .el-dialog {
-		background: none;
-	}
-	/deep/.filter_by_state_select .el-input__inner{
-							box-shadow: 0px -1px -38px 0px rgba(0, 162, 253, 0.4);
-							border-radius: 2px !important;
-							font-weight: 400 !important;
-							width: 100%;
-							color: #0194E4 !important;
-							border: 1px solid #0194E4 !important;
-							background: rgba(0, 162, 253, 0) !important;
-							height: 30px;
-							line-height: 30px;
-						}
-						
-	/deep/.filter_by_state_select .el-input__icon{
-		line-height: 30px;
-	}
-	#addUserDialog .el-dialog .el-dialog__header {
-		padding: 55px 60px 10px;
-		color: #2DAFF5;
-		position: absolute;
-		width: 100%;
-	}
+#addUserDialog .el-dialog {
+  background: none;
+}
+/deep/.filter_by_state_select .el-input__inner {
+  box-shadow: 0px -1px -38px 0px rgba(0, 162, 253, 0.4);
+  border-radius: 2px !important;
+  font-weight: 400 !important;
+  width: 100%;
+  color: #0194e4 !important;
+  border: 1px solid #0194e4 !important;
+  background: rgba(0, 162, 253, 0) !important;
+  height: 30px;
+  line-height: 30px;
+}
+
+/deep/.filter_by_state_select .el-input__icon {
+  line-height: 30px;
+}
+#addUserDialog .el-dialog .el-dialog__header {
+  padding: 55px 60px 10px;
+  color: #2daff5;
+  position: absolute;
+  width: 100%;
+}
 
-	/deep/#addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
-		color: #2DAFF5;
-		position: absolute;
-		top: -15px;
-		z-index: 99;
-	}
+/deep/#addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
+  color: #2daff5;
+  position: absolute;
+  top: -15px;
+  z-index: 99;
+}
 
-	/deep/#addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
-		position: absolute;
-		top: 5rem !important;
-		right: 11.5rem;
-		top: 10px !important;
-		z-index: 99;
-	}
+/deep/#addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
+  position: absolute;
+  top: 5rem !important;
+  right: 11.5rem;
+  top: 10px !important;
+  z-index: 99;
+}
 
-	/deep/#addUserDialog .el-dialog .el-dialog__body {
-		background: url(../../assets/img/dialogBack.png) no-repeat center center;
-		background-size: 100% 100%;
-		padding: 130px 70px 110px 90px;
-		color: #2DAFF5;
-		height: 37rem;
-		box-sizing: border-box;
-		width: 800px !important;
-		height: 830px;
-		position: absolute;
-		top: -100px;
-		margin: 0 auto;
-	}
+/deep/#addUserDialog .el-dialog .el-dialog__body {
+  background: url(../../assets/img/dialogBack.png) no-repeat center center;
+  background-size: 100% 100%;
+  padding: 130px 70px 110px 90px;
+  color: #2daff5;
+  height: 37rem;
+  box-sizing: border-box;
+  width: 800px !important;
+  height: 830px;
+  position: absolute;
+  top: -100px;
+  margin: 0 auto;
+}
 
-	#addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
-		color: #red;
-	}
+#addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
+  color: #red;
+}
 
-	#addUserDialog .el-dialog .el-dialog__body input {
-		color: #ddd;
-		height: 32px !important;
-		line-height: 32px !important;
-		-webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-		box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-		border: 1px solid rgba(1, 148, 228, 0.34) !important;
-		background: none !important;
-		border-radius: 0 !important;
-	}
+#addUserDialog .el-dialog .el-dialog__body input {
+  color: #ddd;
+  height: 32px !important;
+  line-height: 32px !important;
+  -webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  border: 1px solid rgba(1, 148, 228, 0.34) !important;
+  background: none !important;
+  border-radius: 0 !important;
+}
 
-	#addUserDialog .el-dialog .el-dialog__footer {
-		padding: 10px 50px;
-		position: absolute;
-		right: 0;
-		bottom: 50px;
-	}
-	.el-pagination{
-		text-align: center;
-	}
+#addUserDialog .el-dialog .el-dialog__footer {
+  padding: 10px 50px;
+  position: absolute;
+  right: 0;
+  bottom: 50px;
+}
+.el-pagination {
+  text-align: center;
+}
 </style>

+ 345 - 295
src/pages/admin.vue

@@ -15,7 +15,7 @@
           />
           <div class="left_title_body">
             <div class="home_logo">
-              <div class="LOGO_name" @click="gohome">AMR </div>
+              <div class="LOGO_name" @click="gohome">AMR</div>
               <div class="system_name" @click="gohome">/ AMR管理系统</div>
             </div>
             <div class="title_body">
@@ -39,19 +39,32 @@
           />
           <div class="left_title_body">
             <!-- <i @click="showWarn" class="el-icon-message-solid icon_right" :class="{'warn':isWarn}" style="font-size: 35px;"></i> -->
-            <div  :class="isWarn ? 'Warning_lamp': 'Warning_lamper'"></div>
-            <el-tooltip class="item" effect="light" content="打开全屏" placement="bottom" style="position: relative;">
-              <i  @click="goFullScreen" class="el-icon-full-screen  " style="font-size: 14px; margin-left: 5px;"></i>
+            <div :class="isWarn ? 'Warning_lamp' : 'Warning_lamper'"></div>
+            <el-tooltip
+              class="item"
+              effect="light"
+              content="打开全屏"
+              placement="bottom"
+              style="position: relative"
+            >
+              <i
+                @click="goFullScreen"
+                class="el-icon-full-screen"
+                style="font-size: 14px; margin-left: 5px"
+              ></i>
             </el-tooltip>
             <i class="el-icon-minus line_ icon_right"></i>
             <el-dropdown>
               <span class="el-dropdown-link title_right_font">
-                <label>{{this.userName}}</label></label><i class="el-icon-caret-bottom el-icon--right"></i>
+                <label>{{ this.userName }}</label
+                ><i class="el-icon-caret-bottom el-icon--right"></i>
               </span>
               <el-dropdown-menu slot="dropdown">
                 <!-- <el-dropdown-item @click.native="updatePwdF">修改密码</el-dropdown-item> -->
                 <!-- <el-dropdown-item @click.native="updateApi">修改接口</el-dropdown-item> -->
-                <el-dropdown-item @click.native="exitLogin">退出登录</el-dropdown-item>
+                <el-dropdown-item @click.native="exitLogin"
+                  >退出登录</el-dropdown-item
+                >
               </el-dropdown-menu>
             </el-dropdown>
           </div>
@@ -69,21 +82,34 @@
       :visible.sync="updatePsd"
       width="600px"
       id="addUserDialog"
-      >
-    	<el-form ref="form" :model="updatePsdData" label-position="right">
-          <el-form-item label="旧密码:" label-width="120px">
-            <el-input v-model="updatePsdData.oldPwd"  placeholder="请输入旧密码"></el-input>
-          </el-form-item>
-          <el-form-item label="新密码:" label-width="120px">
-            <el-input v-model="updatePsdData.newPwd"  placeholder="请输入要修改的密码"></el-input>
-          </el-form-item>
-          <el-form-item label="确认密码:" label-width="120px">
-            <el-input v-model="updatePsdData.okNewPwd"  placeholder="请输入确认输入要修改的密码"></el-input>
-          </el-form-item>
-    	</el-form>
+    >
+      <el-form ref="form" :model="updatePsdData" label-position="right">
+        <el-form-item label="旧密码:" label-width="120px">
+          <el-input
+            v-model="updatePsdData.oldPwd"
+            placeholder="请输入旧密码"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="新密码:" label-width="120px">
+          <el-input
+            v-model="updatePsdData.newPwd"
+            placeholder="请输入要修改的密码"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="确认密码:" label-width="120px">
+          <el-input
+            v-model="updatePsdData.okNewPwd"
+            placeholder="请输入确认输入要修改的密码"
+          ></el-input>
+        </el-form-item>
+      </el-form>
       <span slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="updatePsd = false" id="sureBtn">确 定</el-button>
-        <el-button type="primary" @click="updatePsd = false" id="sureBtn">取消</el-button>
+        <el-button type="primary" @click="updatePsd = false" id="sureBtn"
+          >确 定</el-button
+        >
+        <el-button type="primary" @click="updatePsd = false" id="sureBtn"
+          >取消</el-button
+        >
       </span>
     </el-dialog>
     <!-- 修改API弹出窗 -->
@@ -110,171 +136,195 @@
 </template>
 
 <script>
-import {
-		Dbalarm
-	} from '@/api/request.js'
+import { Dbalarm } from "@/api/request.js";
 export default {
-  name: 'App',
+  name: "App",
   data() {
     return {
-		isWarn:false,
-		reqData: {
-			ctg: "curr",
-			opt: 'nonexcel'
-		},
-		userName:"",
-      updateApiData:{
-        oldApi:'',
-        newApi:''
+      isWarn: false,
+      reqData: {
+        ctg: "curr",
+        opt: "nonexcel",
       },
-      updateApitoogle:false,
-      updatePsd:false,
-      updatePsdData:{
-        oldPwd:'123456',
-        newPwd:'',
-        okNewPwd:''
+      userName: "",
+      updateApiData: {
+        oldApi: "",
+        newApi: "",
       },
-      titleindex: 0,
-      FullS:false,//网页全屏
-      menudata: [{
-        'title': '首页',
-        'path': '/admin'
-      }, {
-        'title': 'AMR管理',
-        'path': '/ArmManage'
-      }, 
-      {
-        'title': '行李信息查询',
-        'path': '/Baggage'
+      updateApitoogle: false,
+      updatePsd: false,
+      updatePsdData: {
+        oldPwd: "123456",
+        newPwd: "",
+        okNewPwd: "",
       },
-	  // {
-   //      'title': '输送机管理',
-   //      'path': '/DeliveryManage'
-   //    }, 
-	    {
-        'title': '系统配置',
-        'path': '/SystemSet'
-      },{
-        'title': '报表统计',
-        'path': '/ReportStatistics'
-      }, {
-        'title': 'Alarm',
-        'path': '/Alarm'
-      }]
-    }
+      titleindex: 0,
+      FullS: false, //网页全屏
+      menudata: [
+        {
+          title: "首页",
+          path: "/admin",
+        },
+        {
+          title: "AMR管理",
+          path: "/ArmManage",
+        },
+        {
+          title: "行李信息查询",
+          path: "/Baggage",
+        },
+        // {
+        //      'title': '输送机管理',
+        //      'path': '/DeliveryManage'
+        //    },
+        {
+          title: "系统配置",
+          path: "/SystemSet",
+        },
+        {
+          title: "报表统计",
+          path: "/ReportStatistics",
+        },
+        {
+          title: "Alarm",
+          path: "/Alarm",
+        },
+      ],
+    };
   },
   mounted() {
-      this.monitorfullScreen()
-      this.refersh()
-	  this.userName = JSON.parse(sessionStorage.getItem("userData")).userName;
-	  let that = this;
-	  setInterval(()=>{//实时更新数据
-	    that.getDataAlarm();
-	  },2000)
+    this.monitorfullScreen();
+    this.refersh();
+    this.userName = JSON.parse(sessionStorage.getItem("userData")).userName;
+    let that = this;
+    setInterval(() => {
+      //实时更新数据
+      that.getDataAlarm();
+    }, 2000);
   },
   methods: {
-	  showWarn(){
-		  this.$router.push({ path:  '/Alarm'})
-	  },
-	getDataAlarm() {
-		let that = this;
-		Dbalarm(this.reqData).then(res => {
-			console.log(res)
-			console.log(res.AlarmInfo)
-			if(res.AlarmInfo.length>0){
-				this.isWarn= true;
-				setTimeout(function(){
-					that.isWarn=false;
-				},1000)
-			}
-		})
-	},
-    updateApi(){//修改API
-      this.updateApitoogle=true;
+    showWarn() {
+      this.$router.push({ path: "/Alarm" });
     },
-    refersh(){
-      var url =window.location.href;
-      if(url.substring(url.indexOf('#')+1)=='/Alarm/RealTime'||url.substring(url.indexOf('#')+1)=='/Alarm/History'){
-        this.titleindex=5;
-      }else if(url.substring(url.indexOf('#')+1)=='/ReportStatistics'){
-        this.titleindex=4;
-      }else if(url.substring(url.indexOf('#')+1)=='/SystemSet/index'||url.substring(url.indexOf('#')+1)=='/SystemSet/User'){
-        this.titleindex=3;
-      }else if(url.substring(url.indexOf('#')+1)=='/DeliveryManage/index'){
-        this.titleindex=2;
-      }else if(url.substring(url.indexOf('#')+1)=='/ArmManage'){
-        this.titleindex=1;
-      }else{
-        this.titleindex=0;
+    getDataAlarm() {
+      let that = this;
+      Dbalarm(this.reqData).then((res) => {
+        console.log(res);
+        console.log(res.AlarmInfo);
+        if (res.AlarmInfo.length > 0) {
+          this.isWarn = true;
+          setTimeout(function () {
+            that.isWarn = false;
+          }, 1000);
+        }
+      });
+    },
+    updateApi() {
+      //修改API
+      this.updateApitoogle = true;
+    },
+    refersh() {
+      var url = window.location.href;
+      if (
+        url.substring(url.indexOf("#") + 1) == "/Alarm/RealTime" ||
+        url.substring(url.indexOf("#") + 1) == "/Alarm/History"
+      ) {
+        this.titleindex = 5;
+      } else if (url.substring(url.indexOf("#") + 1) == "/ReportStatistics") {
+        this.titleindex = 4;
+      } else if (
+        url.substring(url.indexOf("#") + 1) == "/SystemSet/index" ||
+        url.substring(url.indexOf("#") + 1) == "/SystemSet/User"
+      ) {
+        this.titleindex = 3;
+      } else if (
+        url.substring(url.indexOf("#") + 1) == "/DeliveryManage/index"
+      ) {
+        this.titleindex = 2;
+      } else if (url.substring(url.indexOf("#") + 1) == "/ArmManage") {
+        this.titleindex = 1;
+      } else {
+        this.titleindex = 0;
       }
     },
-    gohome(){
-      this.$router.push({ path: '/admin' })
-      this.titleindex = 0
+    gohome() {
+      this.$router.push({ path: "/admin" });
+      this.titleindex = 0;
     },
     checktitle(item, index) {
-      this.titleindex = index
-      this.$router.push({ path: item.path })
+      this.titleindex = index;
+      this.$router.push({ path: item.path });
     },
-    exitLogin(){//退出登录
-      this.$confirm('退出登录, 是否继续?', '提示', {
-         confirmButtonText: '确定',
-         cancelButtonText: '取消',
-         type: 'warning'
-       }).then(() => {
-         sessionStorage.removeItem("userData");
-         this.$router.push({path:'/'})
-         this.$message({
-           type: 'success',
-           message: '已退出登录!'
-         });
-       }).catch(() => {
-         this.$message({
-           type: 'info',
-           message: '已取消操作'
-         });
-       });
+    exitLogin() {
+      //退出登录
+      this.$confirm("退出登录, 是否继续?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          sessionStorage.removeItem("userData");
+          this.$router.push({ path: "/" });
+          this.$message({
+            type: "success",
+            message: "已退出登录!",
+          });
+        })
+        .catch(() => {
+          this.$message({
+            type: "info",
+            message: "已取消操作",
+          });
+        });
     },
-    monitorfullScreen(){//监听网页是否全屏
-      document.addEventListener('webkitfullscreenchange',()=>{
-        if(document.webkitIsFullScreen){
-              this.FullS=true
+    monitorfullScreen() {
+      //监听网页是否全屏
+      document.addEventListener("webkitfullscreenchange", () => {
+        if (document.webkitIsFullScreen) {
+          this.FullS = true;
         } else {
-              this.FullS=false
+          this.FullS = false;
         }
       });
-      document.addEventListener('fullscreenchange',()=>{
-        if(document.fullscreen){
-              this.FullS=true
+      document.addEventListener("fullscreenchange", () => {
+        if (document.fullscreen) {
+          this.FullS = true;
         } else {
-              this.FullS=false
+          this.FullS = false;
         }
       });
-      document.addEventListener('msfullscreenchange',()=>{
-        if(document.msFullscreenElement){
-              this.FullS=true
+      document.addEventListener("msfullscreenchange", () => {
+        if (document.msFullscreenElement) {
+          this.FullS = true;
         } else {
-              this.FullS=false
+          this.FullS = false;
         }
       });
-      document.addEventListener('mozfullscreenchange',()=>{
-        if(document.mozFullScreen){
-              this.FullS=true
+      document.addEventListener("mozfullscreenchange", () => {
+        if (document.mozFullScreen) {
+          this.FullS = true;
         } else {
-              this.FullS=false
+          this.FullS = false;
         }
       });
     },
-    goFullScreen(){//点击打开全屏
-      if(!this.FullS){
-        this.FullScreen()
-      }else{
-        this.exitFullScreen2()
+    goFullScreen() {
+      //点击打开全屏
+      if (!this.FullS) {
+        this.FullScreen();
+      } else {
+        this.exitFullScreen2();
       }
     },
-    FullScreen(){//进入全屏显示
-      const body=this.$refs['body'];
-      var rfs = body.requestFullScreen || body.webkitRequestFullScreen || body.mozRequestFullScreen || body.msRequestFullScreen,wscript;
+    FullScreen() {
+      //进入全屏显示
+      const body = this.$refs["body"];
+      var rfs =
+          body.requestFullScreen ||
+          body.webkitRequestFullScreen ||
+          body.mozRequestFullScreen ||
+          body.msRequestFullScreen,
+        wscript;
       if (typeof rfs != "undefined" && rfs) {
         rfs.call(body);
         return;
@@ -286,42 +336,43 @@ export default {
         }
       }
     },
-    exitFullScreen2(){//退出全屏模式
-      if(document.exitFullscreen) {
+    exitFullScreen2() {
+      //退出全屏模式
+      if (document.exitFullscreen) {
         document.exitFullscreen();
-      } else if(document.mozCancelFullScreen) {
+      } else if (document.mozCancelFullScreen) {
         document.mozCancelFullScreen();
-      } else if(document.webkitCancelFullScreen) {
+      } else if (document.webkitCancelFullScreen) {
         document.webkitCancelFullScreen();
-      } else if(document.msExitFullscreen) {
+      } else if (document.msExitFullscreen) {
         document.msExitFullscreen();
       }
     },
-    updatePwdF(){
-      this.updatePsd=true;
-    }
+    updatePwdF() {
+      this.updatePsd = true;
+    },
   },
-}
+};
 </script>
 
 <style lang='less' scoped>
 @keyframes fade {
-    from {        
-    opacity: 1.0;    
-    }
-    50% {        
-    opacity: 0;    
-    }
-    to {        
-    opacity: 1.0;    
-    }
-}
-	.warn{
-		color: #FF0000;
-	}
-  .el-message-box{
-    margin-top: -630px !important;
+  from {
+    opacity: 1;
   }
+  50% {
+    opacity: 0;
+  }
+  to {
+    opacity: 1;
+  }
+}
+.warn {
+  color: #ff0000;
+}
+.el-message-box {
+  margin-top: -630px !important;
+}
 .right_title_img {
   position: absolute;
   top: 0px;
@@ -349,22 +400,22 @@ export default {
   align-items: center;
   // justify-content: center;
   height: 80%;
-  .Warning_lamper{
+  .Warning_lamper {
     width: 24px;
     height: 24px;
-    background: url('../assets/img/ic_warming_top_default@2x.png') no-repeat;
+    background: url("../assets/img/ic_warming_top_default@2x.png") no-repeat;
     background-size: 100% 100%;
     cursor: pointer;
     margin-right: 12px;
   }
-  .Warning_lamp{
+  .Warning_lamp {
     width: 24px;
     height: 24px;
-    background: url('../assets/img/ic_warming_top@2x.png') no-repeat;
+    background: url("../assets/img/ic_warming_top@2x.png") no-repeat;
     background-size: 100% 100%;
     cursor: pointer;
     margin-right: 12px;
-    animation: fade 1500ms infinite;    
+    animation: fade 1500ms infinite;
     -webkit-animation: fade 1500ms infinite;
   }
 }
@@ -417,12 +468,12 @@ export default {
   display: flex;
   flex-direction: row;
   .home_title_left {
-     /* background-image: url('../assets/img/upperdaohang2@2x.png'); */
+    /* background-image: url('../assets/img/upperdaohang2@2x.png'); */
     flex: 1;
-     display: flex;
-     flex-direction: row;
+    display: flex;
+    flex-direction: row;
     position: relative;
-     align-items: center;
+    align-items: center;
     .home_logo {
       width: 238px;
       display: flex;
@@ -461,11 +512,10 @@ export default {
         font-weight: 600;
         color: #84a1c4;
         cursor: pointer;
-        &:hover{
+        &:hover {
           color: #fff;
         }
       }
-
     }
   }
   .home_title_right {
@@ -480,133 +530,133 @@ export default {
   .title_right_font {
     font-weight: 400;
     color: #aacbdc;
-    label{
+    label {
       cursor: pointer;
     }
-    i{
+    i {
       cursor: pointer;
     }
   }
 }
-.el-table .cell{
-	  color: #2DAFF5!important;
-  }
-  #addUserDialog .el-dialog {
-  	background: none;
-  }
+.el-table .cell {
+  color: #2daff5 !important;
+}
+#addUserDialog .el-dialog {
+  background: none;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header {
-  	padding: 55px 60px 10px;
-  	color: #2DAFF5;
-  	position: absolute;
-  	width: 100%;
-  }
+#addUserDialog .el-dialog .el-dialog__header {
+  padding: 55px 60px 10px;
+  color: #2daff5;
+  position: absolute;
+  width: 100%;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
-  	color: #2DAFF5;
-  }
+#addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
+  color: #2daff5;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
-  	position: absolute;
-  	top: 4rem !important;
-  	right: 11rem;
-  }
+#addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
+  position: absolute;
+  top: 4rem !important;
+  right: 11rem;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body {
-  	background: url(../assets/img/dialogBack.png) no-repeat center center;
-  	background-size: 100% 100%;
-  	padding: 110px 70px 110px 50px;
-  	color: #2DAFF5;
-  	/* height: 25rem !important; */
-  	box-sizing: border-box;
-  	width: 600px;
-  	margin: 0 auto;
-  }
+#addUserDialog .el-dialog .el-dialog__body {
+  background: url(../assets/img/dialogBack.png) no-repeat center center;
+  background-size: 100% 100%;
+  padding: 110px 70px 110px 50px;
+  color: #2daff5;
+  /* height: 25rem !important; */
+  box-sizing: border-box;
+  width: 600px;
+  margin: 0 auto;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
-  	color: #2DAFF5;
-  }
+#addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
+  color: #2daff5;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body input {
-  	color: #ddd;
-  	height: 32px !important;
-  	line-height: 32px !important;
-  	-webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-  	box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-  	border: 1px solid rgba(1, 148, 228, 0.34) !important;
-  	background: none !important;
-  	border-radius: 0 !important;
-  }
+#addUserDialog .el-dialog .el-dialog__body input {
+  color: #ddd;
+  height: 32px !important;
+  line-height: 32px !important;
+  -webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  border: 1px solid rgba(1, 148, 228, 0.34) !important;
+  background: none !important;
+  border-radius: 0 !important;
+}
 
-  #addUserDialog .el-dialog .el-dialog__footer {
-  	padding: 10px 50px;
-  	position: absolute;
-  	right: 0;
-  	bottom: 50px;
-  }
-  #sureBtn{
-  	background: url(../assets/img/btn_add.png) no-repeat center center;
-  	border: none;
-  	border-radius: 0;
-  }
+#addUserDialog .el-dialog .el-dialog__footer {
+  padding: 10px 50px;
+  position: absolute;
+  right: 0;
+  bottom: 50px;
+}
+#sureBtn {
+  background: url(../assets/img/btn_add.png) no-repeat center center;
+  border: none;
+  border-radius: 0;
+}
 </style>
 <style>
-  #addUserDialog .el-dialog {
-  	background: none;
-  }
+#addUserDialog .el-dialog {
+  background: none;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header {
-  	padding: 55px 60px 10px;
-  	color: #2DAFF5;
-  	position: absolute;
-  	width: 100%;
-  }
+#addUserDialog .el-dialog .el-dialog__header {
+  padding: 55px 60px 10px;
+  color: #2daff5;
+  position: absolute;
+  width: 100%;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
-  	color: #2DAFF5;
-  }
+#addUserDialog .el-dialog .el-dialog__header .el-dialog__title {
+  color: #2daff5;
+}
 
-  #addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
-  	position: absolute;
-  	top: 4rem !important;
-  	right: 11rem;
-  }
+#addUserDialog .el-dialog .el-dialog__header .el-dialog__headerbtn {
+  position: absolute;
+  top: 4rem !important;
+  right: 11rem;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body {
-  	background: url(../assets/img/dialogBack.png) no-repeat center center;
-  	background-size: 100% 100%;
-  	padding: 110px 70px 110px 50px;
-  	color: #2DAFF5;
-  	/* height: 25rem !important; */
-  	box-sizing: border-box;
-  	width: 600px;
-  	margin: 0 auto;
-  }
+#addUserDialog .el-dialog .el-dialog__body {
+  background: url(../assets/img/dialogBack.png) no-repeat center center;
+  background-size: 100% 100%;
+  padding: 110px 70px 110px 50px;
+  color: #2daff5;
+  /* height: 25rem !important; */
+  box-sizing: border-box;
+  width: 600px;
+  margin: 0 auto;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
-  	color: #2DAFF5;
-  }
+#addUserDialog .el-dialog .el-dialog__body .el-form-item__label {
+  color: #2daff5;
+}
 
-  #addUserDialog .el-dialog .el-dialog__body input {
-  	color: #ddd;
-  	height: 32px !important;
-  	line-height: 32px !important;
-  	-webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-  	box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
-  	border: 1px solid rgba(1, 148, 228, 0.34) !important;
-  	background: none !important;
-  	border-radius: 0 !important;
-  }
+#addUserDialog .el-dialog .el-dialog__body input {
+  color: #ddd;
+  height: 32px !important;
+  line-height: 32px !important;
+  -webkit-box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  box-shadow: inset 0px 1px 38px 0px rgba(0, 162, 253, 0.4) !important;
+  border: 1px solid rgba(1, 148, 228, 0.34) !important;
+  background: none !important;
+  border-radius: 0 !important;
+}
 
-  #addUserDialog .el-dialog .el-dialog__footer {
-  	padding: 10px 50px;
-  	position: absolute;
-  	right: 0;
-  	bottom: 50px;
-  }
-  #sureBtn{
-  	background: url(../assets/img/btn_add.png) no-repeat center center;
-  	border: none;
-  	border-radius: 0;
-  }
+#addUserDialog .el-dialog .el-dialog__footer {
+  padding: 10px 50px;
+  position: absolute;
+  right: 0;
+  bottom: 50px;
+}
+#sureBtn {
+  background: url(../assets/img/btn_add.png) no-repeat center center;
+  border: none;
+  border-radius: 0;
+}
 </style>

+ 3 - 2
static/serve.js

@@ -1,4 +1,5 @@
 window.g = {
-  url: `http://139.198.181.133:5000` ,// 配置服务器地址
-	mapURL: `http://192.168.30.250:3420/api` // 地图地址
+  url: `http://192.168.30.249:3420`,// 配置服务器地址
+  // url: `http://139.198.181.133:5000` ,// 配置服务器地址
+  mapURL: `http://192.168.30.250:3420/api` // 地图地址
 }