This commit is contained in:
唐明明
2021-09-23 10:37:13 +08:00
28 changed files with 7068 additions and 426 deletions

View File

@@ -27,10 +27,16 @@
</view>
<view class="member-cont">
<view class="member-tips">
<view class="member-tips-title">会员升级/续费</view>
<view class="member-tips-time">有效期2022年10月1日</view>
<view class="member-tips-title" v-if="wordData.grade == 1">会员升级/续费</view>
<view class="member-tips-title" v-else-if="wordData.grade == 2">续费</view>
<view class="member-tips-title" v-else>企业会员</view>
<view class="member-tips-time">有效期{{wordData.identity}}</view>
</view>
<view class="member-btn" @click="$Router.push({name: 'Vip'})">
<view class="member-btn" v-if="wordData.grade == 3">
<image class="member-btn-icon" src="../../static/icons/store_icon_vip.png" mode="aspectFill"></image>
<view class="member-btn-name">已满级</view>
</view>
<view class="member-btn" @click="$Router.push({name: 'Vip'})" v-else>
<image class="member-btn-icon" src="../../static/icons/store_icon_vip.png" mode="aspectFill"></image>
<view class="member-btn-name">去升级</view>
</view>
@@ -65,12 +71,12 @@
<view class="number">{{wordData.middle.sale || 0}}</view>
<view class="text">在售权证</view>
</view>
<view class="general-item">
<view class="number">{{wordData.top.barter_total || 0}}</view>
<view class="general-item" @click="$Router.push({name: 'Return'})">
<view class="number">{{wordData.order.deliver || 0}}</view>
<view class="text">退货单处理</view>
</view>
<view class="general-item">
<view class="number">{{wordData.top.barter_total || 0}}</view>
<view class="general-item" @click="$Router.push({name: 'Deliver'})">
<view class="number">{{wordData.order.refund || 0}}</view>
<view class="text">发货单处理</view>
</view>
</view>
@@ -132,7 +138,7 @@
<image class="icon" src="@/static/icons/tool_icon_05.png" mode="aspectFill"></image>
<view class="title">智能名片</view>
</view> -->
<view class="store-item">
<view class="store-item" @click="$Router.push({name: 'Spread'})">
<image class="icon" src="@/static/icons/tool_icon_06.png" mode="aspectFill"></image>
<view class="title">营销推广码</view>
</view>
@@ -162,7 +168,16 @@
order : {}
}
}
}
},
identityData:{
type: Object,
default: () => {
return {
time : {},
grade : {}
}
}
}
}
}
</script>

View File

@@ -0,0 +1,252 @@
<template>
<view>
<view class="OrderInfo">
<!-- 订单状态 -->
<view class="order-status">
<block v-if="listType == 'deliver'">
<view class="info">
{{info.state_text}}
</view>
</block>
<block v-else>
<view class="info" v-if="info.state">
{{info.state.text}}
<span>{{info.state.remark}}</span>
</view>
</block>
<image src="../../static/icons/fire.png" mode="widthFix"></image>
</view>
<!-- 订单信息 -->
<view class="goods-info1">
<view class="top">
<view class="company">
<view class="company-logo" v-if="info.shop">
<image :src="info.shop.cover" mode="aspectFill" />
<view class="name nowrap">{{info.shop.name}}</view>
</view>
<view class="flexrow">
<view class="no nowrap" v-if="listType == 'deliver'">退货单号 {{info.shipment_no}}</view>
<view class="no nowrap" v-else>退货单号 {{info.refund_no}}</view>
</view>
</view>
</view>
<view class="goods-info">
<image class="goods-img" v-if="info.goods_sku" :src="info.goods_sku.cover" mode="aspectFill" />
<view class="goods" v-if="info.goods_sku">
<view class="nowrap name">{{info.goods_sku.goods_name}}</view>
<view class="sku">数权个数 <span>x {{info.qty}}</span> </view>
</view>
</view>
</view>
<view class="goods-info1">
<view class="goods-type">创建退货时间 <span>{{info.created_at}}</span></view>
<view class="goods-type">运费 <span>自行承担运费</span></view>
<view class="goods-type">退货数量 <span>{{info.qty}}</span></view>
</view>
<!-- 操作相关 -->
<view class="actions">
<view class="nowPay" @click="orderRun">返回列表</view>
<view v-if="listType != 'deliver'" @click="$Router.push({name: 'storeJournal', params: {id: info.refund_id}})" class="nowPay">查看退货日志</view>
</view>
</view>
</view>
</template>
<script>
export default {
name:"storeOrderDet",
props:{
// 数据列表
info : {},
listType: ''
},
created() {
},
methods: {
// 返回上一页
orderRun() {
uni.navigateBack({
delta: 1
})
}
}
}
</script>
<style lang="scss" scoped>
.OrderInfo {
width: 100%;
min-height: 100vh;
box-sizing: border-box;
background-color: #F7F7F7;
padding-bottom: 80rpx;
}
.order-status {
width: 100%;
height: 300rpx;
background-image: linear-gradient(to bottom, $main-color, $main-color-light);
color: #Fff;
font-size: 36rpx;
padding: 30rpx 50rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
.info {
font-size: 36rpx;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: space-between;
box-sizing: border-box;
span {
font-size: 28rpx;
padding-top: 30rpx;
}
}
image {
width: 200rpx;
}
}
// 订单信息
.goods-info1 {
padding: 20rpx 40rpx;
background-color: #fff;
margin-bottom: $margin;
.top {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 30rpx 0;
border-bottom: solid 1rpx #EFF4F2;
.company-logo {
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
image {
width: 40rpx;
height: 40rpx;
border-radius: 50%;
margin-right: 20rpx;
}
.name {
width: 600rpx;
font-size: 30rpx;
color: #484848;
font-weight: bold;
}
.no {
margin-top: 16rpx;
font-size: $title-size*0.8;
color: #999;
}
}
}
.goods-info {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
margin-top: 40rpx;
.goods-img {
width: 120rpx;
height: 120rpx;
border-radius: 10rpx;
}
.goods {
width: calc(100% - 120rpx);
padding: 0 20rpx;
box-sizing: border-box;
.sku {
flex: 1;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
margin-top: 20rpx;
font-size: 28rpx;
color: #999;
}
}
}
.goods-type {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding: 30rpx 0;
border-bottom: solid 1rpx #f7f7f7;
}
}
// 操作按钮
.actions {
position: fixed;
bottom: 0;
left: 0;
right: 0;
border-top: solid 1rpx #f2f2f2;
padding-top: 18rpx;
padding-right: 30rpx;
padding-left: 30rpx;
height: 110rpx;
background: white;
display: flex;
flex-wrap: wrap;
flex-direction: row-reverse;
.nowPay {
margin-left: 20rpx;
height: 54rpx;
line-height: 50rpx;
box-sizing: border-box;
border: solid 1rpx #747788;
padding: 0 20rpx;
font-size: 26rpx;
border-radius: 40rpx;
margin-top: 10rpx;
&.actions-color {
color: #e1293f;
border-color: #ec96a0;
}
}
.cancelOrder {
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
background-color: #DD524D;
}
.logistics {
background-color: $main-color;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
.sign {
background-color: #DD524D;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
.evaluate {
background-color: $main-color;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
}
</style>

View File

@@ -0,0 +1,228 @@
<template>
<view>
<view class="returnCont">
<view class="returnList" v-for="(item, index) in list" :key="index">
<view class="MallRefundsTemplate">
<view class="top">
<view class="company">
<view class="company-logo" v-if="item.shop">
<image :src="item.shop.cover" mode="aspectFill" />
<view class="company-name nowrap">{{item.shop.name}}</view>
</view>
<view class="no nowrap" v-if="listType == 'deliver'">退货单号 {{item.shipment_no}}</view>
<view class="no nowrap" v-else>退货单号 {{item.refund_no}}</view>
</view>
<view class="status" style="color:#ff5500;" v-if="listType == 'deliver'">{{item.state_text}}</view>
<view class="status" style="color:#ff5500;" v-else>{{item.state.text}}</view>
</view>
<view class="goods-info" @click="goDetail(item.goods_sku.goods_id)" v-if="item.goods_sku">
<image class="goods-img" :src="item.goods_sku.cover" mode="aspectFill" />
<view class="goods">
<view class="name nowrap">{{item.goods_sku.goods_name}}</view>
<view class="sku">数权个数 <span>x {{item.qty}}</span> </view>
</view>
</view>
</view>
<view class="actions">
<view v-if="item.can">
<view v-if="item.can.audit" @click="$Router.push({name: 'Examine', params: {id: item.refund_id}})" class="nowPay actions-color">订单审核</view>
<view v-if="item.can.sign" @click="goSign(item.refund_id, index)" class="nowPay actions-color">订单签收</view>
<view v-if="item.can.reToken" @click="goReToken(item.refund_id, index)" class="nowPay actions-color">确认退货</view>
<view v-if="item.can.logistic" @click="$Router.push({name: 'Logistic', params: {id: item.shipment_no}})" class="nowPay actions-color">查看物流</view>
<view v-if="item.can.deliver" @click="$Router.push({name: 'DeliverForm', params: {id: item.shipment_no}})" class="nowPay actions-color">我要发货</view>
</view>
<view v-if="listType == 'deliver'" class="nowPay" @click="$Router.push({name: 'storeOrderDetails', params: {id: item.shipment_no, type: listType}})">查看详情</view>
<view v-else class="nowPay" @click="$Router.push({name: 'storeOrderDetails', params: {id: item.refund_id, type: 'return'}})">查看详情</view>
</view>
</view>
</view>
</view>
</template>
<script>
export default {
name:"goodsList",
props:{
// 数据列表
list: {
type : Array,
default : () => {
return new Array
}
},
listType: ''
},
created() {}
}
</script>
<style lang="scss" scoped>
// 列表
.returnList {
background-color: #FFFFFF;
padding: $padding;
box-sizing: border-box;
margin-top: $margin;
}
.MallRefundsTemplate{
position: relative;
z-index: 0;
}
// 顶部信息
.top {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding-bottom: 20rpx;
border-bottom: solid 1rpx #f7f7f7;
position: relative;
z-index: 0;
.company-logo {
display: flex;
width: 90%;
image {
width: 40rpx;
height: 40rpx;
border-radius: 50%;
margin-right: 20rpx;
}
.company-name {
font-size: 30rpx;
color: #484848;
font-weight: bold;
width: calc(100% - 40rpx);
padding: 0 20rpx;
box-sizing: border-box;
}
}
.no {
margin-top: 10rpx;
font-size: $title-size*0.8;
color: #999;
}
.status {
color: #999;
font-size: $title-size*.9;
position: absolute;
top: 0;
right: 0;
}
}
// 商品信息
.goods-info {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
margin-top: 36rpx;
.goods-img {
width: 120rpx;
height: 120rpx;
border-radius: 10rpx;
}
.goods {
flex: 1;
width: calc(100% - 120rpx);
padding: 0 20rpx;
box-sizing: border-box;
margin-bottom: 10rpx;
.name {
width: 100%;
font-size: 30rpx;
span {
font-size: 32rpx;
font-weight: normal;
}
}
.sku {
flex: 1;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
margin-top: 10rpx;
font-size: 28rpx;
color: #999;
}
}
}
.flexrow {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
width: 100%;
.copy {
color: $main-color;
font-size: $title-size*0.8;
font-weight: 400;
padding: 0 30rpx;
}
}
// 操作按钮
.actions {
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-end;
box-sizing: border-box;
flex-wrap: wrap;
flex: 1;
font-size: 28rpx;
color: #fff;
border-top: solid 1rpx #EFF4F2;
margin-top: $margin;
.nowPay {
padding: 4rpx 20rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
color: #999;
border:solid 1rpx #cacaca;
&.actions-color {
color: #e1293f;
border-color: #ec96a0;
}
}
.cancelOrder {
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
background-color: #DD524D;
}
.logistics {
background-color: $main-color;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
.sign {
background-color: #DD524D;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
.evaluate {
background-color: $main-color;
padding: 10rpx 30rpx;
border-radius: 40rpx;
margin-left: 20rpx;
margin-top: 20rpx;
}
}
</style>

View File

@@ -23,17 +23,17 @@
<image class="arrow" src="@/static/icons/equity_arrow_right.png" mode="aspectFill"></image>
</view>
<!-- order-shipment -->
<view class="store-item" @click="$Router.push({name: ''})" v-if="toolList.orderShipment">
<image class="icon" src="@/static/icons/tool_icon_04.png" mode="aspectFill"></image>
<view class="title">发货单管理</view>
<!-- order-refund -->
<view class="store-item" @click="$Router.push({name: 'Return'})" v-if="toolList.orderRefund">
<image class="icon" src="@/static/icons/tool_icon_07.png" mode="aspectFill"></image>
<view class="title">退换货管理</view>
<image class="arrow" src="@/static/icons/equity_arrow_right.png" mode="aspectFill"></image>
</view>
<!-- order-refund -->
<view class="store-item" @click="$Router.push({name: ''})" v-if="toolList.orderRefund">
<image class="icon" src="@/static/icons/tool_icon_07.png" mode="aspectFill"></image>
<view class="title">退换货管理</view>
<!-- order-shipment -->
<view class="store-item" @click="$Router.push({name: 'Deliver'})" v-if="toolList.orderShipment">
<image class="icon" src="@/static/icons/tool_icon_04.png" mode="aspectFill"></image>
<view class="title">发货单管理</view>
<image class="arrow" src="@/static/icons/equity_arrow_right.png" mode="aspectFill"></image>
</view>