This commit is contained in:
clay 2020-12-09 21:54:33 +08:00
parent d9d14c9b11
commit d3727395aa
5 changed files with 316 additions and 233 deletions

View File

@ -1,8 +1,8 @@
import axios from 'axios' import axios from 'axios'
// import {getHeaders} from '../utils/token' // import {getHeaders} from '../utils/token'
const baseUrl = 'http://localhost:8083/api/' // const baseUrl = 'http://localhost:8083/api/'
// const baseUrl = 'http://api.tomey.live/api/' const baseUrl = 'http://api.tomey.live/api/'
class HttpRequest { class HttpRequest {
constructor (baseUrl) { constructor (baseUrl) {
this.baseUrl = baseUrl this.baseUrl = baseUrl

View File

@ -41,7 +41,7 @@
data () { data () {
return { return {
passwordform: { passwordform: {
oldpassword: '123456789', oldpassword: '',
password: '', password: '',
repassword: '' repassword: ''
} }

View File

@ -54,12 +54,12 @@
<el-form-item label="寝室号 :"> <el-form-item label="寝室号 :">
<span>{{props.row.hostel}}</span> <span>{{props.row.hostel}}</span>
</el-form-item> </el-form-item>
<el-form-item label="备注 :">
<span>{{ props.row.decs }}</span>
</el-form-item>
<el-form-item label="发布时间 :"> <el-form-item label="发布时间 :">
<span>{{ props.row.createTime }}</span> <span>{{ props.row.createTime }}</span>
</el-form-item> </el-form-item>
<el-form-item label="备注 :">
<span>{{ props.row.decs }}</span>
</el-form-item>
</el-form> </el-form>
</template> </template>
</el-table-column> </el-table-column>
@ -164,7 +164,7 @@
getUserOrder () { getUserOrder () {
let loading = this.$loading({lock: true, text: '玩命加载中...'}) let loading = this.$loading({lock: true, text: '玩命加载中...'})
getCourierLst(this.selectData).then((res) => { getCourierLst(this.selectData).then((res) => {
loading.close() setTimeout(loading.close(),1000)
var data = res.data var data = res.data
if (data.success) { if (data.success) {
this.OrderData = [] this.OrderData = []

View File

@ -1,22 +1,110 @@
<template> <template>
<div class="wokerHistoryOrder"> <div class="currentorder">
<person-title>当前位置 :: 我的订单 >> <em>历史订单</em></person-title> <person-title>当前位置 :: 我的订单 >> <em>所有订单</em></person-title>
<div class="wokerHistoryOrder-cont"> <div class="currentorder-cont">
<wokerOrderList <div class="findOrder-search">
:userOrder='horder' <el-form :inline="true" :model="findOrderForm" class="user-findOrder">
:rightOptBtn='rightOptBtn' <el-form-item label="查询条件">
:titleList='titleList' <el-select v-model="findOrderForm.condition" placeholder="选择查询条件">
@deleteOrder='handleDeleteOrder'> <el-option label=" " value="1"></el-option>
</wokerOrderList> <el-option label="姓名" value="name"></el-option>
<el-option label="电话" value="phone"></el-option>
<el-option label="快递公司" value="company"></el-option>
</el-select>
</el-form-item>
<el-form-item label="请输入">
<el-input v-model="findOrderForm.answers" placeholder="查询条件"></el-input>
</el-form-item>
<el-button type="primary" v-on:click="queryData()">查询</el-button>
</el-form>
</div>
<el-table
:data="OrderData"
class="userOrderList"
:default-sort="{prop: 'createTime', order: 'descending'}"
style="width: 100%">
<div class="emptyTip" slot="empty">
暂时没有订单 , 赶紧去
<a href="" @click.prevent="handleGotoNewOrde"
> 发布订单 </a>
</div>
<el-table-column type="expand">
<template slot-scope="props">
<el-form label-position="left"
inline class="userTable demo-table-expand">
<el-form-item label="订单号 :">
<span>{{ props.row.id }}</span>
</el-form-item>
<el-form-item label="收货人姓名 :">
<span>{{props.row.name}}</span>
</el-form-item>
<el-form-item label="电话 :">
<span>{{props.row.phone}}</span>
</el-form-item>
<el-form-item label="快递大小 :">
<span>{{ props.row.typeDesc }}</span>
</el-form-item>
<el-form-item label="快递公司 :">
<span>{{ props.row.company}}</span>
</el-form-item>
<el-form-item label="取货码 :">
<span>{{props.row.number}}</span>
</el-form-item>
<el-form-item label="公寓 :">
<span>{{props.row.flats}}</span>
</el-form-item>
<el-form-item label="寝室号 :">
<span>{{props.row.hostel}}</span>
</el-form-item>
<el-form-item label="发布时间 :">
<span>{{ props.row.createTime }}</span>
</el-form-item>
<el-form-item label="备注 :">
<span>{{ props.row.decs }}</span>
</el-form-item>
</el-form>
</template>
</el-table-column>
<el-table-column
v-for="item in titleList"
:key='item.id'
:sortable='item.sortable'
:label="item.columnTitle"
:prop="item.prop">
</el-table-column>
<el-table-column
prop="status"
label="快递状态"
filter-placement="bottom-end">
<template slot-scope="scope">
<el-tag
v-if="scope.row.status==1">待取件
</el-tag>
<el-tag
type="warning" v-if="scope.row.status==2"
>运输中
</el-tag>
<el-tag
type="danger" v-if="scope.row.status==3"
disable-transitions>待收取
</el-tag>
<el-tag
type="success" v-if="scope.row.status==4"
disable-transitions>完成
</el-tag>
</template>
</el-table-column>
</el-table>
</div> </div>
<div class="pageination-oder"> <div class="pageination-oder">
<el-pagination v-if="showPagination" <el-pagination
background @size-change="handleSizeChange"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
:current-page="currentPage" :current-page="4"
:pager-count="5" :page-sizes="[10, 50, 80, 100]"
:page-size="pageSize" :page-size="10"
layout="total, prev, pager, next, jumper" layout="total, sizes, prev, pager, next, jumper"
:total="totalOrder"> :total="totalOrder">
</el-pagination> </el-pagination>
</div> </div>
@ -24,96 +112,207 @@
</template> </template>
<script> <script>
import wokerOrderList from './WokerOrderList' import {courierGetSelfList, delivery} from '../../../api/order'
import axios from 'axios' import {formData} from '../../../unit/formDate'
export default { export default {
data () { data () {
return { return {
horder:[], findOrderForm: {
currentPage : 1, condition: '',
pageSize : 10, answers: ''
},
OrderData: null,
selectData: {
page: 1,
size: 10,
id: '',
flats: '',
name: '',
phone: '',
company: '',
starttime: '',
endtime: '',
type: '',
status: 4
},
totalOrder: 0, totalOrder: 0,
showPagination: true, showPagination: true,
rightOptBtn:'historyBtn',// 'receiveOrderBtn' // 'historyBtn' listType: {
noCompBtn: true
},
titleList: [ titleList: [
{id:1,columnTitle:'完成时间',prop:'completedData',sortable:true}, {id: 1, columnTitle: '订单号', prop: 'id'},
{id:2,columnTitle:'价格(元)',prop:'Price',sortable:true}, {id: 2, columnTitle: '姓名', prop: 'name'},
{id:3,columnTitle:'类型',prop:'goodsTpye',sortable:false}, {id: 3, columnTitle: '发布时间', prop: 'createTime'}
{id:4,columnTitle:'数量',prop:'goodsNumber',sortable:true}
] ]
} }
}, },
components:{ created () {
wokerOrderList this.getUserOrder()
},
mounted() {
this.gehistoryOrderList();
}, },
methods: { methods: {
gehistoryOrderList(){ queryData () {
let loading = this.$loading({lock:true,text:'玩命加载中...'}); var data = this.findOrderForm
axios.get(`/wokers/horder?size=${this.pageSize}&page=${this.currentPage}`).then(response=>{ this.selectData.company = ''
let res = response.data; this.selectData.phone = ''
loading.close(); this.selectData.name = ''
if(res.status=='0'){ this.selectData.name = ''
this.horder = res.result.horder; if (data.condition == 'flats') {
this.totalOrder = Number.parseInt(res.result.totalOrder); } else if (data.condition == 'name') {
if(this.totalOrder <= this.pageSize){ this.selectData.name = data.answers
this.showPagination = false } else if (data.condition == 'name') {
this.selectData.name = data.answers
} else if (data.condition == 'phone') {
this.selectData.phone = data.answers
} else if (data.condition == 'company') {
this.selectData.company = data.answers
} }
}else{ this.getUserOrder()
console.log(res.msg);
}
}).catch(err=>{
console.log(err);
});
}, },
handleDeleteOrder(orderData){ deliveryOrder (id) {
// this.$confirm(`是否确认送达,完成订单?`,
this.$confirm(`此订单删除无法恢复! 确认删除订单?`, '确认送达', {
'完成订单', { confirmButtonText: '确认',
confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'error' type: 'success'
}).then(() => { }).then(() => {
let loading = this.$loading({lock:true,text:'玩命加载中...'}); let formData = {
axios.post(`/wokers/deleteHistoryOrder`,{orderId:orderData.orderId}).then(response=>{ id: id
let res = response.data; }
loading.close(); delivery(formData).then((res) => {
if(res.status=='0'){ console.log(res)
let resData = res.data
if (resData.success) {
this.$message({ this.$message({
type: 'success', type: 'success',
message: '删除成功!' message: "订单送达"
}); })
this.gehistoryOrderList(); this.getUserOrder()
} else { } else {
this.$message({ this.$message({
type: 'error', type: 'error',
message: res.msg message: resData.errorMsg
}); })
} }
}).catch(err=>{ })
loading.close();
console.log(err);
});
}).catch(() => { }).catch(() => {
this.$message({ this.$message({
type: 'info', type: 'info',
message: '已取消操作' message: '已取消操作'
}); })
}); })
},
getUserOrder () {
let loading = this.$loading({lock: true, text: '玩命加载中...'})
courierGetSelfList(this.selectData).then((res) => {
var data = res.data
setTimeout(loading.close(),1000)
if (data.success) {
this.OrderData = []
var list = data.data.list
for (let i = 0; i < list.length; i++) {
var dataitem = list[i]
dataitem.lastTime = formData(list[i].lastTime, 'yyyy-MM-dd hh:mm:ss')
dataitem.createTime = formData(list[i].createTime, 'yyyy-MM-dd hh:mm:ss')
this.OrderData.push(dataitem)
}
this.totalOrder = data.data.count
} else {
this.$message({
type: 'info',
message: data.errorMsg
})
}
})
},
updateHandler () {
this.OrderData = {...this.OrderData}
},
handleSizeChange (val) {
this.selectData.size = val
this.getUserOrder()
}, },
handleCurrentChange (val) { handleCurrentChange (val) {
this.currentPage = val; this.selectData.page = val
this.gehistoryOrderList(); this.getUserOrder()
} }
} }
} }
</script> </script>
<style> <style lang='scss'>
.userOrderList {
.el-message {
top: 5rem;
}
.el-button {
width: 4.2rem;
height: 1.5rem;
line-height: 1.5rem;
padding: 0;
span {
font-size: 0.6rem;
}
}
//
.btn-cancel {
margin-right: 0.2rem;
margin-bottom: 0.3rem;
}
.btn-success {
/*background-color: #409eff;*/
/*color: #fff;*/
&:hover {
/*background-color: lighten(#409eff, 5%);*/
}
}
//
.emptyTip a {
color: rgb(226, 137, 137);
&:hover {
color: rgb(214, 29, 29);
}
}
.el-button + .el-button {
margin-left: 0;
}
// span
.horder .el-form-item__content span,
.currentorder .el-form-item__content span {
margin-right: 0.5rem;
}
.demo-table-expand {
font-size: 0;
}
.demo-table-expand label {
width: 6.2rem;
color: #99a9bf;
}
.demo-table-expand .el-form-item {
margin-right: 0;
margin-bottom: 0;
width: 50%;
}
}
.el-button {
margin: 0 auto;
}
.findOrder-search {
padding-top: 1rem;
}
</style> </style>

View File

@ -57,31 +57,12 @@
<el-form-item label="寝室号 :"> <el-form-item label="寝室号 :">
<span>{{props.row.hostel}}</span> <span>{{props.row.hostel}}</span>
</el-form-item> </el-form-item>
<el-form-item label="发布时间 :">
<span>{{ props.row.createTime }}</span>
</el-form-item>
<el-form-item label="备注 :"> <el-form-item label="备注 :">
<span>{{ props.row.decs }}</span> <span>{{ props.row.decs }}</span>
</el-form-item> </el-form-item>
<el-form-item>
</el-form-item>
<template v-if="props.row.status!=2">
<el-form-item label="接单人员 :">
<span>{{ props.row.courier.username }}</span>
</el-form-item>
<el-form-item label="接单人电话 :">
<span>{{ props.row.courier.phone }}</span>
</el-form-item>
<el-form-item v-if="props.row.status==2" label="接单时间 :">
<span>{{ props.row.lastTime }}</span>
</el-form-item>
<el-form-item v-if="props.row.status==3" label="送达时间 :">
<span>{{ props.row.lastTime }}</span>
</el-form-item>
<el-form-item v-if="props.row.status==4" label="收取时间 :">
<span>{{ props.row.lastTime }}</span>
</el-form-item>
</template>
<!-- <el-form-item label="发布时间 :">-->
<!-- <span>{{ props.row.createTime }}</span>-->
<!-- </el-form-item>-->
</el-form> </el-form>
</template> </template>
</el-table-column> </el-table-column>
@ -219,7 +200,7 @@
if (resData.success) { if (resData.success) {
this.$message({ this.$message({
type: 'success', type: 'success',
message: "订单送达" message: '订单送达'
}) })
this.getUserOrder() this.getUserOrder()
} else { } else {
@ -236,32 +217,11 @@
}) })
}) })
}, },
cancel (id) {
let data = {
orderid: id
}
cancelO(data).then((res) => {
console.log(res)
let data = res.data
if (data.success) {
this.$message({
type: 'success',
message: data.data
})
setTimeout(this.getUserOrder, 500)
} else {
this.$message({
type: 'error',
message: data.data
})
}
})
},
getUserOrder () { getUserOrder () {
// let loading = this.$loading({lock: true, text: '...'}) let loading = this.$loading({lock: true, text: '玩命加载中...'})
courierGetSelfList(this.selectData).then((res) => { courierGetSelfList(this.selectData).then((res) => {
var data = res.data var data = res.data
// loading.close() setTimeout(loading.close(),1000)
if (data.success) { if (data.success) {
this.OrderData = [] this.OrderData = []
var list = data.data.list var list = data.data.list
@ -283,82 +243,6 @@
updateHandler () { updateHandler () {
this.OrderData = {...this.OrderData} this.OrderData = {...this.OrderData}
}, },
handleCancel (data) {
//
this.$confirm('此操作将取消订单, 是否继续?',
'取消订单', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'error'
}).then(() => {
// let loading = this.$loading({lock:true,text:'...'});
// axios.get(`/users/cancelCurrentOrder?orderId=${data.orderId}`).then(response=>{
// let res = response.data;
// loading.close();
// if(res.status=='0'){
// this.$message({
// type: 'success',
// message: '!'
// });
// let mode = this.totalOrder % this.selectData.size;
// if(mode ===1){ //
// this.selectData.page --;
// }
// this.getUserOrder();
// }else{
// this.$message({
// type: 'error',
// message:res.msg
// });
// }
// }).catch(err=>{
// console.log(err);
// });
}).catch(() => {
this.$message({
type: 'info',
message: '已取消操作'
})
})
},
handleCompleted (orderData) {
//
this.$confirm(`是否确认送达,完成订单?`,
'支付订单', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'success'
}).then(() => {
// let loading = this.$loading({lock:true,text:'...'});
// axios.post(`/users/completedCurrentOrder`,orderData).then(response=>{
// let res = response.data;
// loading.close();
// if(res.status=='0'){
// this.$message({
// type: 'success',
// message: '!'
// });
// let mode = this.totalOrder % this.selectData.size;
// if(mode ===1){ //
// this.selectData.page --;
// }
// this.getUserOrder();
// }else{
// this.$message({
// type: 'error',
// message:res.msg
// });
// }
// }).catch(err=>{
// console.log(err);
// });
}).catch(() => {
this.$message({
type: 'info',
message: '已取消操作'
})
})
},
handleSizeChange (val) { handleSizeChange (val) {
this.selectData.size = val this.selectData.size = val
this.getUserOrder() this.getUserOrder()