From 79f11f34546a394ab1c16ba427c31e9b59d05523 Mon Sep 17 00:00:00 2001 From: queenwuli <942534046@qq.com> Date: Sat, 09 Jan 2021 10:40:57 +0800 Subject: [PATCH] gx --- hive-app/pages/workbench/orderList.vue | 170 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 127 insertions(+), 43 deletions(-) diff --git a/hive-app/pages/workbench/orderList.vue b/hive-app/pages/workbench/orderList.vue index ccbbd16..27d587b 100644 --- a/hive-app/pages/workbench/orderList.vue +++ b/hive-app/pages/workbench/orderList.vue @@ -2,11 +2,13 @@ <!-- 订单列表 --> <view> <view class="header"> - <search-bar class="mb-0"></search-bar> + <search-bar @confirm="search" placeholder="输入会员姓名、手机号、订单号" class="mb-0"></search-bar> </view> <view> <h-tabs class="tab" + :activeIndex="orderStatus" + @tabClick="tabChange" :tabData="tabs" :config="{ color: '#abb1cc', @@ -18,31 +20,35 @@ }" /> <view class="list"> - <navigator url="./orderDetail" class="list-item" v-for="item in 4"> - <view class="list-header"> - <text>订单号: N202012123556</text> - <text class="blue">待付款</text> - </view> - <view class="list-content"> - <view class="flex flex-v"> - <text class="font-bold font-16">李某某</text> - <text class="gray">2020-12-15 18:11:01</text> + <view class="list-item" v-for="item in list"> + <navigator :url="'./orderDetail?orderId='+item.orderId" hover-class="none"> + <view class="list-header"> + <text>订单号: {{item.orderNo}}</text> + <text :class="caculateColor(item.orderStatus)">{{item.orderStatus}}</text> </view> - <view class="flex flex-v"> - <text>应付金额</text> - <text>实付金额</text> - <text>欠款总额</text> + <view class="list-content"> + <view class="flex flex-v flex-1"> + <text class="font-bold font-15">{{item.vipName}}</text> + <text class="gray">{{item.orderTime}}</text> + </view> + <view class="flex justify-between flex-1"> + <view> + <view>应付金额</view> + <view>实付金额</view> + <view>欠款总额</view> + </view> + <view class="right"> + <view>¥ {{item.needPay | formatNum}}</view> + <view>¥ {{item.realPay | formatNum}}</view> + <view>¥ {{item.arrears | formatNum}}</view> + </view> + </view> </view> - <view class="flex flex-v right"> - <text>¥ 8000.00</text> - <text>¥ 0.00</text> - <text>¥ 8000.00</text> - </view> + </navigator> + <view class="list-footer" v-if="item.orderStatus!=='已取消' && $utils.hasPermission('ddgl.cancel')"> + <text class="blue-btn small-btn" @click="cancelOrder(item.orderId)">取消订单</text> </view> - <view class="list-footer"> - <text class="blue-btn small-btn">取消订单</text> - </view> - </navigator> + </view> </view> </view> </view> @@ -57,26 +63,104 @@ searchBar }, data() { - return { - tabs:[ - { - state: 1, - name: '全部' - }, - { - state: 2, - name: '待付款' - }, - { - state: 3, - name: '已付款' - }, - { - state: 4, - name: '欠款' - }, - ], - } + return { + orderStatus: 0, + tabs:[ + { + state: 0, + name: '全部' + }, + { + state: 1, + name: '待付款' + }, + { + state: 2, + name: '已付款' + }, + { + state: 3, + name: '欠款' + }, + ], + list: [] + } + }, + onLoad(options) { + if(options.status){ + this.orderStatus = Number(options.status); + } + this.loadList() + + // 判断权限 + // #ifdef APP-PLUS + if(!this.$utils.hasPermission('ddgl.add')){ + let webView = this.$mp.page.$getAppWebview(); + webView.setTitleNViewButtonStyle(0, { + width: 0, + }); + } + // #endif + }, + onNavigationBarButtonTap(Object){ + if(Object.key === 'add'){ + uni.navigateTo({ + url: './selectCustomer' + }) + } + }, + methods:{ + loadList(){ + this.$httpUtils.request('/api/order/findOrderList', { + pageNum: 1, + pageSize: 100, + queryKey: this.queryKey, + orderStatus: this.orderStatus + }, 'POST').then((res) => { + if(res.status == 200){ + this.list = res.rows; + } + }) + }, + search(val){ + this.queryKey = val; + this.loadList(); + }, + tabChange(index){ + if(this.orderStatus === index){ + return; + } + this.orderStatus = index; + this.loadList(); + }, + caculateColor(status){ + if(status==='待付款'){ + return 'blue' + } else if(status === '已付款'){ + return 'blueness' + } else if(status === '欠款'){ + return 'red' + } else { + return 'gray' + } + }, + cancelOrder(id){ + uni.showModal({ + title: '提示', + content: '确定取消订单吗?', + success: (res) => { + if (res.confirm) { + console.log('用户点击确定'); + this.$httpUtils.request('/api/order/cancelOrder/'+id).then((res) => { + if(res.status == 200){ + this.loadList() + } + this.$toast.info(res.info); + }) + } + } + }); + } } } </script> -- Gitblit v1.9.1