运输页面

This commit is contained in:
shijing 2024-02-05 17:02:41 +08:00
parent 3cf1e45762
commit e60973b274
8 changed files with 280 additions and 43 deletions

View File

@ -6,7 +6,7 @@ export default {
drain: { drain: {
list: { list: {
name: "列表", name: "列表",
req: async function(data){ req: async function (data) {
return await http.get( return await http.get(
`${config.API_URL}/enp/drain/`, `${config.API_URL}/enp/drain/`,
data data
@ -15,7 +15,7 @@ export default {
}, },
create: { create: {
name: "创建", name: "创建",
req: async function(data){ req: async function (data) {
return await http.post( return await http.post(
`${config.API_URL}/enp/drain/`, `${config.API_URL}/enp/drain/`,
data); data);
@ -23,7 +23,7 @@ export default {
}, },
item: { item: {
name: "详情", name: "详情",
req: async function(id){ req: async function (id) {
return await http.get( return await http.get(
`${config.API_URL}/enp/drain/${id}/` `${config.API_URL}/enp/drain/${id}/`
); );
@ -31,7 +31,7 @@ export default {
}, },
update: { update: {
name: "更新", name: "更新",
req: async function(id, data){ req: async function (id, data) {
return await http.put( return await http.put(
`${config.API_URL}/enp/drain/${id}/`, `${config.API_URL}/enp/drain/${id}/`,
data); data);
@ -39,7 +39,7 @@ export default {
}, },
delete: { delete: {
name: "删除", name: "删除",
req: async function(id){ req: async function (id) {
return await http.delete( return await http.delete(
`${config.API_URL}/enp/drain/${id}/`); `${config.API_URL}/enp/drain/${id}/`);
} }
@ -49,16 +49,16 @@ export default {
drain_equip: { drain_equip: {
list: { list: {
name: "排口/设备关系", name: "排口/设备关系",
req: async function(data){ req: async function (data) {
return await http.get( return await http.get(
`${config.API_URL}/enp/drain_equip/`, `${config.API_URL}/enp/drain_equip/`,
data data
); );
} }
}, },
create: { create: {
name: "创建", name: "创建",
req: async function(data){ req: async function (data) {
return await http.post( return await http.post(
`${config.API_URL}/enp/drain_equip/`, `${config.API_URL}/enp/drain_equip/`,
data); data);
@ -67,20 +67,28 @@ export default {
, ,
delete: { delete: {
name: "删除", name: "删除",
req: async function(id){ req: async function (id) {
return await http.delete( return await http.delete(
`${config.API_URL}/enp/drain_equips/${id}/`); `${config.API_URL}/enp/drain_equips/${id}/`);
} }
} }
}, },
vehicle_access: {
name: "车辆出入记录",
req: async function (data) {
return await http.get(
`${config.API_URL}/enp/vehicle_access/`,
data);
}
},
envdata: { envdata: {
export_excel: { export_excel: {
name: "导出Excel", name: "导出Excel",
req: async function(data){ req: async function (data) {
return await http.post( return await http.post(
`${config.API_URL}/enp/envdata/export_excel/`, `${config.API_URL}/enp/envdata/export_excel/`,
data); data);
} }
} }
} }
} }

View File

@ -81,6 +81,10 @@ html.dark {
background-color: rgba(163, 166, 173, 0.5); background-color: rgba(163, 166, 173, 0.5);
} }
.el-main {
// padding: 13px 15px;
}
.el-main.nopadding { .el-main.nopadding {
background: transparent; background: transparent;
background-color: transparent; background-color: transparent;
@ -106,7 +110,34 @@ html.dark {
padding: 0; padding: 0;
} }
.el-input {
--el-input-text-color: #ffffff;
--el-input-placeholder-color: #ffffff;
--el-input-transparent-border: #ffffff;
--el-input-border-color: #ffffff;
--el-input-hover-border-color: #ffffff;
}
.el-button {
color: #ffffff;
border-color: #ffffff;
}
.el-select {
margin: 0 5px;
}
.el-select .el-input .el-select__caret {
color: #ffffff;
}
.el-select-dropdown__item.selected {
color: #ffffff;
}
.el-date-editor {
--el-input-border-color: #ffffff;
}
.el-main { .el-main {
background: transparent; background: transparent;
@ -134,8 +165,12 @@ html.dark {
border-right: none; border-right: none;
} }
.el-drawer {
box-shadow: 0 0 20px 5px rgb(4, 50, 83);
}
.scTable-table { .scTable-table {
padding: 30px; padding: 1vw;
border-radius: 20px; border-radius: 20px;
background: rgb(4, 50, 83); background: rgb(4, 50, 83);
background-color: rgb(4, 50, 83); background-color: rgb(4, 50, 83);
@ -174,17 +209,25 @@ html.dark {
background: #111; background: #111;
} }
.el-pagination.is-background .el-pager li.is-active {
background-color: #1e789a;
}
.el-pagination__jump,
.el-pagination__total {
color: #ffffff;
}
//// ////
/// ///
/// ///
//页面标题 //页面标题
.panel_title { .panel_title {
height: 3.5vh; height: 55px;
width: 100%; width: 100%;
line-height: 3.5vh; line-height: 55px;
color: #ffffff; color: #ffffff;
font-size: 1.5vh; font-size: 2vh;
padding-left: 1vw; padding-left: 1vw;
position: relative; position: relative;
border-left: 5px solid #1279c3; border-left: 5px solid #1279c3;
@ -194,10 +237,10 @@ html.dark {
//条件搜索 //条件搜索
.searchWrap { .searchWrap {
width: 100%; width: 100%;
height: 4vh; height: 50px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
line-height: 4vh; line-height: 50px;
border-radius: 5px; border-radius: 5px;
padding: 0 1vw; padding: 0 1vw;
align-items: center; align-items: center;

View File

@ -1,6 +1,6 @@
<template> <template>
<el-container> <el-container>
<el-header style="height: 40%"> <el-header style="height: 40%;padding: 0;">
<el-container> <el-container>
<el-header> <el-header>
<div class="panel_title">CEMS监测清单</div> <div class="panel_title">CEMS监测清单</div>
@ -59,18 +59,22 @@
<el-main class="nopadding"> <el-main class="nopadding">
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"> <div class="panel_title">
<div class="panel_title">CEMS监测详情</div> <div style="display: flex;justify-content: space-between;">
</div> <div class="left-panel">
<div class="right-panel"> CEMS监测详情
<el-date-picker v-model="timeRange" type="datetimerange" range-separator="" </div>
start-placeholder="开始时间" end-placeholder="结束时间" @change="handleQuery" <div class="right-panel">
style="width: 100%" /> <el-date-picker v-model="timeRange" type="datetimerange" range-separator=""
<el-select v-model="query.time_bucket" placeholder="周期" style="margin-left:4px" start-placeholder="开始时间" end-placeholder="结束时间" @change="handleQuery"
@change="handleQuery"> style="width: 100%" />
<el-option v-for="item in timeOptions" :key="item.value" :label="item.label" <el-select v-model="query.time_bucket" placeholder="周期" style="margin-left:4px"
:value="item.value" /> @change="handleQuery">
</el-select> <el-option v-for="item in timeOptions" :key="item.value" :label="item.label"
:value="item.value" />
</el-select>
</div>
</div>
</div> </div>
</el-header> </el-header>
<el-main class="nppadding"> <el-main class="nppadding">

View File

@ -1,15 +1,19 @@
<template> <template>
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"> <div class="panel_title">
<div class="panel_title">CEMS监测预警</div> <div style="display: flex;justify-content: space-between;">
</div> <div class="left-panel">
<div class="right-panel"> CEMS监测预警
<el-button @click="getTableData">刷新</el-button> </div>
<div class="right-panel">
<el-button @click="getTableData">刷新</el-button>
</div>
</div>
</div> </div>
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">
<el-table :data="tableData" style="width: 100%;" size="large" row-key="id" v-loading="tableLoading"> <scTable :data="tableData" style="width: 100%;" size="large" row-key="id" v-loading="tableLoading">
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column prop="equipment_number" label="设备编号" width="120" /> <el-table-column prop="equipment_number" label="设备编号" width="120" />
<el-table-column prop="drain_name" label="排口名称" width="180" /> <el-table-column prop="drain_name" label="排口名称" width="180" />
@ -34,7 +38,7 @@
<span v-else style="color:red;font-weight: bold;">未达标</span> <span v-else style="color:red;font-weight: bold;">未达标</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </scTable>
</el-main> </el-main>
</el-container> </el-container>
</template> </template>

View File

@ -0,0 +1,76 @@
<template>
<el-container>
<el-header>
<div class="panel_title">厂内清洁
<div class="backMap" @click="backtoMap">
切换地图
<el-icon>
<Switch />
</el-icon>
</div>
</div>
</el-header>
<el-main class="nopadding">
<el-container>
<el-header>
<div class="searchWrap">
<div style="font-size: 1vh;">
车辆总数<span class="totalNumber">0</span>
</div>
<div>
<el-select v-model="query.cate" placeholder="车辆分类" @change="handleQuery" clearable>
<el-option v-for="item in cateOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
<el-select v-model="query.area" placeholder="" style="width:7vw">
<el-option v-for="item in options" :key="item.value" :label="item.label"
:value="item.value">
</el-option>
</el-select>
<el-input :input-style="searchInputStyle" style="width:7vw;margin:0 5px" v-model="query.search"
placeholder=""></el-input>
<el-button @click="handleQuery">查询</el-button>
</div>
</div>
</el-header>
<el-main>
<scTable :data="tableData" :apiObj="apiObj" size="large" style="" @row-click="rowClick">
<el-table-column prop="index" label="序号"></el-table-column>
<el-table-column prop="number" label="车牌号"></el-table-column>
<el-table-column prop="name" label="内部管理号牌"></el-table-column>
<el-table-column prop="level" label="环保登记编码"></el-table-column>
<el-table-column prop="mgroup" label="注册日期"></el-table-column>
<el-table-column prop="eqpment" label="车辆识别代号VIN"></el-table-column>
<el-table-column prop="mgroup" label="发动机号码"></el-table-column>
<el-table-column prop="mgroup" label="排放阶段"></el-table-column>
<el-table-column prop="mgroup" label="随车清单"></el-table-column>
<el-table-column prop="mgroup" label="行驶证"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-main>
</el-container>
</template>
<script>
export default {
data() {
return {
query: {},
cateOptions: [
{ id: 1, name: '场内运输车辆(白名单)' },
{ id: 2, name: '非路道移动机械' },
{ id: 3, name: '环卫车辆' },
{ id: 4, name: '其他车辆' },
],
apiObj: this.$API.enp.vehicle_access,
params: { type: 1 },
}
},
methods: {
handleQuery() {
this.$refs.table.queryData(this.query);
}
}
}
</script>

View File

@ -484,11 +484,11 @@ export default {
} }
.backMap { .backMap {
height: 2vh; height: 25px;
line-height: 2vh; line-height: 25px;
position: absolute; position: absolute;
right: 1vw; right: 1vw;
top: 0.7vh; top: 15px;
font-size: 1vh; font-size: 1vh;
width: -moz-fit-content; width: -moz-fit-content;
width: fit-content; width: fit-content;

View File

@ -0,0 +1,96 @@
<template>
<el-container>
<el-header>
<div class="panel_title">进出厂记录
<div class="backMap" @click="backtoMap">
切换地图
<el-icon>
<Switch />
</el-icon>
</div>
</div>
</el-header>
<el-main class="nopadding">
<el-container>
<el-header>
<div class="searchWrap">
<div style="font-size: 1vh;">
车辆总数<span class="totalNumber">0</span>
</div>
<div>
<el-select v-model="query.timetype" placeholder="时间类型" @change="timeHandleQuery" clearable>
<el-option v-for="item in timeOptions" :key="item" :label="item" :value="item"></el-option>
</el-select>
<!-- 时间 -->
<el-date-picker v-model="query.time" v-if="query.timetype == ''" type="date" placeholder="选择时间"
format="YYYY-MM-DD" value-format="YYYY-MM-DD" :picker-options="pickerOptions" />
<el-date-picker v-model="query.time" v-else-if="query.timetype == ''" type="month"
placeholder="选择月" format="YYYY-MM" value-format="YYYY-MM" :picker-options="pickerOptions" />
<el-date-picker v-model="query.time" v-else-if="query.timetype == ''" type="year"
placeholder="选择年" format="YYYY" value-format="YYYY" :picker-options="pickerOptions" />
<el-select v-model="query.cate" placeholder="车辆分类" @change="carHandleQuery" clearable>
<el-option v-for="item in cateOptions" :key="item.id" :label="item.name"
:value="item.id"></el-option>
</el-select>
<el-select v-model="query.type" placeholder="出入类型" style="width:7vw">
<el-option v-for="item in typeOptions" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
<el-select v-model="query.status" placeholder="行驶证状态" style="width:7vw">
<el-option v-for="item in statusOptions" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
<el-input :input-style="searchInputStyle" style="width:7vw;margin:0 5px" v-model="query.search"
placeholder=""></el-input>
<el-button @click="handleQuery">查询</el-button>
</div>
</div>
</el-header>
<el-main>
<scTable :data="tableData" :apiObj="apiObj" size="large" style="" @row-click="rowClick">
<el-table-column prop="index" label="序号"></el-table-column>
<el-table-column prop="number" label="车牌号码"></el-table-column>
<el-table-column prop="level" label="过门禁时间"></el-table-column>
<el-table-column prop="mgroup" label="进出厂类型"></el-table-column>
<el-table-column prop="eqpment" label="门禁名称"></el-table-column>
<el-table-column prop="mgroup" label="车辆识别代号VIN"></el-table-column>
<el-table-column prop="mgroup" label="行驶证状态"></el-table-column>
</scTable>
</el-main>
</el-container>
</el-main>
</el-container>
</template>
<script>
export default {
data() {
return {
query: {},
cateOptions: [
{ id: 1, name: '货车' },
{ id: 2, name: '罐车' },
],
typeOptions: [
{ id: '', name: '全部' },
{ id: 1, name: '进厂' },
{ id: 2, name: '出厂' }
],
statusOptions: [
{ id: '', name: '全部' },
{ id: 10, name: '已录入' },
{ id: 20, name: '未录入' }
],
timeOptions: ['日', '月', '年'],
apiObj: this.$API.enp.vehicle_access,
params: { type: 2 },
}
},
methods: {
handleQuery() {
this.$refs.table.queryData(this.query);
},
timeHandleQuery() { },
carHandleQuery() { },
}
}
</script>

View File

@ -64,8 +64,8 @@
</span> </span>
<template #dropdown> <template #dropdown>
<el-dropdown-menu class="enpMenu"> <el-dropdown-menu class="enpMenu">
<el-dropdown-item command="changwai">场外运输</el-dropdown-item> <el-dropdown-item command="transport">场外运输</el-dropdown-item>
<el-dropdown-item command="inner">场内清洁</el-dropdown-item> <el-dropdown-item command="innerClean">场内清洁</el-dropdown-item>
</el-dropdown-menu> </el-dropdown-menu>
</template> </template>
</el-dropdown> </el-dropdown>
@ -293,6 +293,8 @@
<cems2-drawer v-else-if="activeDrawerName == 'cems2'" @close="closeDialog"></cems2-drawer> <cems2-drawer v-else-if="activeDrawerName == 'cems2'" @close="closeDialog"></cems2-drawer>
<cems-export v-else-if="activeDrawerName == 'cemsExport'" @close="closeDialog"></cems-export> <cems-export v-else-if="activeDrawerName == 'cemsExport'" @close="closeDialog"></cems-export>
<pollutant v-else-if="activeDrawerName == 'pollutant'" @close="closeDialog"></pollutant> <pollutant v-else-if="activeDrawerName == 'pollutant'" @close="closeDialog"></pollutant>
<transport v-else-if="activeDrawerName == 'transport'" @close="closeDialog"></transport>
<innerclean v-else-if="activeDrawerName == 'innerClean'" @close="closeDialog"></innerclean>
</el-drawer> </el-drawer>
</div> </div>
</el-main> </el-main>
@ -309,6 +311,8 @@ import cemsDrawer from './enpComponents/cems.vue'
import cems2Drawer from './enpComponents/cems2.vue' import cems2Drawer from './enpComponents/cems2.vue'
import cemsExport from './enpComponents/cemsExport.vue' import cemsExport from './enpComponents/cemsExport.vue'
import pollutant from "./enpComponents/pollutant.vue" import pollutant from "./enpComponents/pollutant.vue"
import innerclean from "./enpComponents/innerclean.vue"
import transport from "./enpComponents/transport.vue"
import 'babylonjs-loaders'; import 'babylonjs-loaders';
import 'animate.css'; import 'animate.css';
export default { export default {
@ -317,7 +321,9 @@ export default {
cemsDrawer, cemsDrawer,
cems2Drawer, cems2Drawer,
cemsExport, cemsExport,
pollutant pollutant,
innerclean,
transport
}, },
data() { data() {
return { return {