From e7731f1cf08331d23cd0d27549025a2642caa9ab Mon Sep 17 00:00:00 2001
From: xuxueyang <xuxy@fengyuntec.com>
Date: 星期三, 24 七月 2024 18:58:39 +0800
Subject: [PATCH] update todo还差个订单详情的商品列表展示
---
sub_pages/customer/trade/list.vue | 615 +++++++++++-------
static/common/icon-wx.png | 0
pages.json | 14
mixin/mixin.js | 4
sub_pages/partner/order-manage/order-manage.vue | 306 +++++----
pages/home/components/home-zones.vue | 338 +++++-----
static/common/icon-call.png | 0
static/common/icon-car.png | 0
static/common/icon-order-status-SEND.png | 0
sub_pages/customer/self/collect.vue | 32
sub_pages/partner/markup-config/markup-config.vue | 61 -
pages/order/order.vue | 203 ++++++
pages/order/order-detail.vue | 313 +++++++++
pages/user/supplier-user.vue | 6
14 files changed, 1,303 insertions(+), 589 deletions(-)
diff --git a/mixin/mixin.js b/mixin/mixin.js
index 8cf5ae0..4ad4309 100644
--- a/mixin/mixin.js
+++ b/mixin/mixin.js
@@ -258,9 +258,9 @@
}
return true
},
- async refreshList() {
+ async refreshList(type = 'get') {
this.page.current = 1
- await this.getList()
+ await this.getList(type)
},
async getList(type = 'get') {
if (this.listApi) {
diff --git a/pages.json b/pages.json
index b6f5b72..cc3eb0b 100644
--- a/pages.json
+++ b/pages.json
@@ -97,6 +97,20 @@
"navigationBarTitleText": "客服中心",
"enablePullDownRefresh": false
}
+ },
+ {
+ "path": "pages/order/order",
+ "style": {
+ "navigationBarTitleText": "我的订单",
+ "enablePullDownRefresh": true
+ }
+ },
+ {
+ "path": "pages/order/order-detail",
+ "style": {
+ "navigationBarTitleText": "订单详情",
+ "enablePullDownRefresh": false
+ }
}
],
"subPackages": [
diff --git a/pages/home/components/home-zones.vue b/pages/home/components/home-zones.vue
index c9b656f..30b2c15 100644
--- a/pages/home/components/home-zones.vue
+++ b/pages/home/components/home-zones.vue
@@ -1,191 +1,205 @@
<template>
- <view class="home-zones">
- <view class="c">
- <image class="p1 img100" :lazy-load="true" mode="aspectFit"
- src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/eb/eba404b98a224edc82897fe9647902e7%E4%BD%8D%E5%9B%BE@2x%20(4).png">
- </image>
- <view class="c-txt-1">
- <view class="title">婚礼酒店专区</view>
- <view class="flex">
- <view class="desc">查看详情</view>
- <view class="right m-l-5">
- <uni-icons class="icon" type="right" color="#C3B8A0" size="12"></uni-icons>
- </view>
+ <view class="home-zones">
+ <view class="c" v-for="(item,index) of list">
+ <image class="p1 img100 m-t-12" :lazy-load="true" mode="aspectFit"
+ :src="item.bgUrl">
+ </image>
+ <view class="c-txt-1">
+ <view class="title">{{ item.name }}</view>
+ <view class="flex" @click.stop="toDetail(item.id)">
+ <view class="desc">查看详情</view>
+ <view class="right m-l-5">
+ <uni-icons class="icon" type="right" color="#C3B8A0" size="12"></uni-icons>
+ </view>
- </view>
- </view>
- </view>
- <view class="c">
- <image class="p2 img100 m-t-12" :lazy-load="true" mode="aspectFit"
- src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/52/52deec39e6ff47efb4855cda8766f29e%E8%B7%AF%E5%BE%84%204@2x.png">
- </image>
- <view class="c-txt-1" style="top: 60rpx;">
- <view class="title">特惠专区</view>
- <view class="flex">
- <view class="desc">查看详情</view>
- <view class="right m-l-5">
- <uni-icons class="icon" type="right" color="#C3B8A0" size="12"></uni-icons>
- </view>
+ </view>
+ </view>
+ </view>
+ <view class="c" v-if="false">
+ <image class="p2 img100 m-t-12" :lazy-load="true" mode="aspectFit"
+ src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/52/52deec39e6ff47efb4855cda8766f29e%E8%B7%AF%E5%BE%84%204@2x.png">
+ </image>
+ <view class="c-txt-1" style="top: 60rpx;">
+ <view class="title">特惠专区</view>
+ <view class="flex">
+ <view class="desc">查看详情</view>
+ <view class="right m-l-5">
+ <uni-icons class="icon" type="right" color="#C3B8A0" size="12"></uni-icons>
+ </view>
- </view>
- </view>
- </view>
- <view class="flex m-t-12">
- <view class="flex1 c m-r-5">
- <image class="p3 img100" :lazy-load="true" mode="aspectFit"
- src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/87/8787940a92524d7a9805a9184946cfaf%E4%BD%8D%E5%9B%BE@2x%20(5).png">
- </image>
- <view class="c-txt-2">
- <view class="title">品质专区</view>
- <view class="flex">
- <view class="desc">查看详情</view>
- <view class="right m-l-5">
- <uni-icons class="icon" type="right" color="#ffffff" size="9"></uni-icons>
- </view>
+ </view>
+ </view>
+ </view>
+ <view class="flex m-t-12" v-if="false">
+ <view class="flex1 c m-r-5">
+ <image class="p3 img100" :lazy-load="true" mode="aspectFit"
+ src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/87/8787940a92524d7a9805a9184946cfaf%E4%BD%8D%E5%9B%BE@2x%20(5).png">
+ </image>
+ <view class="c-txt-2">
+ <view class="title">品质专区</view>
+ <view class="flex">
+ <view class="desc">查看详情</view>
+ <view class="right m-l-5">
+ <uni-icons class="icon" type="right" color="#ffffff" size="9"></uni-icons>
+ </view>
- </view>
- </view>
- </view>
- <view class="flex1 c m-l-5">
- <image class="p4 img100" :lazy-load="true" mode="aspectFit"
- src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/0e/0eb0917d31e64c849f250b6e0a825b25%E4%BD%8D%E5%9B%BE@2x%20(6).png">
- </image>
- <view class="c-txt-2 red">
- <view class="title">秒杀专区</view>
- <view class="flex">
- <view class="desc">查看详情</view>
- <view class="right m-l-5">
- <uni-icons class="icon" type="right" color="#ffffff" size="9"></uni-icons>
- </view>
+ </view>
+ </view>
+ </view>
+ <view class="flex1 c m-l-5">
+ <image class="p4 img100" :lazy-load="true" mode="aspectFit"
+ src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/0e/0eb0917d31e64c849f250b6e0a825b25%E4%BD%8D%E5%9B%BE@2x%20(6).png">
+ </image>
+ <view class="c-txt-2 red">
+ <view class="title">秒杀专区</view>
+ <view class="flex">
+ <view class="desc">查看详情</view>
+ <view class="right m-l-5">
+ <uni-icons class="icon" type="right" color="#ffffff" size="9"></uni-icons>
+ </view>
- </view>
- </view>
- </view>
- </view>
- </view>
+ </view>
+ </view>
+ </view>
+ </view>
+ </view>
</template>
<script>
- export default {
- data() {
- return {
-
- };
- }
- }
+export default {
+ data() {
+ return {
+ list: [],
+ };
+ },
+ methods: {
+ toDetail(id) {
+ uni.navigateTo({
+ url: `//sub_pages/customer/trade/list?zoneId=${id}`
+ })
+ },
+ },
+ onLoad() {
+ this.$http.request('get', '/api/flower/zone/list', {}).then(res => {
+ this.list = res.data || []
+ })
+ },
+}
</script>
<style lang="scss">
- .home-zones {
- margin-top: 20rpx;
+.home-zones {
+ margin-top: 20rpx;
- .c {
- position: relative;
+ .c {
+ position: relative;
- .c-txt-1 {
- position: absolute;
- left: 38rpx;
- top: 40rpx;
+ .c-txt-1 {
+ position: absolute;
+ left: 38rpx;
+ top: 40rpx;
- .title {
- font-weight: 600;
- font-size: 36rpx;
- color: #FFFFFF;
- line-height: 50rpx;
- margin-bottom: 8rpx;
- }
+ .title {
+ font-weight: 600;
+ font-size: 36rpx;
+ color: #FFFFFF;
+ line-height: 50rpx;
+ margin-bottom: 8rpx;
+ }
- .desc {
- font-weight: 400;
- font-size: 28rpx;
- color: #FFFFFF;
- line-height: 40rpx;
- }
+ .desc {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #FFFFFF;
+ line-height: 40rpx;
+ }
- .right {
- background: #FFFFFF;
- border-radius: 50%;
- width: 28rpx;
- height: 28rpx;
- margin-top: 6rpx;
- position: relative;
+ .right {
+ background: #FFFFFF;
+ border-radius: 50%;
+ width: 28rpx;
+ height: 28rpx;
+ margin-top: 6rpx;
+ position: relative;
- .icon {
- position: absolute;
- top: -10rpx;
- left: 2rpx;
- }
- }
- }
+ .icon {
+ position: absolute;
+ top: -10rpx;
+ left: 2rpx;
+ }
+ }
+ }
- .c-txt-2 {
- position: absolute;
- left: 22rpx;
- top: 50rpx;
+ .c-txt-2 {
+ position: absolute;
+ left: 22rpx;
+ top: 50rpx;
- .title {
- font-weight: 600;
- font-size: 28rpx;
- color: #535FCA;
- line-height: 40rpx;
- margin-bottom: 2rpx;
- }
+ .title {
+ font-weight: 600;
+ font-size: 28rpx;
+ color: #535FCA;
+ line-height: 40rpx;
+ margin-bottom: 2rpx;
+ }
- .desc {
- font-weight: 400;
- font-size: 24rpx;
- color: #535FCA;
- line-height: 34rpx;
- }
+ .desc {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #535FCA;
+ line-height: 34rpx;
+ }
- .right {
- background: #535FCA;
- border-radius: 50%;
- width: 24rpx;
- height: 24rpx;
- margin-top: 6rpx;
- position: relative;
+ .right {
+ background: #535FCA;
+ border-radius: 50%;
+ width: 24rpx;
+ height: 24rpx;
+ margin-top: 6rpx;
+ position: relative;
- .icon {
- position: absolute;
- top: -14rpx;
- left: 4rpx;
- }
- }
- }
+ .icon {
+ position: absolute;
+ top: -14rpx;
+ left: 4rpx;
+ }
+ }
+ }
- .c-txt-2.red {
- .title {
- color: #892E2E;
- }
- .desc {
- color: #892E2E;
- }
- .right{
- background: #892E2E;
- }
- }
- }
+ .c-txt-2.red {
+ .title {
+ color: #892E2E;
+ }
- .p1 {
- width: 100%;
- height: 176rpx;
- }
+ .desc {
+ color: #892E2E;
+ }
- .p2 {
- width: 100%;
- height: 176rpx;
+ .right {
+ background: #892E2E;
+ }
+ }
+ }
- }
+ .p1 {
+ width: 100%;
+ height: 176rpx;
+ }
- .p3 {
- width: 100%;
- height: 176rpx;
- }
+ .p2 {
+ width: 100%;
+ height: 176rpx;
- .p4 {
- width: 100%;
- height: 176rpx;
- }
- }
+ }
+
+ .p3 {
+ width: 100%;
+ height: 176rpx;
+ }
+
+ .p4 {
+ width: 100%;
+ height: 176rpx;
+ }
+}
</style>
\ No newline at end of file
diff --git a/pages/order/order-detail.vue b/pages/order/order-detail.vue
new file mode 100644
index 0000000..7cdb309
--- /dev/null
+++ b/pages/order/order-detail.vue
@@ -0,0 +1,313 @@
+<script>
+export default {
+ data() {
+ return {
+ id: '',
+ dto: {}
+ };
+ },
+ onLoad(options) {
+ this.id = options.id || ''
+ if (this.id) {
+
+ this.getDetail()
+ this.getItemList()
+ }
+ },
+ methods: {
+ copyTxt(txt) {
+ uni.setClipboardData({
+ data: txt,//要被复制的内容
+ success: () => {//复制成功的回调函数
+ uni.showToast({//提示
+ title: '复制成功'
+ })
+ }
+ })
+ },
+ async getDetail() {
+ this.$message.showLoading()
+ const {code, data} = this.$http.request('get', '/api/customer/order/list/view', {
+ params: {
+ id: this.id
+ }
+ })
+ this.$message.hideLoading()
+ if (code === 0 && data) {
+ this.dto = {
+ ...this.dto,
+ ...data
+ }
+ }
+ },
+ async getItemList() {
+ this.$message.showLoading()
+ const {code, data} = this.$http.request('get', '/api/customer/order/item/list', {
+ params: {
+ id: this.id
+ }
+ })
+ this.$message.hideLoading()
+ if (code === 0 && data) {
+ this.list = data || []
+ }
+ },
+ buttonClick(buttontype) {
+
+ }
+ },
+}
+</script>
+
+<template>
+ <view class="order-detail-page">
+ <view class="top-tip flex m-b-20">
+ <image src="//static/common/icon-order-status-SEND.png" class="icon-car m-r-6 img100"></image>
+ <view>
+ <view>{{
+ dto.status === 'SEND' && '商家已发货,正在通知顺丰小件取货'
+ || dto.status === 'PENDING' && '订单还未支付,立即去支付'
+ || dto.status === 'RECEIVE' && '待签收'
+ || ('订单' + dto.statusStr)
+ }}
+ </view>
+ <!-- <view>{{dto.paymentTime}}</view>-->
+ </view>
+ </view>
+ <view class="m-b-20 address-container">
+ <view class="flex">
+ <view class="icon-loc">
+ <image src="/static/common/icon-loc.png" class="image"></image>
+ </view>
+ <view class="info">
+ <view class="title">
+ {{ dto.customer }}
+ <view class="tel">{{ dto.customerTel }}</view>
+ </view>
+ <view class="content">{{ dto.customerAddress }}</view>
+ </view>
+ </view>
+ </view>
+ <view class="flower-info m-b-20" v-for="(item,index) of list" :key="index">
+
+ </view>
+ <view class="info-container">
+ <view class="form-item">
+ <view class="label">订单编号:</view>
+ <view class="value">{{ dto.orderNo || '-' }}</view>
+ <view class="button m-l-a m-r-0" @click="copyTxt(dto.orderNo)">复制</view>
+ </view>
+ <view class="form-item">
+ <view class="label">下单日期:</view>
+ <view class="value">{{ dto.paymentTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.cancelTime&&(dto.status==='CANCEL')">
+ <view class="label">取消时间:</view>
+ <view class="value">{{ dto.cancelTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.evaluateTime&&(dto.status==='COMPLETED')">
+ <view class="label">评价时间:</view>
+ <view class="value">{{ dto.evaluateTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="(dto.status==='REFUND')">
+ <view class="label">退款金额:</view>
+ <view class="value">{{ dto.refundAmount || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.refundNo&&(dto.status==='REFUND')">
+ <view class="label">退款单号:</view>
+ <view class="value">{{ dto.refundNo || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.refundTime&&(dto.status==='REFUND')">
+ <view class="label">退款时间:</view>
+ <view class="value">{{ dto.refundTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.receiveTime&&(dto.status==='EVALUATE')">
+ <view class="label">收货时间:</view>
+ <view class="value">{{ dto.receiveTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.completeTime&&(dto.status==='COMPLETED')">
+ <view class="label">完成时间:</view>
+ <view class="value">{{ dto.completeTime || '-' }}</view>
+ </view>
+ <view class="form-item" v-if="dto.transferTime&&(dto.status==='REFUND')">
+ <view class="label">转账时间:</view>
+ <view class="value">{{ dto.transferTime || '-' }}</view>
+ </view>
+ <view class="line">
+ </view>
+ <view class="form-item">
+ <view class="label">特殊需求:</view>
+ <view class="value">{{ dto.specialNeeds || '-' }}</view>
+ </view>
+ <view class="form-item">
+ <view class="label">买家留言:</view>
+ <view class="value">{{ dto.remarks || '-' }}</view>
+ </view>
+ </view>
+ <view class="info-container">
+ <view class="form-item">
+ <view class="label">订单金额:</view>
+ <view class="value">{{ dto.totalAmount || '-' }}</view>
+ </view>
+ <view class="form-item">
+ <view class="label">支付金额:</view>
+ <view class="value">{{ dto.paymentAmount || '-' }}</view>
+ </view>
+ <view class="form-item">
+ <view class="label">商品金额:</view>
+ <view class="value">{{ dto.flowerAmount || '-' }}</view>
+ </view>
+ <view class="form-item">
+ <view class="label">运费:</view>
+ <view class="value">{{ dto.transportFee || '-' }}</view>
+ </view>
+
+ </view>
+
+ <view class="info-container">
+ <view>
+ <image src="/static/common/icon-kf.png" class="icon-kf m-l-15 img100"></image>
+ 我的客服
+ </view>
+ <view class="flex">
+ <view class="flex1 w-fit m-auto">
+ <image src="/static/common/icon-call.png" class="icon-call img100"></image>
+ 15974805814
+ </view>
+ <view class="flex1 w-fit m-auto">
+ <image src="/static/common/icon-wx.png" class="icon-call img100"></image>
+ 在线客服
+ </view>
+
+ </view>
+ </view>
+ <view class="button-space"></view>
+ <view class="buttons-bottom">
+ <view class="button button-1" @click="buttonClick('refund')">申请退款</view>
+ </view>
+ </view>
+</template>
+
+<style lang="scss" scoped>
+.order-detail-page {
+ background: #F7F7F7;
+ padding: 30rpx;
+
+ .info-container {
+ .button-space {
+ min-height: 140rpx;
+ }
+
+ .icon-kf {
+ width: 44rpx;
+ height: 44rpx;
+ }
+
+ .icon-call {
+ width: 32rpx;
+ height: 32rpx;
+ }
+
+ .buttons-bottom {
+ position: fixed;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ height: 120rpx;
+
+ .button {
+ border-radius: 42rpx;
+ border: 2rpx solid #CECECE;
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #999999;
+ text-align: center;
+ line-height: 76rpx;
+ }
+
+ .button-1 {
+
+ }
+ }
+ }
+
+ .info-container {
+ padding: 28rpx;
+
+ .form-item {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #666666;
+ line-height: 40rpx;
+ display: flex;
+
+ .label {
+ min-height: 140rpx;
+ }
+
+ .value {
+
+ }
+ }
+
+ .line {
+ height: 2rpx solid #EEEEEE;
+ }
+ }
+
+ .top-tip {
+ .icon-car {
+ width: 52rpx;
+ height: 52rpx;
+ }
+ }
+
+ .address-container {
+ padding: 28rpx;
+
+ .icon-loc {
+ width: 48rpx;
+ height: 48rpx;
+ background: #20613D;
+ border-radius: 50%;
+
+ .image {
+ margin-top: 8rpx;
+ margin-left: 8rpx;
+ width: 32rpx;
+ height: 32rpx;
+ }
+ }
+
+ .info {
+ .title {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #000000;
+ line-height: 44rpx;
+
+ .tel {
+ display: inline-block;
+ margin-left: 20rpx;
+ }
+ }
+
+ .content {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #000000;
+ line-height: 40rpx;
+ }
+
+ }
+ }
+
+ .flower-info {
+ padding: 28rpx;
+
+ background: #FFFFFF;
+ border-radius: 8rpx;
+ }
+
+}
+</style>
diff --git a/pages/order/order.vue b/pages/order/order.vue
new file mode 100644
index 0000000..2c4d1a8
--- /dev/null
+++ b/pages/order/order.vue
@@ -0,0 +1,203 @@
+<script>
+export default {
+ data() {
+ return {
+ type: 'customer',
+ query: {
+ status: '',
+ },
+ status: [
+ {name: '全部', value: ''},
+ {name: '待付款', value: 'PENDING'},
+ {name: '待发货', value: 'SEND'},
+ {name: '待收货', value: 'RECEIVE'},
+ {name: '待评价', value: 'EVALUATE'},
+ {name: '售后', value: 'COMPLETED'},
+ {name: '已退款', value: 'REFUND'},
+ ]
+ };
+ },
+ onLoad(options) {
+ this.query.status = options.status || ''
+ this.listApi = `/api/customer/list`
+ this.getList()
+ },
+ onReachBottom() {
+ this.page.current += 1
+ this.getMore()
+ },
+ async onPullDownRefresh() {
+ this.page.current = 1
+ await this.getList()
+ uni.stopPullDownRefresh()
+ },
+ methods: {
+ toDetail(item) {
+ // 订单详情页面
+ uni.navigateTo({
+ url: 'pages/order/order-detail?id=' + item.id
+ })
+ },
+ },
+}
+</script>
+<template>
+ <view class="order-container">
+ <view class="order-top">
+ <view class="title">订单信息</view>
+ <view class="flex">
+ <image class="image img100"
+ src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/67/67acf980f310460a97d305c6ffc7e811位图@2x (1).png"></image>
+ <view>消费订单:¥<span>{{ '0' }}</span> 总消费:¥<span>{{ '0' }}</span></view>
+ </view>
+ </view>
+ <view class="status-list m-t-12 flex">
+ <view v-for="each of status" :key="each.value" class="status-each" :class="[query.status===each.value?'cur':'']">
+ {{ each.name }}
+ </view>
+ </view>
+ <no-data v-if="!list||list.length==0" style="width: 100%;" class="m-t-12"></no-data>
+ <view v-for="(item,index) in list" :key="index" class="m-t-12">
+ <view @click.stop="toDetail(item)" class="order-item list-item">
+ <view class="title flex">
+ <view>
+ 订单:{{ item.orderNo }}
+ </view>
+ <view class="status t-red m-l-a m-r-0">¥{{ item.paymentAmount || item.totalAmount || '0'}}</view>
+ </view>
+ <view class="desc flex" v-if="!query.status">
+ <view class="label">
+ 订单状态:
+ </view>
+ <view class="value">{{ item.statusBackendStr }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货人:
+ </view>
+ <view class="value">{{ item.customer }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货人手机号码:
+ </view>
+ <view class="value">{{ item.customerTel }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货地址:
+ </view>
+ <view class="value">{{ item.customerAddress }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 支付时间:
+ </view>
+ <view class="value">{{ item.paymentTime }}</view>
+ </view>
+ </view>
+
+ </view>
+
+ </view>
+</template>
+
+<style lang="scss" scoped>
+.order-container {
+ padding: 24rpx 30rpx;
+ .order-item {
+ margin-bottom: 20rpx;
+ padding: 28rpx;
+
+ .title {
+ font-weight: 600;
+ font-size: 28rpx;
+ color: #000000;
+ line-height: 40rpx;
+ .status {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #20613D;
+ line-height: 40rpx;
+ }
+ }
+ .desc{
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ }
+
+
+ .line {
+ height: 2rpx solid #EEEEEE;
+ margin-top: 16rpx;
+ margin-bottom: 16rpx;
+ }
+
+
+ }
+
+ .status-list {
+ overflow-x: scroll;
+
+ .status-each {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #666666;
+ line-height: 40rpx;
+ margin: 0 auto;
+ //min-width: ;
+ padding-left: 20rpx;
+ padding-right: 20rpx;
+ width: fit-content;
+ text-align: center;
+ }
+
+ .status-each.cur {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #20613D;
+ line-height: 44rpx;
+ }
+
+ .status-each:first-child {
+ margin-left: 0
+ }
+
+ .status-each:last-child {
+ margin-right: 0;
+ }
+ }
+
+ .order-top {
+ position: relative;
+ min-height: 182rpx;
+ background: #E1F0E7;
+ border-radius: 8rpx;
+ padding: 45rpx 35rpx;
+
+ .title {
+ font-weight: 600;
+ font-size: 30rpx;
+ color: #000000;
+ line-height: 42rpx;
+ }
+
+ .desc {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ }
+
+ .image {
+ position: absolute;
+ right: 0rpx;
+ width: 288rpx;
+ height: 148rpx;
+ bottom: 0rpx;
+ }
+ }
+}
+</style>
diff --git a/pages/user/supplier-user.vue b/pages/user/supplier-user.vue
index 24e8762..71bfb39 100644
--- a/pages/user/supplier-user.vue
+++ b/pages/user/supplier-user.vue
@@ -164,15 +164,15 @@
<uni-icons type="right"></uni-icons>
</view>
</view>
- <view class="user-util m-t-12 " @click="callTel"
+ <view class="user-util m-t-12 "
v-if="selftype==='supplier'||selftype==='customer' || !selftype">
<view class="title">我的客服</view>
<view class="flex">
<image class="icon-clock m-r-6 m-t-2" src="../../static/common/icon-call.png"></image>
- <view class="name">
+ <view class="name" @click="callTel">
客服电话 : <span class="topic-gray">{{ tel }}</span>
</view>
- <view class="right-icon" @click="goto('/pages/help/help',false)">
+ <view class="right-icon" open-type="contact">
<uni-icons type="right"></uni-icons>
</view>
</view>
diff --git a/static/common/icon-call.png b/static/common/icon-call.png
index 3bc2b41..2f7f376 100644
--- a/static/common/icon-call.png
+++ b/static/common/icon-call.png
Binary files differ
diff --git a/static/common/icon-car.png b/static/common/icon-car.png
new file mode 100644
index 0000000..612ffe4
--- /dev/null
+++ b/static/common/icon-car.png
Binary files differ
diff --git a/static/common/icon-order-status-SEND.png b/static/common/icon-order-status-SEND.png
new file mode 100644
index 0000000..83ee2fa
--- /dev/null
+++ b/static/common/icon-order-status-SEND.png
Binary files differ
diff --git a/static/common/icon-wx.png b/static/common/icon-wx.png
new file mode 100644
index 0000000..bfe5a0c
--- /dev/null
+++ b/static/common/icon-wx.png
Binary files differ
diff --git a/sub_pages/customer/self/collect.vue b/sub_pages/customer/self/collect.vue
index 90f7b0c..f3350c1 100644
--- a/sub_pages/customer/self/collect.vue
+++ b/sub_pages/customer/self/collect.vue
@@ -10,14 +10,14 @@
</view>
</view>
<view class="component-filter-container">
- <view class="flex1">
- 排序
+ <view class="flex1" @click.stop="order_show=true">
+ {{ this.query.columnStr || '排序' }}
<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
</view>
- <view class="flex1">
+ <view class="flex1" @click.stop="level_show=true">
{{ this.query.levelStr || '级别' }}
<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"
- @click="level_show=true"></image>
+ ></image>
</view>
</view>
@@ -29,19 +29,19 @@
<view class="trade-list-container">
<view class="trade-info-container" v-for="(dto,index) of list" :key="index">
<view class="title">
- <view class="level m-r-15">{{dto.levelStr || '-'}}级</view>
+ <view class="level m-r-15">{{ dto.levelStr || '-' }}级</view>
<view class="">
- {{dto.name || '-'}}
+ {{ dto.name || '-' }}
</view>
</view>
<view class="desc m-t-12">
- <view class="m-r-15">已售:{{ dto.sales || 0}}</view>
- <view class="m-r-15">剩余:{{dto.stock || 0}}</view>
- <view class=" ">{{dto.unit||'-'}}支/扎</view>
+ <view class="m-r-15">已售:{{ dto.sales || 0 }}</view>
+ <view class="m-r-15">剩余:{{ dto.stock || 0 }}</view>
+ <view class=" ">{{ dto.unit || '-' }}支/扎</view>
</view>
<view class="flex m-t-12">
<view class="price m-r-a">
- <span class="num">{{dto.price||'-'}}</span>
+ <span class="num">{{ dto.price || '-' }}</span>
元/扎
</view>
<view class="m-l-a m-r-15">
@@ -70,14 +70,14 @@
name: '',
levelStr: '',
level: '',
- column:'',
- columnStr:'',
+ column: '',
+ columnStr: '',
},
level_show: false,
level_columns: [[]],
- order_show:false,
- order_columns:[[]]
+ order_show: false,
+ order_columns: [[]]
}
},
onLoad() {
@@ -115,11 +115,15 @@
this.level_show = false
this.query.levelStr = e.value[0].label
this.query.level = e.value[0].value
+ this.refreshList()
+
},
select_order(e) {
this.order_show = false
this.query.columnStr = e.value[0].label
this.query.column = e.value[0].value
+ this.refreshList()
+
},
}
}
diff --git a/sub_pages/customer/trade/list.vue b/sub_pages/customer/trade/list.vue
index 21f5466..3f7e9f7 100644
--- a/sub_pages/customer/trade/list.vue
+++ b/sub_pages/customer/trade/list.vue
@@ -1,268 +1,393 @@
<template>
- <!-- 列表页面 -->
- <view class="trade-list">
- <view class="category-detail flex">
- <view class="flex1 info">
- <view class="title flex">
- <view>牛油果泡泡</view>
- <view>
- <image src="../../../static/common/icon-kf.png" class="icon-kf m-l-15 img100"></image>
-
- </view>
- </view>
- <view class="desc">
- 规格:10支/扎
- </view>
- <view class="desc">
- 估重:1.3kg/扎
- </view>
- <view class="desc">
- 包袋:棉袋
- </view>
- </view>
- <view class="info-price">
- <view class="title">当日均价</view>
- <view class="price">19.66</view>
- <view class="flex desc">
- <view class="m-l-a m-r-5">+0.76</view>
- <view class="m-r-a m-l-5">+4.02%</view>
- </view>
- </view>
- </view>
- <view class="" style="min-height: calc(100vh - 260rpx);">
- <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
- <view v-else>
- <!-- 查询条件 -->
- <view class="component-filter-container">
- <view class="flex1">
- 等级<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
- </view>
- <view class="flex1">
- 等级<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
- </view>
- <view class="flex1">
- 好卖家<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
- </view>
- <view class="flex1">
- 颜色<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
- </view>
- <view class="flex1">
- 筛选<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
- </view>
- </view>
- </view>
- <view class="component-shop-item flex" v-for="(item,index) of list" :key="index"
- @click="toDetail(item)">
- <view class="img">
- <image class="img img100"
- src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/ff/fff3027bd0a146478fd1f0aae816a028%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20240710224139.png">
- </image>
- <view class="level">
- A级
- </view>
- </view>
+ <!-- 列表页面 -->
+ <view class="trade-list">
+ <view class="category-detail flex">
+ <view class="flex1 info">
+ <view class="title flex">
+ <view>牛油果泡泡</view>
+ <view>
+ <image src="../../../static/common/icon-kf.png" class="icon-kf m-l-15 img100"></image>
- <view class="m-l-12 info-container flex1">
- <view class="title">
- 橙色芭比
- <view class="price">
- ¥6.60/扎
- </view>
- </view>
- <view class="shop-name">
- 牛油果泡泡·白色
- </view>
- <view class="other-info flex">
- <view class="m-r-15">
- 已售:7
- </view>
- <view class="m-r-15">
- 剩余:13
- </view>
- <view class="m-r-15">
- 1支/扎
- </view>
- </view>
- <view class="bottom-buttons flex">
+ </view>
+ </view>
+ <view class="desc">
+ 规格:10支/扎
+ </view>
+ <view class="desc">
+ 估重:1.3kg/扎
+ </view>
+ <view class="desc">
+ 包袋:棉袋
+ </view>
+ </view>
+ <view class="info-price">
+ <view class="title">当日均价</view>
+ <view class="price">19.66</view>
+ <view class="flex desc">
+ <view class="m-l-a m-r-5">+0.76</view>
+ <view class="m-r-a m-l-5">+4.02%</view>
+ </view>
+ </view>
+ </view>
+ <view class="" style="min-height: calc(100vh - 260rpx);">
+ <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
+ <view v-else>
+ <!-- 查询条件 -->
+ <view class="component-filter-container">
+ <view class="flex1" @click.stop="order_show=true">
+ {{ this.query.columnStr || '排序' }}
+ <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
+ </view>
+ <view class="flex1" @click.stop="level_show=true">
+ {{ this.query.levelStr || '级别' }}
+ <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"
+ ></image>
+ </view>
- <view class="icons flex">
- <uni-icons v-if="item.shopnum&&item.shopnum>=1" type="minus" size="32"
- @click.stop="mulnum(item)"></uni-icons>
- <view class="curnums" v-if="item.shopnum&&item.shopnum>=1">{{item.shopnum}}</view>
- <uni-icons v-if="!item.shopnum||item.shopnum<=99" type="plus-filled" size="32"
- @click.stop="addnum(item)"></uni-icons>
- </view>
- </view>
- </view>
- </view>
+ <!-- <view class="flex1">-->
+ <!-- 好卖家<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>-->
+ <!-- </view>-->
+ <!-- <view class="flex1">-->
+ <!-- 颜色<image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>-->
+ <!-- </view>-->
+ <view class="flex1" @click="showSelectParams" v-if="query.category">
+ 筛选
+ <image src="../../../static/common/icon-arrow-down.png" class="icon-arrow-down"></image>
+ </view>
+ </view>
+ </view>
+
+ <view class="component-shop-item flex" v-for="(item,index) of list" :key="index"
+ @click="toDetail(item)">
+ <view class="img">
+ <image class="img img100"
+ src="https://hmy-flower.oss-cn-shanghai.aliyuncs.com/ff/fff3027bd0a146478fd1f0aae816a028%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20240710224139.png">
+ </image>
+ <view class="level">
+ A级
+ </view>
+ </view>
+
+ <view class="m-l-12 info-container flex1">
+ <view class="title">
+ 橙色芭比
+ <view class="price">
+ ¥6.60/扎
+ </view>
+ </view>
+ <view class="shop-name">
+ 牛油果泡泡·白色
+ </view>
+ <view class="other-info flex">
+ <view class="m-r-15">
+ 已售:7
+ </view>
+ <view class="m-r-15">
+ 剩余:13
+ </view>
+ <view class="m-r-15">
+ 1支/扎
+ </view>
+ </view>
+ <view class="bottom-buttons flex">
+
+ <view class="icons flex">
+ <uni-icons v-if="item.shopnum&&item.shopnum>=1" type="minus" size="32"
+ @click.stop="mulnum(item)"></uni-icons>
+ <view class="curnums" v-if="item.shopnum&&item.shopnum>=1">{{ item.shopnum }}</view>
+ <uni-icons v-if="!item.shopnum||item.shopnum<=99" type="plus-filled" size="32"
+ @click.stop="addnum(item)"></uni-icons>
+ </view>
+ </view>
+ </view>
+ </view>
- <view class="icon-shop" v-if="list&&list.length>0">
- <!-- 购物图标 -->
- <!-- 如果有购买的东西,就要附带数字了 -->
- <view v-if="shoptotal>0" class="number">
- {{shoptotal}}
- </view>
- </view>
- </view>
+ <view class="icon-shop" v-if="list&&list.length>0">
+ <!-- 购物图标 -->
+ <!-- 如果有购买的东西,就要附带数字了 -->
+ <view v-if="shoptotal>0" class="number">
+ {{ shoptotal }}
+ </view>
+ </view>
+ </view>
- <!-- 判断是否到底了,自动吧 -->
- <footer-msg :more="page.total>0&&page.total>page.current*page.size"></footer-msg>
-
-
-
- </view>
+ <!-- 判断是否到底了,自动吧 -->
+ <footer-msg :more="page.total>0&&page.total>page.current*page.size"></footer-msg>
+
+
+ <u-picker :show="level_show" @confirm="select_level" keyName="label" :columns="level_columns"
+ @cancel="level_show=false"></u-picker>
+ <u-picker :show="order_show" @confirm="select_order" keyName="label" :columns="order_columns"
+ @cancel="order_show=false"></u-picker>
+
+ <uni-popup ref="popup_param" type="bottom">
+ <view class="component-popup_input_all" v-if="params">
+ <view class="text-center m-b-40" style="font-size: 48rpx;font-weight: 600;">商品参数设置</view>
+ <!-- 输入框-->
+ <view v-for="(item,i) in params" :key="i" class="m-t-20">
+ <view class="title topic-font" style="font-size: 40rpx;font-weight: 600;">{{ item.name }}</view>
+ <view class="m-t-12 flex value-items">
+ <view class="value-item" @click="updateValue(item,each)" :class="[item.value===each?'cur':'']"
+ v-for="(each, j) in item.values" :key="j">
+ {{ each || '-' }}
+ </view>
+ </view>
+ </view>
+ <view class="button-space"></view>
+ <view class="button-space"></view>
+ <view class="button-green" style="background-color: #fff;bottom: 160rpx;color: #000"
+ @click="closeParamPopAndQuery">
+ 查询
+ </view>
+
+ <view class="button-green" @click="closeParamPop">关闭</view>
+ </view>
+ </uni-popup>
+
+ </view>
</template>
<script>
- export default {
- data() {
- return {
- query: {
- category: '',
- },
- shoptotal:0,
- list:[{},{},{}]
- }
- },
- async onLoad(options) {
- // this.list = [{},{}]
- console.log('options', options)
- this.query.category = options.categoryId || ''
- this.listApi = '/api/customer/flower/list'
- this.getList()
+export default {
+ data() {
+ return {
+ query: {
+ category: '',
+ zoneId: '',
+ levelStr: '',
+ level: '',
+ column: '',
+ params: [],
+ columnStr: '',
+ },
+ params: [],
- // await this.getList('post')
- // this.
- },
- onReachBottom() {
- this.page.current += 1
- this.getMore('post')
- },
- async onPullDownRefresh() {
- this.page.current = 1
- await this.getList('post')
- uni.stopPullDownRefresh()
- },
- methods: {
- toDetail(item) {
- uni.navigateTo({
- url: `/sub_pages/customer/trade/detail?id=${item.id}`
- })
- },
- mulnum(item) {
- if (item.shopnum > 0) {
- item.shopnum -= 1
- }
- this.shoptotal -= 1
- this.$forceUpdate()
-
- },
- addnum(item) {
- if (item.shopnum) {
- item.shopnum += 1
- } else {
- item.shopnum = 1
- }
- this.shoptotal += 1
- this.$forceUpdate()
- },
- }
- }
+ shoptotal: 0,
+ list: [],
+ level_show: false,
+ level_columns: [[]],
+
+ order_show: false,
+ order_columns: [[]]
+ }
+ },
+ async onLoad(options) {
+ // this.list = [{},{}]
+ console.log('options', options)
+ this.query.category = options.categoryId || ''
+ this.query.zoneId = options.zoneId || ''
+ this.listApi = '/api/customer/flower/list'
+ this.getList()
+ this.$http.request('get', '/api/code/value', {
+ params: {
+ type: 'FLOWER_LEVEL'
+ }
+ }).then(res => {
+ var data = res.data
+ this.level_columns = [data || []]
+ this.columns_levels[0].unshift({
+ label: '全部',
+ value: ''
+ })
+ })
+ this.$http.request('get', '/api/code/value', {
+ params: {
+ type: 'FLOWER_ORDER_BY'
+ }
+ }).then(res => {
+ var data = res.data
+ this.order_columns = [data || []]
+ this.order_columns[0].unshift({
+ label: '默认',
+ value: ''
+ })
+ })
+
+ // await this.getList('post')
+ // this.
+ },
+ onReachBottom() {
+ this.page.current += 1
+ this.getMore('post')
+ },
+ async onPullDownRefresh() {
+ this.page.current = 1
+ await this.getList('post')
+ uni.stopPullDownRefresh()
+ },
+ methods: {
+ updateValue(item, value) {
+ item.value = value
+ this.$set(item, 'value', value)
+ this.$forceUpdate()
+ },
+ closeParamPop() {
+ this.$refs.popup_param.close()
+ },
+ closeParamPopAndQuery() {
+ this.$refs.popup_param.close()
+ //设置参数
+ this.dto.params = []
+ for (var params of this.params) {
+ if (params.value) {
+ this.dto.params.push({
+ id: params.id,
+ value: params.value
+ })
+ }
+ }
+ this.refreshList('post')
+ },
+ async showSelectParams() {
+ //得有分类才有参数
+ this.$message.showLoading()
+ const res = await this.$http.request('get', '/api/supplier/flower/params', {
+ params: {
+ categoryId: this.dto.category
+ }
+ })
+ this.$message.hideLoading()
+ if (res.code === 0) {
+ // this.columns_params = res.data || []
+ this.dto.params = res.data || []
+ this.$refs.popup_param.open()
+ }
+
+ },
+ select_level(e) {
+ this.level_show = false
+ this.query.levelStr = e.value[0].label
+ this.query.level = e.value[0].value
+ this.refreshList('post')
+
+ },
+ select_order(e) {
+ this.order_show = false
+ this.query.columnStr = e.value[0].label
+ this.query.column = e.value[0].value
+ this.refreshList('post')
+
+ },
+ toDetail(item) {
+ uni.navigateTo({
+ url: `/sub_pages/customer/trade/detail?id=${item.id}`
+ })
+ },
+ mulnum(item) {
+ if (item.shopnum > 0) {
+ item.shopnum -= 1
+ }
+ this.shoptotal -= 1
+ this.$forceUpdate()
+
+ },
+ addnum(item) {
+ if (item.shopnum) {
+ item.shopnum += 1
+ } else {
+ item.shopnum = 1
+ }
+ this.shoptotal += 1
+ this.$forceUpdate()
+ },
+ }
+}
</script>
<style lang="scss">
- .trade-list {
- padding: 24rpx 30rpx;
+.trade-list {
+ padding: 24rpx 30rpx;
- .category-detail {
- padding: 22rpx 38rpx;
- margin-bottom: 10rpx;
- background-color: #E1F0E7;
- border-radius: 8rpx;
+ .category-detail {
+ padding: 22rpx 38rpx;
+ margin-bottom: 10rpx;
+ background-color: #E1F0E7;
+ border-radius: 8rpx;
- .info {
- .title {
- font-weight: 600;
- font-size: 36rpx;
- color: #000000;
- line-height: 50rpx;
- }
+ .info {
+ .title {
+ font-weight: 600;
+ font-size: 36rpx;
+ color: #000000;
+ line-height: 50rpx;
+ }
- .icon-kf {
- width: 44rpx;
- height: 44rpx;
- }
+ .icon-kf {
+ width: 44rpx;
+ height: 44rpx;
+ }
- .desc {
- font-weight: 400;
- font-size: 24rpx;
- color: #666666;
- line-height: 34rpx;
- margin-top: 8rpx;
- }
- }
+ .desc {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ margin-top: 8rpx;
+ }
+ }
- .info-price {
- padding: 22rpx;
- text-align: center;
- background: #FFFFFF;
- border-radius: 8rpx;
- min-width: 260rpx;
- .title {
- font-weight: 400;
- font-size: 24rpx;
- color: #000000;
- line-height: 34rpx;
- }
+ .info-price {
+ padding: 22rpx;
+ text-align: center;
+ background: #FFFFFF;
+ border-radius: 8rpx;
+ min-width: 260rpx;
- .price {
- font-weight: 600;
- font-size: 32rpx;
- color: #BF0000;
- line-height: 44rpx;
- margin-top: 12rpx;
- }
+ .title {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #000000;
+ line-height: 34rpx;
+ }
- .desc {
- font-weight: 400;
- font-size: 24rpx;
- color: #666666;
- line-height: 34rpx;
- margin-top: 12rpx;
- }
- }
- }
+ .price {
+ font-weight: 600;
+ font-size: 32rpx;
+ color: #BF0000;
+ line-height: 44rpx;
+ margin-top: 12rpx;
+ }
+
+ .desc {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ margin-top: 12rpx;
+ }
+ }
+ }
- .icon-shop {
- position: absolute;
- position: fixed;
-
- background-image: url('../../../static/images/customer/gwc.png');
- width: 140rpx;
- height: 140rpx;
- // box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.16);
- border-radius: 50%;
- right: 40rpx;
- bottom: 300rpx;
- background-size: 100% 100%;
-
- .number {
- width: 30rpx;
- height: 30rpx;
- background: #F20000;
- line-height: 30rpx;
- text-align: center;
- position: absolute;
- right: 14rpx;
- top: 14rpx;
- color: #FFFFFF;
- border-radius: 50%;
- font-size: 24rpx;
- }
-
- }
-
- }
+ .icon-shop {
+ position: absolute;
+ position: fixed;
+
+ background-image: url('../../../static/images/customer/gwc.png');
+ width: 140rpx;
+ height: 140rpx;
+ // box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.16);
+ border-radius: 50%;
+ right: 40rpx;
+ bottom: 300rpx;
+ background-size: 100% 100%;
+
+ .number {
+ width: 30rpx;
+ height: 30rpx;
+ background: #F20000;
+ line-height: 30rpx;
+ text-align: center;
+ position: absolute;
+ right: 14rpx;
+ top: 14rpx;
+ color: #FFFFFF;
+ border-radius: 50%;
+ font-size: 24rpx;
+ }
+
+ }
+
+}
</style>
\ No newline at end of file
diff --git a/sub_pages/partner/markup-config/markup-config.vue b/sub_pages/partner/markup-config/markup-config.vue
index d555732..897344f 100644
--- a/sub_pages/partner/markup-config/markup-config.vue
+++ b/sub_pages/partner/markup-config/markup-config.vue
@@ -13,11 +13,18 @@
<view v-for="(item,index) in list" :key="index" class="m-b-24 markup-config-list list-container">
<view class="markup-config-item list-item">
<view class="title">
- 商品分类:{{item.name || '-'}}
-
+ 商品名称:{{item.name || '-'}}
</view>
<u-divider></u-divider>
<view class="form">
+ <view class="form-item">
+ <view class="form-item-label">分类</view>
+ <view class="form-item-value">{{item.categoryStr || '-'}}</view>
+ </view>
+ <view class="form-item">
+ <view class="form-item-label">规格</view>
+ <view class="form-item-value">{{item.unit || '-'}}</view>
+ </view>
<view class="form-item">
<view class="form-item-label">规格</view>
<view class="form-item-value">{{item.unit || '-'}}</view>
@@ -31,36 +38,24 @@
<view class="form-item-value">{{item.color || '-'}}</view>
</view>
<view class="form-item">
- <view class="form-item-label">等级A</view>
- <view class="form-item-value">{{item.levelA || '-'}}</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级A</view>
- <view class="form-item-value">{{item.levelA || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级A</view>
- <view class="form-item-value">{{item.levelA || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级B</view>
- <view class="form-item-value">{{item.levelB || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级C</view>
- <view class="form-item-value">{{item.levelC || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级D</view>
- <view class="form-item-value">{{item.levelD || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级E</view>
- <view class="form-item-value">{{item.levelE || '-'}}元</view>
- </view>
- <view class="form-item">
- <view class="form-item-label">等级O</view>
- <view class="form-item-value">{{item.levelO || '-'}}元</view>
+ <view class="form-item-label">级别</view>
+ <view class="form-item-value">{{item.levelStr || '-'}}</view>
+ </view>
+ <view class="form-item">
+ <view class="form-item-label">供应商价格</view>
+ <view class="form-item-value">¥{{item.price || '-'}}</view>
+ </view>
+ <view class="form-item">
+ <view class="form-item-label">加价金额</view>
+ <view class="form-item-value">{{item.fee || '-'}}</view>
+ </view>
+ <view class="form-item">
+ <view class="form-item-label">审核时间</view>
+ <view class="form-item-value">{{item.auditTime || '-'}}</view>
+ </view>
+ <view class="form-item">
+ <view class="form-item-label">供应商名称</view>
+ <view class="form-item-value">{{item.supplierName || '-'}}</view>
</view>
</view>
</view>
@@ -84,7 +79,7 @@
}
},
onLoad() {
- this.listApi = ''
+ this.listApi = '/api/flower/markup/sp/list'
this.getList()
},
diff --git a/sub_pages/partner/order-manage/order-manage.vue b/sub_pages/partner/order-manage/order-manage.vue
index 24fa78c..66ea822 100644
--- a/sub_pages/partner/order-manage/order-manage.vue
+++ b/sub_pages/partner/order-manage/order-manage.vue
@@ -1,156 +1,202 @@
<template>
- <view class="list-container order-settlement supplier">
- <view class="component-tab-container m-t-12">
- <view class="tab-item" :class="[tabIndex==0?'cur':'']" @click="changeIndex(0)">待配送</view>
- <view class="tab-item" :class="[tabIndex==1?'cur':'']" @click="changeIndex(1)">已配送</view>
- </view>
-
- <view class="p15" style="min-height: calc(100vh - 160rpx);">
- <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
- <view v-for="(item,index) in list" :key="index" class="m-b-24 order-settlement-list list-container">
- <view class="order-settlement-item list-item">
- <view class="title flex">
- <view>
- 订单:27799880327543
- </view>
- <view class="status m-l-a m-r-0">已结算</view>
- </view>
- <view class="button-green-1">确认配送完成</view>
- </view>
- </view>
- </view>
+ <view class="list-container order-settlement supplier">
+ <view class="component-tab-container m-t-12">
+ <view class="tab-item" :class="[tabIndex===0?'cur':'']" @click="changeIndex(0)">全部</view>
+ <view class="tab-item" :class="[tabIndex===1?'cur':'']" @click="changeIndex(1)">待配送</view>
+ <view class="tab-item" :class="[tabIndex===2?'cur':'']" @click="changeIndex(2)">待收货</view>
- <!-- 判断是否到底了,自动吧 -->
- <footer-msg :more="page.total>0&&page.total>page.current*page.size"></footer-msg>
+ </view>
- </view>
+ <view class="p15" style="min-height: calc(100vh - 160rpx);">
+ <no-data v-if="!list||list.length==0" style="width: 100%;"></no-data>
+ <view v-for="(item,index) in list" :key="index" class="m-b-24 order-settlement-list list-container"
+ @click.stop="toDetail(item)">
+ <view class="order-settlement-item list-item">
+ <view class="title flex">
+ <view>
+ 订单:{{ item.orderNo }}
+ </view>
+ <view class="status t-red m-l-a m-r-0">{{ item.paymentAmount }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 订单状态:
+ </view>
+ <view class="value">{{ item.statusBackendStr }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货人:
+ </view>
+ <view class="value">{{ item.customer }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货人手机号码:
+ </view>
+ <view class="value">{{ item.customerTel }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 收货地址:
+ </view>
+ <view class="value">{{ item.customerAddress }}</view>
+ </view>
+ <view class="desc flex">
+ <view class="label">
+ 支付时间:
+ </view>
+ <view class="value">{{ item.paymentTime }}</view>
+ </view>
+
+ <view class="button-green-1" v-if="false">确认配送完成</view>
+ </view>
+ </view>
+ </view>
+
+ <!-- 判断是否到底了,自动吧 -->
+ <footer-msg :more="page.total>0&&page.total>page.current*page.size"></footer-msg>
+
+ </view>
</template>
<script>
- export default {
- data() {
- return {
- tabIndex: 0,
- }
- },
- onLoad() {
- this.listApi = ''
- this.getList()
+export default {
+ data() {
+ return {
+ tabIndex: 0,
+ status: ['', 'SEND', 'RECEIVE'],
+ query: {
+ status: '',
+ }
+ }
+ },
+ onLoad() {
+ this.listApi = `/api/partner/list`
+ this.getList()
- },
- onReachBottom() {
- this.page.current += 1
- this.getMore()
- },
- async onPullDownRefresh() {
- this.page.current = 1
- await this.getList()
- uni.stopPullDownRefresh()
- },
- methods: {
- changeIndex(index) {
- if (this.tabIndex !== index) {
- this.tabIndex = index
- // 刷新 query
- this.refreshList()
- }
- },
- toDetail(item) {
- // uni.navigateTo({
- // url: `/pages/notice/notice?id=${item.id}`
- // })
- }
- }
- }
+ },
+ onReachBottom() {
+ this.page.current += 1
+ this.getMore()
+ },
+ async onPullDownRefresh() {
+ this.page.current = 1
+ await this.getList()
+ uni.stopPullDownRefresh()
+ },
+ methods: {
+ toDetail(item) {
+ // 订单详情页面
+ uni.navigateTo({
+ url: 'pages/order/order-detail?id=' + item.id
+ })
+ },
+ changeIndex(index) {
+ if (this.tabIndex !== index) {
+ this.tabIndex = index
+ this.query.status = this.status[index]
+ // 刷新 query
+ this.refreshList()
+ }
+ },
+ }
+}
</script>
<style lang="scss" scope>
- .order-settlement-list {
- .order-settlement-item {
- margin-bottom: 20rpx;
- padding: 28rpx;
+.order-settlement-list {
+ .order-settlement-item {
+ margin-bottom: 20rpx;
+ padding: 28rpx;
- .title {
- font-weight: 600;
- font-size: 28rpx;
- color: #000000;
- line-height: 40rpx;
+ .title {
+ font-weight: 600;
+ font-size: 28rpx;
+ color: #000000;
+ line-height: 40rpx;
- .status {
- font-weight: 400;
- font-size: 28rpx;
- color: #20613D;
- line-height: 40rpx;
- }
+ .status {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #20613D;
+ line-height: 40rpx;
+ }
- .status.red {
- color: #CF0000;
- }
+ .status.red {
+ color: #CF0000;
+ }
- .status.green {
- color: var(--topiccolor);
- }
- }
+ .status.green {
+ color: var(--topiccolor);
+ }
+ }
+ .desc{
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ }
- .line {
- height: 2rpx solid #EEEEEE;
- margin-top: 16rpx;
- margin-bottom: 16rpx;
- }
+ .line {
+ height: 2rpx solid #EEEEEE;
+ margin-top: 16rpx;
+ margin-bottom: 16rpx;
+ }
- .tj {
- .label {
- font-weight: 600;
- font-size: 28rpx;
- color: #000000;
- line-height: 40rpx;
- }
+ .tj {
+ .label {
+ font-weight: 600;
+ font-size: 28rpx;
+ color: #000000;
+ line-height: 40rpx;
+ }
- .value {
- font-weight: 400;
- font-size: 28rpx;
- color: #CF0000;
- line-height: 40rpx;
- }
- }
+ .value {
+ font-weight: 400;
+ font-size: 28rpx;
+ color: #CF0000;
+ line-height: 40rpx;
+ }
+ }
- .form {
- display: flex;
+ .form {
+ display: flex;
- .form-item {
- flex: 1;
- min-width: 26%;
- max-width: 33%;
+ .form-item {
+ flex: 1;
+ min-width: 26%;
+ max-width: 33%;
- .label {
- font-weight: 400;
- font-size: 24rpx;
- color: #666666;
- line-height: 34rpx;
- }
+ .label {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ }
- .label::after {
- content: ":";
- font-weight: 400;
- font-size: 24rpx;
- color: #666666;
- line-height: 34rpx;
- }
+ .label::after {
+ content: ":";
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #666666;
+ line-height: 34rpx;
+ }
- .value {
- font-weight: 400;
- font-size: 24rpx;
- color: #000000;
- line-height: 34rpx;
- }
+ .value {
+ font-weight: 400;
+ font-size: 24rpx;
+ color: #000000;
+ line-height: 34rpx;
+ }
- .value.red {
- color: #CF0000;
- }
- }
+ .value.red {
+ color: #CF0000;
+ }
+ }
- }
- }
- }
+ }
+ }
+}
</style>
\ No newline at end of file
--
Gitblit v1.9.3