This commit is contained in:
2025-07-24 20:28:44 +08:00
parent ae2d9b631f
commit 20df8e895a
3 changed files with 39 additions and 29 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 836 B

View File

@@ -65,8 +65,7 @@
<script>
import SaveChain from './save-chain.vue'
import { queryStation, queryTaskChain } from '@config/mork.js'
import { queryTaskChainDtl, sendTask, saveTask, cancelTask, deleteTaskChain, updateStation } from '@config/getData.js'
import { queryStation, queryTaskChain, queryTaskChainDtl, sendTask, saveTask, cancelTask, deleteTaskChain, updateStation } from '@config/getData.js'
export default {
components: {
SaveChain
@@ -75,7 +74,7 @@ export default {
return {
activeName: 'zdy',
stationName: '',
radioOption: [{label: '取货', text: '取', value: 'Ascend'}, {label: '放货', text: '放', value: 'Descend'}, {label: '移动', text: '移', value: 'Move'}, {label: '返回点', text: '返', value: 'Move'}],
radioOption: [{label: '取货', text: '取', value: 'Ascend'}, {label: '放货', text: '放', value: 'Descend'}, {label: '移动', text: '移', value: 'Move'}, {label: '返回点', text: '返', value: 'Return'}],
dataList: [],
newData: [],
linkData: [],
@@ -202,7 +201,6 @@ export default {
},
// 选取动作类型
radioInput (e, i, value) {
console.log(this.newData)
const lastItem = this.newData.length > 0 ? this.newData[this.newData.length - 1].station_code : null
if (lastItem === e.station_code) {
this.$message('相邻的两个站点不能相同')
@@ -214,7 +212,7 @@ export default {
this.closePopover(i)
return
}
if (this.newData.length > 0 && this.newData[this.newData.length - 1].action_type === 'Move') {
if (this.newData.length > 0 && this.newData[this.newData.length - 1].action_type === 'Return') {
return
}
e.action_type = value

View File

@@ -6,7 +6,7 @@
</el-col>
<el-col :span="12">
<el-row type="flex" justify="end" align="middle">
<div class="state-item">自动模式</div>
<div v-if="JSON.stringify(topInfo) !== '{}'" class="state-item">{{ topInfo.isManual ? '手动模式' : '自动模式' }}</div>
<div v-if="JSON.stringify(topInfo) !== '{}'" class="state-item">{{ topInfo.state }}</div>
<div v-if="JSON.stringify(topInfo) !== '{}'" class="relative elec-qty-wrap" :class="{'elec-wraning': topInfo.batteryPower <= 40}">
<div class="absolute elec-qty" :style="{ width: Number(topInfo.batteryPower) !== -1 ? `calc(100% - ${topInfo.batteryPower}%)` : '100%' }"></div>
@@ -26,7 +26,7 @@
<div class="error-tips" ref="scrollContainer" @click="$router.push('/index/warning')">
<div class="zbox scroll-text" ref="scrollText">
<i class="el-icon-warning icon-warning"></i>
<div class="error-tips-t">错误提示1.障碍物告警 2.定位丢失</div>
<div class="error-tips-t">错误提示{{ exception }}</div>
</div>
</div>
<el-row type="flex" class="relative main-conatiner">
@@ -54,28 +54,38 @@ export default {
data () {
return {
timer: null,
topInfo: {
batteryPower: -1.0,
exceptionInfo: {
exception: ['重定位失败,检查环境或标记是否有变化.', '定位超时,尝试移动小车位置后重试.'],
exceptionCodes: [1, 17179869185, 1335734829057]
},
id: '1', // 车号ID
ip: '192.168.100.82', // 车辆IP
isManual: false, // 是否是手动true是手动,false是自动
mapId: 39, // 地图ID
mapName: 'apt_map_1753078481180', // 地图名称
name: 'V1', // 车辆名称
state: '未知状态', // 车辆状态
stateId: 7, // 车辆状态ID
theta: 0.9073792099952698, // 车辆航向角
x: -4.030919075012207, // 车辆x坐标
y: -1.6574244499206543 // 车辆y坐标
},
topInfo: {},
// topInfo: {
// batteryPower: -1.0,
// exceptionInfo: {
// exception: ['重定位失败,检查环境或标记是否有变化.', '定位超时,尝试移动小车位置后重试.'],
// exceptionCodes: [1, 17179869185, 1335734829057]
// },
// id: '1', // 车号ID
// ip: '192.168.100.82', // 车辆IP
// isManual: false, // 是否是手动true是手动,false是自动
// mapId: 39, // 地图ID
// mapName: 'apt_map_1753078481180', // 地图名称
// name: 'V1', // 车辆名称
// state: '未知状态', // 车辆状态
// stateId: 7, // 车辆状态ID
// theta: 0.9073792099952698, // 车辆航向角
// x: -4.030919075012207, // 车辆x坐标
// y: -1.6574244499206543 // 车辆y坐标
// },
loginVisible: false,
configVisible: false
}
},
computed: {
exception () {
let str = ''
if (JSON.stringify(this.topInfo) !== '{}') {
str = this.topInfo.exceptionInfo.exception.map((item, index) => `${index + 1}.${item}`).join('')
}
return str
}
},
created () {
this._queryHead()
},
@@ -131,6 +141,7 @@ export default {
wsMessage (res) {
clearTimeout(this.timer)
this.topInfo = res.data
this.$store.dispatch('setAgvObj', this.topInfo)
},
wsErr () {
this.timer = setTimeout(() => {
@@ -151,11 +162,12 @@ export default {
background linear-gradient(0deg, #E64F29, rgba(230, 79, 41, 0.5))
border-color rgba(230, 79, 41, 0.7)
.state-item
_wh(.72rem, .3rem)
_font(.14rem,.3rem,#fff,,center)
_wh(.72rem, .25rem)
_font(.14rem,.25rem,#fff,,center)
font-family 'Adobe Heiti Std'
margin-right .04rem
background center / 100% 100% url(../../images/new/state-item_bg.png) no-repeat
box-shadow inset 0px 0px 3px 2px rgb(149, 221, 253, 70%)
.elec-qty-wrap
_wh(.5rem, .25rem)
margin-right .04rem
@@ -170,12 +182,12 @@ export default {
.elec-qty-border
_wh(100%, 100%)
z-index 152
box-shadow inset 0px 0px 4px 2px rgba(90, 223, 188, 70%)
box-shadow inset 0px 0px 3px 2px rgba(90, 223, 188, 70%)
.elec-wraning
border-color #ffe600
background center / 100% 100% url(../../images/new/elec_y.png) no-repeat
.elec-qty-border
box-shadow inset 0px 0px 4px 2px rgba(192, 176, 28, 70%)
box-shadow inset 0px 0px 3px 2px rgba(192, 176, 28, 70%)
.elec-txt
position relative
z-index 153