| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | <template> | 
					
						
							|  |  |  | 	<view class="content"> | 
					
						
							|  |  |  | 		<view class="contentList" v-for="item,index in tableList" :key="index"> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'交易状态'}}</view> | 
					
						
							|  |  |  | 				<view class="line_content thesuccess">{{'完成'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'单据编号'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.tradeCode}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'账户类型'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.pkAccountVal}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'交易类型'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.tradeTypeVal}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'交易额度'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.tradeAmount}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'交易余额'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.tradeBalance |numberToCurrency}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'交易时间'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.creationTime}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 			<view class="linebox"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 				<view class="line_title">{{'备注'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				<view class="line_content">{{item.remarks}}</view> | 
					
						
							|  |  |  | 			</view> | 
					
						
							|  |  |  | 		</view> | 
					
						
							|  |  |  | 		<u-popup :show="sxShow" mode="right" @close="sxShow = false" :closeOnClickOverlay="false"> | 
					
						
							|  |  |  | 			<view class="rightPopup"> | 
					
						
							|  |  |  | 				<view class="popup_top"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 					<view @click="getSearch">{{'筛选'}}</view> | 
					
						
							|  |  |  | 					<view class="top_red" @click="sxShow = false">{{'返回'}}</view> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				</view> | 
					
						
							|  |  |  | 				<view class="typesBox"> | 
					
						
							|  |  |  | 					<view class="typeTitle"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 						{{'交易类型'}} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 					</view> | 
					
						
							|  |  |  | 					<view class="choiceBox"> | 
					
						
							|  |  |  | 						<view class="flex_btn" @click="clickTransType(item)" v-for="(item,index) in tradeTypeList" | 
					
						
							|  |  |  | 							:key="index" :class="queryParams.tradeType==item.value?'selectbtn':''"> | 
					
						
							|  |  |  | 							{{item.label}} | 
					
						
							|  |  |  | 						</view> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					</view> | 
					
						
							|  |  |  | 				</view> | 
					
						
							|  |  |  | 				<view class="typesBox"> | 
					
						
							|  |  |  | 					<view class="typeTitle"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 						{{'账户类型'}} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 					</view> | 
					
						
							|  |  |  | 					<view class="choiceBox"> | 
					
						
							| 
									
										
										
										
											2025-04-09 16:31:29 +08:00
										 |  |  | 						<view class="flex_btn"  | 
					
						
							|  |  |  | 							@click="clickAccountType(item)"  | 
					
						
							|  |  |  | 							v-for="(item,index) in pkAccountList" | 
					
						
							|  |  |  | 							:key="index"  | 
					
						
							|  |  |  | 							:class="queryParams.pkAccount==item.pkId?'selectbtn':''"> | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 							{{item.accountName}} | 
					
						
							|  |  |  | 						</view> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					</view> | 
					
						
							|  |  |  | 				</view> | 
					
						
							|  |  |  | 				<view class="typesBox"> | 
					
						
							|  |  |  | 					<view class="typeTitle"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 						{{'交易时间'}} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 					</view> | 
					
						
							|  |  |  | 					<view class="choiceBox"> | 
					
						
							|  |  |  | 						<view class="flex_btn" @click="openDate(0)"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 							{{queryParams.startDate?queryParams.startDate:'开始时间'}} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 						</view> | 
					
						
							|  |  |  | 						<view style="color: #666;"> | 
					
						
							|  |  |  | 							—— | 
					
						
							|  |  |  | 						</view> | 
					
						
							|  |  |  | 						<view class="flex_btn" @click="openDate(1)"> | 
					
						
							| 
									
										
										
										
											2025-04-01 21:35:18 +08:00
										 |  |  | 							{{queryParams.endDate?queryParams.endDate:'结束时间'}} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 						</view> | 
					
						
							|  |  |  | 					</view> | 
					
						
							|  |  |  | 				</view> | 
					
						
							|  |  |  | 				<u-datetime-picker :closeOnClickOverlay="true" @close="dataShow = false" @cancel="dataShow = false" | 
					
						
							|  |  |  | 					@confirm="getDate" :show="dataShow" v-model="value1" mode="date"></u-datetime-picker> | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 				<view class="popup_bottom"> | 
					
						
							|  |  |  | 					<view class="bottom_btn thebtn1" @click="clearAll">清空筛选条件</view> | 
					
						
							|  |  |  | 					<view class="bottom_btn thebtn2" @click="()=>{getSearch(),sxShow = false}"> | 
					
						
							|  |  |  | 						确定 | 
					
						
							|  |  |  | 					</view> | 
					
						
							|  |  |  | 				</view>	 | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 			</view> | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 			 | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 		</u-popup> | 
					
						
							|  |  |  | 	</view> | 
					
						
							|  |  |  | </template> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <script> | 
					
						
							|  |  |  | 	import * as bal from "@/config/balance.js" | 
					
						
							|  |  |  | 	import { | 
					
						
							|  |  |  | 		formatMsToDate | 
					
						
							|  |  |  | 	} from '@/util/index' | 
					
						
							|  |  |  | 	export default { | 
					
						
							|  |  |  | 		data() { | 
					
						
							|  |  |  | 			return { | 
					
						
							|  |  |  | 				sxShow: false, | 
					
						
							|  |  |  | 				queryParams: { | 
					
						
							|  |  |  | 					pageNum: 1, | 
					
						
							|  |  |  | 					pageSize: 50, | 
					
						
							|  |  |  | 					tradeType: "", //交易类型
 | 
					
						
							|  |  |  | 					pkAccount: "", //账户类型
 | 
					
						
							|  |  |  | 					startDate: "", | 
					
						
							|  |  |  | 					endDate: "" | 
					
						
							|  |  |  | 				}, | 
					
						
							|  |  |  | 				tradeTypeList: [], //交易类型
 | 
					
						
							|  |  |  | 				pkAccountList: [], //账户类型
 | 
					
						
							|  |  |  | 				tableList: [], | 
					
						
							|  |  |  | 				timeIndex: 0, | 
					
						
							|  |  |  | 				dataShow: false, | 
					
						
							|  |  |  | 				value1: "" | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 		}, | 
					
						
							|  |  |  | 		onLoad() { | 
					
						
							|  |  |  | 			this.getOthers() | 
					
						
							|  |  |  | 			this.getSearch() | 
					
						
							|  |  |  | 		}, | 
					
						
							|  |  |  | 		onNavigationBarButtonTap() { | 
					
						
							|  |  |  | 			this.sxShow = true | 
					
						
							|  |  |  | 		}, | 
					
						
							|  |  |  | 		methods: { | 
					
						
							|  |  |  | 			getDate(e) { | 
					
						
							|  |  |  | 				if (this.timeIndex == 1) { | 
					
						
							|  |  |  | 					this.queryParams.endDate = formatMsToDate(e.value) | 
					
						
							|  |  |  | 				} else { | 
					
						
							|  |  |  | 					this.queryParams.startDate = formatMsToDate(e.value) | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				this.dataShow = false | 
					
						
							|  |  |  | 			}, | 
					
						
							|  |  |  | 			openDate(index) { | 
					
						
							|  |  |  | 				this.timeIndex = index | 
					
						
							|  |  |  | 				this.dataShow = true | 
					
						
							|  |  |  | 			}, | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 			clickTransType(item) { | 
					
						
							|  |  |  | 				this.queryParams.tradeType = item.value | 
					
						
							|  |  |  | 			}, | 
					
						
							|  |  |  | 			clickAccountType(item) { | 
					
						
							| 
									
										
										
										
											2025-04-09 16:31:29 +08:00
										 |  |  | 				// this.queryParams.pkAccount = item.pkId
 | 
					
						
							|  |  |  | 				console.log(item, '....item') | 
					
						
							|  |  |  | 				this.$set(this.queryParams, 'pkAccount', item.pkId) | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 			}, | 
					
						
							|  |  |  | 			getOthers() { | 
					
						
							|  |  |  | 				bal.getTradeTypeList().then((res) => { | 
					
						
							|  |  |  | 					this.tradeTypeList = res.data; | 
					
						
							|  |  |  | 				}); | 
					
						
							|  |  |  | 				bal.getEnumsAccountList().then((res) => { | 
					
						
							|  |  |  | 					this.pkAccountList = res.data; | 
					
						
							|  |  |  | 				}); | 
					
						
							|  |  |  | 			}, | 
					
						
							|  |  |  | 			getSearch() { | 
					
						
							|  |  |  | 				bal.getTransactionDetails(this.queryParams).then(res => { | 
					
						
							|  |  |  | 					this.tableList = res.rows | 
					
						
							|  |  |  | 				}) | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 			}, | 
					
						
							|  |  |  | 			clearAll() { | 
					
						
							|  |  |  | 				this.sxShow = false | 
					
						
							| 
									
										
										
										
											2025-04-09 16:31:29 +08:00
										 |  |  | 				Object.assign(this.queryParams, { | 
					
						
							|  |  |  | 					pageNum: 1, | 
					
						
							|  |  |  | 					pageSize: 50, | 
					
						
							|  |  |  | 					tradeType: "", //交易类型
 | 
					
						
							|  |  |  | 					pkAccount: "", //账户类型
 | 
					
						
							|  |  |  | 					startDate: "", | 
					
						
							|  |  |  | 				}) | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 				this.getSearch() | 
					
						
							|  |  |  | 			}, | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | </script> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | <style lang="scss" scoped> | 
					
						
							|  |  |  | 	::v-deep .u-popup__content { | 
					
						
							|  |  |  | 		overflow: auto; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	.content { | 
					
						
							|  |  |  | 		background: #F2F2F2; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		.contentList { | 
					
						
							|  |  |  | 			background-color: #fff; | 
					
						
							|  |  |  | 			margin-top: 8rpx; | 
					
						
							|  |  |  | 			padding: 10rpx 23rpx; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 			.linebox { | 
					
						
							|  |  |  | 				display: flex; | 
					
						
							|  |  |  | 				align-items: center; | 
					
						
							|  |  |  | 				font-size: 26rpx; | 
					
						
							|  |  |  | 				margin: 14rpx 0; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.line_title { | 
					
						
							|  |  |  | 					min-width: 150rpx; | 
					
						
							|  |  |  | 					color: #999999; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.line_content { | 
					
						
							|  |  |  | 					color: #333; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.thesuccess { | 
					
						
							|  |  |  | 					color: #45C242; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		.rightPopup { | 
					
						
							|  |  |  | 			width: 645rpx; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 			.popup_top { | 
					
						
							|  |  |  | 				padding: 25rpx; | 
					
						
							| 
									
										
										
										
											2025-04-23 11:51:12 +08:00
										 |  |  | 				background-color: rgba(176, 196, 222, .45); | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				display: flex; | 
					
						
							|  |  |  | 				justify-content: space-between; | 
					
						
							|  |  |  | 				align-items: center; | 
					
						
							|  |  |  | 				font-size: 28rpx; | 
					
						
							|  |  |  | 				font-family: Source Han Sans CN; | 
					
						
							|  |  |  | 				font-weight: 400; | 
					
						
							|  |  |  | 				color: #333333; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.top_red { | 
					
						
							| 
									
										
										
										
											2025-04-22 17:47:02 +08:00
										 |  |  | 					color: #005BAC; | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 			.popup_bottom { | 
					
						
							|  |  |  | 				display: flex; | 
					
						
							|  |  |  | 				align-items: center; | 
					
						
							|  |  |  | 				position: absolute; | 
					
						
							|  |  |  | 				left: 0; | 
					
						
							|  |  |  | 				bottom: 0; | 
					
						
							|  |  |  | 				width: 100%; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.bottom_btn { | 
					
						
							|  |  |  | 					flex: 1; | 
					
						
							|  |  |  | 					padding: 36rpx 0; | 
					
						
							|  |  |  | 					text-align: center; | 
					
						
							|  |  |  | 					font-size: 28rpx; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.thebtn1 { | 
					
						
							| 
									
										
										
										
											2025-04-23 11:51:12 +08:00
										 |  |  | 					background-color: rgba(176, 196, 222, .45); | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 					color: #333333; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.thebtn2 { | 
					
						
							| 
									
										
										
										
											2025-04-22 17:47:02 +08:00
										 |  |  | 					background-color: #005BAC; | 
					
						
							| 
									
										
										
										
											2025-04-09 10:48:03 +08:00
										 |  |  | 					color: #ffffff; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | 			.typesBox { | 
					
						
							|  |  |  | 				margin-top: 40rpx; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.typeTitle { | 
					
						
							|  |  |  | 					padding: 0 24rpx; | 
					
						
							|  |  |  | 					font-size: 30rpx; | 
					
						
							|  |  |  | 					font-family: Source Han Sans CN; | 
					
						
							|  |  |  | 					font-weight: bold; | 
					
						
							|  |  |  | 					color: #333333; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				.choiceBox { | 
					
						
							|  |  |  | 					padding: 0 12rpx; | 
					
						
							|  |  |  | 					display: flex; | 
					
						
							|  |  |  | 					margin-top: 17rpx; | 
					
						
							|  |  |  | 					align-items: center; | 
					
						
							|  |  |  | 					flex-wrap: wrap; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					.flex_btn { | 
					
						
							| 
									
										
										
										
											2025-04-23 11:51:12 +08:00
										 |  |  | 						background-color: rgba(176, 196, 222, .45); | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 						display: flex; | 
					
						
							|  |  |  | 						align-items: center; | 
					
						
							|  |  |  | 						justify-content: center; | 
					
						
							|  |  |  | 						padding: 14rpx 48rpx; | 
					
						
							|  |  |  | 						border-radius: 26rpx; | 
					
						
							|  |  |  | 						font-size: 24rpx; | 
					
						
							|  |  |  | 						font-family: Source Han Sans CN; | 
					
						
							|  |  |  | 						font-weight: 400; | 
					
						
							|  |  |  | 						color: #333333; | 
					
						
							|  |  |  | 						margin: 17rpx 5rpx; | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 					.selectbtn { | 
					
						
							| 
									
										
										
										
											2025-04-23 11:51:12 +08:00
										 |  |  | 						background-color: #005BAC; | 
					
						
							| 
									
										
										
										
											2025-03-23 09:29:40 +08:00
										 |  |  | 						color: #ffffff; | 
					
						
							|  |  |  | 					} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | </style> |