作者 shenhailong

修改 服务url 完善用户充值页面 订单查询

... ... @@ -33,7 +33,7 @@ module.exports = {
// target: 'http://192.168.43.78:12343',//设置你调用的接口域名和端口号 别忘了加http
changeOrigin: true,
pathRewrite: {
'^/api': '/'//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://40.00.100.100:3002/user/add',直接写‘/api/user/add’即可
'^/api/': '/'//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://40.00.100.100:3002/user/add',直接写‘/api/user/add’即可
}
}
},
... ...
import axios from 'axios'
let base = 'empt-electricity-meter/order';
let base = 'empt-location/order';
export const getOrder = params => { return axios.get(`${base}/list`, { params: params }); };
... ...
import axios from 'axios'
let base = 'empt-location/queryWater';
export const getWater = params => { return axios.get(`${base}/list`, { params: params }); };
export const addOrder=params=>{return http.post(`${base}/add`, params);};
export const ediOrder=params=>{return http.put(`${base}/edi`, params);};
export const remove = params => { return axios({
method: 'DELETE',
url: `${base}/del`,
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})};
\ No newline at end of file
... ...
import axios from 'axios'
let base = 'empt-electricity-meter/electricity_meter';
let base = 'empt-location/electricity_meter';
export const getList = params => { return axios.get(`${base}/list`, { params: params }); };
... ...
import axios from 'axios'
let base = 'empt-location/userPayOrder';
export const getList = params => { return axios.get(`${base}/list`, { params: params }); };
export const remove = params => { return axios({
method: 'DELETE',
url: `${base}/del`,
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})};
//批量删除
export const batchRemove = params => { return axios.get(`${base}/batchremove`, { params: params }); };
export const edit = params => { return axios({
method: 'PUT',
url: `${base}/edit`,
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})};
export const add = params => { return axios({
method: 'POST',
url: `${base}/add`,
params: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})};
export const update = params => { return axios({
method: 'PUT',
url: `${base}/update`,
data: params,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})};
\ No newline at end of file
... ...
import axios from 'axios'
let base = 'empt-electricity-meter/water_meter';
let base = 'empt-location/water_meter';
export const getList = params => { return axios.get(`${base}/list`, { params: params }); };
... ...
... ... @@ -2,11 +2,9 @@ import Login from './views/Login.vue'
import NotFound from './views/404.vue'
import Home from './views/Home.vue'
import Main from './views/Main.vue'
// import Table from './views/nav1/Table.vue'
import Role from './views/nav1/role.vue'
import Perm from './views/nav1/perm.vue'
import LOG from './views/nav1/Log.vue'
import PreManifest from './views/agent/PreManifest.vue'
import Company from './views/nav1/company.vue'
import Department from './views/nav1/department.vue'
import Group from './views/nav1/groupcompany.vue'
... ... @@ -22,6 +20,8 @@ import Maintain from './views/staff/maintain.vue'
import Location from './views/empt/Location.vue'
import QueryOrder from './views/empt/QueryOrder.vue'
import PayOrder from './views/empt/PayOrder.vue'
import userPayOrder from './views/empt/userPayOrder.vue'
import QueryWater from './views/empt/QueryWater.vue'
let routes = [
{
... ... @@ -80,7 +80,9 @@ let routes = [
children: [
{ path: '/location', component: Location, name: '能源缴费' },
{ path: '/PayOrder', component: PayOrder, name: '缴水电费订单' },
{ path: '/userPayOrder', component: userPayOrder, name: '用户水电缴费' },
{ path: '/QueryOrder', component: QueryOrder, name: '订单查询' },
{ path: '/QueryWater', component: QueryWater, name: '水表实施信息' },
]
},
{
... ...
... ... @@ -542,7 +542,8 @@
water: '',
free: '',
freeWater: '',
eeId: row.eeid
eeId: row.eeid,
reamke2:row.adrname
}
},
... ...
... ... @@ -9,10 +9,9 @@
<div class="block">
<el-date-picker
v-model="filters.payTime"
type="daterange"
align="right"
type="datetimerange"
unlink-panels
value-format="yyyy-MM-dd"
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
... ... @@ -103,7 +102,8 @@
data() {
return {
filters: {
orderNumber: ''
orderNumber: '',
payTime:''
},
total: 0,
pageNum: 1,
... ... @@ -152,10 +152,18 @@
this.pageNum = val;
},
QueryOrder(){
// 清空后为null 问题
var payTimes = '';
if (this.filters.payTime!==null){
payTimes = this.filters.payTime[0]+','+this.filters.payTime[1]
}
let params = {
pageNum: this.pageNum,
pageSize: this.pageSize,
orderNumber: this.filters.orderNumber,
payTime: payTimes,
};
getOrder(params).then(res=>{
let resData = res.data;
... ...
<template>
<section>
<el-col :span="24" class="toolbar" style="padding-bottom: 0px">
<el-form :inline="true" :model="filters">
<el-form-item>
<el-input v-model="filters.orderNumber" placeholder="订单号"></el-input>
</el-form-item>
<el-form-item>
<div class="block">
<el-date-picker
v-model="filters.payTime"
type="datetimerange"
unlink-panels
value-format="yyyy-MM-dd HH:mm:ss"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
</div>
</el-form-item>
<el-form-item>
<el-button type="primary" v-on:click="QueryOrder()">查询</el-button>
</el-form-item>
</el-form>
</el-col>
<el-table
:data="tableData"
stripe
style="width: 100%">
<el-table-column prop="ordernumber" label="订单号" width="180">
</el-table-column>
<el-table-column
prop="payuserid"
label="用户编号"
width="100">
</el-table-column>
<el-table-column
prop="payusername"
label="用户名称"
width="90">
</el-table-column>
<el-table-column
prop="paylocationname"
label="房间号码"
width="100">
</el-table-column>
<el-table-column
prop="paytime"
label="充值日期"
width="160">
</el-table-column>
<el-table-column
prop="payfees"
label="充值金额"
width="100">
</el-table-column>
<el-table-column prop="paytype" label="充值类型" width="100">
<template slot-scope="scope">
<div v-if="scope.row.paytype === false" style="color:#20a0ff">水</div>
<div v-else="scope.row.paytype === true" style="color: #42d885">电</div>
</template>
</el-table-column>
<el-table-column prop="payfesstype" label="支付方式" width="100">
<template slot-scope="scope">
<div v-if="scope.row.payfesstype === false" style="color:#42d885">微信</div>
<div v-else="scope.row.payfesstype === true" style="color: #20a0ff">支付宝</div>
</template>
</el-table-column>
<el-table-column prop="paystatus" label="支付状态" width="100">
<template slot-scope="scope">
<div v-if="scope.row.payfesstype === false" style="color:#ff4d51">未完成</div>
<div v-else="scope.row.payfesstype === true" style="color: #42d885">已完成</div>
</template>
</el-table-column>
<el-table-column
fixed="right"
label="操作"
>
<template slot-scope="scope" align="center" class-name="small-padding fixed-width" >
<el-button @click="Pay(scope.row)" type="primary" size="mini">去完成</el-button>
<el-button type="primary" @click="payDelete(scope.$index,scope.row)" size="small">移除订单</el-button>
</template>
</el-table-column>
</el-table>
<!--工具条-->
<el-col :span="24" class="toolbar">
<!--<el-button type="danger" @click="batchRemove" :disabled="this.sels.length===0">批量删除</el-button>-->
<el-pagination layout="total, prev, pager, next" @current-change="handleCurrentChange" :page-size="5" :total="total" style="float:right;">
</el-pagination>
</el-col>
</section>
</template>
<script>
import { getWater,addOrder,ediOrder,remove} from '../../api/empt/PayWater';
import ElButton from "../../../node_modules/element-ui/packages/button/src/button.vue";
export default {
components: {ElButton},
data() {
return {
filters: {
orderNumber: '',
payTime:''
},
total: 0,
pageNum: 1,
pageSize: 5,
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]},
formInline: {
user: '',
date1:'',
},
tableData: [],
}
},
mounted() {
this.QueryOrder();
},
methods: {
handleCurrentChange(val) {
this.pageNum = val;
},
QueryOrder(){
// 清空后为null 问题
var payTimes = '';
if (this.filters.payTime!==null){
payTimes = this.filters.payTime[0]+','+this.filters.payTime[1]
}
let params = {
pageNum: this.pageNum,
pageSize: this.pageSize,
orderNumber: this.filters.orderNumber,
payTime: payTimes,
};
getOrder(params).then(res=>{
let resData = res.data;
this.total = resData.total;
this.tableData = resData.list;
}).catch((error) => {
if(null!= error.response && error.response!==undefined){
let status= error.response.status;
let msg = error.response.statusText;
alert(status+msg);
}else {
alert(error);
}
})
},
//删除
payDelete: function (index, row) {
this.$confirm('确认移出该订单吗?', '提示', {
type: 'warning'
}).then(() => {
this.listLoading = true;
let para = { id: row.id };
remove(para).then((res) => {
this.listLoading = false;
//NProgress.done();
this.$message({
message: '移出成功',
type: 'success'
});
this.QueryOrder();
}).catch((error) => {
this.listLoading = false;
alert(error);
});
}).catch();
},
Pay(row){
this.$router.push({name:'缴水电费订单',params:{row,Edistatus:'update'}})
},
},
}
</script>
\ No newline at end of file
... ...
<template>
<el-container>
<el-main >
<el-row type="flex" class="row-bg" justify="center">
<el-col :span="20">
<div style="background-color: mediumseagreen; height: 45px; color: #e6f1fe;">
<h2>&nbsp;&nbsp;查询房间号</h2>
</div>
<br/>
<el-form :inline="true" :model="filters">
<el-form-item prop="roomNumber">
<el-input style="width: 700px" v-model="filters.roomNumber" placeholder="房间号"></el-input>
<br/><br/>
<el-button style="width: 150px" type="primary" v-on:click="getdefaultData()">查询</el-button>
</el-form-item>
</el-form>
<el-form :model="userPayForm" :rules="rules" ref="userPayForm" label-width="180px" :label-position="labelPosition">
<el-col :span="24">
<el-form-item label="透支电费">
<el-input disabled="" style="width: 100px" v-model="userPayForm.overdraftthreshold"></el-input>&nbsp;元
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="状态">
<el-input disabled="" style="width: 100px" v-model="userPayForm.payUserName"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="剩余电费">
<el-input disabled="" style="width: 100px" v-model="userPayForm.payLocationName"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="充值日期">
<el-date-picker type="date" placeholder="" v-model="userPayForm.payTime" disabled="" style="width: 200px;" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="Edistatus=='create'" label="充值金额" prop="payFees">
<el-input type="number" oninput ="value=value.replace(/[^0-9.]/g,'')" v-model.number="userPayForm.payFees"></el-input>
</el-form-item>
<el-form-item v-else label="充值金额" prop="payFees">
<el-input type="number" oninput ="value=value.replace(/[^0-9]/g,'')" v-model.number="userPayForm.payFees"></el-input>
</el-form-item>
</el-col>
</el-form>
<el-form :model="waterForm" :rules="rules" ref="userPayForm" label-width="180px" :label-position="labelPosition">
<el-col :span="24">
<el-form-item label="透支水费">
<el-input disabled="" style="width: 100px" v-model="waterForm.overdraftthreshold"></el-input>&nbsp;元
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="状态">
<el-input disabled="" style="width: 100px" v-model="waterForm.payUserName"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="剩余水费">
<el-input disabled="" style="width: 100px" v-model="waterForm.payLocationName"></el-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="充值日期">
<el-date-picker type="date" placeholder="" v-model="waterForm.payTime" disabled="" style="width: 200px;" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item v-if="Edistatus=='create'" label="充值金额" prop="payFees">
<el-input type="number" oninput ="value=value.replace(/[^0-9.]/g,'')" v-model.number="waterForm.payFees"></el-input>
</el-form-item>
<el-form-item v-else label="充值金额" prop="payFees">
<el-input type="number" oninput ="value=value.replace(/[^0-9]/g,'')" v-model.number="waterForm.payFees"></el-input>
</el-form-item>
</el-col>
</el-form>
</el-col>
</el-row>
</el-main>
</el-container>
</template>
<style scoped>
</style>
<script>
import loginUserInfo from '@/api/base'
import {getList} from '../../api/empt/userPayOrder';
export default {
data() {
return{
filters:{
roomNumber:''
},
userPayForm:{
overdraftthreshold:'',
payTime:'',
},
waterForm:{
overdraftthreshold:'',
payTime:'',
},
rules:{
payType: [
{ required: true, message: '请选择充值类型', trigger: 'change' }
],
payFees:[
{ required: true, message: '充值金额不能为空'},
{ type: 'number', message: '金额必须为数字值'}
],
},
labelPosition:'left',
Edistatus:'',
shuibiao:'',
dianbiao:''
}
},
methods:{
getdefaultData(){
let para = {
roomNumber: this.filters.roomNumber
};
getList(para).then((res) => {
let resData = res.data;
if (resData.length>0){
for(var i=0; i<resData.length; i++){
if(resData[i].wmId === null){
this.userPayForm = resData[i];
this.userPayForm.payTime = new Date();
}else {
this.waterForm = resData[i];
this.waterForm.payTime = new Date();
}
}
}else {
this.$alert('请输入正确的房间号', '提示', {
confirmButtonText: '确定',
callback: action => {
}
});
}
this.listLoading = false;
//NProgress.done();
}).catch((error) => {
this.listLoading = false;
if(null!= error.response && error.response!==undefined){
let status= error.response.status;
let msg = error.response.statusText;
alert("请输入所查询的房号1");
}else {
this.$alert('请输入房间号', '提示', {
confirmButtonText: '确定',
});
}
});
},
},
mounted(){
}
}
</script>
\ No newline at end of file
... ...