This commit is contained in:
磷叶 2025-05-13 16:08:52 +08:00
parent 78447a6444
commit 28e6883777
4 changed files with 36 additions and 32 deletions

View File

@ -28,23 +28,23 @@
<el-descriptions-item label="MAC">{{ detail.mac | dv }}</el-descriptions-item> <el-descriptions-item label="MAC">{{ detail.mac | dv }}</el-descriptions-item>
<el-descriptions-item label="车牌">{{ detail.vehicleNum | dv }}</el-descriptions-item> <el-descriptions-item label="车牌">{{ detail.vehicleNum | dv }}</el-descriptions-item>
<el-descriptions-item label="状态"> <el-descriptions-item label="状态">
<dict-tag :options="dict.type.device_status" :value="detail.status" size="small"/> <dict-tag :options="dict.type.device_status" :value="detail.status" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="版本">{{ detail.hardwareVersion | dv }} | {{ detail.softwareVersion | dv }}</el-descriptions-item> <el-descriptions-item label="版本">{{ detail.hardwareVersion | dv }} | {{ detail.softwareVersion | dv }}</el-descriptions-item>
<el-descriptions-item label="锁状态"> <el-descriptions-item label="锁状态">
<dict-tag :options="dict.type.device_lock_status" :value="detail.lockStatus" size="small"/> <dict-tag :options="dict.type.device_lock_status" :value="detail.lockStatus" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="电门"> <el-descriptions-item label="电门">
<dict-tag :options="dict.type.device_quality" :value="detail.quality" size="small"/> <dict-tag :options="dict.type.device_quality" :value="detail.quality" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="在线状态"> <el-descriptions-item label="在线状态">
<dict-tag :options="dict.type.device_online_status" :value="detail.onlineStatus" size="small"/> <dict-tag :options="dict.type.device_online_status" :value="detail.onlineStatus" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="车辆"> <el-descriptions-item label="车辆">
<dict-tag :options="dict.type.device_iot_status" :value="detail.iotStatus" size="small"/> <dict-tag :options="dict.type.device_iot_status" :value="detail.iotStatus" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="声音"> <el-descriptions-item label="声音">
<dict-tag :options="dict.type.device_music" :value="detail.music" size="small"/> <dict-tag :options="dict.type.device_music" :value="detail.music" size="mini"/>
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item label="创建时间">{{ detail.createTime | dv }}</el-descriptions-item> <el-descriptions-item label="创建时间">{{ detail.createTime | dv }}</el-descriptions-item>
<el-descriptions-item label="最后上线时间">{{ detail.lastOnlineTime | dv }}</el-descriptions-item> <el-descriptions-item label="最后上线时间">{{ detail.lastOnlineTime | dv }}</el-descriptions-item>
@ -53,10 +53,12 @@
<collapse-panel :value="true" title="位置信息"> <collapse-panel :value="true" title="位置信息">
<el-descriptions :column="4"> <el-descriptions :column="4">
<el-descriptions-item label="定位">{{ detail.longitude | dv }}, {{ detail.latitude | dv }}</el-descriptions-item> <el-descriptions-item label="定位" :span="2">
<dict-tag :options="dict.type.device_location_type" :value="detail.locationType" size="mini"/>
{{ detail.longitude | dv }}, {{ detail.latitude | dv }}
</el-descriptions-item>
<el-descriptions-item label="最后定位时间">{{ detail.lastLocationTime | dv }}</el-descriptions-item> <el-descriptions-item label="最后定位时间">{{ detail.lastLocationTime | dv }}</el-descriptions-item>
<el-descriptions-item label="信号强度">{{ detail.signalStrength | dv }}</el-descriptions-item> <el-descriptions-item label="信号">{{ detail.signalStrength | dv }} | {{ detail.satellites | dv }}</el-descriptions-item>
<el-descriptions-item label="卫星数量">{{ detail.satellites | dv }}</el-descriptions-item>
</el-descriptions> </el-descriptions>
</collapse-panel> </collapse-panel>
@ -109,7 +111,7 @@
<el-card class="box-card" v-if="detail.id"> <el-card class="box-card" v-if="detail.id">
<el-tabs > <el-tabs >
<el-tab-pane label="设备轨迹" lazy v-if="checkPermi(['bst:locationLog:list'])"> <el-tab-pane label="车辆轨迹" lazy v-if="checkPermi(['bst:locationLog:list'])">
<device-location :query="{ eqMac: detail.mac }" :area-id="detail.areaId" /> <device-location :query="{ eqMac: detail.mac }" :area-id="detail.areaId" />
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="命令日志" lazy v-if="checkPermi(['bst:commandLog:list'])"> <el-tab-pane label="命令日志" lazy v-if="checkPermi(['bst:commandLog:list'])">
@ -127,27 +129,30 @@
</template> </template>
<script> <script>
import { getDevice } from '@/api/bst/device'; import { disableDevice, enableDevice, getDevice, inDevice, outDevice } from '@/api/bst/device';
import { unlockDevice, lockDevice, ringDevice, rebootDevice, unlockSeatDevice, refreshDevice } from "@/api/bst/deviceIot"; import { lockDevice, rebootDevice, refreshDevice, ringDevice, unlockDevice, unlockSeatDevice } from "@/api/bst/deviceIot";
import { outDevice, inDevice, disableDevice, enableDevice } from "@/api/bst/device";
import CollapsePanel from '@/components/CollapsePanel/index.vue';
import BooleanTag from '@/components/BooleanTag/index.vue'; import BooleanTag from '@/components/BooleanTag/index.vue';
import { DeviceStatus, LogBizType } from '@/utils/enums'; import AreaLink from '@/components/Business/Area/AreaLink.vue';
import { $device } from '@/views/bst/device/mixins';
import OrderDevice from '@/views/bst/orderDevice/index.vue';
import DeviceLocation from '@/views/bst/device/view/components/DeviceLocation.vue';
import CommandLog from '@/views/bst/commandLog/index.vue';
import DeviceBonusPreview from '@/views/bst/device/view/components/DeviceBonusPreview.vue';
import DeviceSn from '@/views/bst/device/components/DeviceSn.vue';
import Operlog from '@/views/monitor/operlog/index.vue';
import OrderLink from '@/components/Business/Order/OrderLink.vue'; import OrderLink from '@/components/Business/Order/OrderLink.vue';
import UserLink from '@/components/Business/User/UserLink.vue'; import UserLink from '@/components/Business/User/UserLink.vue';
import AreaLink from '@/components/Business/Area/AreaLink.vue'; import CollapsePanel from '@/components/CollapsePanel/index.vue';
import { DeviceStatus, LogBizType } from '@/utils/enums';
import CommandLog from '@/views/bst/commandLog/index.vue';
import DeviceSn from '@/views/bst/device/components/DeviceSn.vue';
import { $device } from '@/views/bst/device/mixins';
import DeviceBonusPreview from '@/views/bst/device/view/components/DeviceBonusPreview.vue';
import DeviceLocation from '@/views/bst/device/view/components/DeviceLocation.vue';
import OrderDevice from '@/views/bst/orderDevice/index.vue';
import Operlog from '@/views/monitor/operlog/index.vue';
export default { export default {
name: 'DeviceView', name: 'DeviceView',
mixins: [$device], mixins: [$device],
dicts: ['device_status', 'device_lock_status', 'device_online_status', 'device_quality', 'device_iot_status', 'order_status', 'order_device_status', 'device_music'], dicts: [
'device_status', 'device_lock_status', 'device_online_status',
'device_quality', 'device_iot_status', 'order_status',
'order_device_status', 'device_music', 'device_location_type'
],
components: { components: {
CollapsePanel, CollapsePanel,
BooleanTag, BooleanTag,

View File

@ -97,13 +97,13 @@ export default {
areaQuery() { areaQuery() {
return { return {
areaId: this.areaId, areaId: this.areaId,
bonusUserId: this.userId, bonusUserId: this.isSysAdmin() ? null : this.userId,
} }
}, },
mchStatQuery() { mchStatQuery() {
return { return {
areaId: this.areaId, areaId: this.areaId,
userId: this.userId, userId: this.isSysAdmin() ? null : this.userId,
} }
} }
}, },

View File

@ -41,14 +41,14 @@
<el-col :span="12" class="stat-card income-card"> <el-col :span="12" class="stat-card income-card">
<div class="icon-bg red"><i class="el-icon-money"></i></div> <div class="icon-bg red"><i class="el-icon-money"></i></div>
<div class="stat-info"> <div class="stat-info">
<div class="stat-label">我的收入 <div class="stat-label">{{queryParams.userId ? '我的收入' : '总计收入'}}
<el-popover <el-popover
placement="right" placement="right"
width="fit-content" width="fit-content"
trigger="hover" trigger="hover"
> >
<div> <div>
<div>我的收入 = 结算分成结算时间 - 分成退款退款时间</div> <div>收入 = 结算分成结算时间 - 分成退款退款时间</div>
<div>结算分成{{ stat.bonusAmount | fix2 | dv }} </div> <div>结算分成{{ stat.bonusAmount | fix2 | dv }} </div>
<div>分成退款{{ stat.bonusRefundAmount | fix2 | dv }} </div> <div>分成退款{{ stat.bonusRefundAmount | fix2 | dv }} </div>
</div> </div>
@ -248,7 +248,6 @@
</el-row> </el-row>
</el-col> </el-col>
</el-row> </el-row>
<!-- 明细费用区一行6个更小彩色卡片 -->
</div> </div>
</template> </template>

View File

@ -215,8 +215,8 @@
</template> </template>
<script> <script>
import { cleanOperlog, delOperlog, list } from '@/api/monitor/operlog' import { cleanOperlog, delOperlog, list } from '@/api/monitor/operlog';
import UserLink from '@/components/Business/User/UserLink' import UserLink from '@/components/Business/User/UserLink';
export default { export default {
name: "Operlog", name: "Operlog",
@ -255,7 +255,7 @@ export default {
// //
queryParams: { queryParams: {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 20,
operTimeRange: [], operTimeRange: [],
operIp: undefined, operIp: undefined,
title: undefined, title: undefined,