| | |
| | | <div class="drone-card"> |
| | | <div class="header"> |
| | | <div class="title"> |
| | | <span class="name">{{ data.droneName }}</span> |
| | | <el-tooltip |
| | | class="title-tooltip" |
| | | :content="data.droneName || '-'" |
| | | placement="top" |
| | | effect="dark" |
| | | :show-after="200" |
| | | > |
| | | <span class="name">{{ data.droneName }}</span> |
| | | </el-tooltip> |
| | | <span class="status"> |
| | | <span :class="getStatusType(data)"> |
| | | |
| | |
| | | return 'detecting' |
| | | } |
| | | |
| | | const normalizeCounterWay = (value) => { |
| | | if (value == null) return '' |
| | | return String(value).trim() |
| | | } |
| | | |
| | | const showSignalBtn = (item) => { |
| | | const counterWay = normalizeCounterWay(item?.counterWay) |
| | | return counterWay !== '1' |
| | | } |
| | | |
| | | const showCounterBtn = (item) => { |
| | | const counterWay = normalizeCounterWay(item?.counterWay) |
| | | return counterWay !== '2' |
| | | } |
| | | |
| | | const getDataSource = (item) => { |
| | | return item?.deviceName || item?.areaName || '-' |
| | | } |
| | |
| | | display: flex; |
| | | align-items: center; |
| | | gap: 6px; |
| | | min-width: 0; |
| | | |
| | | .title-tooltip { |
| | | flex: 1; |
| | | min-width: 0; |
| | | display: block; |
| | | } |
| | | |
| | | .name { |
| | | display: inline-block; |
| | | max-width: 100%; |
| | | font-family: Source Han Sans CN, Source Han Sans CN; |
| | | font-weight: bold; |
| | | font-size: 14px; |
| | |
| | | text-align: left; |
| | | font-style: normal; |
| | | text-transform: none; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow: ellipsis; |
| | | } |
| | | |
| | | .status { |
| | | flex-shrink: 0; |
| | | padding: 0 10px; |
| | | display: flex; |
| | | align-items: center; |