!79 2022-01-22 Jiamin

Merge pull request !79 from Admin/sit-jiamin-v2
This commit is contained in:
Admin
2022-01-22 11:56:03 +00:00
committed by Gitee
5 changed files with 1239 additions and 814 deletions

View File

@@ -1,9 +1,8 @@
<template>
<div>
<div class="user-main">
<Myheader></Myheader>
<div class="rc-header">
<div class="rc-main" v-for="(item,index) in goldmedal" :key="index" >
<div class="rc-top"></div>
<div class="rc-main" v-for="(item,index) in goldmedal" :key="item.id" >
<div class="rc-receiving" >
<em>{{item.status=='0'?'待付款':item.status=='1'?'待收货':item.status=='2'?'已完成':item.status=='3'?'已取消':'异常订单'}}</em>
<span>{{orderstatus}}</span>
@@ -27,20 +26,20 @@
</div>
<div
class="mypersonal"
v-for="(dataaddress, index) in useraddress"
:key="index"
v-for="(datddress, index) in useraddress"
:key="datddress.id"
>
<div class="my-delivery">
<span>{{ dataaddress.state }}</span>
<i>{{ dataaddress.tel }}</i>
<span>{{ datddress.recipient }}</span>
<i>{{ datddress.recipientPhone }}</i>
</div>
<div class="per-delivery">
<span>{{ dataaddress.address }}</span>
<span>{{ datddress.provinceName }}{{datddress.cityName}}{{datddress.districtName}}{{datddress.detailAddress}}</span>
</div>
</div>
<div v-for="(userlist,index) in item.orderDetailList" :key="index">
<div >
<div class="rc-center">
<div class="rc-usermain">
<div class="rc-usermain" v-for="(userlist,index) in item.orderDetailList" :key="index">
<div class="rc-image">
<img :src="item.catimage" alt="" />
</div>
@@ -55,11 +54,11 @@
<span>数量:{{ item.pcs }}</span>
<i>{{ item.ecPrice }}</i>
<div class="rc-bottom">
<span>联系客服申请售后</span>
<span @click="userpay()">{{customer}}</span>
</div>
</div>
<div class="rc-bottomm">
<span>联系客服申请售后</span>
<span @click="userpay()">{{customer}}</span>
</div>
<!-- <div class="rc-userbottomm">
<i>{{ item.userprice }}</i>
@@ -68,14 +67,12 @@
</div> -->
</div>
</div>
</div>
<div class="rc-merchandise">
<ul>
<li>
<span>商品总价:</span>
<i>{{ shopprice.price }}</i>
<i>{{ item.salesAmount }}</i>
</li>
<li>
<span>配送费用:</span>
@@ -96,11 +93,11 @@
<ul>
<li>
<span>订单编号::</span>
<i>{{ information.reference }}</i>
<i>{{ item.orderNumber }}</i>
</li>
<li>
<span>下单时间::</span>
<i>{{ information.ordertime }}</i>
<i>{{ item.orderDate }}</i>
</li>
<li>
<span>付款方式::</span>
@@ -113,9 +110,9 @@
<li>
<span>快递单号:</span>
<div class="u-trackingnumber">
<i>{{ userlist.logisticsNumber }}
<i>{{ logisticsNumber }}
</i>
<img :src="information.catimage" alt="">
<!-- <img :src="information.catimage" alt=""> -->
</div>
</li>
@@ -126,68 +123,67 @@
<div class="rc-foo">
<div style="padding-top:55px">
<i>合计金额:</i>
<em>167.00</em>
<em>{{usersalesAmount}}</em>
</div>
<div style="padding-bottom:40px">
<span>再次购买</span>
<span @click="onceagain">再次购买</span>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="rc-full-width rc-margin-y--md">
<i class="ts-standard-btn ts-standard-btn--two center" @click="onceagain">
{{payorsucess}}
</i>
</div>
<MyFooter></MyFooter>
</div>
</template>
<script>
import Myheader from "~/components/header.vue";
import { userin} from "../../ajax/getData";
import MyFooter from '~/components/rc-footer.vue'
import {selectaddress,canceldanhao,generateOrderWX} from "../../ajax/getData";
export default {
data() {
return {
goldmedal:[],
userproductId:'',
userphone:'',
logisticsNumber:'',
customer:'',//联系客服或者取消订单
payorsucess:'', //立即支付或者再次购买,
addressstype: null,
addressUserName:'',
orderstatus: '',
goldastates:'',
userisdelivery:'待收货',
userdelivery: "派送中",
isshow:true,
usersalesAmount:'',
leftico: require("../../assets/image/rc-left.png"),
orderNumber:'',
usermessage:null,
userid: null,
useralllist:[],
delivery: [
{
state: "派送中",
time: "2021-11-21",
address: "广州天河—刘某某【15124617917】正在派送中",
},
],
useraddress: [
{
state: "李某某",
tel: "15124117917",
address: "广东省 广州市 天河区 天河客运站118号",
},
],
goldmedal: [
{
ordernumber: "1111111111111111111",
orderstype: 1,
index:0,
usereat: "英国短毛猫成猫全价湿粮",
num: "5kg",
specification: "1",
userprice: "167.00",
catimage: require("../../assets/image/rc-win.png"),
},
],
shopprice: {
price: "¥197.00",
distribution: "¥0.00",
promotion: "-¥30.00",
payment: "¥167.00",
},
information: {
reference: "1111111111111111",
@@ -201,643 +197,172 @@ export default {
},
methods: {
async canceldanhao(orderNumber){
let data=await userin(orderNumber);
console.log(data);
this.goldmedal=data;
console.log(this.goldmedal);
//取消订单
async canceldanhao(orderNumber) {
let data = await canceldanhao(this.userphone,this.orderNumber);
if (data) {
this.$message({
type: "warning",
message: "取消订单成功",
});
setTimeout(() => {
this.$router.push({
path: "/personal/useraddress",
query: {
stype: 1,
},
});
}, 500);
}
},
userpay(){
console.log('---');
if(this.goldastates==0){
this.canceldanhao();
}
},
//订单支付和再次购买
onceagain(){
console.log(this.payorsucess);
if(this.payorsucess=='立即支付'){
console.log('----')
this.getwei();
}else{
this.$router.push({
path: "/productdetails/producted",
query: {
stype: 1,
productCode: this.userproductId
},
});
console.log('不是立即支付');
}
},
async orderquantity(orderNumber){
let data=await userin(orderNumber);
if(data){
this.goldmedal=data;
for(let i=0;i<this.goldmedal.length;i++){
this.goldmedal[i].status=0
this.goldastates=this.goldmedal[i].status;
this.userproductId=this.goldmedal[i].orderDetailList[0].productId;
this.logisticsNumber=this.goldmedal[i].orderDetailList[0].logisticsNumber;
this.orderNumber=this.goldmedal[i].orderNumber
this.usersalesAmount=this.goldmedal[i].salesAmount;
this.addressUserName=this.goldmedal[i].addressUserName;
}
console.log(this.goldmedal,this.userproductId,this.usersalesAmount);
}
},
//订单立即支付
async getwei(user) {
let postData = [];
let oneProduct = {
productName: item.productName,
buyCount: item.buyCount,
productId: item.productCode,
payAmount: item.productPrice,
memberId: item.memberId,
phoneNumber: item.mobile,
orderAddress: {
addressPhoneNumber: orderAddress[0].recipientPhone,
addressUserName: orderAddress[0].recipient,
addressProvinceName: orderAddress[0].provinceName,
addressCityName: orderAddress[0].cityName,
addressCountyName: orderAddress[0].districtName,
addressDetailInfo: orderAddress[0].detailAddress,
},
};
let res = await generateOrderWX(postData);
let userPayData = {
orderId: res.data,
userprice: this.usersalesAmount, //订单总价
userinformation:
this.addressUserName+ //姓名
" " +
this.userphone, //电话
wxPay: "weixin://wxpay/bizpayurl?pr=4RJbokxzz",
};
this.$router.push({
path: "/personal/userpay",
query: {
userPayData:JSON.stringify(userPayData),
},
});
},
async editaddress(user) {
// user.data.id=844350;
let data = await selectaddress(this.userid);
console.log(data);
let list=[]
this.useraddress=data.data;
for(let i =0;i<this.useraddress.length;i++){
if(this.useraddress[i].isDefault==true){
list.push(this.useraddress[i]);
}
}
this.useraddress=list;
console.log(list);
console.log(this.goldmedal);
// console.log(this.list);
},
},
mounted() {
this.usermessage = JSON.parse(localStorage.getItem("userInfo"));
this.userid = this.usermessage.data.id;
this.userphone=this.usermessage.data.mobile;
this.editaddress(this.userid);
this.addressstype = this.$route.query.stype;
this.orderNumber=this.$route.query.orderNumber;
this.canceldanhao(this.orderNumber)
console.log(this.orderNumber);
this.orderquantity(this.orderNumber)
if(this.addressstype==2){
this.orderstatus='您的订单已付款成功,请耐心等候,我们会尽快安排给您发货!';
this.orderstatus='您的订单已完成';
this.isshow=false;
this.userisdelivery='待发货';
this.customer='联系客服申请售后'
this.payorsucess='再次购买'
console.log( this.orderstatus);
}else if(this.addressstype==0){
this.orderstatus='您的订单尚未支付';
this.orderstatus='您的订单还未付款请尽快付款';
this.isshow=false;
this.userisdelivery='待付款';
this.customer='取消订单'
this.payorsucess='立即支付'
}
else if(this.addressstype==1){
this.orderstatus='您的订单发货,请您耐心等候!';
this.orderstatus='您的订单已发出请耐心等候';
this.isshow=true;
this.userisdelivery='待收货';
this.customer='联系客服申请售后'
this.payorsucess='再次购买'
}
else if(this.addressstype==3){
this.orderstatus='您的订单已取消';
this.isshow=false;
this.userisdelivery='已取消';
this.customer='联系客服申请售后'
this.payorsucess='再次购买'
}
console.log(this.addressstype);
},
components: {
Myheader,
MyFooter,
},
};
</script>
<style lang="less" scoped>
ul li ol li em strong i {
list-style: none;
font-style: normal;
}
.rc-header {
width: 100%;
}
//手机端
@media screen and (max-width: 768px) {
.rc-main {
width: 92%;
margin: 0 auto;
.rc-userbottom{
display: none;
}
.viewdetails{
display: none;
}
.rc-foo{
display: none;
}
.rc-receiving {
width: 100%;
height: 80px;
display: flex;
align-items: center;
em {
font-style: normal;
color: #e1001a;
font-size: 22px;
}
span {
color: #666666;
font-size: 12px;
display: block;
margin-left: 18px;
width: 62%;
@import url("../../assets/css/global.less");
@import url("../../assets/css/usertion.less");
}
}
.delivery {
display: flex;
flex-direction: column;
height: 80px;
.to-delivery {
display: flex;
align-items: center;
font-style: normal;
span {
display: block;
margin-left: 3px;
}
i {
font-style: normal;
margin-left: 8px;
display: block;
}
}
.bo-delivery {
span {
font-size: 14px;
color: #666666;
display: block;
margin-top: 8px;
}
}
}
.mypersonal {
display: flex;
flex-direction: column;
height: 80px;
.my-delivery {
display: flex;
align-items: center;
font-style: normal;
span {
display: block;
margin-left: 3px;
}
i {
font-style: normal;
margin-left: 8px;
display: block;
}
}
.per-delivery {
span {
font-size: 14px;
color: #666666;
display: block;
margin-top: 8px;
}
}
}
.rc-usermain {
display: flex;
.rc-image {
border: 1px solid #d8d8d8;
margin-top: 17px;
height: 96px;
img {
width: 96px;
height: 96px;
display: block;
}
}
.rc-right {
.rc-userbottomm {
display: none;
}
display: flex;
flex-direction: column;
width: 100%;
margin-left: 16px;
justify-content: center;
em {
font-style: normal;
display: block;
font-size: 16px;
margin-top: 18px;
font-weight: bold;
color: #e1001a;
}
}
.rc-userright {
display: flex;
flex-direction: column;
color: #666666;
font-size: 14px;
span {
display: block;
margin-top: 16px;
}
}
.rc-userbottom {
display: flex;
justify-content: space-between;
margin-top: 8px;
span {
color: #666666;
font-size: 14px;
}
i {
font-style: normal;
color: #e1001a;
font-size: 18px;
font-weight: bold;
}
.rc-bottom{
display: none;
}
}
.rc-bottomm {
display: flex;
align-items: center;
justify-content: flex-end;
margin-top: 24px;
span {
display: block;
width: 130px;
display: flex;
align-items: center;
line-height: 40px;
text-align: center;
color: #e2001a;
height: 40px;
font-size: 12px;
border: 2px solid #e2001a;
justify-content: center;
border-radius: 30px;
font-weight: bold;
}
span:last-child {
margin-left: 15px;
}
}
}
.rc-merchandise {
width: 100%;
margin-top: 32px;
ul {
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
line-height: 26px;
i {
font-style: normal;
color: #666666;
font-size: 14px;
}
li {
list-style: none;
font-style: normal;
display: flex;
justify-content: space-between;
span {
font-size: 14px;
color: #333333;
}
}
li:last-child {
i {
color: #e1001a;
font-size: 16px;
font-style: normal;
}
}
}
}
.rc-payment{
width: 100%;
margin-top: 32px;
.u-trackingnumber{
display: flex;
align-items: center;
i {
font-size: 14px;
font-style: normal;
margin-right: 16px;
}
img{
width: 8px;
height: 16px;
}
}
ul {
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
line-height: 26px;
i {
font-style: normal;
color: #666666;
font-size: 14px;
}
li {
list-style: none;
font-style: normal;
display: flex;
justify-content: space-between;
span {
font-size: 14px;
color: #333333;
}
}
}
}
}
}
//pc端
@media screen and (min-width: 768px) and (max-width: 1920px) {
.rc-main {
width: 92%;
margin: 0 auto;
.rc-userbottomm{
display: none;
}
.rc-border{
width: 100%;
border-bottom: 1px solid #D7D7D7;
margin-top: 32px;
}
.rc-receiving {
width: 100%;
height: 80px;
display: flex;
flex-direction: column;
em {
font-style: normal;
color: #E1001A;
font-size: 26px;
}
span {
color: #666666;
font-size: 16px;
display: block;
margin-top: 25px;
}
}
.delivery {
display: flex;
flex-direction: column;
height: 140px;
display: flex;
justify-content: center;
.viewdetails{
display: flex;
align-items: center;
justify-content: flex-end;
span{
color:#444444;
font-size: 18px;
display: block;
margin-right: 8px;
}
img{
width: 8px;
height: 16px;
}
}
.to-delivery {
display: flex;
align-items: center;
font-style: normal;
span {
display: block;
// margin-left: 16px;
font-size: 18px;
color: #333333;
}
i {
font-style: normal;
margin-left: 8px;
display: block;
font-size: 18px;
color: #999999;
}
}
.bo-delivery {
span {
font-size: 16px;
color: #666666;
display: block;
margin-top: 16px;
}
}
}
.mypersonal {
display: flex;
flex-direction: column;
height: 140px;
justify-content: center;
.my-delivery {
display: flex;
align-items: center;
font-style: normal;
span {
display: block;
margin-left: 3px;
font-size: 18px;
color: #333333;
}
i {
font-style: normal;
margin-left: 8px;
display: block;
font-size: 18px;
color: #333333;
}
}
.per-delivery {
span {
font-size: 18px;
color: #666666;
display: block;
margin-top: 16px;
}
}
}
.rc-usermain {
display: flex;
.rc-image {
border: 1px solid #d8d8d8;
margin-top: 17px;
img {
width: 96px;
height: 96px;
display: block;
}
}
.rc-right {
.rc-bottomm{
display: none;
}
.rc-usercenter{
display: flex;
justify-content: center;
flex-direction: column;
em {
font-style: normal;
display: block;
font-size: 18px;
font-weight: bold;
margin-top: 17px;
color: #e1001a;
}
}
display: flex;
width: 100%;
margin-left: 16px;
}
.rc-userright {
display: flex;
flex-direction: column;
color: #666666;
font-size: 16px;
span {
display: block;
margin-top: 16px;
font-size: 16px;
}
}
.rc-userbottom {
display: flex;
width: 80%;
justify-content: space-between;
align-items: center;
margin-left: 119px;
span {
color: #E1001A;
font-size: 20px;
}
i {
font-style: normal;
color: #e1001a;
font-size: 20px;
font-weight: bold;
}
.rc-bottom {
display: flex;
align-items: center;
justify-content: flex-end;
margin-top: 24px;
span {
display: block;
width: 164px;
display: flex;
align-items: center;
line-height: 40px;
text-align: center;
color: #e2001a;
height: 40px;
border: 2px solid #e2001a;
justify-content: center;
border-radius: 30px;
font-weight: bold;
font-size: 14px;
}
}
}
}
.rc-merchandise {
width: 100%;
margin-top: 32px;
ul {
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
line-height: 40px;
font-size: 18px;
i {
font-style: normal;
color: #666666;
}
li {
list-style: none;
font-style: normal;
display: flex;
justify-content: space-between;
span {
color: #333333;
}
}
li:last-child {
i {
color: #e1001a;
font-size: 20px;
font-style: normal;
}
}
}
}
.rc-payment{
width: 100%;
margin-top: 80px;
.u-trackingnumber{
display: flex;
align-items: center;
i {
font-size: 18px;
font-style: normal;
margin-right: 16px;
}
img{
width: 8px;
height: 16px;
}
}
ul {
width: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
line-height: 40px;
font-size: 18px;
i {
font-style: normal;
color: #666666;
display: block;
}
li {
list-style: none;
font-style: normal;
display: flex;
justify-content: space-between;
span {
color: #333333;
}
}
}
}
.rc-foot{
display: flex;
flex-direction: column;
.rc-foo{
display: flex;
justify-content: flex-end;
flex-direction: column;
align-items: self-end;
i{
font-style: normal;
color:#333333;
font-size: 20px;
margin-right: 20px;
}
em{
font-style: normal;
color: #E1001A;
font-size: 26px;
}
span{
display: block;
width: 164px;
margin-top: 36px;
background: #E2001A;
line-height: 48px;
text-align: center;
color: white;
font-size: 16px;
height: 48px;
border-radius: 30px;
}
}
}
}
}
</style>