订单跳转,订单详情,商品导入,线上导入,样式修改

This commit is contained in:
THK3121 2023-07-12 15:23:13 +08:00
parent b8178bdf2b
commit b4c6386686
10 changed files with 900 additions and 832 deletions

View File

@ -82,49 +82,57 @@
<image src="@/static/images/jiankong.png"></image>
<text>订单监控</text>
</view>
<view class="list">
<view class="item" v-for="(item, index) in OrderList" :key="index">
<view class="order-num acea-row row-middle">
订单号{{ item.order_sn }}
<text class="time">下单时间{{ item.create_time }}</text>
<view class="footer_bon" v-for="(item,index) in OrderList" :key="index">
<view class="bon_top" v-for="(val, key) in item.orderProduct" :key="key" @click="toDetail(item)">
<view class="public_img">
<image class="public_img" :src="val.cart_info.product.image" mode=""></image>
</view>
<view class="pos-order-goods" v-for="(val, key) in item.orderProduct" :key="key" @click="toDetail(item)">
<view class="goods">
<view class="acea-row row-between-wrapper">
<view class="picTxt acea-row row-between-wrapper">
<view class="pictrue">
<image :src="val.cart_info.product.image" />
</view>
<view class="text acea-row row-between row-column">
<view class="info ">
{{ val.cart_info.product.store_name }}
</view>
<view class="attr" v-if="val.cart_info.productAttr.sku">
{{ val.cart_info.productAttr.sku }}
</view>
</view>
</view>
<view class="money">
<view class="x-money">{{ val.total_price }}</view>
<view class="x-money">采购数量{{ val.product_num }}</view>
<view class="x-money">已售数量{{ val.sales_volume }}</view>
<view class="num">库存量{{ val.product_num - val.sales_volume }}</view>
</view>
<view>
<view class="text_top">
<view class="text">
{{ val.cart_info.product.store_name }}
</view>
<view class="monry">
{{ val.total_price }}
</view>
</view>
<view class="text_order">
订单号: {{ item.order_sn }}
</view>
</view>
</view>
<view class="bon_bon" v-for="(val, key) in item.orderProduct" :key="key" @click="toDetail(item)">
<view class="order">
采购数量
<view class="txt">
{{ val.product_num }}
</view>
</view>
<view class="order" style="border-left: 1px solid #999999;border-right: 1px solid #999999;">
已售数量
<view class="txt">
{{ val.sales_volume }}
</view>
</view>
<view class="order">
库存数量
<view class="txt">
{{ val.product_num - val.sales_volume }}
</view>
</view>
</view>
</view>
</view>
<button v-if="this.type_id == 12" class="footer-bnt" @click="navigator()">查看更多 ></button>
<!-- <view class="public-wrapper">
</view>
<button v-if="this.type_id == 12" class="footer-bnt" @click="navigator()">查看更多 ></button>
<!-- <view class="public-wrapper">
<navigator class="item" :url="`/pages/admin/order/monitor?merId=${mer_id}`"
hover-class="none">
<view class="num">订单监控</view>
</navigator>
</view> -->
<Loading :loaded="loaded" :loading="loading"></Loading>
</view>
<Loading :loaded="loaded" :loading="loading"></Loading>
</view>
</view>
</template>
@ -218,9 +226,9 @@
);
},
toDetail(item) {
uni.navigateTo({
url: `/pages/admin/orderDetail/index?id=${item.order_id}&mer_id=${item.mer_id}`
})
uni.navigateTo({
url: `/pages/admin/orderDetail/index?id=${item.order_id}&mer_id=${item.mer_id}`
})
},
navigator() {
uni.navigateTo({
@ -232,6 +240,7 @@
purchaseOrder(this.where, mer_id).then(res => {
console.log(res);
this.OrderList = res.data
console.log(this.OrderList);
})
}
},
@ -440,156 +449,69 @@
}
}
.list {
margin-top: 20upx;
margin-bottom: 20px;
.footer_bon {
width: 100%;
border-radius: 8px;
background-color: #fff;
padding-bottom: 10px;
margin-bottom: 10px;
.item {
background-color: #fff;
width: 100%;
position: relative;
margin-top: 20px;
.bon_top {
display: flex;
justify-content: flex-start;
align-items: center;
.item-status {
position: absolute;
top: 14rpx;
right: 20rpx;
.iconfont {
font-size: 98rpx;
color: #CCCCCC;
&.on {
color: #FFE3BC;
}
}
.public_img {
width: 60px;
height: 60px;
margin: 12px;
}
.order-num {
height: 124upx;
border-bottom: 1px solid #eee;
font-size: 30upx;
font-weight: bold;
color: #282828;
padding: 0 30upx;
position: relative;
.text_top {
display: flex;
justify-content: flex-start;
align-items: center;
margin: 3px 0 3px 3px;
.time {
font-size: 26upx;
font-weight: normal;
color: #999;
margin-top: -40upx;
}
}
.pos-order-goods {
padding: 0 30upx;
background-color: #fff;
.goods {
padding-top: 20rpx;
.text {
width: 180px;
overflow: hidden;
border-top: 1px dashed #e5e5e5;
.uncancell {
color: #999999;
}
.picTxt {
width: 450upx;
.pictrue {
width: 130upx;
height: 130upx;
image {
width: 100%;
height: 100%;
border-radius: 6upx;
}
}
.text {
flex-direction: column;
width: 150px;
.info {
font-size: 28upx;
color: #282828;
&.refund-info {
width: 460upx;
}
}
.refund-y-money {
margin-top: 16rpx;
font-size: 26rpx;
}
.attr {
margin-top: 5rpx;
font-size: 24upx;
color: #999;
}
}
}
.money {
width: 164upx;
text-align: right;
font-size: 28upx;
&.refund-money {
width: auto;
position: relative;
top: -50rpx;
.num {
color: #999999;
}
}
.refund-num {
font-size: 24rpx;
color: #282828;
}
.num {
color: #ff9600;
margin: 5upx 0;
}
.x-money {
color: #282828;
}
.y-money {
color: #999;
text-decoration: line-through;
}
}
.refund_num {
display: inline-block;
margin-left: 10rpx;
}
white-space: nowrap;
text-overflow: ellipsis;
}
.cancellate {
font-size: 24rpx;
float: right;
margin-top: 10rpx;
text {
margin-left: 26rpx;
}
.monry {
margin-left: 20px;
color: #F84221;
}
}
.text_order{
width: 200px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin-left: 3px;
}
}
.cancelled {
color: #FF9600;
.bon_bon {
width: 90%;
height: 66px;
background: #F5F5F5;
border-radius: 4px 4px 4px 4px;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin: auto;
margin-bottom: 10px;
margin-top: 5px;
.order {
width: 120px;
.txt {
margin-top: 5px;
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -181,15 +181,15 @@
</view>
<view class='item acea-row row-between'>
<view>实付款</view>
<view class='conter' style="color: black;" v-if="this.pay_type == 8">先货后款 实付: ¥<text style="color: #E93323;">
{{orderInfo.pay_price}}
<view class='conter' style="color: black;" v-if="this.pay_type == 8 && orderInfo.interest !== null">先货后款 实付: ¥<text style="color: #E93323;">
0.00
</text></view>
<view class='conter' style="color: black;" v-else>{{orderInfo.pay_price}}</view>
<view class="conters" style="color: black;" v-if="this.pay_type == 8">
<view class="conters" style="color: black;" v-if="this.pay_type == 8 && orderInfo.interest !== null">
结算周期到期后付款 {{orderInfo.interest.total_amount}}
<image src="@/static/images/wenhao.png" mode="" @click="Settlement"></image>
</view>
<view class="conters" v-if="this.pay_type == 8">
<view class="conters" v-if="this.pay_type == 8 && orderInfo.interest !== null">
结算周期:{{orderInfo.orderList[0].merchant.settle_cycle}}
日利率:{{orderInfo.orderList[0].merchant.interest_rate}}%
</view>

View File

@ -119,7 +119,8 @@
isOpen:false ,//
moneyBg: '/static/images/couponBg',
text: '展开更多',
timer: null
timer: null,
product_type:'',
};
},
computed: mapGetters(['isLogin','viewColor','keyColor']),
@ -134,6 +135,9 @@
this.order_type = options.order_type;
this.status = options.status || 0;
this.msg = options.msg || '';
if(options.product_type){
this.product_type=options.product_type
}
if (this.isLogin) {
this.refreshData();
} else {
@ -201,9 +205,9 @@
*/
goOrderDetails: function(e) {
let that = this;
if (this.order_pay_info.paid == 0) {
if (this.product_type == 98) {
uni.redirectTo({
url: '/pages/users/order_list/index'
url: `/pages/users/order_list/index?status=1&product_type=${this.product_type}`
})
} else {
uni.redirectTo({

View File

@ -542,8 +542,7 @@
});
} else {
uni.redirectTo({
url: '/pages/plantGrass/plant_detail/index?id=' + res.data.community_id + '&type=' + that
.tabActive
url: '/pages/plantGrass/plant_detail/index?id=' + res.data.community_id + '&type=' + that.tabActive
})
}
/**

View File

@ -241,11 +241,8 @@
mer_id: this.mer_id,
product_id: this.data.product_id,
unique: this.data.unique,
});
}else{
this.data.product_id = this.checkboxList1[0].product_id
this.data.unique = this.checkboxList1[0].unique
this.show = true
console.log(this.data);
}
@ -256,7 +253,6 @@
},
//
creat() {
if (this.on_line == 1) {
if(this.data.number <1){
this.show=false
@ -273,7 +269,7 @@
}).catch(err=>{
this.show=false
this.$util.Tips({
title: err.message
title: '请选择规格后再次进行入库'
})
})
}
@ -291,11 +287,10 @@
},
//
checkboxChange(n) {
console.log('change', n);
this.data.unique = n
console.log(n);
},
radioChange(n) {
console.log(n);
this.data.product_id = n.product_id
console.log(this.data);
},

View File

@ -1,13 +1,21 @@
<template>
<view class="center">
<view class="top">
<!-- -->
<view class="top-header">
<view class="search">
<view class="search-content acea-row row-middle">
<text class="iconfont icon-sousuo"></text>
<input v-model="where.keyword" confirm-type="search" placeholder="请输收货人手机号或订单号搜索" class="input"
@confirm="handleSearch" />
</view>
</view>
</view>
</view>
<view class="bgc_img" v-if="this.shopList == ![]">
<image src="@/static/images/empty-box.png" mode="widthFix"></image>
<view class="txt">
<view class="txt">
暂无商品订单~
</view>
</view>
</view>
<view class='list' v-else>
<block>
@ -32,9 +40,7 @@
</view>
<view class='name line2'>{{items.cart_info.product.price}}</view>
<view class='name line2'>x {{items.product_num}}</view>
<view class='bnt b-color' v-if="items.is_imported == 0"
@click="importshop(items.order_id,items.product_id,items.product_sku)">
立即导入</view>
</view>
</view>
</block>
@ -43,8 +49,13 @@
<view class='totalPrice'>
共1件商品总金额
<text class='money'>{{items.product_price}}</text>
</view>
<view class="totalfooter">
<view class='bnt b-color' v-if="items.is_imported == 0"
@click="importshop(items.order_id,items.product_id,items.product_sku)">
立即导入</view>
</view>
</view>
</view>
</block>
@ -54,7 +65,7 @@
<view class="popen">
<h4>{{title}}</h4>
<view class="shuru">
点击返回商品管理
点击确定商品管理
</view>
<view class="btn">
<button class="btn_l" @click="close()">取消</button>
@ -62,6 +73,7 @@
</view>
</view>
</u-popup>
<Loading :loaded="loaded" :loading="loading"></Loading>
</view>
</template>
@ -75,6 +87,7 @@
import {
getOrderList
} from '@/api/order.js'
import Loading from '@/components/Loading/index'
export default {
data() {
return {
@ -86,7 +99,8 @@
page: 1,
limit: 10,
status: 20,
product_type: 98
product_type: 98,
keyword: '',
},
data: {
product_id: '',
@ -96,7 +110,8 @@
order_unique: ''
},
show: false,
title:''
title: '',
loaded: false,
}
},
onLoad(option) {
@ -107,27 +122,20 @@
this.data.unique = option.unique
},
methods: {
handleSearch() {
this.loaded = false;
this.where.page = 1;
this.shopList = [];
this.getList();
},
getList: function(mer_id) {
if (this.loading || this.loaded) return;
this.loading = true;
getOrderList(this.where, this.mer_id).then(res => {
console.log(res);
this.shopList = res.data.list
console.log(this.shopList);
})
// getPreviewProDetail({
// id:product_id,
// product_type:0,
// }).then(
// res => {
// console.log(res);
// console.log(this.shopList);
// },
// error => {
// that.$util.Tips({
// title: error.msg
// })
// }
// );
},
importshop(order_id, product_id, unique) {
this.data.order_id = order_id
@ -136,7 +144,7 @@
this.show = true
postImport(this.mer_id, this.data).then(res => {
console.log(res);
this.title=res.message
this.title = res.message
this.$util.Tips({
title: res.message
})
@ -145,38 +153,71 @@
close() {
this.show = false
},
getback(){
getback() {
uni.navigateBack({
delta: 1
});
delta: 1
});
}
}
}
</script>
<style lang="scss" scoped>
.top {
background-color: red;
height: 55px;
.input {
width: 90%;
margin: auto !important;
padding-top: 10px !important;
.top-header {
position: fixed;
top: 0;
left: 0;
z-index: 9999;
width: 100%;
background-color: #fff;
.search {
padding: 17rpx 30rpx;
.search-content {
width: 100%;
height: 60rpx;
padding: 0 30rpx;
border-radius: 30rpx;
background-color: #F5F5F5;
font-size: 26rpx;
}
.iconfont {
margin-right: 10rpx;
font-size: 26rpx;
color: #999999;
}
.input-placeholder {
font-size: 26rpx;
color: #999999;
}
.input {
flex: 1;
}
}
}
}
.bgc_img{
position: absolute;
top: 30vh;
left: 10vw;
image{
width: 300px;
.bgc_img {
position: absolute;
top: 30vh;
left: 10vw;
image {
width: 300px;
}
.txt {
text-align: center;
}
}
.txt{
text-align: center;
}
}
.list {
width: 690rpx;
margin: 14rpx auto 0 auto;
@ -184,7 +225,7 @@
.title {
height: 84rpx;
padding: 0 30rpx;
border-bottom: 1px solid #eee;
border-bottom: 1px solid #CCCCCC;
font-size: 28rpx;
color: #282828;
@ -247,23 +288,9 @@
}
.bnt {
position: absolute;
right: 10px;
bottom: 0px;
right: 10px;
width: 176rpx;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50rpx;
font-size: 27rpx;
background: linear-gradient(180deg, #F98649 0%, #F34E45 100%);
color: white;
}
}
}
.event_name {
@ -288,14 +315,37 @@
text-align: right;
margin: 27rpx 0 0 30rpx;
padding: 0 30rpx 30rpx 0;
.money {
font-size: 34rpx;
font-weight: bold;
color: rgb(233, 51, 35);
}
}
.totalfooter{
width: 100%;
height: 50px;
position: relative;
border-top: 1px solid #CCCCCC;
.bnt {
position: absolute;
right: 10px;
width: 176rpx;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50rpx;
font-size: 27rpx;
background: linear-gradient(180deg, #F98649 0%, #F34E45 100%);
color: white;
margin-left: 70%;
margin-top: 5px;
}
}
.bottom {
height: 107rpx;
padding: 0 30rpx;
@ -310,7 +360,7 @@
}
}
.popen {
.popen {
position: absolute;
top: 110px;
width: 100%;

View File

@ -185,7 +185,7 @@
<view class="price" v-if="item.isTake == 0"><text></text>{{ item.order.pay_price }}</view>
<view class="price" v-if="item.isTake == 1"><text></text>{{ item.order.org_price}}</view>
</view>
<view class="total" v-if="item.credit_buy == 1">
<view class="total" v-if="item.credit_buy == 1 && active == 4">
实付价
<view class="price"><text></text>0.00</view>
</view>
@ -373,10 +373,10 @@
<view class="footer_count">
<view>
合计:
<text class='pColor' v-if="cartArr[4].payStatus == 1">0.00</text>
<text class='pColor' v-if="cartArr[4].payStatus == 1 && active == 4">0.00</text>
<text class='pColor' v-else>{{totalPrice }}</text>
</view>
<view style="font-size: 14px;color: #F84221;" v-if="cartArr[4].payStatus == 1">
<view style="font-size: 14px;color: #F84221;" v-if="cartArr[4].payStatus == 1 && active == 4">
可结算周期到期后再付款{{totalPrice}}
</view>
<view class="coupon_price" v-if="couponData.total_coupon > 0">
@ -1135,6 +1135,7 @@
let that = this;
let active = e;
that.active = active;
console.log(this.active);
that.animated = true;
that.payType = that.cartArr[active].value;
if (that.payType == 'weixin') {
@ -1199,7 +1200,8 @@
orderId = res.data.result.order_id,
callback_key = res.data.result.pay_key,
jsConfig = res.data.result.config,
goPages = '/pages/order_pay_status/index?order_id=' + orderId + '&msg=' + res.message,
goPages = '/pages/order_pay_status/index?order_id=' + orderId + '&msg=' + res.message +'&product_type=' + that
.product_type,
goPagesOrder = '/pages/order_details/stay?order_id=' + orderId + '&credit_buy=1&product_type=' + that
.product_type;
that.orderPay = true;

View File

@ -239,6 +239,14 @@
<view>{{goods.cart_info.productAttr.price}}</view>
<view>x{{goods.product_num}}</view>
</view>
<view class="money" style="margin-left: 117px;" v-if="item.pay_type == 8">
<view>
先货后款 实付:0.00
</view>
</view>
<view class="totalPrice" v-if="item.pay_type == 8">
{{item.total_num || 0}}件商品结算周期到期后付款{{goods.cart_info.productAttr.price || item.interest.total_amount}}
</view>
</view>
</view>
</view>
@ -958,6 +966,12 @@
font-size: 28rpx;
color: #999;
margin-top: 6rpx;
.totalPrice {
font-size: 26rpx;
color: #282828;
text-align: right;
padding-left: 20px;
}
}
.my-order .list .item .item-info .text .name {
@ -1001,8 +1015,8 @@
font-size: 26rpx;
color: #282828;
text-align: right;
margin: 27rpx 0 0 30rpx;
padding: 0 30rpx 30rpx 0;
margin: 27rpx 0 0 -30rpx;
padding: -1px 30rpx 30rpx 0;
}
.my-order .list .item .totalPrice .money {

View File

@ -43,7 +43,7 @@
</view>
<view class="settel">
<view class='settel-t'>
<view>实付款</view>
<view>总价</view>
<view class='conter'> {{couponData.orderList[0].pay_price}}</view>
</view>
</view>