lg_frontend/pages/cleanTravel/bangcheng.vue

296 lines
6.9 KiB
Vue
Raw Normal View History

2024-07-01 14:53:31 +00:00
<template>
<div>
<a-page-header
:ghost="false"
style="border-bottom: 1px solid rgb(235, 237, 240)"
title="磅秤台账"
2024-07-01 14:53:31 +00:00
@back="() => $router.go(-1)"
/>
<div class="type-button">
<div :class="['tabs-button',activeTabsButton == null?'active-tabs-button':'']" @click="tabsChange(null)">
全部
</div>
<div :class="['tabs-button',activeTabsButton == 1?'active-tabs-button':'']" @click="tabsChange(1)">
东门
</div>
<div :class="['tabs-button',activeTabsButton == 2?'active-tabs-button':'']" @click="tabsChange(2)">
东门
</div>
<div :class="['tabs-button',activeTabsButton == 3?'active-tabs-button':'']" @click="tabsChange(3)">
东门
</div>
<div :class="['tabs-button',activeTabsButton == 4?'active-tabs-button':'']" @click="tabsChange(4)">
东门
</div>
</div>
<div class="data-info">
<div class="left-table">
<Curd
hide-action
hide-search
hide-button
:columns="columns"
:api-conf="apiConf"
:form-items="formItems"
@edit="editHandler"
@viewDetails="viewDetails"
>
<template slot="search-button" slot-scope="{ search }">
<a-button type="primary" @click="exportList(search)">导出历史数据</a-button>
</template>
</Curd>
</div>
<div class="right-details" v-if="isShowInfoDetails">
<div class="header-title">驾驶人详情</div>
<img src=""/>
<div class="group-button">
<div :class="['_button',activeButton == 1?'active_button':'']" @click="viewImgByType(1)">出入场抓拍图</div>
<div :class="['_button',activeButton == 2?'active_button':'']" @click="viewImgByType(2)">行驶证-正面</div>
<div :class="['_button',activeButton == 3?'active_button':'']" @click="viewImgByType(3)">行驶证-反面</div>
<div :class="['_button',activeButton == 4?'active_button':'']" @click="viewImgByType(4)">环保清单</div>
</div>
<div class="details-info">
<div class="details-info-item">
<div class="_title">排放标准</div>
<div class="_title">国0</div>
</div>
<div class="details-info-item">
<div class="_title">VIN</div>
<div class="_title">国0</div>
</div>
<div class="details-info-item">
<div class="_title">发动机号</div>
<div class="_title">国0</div>
</div>
<div class="details-info-item">
<div class="_title">注册日期</div>
<div class="_title">国0</div>
</div>
</div>
<div class="footer-button">
<Button type="primary" @click="closeDetails">关闭详情</Button>
</div>
</div>
</div>
2024-07-01 14:53:31 +00:00
</div>
</template>
<script>
import Curd from "../../components/smallCommon/Curd.vue";
import moment from 'moment'
2024-07-01 14:53:31 +00:00
export default {
name: "user",
layout: "user",
components: {
Curd
},
data() {
2024-07-01 14:53:31 +00:00
return {
isEdit: false,
roles: [],
columns: [
{
dataIndex: 'outTime',
key: 'outTime',
title: '日期'
},
{
dataIndex: 'carNum',
key: 'carNum',
title: '车牌号'
},
{
dataIndex: 'carModel',
key: 'carModel',
title: '车型'
},
{
dataIndex: 'newCar',
key: 'newCar',
title: '新能源',
customRender(text) {
2024-07-01 14:53:31 +00:00
if (text) return '是'
return '否'
}
},
{
dataIndex: 'emissions',
key: 'emissions',
title: '燃油车'
},
{
dataIndex: 'createDateTime',
key: 'createDateTime',
title: '出厂日期'
},
{
title: '操作',
key: 'operation',
scopedSlots: {customRender: 'details'},
fixed: 'right',
width: 100
},
2024-07-01 14:53:31 +00:00
],
apiConf: {
listApi: {api: '/api/Ledger/list', method: 'get'},
},
isShowInfoDetails: false,
activeButton: 1,
activeTabsButton: null
2024-07-01 14:53:31 +00:00
}
},
computed: {
formItems() {
2024-07-01 14:53:31 +00:00
return [
{
type: 'dateRange',
key: 'time',
label: '日期',
isSearch: true,
placeholder: ['请选择开始日期', '请选择结束日期'],
rules: [
{required: true, message: '请选择时间范围'}
2024-07-01 14:53:31 +00:00
],
fields: ['startTime', 'endTime']
}
]
}
},
created() {
},
methods: {
editHandler(isEdit) {
2024-07-01 14:53:31 +00:00
this.isEdit = isEdit
},
exportList({time}) {
const [start, end] = time
2024-07-01 14:53:31 +00:00
const fmt = 'YYYY-MM-DD'
window.open(`http://101.43.201.20:5000/api/Ledger/export?start=${moment(start).format(fmt)}&end=${moment(end).format(fmt)}`, '_blank')
},
viewDetails(data) {
console.log('data:', data)
this.isShowInfoDetails = true
},
//根据选中的图片类型查看图片
viewImgByType(value) {
this.activeButton = value
},
//关闭详情
closeDetails() {
this.isShowInfoDetails = false
},
//方位改变
tabsChange(value){
this.activeTabsButton = value
2024-07-01 14:53:31 +00:00
}
}
}
</script>
<style scoped lang="less">
.type-button {
margin: 20px 300px;
display: flex;
flex-flow: row;
justify-content: space-between;
.tabs-button {
height: 40px;
cursor: pointer;
border: 1px solid #e8e8e8;
width: 200px;
text-align: center;
line-height: 40px;
}
.active-tabs-button {
background: #0088ff;
color: #FFFFFF;
}
}
.data-info {
display: flex;
flex-flow: row;
.left-table {
flex: 1;
}
.right-details {
width: 600px;
height: 700px;
display: flex;
flex-flow: column;
align-items: center;
border: 1px solid #e8e8e8;
margin-left: 10px;
.header-title {
font-size: 18px;
text-align: center;
}
img {
margin-top: 10px;
width: 500px;
height: 300px;
}
.group-button {
margin-top: 20px;
display: flex;
flex-flow: row;
width: 500px;
justify-content: space-between;
._button {
width: 100px;
height: 50px;
border: 1px solid #777777;
cursor: pointer;
text-align: center;
line-height: 50px;
}
.active_button {
background: #0088ff;
color: #FFFFFF;
}
}
.details-info {
padding-left: 50px;
width: 100%;
flex: 1;
display: flex;
flex-flow: column;
justify-content: space-around;
align-items: flex-start;
.details-info-item {
display: flex;
flex-flow: row;
}
}
.footer-button {
height: 30px;
margin-bottom: 10px;
cursor: pointer;
}
}
}
2024-07-01 14:53:31 +00:00
</style>