1
This commit is contained in:
		
							parent
							
								
									d274992900
								
							
						
					
					
						commit
						d05f9f7ee3
					
				
							
								
								
									
										120
									
								
								components/long-date/locale/zh-cn.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								components/long-date/locale/zh-cn.js
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,120 @@
 | 
			
		||||
//! moment.js locale configuration
 | 
			
		||||
//! locale : Chinese (China) [zh-cn]
 | 
			
		||||
//! author : suupic : https://github.com/suupic
 | 
			
		||||
//! author : Zeno Zeng : https://github.com/zenozeng
 | 
			
		||||
//! author : uu109 : https://github.com/uu109
 | 
			
		||||
 | 
			
		||||
import moment from '../moment';
 | 
			
		||||
 | 
			
		||||
export default moment.defineLocale('zh-cn', {
 | 
			
		||||
    months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split(
 | 
			
		||||
        '_'
 | 
			
		||||
    ),
 | 
			
		||||
    monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split(
 | 
			
		||||
        '_'
 | 
			
		||||
    ),
 | 
			
		||||
    weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
 | 
			
		||||
    weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'),
 | 
			
		||||
    weekdaysMin: '日_一_二_三_四_五_六'.split('_'),
 | 
			
		||||
    longDateFormat: {
 | 
			
		||||
        LT: 'HH:mm',
 | 
			
		||||
        LTS: 'HH:mm:ss',
 | 
			
		||||
        L: 'YYYY/MM/DD',
 | 
			
		||||
        LL: 'YYYY年M月D日',
 | 
			
		||||
        LLL: 'YYYY年M月D日Ah点mm分',
 | 
			
		||||
        LLLL: 'YYYY年M月D日ddddAh点mm分',
 | 
			
		||||
        l: 'YYYY/M/D',
 | 
			
		||||
        ll: 'YYYY年M月D日',
 | 
			
		||||
        lll: 'YYYY年M月D日 HH:mm',
 | 
			
		||||
        llll: 'YYYY年M月D日dddd HH:mm',
 | 
			
		||||
    },
 | 
			
		||||
    meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
 | 
			
		||||
    meridiemHour: function (hour, meridiem) {
 | 
			
		||||
        if (hour === 12) {
 | 
			
		||||
            hour = 0;
 | 
			
		||||
        }
 | 
			
		||||
        if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') {
 | 
			
		||||
            return hour;
 | 
			
		||||
        } else if (meridiem === '下午' || meridiem === '晚上') {
 | 
			
		||||
            return hour + 12;
 | 
			
		||||
        } else {
 | 
			
		||||
            // '中午'
 | 
			
		||||
            return hour >= 11 ? hour : hour + 12;
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    meridiem: function (hour, minute, isLower) {
 | 
			
		||||
        var hm = hour * 100 + minute;
 | 
			
		||||
        if (hm < 600) {
 | 
			
		||||
            return '凌晨';
 | 
			
		||||
        } else if (hm < 900) {
 | 
			
		||||
            return '早上';
 | 
			
		||||
        } else if (hm < 1130) {
 | 
			
		||||
            return '上午';
 | 
			
		||||
        } else if (hm < 1230) {
 | 
			
		||||
            return '中午';
 | 
			
		||||
        } else if (hm < 1800) {
 | 
			
		||||
            return '下午';
 | 
			
		||||
        } else {
 | 
			
		||||
            return '晚上';
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    calendar: {
 | 
			
		||||
        sameDay: '[今天]LT',
 | 
			
		||||
        nextDay: '[明天]LT',
 | 
			
		||||
        nextWeek: function (now) {
 | 
			
		||||
            if (now.week() !== this.week()) {
 | 
			
		||||
                return '[下]dddLT';
 | 
			
		||||
            } else {
 | 
			
		||||
                return '[本]dddLT';
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        lastDay: '[昨天]LT',
 | 
			
		||||
        lastWeek: function (now) {
 | 
			
		||||
            if (this.week() !== now.week()) {
 | 
			
		||||
                return '[上]dddLT';
 | 
			
		||||
            } else {
 | 
			
		||||
                return '[本]dddLT';
 | 
			
		||||
            }
 | 
			
		||||
        },
 | 
			
		||||
        sameElse: 'L',
 | 
			
		||||
    },
 | 
			
		||||
    dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/,
 | 
			
		||||
    ordinal: function (number, period) {
 | 
			
		||||
        switch (period) {
 | 
			
		||||
            case 'd':
 | 
			
		||||
            case 'D':
 | 
			
		||||
            case 'DDD':
 | 
			
		||||
                return number + '日';
 | 
			
		||||
            case 'M':
 | 
			
		||||
                return number + '月';
 | 
			
		||||
            case 'w':
 | 
			
		||||
            case 'W':
 | 
			
		||||
                return number + '周';
 | 
			
		||||
            default:
 | 
			
		||||
                return number;
 | 
			
		||||
        }
 | 
			
		||||
    },
 | 
			
		||||
    relativeTime: {
 | 
			
		||||
        future: '%s后',
 | 
			
		||||
        past: '%s前',
 | 
			
		||||
        s: '几秒',
 | 
			
		||||
        ss: '%d 秒',
 | 
			
		||||
        m: '1 分钟',
 | 
			
		||||
        mm: '%d 分钟',
 | 
			
		||||
        h: '1 小时',
 | 
			
		||||
        hh: '%d 小时',
 | 
			
		||||
        d: '1 天',
 | 
			
		||||
        dd: '%d 天',
 | 
			
		||||
        w: '1 周',
 | 
			
		||||
        ww: '%d 周',
 | 
			
		||||
        M: '1 个月',
 | 
			
		||||
        MM: '%d 个月',
 | 
			
		||||
        y: '1 年',
 | 
			
		||||
        yy: '%d 年',
 | 
			
		||||
    },
 | 
			
		||||
    week: {
 | 
			
		||||
        // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
 | 
			
		||||
        dow: 1, // Monday is the first day of the week.
 | 
			
		||||
        doy: 4, // The week that contains Jan 4th is the first week of the year.
 | 
			
		||||
    },
 | 
			
		||||
});
 | 
			
		||||
							
								
								
									
										283
									
								
								components/long-date/long-date.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										283
									
								
								components/long-date/long-date.vue
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,283 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view>
 | 
			
		||||
		<view class="long-data-picker">
 | 
			
		||||
			<picker-view indicator-class="select-line" :immediate-change="true" :indicator-style="itemHeight" @change="bindDateChange">
 | 
			
		||||
 | 
			
		||||
				<picker-view-column>
 | 
			
		||||
					<view class="long-datetime-item" v-for="(item,index) in dates" :key="index">{{item}}</view>
 | 
			
		||||
				</picker-view-column>
 | 
			
		||||
 | 
			
		||||
				<picker-view-column>
 | 
			
		||||
					<view class="long-datetime-item" v-for="(item,index) in hours" :key="index">{{item}}</view>
 | 
			
		||||
				</picker-view-column>
 | 
			
		||||
 | 
			
		||||
				<picker-view-column>
 | 
			
		||||
					<view class="long-datetime-item" v-for="(item,index) in minutes" :key="index">{{item}}</view>
 | 
			
		||||
				</picker-view-column>
 | 
			
		||||
 | 
			
		||||
			</picker-view>
 | 
			
		||||
		</view>
 | 
			
		||||
	</view>
 | 
			
		||||
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	import moment from './moment.js' //导入文件
 | 
			
		||||
	moment.locale('zh-cn')
 | 
			
		||||
	export default {
 | 
			
		||||
		name: "long-date",
 | 
			
		||||
		props: {
 | 
			
		||||
 | 
			
		||||
			chooseNum: {
 | 
			
		||||
				type: Number,
 | 
			
		||||
				default: 30
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				itemHeight: `height: ${uni.upx2px(88)}px;`,
 | 
			
		||||
				dates: [],
 | 
			
		||||
				hours: [],
 | 
			
		||||
				minutes: [],
 | 
			
		||||
				formatdates: []
 | 
			
		||||
			};
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
		computed: {
 | 
			
		||||
			//自动计算当前时间
 | 
			
		||||
			currentdateindex(nv) {
 | 
			
		||||
				console.log(nv)
 | 
			
		||||
				if (nv == 0) {
 | 
			
		||||
					let h = parseInt(moment().format("HH"))
 | 
			
		||||
					this.hours = []
 | 
			
		||||
					for (let i = h; i < 24; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.hours.push(str);
 | 
			
		||||
					}
 | 
			
		||||
					this.minutes = []
 | 
			
		||||
					let m = parseInt(moment().format("mm"))
 | 
			
		||||
					for (let i = 0; i < 60; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.minutes.push(str);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		},
 | 
			
		||||
		mounted() {
 | 
			
		||||
			this.initDate();
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			//初始化时间
 | 
			
		||||
			initDate() {
 | 
			
		||||
				let currentdate = moment().format("MMM Do");
 | 
			
		||||
				//设置日期数组
 | 
			
		||||
				this.dates = []
 | 
			
		||||
				//格式化日期数组
 | 
			
		||||
				this.formatdates = []
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
				for (let i = 0; i <= this.chooseNum; i++) {
 | 
			
		||||
					this.formatdates.push(moment().add(i, 'days').format("YYYY-MM-DD"))
 | 
			
		||||
					this.dates.push(moment().add(i, 'days').format("MMMDo dddd"))
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				let h = parseInt(moment().format("HH"))
 | 
			
		||||
				this.hours = []
 | 
			
		||||
				for (let i = h; i < 24; i++) {
 | 
			
		||||
					let str = i;
 | 
			
		||||
					if (i < 10) {
 | 
			
		||||
						str = '0' + str;
 | 
			
		||||
					} else {
 | 
			
		||||
						str = '' + str;
 | 
			
		||||
					}
 | 
			
		||||
					this.hours.push(str);
 | 
			
		||||
				}
 | 
			
		||||
				this.minutes = []
 | 
			
		||||
				let m = parseInt(moment().format("mm"))
 | 
			
		||||
				console.log(m);
 | 
			
		||||
				for (let i = 0; i < 60; i++) {
 | 
			
		||||
					let str = i;
 | 
			
		||||
					if (i < 10) {
 | 
			
		||||
						str = '0' + str;
 | 
			
		||||
					} else {
 | 
			
		||||
						str = '' + str;
 | 
			
		||||
					}
 | 
			
		||||
					this.minutes.push(str);
 | 
			
		||||
				}
 | 
			
		||||
				
 | 
			
		||||
			},
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
			//滚动切换时间
 | 
			
		||||
			bindDateChange(e) { //有效日期的滚动日期时间方法
 | 
			
		||||
				let valueArr = e.detail.value
 | 
			
		||||
				this.hours = []
 | 
			
		||||
				this.minutes = []
 | 
			
		||||
				if (valueArr[0] != 0) {
 | 
			
		||||
					for (let i = 0; i < 24; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.hours.push(str);
 | 
			
		||||
					}
 | 
			
		||||
					for (let i = 0; i < 60; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.minutes.push(str);
 | 
			
		||||
					}
 | 
			
		||||
				} else {
 | 
			
		||||
					let h = parseInt(moment().format("HH"))
 | 
			
		||||
					this.hours = []
 | 
			
		||||
					for (let i = h; i < 24; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.hours.push(str);
 | 
			
		||||
					}
 | 
			
		||||
					this.minutes = []
 | 
			
		||||
					let m = parseInt(moment().format("mm"))
 | 
			
		||||
					for (let i = 0; i < 60; i++) {
 | 
			
		||||
						let str = i;
 | 
			
		||||
						if (i < 10) {
 | 
			
		||||
							str = '0' + str;
 | 
			
		||||
						} else {
 | 
			
		||||
							str = '' + str;
 | 
			
		||||
						}
 | 
			
		||||
						this.minutes.push(str);
 | 
			
		||||
					}
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				let dateStr = this.formatdates[valueArr[0]];
 | 
			
		||||
				let hourStr = this.hours[valueArr[1]];
 | 
			
		||||
				let minuteStr = this.minutes[valueArr[2]];
 | 
			
		||||
				console.log(dateStr + ' ' + hourStr + ':' + minuteStr)
 | 
			
		||||
				this.$emit("select", {
 | 
			
		||||
					time: moment(dateStr + ' ' + hourStr + ':' + minuteStr).format("YYYY-MM-DD HH:mm")
 | 
			
		||||
				});
 | 
			
		||||
			}
 | 
			
		||||
 | 
			
		||||
		},
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style>
 | 
			
		||||
	.long-data {
 | 
			
		||||
		margin-top: 30rpx;
 | 
			
		||||
		height: 80rpx;
 | 
			
		||||
		background: #FFFFFF;
 | 
			
		||||
		line-height: 80rpx;
 | 
			
		||||
		padding-left: 30rpx;
 | 
			
		||||
		padding-right: 30rpx;
 | 
			
		||||
		border-bottom: 1px solid #eee;
 | 
			
		||||
		/* position: relative; */
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-check {
 | 
			
		||||
		height: 40rpx;
 | 
			
		||||
		width: 100%;
 | 
			
		||||
		background: #e54d42;
 | 
			
		||||
		position: absolute;
 | 
			
		||||
		left: 0;
 | 
			
		||||
		top: 18rpx;
 | 
			
		||||
		color: #fff;
 | 
			
		||||
		line-height: 45rpx;
 | 
			
		||||
		border-radius: 0rpx;
 | 
			
		||||
		padding: 0px 20rpx;
 | 
			
		||||
		font-size: 20rpx;
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		border-radius: 20rpx;
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-check-triangle {
 | 
			
		||||
		width: 0;
 | 
			
		||||
		height: 0;
 | 
			
		||||
		border-top: 12rpx solid transparent;
 | 
			
		||||
		border-left: 10rpx solid #e54d42;
 | 
			
		||||
		border-bottom: 12rpx solid transparent;
 | 
			
		||||
		position: absolute;
 | 
			
		||||
		right: 223rpx;
 | 
			
		||||
		top: 26rpx;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	.long-data-fl {
 | 
			
		||||
		float: left;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-fr {
 | 
			
		||||
		float: right;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-changeTime {
 | 
			
		||||
		color: #888;
 | 
			
		||||
		font-size: 25rpx;
 | 
			
		||||
		position: relative;
 | 
			
		||||
		text-align: right;
 | 
			
		||||
		padding: 0rpx 20rpx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-changeTimeIcon {
 | 
			
		||||
		color: #888;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-picker {
 | 
			
		||||
		width: 100%;
 | 
			
		||||
		height: 700rpx;
 | 
			
		||||
		overflow: hidden;
 | 
			
		||||
		background: #fff;
 | 
			
		||||
		transition: height 0.3s;
 | 
			
		||||
		margin-top: 30rpx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-datetime-item {
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		width: 100%;
 | 
			
		||||
		height: 88upx;
 | 
			
		||||
		line-height: 88upx;
 | 
			
		||||
		text-overflow: ellipsis;
 | 
			
		||||
		white-space: nowrap;
 | 
			
		||||
		font-size: 30upx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.long-data-picker picker-view {
 | 
			
		||||
		height: 100%;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// 修改原有的上下边框颜色
 | 
			
		||||
	::v-deep .select-line::after {
 | 
			
		||||
		border-bottom: 3px solid #0CA013;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	::v-deep .select-line::before {
 | 
			
		||||
		border-top: 3px solid #0CA013;
 | 
			
		||||
	}
 | 
			
		||||
</style>
 | 
			
		||||
							
								
								
									
										5662
									
								
								components/long-date/moment.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5662
									
								
								components/long-date/moment.js
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -1304,7 +1304,7 @@ export default {
 | 
			
		||||
.line {
 | 
			
		||||
	width: 690rpx;
 | 
			
		||||
	height: 1rpx;
 | 
			
		||||
	background: #F0F0F0;
 | 
			
		||||
	background: #eeeeee;
 | 
			
		||||
	margin: 30rpx 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1433,9 +1433,9 @@ export default {
 | 
			
		||||
	.line {
 | 
			
		||||
		width: 642rpx;
 | 
			
		||||
		height: 1rpx;
 | 
			
		||||
		background: #D9D9D9;
 | 
			
		||||
		box-shadow: 1rpx 1rpx 0rpx 0rpx rgba(102, 102, 102, 0.25);
 | 
			
		||||
		border-radius: 0rpx 0rpx 0rpx 0rpx;
 | 
			
		||||
		background: #eeeeee;
 | 
			
		||||
		//box-shadow: 1rpx 1rpx 0rpx 0rpx rgba(102, 102, 102, 0.25);
 | 
			
		||||
		//border-radius: 0rpx 0rpx 0rpx 0rpx;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.times {
 | 
			
		||||
 | 
			
		||||
@ -1249,7 +1249,7 @@
 | 
			
		||||
	.line {
 | 
			
		||||
		width: 690rpx;
 | 
			
		||||
		height: 2rpx;
 | 
			
		||||
		background: #F0F0F0;
 | 
			
		||||
		background: #eeeeee;
 | 
			
		||||
		margin: 19rpx 0;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@ -1400,9 +1400,7 @@
 | 
			
		||||
		.line {
 | 
			
		||||
			width: 642rpx;
 | 
			
		||||
			height: 1rpx;
 | 
			
		||||
			background: #F0F0F0;
 | 
			
		||||
			box-shadow: 1rpx 1rpx 0rpx 0rpx rgba(102, 102, 102, 0.25);
 | 
			
		||||
			border-radius: 0rpx 0rpx 0rpx 0rpx;
 | 
			
		||||
			background: #eeeeee;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		.times {
 | 
			
		||||
 | 
			
		||||
@ -5,7 +5,7 @@
 | 
			
		||||
			<view class="text_1">恭喜您报名成功</view>
 | 
			
		||||
			<view class="text_2">请按时参加活动并出示二维码核销</view>
 | 
			
		||||
			<view class="btn_1" @click="toDetail(status)">查看支付订单</view>
 | 
			
		||||
			<view class="btn_2" @click="goHome">返回首页</view>
 | 
			
		||||
			<view class="btn_2" @click="goHome">查看更多活动</view>
 | 
			
		||||
			
 | 
			
		||||
		</view>
 | 
			
		||||
	</view>
 | 
			
		||||
 | 
			
		||||
@ -38,7 +38,7 @@
 | 
			
		||||
						<input type="text" placeholder="请填写真实姓名" class="input" v-model="form.name" />
 | 
			
		||||
					</view>
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="height: 1px;background-color: #F0F0F0;width: 100%;margin-top: 20rpx;"></view>
 | 
			
		||||
				<view style="height: 1px;background-color: #eeeeee;width: 100%;margin-top: 20rpx;"></view>
 | 
			
		||||
				<view style="display: flex;align-items: center;justify-content: space-between;padding: 30rpx 0rpx;">
 | 
			
		||||
					<view style="font-size: 30rpx;">
 | 
			
		||||
						身份证号
 | 
			
		||||
@ -47,7 +47,7 @@
 | 
			
		||||
						<input type="idcard" placeholder="请填写身份证号" class="input" v-model="form.idnum" />
 | 
			
		||||
					</view>
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="height: 1px;background-color: #F0F0F0;width: 100%;"></view>
 | 
			
		||||
				<view style="height: 1px;background-color: #eeeeee;width: 100%;"></view>
 | 
			
		||||
				<view style="font-size: 24rpx;color: #9C9C9C;margin-top: 40rpx;">
 | 
			
		||||
					<text>你的个人信息我们将严格保密并仅用于投保使用,详情可查看</text>
 | 
			
		||||
					<text style="color: #0CA013;" @click="go('/packageB/privacy?type=privacy')">《隐私政策》</text>
 | 
			
		||||
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
					<input placeholder-class="plasty" placeholder="请输入您的姓名" class="input" v-model="form.name" />
 | 
			
		||||
				</view>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view style="height: 1px;background-color: #F0F0F0;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="height: 1px;background-color: #eeeeee;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="display: flex;align-items: center;justify-content: space-between;padding: 20rpx 0;">
 | 
			
		||||
				<view style="font-size: 32rpx;font-weight: 600;">
 | 
			
		||||
					身份证
 | 
			
		||||
@ -18,7 +18,7 @@
 | 
			
		||||
					<input type="idcard" placeholder-class="plasty" placeholder="请输入您的身份证号" class="input" v-model="form.id_number" />
 | 
			
		||||
				</view>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view style="height: 1px;background-color: #F0F0F0;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="height: 1px;background-color: #eeeeee;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="display: flex;align-items: center;justify-content: space-between;padding: 20rpx 0;">
 | 
			
		||||
				<view style="font-size: 32rpx;font-weight: 600;">
 | 
			
		||||
					开户行
 | 
			
		||||
@ -28,7 +28,7 @@
 | 
			
		||||
						v-model="form.bank_name" />
 | 
			
		||||
				</view>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view style="height: 1px;background-color: #F0F0F0;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="height: 1px;background-color: #eeeeee;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="display: flex;align-items: center;justify-content: space-between;padding: 20rpx 0;">
 | 
			
		||||
				<view style="font-size: 32rpx;font-weight: 600;">
 | 
			
		||||
					卡号
 | 
			
		||||
@ -37,7 +37,7 @@
 | 
			
		||||
					<input placeholder-class="plasty" placeholder="银行卡号" class="input" v-model="form.bank_user_name" />
 | 
			
		||||
				</view>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view style="height: 1px;background-color: #F0F0F0;margin: 20rpx 0;"></view>
 | 
			
		||||
			<view style="height: 1px;background-color: #eeeeee;margin: 20rpx 0;"></view>
 | 
			
		||||
		</view>
 | 
			
		||||
		<view class="btn_1" @click="save()">保存</view>
 | 
			
		||||
	</view>
 | 
			
		||||
 | 
			
		||||
@ -27,7 +27,7 @@
 | 
			
		||||
				<text style="font-size: 70rpx;color: #3D3D3D;font-weight: 700;margin-left: 20rpx;">{{
 | 
			
		||||
					settleInfo.settled_amount }}</text>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view style="background-color: #F0F0F0;height: 1px;width: 100%;margin-top: 20rpx;"></view>
 | 
			
		||||
			<view style="background-color: #eeeeee;height: 1px;width: 100%;margin-top: 20rpx;"></view>
 | 
			
		||||
			<view style="line-height:40rpx;">
 | 
			
		||||
				<view style="font-size: 24rpx;color: #000000;font-weight: 600;margin-top: 20rpx;">
 | 
			
		||||
					<view>1、提现金额:</view>
 | 
			
		||||
 | 
			
		||||
@ -106,7 +106,7 @@
 | 
			
		||||
					style="font-weight: 400;color: #3D3D3D;font-size: 24rpx;background: #EEEEEE;border-radius: 6rpx;padding: 30rpx 20rpx;">
 | 
			
		||||
					{{ item.reason }}
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="background: #F0F0F0;width: 100%;height: 1px;margin: 40rpx 0rpx;"></view>
 | 
			
		||||
				<view style="background: #eeeeee;width: 100%;height: 1px;margin: 40rpx 0rpx;"></view>
 | 
			
		||||
			</view>
 | 
			
		||||
			<u-loadmore style="margin-bottom: 60rpx;" :status="loadStatus" />
 | 
			
		||||
		</view>
 | 
			
		||||
 | 
			
		||||
@ -191,7 +191,8 @@
 | 
			
		||||
 | 
			
		||||
			<!-- 声明 -->
 | 
			
		||||
			<u-popup @touchmove.native.stop.prevent :closeable="false" :show="show" :round="10" mode="center"
 | 
			
		||||
				@close="close" @open="open" :custom-style="popupStyle" :closeOnClickOverlay="false">
 | 
			
		||||
				@close="close" @open="open" :custom-style="popupStyle" :safeAreaInsetBottom="false"
 | 
			
		||||
				:closeOnClickOverlay="false">
 | 
			
		||||
				<span style="font-size: 40rpx;font-weight: 800;height: 120rpx;">《责任承诺确认书》</span>
 | 
			
		||||
				<scroll-view ref="scrollView" :scroll-top="scrollTop" :show-scrollbar='true'
 | 
			
		||||
					@scrolltolower="handleScroll" scroll-y="true" style="height: 800rpx;">
 | 
			
		||||
@ -203,9 +204,8 @@
 | 
			
		||||
					<span class="zhixiao" v-if="agreeShow == false">我同意</span>
 | 
			
		||||
					<span class="zhixiao shows_zhidao" v-if="agreeShow == true" @click="change">我同意</span>
 | 
			
		||||
				</view> -->
 | 
			
		||||
				<view
 | 
			
		||||
					style="gap: 20rpx;margin-top: 50rpx;width: 100%;height: 0px;display: flex;justify-content: space-between;align-items: center;">
 | 
			
		||||
					<view class="btn_3" @click="show = false">取消</view>
 | 
			
		||||
				<view style="gap: 20rpx;width: 100%;display: flex;justify-content: space-between;align-items: center;">
 | 
			
		||||
					<view class="btn_4" @click="show = false">取消</view>
 | 
			
		||||
					<view class="btn_3" v-if="agreeShow == false">我同意</view>
 | 
			
		||||
					<view class="btn_2" v-if="agreeShow == true" @click="change()">我同意</view>
 | 
			
		||||
				</view>
 | 
			
		||||
@ -213,7 +213,7 @@
 | 
			
		||||
 | 
			
		||||
			<!-- 身份证是否认证 -->
 | 
			
		||||
			<u-popup @touchmove.native.stop.prevent :closeable="true" :show="cardShow" :round="10" mode="center"
 | 
			
		||||
				@close="cardShow = false" :custom-style="{
 | 
			
		||||
				@close="cardShow = false" :safeAreaInsetBottom="false" :custom-style="{
 | 
			
		||||
					width: '600rpx',
 | 
			
		||||
					padding: '24rpx 24rpx 20rpx 24rpx',
 | 
			
		||||
					margin: '0 auto',
 | 
			
		||||
@ -228,8 +228,7 @@
 | 
			
		||||
					style="font-weight: 400;color: #3D3D3D;text-align: center;line-height: 36rpx;font-size: 26rpx;margin-top: 40rpx;">
 | 
			
		||||
					只差最后一步!完成身份认证,即可成为【搭+】认证活动官,开始分享您的精彩活动。
 | 
			
		||||
				</view>
 | 
			
		||||
				<view
 | 
			
		||||
					style="gap: 20px;margin-top: 30px;width: 100%;height: 40rpx;display: flex;justify-content: space-between;align-items: center;">
 | 
			
		||||
				<view style="gap: 20px;width: 100%;display: flex;justify-content: space-between;align-items: center;">
 | 
			
		||||
					<view class="btn_3" @click="cardShow = false">取消</view>
 | 
			
		||||
					<view class="btn_2" @click="openUrl('/packageB/card/index')">我同意</view>
 | 
			
		||||
				</view>
 | 
			
		||||
@ -250,11 +249,12 @@
 | 
			
		||||
						<scroll-view scroll-y="true" class="flex align-items allbqs">
 | 
			
		||||
							<view class="titles_fl">已选择</view>
 | 
			
		||||
							<view class="flex align-items allmybqs">
 | 
			
		||||
								<view class="flex align-items bqpiece" v-for="(item_bq, index) in list" :key="index">
 | 
			
		||||
								<view class="flex align-items bqpiece" v-for="(item_bq, index) in list" :key="index"
 | 
			
		||||
									@click="removebq(index)">
 | 
			
		||||
									<span>
 | 
			
		||||
										{{ item_bq.name }}
 | 
			
		||||
									</span>
 | 
			
		||||
									<u-icon name="close" color="#babdc7" @click="removebq(index)"></u-icon>
 | 
			
		||||
									<u-icon name="close" color="#babdc7"></u-icon>
 | 
			
		||||
								</view>
 | 
			
		||||
							</view>
 | 
			
		||||
 | 
			
		||||
@ -262,8 +262,8 @@
 | 
			
		||||
 | 
			
		||||
							<view style="display: flex; flex-wrap: wrap;">
 | 
			
		||||
								<view class="flex align-items" :class="['bqpiece', { active: current === index }]"
 | 
			
		||||
									v-for="(item, index) in bqList" :key="index">
 | 
			
		||||
									<span @click="addbq(item, index)">
 | 
			
		||||
									v-for="(item, index) in bqList" :key="index" @click="addbq(item, index)">
 | 
			
		||||
									<span>
 | 
			
		||||
										{{ item.name }}
 | 
			
		||||
									</span>
 | 
			
		||||
								</view>
 | 
			
		||||
@ -277,20 +277,51 @@
 | 
			
		||||
				</view>
 | 
			
		||||
			</u-popup>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
			<!-- 活动时间 -->
 | 
			
		||||
			<u-datetime-picker @cancel="datecel" ref="dateRef" title="开始时间" :minDate="minDate" confirmText="下一步"
 | 
			
		||||
				@confirm="datefirm" :show="dateShow" v-model="form.date" mode="datetime"></u-datetime-picker>
 | 
			
		||||
			<u-datetime-picker @cancel="datecel1" ref="dateRef" title="结束时间" :minDate="minDate1" @confirm="datefirm1"
 | 
			
		||||
				:show="dateShow1" v-model="form.date1" mode="datetime"></u-datetime-picker>
 | 
			
		||||
			<u-popup :show="dateShow" mode="bottom" round="20"
 | 
			
		||||
				:customStyle="{ 'width': '750rpx', 'height': '1040rpx','zIndex': '999'}" :closeable="false"
 | 
			
		||||
				@close="dateShow = false" :closeOnClickOverlay="false">
 | 
			
		||||
				<view style="display: flex;justify-content: space-between;align-items: center;padding: 30rpx;">
 | 
			
		||||
					<view style="font-size: 28rpx;color: #9C9C9C;" @click="dateShow = false">取消</view>
 | 
			
		||||
					<view style="font-size: 36rpx;color: #3D3D3D;font-weight: 600;" v-if="hdIndex == 1">开始时间</view>
 | 
			
		||||
					<view style="font-size: 36rpx;color: #3D3D3D;font-weight: 600;" v-if="hdIndex == 2">结束时间</view>
 | 
			
		||||
					<view style="font-size: 28rpx;color: #3D3D3D;" @click="hdnext()" v-if="hdIndex == 1">下一步</view>
 | 
			
		||||
					<view style="font-size: 28rpx;color: #3D3D3D;" @click="hdok()" v-if="hdIndex == 2">确认</view>
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="height: 1px;background-color: #EEEEEE;width: 100%;"></view>
 | 
			
		||||
				<view style="height: 700rpx;">
 | 
			
		||||
					<long-date chooseNum="90" @select="datefirm($event,hdIndex)"></long-date>
 | 
			
		||||
				</view>
 | 
			
		||||
			</u-popup>
 | 
			
		||||
			
 | 
			
		||||
			<!-- 报名时间 -->
 | 
			
		||||
			<u-popup :show="birthShow" mode="bottom" round="20"
 | 
			
		||||
				:customStyle="{ 'width': '750rpx', 'height': '1040rpx','zIndex': '999'}" :closeable="false"
 | 
			
		||||
				@close="birthShow = false" :closeOnClickOverlay="false">
 | 
			
		||||
				<view style="display: flex;justify-content: space-between;align-items: center;padding: 30rpx;">
 | 
			
		||||
					<view style="font-size: 28rpx;color: #9C9C9C;" @click="birthShow = false">取消</view>
 | 
			
		||||
					<view style="font-size: 36rpx;color: #3D3D3D;font-weight: 600;" v-if="bmIndex == 1">开始时间</view>
 | 
			
		||||
					<view style="font-size: 36rpx;color: #3D3D3D;font-weight: 600;" v-if="bmIndex == 2">结束时间</view>
 | 
			
		||||
					<view style="font-size: 28rpx;color: #3D3D3D;" @click="bmnext()" v-if="bmIndex == 1">下一步</view>
 | 
			
		||||
					<view style="font-size: 28rpx;color: #3D3D3D;" @click="bmok()" v-if="bmIndex == 2">确认</view>
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="height: 1px;background-color: #EEEEEE;width: 100%;"></view>
 | 
			
		||||
				<view style="height: 700rpx;">
 | 
			
		||||
					<long-date chooseNum="90" @select="birthConfirm($event,bmIndex)"></long-date>
 | 
			
		||||
				</view>
 | 
			
		||||
			</u-popup>
 | 
			
		||||
			<!-- 活动时间 -->
 | 
			
		||||
			<!-- <u-datetime-picker @cancel="datecel" ref="dateRef" title="开始时间" :minDate="minDate" confirmText="下一步"
 | 
			
		||||
				@confirm="datefirm" :show="dateShow" v-model="form.date" mode="datetime"></u-datetime-picker> -->
 | 
			
		||||
			<!-- <u-datetime-picker @cancel="datecel1" ref="dateRef" title="结束时间" :minDate="minDate1" @confirm="datefirm1"
 | 
			
		||||
				:show="dateShow1" v-model="form.date1" mode="datetime"></u-datetime-picker> -->
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
			<!-- 报名时间 -->
 | 
			
		||||
			<u-datetime-picker @cancel="birthCancel" ref="birthRef" title="开始时间" :minDate="minDate"
 | 
			
		||||
			<!-- <u-datetime-picker @cancel="birthCancel" ref="birthRef" title="开始时间" :minDate="minDate"
 | 
			
		||||
				@confirm="birthConfirm" :show="birthShow" v-model="form.birth" mode="datetime"></u-datetime-picker>
 | 
			
		||||
			<u-datetime-picker @cancel="birthCancel1" ref="birthRef" title="结束时间" :minDate="minDate1"
 | 
			
		||||
				@confirm="birthConfirm1" :show="birthShow1" v-model="form.birth1" mode="datetime"></u-datetime-picker>
 | 
			
		||||
				@confirm="birthConfirm1" :show="birthShow1" v-model="form.birth1" mode="datetime"></u-datetime-picker> -->
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		</view>
 | 
			
		||||
@ -300,12 +331,18 @@
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
	import dayjs from 'dayjs';
 | 
			
		||||
	import longDate from "@/components/long-date/long-date.vue"
 | 
			
		||||
	import {
 | 
			
		||||
		dateWeek
 | 
			
		||||
		dateWeek,dateWeekData
 | 
			
		||||
	} from '../../utils/dateFormat'
 | 
			
		||||
	export default {
 | 
			
		||||
		components: {
 | 
			
		||||
			longDate
 | 
			
		||||
		},
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				bmIndex:1,
 | 
			
		||||
				hdIndex:1,
 | 
			
		||||
				agreeAdd: false,
 | 
			
		||||
				timer: null,
 | 
			
		||||
				timeLog: 0,
 | 
			
		||||
@ -388,11 +425,19 @@
 | 
			
		||||
				fileList1: [], // 用于存储第一个上传组件的文件列表
 | 
			
		||||
				list1: '', // 存储第一个上传组件的图片URL,最多3张
 | 
			
		||||
				//活动转换的时间
 | 
			
		||||
				times_b: '',
 | 
			
		||||
				times_e: '',
 | 
			
		||||
				times_b: '',//开始时间
 | 
			
		||||
				times_e: '',//结束时间
 | 
			
		||||
				
 | 
			
		||||
				times_b_int: '',//开始时间
 | 
			
		||||
				times_e_int: '',//结束时间
 | 
			
		||||
				
 | 
			
		||||
				//报名转换的时间
 | 
			
		||||
				times_sinb: '',
 | 
			
		||||
				times_sine: '',
 | 
			
		||||
				times_sinb: '', //开始时间
 | 
			
		||||
				times_sine: '', //结束时间
 | 
			
		||||
				
 | 
			
		||||
				times_sinb_int: '', //开始时间
 | 
			
		||||
				times_sine_int: '', //结束时间
 | 
			
		||||
				
 | 
			
		||||
				qunQrcode: '',
 | 
			
		||||
				boxHeight: 0,
 | 
			
		||||
				cardShow: false,
 | 
			
		||||
@ -426,6 +471,9 @@
 | 
			
		||||
			}
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			Time(val) {
 | 
			
		||||
				console.log(val);
 | 
			
		||||
			},
 | 
			
		||||
			openUrl(url) {
 | 
			
		||||
				uni.navigateTo({
 | 
			
		||||
					url: url
 | 
			
		||||
@ -603,27 +651,120 @@
 | 
			
		||||
				return formattedDate;
 | 
			
		||||
			},
 | 
			
		||||
			dateShowHidden() {
 | 
			
		||||
				this.hdIndex=1;
 | 
			
		||||
				this.dateShow = true;
 | 
			
		||||
			},
 | 
			
		||||
			birthShowHidden() {
 | 
			
		||||
				this.bmIndex=1;
 | 
			
		||||
				this.birthShow = true;
 | 
			
		||||
			},
 | 
			
		||||
 | 
			
		||||
			// 活动开始时间
 | 
			
		||||
			datefirm(e) {
 | 
			
		||||
			datefirm(e, index) {
 | 
			
		||||
				console.log(e)
 | 
			
		||||
				// this.form.date = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				this.times_b = this.dateWeeks(e.value / 1000);
 | 
			
		||||
				this.dateShow = false
 | 
			
		||||
				this.dateShow1 = true
 | 
			
		||||
				var time = e.time;
 | 
			
		||||
				if (index == 1) {
 | 
			
		||||
					//this.form.date = time;
 | 
			
		||||
					this.times_b = time;
 | 
			
		||||
					this.times_b_int=time;
 | 
			
		||||
				} else {
 | 
			
		||||
					this.times_e = time;
 | 
			
		||||
					this.times_e_int=time;
 | 
			
		||||
					//this.dateShow = false
 | 
			
		||||
					this.form.time = this.times_b + ' - ' + this.times_e
 | 
			
		||||
				}
 | 
			
		||||
				//this.dateShow1 = true
 | 
			
		||||
 | 
			
		||||
				//this.form.date = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				//this.times_b = this.dateWeeks(e.value / 1000);
 | 
			
		||||
				//this.dateShow = false
 | 
			
		||||
				//this.dateShow1 = true
 | 
			
		||||
			},
 | 
			
		||||
			// 活动结束时间
 | 
			
		||||
			datefirm1(e) {
 | 
			
		||||
				console.log(e)
 | 
			
		||||
				// this.form.date1 = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				this.times_e = this.dateWeeks(e.value / 1000);
 | 
			
		||||
			
 | 
			
		||||
			hdnext(){
 | 
			
		||||
				//获取当前时间
 | 
			
		||||
				const currentTime = dayjs().format('YYYY-MM-DD HH');
 | 
			
		||||
				var b = currentTime+':00';
 | 
			
		||||
				if(this.times_b == '' || this.times_b==null){
 | 
			
		||||
					//判断是否this.times_b小于当前时间 用的是年月日而不是时间戳
 | 
			
		||||
					if(this.isBeforeNow(b)){
 | 
			
		||||
						uni.$u.toast('活动开始时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_b = b;
 | 
			
		||||
				}else{
 | 
			
		||||
					if(this.isBeforeNow(this.times_b)){
 | 
			
		||||
						uni.$u.toast('活动开始时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					//报名结束时间 < 活动开始时间
 | 
			
		||||
					// 如果date1 < date2,返回true 
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_b,this.times_sine_int) && this.times_sine_int!=''){
 | 
			
		||||
						uni.$u.toast('活动开始时间不能小于报名结束时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					//this.times_b = dateWeekData(this.times_b);
 | 
			
		||||
				}
 | 
			
		||||
				this.hdIndex=2;
 | 
			
		||||
			},
 | 
			
		||||
			hdok(){
 | 
			
		||||
				const currentTime = dayjs().format('YYYY-MM-DD HH');
 | 
			
		||||
				var b = currentTime+':00';
 | 
			
		||||
				if(this.times_e == '' || this.times_e==null){
 | 
			
		||||
					
 | 
			
		||||
					//判断是否this.times_e小于当前时间 用的是年月日而不是时间戳
 | 
			
		||||
					if(this.isBeforeNow(b)){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_e,this.times_b)){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					//报名结束时间 < 活动开始时间
 | 
			
		||||
					// 如果date1 < date2,返回true 
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_e,this.times_sine_int) && this.times_sine_int!=''){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于报名结束时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_e = b;
 | 
			
		||||
				}else{
 | 
			
		||||
					if(this.isBeforeNow(this.times_e)){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					//报名结束时间 < 活动开始时间
 | 
			
		||||
					// 如果date1 < date2,返回true 
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_e,this.times_sine_int) && this.times_sine_int!=''){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于报名结束时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_e = dateWeekData(this.times_e);
 | 
			
		||||
					this.times_b = dateWeekData(this.times_b);
 | 
			
		||||
				}
 | 
			
		||||
				this.form.time = this.times_b + ' - ' + this.times_e
 | 
			
		||||
				this.dateShow1 = false
 | 
			
		||||
				this.dateShow=false;
 | 
			
		||||
				// if(this.times_e == '' || this.times_e==null){
 | 
			
		||||
				// 	const currentTime = dayjs().format('YYYY-MM-DD HH');
 | 
			
		||||
				// 	this.times_e = dateWeekData(currentTime+'00');
 | 
			
		||||
				// 	this.form.time = this.times_b + ' - ' + this.times_e
 | 
			
		||||
				// }
 | 
			
		||||
				// this.dateShow=false;
 | 
			
		||||
			},
 | 
			
		||||
			isBeforeNow(dateTimeStr) {
 | 
			
		||||
			    // 替换空格为'T'以兼容ISO格式(部分浏览器需要)
 | 
			
		||||
			    const isoFormattedStr = dateTimeStr.replace('  ', 'T');
 | 
			
		||||
			    const inputDate = new Date(isoFormattedStr);
 | 
			
		||||
			    const now = new Date();
 | 
			
		||||
			    
 | 
			
		||||
			    return inputDate < now;
 | 
			
		||||
			},
 | 
			
		||||
			isDateTimeBefore(datetimeStr1, datetimeStr2) {
 | 
			
		||||
			    // 转换为Date对象(兼容"YYYY-MM-DD HH:mm:ss"格式)
 | 
			
		||||
			    const date1 = new Date(datetimeStr1.replace('  ', 'T') + 'Z');
 | 
			
		||||
			    const date2 = new Date(datetimeStr2.replace('  ', 'T') + 'Z');
 | 
			
		||||
			    
 | 
			
		||||
			    return date1 <= date2; // 如果date1早于date2,返回true 
 | 
			
		||||
			},
 | 
			
		||||
			datecel(e) {
 | 
			
		||||
				this.dateShow = false
 | 
			
		||||
@ -632,18 +773,86 @@
 | 
			
		||||
				this.dateShow1 = false
 | 
			
		||||
			},
 | 
			
		||||
			// 报名开始日期
 | 
			
		||||
			birthConfirm(e) {
 | 
			
		||||
			birthConfirm(e,index) {
 | 
			
		||||
				// this.form.birth = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				this.times_sinb = this.dateWeeks(e.value / 1000);
 | 
			
		||||
				this.birthShow = false
 | 
			
		||||
				this.birthShow1 = true
 | 
			
		||||
				// this.times_sinb = this.dateWeeks(e.value / 1000);
 | 
			
		||||
				// this.birthShow = false
 | 
			
		||||
				// this.birthShow1 = true
 | 
			
		||||
				console.log(e)
 | 
			
		||||
				var time = e.time;
 | 
			
		||||
				if (index == 1) {
 | 
			
		||||
					//this.form.date = time;
 | 
			
		||||
					this.times_sinb = time;
 | 
			
		||||
					this.times_sinb_int = time;
 | 
			
		||||
				} else {
 | 
			
		||||
					this.times_sine = time;
 | 
			
		||||
					this.times_sine_int = time;
 | 
			
		||||
					//this.dateShow = false
 | 
			
		||||
					this.form.sign_time = this.times_sinb + ' - ' + this.times_sine
 | 
			
		||||
				}
 | 
			
		||||
			},
 | 
			
		||||
			// 报名结束日期
 | 
			
		||||
			birthConfirm1(e) {
 | 
			
		||||
				// this.form.birth1 = dayjs(e.value).format('YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				this.times_sine = this.dateWeeks(e.value / 1000);
 | 
			
		||||
			bmnext(){
 | 
			
		||||
				//获取当前时间
 | 
			
		||||
				const currentTime = dayjs().format('YYYY-MM-DD HH');
 | 
			
		||||
				if(this.times_sinb == '' || this.times_sinb==null){
 | 
			
		||||
					var b = currentTime+':00';
 | 
			
		||||
					//判断是否this.times_sinb小于当前时间 用的是年月日而不是时间戳
 | 
			
		||||
					if(this.isBeforeNow(b)){
 | 
			
		||||
						uni.$u.toast('报名开始时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_sinb = b;
 | 
			
		||||
				}else{
 | 
			
		||||
					if(this.isBeforeNow(this.times_sinb)){
 | 
			
		||||
						uni.$u.toast('报名开始时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_b_int,this.times_sinb_int) && this.times_b_int!=''){
 | 
			
		||||
						uni.$u.toast('报名开始时间不能大于活动开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					//this.times_sinb = dateWeekData(this.times_sinb);
 | 
			
		||||
				}
 | 
			
		||||
				this.bmIndex=2;
 | 
			
		||||
			},
 | 
			
		||||
			bmok(){
 | 
			
		||||
				const currentTime = dayjs().format('YYYY-MM-DD HH');
 | 
			
		||||
				var b = currentTime+':00';
 | 
			
		||||
				if(this.times_sine == '' || this.times_sine==null){
 | 
			
		||||
					
 | 
			
		||||
					//判断是否this.times_sine小于当前时间 用的是年月日而不是时间戳
 | 
			
		||||
					if(this.isBeforeNow(b)){
 | 
			
		||||
						uni.$u.toast('报名结束时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_sine,this.times_sinb)){
 | 
			
		||||
						uni.$u.toast('活动结束时间不能小于开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_b_int,this.times_sine_int) && this.times_b_int!=''){
 | 
			
		||||
						uni.$u.toast('报名结束时间不能大于活动开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_sine = b;
 | 
			
		||||
				}else{
 | 
			
		||||
					if(this.isBeforeNow(this.times_sine)){
 | 
			
		||||
						uni.$u.toast('报名结束时间不能小于当前时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					// 如果date1早于date2,返回true 
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_sine,this.times_sinb)){
 | 
			
		||||
						uni.$u.toast('报名结束时间不能小于开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					if(this.isDateTimeBefore(this.times_b_int,this.times_sine_int) && this.times_b_int!=''){
 | 
			
		||||
						uni.$u.toast('报名结束时间不能大于活动开始时间');
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					this.times_sine = dateWeekData(this.times_sine);
 | 
			
		||||
					this.times_sinb = dateWeekData(this.times_sinb);
 | 
			
		||||
				}
 | 
			
		||||
				this.form.sign_time = this.times_sinb + ' - ' + this.times_sine
 | 
			
		||||
				this.birthShow1 = false
 | 
			
		||||
				this.birthShow=false;
 | 
			
		||||
			},
 | 
			
		||||
			birthCancel() {
 | 
			
		||||
				this.birthShow = false
 | 
			
		||||
@ -813,8 +1022,8 @@
 | 
			
		||||
				});
 | 
			
		||||
				for (let i = 0; i < lists.length; i++) {
 | 
			
		||||
					const result = await this.uploadFilePromise(lists[i].url, categoryMap[event.name - 1].category);
 | 
			
		||||
					if(result==''){
 | 
			
		||||
						this.fileList1=[];
 | 
			
		||||
					if (result == '') {
 | 
			
		||||
						this.fileList1 = [];
 | 
			
		||||
						return;
 | 
			
		||||
					}
 | 
			
		||||
					let item = this[`fileList${event.name}`][fileListLen];
 | 
			
		||||
@ -855,11 +1064,11 @@
 | 
			
		||||
									icon: 'none',
 | 
			
		||||
									duration: 1000
 | 
			
		||||
								});
 | 
			
		||||
								setTimeout(()=>{
 | 
			
		||||
								setTimeout(() => {
 | 
			
		||||
									uni.switchTab({
 | 
			
		||||
										url: '/pages/my/index',
 | 
			
		||||
									})
 | 
			
		||||
								},1000)
 | 
			
		||||
								}, 1000)
 | 
			
		||||
								resolve('');
 | 
			
		||||
							}
 | 
			
		||||
							resolve(js.data.url);
 | 
			
		||||
@ -1032,10 +1241,8 @@
 | 
			
		||||
					});
 | 
			
		||||
					return;
 | 
			
		||||
				}
 | 
			
		||||
				let hdtime = dayjs(this.form.date).format('YYYY-MM-DD HH:mm:ss') + ' - ' + dayjs(this.form.date1).format(
 | 
			
		||||
					'YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				let bmtime = dayjs(this.form.birth).format('YYYY-MM-DD HH:mm:ss') + ' - ' + dayjs(this.form.birth1).format(
 | 
			
		||||
					'YYYY-MM-DD HH:mm:ss');
 | 
			
		||||
				let hdtime = this.times_b_int + ' - ' + this.times_e_int;
 | 
			
		||||
				let bmtime = this.times_sinb_int +' - ' + this.times_sine_int;
 | 
			
		||||
				params = {
 | 
			
		||||
					title: this.form.title,
 | 
			
		||||
					cate_ids: this.form.cate_ids,
 | 
			
		||||
@ -1661,4 +1868,20 @@
 | 
			
		||||
		margin-top: 40rpx;
 | 
			
		||||
		z-index: 100;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	.btn_4 {
 | 
			
		||||
		width: 50%;
 | 
			
		||||
		height: 80rpx;
 | 
			
		||||
		background: #ffffff;
 | 
			
		||||
		border: 1px solid #999999;
 | 
			
		||||
		border-radius: 198rpx 198rpx 198rpx 198rpx;
 | 
			
		||||
		font-family: YouSheBiaoTiHei, YouSheBiaoTiHei;
 | 
			
		||||
		font-weight: 400;
 | 
			
		||||
		font-size: 32rpx;
 | 
			
		||||
		color: #999999;
 | 
			
		||||
		line-height: 80rpx;
 | 
			
		||||
		text-align: center;
 | 
			
		||||
		margin-top: 40rpx;
 | 
			
		||||
		z-index: 100;
 | 
			
		||||
	}
 | 
			
		||||
</style>
 | 
			
		||||
@ -138,7 +138,8 @@
 | 
			
		||||
						</view>
 | 
			
		||||
					</view>
 | 
			
		||||
				</view>
 | 
			
		||||
				<view style="height: 80rpx;width: 100%;"></view>
 | 
			
		||||
				<u-loadmore :status="loadStatus" ></u-loadmore>
 | 
			
		||||
				<view style="height: 100rpx;width: 100%;"></view>
 | 
			
		||||
			</scroll-view>
 | 
			
		||||
			<!-- 全部标签 -->
 | 
			
		||||
			<u-popup :show="showPopbq" mode="bottom" round="20"
 | 
			
		||||
@ -191,7 +192,7 @@
 | 
			
		||||
			<view class="bottom_box flex justify-center align-items" style="height: 560rpx;" v-if="hotList.length == 0">
 | 
			
		||||
				暂无数据
 | 
			
		||||
			</view>
 | 
			
		||||
			<u-loadmore v-else style="margin-bottom: 60rpx;" :status="loadStatus" />
 | 
			
		||||
			<!-- <u-loadmore v-else style="margin-bottom: 60rpx;" :status="loadStatus" /> -->
 | 
			
		||||
		</view>
 | 
			
		||||
		<u-popup @touchmove.native.stop.prevent :show="formShow" :round="10">
 | 
			
		||||
			<view style="display: flex;align-items: center;justify-content: space-between;padding: 32rpx;">
 | 
			
		||||
@ -328,17 +329,6 @@ export default {
 | 
			
		||||
		// uni.hideTabBar();
 | 
			
		||||
 | 
			
		||||
	},
 | 
			
		||||
	onPullDownRefresh() {
 | 
			
		||||
		uni.showLoading({
 | 
			
		||||
			title: '加载中...'
 | 
			
		||||
		});
 | 
			
		||||
		this.resetLists();
 | 
			
		||||
		this.getHotList();
 | 
			
		||||
		setTimeout(() => {
 | 
			
		||||
			uni.hideLoading();
 | 
			
		||||
			uni.stopPullDownRefresh();
 | 
			
		||||
		}, 2000)
 | 
			
		||||
	},
 | 
			
		||||
	mounted() {
 | 
			
		||||
		this.videoContext = uni.createVideoContext("myVideo"); //创建视频实例指向video
 | 
			
		||||
	},
 | 
			
		||||
@ -355,14 +345,8 @@ export default {
 | 
			
		||||
	},
 | 
			
		||||
	methods: {
 | 
			
		||||
		onScrolltolower(){
 | 
			
		||||
			uni.showLoading({
 | 
			
		||||
				title: '加载中...'
 | 
			
		||||
			});
 | 
			
		||||
			this.page+=1;
 | 
			
		||||
			this.getHotList();
 | 
			
		||||
			setTimeout(() => {
 | 
			
		||||
				uni.hideLoading();
 | 
			
		||||
			}, 2000)
 | 
			
		||||
		},
 | 
			
		||||
		onS(){
 | 
			
		||||
			this.homrS=true;
 | 
			
		||||
@ -1051,7 +1035,7 @@ export default {
 | 
			
		||||
 | 
			
		||||
		.hot {
 | 
			
		||||
			//   margin-top: 30rpx;
 | 
			
		||||
			margin-bottom: 100rpx;
 | 
			
		||||
			margin-bottom: 50rpx;
 | 
			
		||||
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
@ -149,6 +149,8 @@
 | 
			
		||||
					subdesc='以了解详细内容。如您同意,请点击“同意并继续”并开始使用我们的服务。' 
 | 
			
		||||
					top_img='https://naweigetetest2.hschool.com.cn/dyqc/dyqclogo.png'
 | 
			
		||||
					color="#C9935C" hideTabBar="true" :onNeed='false' :other="other"
 | 
			
		||||
					refuse_tbn_text="不同意"
 | 
			
		||||
					agree_btn_text="同意"
 | 
			
		||||
					:title_style="'padding-top:60rpx;'" open_type='agreePrivacyAuthorization'>
 | 
			
		||||
				</lsl-protocol-popup>
 | 
			
		||||
				<view class="popup">
 | 
			
		||||
@ -184,7 +186,7 @@ export default {
 | 
			
		||||
			tabBarShow:null,
 | 
			
		||||
			topHeight: '',
 | 
			
		||||
			hotList: [],
 | 
			
		||||
			showPopup: false,
 | 
			
		||||
			showPopup: true,
 | 
			
		||||
			userName: '请登录',
 | 
			
		||||
			actives: 0,
 | 
			
		||||
			pushActives: 0,
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,10 @@
 | 
			
		||||
<template>
 | 
			
		||||
	<view class="protocol_box" @click="protocolClick()">
 | 
			
		||||
	<view class="protocol_box" @click.stop="protocolClick()">
 | 
			
		||||
		<view class="select" :class="{active: agree}" @click="agreeClick"></view>
 | 
			
		||||
		<view>
 | 
			
		||||
			<text>我已阅读并同意</text>
 | 
			
		||||
			<text class="key-text" style="color: #0CA013;"> {{name}} </text>
 | 
			
		||||
			<text class="key-text" style="color: #0CA013;" @click.stop="agreeClick1"> {{name}} </text>
 | 
			
		||||
			<text class="key-text" style="color: #0CA013;" @click.stop="agreeClick2"> {{nameOne}} </text>
 | 
			
		||||
			<text> {{desc}} </text>
 | 
			
		||||
		</view>
 | 
			
		||||
	</view>
 | 
			
		||||
@ -25,6 +26,10 @@
 | 
			
		||||
				type: String,
 | 
			
		||||
				default: ''
 | 
			
		||||
			},
 | 
			
		||||
			nameOne: {
 | 
			
		||||
				type: String,
 | 
			
		||||
				default: ''
 | 
			
		||||
			},
 | 
			
		||||
			// 协议数组
 | 
			
		||||
			protocolArr: {
 | 
			
		||||
				type: Array,
 | 
			
		||||
@ -42,6 +47,12 @@
 | 
			
		||||
				this.$emit('click')
 | 
			
		||||
 | 
			
		||||
			},
 | 
			
		||||
			agreeClick1(){
 | 
			
		||||
				this.$emit('clickOne')
 | 
			
		||||
			},
 | 
			
		||||
			agreeClick2(){
 | 
			
		||||
				this.$emit('clickTwo')
 | 
			
		||||
			},
 | 
			
		||||
			protocolClick(tag) {
 | 
			
		||||
 | 
			
		||||
				this.$emit('protocolClick', tag)
 | 
			
		||||
 | 
			
		||||
@ -10,6 +10,9 @@
 | 
			
		||||
                <text v-for="(item,index) in other" @click.stop="other_btn(item)" :key="index"><text style="color:#595959;">{{symbol}}</text>{{item.tit}}</text>
 | 
			
		||||
                {{subdesc}}
 | 
			
		||||
            </view>
 | 
			
		||||
			<view style="padding-bottom: 30rpx;">
 | 
			
		||||
				<cc-protocolBox :agree="agree" :nameOne="protocolArr1" :name="protocolArr" @clickTwo="clickTwo" @clickOne="clickOne" @click="protocolClick"></cc-protocolBox>
 | 
			
		||||
			</view>
 | 
			
		||||
			<view class="footer">
 | 
			
		||||
				<navigator v-if="refuse_tbn_exit" open-type="exit" target="miniProgram" hover-class="none">
 | 
			
		||||
					<view class="btn disagree-btn" @click="handleRefuse">{{refuse_tbn_text}}</view>
 | 
			
		||||
@ -157,12 +160,24 @@
 | 
			
		||||
		},
 | 
			
		||||
		data() {
 | 
			
		||||
			return {
 | 
			
		||||
				protocolArr: "《用户协议》",
 | 
			
		||||
				protocolArr1: "《隐私政策》",
 | 
			
		||||
				agree:false,
 | 
			
		||||
				resolvePrivacyAuthorization: null,
 | 
			
		||||
				showPrivacy: false,
 | 
			
		||||
				privacyContractName: "", // 小程序协议名称  基础库2.32.3 才会生效
 | 
			
		||||
			};
 | 
			
		||||
		},
 | 
			
		||||
		methods: {
 | 
			
		||||
			clickTwo(){
 | 
			
		||||
				console.log(2);
 | 
			
		||||
			},
 | 
			
		||||
			clickOne(){
 | 
			
		||||
				console.log(0);
 | 
			
		||||
			},
 | 
			
		||||
			protocolClick(){
 | 
			
		||||
				console.log(1);
 | 
			
		||||
			},
 | 
			
		||||
			open(name) {
 | 
			
		||||
				if (this.hideTabBar) {
 | 
			
		||||
					uni.hideTabBar();
 | 
			
		||||
 | 
			
		||||
@ -24,6 +24,9 @@ export const dateJsing = time =>{
 | 
			
		||||
export const dateWeek = time =>{
 | 
			
		||||
	return dayjs.unix(time).format('ddd MM-DD HH:mm')
 | 
			
		||||
}
 | 
			
		||||
export const dateWeekData = time =>{
 | 
			
		||||
	return dayjs(time).format('ddd MM-DD HH:mm')
 | 
			
		||||
}
 | 
			
		||||
export const dateWeekbeg = time =>{
 | 
			
		||||
	return dayjs.unix(time).format('MM-DD(ddd) HH:mm')
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user