<template>
	<view class="page">
		<u-navbar :is-back="false" title="订单管理" :border-bottom="false" :background="bgc" title-color='#2E4975'
			title-size='36' height='45'></u-navbar>
		<view class="top_box">
			<view class="left_text">
				时间范围
			</view>
			<view class="timebox">
				<view class="left_time" @click="time1=true">
					{{firsTime}}
				</view>
				-
				<view class="right_time" @click="time2=true">
					{{lasTime}}
				</view>
			</view>
		</view>
		<!-- <view class="top_box">
			<view class="left_text">
				手机号
			</view>
			<view class="sear_ipt">
				<input type="text" v-model="searchKeyword" placeholder="请输入内容" class="input"
					placeholder-style="color:#C7CDD3" @input="search()">
			</view>
		</view> -->
		<view class="top_box" style="margin-top: 20rpx;">
			<view class="left_text" @click="shows=true">
				{{tit}}
				<view class="iconfont icon-xiangxia1"></view>
			</view>
			<view class="sear_ipt">
				<input type="text" v-model="searchKeyword" placeholder="请输入内容" class="input"
					placeholder-style="color:#C7CDD3" @input="search()">
			</view>
		</view>
		<view class="tap">
			<view class="tap_cont " :class="curtitidx==0?'act1':''" @click="changeidx(0)">
				全部
			</view>
			<view class="tap_cont" :class="curtitidx==1?'act1':''" @click="changeidx(1)">
				进行中
			</view>
			<view class="tap_cont" :class="curtitidx==2?'act1':''" @click="changeidx(2)">
				待支付
			</view>
			
			<view class="tap_cont" :class="curtitidx==3?'act1':''" @click="changeidx(3)">
				已完成
			</view>
			<view class="tap_cont" :class="curtitidx==4?'act1':''" @click="changeidx(4)" v-if="areainfo.returnVerify==01">
				待审核
			</view>
		</view>
		<u-mask :show="show" @click="show = false" :z-index='100' />

		<u-picker mode="time" v-model="time1" :params="params" @confirm="confirm1"
			:default-time='pickertime'></u-picker>
		<u-picker mode="time" v-model="time2" :params="params" @confirm="confirm2"
			:default-time='pickertime'></u-picker>
		<view class="warp_box">
			<swiper class="swiper" :style="{ height: swiperHeight + 'rpx' }" :current='curtitidx' @change="swiperchange"
				next-margin='-20rpx'>
				<swiper-item>
					<view class="swiper-item " v-if="loading">
						<view class="card" v-for="(item,index) in allList" :key="index">
							<view class="line"></view>
							<view class="top_info">
								<view class="top_info_left">
									订单编号:{{item.orderNo}}
								</view>
								<view class="top_info_right" v-if="item.status==0||item.status==2">
									<view class="yuan"></view>
									进行中
								</view>
								<view class="top_info_right" v-if="item.status==1||item.status==3"
									style="color: orangered;">
									<view class="yuan" style="background: orangered;"></view>
									待支付
								</view>
								<view class="top_info_right" v-if="item.status==4" style="color: green;">
									<view class="yuan" style="background: green;"></view>
									已完成
								</view>
							</view>

							<view class="lines"></view>
							<view class="order_info">
								<!-- <view class="info_li">
									
								</view> -->
								<view class="info_li">
									<view class="half_info_li">
										租赁用户:{{item.phonenumber}}
									</view>
									<view class="half_info_li" v-if="item.realName">
										用户姓名:{{item.realName}}
									</view>
									<view class="half_info_li" v-else>
										用户姓名:--
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										车辆编号:{{item.sn}}
									</view>
									<view class="half_info_li">
										租赁时长:{{computedList(item)}}
									</view>

								</view>
								<view class="info_li">
									<view class="half_info_li">
										订单费用:{{item.totalFee}}元
									</view>
									<view class="half_info_li">

										有无退款:<span v-if="item.etRefund==null">无</span>
										<span v-else style="color: red;">有</span>
									</view>

								</view>
								<view class="info_li">
									<view class="half_info_li">
										开始时间:{{formatDate(item.createTime)}}
									</view>
									<view class="half_info_li" v-if="item.vehicleNum">
										车牌号:{{item.vehicleNum}}
									</view>
									<view class="half_info_li" v-else>
										车牌号:--
									</view>
								</view>
								<view class="info_li" v-if="item.unlock_time">
									开关时间:{{item.unlock_time}} {{ item.return_time ? item.return_time : '--' }}
								</view>
							</view>
							<view class="lines"></view>
							<view class="btn_box">
								<view class="btn" v-if="item.status==0||item.status==2" @click="showfzs(item)">
									辅助还车
								</view>
								<view class="btn" v-if="item.status==1||item.status==3" @click="showgjs(item)">
									改价
								</view>
								<view class="btn" v-if="item.status==4" @click="showtks(item)">
									退款
								</view>
								<view class="btn_line">

								</view>
								<!-- <view class="btn" v-if="item.status==4" style="width: 100%;">
									查看详情
								</view> -->
								<view class="btn" @click="toOrderDetail(item.orderNo)">
									查看详情
								</view>
							</view>
						</view>
					</view>
				</swiper-item>
				<swiper-item>
					<view class="swiper-item " v-if="loading">
						<view class="card" v-for="(item,index) in ingList" :key="index">
							<view class="line"></view>
							<view class="top_info">
								<view class="top_info_left">
									订单编号:{{item.orderNo}}
								</view>
								<view class="top_info_right" v-if="item.status==0||item.status==2">
									<view class="yuan"></view>
									进行中
								</view>
								<view class="top_info_right" v-if="item.status==1||item.status==3"
									style="color: orangered;">
									<view class="yuan" style="background: orangered;"></view>
									待支付
								</view>
								<view class="top_info_right" v-if="item.status==4" style="color: green;">
									<view class="yuan" style="background: green;"></view>
									已完成
								</view>
							</view>

							<view class="lines"></view>
							<view class="order_info">
								<view class="info_li">
									<view class="half_info_li">
										租赁用户:{{item.phonenumber}}
									</view>
									<view class="half_info_li" v-if="item.realName">
										用户姓名:{{item.realName}}
									</view>
									<view class="half_info_li" v-else>
										用户姓名:--
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										车辆编号:{{item.sn}}
									</view>
									<view class="half_info_li">
										租赁时长:{{computedList(item)}}
									</view>

								</view>
								<view class="info_li">
									<view class="half_info_li">
										订单费用:{{item.totalFee}}元
									</view>
									<view class="half_info_li" >
								
										有无退款:<span v-if="item.etRefund==null">无</span>
										<span v-else style="color: red;">有</span>
									</view>
								
								</view>
								<view class="info_li">
									<view class="half_info_li">
										开始时间:{{formatDate(item.createTime)}}
									</view>
									<view class="half_info_li" v-if="item.vehicleNum">
										车牌号:{{item.vehicleNum}}
									</view>
									<view class="half_info_li" v-else>
										车牌号:--
									</view>
								</view>
								<view class="info_li" v-if="item.unlock_time">
									开关时间:{{item.unlock_time}} {{ item.return_time ? item.return_time : '--' }}
								</view>
							</view>
							<view class="lines"></view>
							<view class="btn_box">
								<view class="btn" v-if="item.status==0||item.status==2" @click="showfzs(item)">
									辅助还车
								</view>
								<view class="btn" v-if="item.status==1||item.status==3" @click="showgjs()">
									改价
								</view>
								<view class="btn" v-if="item.status==4" @click="showtks(item)">
									退款
								</view>
								<view class="btn_line">

								</view>

								<view class="btn" @click="toOrderDetail(item.orderNo)">
									查看详情
								</view>
							</view>
						</view>
					</view>
				</swiper-item>
				<swiper-item>
					<view class="swiper-item " v-if="loading">
						<view class="card" v-for="(item,index) in reprement" :key="index">
							<view class="line"></view>
							<view class="top_info">
								<view class="top_info_left">
									订单编号:{{item.orderNo}}
								</view>
								<view class="top_info_right" v-if="item.status==0||item.status==2">
									<view class="yuan"></view>
									进行中
								</view>
								<view class="top_info_right" v-if="item.status==1||item.status==3"
									style="color: orangered;">
									<view class="yuan" style="background: orangered;"></view>
									待支付
								</view>
								<view class="top_info_right" v-if="item.status==4" style="color: green;">
									<view class="yuan" style="background: green;"></view>
									已完成
								</view>
							</view>

							<view class="lines"></view>
							<view class="order_info">
							<view class="info_li">
								<view class="half_info_li">
									租赁用户:{{item.phonenumber}}
								</view>
								<view class="half_info_li" v-if="item.realName">
									用户姓名:{{item.realName}}
								</view>
								<view class="half_info_li" v-else>
									用户姓名:--
								</view>
							</view>
								<view class="info_li">
									<view class="half_info_li">
										车辆编号:{{item.sn}}
									</view>
									<view class="half_info_li">
										租赁时长:{{computedList(item)}}
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										订单费用:{{item.totalFee}}元
									</view>
									<view class="half_info_li" >
								
										有无退款:<span v-if="item.etRefund==null">无</span>
										<span v-else style="color: red;">有</span>
									</view>
								
								</view>
								<view class="info_li">
									<view class="half_info_li">
										开始时间:{{formatDate(item.createTime)}}
									</view>
									<view class="half_info_li" v-if="item.vehicleNum">
										车牌号:{{item.vehicleNum}}
									</view>
									<view class="half_info_li" v-else>
										车牌号:--
									</view>
								</view>
								<view class="info_li" v-if="item.unlock_time">
									开关时间:{{item.unlock_time}} {{ item.return_time ? item.return_time : '--' }}
								</view>
							</view>
							<view class="lines"></view>
							<view class="btn_box">
								<view class="btn" v-if="item.status==0||item.status==2" @click="showfzs(item)">
									辅助还车
								</view>
								<view class="btn" v-if="item.status==1||item.status==3" @click="showgjs(item)">
									改价
								</view>
								<view class="btn" v-if="item.status==4" @click="showtks(item)">
									退款
								</view>
								<view class="btn_line">

								</view>

								<view class="btn" @click="toOrderDetail(item.orderNo)">
									查看详情
								</view>
							</view>
						</view>
					</view>
				</swiper-item>
				<swiper-item>
					<view class="swiper-item " v-if="loading">

						<view class="card" v-for="(item,index) in alreadyList" :key="index">
							<view class="line"></view>
							<view class="top_info">
								<view class="top_info_left">
									订单编号:{{item.orderNo}}
								</view>
								<view class="top_info_right" v-if="item.status==0||item.status==2">
									<view class="yuan"></view>
									进行中
								</view>
								<view class="top_info_right" v-if="item.status==1||item.status==3"
									style="color: orangered;">
									<view class="yuan" style="background: orangered;"></view>
									待支付
								</view>
								<view class="top_info_right" v-if="item.status==4" style="color: green;">
									<view class="yuan" style="background: green;"></view>
									已完成
								</view>
							</view>

							<view class="lines"></view>
							<view class="order_info">
								<view class="info_li">
									<view class="half_info_li">
										租赁用户:{{item.phonenumber}}
									</view>
									<view class="half_info_li" v-if="item.realName">
										用户姓名:{{item.realName}}
									</view>
									<view class="half_info_li" v-else>
										用户姓名:--
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										车辆编号:{{item.sn}}
									</view>
									<view class="half_info_li">
										租赁时长:{{computedList(item)}}
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										订单费用:{{item.totalFee}}元
									</view>
									<view class="half_info_li" >
								
										有无退款:<span v-if="item.etRefund==null">无</span>
										<span v-else style="color: red;">有</span>
									</view>
								
								</view>
								<view class="info_li">
									<view class="half_info_li">
										开始时间:{{formatDate(item.createTime)}}
									</view>
									<view class="half_info_li" v-if="item.vehicleNum">
										车牌号:{{item.vehicleNum}}
									</view>
									<view class="half_info_li" v-else>
										车牌号:--
									</view>
								</view>
								<view class="info_li" v-if="item.unlock_time">
									开关时间:{{item.unlock_time}} {{ item.return_time ? item.return_time : '--' }}
								</view>
							</view>
							<view class="lines"></view>
							<view class="btn_box">
								<view class="btn" v-if="item.status==0||item.status==2" @click="showfzs(item)">
									辅助还车
								</view>
								<view class="btn" v-if="item.status==4" @click="showtks(item)">
									退款
								</view>
								<view class="btn_line">

								</view>
								<view class="btn" @click="toOrderDetail(item.orderNo)">
									查看详情
								</view>
							</view>
						</view>
					</view>
				</swiper-item>
				<swiper-item>
					<view class="swiper-item " v-if="loading">
						<view class="card" v-for="(item,index) in passList" :key="index">
							<view class="line"></view>
							<view class="top_info">
								<view class="top_info_left">
									订单编号:{{item.orderNo}}
								</view>
								<view class="top_info_right" v-if="item.status==0||item.status==2">
									<view class="yuan"></view>
									进行中
								</view>
								<view class="top_info_right" v-if="item.status==1||item.status==3"
									style="color: orangered;">
									<view class="yuan" style="background: orangered;"></view>
									待支付
								</view>
								<view class="top_info_right" v-if="item.status==4" style="color: green;">
									<view class="yuan" style="background: green;"></view>
									已完成
								</view>
							</view>
				
							<view class="lines"></view>
							<view class="order_info">
								<!-- <view class="info_li">
									
								</view> -->
								<view class="info_li">
									<view class="half_info_li">
										租赁用户:{{item.phonenumber}}
									</view>
									<view class="half_info_li" v-if="item.realName">
										用户姓名:{{item.realName}}
									</view>
									<view class="half_info_li" v-else>
										用户姓名:--
									</view>
								</view>
								<view class="info_li">
									<view class="half_info_li">
										车辆编号:{{item.sn}}
									</view>
									<view class="half_info_li">
										租赁时长:{{computedList(item)}}
									</view>
				
								</view>
								<view class="info_li">
									<view class="half_info_li">
										订单费用:{{item.totalFee}}元
									</view>
									<view class="half_info_li">
				
										有无退款:<span v-if="item.etRefund==null">无</span>
										<span v-else style="color: red;">有</span>
									</view>
				
								</view>
								<view class="info_li">
									<view class="half_info_li">
										开始时间:{{formatDate(item.createTime)}}
									</view>
									<view class="half_info_li" v-if="item.vehicleNum">
										车牌号:{{item.vehicleNum}}
									</view>
									<view class="half_info_li" v-else>
										车牌号:--
									</view>
								</view>
								<view class="info_li" v-if="item.unlock_time">
									开关时间:{{item.unlock_time}} {{ item.return_time ? item.return_time : '--' }}
								</view>
							</view>
							<view class="lines"></view>
							<view class="btn_box">
								<view class="btn" v-if="item.status==0||item.status==2" @click="showfzs(item)">
									辅助还车
								</view>
								<view class="btn" v-if="item.status==1||item.status==3" @click="showgjs(item)">
									改价
								</view>
								<view class="btn" v-if="item.status==4" @click="showtks(item)">
									退款
								</view>
								<view class="btn_line">
				
								</view>
								<!-- <view class="btn" v-if="item.status==4" style="width: 100%;">
									查看详情
								</view> -->
								<view class="btn" @click="toOrderDetail(item.orderNo)">
									查看详情
								</view>
							</view>
						</view>
					</view>
				</swiper-item>
			</swiper>
		</view>
		<view class="tip_box" v-if="showfz">
			<view class="top">
				<view class="tip">
					提示
				</view>

				<view class="txt">
					确定要辅助还车吗?
				</view>
			</view>
			<view class="bot">
				<view class="bot_left" @click="closefz()">
					取消
				</view>
				<view class="bot_right" @click="backDevice()">
					确定
				</view>
			</view>
		</view>
		<view class="tip_box" v-if="showgj">
			<view class="top">
				<view class="tip">
					改价
				</view>

				<view class="ipt_box">
					<view class="text">
						运营区外调度费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.dispatchFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						停车点外调度费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.manageFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						骑行费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.ridingFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						预约费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.appointmentFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3">
						元
					</view>
				</view>
			</view>
			<view class="bot">
				<view class="bot_left" @click="closegj()">
					取消
				</view>
				<view class="bot_right" @click="changeMoney()">
					确定
				</view>
			</view>
		</view>
		<view class="tip_box" v-if="showtk">
			<view class="top" v-if="showtk">
				<view class="tip">
					退款
				</view>

				<view class="ipt_box">
					<view class="text">
						运营区外调度费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.dispatchFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3" @input="checkAndUpdate('dispatchFee')">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						停车点外调度费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.manageFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3" @input="checkAndUpdate('manageFee')">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						骑行费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.ridingFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3" @input="checkAndUpdate('ridingFee')">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						预约费
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.appointmentFee" placeholder="0.00" class="input"
							placeholder-style="color:#C7CDD3" @input="checkAndUpdate('appointmentFee')">
						元
					</view>
				</view>
				<view class="ipt_box">
					<view class="text">
						原因
					</view>
					<view class="ipt">
						<input type="text" v-model="orderInfo.reason" placeholder="选填" class="input"
							placeholder-style="color:#C7CDD3" @input="checkAndUpdate('reason')">
					</view>
				</view>
			</view>
			<view class="bot">
				<view class="bot_left" @click="closetk()">
					取消
				</view>
				<view class="bot_right" @click="backMoney()">
					确定
				</view>
			</view>
		</view>
		<u-select v-model="shows" :list="list" title='添加方式' @confirm="searchconfirm"></u-select>
		<tab-bar :indexs='2' style=""></tab-bar>
	</view>
</template>

<script>
	let timerId;
	let timerId1;
	export default {
		data() {
			return {
				bgc: {
					backgroundColor: "#F7FAFE",
				},
				params: {
					year: true,
					month: true,
					day: true,
					hour: false,
					minute: false,
					second: false
				},
				pickertime: '',
				time1: false,
				time2: false,
				lasTime: '',
				firsTime: '',
				searchKeyword: '',
				curtitidx: 0,
				swiperHeight: 400,
				allList: [],
				ingList: [],
				reprement: [],
				alreadyList: [],
				show: false,
				showfz: false,
				showgj: false,
				showtk: false,
				orderInfo: {},
				loading: false,
				initialValues: {

				},
				areaId: false,
				tit: '车牌号',
				shows: false,
				list: [{
						value: '1',
						label: '手机号'
					},
					{
						value: '2',
						label: '车牌号'
					},


				],
				typeidx: '2',
				areainfo:{},
				passList:[]

			}
		},
		onShow() {
			this.$store.dispatch('userInfo', this.$u).then(() => {

				// 执行其他操作...
			});

			if (uni.getStorageSync('adminAreaid')) {
				this.areaId = uni.getStorageSync('adminAreaid')
				this.orderList()
				this.getArea()
			}

		},
		watch: {
			curtitidx(newValue, oldValue) {
				// 处理userId变化的逻辑
				console.log('userId 发生变化', newValue, oldValue);
				if (newValue == 0) {
					this.swiperHeight = (this.allList.length * 440)
				} else if (newValue == 1) {
					this.swiperHeight = this.ingList.length * 440
				} else if (newValue == 2) {
					this.swiperHeight = this.reprement.length * 440
				} else if (newValue == 3) {
					this.swiperHeight = this.alreadyList.length * 440
				}
			}
		},
		computed: {
			userId() {
				return this.$store.getters.userId;
			},
		},
		computed: {

		},
		methods: {
			getArea() {
			
				let id = this.areaId
				this.$u.get("/app/area/" + id).then((res) => {
			
					if (res.code == 200) {
						
						this.areainfo=res.data
						
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				});
			},
			 formatDate(value) {
			    if (!value) return '';
			    let date = new Date(value);
			    let month = date.getMonth() + 1; // 月份从0开始计数,所以加1
			    let day = date.getDate();
			    let hours = date.getHours();
			    let minutes = date.getMinutes();
			
			    // 确保月份、日期、小时和分钟都是两位数
			    month = month < 10 ? '0' + month : month;
			    day = day < 10 ? '0' + day : day;
			    hours = hours < 10 ? '0' + hours : hours;
			    minutes = minutes < 10 ? '0' + minutes : minutes;
			
			    return `${month}-${day} ${hours}:${minutes}`;
			  },
			searchconfirm(e) {
				// console.log(e,'eeeeeeeeee');
				this.typeidx = e[0].value
				this.tit = e[0].label

				// console.log(e);
				// this.mode = e[0].label
				// this.gettype()
			},
			computedList(item) {
				if (item.status == 0 || item.status == 2) {
					const createTime = new Date(item.createTime);
					const payTime = Date.now();
					const timeDifference = Math.abs(createTime - payTime);

					const hours = Math.floor(timeDifference / (1000 * 60 * 60));
					const minutes = Math.floor((timeDifference % (1000 * 60 * 60)) / (1000 * 60));
					const seconds = Math.floor((timeDifference % (1000 * 60)) / 1000);

					let result = '';
					if (hours > 0) {
						result += `${hours}小时`;
					}
					if (minutes > 0 || hours > 0) { // 显示分钟条件:有小时或者有分钟
						result += `${minutes}分`;
					}
					// result += `${seconds}秒`; // 始终显示秒

					return result;
				} else {
					const createTime = new Date(item.createTime);
					const payTime = new Date(item.returnTime);
					const timeDifference = Math.abs(createTime - payTime);

					const hours = Math.floor(timeDifference / (1000 * 60 * 60));
					const minutes = Math.floor((timeDifference % (1000 * 60 * 60)) / (1000 * 60));
					const seconds = Math.floor((timeDifference % (1000 * 60)) / 1000);

					let result = '';
					if (hours > 0) {
						result += `${hours}小时`;
					}
					if (minutes > 0 || hours > 0) { // 显示分钟条件:有小时或者有分钟
						result += `${minutes}分`;
					}
					// result += `${seconds}秒`; // 始终显示秒

					return result;

				}
			},
			toOrderDetail(id) {
				uni.navigateTo({
					url: '/pages_admin/order/order_detail?id=' + id
				})
			},
			checkAndUpdate(key) {
				clearTimeout(timerId);
				timerId = setTimeout(() => {
					let inputValue = parseFloat(this.orderInfo[key]);
					// Get the initial value corresponding to the key
					let initialValue = parseFloat(this.initialValues[key]);
					// If input value exceeds the initial value, revert back to initial value
					if (inputValue > initialValue) {
						this.orderInfo[key] = initialValue;
					}
				}, 500);
				// Convert input value to number

			},
			// 退款
			backMoney() {
				let data = {
					orderNo: this.orderInfo.orderNo,
					dispatchFee: this.orderInfo.dispatchFee,
					manageFee: this.orderInfo.manageFee,
					ridingFee: this.orderInfo.ridingFee,
					appointmentFee: this.orderInfo.appointmentFee,
					reason: this.orderInfo.reason
				}

				this.$u.put('/appVerify/order/refund', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.show = false
						this.showgj = false
						this.showtk = false
						this.orderInfo = {}
						if (this.curtitidx == 0) {
							this.orderList()
						} else if (this.curtitidx == 3) {
							this.orderList3()
						}
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			showtks(item) {
				this.orderInfo = item
				this.show = true
				this.showtk = true
				this.initialValues.dispatchFee = this.orderInfo.dispatchFee
				this.initialValues.manageFee = this.orderInfo.manageFee
				this.initialValues.ridingFee = this.orderInfo.ridingFee
				this.initialValues.appointmentFee = this.orderInfo.appointmentFee
			},
			closetk() {
				this.show = false
				this.showtk = false
				this.orderInfo = {}
			},
			// 改价
			changeMoney() {
				let data = {
					orderNo: this.orderInfo.orderNo,
					dispatchFee: this.orderInfo.dispatchFee,
					manageFee: this.orderInfo.manageFee,
					ridingFee: this.orderInfo.ridingFee,
					appointmentFee: this.orderInfo.appointmentFee,
				}

				this.$u.put('/appVerify/order/editPrice', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.show = false
						this.showgj = false
						this.orderInfo = {}
						if (this.curtitidx == 0) {
							this.orderList()
						} else if (this.curtitidx == 2) {
							this.orderList2()
						}
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			showgjs(item) {
				this.orderInfo = item
				this.show = true
				this.showgj = true
			},
			closegj() {
				this.show = false
				this.showgj = false
				this.orderInfo = {}
			},
			// 还车
			backDevice() {
				this.$u.post('/appVerify/device/return?orderNo=' + this.orderInfo.orderNo + '&returnType=2').then((
					res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.show = false
						this.showfz = false
						this.orderInfo = {}
						if (this.curtitidx == 0) {
							this.orderList()
						} else if (this.curtitidx == 1) {
							this.orderList1()
						}
					} else {
						uni.showToast({
							title: res.msg,
							icon: 'none',
							duration: 2000
						});
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			closefz() {
				this.show = false
				this.showfz = false
				this.orderInfo = {}
			},
			showfzs(item) {
				this.orderInfo = item
				this.show = true
				this.showfz = true
			},
			orderList() {
				let data = {};
				if (this.typeidx == 1) {
					data = {
						phonenumber: this.searchKeyword,
						type: '1',
						status: '',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				} else if (this.typeidx == 2) { // 修改条件为 this.typeidx == 2
					data = {
						vehicleNum: this.searchKeyword,
						type: '1',
						status: '',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				}
				this.loading = false
				this.$u.get('/appVerify/order/list?', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.allList = res.rows
						this.loading = true
						this.swiperHeight = (this.allList.length * 440)
						this.curtitidx = 0
						// console.log(this.polyline);
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			orderList1() {
				let data = {};
				if (this.typeidx == 1) {
					data = {
						phonenumber: this.searchKeyword,
						type: '1',
						statusList: '0,2',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				} else if (this.typeidx == 2) { // 修改条件为 this.typeidx == 2
					data = {
						vehicleNum: this.searchKeyword,
						type: '1',
						statusList: '0,2',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				}
				this.loading = false
				this.$u.get('/appVerify/order/list?', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.ingList = res.rows
						this.loading = true
						this.curtitidx = 1
						// console.log(this.polyline);
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			orderList2() {
				let data = {};
				if (this.typeidx == 1) {
					data = {
						phonenumber: this.searchKeyword,
						type: '1',
						statusList: '1,3',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				} else if (this.typeidx == 2) { // 修改条件为 this.typeidx == 2
					data = {
						vehicleNum: this.searchKeyword,
						type: '1',
						statusList: '1,3',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				}
				this.loading = false
				this.$u.get('/appVerify/order/list?', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.reprement = res.rows
						this.loading = true
						this.curtitidx = 2
						// console.log(this.polyline);
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			
			},
			orderList4() {
				let data = {};
				if (this.typeidx == 1) {
					data = {
						phonenumber: this.searchKeyword,
						type: '1',
						statusList: '5,6',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				} else if (this.typeidx == 2) { // 修改条件为 this.typeidx == 2
					data = {
						vehicleNum: this.searchKeyword,
						type: '1',
						statusList: '5,6',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				}
				this.loading = false
				this.$u.get('/appVerify/order/list?', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.passList = res.rows
						this.loading = true
						this.curtitidx = 4
						// console.log(this.polyline);
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			orderList3() {
				let data = {};
				if (this.typeidx == 1) {
					data = {
						phonenumber: this.searchKeyword,
						type: '1',
						status: '4',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				} else if (this.typeidx == 2) { // 修改条件为 this.typeidx == 2
					data = {
						vehicleNum: this.searchKeyword,
						type: '1',
						status: '4',
						startTime: this.firsTime,
						endTime: this.lasTime,
						areaId: this.areaId
					};
				}
				this.loading = false
				this.$u.get('/appVerify/order/list?', data).then((res) => {
					if (res.code === 200) {
						// 处理接口返回的数据,将边界数据转换为地图组件需要的折线结构
						this.alreadyList = res.rows
						console.log(this.alreadyList);
						this.loading = true
						this.curtitidx = 3
					}
				}).catch(error => {
					console.error("Error fetching area data:", error);
				});
			},
			async changeidx(idx) {

				if (idx == 0) {
					this.orderList()
				} else if (idx == 1) {
					this.orderList1()
				} else if (idx == 2) {
					this.orderList2()
				} else if (idx == 3) {
					this.orderList3()
				} else if (idx == 4) {
					this.orderList4()
				}
				
			},
			swiperchange(e) {
				this.curtitidx = e.detail.current
				console.log(e, 'eeeeeeeee');
			},
			confirm1(e) {
				console.log(e, 'eeeeeeee');
				this.firsTime = e.year + '-' + e.month + '-' + e.day
				if (this.curtitidx == 0) {
					this.orderList()
				} else if (this.curtitidx == 1) {
					this.orderList1()
				} else if (this.curtitidx == 2) {
					this.orderList2()
				} else if (this.curtitidx == 3) {
					this.orderList3()
				}else if (this.curtitidx ==4 ) {
					this.orderList4()
				}

			},
			confirm2(e) {
				this.lasTime = e.year + '-' + e.month + '-' + e.day
				if (this.curtitidx == 0) {
					this.orderList()
				} else if (this.curtitidx == 1) {
					this.orderList1()
				} else if (this.curtitidx == 2) {
					this.orderList2()
				} else if (this.curtitidx == 3) {
					this.orderList3()
				}else if (this.curtitidx ==4 ) {
					this.orderList4()
				}


			},
			search() {
				clearTimeout(timerId1);
				timerId1 = setTimeout(() => {
					if (this.curtitidx == 0) {
						this.orderList()
					} else if (this.curtitidx == 1) {
						this.orderList1()
					} else if (this.curtitidx == 2) {
						this.orderList2()
					} else if (this.curtitidx == 3) {
						this.orderList3()
					}else if (this.curtitidx ==4 ) {
						this.orderList4()
					}


				}, 500);
				// 根据关键字过滤 this.classlist

			},
		}
	}
</script>

<style lang="scss">
	page {
		background-color: #fff;
	}

	.page {
		width: 750rpx;

		.tip_box {
			position: fixed;
			left: 72rpx;
			top: 628rpx;
			width: 610rpx;
			// height: 282rpx;
			background: #FFFFFF;
			border-radius: 30rpx 30rpx 30rpx 30rpx;
			z-index: 110;
			padding-bottom: 100rpx;

			.top {
				padding: 52rpx 38rpx 42rpx 36rpx;

				.ipt_box {
					margin-top: 22rpx;
					display: flex;
					flex-wrap: nowrap;
					align-items: center;

					.text {
						width: 350rpx;
						font-weight: 400;
						font-size: 32rpx;
						color: #3D3D3D;
					}

					.ipt {
						padding: 10rpx 18rpx;
						display: flex;
						align-items: center;
						justify-content: space-between;
						margin-left: 26rpx;
						width: 420rpx;
						height: 64rpx;
						border-radius: 0rpx 0rpx 0rpx 0rpx;
						border: 2rpx solid #979797;

						.input {
							width: 80%;
						}
					}
				}

				.tip {
					width: 100%;
					text-align: center;
					font-weight: 700;
					font-size: 32rpx;
					color: #3D3D3D;
				}

				.txt {
					margin-top: 32rpx;
					width: 100%;
					text-align: center;
					font-weight: 500;
					font-size: 32rpx;
					color: #3D3D3D;
				}
			}

			.bot {
				position: absolute;

				width: 610rpx;
				// border-top: 2rpx solid #D8D8D8;
				display: flex;
				flex-wrap: nowrap;
				// height: 100%;
				bottom: -20rpx;

				.bot_left {
					border-radius: 0rpx 0rpx 0rpx 30rpx;
					width: 50%;
					height: 86rpx;
					display: flex;
					align-items: center;
					justify-content: center;
					font-weight: 500;
					font-size: 32rpx;
					color: #3D3D3D;
					background: #EEEEEE;
				}

				.bot_right {
					border-radius: 0rpx 0rpx 30rpx 0rpx;
					width: 50%;
					height: 86rpx;
					background: #4C97E7;
					display: flex;
					align-items: center;
					justify-content: center;
					color: #FFFFFF;
					// border-left: 2rpx solid #D8D8D8;
					font-weight: 500;
					font-size: 32rpx;
					// color: #4C97E7;

				}

			}
		}

		.warp_box {
			.swiper {
				.swiper-item {
					.card {
						margin: 16rpx auto;
						width: 750rpx;
						background: #fff;

						.btn_box {
							display: flex;
							flex-wrap: nowrap;
							align-items: center;
							width: 100%;
							height: 96rpx;

							.btn {
								display: flex;
								align-items: center;
								justify-content: center;
								font-weight: 400;
								font-size: 36rpx;
								color: #3D3D3D;
								width: 49%;
							}

							.btn_line {
								width: 0rpx;
								height: 51rpx;
								border: 2rpx solid #4C97E7;
							}
						}

						.order_info {
							padding: 26rpx 30rpx;
							display: flex;
							flex-wrap: wrap;

							.info_li {
								display: flex;
								flex-wrap: nowrap;
								width: 100%;
								font-weight: 400;
								font-size: 28rpx;
								color: #808080;
								.half_info_li:first-child{
									width: 60%;
								}
								.half_info_li {
									width: 40%;
									font-weight: 400;
									font-size: 28rpx;
									color: #808080;
								}
							}
						}

						.line {
							width: 750rpx;
							height: 22rpx;
							background: #F6F6F6;
							border-radius: 0rpx 0rpx 0rpx 0rpx;
						}

						.lines {
							width: 750rpx;
							height: 2rpx;
							background: #D8D8D8;
							// border: 2rpx solid #D8D8D8;
						}

						.top_info {
							padding: 24rpx 32rpx;
							display: flex;
							flex-wrap: nowrap;
							align-items: center;

							.top_info_left {
								width: 70%;
								font-weight: 400;
								font-size: 28rpx;
								color: #3D3D3D;
								white-space: nowrap;
								/* 禁止换行 */
								overflow: hidden;
								/* 超出部分隐藏 */
								text-overflow: ellipsis;
								/* 显示省略号 */
							}

							.top_info_right {
								display: flex;
								flex-wrap: nowrap;
								align-items: center;
								margin-left: auto;

								.yuan {
									margin-right: 12rpx;
									border-radius: 50%;
									width: 14rpx;
									height: 14rpx;
									background: #4C97E7;
								}

								font-weight: 400;
								font-size: 28rpx;
								color: #4C97E7;
							}
						}
					}
				}
			}
		}

		.tap {
			margin-top: 24rpx;
			width: 750rpx;
			display: flex;
			flex-wrap: nowrap;
			align-items: center;
			justify-content: space-around;

			.tap_cont {
				text-align: center;
				padding-bottom: 15rpx;
				width: 100rpx;
				font-weight: 500;
				font-size: 32rpx;
				color: #3D3D3D;
				border-bottom: 6rpx solid #fff;
			}

			.act1 {
				border-bottom: 6rpx solid #4C97E7;
				color: #4C97E7;
			}
		}

		.top_box {

			display: flex;
			flex-wrap: nowrap;
			align-items: center;
			padding: 28rpx 30rpx;
			// padding: 20rpx 0;

			margin: 0 auto;
			width: 672rpx;
			height: 100rpx;
			background: #FFFFFF;
			box-shadow: 0rpx 4rpx 22rpx 0rpx rgba(0, 0, 0, 0.07);
			border-radius: 10rpx 10rpx 10rpx 10rpx;

			.left_text {
				display: flex;
				flex-wrap: nowrap;
				align-items: center;
				width: 25%;
				font-weight: 400;
				font-size: 32rpx;
				color: #3D3D3D;

				.icon-xiangxia1 {
					font-size: 26rpx;
				}
			}

			.timebox {
				width: 75%;
				display: flex;
				flex-wrap: nowrap;
				align-items: center;
				margin-left: 34rpx;

				.left_time {
					text-align: center;
					margin-right: 6rpx;
					height: 50rpx;
					width: 45%;
					border: 2rpx solid #ccc;
					border-radius: 12rpx;
					font-weight: 400;
					font-size: 32rpx;
					color: #979797;
				}

				.right_time {
					text-align: center;
					margin-left: 6rpx;
					height: 50rpx;
					width: 45%;
					border: 2rpx solid #ccc;
					border-radius: 12rpx;
					font-weight: 400;
					font-size: 32rpx;
					color: #979797;
				}
			}
		}


	}
</style>