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