Commit 7d20cf58 authored by fwz's avatar fwz

订单

parent f11d622a
......@@ -442,6 +442,14 @@ export default {
that.sendColor = "color:#ff5b01";
}
}, 1000);
}else{
///app/smsCode/binding/{{phone}}
let opts = { url: '/app/smsCode/binding/' + this.phone, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.model1.carInfo = res.data.data
}
})
}
},
},
......
......@@ -48,7 +48,10 @@ export default {
isCanUse2: false, //默认为true
openid: '',
nc_protocol : false,
//扫描二维码参数
scene : "",
//检查绑定挪车码
checkCode: {},
};
},
methods: {
......@@ -59,6 +62,25 @@ export default {
title: '登录中...'
})
},
//检查挪车码存在、是否绑定
getCheckMoveCode(){
let opts = { url: '/app/index/check/move/code', method: 'post' };
this.http.httpTokenRequest(opts, {code:this.scene}).then(res => {
if (res.data.code == 200) {
this.checkCode = res.data.data
//未绑定了的情况
if(!this.checkCode.bindFlag){
uni.navigateTo({
url: '/pagesB/pages/move-car/scan?moveCode=' + this.checkCode.code
})
}else if(this.checkCode.selfFlag){
}else{
}
}
})
},
async wechatLogin() {
wx.login({
success: (res) => {
......
......@@ -140,7 +140,7 @@ export default {
this.createOrder = {
addressId: this.addressId,
commodityList: [{
id: this.id,
id: '2022042214065100000000',
nums: 1,
}],
}
......
......@@ -138,8 +138,6 @@ export default {
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.model1.carInfo = res.data.data
}else{
//展示删除失败
}
})
}
......
......@@ -120,7 +120,7 @@ export default {
}else if(index.name == "呼叫"){
//请求拨打电话路径
let opts = { url: '/app/contact/' , method: 'get' };
let opts = { url: '/app/contact/dialPhone' , method: 'post' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
//请求成功逻辑,修改
......@@ -164,6 +164,15 @@ export default {
}
})
},
getMoveLogInit(){
let opts = { url: '/app/moveLog/init', method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
//添加逻辑判断
this.appBo.logCode = res.data.data
}
})
},
// 用户授权
getAuthorize() {
......@@ -270,7 +279,10 @@ export default {
this.moveCode = scene
console.log('scene: ' + scene);
}
}
},
created() {
},
}
......
......@@ -8,7 +8,7 @@
<div class="contentMoveCar">
<div class="car_item__one">
<div class="item__content">
京A123G63
{{moveCode}}
</div>
</div>
<div class="car_item__three">
......@@ -83,7 +83,7 @@ export default {
label: "手机号", // 提示输入名
type: "text", //类型
rules: {
name: "userMobile", //字段名 即提交给后端的字段
name: "phone", //字段名 即提交给后端的字段userMobile
value: "",
verify: false, //是否开启校验
errMess: "手机号未填写", //校验不通过的错误提示
......@@ -96,28 +96,39 @@ export default {
type: "text",
// oneKeyPhone:true,
rules: {
name: "verificationCode",
name: "yzm",
value: "", //字段值
verify: false,
errMess: "验证码未填写",
},
},
],
//挪车码
moveCode: '',
//绑定挪车码信息
moveCodeInfo: {},
//选择车辆id
carId: '',
}
},
methods: {
goLoveCar() {
uni.navigateTo({
url: '/pagesB/pages/move-car/loveCar'
url: '/pagesB/pages/move-car/loveCar?price=1'
});
},
confirmBinding(){
for(let i in this.formData){
let name = this.formData[i].rules.name
if(name == 'yzm'){
this.moveCodeInfo.verificationCode = this.formData[i].rules.value
}else if(name == 'phone'){
this.moveCodeInfo.userMobile = this.formData[i].rules.value
}else{
this.moveCodeInfo[name] = this.formData[i].rules.value
}
}
console.log(this.moveCodeInfo)
let opts = { url: '/app/moveCode/binding/', method: 'put' };
this.http.httpTokenRequest(opts, this.moveCodeInfo).then(res => {
......@@ -137,6 +148,16 @@ export default {
}
})
},
getCarInfo(){
if(this.carId){
let opts = { url: '/app/vehicleAdmin/' + this.carId, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.model1.carInfo = res.data.data
}
})
}
},
},
onLoad(option) {
this.moveCode = option.moveCode
......
......@@ -12,10 +12,10 @@
</div>
<div>
<div>
运输中
运输中{{waybillInfo.waybillStatus}}物流最新状态{{waybillInfo.waybillNewDetail}}
</div>
<div>
物流单号:3543859111977240
物流单号:{{waybillInfo.waybillNo}}
</div>
<div class="time__btn btn__one">
<span>复制</span>
......@@ -25,24 +25,25 @@
<div class="get__car">
<div class="car__img">
<image src="@/static/my/git.png" alt="" />
</div>
<div class="one__text">
【收货地址】北京市朝阳区梨园小区2收货地址北京市朝阳区梨园小区2
</div>
</div>
<div v-for="(item,index) in waybillInfo.details">
<div class="time__list">
<div class="item">
<div class="item__img">
<image src="@/static/my/car-time1.png" alt="" />
</div>
<div class="one__text item__title">
到达广东深圳公司,快件将很快进行派送
<div class="time">2020-06-01 12:00:00 </div>
{{item.remark}}
<div class="time">2020-06-01 12:00:00</div>
</div>
</div>
</div>
</div>
<div class="time__list">
<div class="item">
<div class="item__img">
......@@ -88,9 +89,29 @@
export default {
data() {
return {
//订单id
orderId: '',
//运单详细信息
waybillInfo: {},
}
},
methods: {
//获得订单详情
getWaybillInfo(){
let opts = { url: '/app/user/order/waybill/' + this.orderId, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.waybillInfo = res.data.data
}
})
},
},
onLoad(e) {
this.orderId = e.orderId
},
onShow() {
this.getWaybillInfo()
},
}
</script>
......
......@@ -5,6 +5,9 @@
<template>
<view class="appCotent">
<div class="hlep">
<u-cell-group>
<u-cell title="设置消息订阅" :isLink="true" @click="changeMessages()"></u-cell>
</u-cell-group>
<image v-if="image" :src="image" />
<image v-else src="@/static/my/help.png" />
</div>
......@@ -16,6 +19,8 @@
data() {
return {
image: '',
//是否订阅消息
is_authorization: uni.getStorageSync('is_authorization'),
}
},
methods: {
......@@ -29,9 +34,113 @@
}
})
},
//获取消息订阅
openMsg() {
var that = this;
let nc_templateid = that.nc_templateid;
// 获取用户的当前设置,判断是否点击了“总是保持以上,不在询问”
wx.getSetting({
withSubscriptions: true, //是否获取用户订阅消息的订阅状态,默认false不返回
success(res) {
if (that.is_authorization) {
} else {
if (res.subscriptionsSetting[nc_templateid] == "reject") {
//用户点击了“总是保持以上,不再询问”
wx.showModal({
title: "温馨提示",
content: "检测到您没有开启订阅消息的权限,是否去设置?",
success: function (modal) {
if (modal.confirm) {
// 点击肯定
wx.openSetting({
withSubscriptions: true,
});
that.is_authorization = true;
uni.setStorageSync("is_authorization", true);
} else {
uni.showToast({
title: "您已拒绝订阅消息授权,无法预约领取",
icon: "error",
});
that.is_authorization = false;
}
},
});
} else {
// 用户没有点击“总是保持以上,不再询问”则每次都会调起订阅消息
// var templateid = that.setting.templateid.map(item => item.tempid);
let tmpid = [nc_templateid];
uni.requestSubscribeMessage({
tmplIds: tmpid,
success(res) {
if (res[tmpid[0]] == "accept") {
uni.showToast({
title: "订阅成功",
icon: "none",
});
that.is_authorization = true;
uni.setStorageSync("is_authorization", true);
} else {
uni.showToast({
title: "您拒绝订阅消息授权,无法预约领取",
icon: "none",
});
that.is_authorization = false;
}
},
fail: (res) => {
wx.showModal({
title: "温馨提示",
content: "检测到您没有开启订阅消息的权限,是否去设置?",
success: function (modal) {
if (modal.confirm) {
// 点击肯定
wx.openSetting({
withSubscriptions: true,
});
that.is_authorization = true;
uni.setStorageSync("is_authorization", true);
} else {
uni.showToast({
title: "您已拒绝订阅消息授权,无法预约领取",
icon: "error",
});
that.is_authorization = false;
}
},
});
},
});
}
}
},
});
},
//改变消息订阅
changeMessages(){
wx.openSetting({
withSubscriptions: true,
});
// if(!this.is_authorization){
// wx.openSetting({
// withSubscriptions: true,
// });
// this.is_authorization = false;
// uni.setStorageSync("is_authorization", false);
// }else{
// wx.openSetting({
// withSubscriptions: true,
// });
// this.is_authorization = false;
// uni.setStorageSync("is_authorization", false);
// }
},
},
onShow() {
this.getHelpInfo()
//this.openMsg()
},
}
......
......@@ -35,7 +35,7 @@
</div>
</div>
<div class="tab__bottom">
<div class="tab__item" v-for="(vo,inx) in items" :key="inx" @click="goOrder(vo.page)">
<div class="tab__item" v-for="(vo,inx) in items" :key="inx" @click="goOrder(inx+1)">
<image :src="vo.icon" />
<div>{{vo.title}}</div>
</div>
......@@ -91,7 +91,7 @@ export default {
}
],
items: [{
title: '待付款',
title: '待发货',
icon: require('@/static/my/my2.png'),
page:0
},
......@@ -121,9 +121,9 @@ export default {
url: '/pages/binding/index'
});
},
goOrder(page=0) {
goOrder(current) {
uni.navigateTo({
url: '/pagesD/pages/personal/myOrder?page=' + page
url: '/pagesD/pages/personal/myOrder?current=' + current
});
},
goUrl(vo) {
......
......@@ -14,130 +14,132 @@
transform: 'scale(1)'
}" itemStyle="padding-left: 15px; padding-right: 15px; height: 34px;">
</u-tabs>
<div class="order__content">
<div class="order__items" @click="orderDetail" v-if="current===0||current===1">
<div class="order__content" v-for="(item,index) in orderList">
<div class="order__items" @click="orderDetail(item.id)" v-if="(current===0||current===1) && item.orderStatus == 10">
<div class="item">
<div class="item__time">
<span>2022.03.23 12:14:32</span>
<span>{{item.successTime}}</span>
<span>待发货</span>
</div>
<div class="item__top">
<div class="top__img">
<img src="" alt="" srcset="">
<div>
<img :src="item.mainImgUrl" class="top__img" alt="" srcset="">
</div>
<div class="top__right">
<div class="right__one one__text">
<span>强力清洗剂 大容量 标</span>
<span>25.5</span>
<span>{{item.title}}</span>
<span>{{item.amount/100}}</span>
</div>
<div class="right__two">
<span>强力清洗剂 大容量 标120 ml*3瓶装</span>
<span>×4</span>
<span>{{item.spec}}</span>
<span>×{{item.nums}}</span>
</div>
</div>
</div>
<div class="order">订单编号:3543859111977240</div>
<div class="order">订单编号:{{item.orderNo}}</div>
<div class="order__num">
<span>总金额:</span>
<span>25.5</span>
<span>{{item.amount/100}}</span>
</div>
<div class="order__btn" @click.stop="pull">
<div class="order__btn" @click.stop="pull(item.id)">
<span>申请退款</span>
</div>
</div>
</div>
<div class="order__items" @click="orderDetail" v-if="current===0||current===2">
<div class="order__items" @click="orderDetail(item.id)" v-if="(current===0||current===2) && item.orderStatus == 20">
<div class="item">
<div class="item__time">
<span>2022.03.23 12:14:32</span>
<span>{{item.successTime}}</span>
<span style="color:#F88D28">待收货</span>
</div>
<div class="item__top">
<div class="top__img">
<img src="" alt="" srcset="">
<div>
<img :src="item.mainImgUrl" class="top__img" alt="" srcset="">
</div>
<div class="top__right">
<div class="right__one one__text">
<span>强力清洗剂 大容量 标</span>
<span>25.5</span>
<span>{{item.title}}</span>
<span>{{item.amount/100}}</span>
</div>
<div class="right__two">
<span>强力清洗剂 大容量 标120 ml*3瓶装</span>
<span>×4</span>
<span>{{item.spec}}</span>
<span>×{{item.nums}}</span>
</div>
</div>
</div>
<div class="order">订单编号:3543859111977240</div>
<div class="order">订单编号:{{item.orderNo}}</div>
<div class="order__num">
<span>总金额:</span>
<span>25.5</span>
<span>{{item.amount/100}}</span>
</div>
<div class="order__btn">
<span>查看物流</span>
<span @click="goCarTime(item.id)">查看物流</span>
<span class="btn__two">确认收货</span>
</div>
</div>
</div>
<div class="order__items" @click="orderDetail" v-if="current===0||current===3">
<div class="order__items" v-if="(current===0||current===3) && item.orderStatus == 50">
<div class="item">
<div class="item__time">
<span>2022.03.23 12:14:32</span>
<span>{{item.successTime}}</span>
<span style="color:#1BF134">已收货</span>
</div>
<div class="item__top">
<div class="top__img">
<img src="" alt="" srcset="">
<div>
<img :src="item.mainImgUrl" class="top__img" alt="" srcset="">
</div>
<div class="top__right">
<div class="right__one one__text">
<span>强力清洗剂 大容量 标</span>
<span>25.5</span>
<span>{{item.title}}</span>
<span>{{item.amount/100}}</span>
</div>
<div class="right__two">
<span>强力清洗剂 大容量 标120 ml*3瓶装</span>
<span>×4</span>
<span>{{item.spec}}</span>
<span>×{{item.nums}}</span>
</div>
</div>
</div>
<div class="order">订单编号:3543859111977240</div>
<div class="order">订单编号:{{item.orderNo}}</div>
<div class="order__num">
<span>总金额:</span>
<span>25.5</span>
<span>{{item.amount/100}}</span>
</div>
<div class="order__btn">
<span>查看物流</span>
<span @click="goCarTime(item.id)">查看物流</span>
<span @click="orderDetail(item.id)">查看详情</span>
</div>
</div>
</div>
<div class="order__items" @click="orderDetail" v-if="current===0||current===4">
<div class="order__items" v-if="(current===0||current===4) && item.orderStatus == 30">
<div class="item">
<div class="item__time">
<span>2022.03.23 12:14:32</span>
<span>{{item.successTime}}</span>
<span style="color:#666666">已退款</span>
</div>
<div class="item__top">
<div class="top__img">
<img src="" alt="" srcset="">
<div>
<img :src="item.mainImgUrl" class="top__img" alt="" srcset="">
</div>
<div class="top__right">
<div class="right__one one__text">
<span>强力清洗剂 大容量 标</span>
<span>25.5</span>
<span>{{item.title}}</span>
<span>{{item.amount/100}}</span>
</div>
<div class="right__two">
<span>强力清洗剂 大容量 标120 ml*3瓶装</span>
<span>×4</span>
<span>{{item.spec}}</span>
<span>×{{item.nums}}</span>
</div>
</div>
</div>
<div class="order">订单编号:3543859111977240</div>
<div class="order">订单编号:{{item.orderNo}}</div>
<div class="order__num">
<span></span>
<span>退款成功</span>
</div>
<div class="order__btn">
<span>删除记录</span>
<span class="btn__two">查看详情</span>
<u-modal :show="showDelModal" @confirm="confirmDel" @cancel="cancelModal" :title="delTitle" ref="delModal" :showCancelButton="true"></u-modal>
<span @click="showDel(item.id)">删除记录</span>
<span class="btn__two" @click="orderDetail(item.id)">查看详情</span>
</div>
</div>
</div>
......@@ -161,12 +163,15 @@ export default {
}, {
name: '待收货',
}, {
name: '已收货'
name: '已完成'
}, {
name: '退款/售后'
}],
//商品订单列表
orderList: [],
showDelModal: false,
deleteId: '',
delTitle: '确认删除该纪录吗?',
}
},
onLoad: function (e) {
......@@ -175,32 +180,84 @@ export default {
})
},
methods: {
pull() {
pull(orderId) {
uni.navigateTo({
url: '/pagesD/pages/personal/pull'
url: '/pagesD/pages/personal/pull?orderId=' + orderId
});
},
orderDetail() {
goCarTime(id){
uni.navigateTo({
url: '/pagesD/pages/personal/orderDetail'
url: '/pagesD/pages/personal/carTime?orderId=' + id
})
},
showDel(id){
//
this.showDelModal = true
this.deleteId = id
},
cancelModal(){
this.showDelModal = false
},
confirmDel(){
let opts = { url: '/app/user/order/remove/' + this.deleteId, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
uni.showToast({
title: '删除成功',
icon: "success"
});
}else{
uni.showToast({
title: '删除失败',
icon: "error"
});
}
this.getOrderList()
})
this.showDelModal = false
},
orderDetail(id) {
uni.navigateTo({
url: '/pagesD/pages/personal/orderDetail?orderId=' + id
});
},
changeVal(v) {
this.current = v.index
this.getOrderList()
},
getOrderList(){
let order = {orderStatus: this.current}
let order = {}
//订单状态:0-未支付,10-待发货,20-待收货,30-退款/售后,50-已完成
if(this.current == 0){
}else if(this.current == 1){
order.orderStatus = 10;
}else if(this.current == 2){
order.orderStatus = 20;
}else if(this.current == 3){
order.orderStatus = 50;
}else if(this.current == 4){
order.orderStatus = 30;
}else{
}
let opts = { url: '/app/user/order/list', method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
this.http.httpTokenRequest(opts, order).then(res => {
if (res.data.code == 200) {
this.orderList = res.data.data
this.orderList = res.data.data.rows
}
})
},
},
onShow() {
this.getOrderList()
},
onLoad(e) {
if(e.current) {
this.current = parseInt(e.current)
}
},
}
</script>
......
......@@ -24,10 +24,12 @@
<div class="address">
<div class="address__left">
<div class="right__title">
北京市朝阳区李家董镇太阳宫社区大唐公寓 2号楼3单元303
{{orderInfo.address}}&emsp;{{orderInfo.detailInfo}}
</div>
<div class="right__phone">
<span>默认</span> <span>我是收货人</span><span>19963353323</span>
<!-- <span>默认</span> -->
<span>{{orderInfo.userName}}</span>
<span>{{orderInfo.telNumber}}</span>
</div>
</div>
......@@ -40,31 +42,31 @@
</div>
<div class="top__right">
<div class="right__one one__text">
<span>强力清洗剂 大容量 标</span>
<span>25.5</span>
<span>{{orderInfo.title}}</span>
<span>{{orderInfo.amount/100}}</span>
</div>
<div class="right__two">
<span>强力清洗剂 大容量 标120 ml*3瓶装</span>
<span>×4</span>
<span>{{orderInfo.spec}}</span>
<span>×{{orderInfo.nums}}</span>
</div>
</div>
</div>
<div class="item__bottom">
<div class="bottom__item">
<div>订单编号::</div>
<div>3543859111977240</div>
<div>{{orderInfo.orderNo}}</div>
</div>
<div class="bottom__item">
<div>付款时间:</div>
<div>2022-01-20 12:12:03</div>
<div>{{orderInfo.successTime}}</div>
</div>
<div class="bottom__item">
<div>商品总价:</div>
<div>48.00</div>
<div>{{orderInfo.amount/100}}</div>
</div>
<div class="bottom__item">
<div>实付款:</div>
<div class="bottom__price">48.00</div>
<div class="bottom__price">{{orderInfo.amount/100}}</div>
</div>
</div>
<div class="order__btn" @click="pull">
......@@ -78,17 +80,39 @@
<script>
export default {
data(){
return {
//订单id
orderId: '',
//订单详情
orderInfo: {},
}
},
methods: {
viewCar() {
uni.navigateTo({
url: '/pagesD/pages/personal/carTime'
url: '/pagesD/pages/personal/carTime?orderId=' + this.orderId
})
}
,pull() {
},
pull() {
uni.navigateTo({
url: '/pagesD/pages/personal/pull'
})
},//获得订单详情
getOrderInfo(){
let opts = { url: '/app/user/order/info/' + this.orderId, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.orderInfo = res.data.data
}
})
},
},
onLoad(e) {
this.orderId = e.orderId
},
onShow() {
this.getOrderInfo()
},
}
</script>
......@@ -160,16 +184,16 @@ export default {
display: flex;
align-items: center;
span:nth-of-type(1) {
font-size: 24rpx;
font-family: PingFang SC;
font-weight: bold;
color: #F88D28;
padding: 2rpx 4rpx;
border: 1rpx solid #F88D28;
}
// span:nth-of-type(1) {
// font-size: 24rpx;
// font-family: PingFang SC;
// font-weight: bold;
// color: #F88D28;
// padding: 2rpx 4rpx;
// border: 1rpx solid #F88D28;
// }
span:nth-of-type(2) {
span:nth-of-type(1) {
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 500;
......@@ -177,7 +201,7 @@ export default {
padding: 0 14rpx;
}
span:nth-of-type(3) {
span:nth-of-type(2) {
font-size: 28rpx;
font-family: DIN;
font-weight: 500;
......
......@@ -17,7 +17,7 @@
<div class="why">
<u--textarea v-model="value1" placeholder="地址输入错误,需重新拍下。地址输入错误,需重新拍下。地址输入错误,需重新拍下。" ></u--textarea>
</div>
<div class="view__btn view__no__bind">
<div class="view__btn view__no__bind" @click="orderRefund">
提交申请
</div>
</div>
......@@ -33,19 +33,48 @@ export default {
value1:'',
items: [{
title: "退款金额:",
value: "¥48.00"
value: "¥0.00"
},
{
title: "退款原因:",
value: ""
},
]
],
//订单id
orderId: '',
//订单详情
orderInfo: {},
};
},
methods: {
getOrderInfo(){
let opts = { url: '/app/user/order/info/' + this.orderId, method: 'get' };
this.http.httpTokenRequest(opts, {}).then(res => {
if (res.data.code == 200) {
this.orderInfo = res.data.data
this.items[0].value = "¥" + (res.data.data.amount/100)
}
})
},
orderRefund(){
let opts = { url: '/app/user/order/refund', method: 'post' };
let orderRefund = {
orderId: this.orderInfo.id,
reason: this.items[1].value
}
this.http.httpTokenRequest(opts, orderRefund).then(res => {
if (res.data.code == 200) {
}
})
}
},
onLoad(e) {
this.orderId = e.orderId
},
onShow() {
this.getOrderInfo()
}
}
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment