lhl 3 years ago
parent
commit
5027c695d7

+ 3 - 2
access/common.js

@@ -88,8 +88,9 @@ export function getEnToken() {
 	// return '35e97bca34dab476692d2ad8cc47954b' //dev
 	// return 'b8ca10e4ce35fded735c980403dfedf7' //master
 	// #ifdef MP
-	const entoken = uni.getExtConfigSync().token || ''
-	return entoken
+	// const entoken = uni.getExtConfigSync().token || ''
+	return "931544405107da76ca2ec31cd63fae49"
+	// return entoken
 	// #endif
 	// #ifdef H5||APP-PLUS
 	return "931544405107da76ca2ec31cd63fae49"

+ 1 - 1
common/http.interceptor.js

@@ -29,7 +29,7 @@ const install = (Vue, vm) => {
 		config.header.Authorization = getToken();
 		config.header.Token = getEnToken();
 		config.header.Location = getLocation();
-
+		console.log('接口:',config.url)
 		// 方式一,存放在vuex的token,假设使用了uView封装的vuex方式,见:https://uviewui.com/components/globalVariable.html
 		// config.header.token = vm.token;
 

+ 84 - 54
components/PageDesign/components/NavBar.vue

@@ -1,71 +1,101 @@
 <template>
 	<div class="NavBar clearfix" :style="{ backgroundColor: modelData.bgColor }">
-		<div class="nav-li" v-for="(item, index) in modelData.navList" :key="index" :style="{ width: 100 / modelData.num + '%' }" @click="navTo(item.url, item.switchTab)">
+		<div class="nav-li" v-for="(item, index) in modelData.navList" :key="index"
+			:style="{ width: 100 / modelData.num + '%' }" @click="navTo(item.url, item.switchTab,item)">
 			<image class="nav-icon" :src="item.image.url" mode="aspectFit"></image>
 			<div :style="{ color: modelData.color }" class="nav-text">{{ item.text || '文字标题' }}</div>
 		</div>
-		<NoLoginTip @cancel="cancelTip" :show="loginTip" v-if="loginTip"/>
+		<NoLoginTip @cancel="cancelTip" :show="loginTip" v-if="loginTip" />
 	</div>
 </template>
 
 <script>
-import NoLoginTip from '../../NoLoginTip.vue';
-export default {
-	name: 'NavBar',
-	components: {
-		NoLoginTip
-	},
-	props: {
-		modelData: {
-			type: Object,
-			default: () => {
-				return {};
+	import NoLoginTip from '../../NoLoginTip.vue';
+	export default {
+		name: 'NavBar',
+		components: {
+			NoLoginTip
+		},
+		props: {
+			modelData: {
+				type: Object,
+				default: () => {
+					return {};
+				}
 			}
-		}
-	},
-	data() {
-		return {
-			loginTip: false
-		};
-	},
-	methods: {
-		cancelTip(){
-			this.loginTip = false;
 		},
-		navTo(url, switchTab) {
-			if (!this.$common.isLogin()) {
-				this.loginTip = true;
-			} else {
-				this.goPage(url, switchTab);
+		data() {
+			return {
+				loginTip: false
+			};
+		},
+		methods: {
+			cancelTip() {
+				this.loginTip = false;
+			},
+			navTo(url, switchTab, item) {
+				if (!this.$common.isLogin()) {
+					this.loginTip = true;
+				} else {
+					if (item.text == '企业文化') {
+						return;
+					} else if (item.text == '高管') {
+						this.goPage('/pagesT/unit/official?type=1', switchTab);
+					} else if (item.text == '员工') {
+						this.goPage('/pagesT/unit/official?type=2', switchTab);
+					} else if (item.text == '项目') {
+						this.goPage('/pagesT/unit/item', switchTab);
+					} else if (item.text == '疗程') {
+
+					} else if (item.text == '会员') {
+
+					} else if (item.text == '股权') {
+						this.goPage('/pagesT/user/guquan', switchTab);
+					} else if (item.text == '共享股东') {
+						this.goPage('/pagesT/unit/official?type=3', switchTab);
+					} else if (item.text == '招商') {
+						return;
+					} else if (item.text == '招聘') {
+
+					} else if (item.text == '食品') {
+
+					} else if (item.text == '生活用品') {
+
+					} else {
+						this.goPage(url, switchTab);
+					}
+				}
 			}
 		}
-	}
-};
+	};
 </script>
 
 <style scoped>
-.NavBar {
-	 padding: 32rpx 0 8rpx;
-	display: -webkit-flex;
-	display: flex;
-	width: 100%;
-	justify-content: space-between;
-	flex-wrap: wrap;
-}
-.nav-icon {
-	width: 88upx;
-	height: 88upx;
-	border-radius: 20rpx;
-	margin: 0 auto;
-	display: block;
-}
-.nav-text {
-	padding-top: 12upx;
-}
-.nav-li {
-	font-size: 24upx;
-	text-align: center;
-	font-weight: 400rpx;
-	margin-bottom: 24upx;
-}
+	.NavBar {
+		padding: 32rpx 0 8rpx;
+		display: -webkit-flex;
+		display: flex;
+		width: 100%;
+		justify-content: space-between;
+		flex-wrap: wrap;
+	}
+
+	.nav-icon {
+		width: 88upx;
+		height: 88upx;
+		border-radius: 20rpx;
+		margin: 0 auto;
+		display: block;
+	}
+
+	.nav-text {
+		padding-top: 12upx;
+	}
+
+	.nav-li {
+		font-size: 24upx;
+		text-align: center;
+		font-weight: 400rpx;
+		margin-bottom: 24upx;
+	}
 </style>

+ 296 - 0
components/its-calendar/its-calendar.vue

@@ -0,0 +1,296 @@
+<template>
+	<view>
+		<view class="calendar">
+			<scroll-view scroll-x="true" class="top-wrap" >
+				<view class="time-wrap" v-for="(dayitem,dayindex) in dayArr" :key="dayindex" :class="{'action':day_index ==dayindex }" @click.stop="dayList(dayitem,dayindex)">
+					<text class="time-val">{{dayitem.days}}</text>
+					<text class="time-xq">{{dayitem.weeks}}</text>
+				</view>
+			</scroll-view>
+			<!-- <view class="calendar_day">
+				
+				<view class="day_x" :style="{'color': (day_index == index ? '#FE3B3C' : '')}"
+					v-for="(item, index) in dayArr" :key="index" @click.stop="dayList(item,index)">
+					<view class="day_x_a">{{item.weeks}}</view>
+					<view class="day_x_b">{{item.days}}</view>
+				</view>
+			</view> -->
+			<view scroll-y class="calendar_time">
+				<view class="time_x" :class="host_index == item.timeStamp ? 'time_x_sty' : ''"
+					v-for="(item, index) in hostArr[day_index]" :key="index"
+					@click="nowTimes < item.timeStamp ? hosts(item) : ''"
+					:style="{'color': (nowTimes > item.timeStamp ? '#999999' : '')}">{{item.hours}}</view>
+			</view>
+		</view>
+		<!-- <view class="sub" @click="sub()">
+			立即预约
+		</view> -->
+	</view>
+</template>
+
+<script>
+	export default {
+		props: {
+			sta_num: {
+				type: Number | String,
+				default: 8
+			},
+			end_num: {
+				type: Number | String,
+				default: 23
+			},
+			int_num: {
+				type: Number | String,
+				default: 30
+			},
+		},
+		data() {
+			return {
+				dayArr: [],
+				hostArr: [],
+				day_index: 0,
+				host_index: '',
+				host_All: [],
+				nowTimes: '',
+			}
+		},
+		mounted() {
+			let dateArr = [];
+			let today = new Date();
+			let nowTime = today.getTime() // 当前时间戳
+			this.nowTimes = parseInt(nowTime / 1000)
+			for (let i = 0; i < 10; i++) {
+				let newDate = new Date(today.getTime() + i * 1000 * 60 * 60 * 24);
+				let month = (parseInt(newDate.getMonth()) + 1) > 9 ? (parseInt(newDate.getMonth()) + 1) : "0" + (parseInt(
+					newDate.getMonth()) + 1); // 当前月份
+				let day = (newDate.getDate()) > 9 ? newDate.getDate() : "0" + newDate.getDate(); //当前日期
+				let backTime = newDate.getTime(); // 几天后时间戳
+				let backDays = newDate.getDay();// 几天后周几
+				let remTime = (backTime - nowTime) / 1000; // 距离今天几天
+				let week = '';
+				// if (remTime == 0) {
+				// 	week = "今天"
+				// } else if (remTime == 86400) {
+				// 	week = "明天"
+				// } else if (remTime == 172800) {
+				// 	week = "后天"
+				// } else {
+					if (backDays == 0) {
+						week = "周日";
+					} else if (backDays == 1) {
+						week = "周一";
+					} else if (backDays == 2) {
+						week = "周二";
+					} else if (backDays == 3) {
+						week = "周三";
+					} else if (backDays == 4) {
+						week = "周四";
+					} else if (backDays == 5) {
+						week = "周五";
+					} else if (backDays == 6) {
+						week = "周六";
+					}
+				// }
+				// let fullDate = `${month}-${day}`;
+				let fullDate = `${day}`;
+				let ass = {
+					weeks: week,
+					days: fullDate
+				};
+				dateArr.push(ass);
+			}
+			this.dayArr = dateArr;
+
+			let timeArr = [];
+			for (let i = 0; i < 5; i++) {
+				// let as = new Date(new Date().toLocaleDateString()).getTime() / 1000
+				let as = new Date(new Date().toLocaleDateString()).getTime() / 1000 + i * 60 * 60 * 24;
+				let staTime = this.sta_num * 60 * 60 + as;
+				let endTime = this.end_num * 60 * 60 + as;
+				let int = this.int_num * 60;
+				let timeArr_s = [];
+				for (staTime; staTime < endTime - int; staTime + int) {
+					staTime = staTime + int;
+					let hours = this.times(staTime);
+					let asb = {
+						hours,
+						timeStamp: staTime
+					};
+					timeArr_s.push(asb);
+				}
+				timeArr.push(timeArr_s);
+			}
+			this.hostArr = timeArr;
+		},
+		methods: {
+			// 点击日期
+			dayList(e, index) {
+				this.day_index = index;
+			},
+			// 点击时间
+			hosts(e) {
+				this.host_All = e;
+				this.host_index = e.timeStamp;
+				this.sub()
+			},
+			// 点击立即预约
+			sub() {
+				if (this.host_index == '') {
+					this.$tool.toast('请选择时间');
+				} else {
+					let day = this.dayArr[this.day_index];
+					let time = this.time(this.host_index);
+					let comTime = {
+						days: day.days,
+						weeks: day.weeks,
+						hours: this.host_All.hours,
+						timeStamp: this.host_All.timeStamp,
+						time: time
+					};
+					this.$emit('getTime', comTime);
+				}
+			},
+			// 格式化时间
+			times(data) {
+				let date = new Date(data * 1000);
+				//时间戳为10位需*1000,时间戳为13位的话不需乘1000
+				let h = date.getHours();
+				h = h < 10 ? ('0' + h) : h; //小时补0
+				let m = date.getMinutes();
+				m = m < 10 ? ('0' + m) : m; //分钟补0
+				return h + ':' + m;
+			},
+			time(data, type){
+				let date = new Date(data * 1000);
+				//时间戳为10位需*1000,时间戳为13位的话不需乘1000
+				let y = date.getFullYear();
+				let MM = date.getMonth() + 1;
+				MM = MM < 10 ? ('0' + MM) : MM; //月补0
+				let d = date.getDate();
+				d = d < 10 ? ('0' + d) : d; //天补0
+				let h = date.getHours();
+				h = h < 10 ? ('0' + h) : h; //小时补0
+				let m = date.getMinutes();
+				m = m < 10 ? ('0' + m) : m; //分钟补0
+				let s = date.getSeconds();
+				s = s < 10 ? ('0' + s) : s; //秒补0
+				if (type == 'yymmdd') {
+					return y + '-' + MM + '-' + d;
+				} else if (type == 'hhmmss') {
+					return h + ':' + m + ':' + s;
+				} else {
+					return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
+				}
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	page {
+		background-color: #F4F4F4;
+	}
+
+	.calendar {
+		width: 710rpx;
+		height: 590rpx;
+		background-color: #FFFFFF;
+		margin: 20rpx auto 10rpx;
+		border-radius: 8rpx;
+	}
+
+	.calendar_day {
+		display: flex;
+		width: 100%;
+		height: 120rpx;
+
+		.day_x {
+			display: flex;
+			// flex-flow: column nowrap;
+			flex-flow: nowrap;
+			justify-content: center;
+			align-items: center;
+			width: 20%;
+			height: 100%;
+			font-size: 30rpx;
+			color: #333333;
+		}
+	}
+
+	.calendar_time {
+		display: flex;
+		width: 100%;
+		height: 448rpx;
+		flex-flow: row wrap;
+		align-content: flex-start;
+		margin: 20rpx 0;
+		overflow-y: auto;
+
+		.time_x {
+			display: flex;
+			flex-flow: row;
+			justify-content: center;
+			align-items: center;
+			width: 20%;
+			height: 54rpx;
+			border-radius: 26rpx;
+			margin: 10rpx 0;
+			font-size: 30rpx;
+			color: #333333;
+		}
+
+		.time_x_sty {
+			background-color: #262261;
+			color: #fff !important;
+		}
+	}
+
+	.sub {
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		width: 710rpx;
+		height: 100rpx;
+		border-radius: 50rpx;
+		margin: 30rpx auto;
+		color: #FFFFFF;
+		font-size: 36rpx;
+		// background-color: #FE3B3C;
+	}
+	.top-wrap {
+		
+		white-space: nowrap;
+		width: 700rpx;
+		// height: 100rpx;
+		padding:20rpx 0;
+		.time-wrap {
+			margin: auto 15rpx;
+			display: inline-block;
+			width: 158rpx;
+			height: 63rpx;
+			border-radius: 32rpx;
+			line-height: 63rpx;
+			text-align: center;
+			background-color: #FDF9FA;
+			.time-xq {
+				font-size: 22rpx;
+				font-weight: 500;
+				color: #999999;
+			}
+			.time-val {
+				font-size: 32rpx;
+				font-weight: bold;
+				color: #333333;
+			}
+		}
+		.action {
+			background-color: #262261;
+			.time-xq {
+				color: #FDF9FA;
+			}
+			.time-val {
+				color: #FDF9FA;
+			}
+		}
+	}
+</style>

+ 2 - 1
manifest.json

@@ -152,7 +152,8 @@
         },
         "optimization" : {
             "subPackages" : true
-        }
+        },
+		 "requiredPrivateInfos" : [ "getLocation", "chooseLocation" ]
     },
     "h5" : {
         "sdkConfigs" : {

+ 14 - 10
mixin/goPage.js

@@ -186,17 +186,21 @@ export default {
 				title: '请求授权当前位置',
 				content: '商品信息将无法正常显示,请确认授权',
 				success: res => {
-					this.isLoding = true
-					uni.openSetting({
-						success: reso => {
-							if (!reso.authSetting['scope.userLocation']) {
-								this.openConfirm();
+						
+					if(res.confirm) {
+						this.isLoding = true
+						uni.openSetting({
+							success: reso => {
+								if (!reso.authSetting['scope.userLocation']) {
+									this.openConfirm();
+								}
+							},
+							complete: () => {
+								this.isLoding = false
 							}
-						},
-						complete: () => {
-							this.isLoding = false
-						}
-					});
+						});
+					}
+					
 				}
 			});
 		},

+ 12 - 1
pages.json

@@ -98,6 +98,12 @@
 					"navigationBarTitleText": ""
 				}
 			},
+			{
+				"path": "unit/ygdetail",
+				"style": {
+					"navigationBarTitleText": "员工详情"
+				}
+			},
 			{
 				"path": "unit/hyc",
 				"style": {
@@ -297,7 +303,12 @@
 					"navigationBarTitleText": "确认订单"
 				}
 			},
-
+			{
+				"path": "order/createOrderT",
+				"style": {
+					"navigationBarTitleText": "确认订单"
+				}
+			},
 			{
 				"path": "order/orderDetail",
 				"style": {

+ 7 - 9
pages/user/user.vue

@@ -161,9 +161,13 @@
 					<view class="fn-icon"><image :src="'https://onlineimg.qianniao.vip/ic-coupon-' + theme + '.png'"></image></view>
 					<view class="fn-label">我的优惠券</view>
 				</view>
-				<view class="fn-li" @click="goDistribution">
+			<!-- 	<view class="fn-li" @click="goDistribution">
 					<view class="fn-icon"><image :src="'https://onlineimg.qianniao.vip/ic-fen-' + theme + '.png'"></image></view>
 					<view class="fn-label">分销中心</view>
+				</view> -->
+				<view class="fn-li" @click="navTo('/pagesT/user/Collection')">
+					<view class="fn-icon"><image :src="'https://onlineimg.qianniao.vip/ic-fen-' + theme + '.png'"></image></view>
+					<view class="fn-label">我的收藏</view>
 				</view>
 			</view>
 		</view>
@@ -211,12 +215,6 @@
 						<image src="https://onlineimg.qianniao.vip/ic-xq.png" mode="aspectFill"></image>
 						<view>股权</view>
 					</view>
-				</view>
-				<view class="list-li clearfix" @click="navTo('/pagesT/unit/lc')">
-					<view class="fn-icon">
-						<image src="https://onlineimg.qianniao.vip/ic-xq.png" mode="aspectFill"></image>
-						<view>高管</view>
-					</view>
 				</view>
 				<!-- #ifdef MP -->
 				<view class="list-li">
@@ -288,7 +286,7 @@
 <script>
 import Login from '@/components/Login.vue';
 import uniStatusBar from '@/components/uni-status-bar/uni-status-bar.vue';
-import { getEnToken } from '@/access/common.js';
+import { getEnToken ,getToken} from '@/access/common.js';
 
 export default {
 	components: {
@@ -573,7 +571,7 @@ export default {
 		getCustomerInfo() {
 			this.$u.api.getCustomerInfo().then(({ data }) => {
 				uni.stopPullDownRefresh();
-				this.userInfo = data;
+				this.userInfo = data;
 				if (this.userInfo.status === 2) {
 					this.getMyVipCards();
 				}

+ 13 - 0
pagesT/order/createOrder.vue

@@ -1639,4 +1639,17 @@
 			font-size: 28rpx;
 		}
 	}
+	.sc-md {
+		margin: 20rpx auto;
+		width: 712rpx;
+		height: 210rpx;
+		background: #FFFFFF;
+		border-radius: 10rpx;
+		.sc-tip {
+			width: 712rpx;
+			height: 70rpx;
+			background: #EF8381;
+			border-radius: 10rpx 10rpx 0px 0px;
+		}
+	}
 </style>

File diff suppressed because it is too large
+ 33 - 0
pagesT/order/createOrderT.vue


+ 9 - 3
pagesT/selfconfig/selfconfig.vue

@@ -116,10 +116,13 @@
 			},
 			// 重新设置 提交
 			confirmEdit() {
-				this.$u.api.editCustomerInfo({
+				console.log(this.userInfo)
+				let data = {
 					...this.userInfo,
 					avatar: this.userInfo.avatar[0]
-				}).then(res => {
+				}
+				// console.log(data,'upifp')
+				this.$u.api.editCustomerInfo(data).then(res => {
 					this.modal_show = false
 					if (this.personnelReview === 5) {
 						uni.showToast({
@@ -157,6 +160,7 @@
 			},
 			// 获取省市区
 			pickerRegionChange(row) {
+				console.log(row,'row+++++++++')
 				this.userInfo.provinceCode = row[0].value;
 				this.userInfo.cityCode = row[1].value;
 				this.userInfo.districtCode = row[2].value;
@@ -175,7 +179,9 @@
 			uploadSuccess(res) {
 				const uploadPicUrl = `${webUrl.QINIU_URL}/${res.key}`;
 				// console.log(res.key, uploadPicUrl);
+				// console.log(uploadPicUrl,'uploadPicUrl++++++++++',this.userInfo.avatar)
 				this.userInfo.avatar = [uploadPicUrl];
+				// this.upimage = uploadPicUrl
 			},
 			// 获取用户信息
 			async getCustomerInfo() {
@@ -205,7 +211,7 @@
 						avatar: [data.data.avatar],
 						contact: contact
 					};
-					console.log(this.userInfo);
+					console.log(data.data.contact,'this.userInfo++++++++++++');
 					if (data.data.contact.length) {
 						this.region_name = data.data.contact[0].area.provinceName + '-' + data.data.contact[0]
 							.area.cityName + '-' + data.data.contact[0].area.districtName;

+ 7 - 1
pagesT/unit/official.vue

@@ -1,7 +1,7 @@
 <template>
 	<view class="content">
 		<view class="gq-list">
-			<view class="gq-item" v-for="item in 11" @click="navto('/pagesT/user/gqDetail')">
+			<view class="gq-item" v-for="item in 11" @click="gotoDetail(item)">
 				<view class="gq-logo">
 					<image src="" mode="" class=""></image>
 				</view>
@@ -78,6 +78,12 @@ type: ''
 				uni.navigateTo({
 					url
 				})
+			},
+			gotoDetail() {
+				// 员工详情
+				if(this.type == 2) {
+					this.navto('/pagesT/unit/ygdetail')
+				}
 			}
 		}
 	}

+ 272 - 0
pagesT/unit/ygdetail.vue

@@ -0,0 +1,272 @@
+<template>
+	<view class="content">
+		<view class="yg-top">
+			<image src="" mode="" class="yg-img"></image>
+			<view class="yg-name">
+				李丹丹
+			</view>
+			<view class="star-wrap">
+				<u-icon name="star-fill" color="#F3BE69" v-for="item in star*1" class="start" size="20rpx"></u-icon>
+				<u-icon name="star-fill" color="#eee" v-for="itemt in (5-star*1)" class="start" size="20rpx"></u-icon>
+			</view>
+		</view>
+		<view class="yg-info">
+			<view class="info-line">
+				<view class="left-name">
+					<image src="" mode=""></image>
+					<view class="">
+						累计服务
+					</view>
+				</view>
+				<view class="info-val">
+					5595次
+				</view>
+
+			</view>
+			<view class="info-line">
+				<view class="left-name">
+					<image src="" mode=""></image>
+					<view class="">
+						从业年限
+					</view>
+				</view>
+				<view class="info-val">
+					2年
+				</view>
+
+			</view>
+			<view class="info-line" style="height: auto;border-bottom: none;">
+				<view class="left-name">
+					<image src="" mode=""></image>
+					<view class="">
+						员工简介
+					</view>
+				</view>
+				<view class="info-val" style="line-height: 1.5;padding-top: 20rpx;">
+					简介的详细内容,员工的服务介绍,优势说明简介。简
+					介的详细内容,员工的服务介绍,优势说明简介。简介的详细内容,员
+					工的服务介绍,优势说明简介。 简介的详细内容,员工的服务介绍,优势说明简介。简
+					介的详细内容,员工的服务介绍,优势说明简介。简介的详细内容,员
+					工的服务介绍,优势说明简介。
+				</view>
+			</view>
+
+		</view>
+		<view class="pj-tit">
+			服务评价
+		</view>
+		<scroll-view scroll-y="true" :style="{'height': height}" class="swiper-box">
+			<view class="pj-wrap" v-for="item in pjlist">
+				<view class="pj-user">
+					<view class="user-logo">
+						
+					</view>
+					<view class="user-info">
+						<view class="user-name">
+							李丹丹
+						</view>
+						<view class="star-wrap">
+							<u-icon name="star-fill" color="#E02E24" v-for="item in star*1" class="start" size="20rpx"></u-icon>
+							<u-icon name="star-fill" color="#999999" v-for="itemt in (5-star*1)" class="start" size="20rpx"></u-icon>
+						</view>
+					</view>
+					<view class="pj-time">
+						2022-07-06
+					</view>
+				</view>
+				<view class="pj-info">
+					服务很好!!!服务很好!!!服务很好!!!服务很好!!!
+					服务很好!!!
+				</view>
+			</view>
+		</scroll-view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				star: 3,
+				height: '',
+				pjlist: 10,
+			}
+		},
+		onLoad() {
+
+		},
+		onShow() {
+
+		},
+		onReachBottom() {
+
+		},
+		onReady() {
+			var _this = this;
+			uni.getSystemInfo({
+				success: resu => {
+					const query = uni.createSelectorQuery();
+					query.select('.swiper-box').boundingClientRect();
+					query.exec(function(res) {
+						_this.height = resu.windowHeight - res[0].top + 'px';
+						console.log('打印页面的剩余高度', _this.height);
+					});
+				},
+				fail: res => {}
+			});
+		},
+		methods: {
+
+		}
+	}
+</script>
+
+<style lang="scss">
+	page {
+		background-color: #fff;
+
+	}
+
+	.yg-top {
+		height: 326rpx;
+		width: 100%;
+		// color: #262261;
+		background-color: #262261;
+		position: relative;
+
+		.yg-img {
+			position: absolute;
+			width: 120rpx;
+			height: 120rpx;
+			border-radius: 50%;
+			top: 96rpx;
+			left: 43rpx;
+			background-color: #eee;
+		}
+
+		.yg-name {
+			position: absolute;
+			font-size: 36rpx;
+			font-weight: 500;
+			color: #FFFFFF;
+			top: 115rpx;
+			left: 185rpx;
+		}
+
+		.star-wrap {
+			position: absolute;
+			top: 170rpx;
+			left: 185rpx;
+			display: flex;
+			justify-content: flex-start;
+
+			.start {
+				margin-right: 10rpx;
+			}
+		}
+	}
+
+	.yg-info {
+		margin: -78rpx auto 20rpx;
+		position: relative;
+		width: 694rpx;
+		padding-bottom: 10rpx;
+		// height: 299rpx;
+		background: #FFFFFF;
+		box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
+		border-radius: 10rpx;
+
+		.info-line {
+			border-bottom: 1px solid #F8F8F8;
+			font-size: 20rpx;
+			font-weight: 500;
+			color: #666666;
+			height: 72rpx;
+			line-height: 72rpx;
+			display: flex;
+
+			.info-val {
+				flex-grow: 1;
+			}
+		}
+	}
+
+	.left-name {
+		flex-shrink: 0;
+		height: 72rpx;
+		width: 165rpx;
+		display: flex;
+		justify-content: flex-end;
+		align-items: center;
+		font-size: 25rpx;
+		font-weight: bold;
+		color: #101010;
+		padding-right: 10rpx;
+
+		image {
+			width: 28rpx;
+			height: 28rpx;
+			margin-right: 15rpx;
+			background-color: #eee;
+		}
+
+	}
+
+	.pj-tit {
+		font-size: 30rpx;
+		font-weight: bold;
+		color: #101010;
+		padding: 26rpx;
+	}
+	.pj-wrap {
+		width: 100%;
+		min-height: 244rpx;
+		border-bottom:#f5f5f5 1rpx solid;
+		background-color: #fff;
+		padding: 30rpx;
+		.pj-user {
+			display: flex;
+			align-items: center;
+			height: 75rpx;
+			.user-logo {
+				width: 75rpx;
+				height: 75rpx;
+				background-color: #eee;
+				border-radius: 50%;
+				margin-right: 10rpx;
+			}
+			.user-info {
+				flex-grow: 1;
+				.user-name {
+					font-size: 26rpx;
+					font-weight: 500;
+					color: #545456;
+					margin-bottom: 10rpx;
+				}
+				
+				.star-wrap {
+					display: flex;
+					justify-content: flex-start;
+					
+					.start {
+						margin-right: 10rpx;
+					}
+				}
+			}
+			.pj-time {
+				font-size: 24rpx;
+				font-weight: 400;
+				color: #545456;
+			}
+		}
+		.pj-info {
+			padding-top: 30rpx;
+			font-size: 24rpx;
+			font-weight: 500;
+			color: #545456;
+		}
+	}
+	.swiper-box {
+		background-color: red;
+	}
+</style>

Some files were not shown because too many files changed in this diff