<template>
|
<div>
|
<div style="padding: 10px 10px 0px 10px;">
|
<el-form :inline="true" :model="searchForm">
|
<el-select v-model="searchForm.parkId">
|
<el-option v-for="item in table1" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
</el-select>
|
<el-form-item>
|
<el-button type="primary" size="small" @click="onSearch" icon="el-icon-search">查询</el-button>
|
<el-button type="primary" size="small" @click="onAdd" icon="el-icon-plus">增加</el-button>
|
</el-form-item>
|
</el-form>
|
</div>
|
|
<el-table :data="pageData.rows" v-loading="pageData.isLoading" border style="width:100%;border:1px solid #bcbec2;">
|
<el-table-column type="index" width="50" label="序号" align="center"> </el-table-column>
|
<el-table-column prop="parkName" label="停车场" align="center" width="150"></el-table-column>
|
<el-table-column prop="armyCar" label="军车是否免费" align="center" width="100">
|
<template slot-scope="scope">
|
<p v-if="scope.row.armyCar==0">免费</p>
|
<p v-if="scope.row.armyCar==1">收费</p>
|
</template>
|
</el-table-column>
|
<el-table-column prop="freeTime" label="停车免费时长(分钟)" align="center" width="150"></el-table-column>
|
<el-table-column prop="status" label="规则启用" align="center" width="100">
|
<template slot-scope="scope">
|
<p v-if="scope.row.status==0">启用</p>
|
<p v-if="scope.row.status==1">停用</p>
|
</template>
|
</el-table-column>
|
<el-table-column prop="chargeStartTime1" label="计费开始时间" align="center"></el-table-column>
|
<el-table-column prop="chargeEndTime1" label="计费结束时间" align="center"></el-table-column>
|
<el-table-column prop="cost1" label="每小时收费(元)" align="center"></el-table-column>
|
<el-table-column prop="maxCost1" label="封顶价格(元)" align="center"></el-table-column>
|
<el-table-column prop="chargeStartTime2" label="计费开始时间2" align="center"></el-table-column>
|
<el-table-column prop="chargeEndTime2" label="计费结束时间2" align="center"></el-table-column>
|
<el-table-column prop="cost2" label="每小时收费(元)" align="center"></el-table-column>
|
<el-table-column prop="maxCost2" label="封顶价格(元)" align="center"></el-table-column>
|
<el-table-column prop="chargeStartTime3" label="计费开始时间3" align="center"></el-table-column>
|
<el-table-column prop="chargeEndTime3" label="计费结束时间3" align="center"></el-table-column>
|
<el-table-column prop="cost3" label="每小时收费(元)" align="center"></el-table-column>
|
<el-table-column prop="maxCost3" label="封顶价格(元)" align="center"></el-table-column>
|
<el-table-column label="操作" fixed="right" width="150" align="center">
|
<template slot-scope="scope">
|
<el-button size="mini" @click="onEdit(scope.row)">编辑</el-button>
|
<el-button size="mini" type="danger" @click="onDelete(scope.row)">删除</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<el-pagination background @size-change="onPageSizeChange" @current-change="onCurrentPageChange" :current-page="pageData.currentPage" :page-size="pageData.pageSize" :total="pageData.total" style="float: right"></el-pagination>
|
|
<el-dialog title="编辑" :visible.sync="flag" width="40%">
|
<el-form :model="formData" ref="formData" label-width="150px">
|
<el-form-item label="停车场" prop="parkId" :rules="[{ required: true, message: '请选择停车场', trigger: 'change'}]">
|
<el-select v-model="formData.parkId">
|
<el-option v-for="item in table1" :key="item.id" :label="item.name" :value="item.id"></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="军车是否免费" prop="armyCar" :rules="[{ required: true, message: '请选择', trigger: 'change'}]">
|
<el-select v-model="formData.armyCar" >
|
<el-option label="免费" :value=0></el-option>
|
<el-option label="收费" :value=1></el-option>
|
</el-select>
|
</el-form-item>
|
<el-form-item label="停车免费时长(分钟)" prop="freeTime">
|
<el-input-number v-model="formData.freeTime" :min="0"></el-input-number>
|
</el-form-item>
|
<el-form-item label="计费开始时间" prop="chargeStartTime1">
|
<el-time-picker
|
v-model="formData.chargeStartTime1"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
>
|
</el-time-picker>
|
</el-form-item>
|
<el-form-item label="计费结束时间" prop="chargeEndTime1">
|
<el-time-picker
|
v-model="formData.chargeEndTime1"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
>
|
</el-time-picker>
|
</el-form-item>
|
<el-form-item label="每小时收费(元)" prop="cost1">
|
<el-input-number v-model="formData.cost1" :min="0"></el-input-number>
|
</el-form-item>
|
<el-form-item label="封顶价格(元)" prop="maxCost1">
|
<el-input-number v-model="formData.maxCost1" :min="0"></el-input-number>
|
</el-form-item>
|
|
<el-form-item label="计费开始时间2" prop="chargeStartTime2">
|
<el-time-picker
|
v-model="formData.chargeStartTime2"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
/>
|
</el-form-item>
|
<el-form-item label="计费结束时间2" prop="chargeEndTime2">
|
<el-time-picker
|
v-model="formData.chargeEndTime2"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
/>
|
</el-form-item>
|
<el-form-item label="每小时收费(元)2" prop="cost2">
|
<el-input-number v-model="formData.cost2" :min="0"></el-input-number>
|
</el-form-item>
|
<el-form-item label="封顶价格(元)2" prop="maxCost2">
|
<el-input-number v-model="formData.maxCost2" :min="0"></el-input-number>
|
</el-form-item>
|
|
<el-form-item label="计费开始时间3" prop="chargeStartTime3">
|
<el-time-picker
|
v-model="formData.chargeStartTime3"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
/>
|
</el-form-item>
|
<el-form-item label="计费结束时间3" prop="chargeEndTime3">
|
<el-time-picker
|
v-model="formData.chargeEndTime3"
|
:picker-options="{ selectableRange: '00:00:00 - 23:59:59' }"
|
format="HH:mm:ss"
|
value-format="HH:mm:ss"
|
/>
|
</el-form-item>
|
<el-form-item label="每小时收费(元)3" prop="cost3">
|
<el-input-number v-model="formData.cost3" :min="0"></el-input-number>
|
</el-form-item>
|
<el-form-item label="封顶价格(元)3" prop="maxCost3">
|
<el-input-number v-model="formData.maxCost3" :min="0"></el-input-number>
|
</el-form-item>
|
|
</el-form>
|
<div slot="footer" class="dialog-footer">
|
<el-button @click="flag = false">取 消</el-button>
|
<el-button type="primary" @click="onSave">确 定</el-button>
|
</div>
|
</el-dialog>
|
</div>
|
</template>
|
|
<script>
|
export default {
|
name: "index",
|
data: function () {
|
return {
|
flag:false,
|
flag2:false,
|
searchForm: {
|
parkId: ''
|
},
|
pageData: this.$byutil.defaultPageData(),
|
formData: {
|
armyCar: 0,
|
chargeStartTime1: '',
|
chargeEndTime1: '',
|
cost1:'',
|
maxCost1:'',
|
chargeStartTime2: '',
|
chargeEndTime2: '',
|
cost2:'',
|
maxCost2:'',
|
chargeStartTime3: '',
|
chargeEndTime3: '',
|
cost3:'',
|
maxCost3:'',
|
freeTime:0,
|
parkId:null
|
},
|
urlPath:this.$systemconfig.basePath + '/rule/',
|
table1:[],
|
}
|
},
|
mounted() {
|
this.loadData();
|
this.$byutil.postData(this, this.$systemconfig.basePath+'/park/findAll', this.formData, res => {
|
this.table1 = res.data;
|
})
|
},
|
methods: {
|
onSave(){
|
this.$refs['formData'].validate((valid) => {
|
if (valid) {
|
this.$byutil.postData(this, this.urlPath+'save', this.formData, res => {
|
this.$refs['formData'].resetFields();
|
this.flag=false;
|
this.$message({message:'保存成功', type: 'success'});
|
this.loadData();
|
})
|
} else {
|
return false;
|
}
|
});
|
},
|
loadData() {
|
this.$byutil.loadPageData(this, this.urlPath+'findPage', this.searchForm);
|
},
|
onSearch() {
|
this.pageData = this.$byutil.defaultPageData();
|
this.loadData();
|
},
|
onAdd() {
|
this.flag=true;
|
this.$refs['formData'].resetFields();
|
this.formData = {
|
armyCar: 0,
|
chargeStartTime1: '',
|
chargeEndTime1: '',
|
cost1:'',
|
maxCost1:'',
|
chargeStartTime2: '',
|
chargeEndTime2: '',
|
cost2:'',
|
maxCost2:'',
|
chargeStartTime3: '',
|
chargeEndTime3: '',
|
cost3:'',
|
maxCost3:'',
|
freeTime:0,
|
parkId:null
|
}
|
},
|
onEdit(row) {
|
this.flag=true;
|
this.formData = row;
|
},
|
onDelete(row) {
|
this.$byutil.deleteData(this,this.urlPath+"delete",{id:row.id}, res => {
|
this.$message({message: '删除成功', type: 'success'});
|
this.loadData();
|
})
|
},
|
onPageSizeChange(val) {
|
this.pageData.pageSize = val;
|
this.loadData();
|
},
|
onCurrentPageChange(val) {
|
this.pageData.page = val;
|
this.loadData();
|
},
|
}
|
}
|
</script>
|
|
<style scoped>
|
|
</style>
|