zhanghui před 2 roky
rodič
revize
36278afb26

+ 82 - 74
manifest.json

@@ -1,75 +1,83 @@
 {
-    "name" : "shoppingTemplate",
-    "appid" : "__UNI__EEB3904",
-    "description" : "",
-    "versionName" : "1.0.0",
-    "versionCode" : "100",
-    "transformPx" : false,
-    /* 5+App特有相关 */
-    "app-plus" : {
-        "usingComponents" : true,
-        "nvueStyleCompiler" : "uni-app",
-        "compilerVersion" : 3,
-        "splashscreen" : {
-            "alwaysShowBeforeRender" : true,
-            "waiting" : true,
-            "autoclose" : true,
-            "delay" : 0
-        },
-        /* 模块配置 */
-        "modules" : {},
-        /* 应用发布信息 */
-        "distribute" : {
-            /* android打包配置 */
-            "android" : {
-                "permissions" : [
-                    "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
-                    "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
-                    "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
-                    "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
-                    "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
-                    "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.CAMERA\"/>",
-                    "<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
-                    "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
-                    "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
-                    "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
-                    "<uses-feature android:name=\"android.hardware.camera\"/>",
-                    "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
-                ]
-            },
-            /* ios打包配置 */
-            "ios" : {},
-            /* SDK配置 */
-            "sdkConfigs" : {}
-        }
-    },
-    /* 快应用特有相关 */
-    "quickapp" : {},
-    /* 小程序特有相关 */
-    "mp-weixin" : {
-        "appid" : "wx3f3b07566561dc70",
-        "setting" : {
-            "urlCheck" : false
-        },
-        "usingComponents" : true,
-        "optimization" : {
-            "subPackages" : true
-        }
-    },
-    "mp-alipay" : {
-        "usingComponents" : true
-    },
-    "mp-baidu" : {
-        "usingComponents" : true
-    },
-    "mp-toutiao" : {
-        "usingComponents" : true
-    },
-    "uniStatistics" : {
-        "enable" : false
-    },
-    "vueVersion" : "2"
-}
+	"name": "shoppingTemplate",
+	"appid": "__UNI__EEB3904",
+	"description": "",
+	"versionName": "1.0.0",
+	"versionCode": "100",
+	"transformPx": false,
+	/* 5+App特有相关 */
+	"app-plus": {
+		"usingComponents": true,
+		"nvueStyleCompiler": "uni-app",
+		"compilerVersion": 3,
+		"splashscreen": {
+			"alwaysShowBeforeRender": true,
+			"waiting": true,
+			"autoclose": true,
+			"delay": 0
+		},
+		/* 模块配置 */
+		"modules": {},
+		/* 应用发布信息 */
+		"distribute": {
+			/* android打包配置 */
+			"android": {
+				"permissions": [
+					"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
+					"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
+					"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
+					"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
+					"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
+					"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
+					"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
+					"<uses-permission android:name=\"android.permission.CAMERA\"/>",
+					"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
+					"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
+					"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
+					"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
+					"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
+					"<uses-feature android:name=\"android.hardware.camera\"/>",
+					"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
+				]
+			},
+			/* ios打包配置 */
+			"ios": {},
+			/* SDK配置 */
+			"sdkConfigs": {}
+		}
+	},
+	/* 快应用特有相关 */
+	"quickapp": {},
+	/* 小程序特有相关 */
+	"mp-weixin": {
+		"appid": "wx3f3b07566561dc70",
+		"setting": {
+			"urlCheck": false,
+			"minified": true,
+			"postcss": false
+		},
+		"usingComponents": true,
+		"optimization": {
+			"subPackages": true
+		},
+		"requiredPrivateInfos": ["getLocation"],
+		"permission": {
+			"scope.userLocation": {
+				"desc": "你的位置信息将用于和门店的距离长度"
+			}
+		}
+	},
+	"mp-alipay": {
+		"usingComponents": true
+	},
+	"mp-baidu": {
+		"usingComponents": true
+	},
+	"mp-toutiao": {
+		"usingComponents": true
+	},
+	"uniStatistics": {
+		"enable": false
+	},
+	"vueVersion": "2"
+}

+ 0 - 295
orderPages/bookService/components/chooseServiceTeacher.vue

@@ -1,295 +0,0 @@
-<template>
-	<view>
-		<uni-popup ref="chooseServiceTeacherPopup" :catchtouchmove="true" type="bottom">
-			<view class="chooseServiceTeacherView">
-				<view class="chooseServiceTeacherTitle">
-					<text>选择服务人员</text>
-				</view>
-
-				<scroll-view class="scrollY" scroll-y>
-					<view class="serviceTeacherView" v-for="(item,index) in workPersonList"  @click="selectworkPerson(item,index)">
-						<view v-if="item.personId === -1" class="serviceTeacher  flex-col justify-center" :class="{selectBack: item.personId == serviceUserId}">
-							<view class="flex-row">
-								<text class="teacherName">{{item.personName}} </text>
-								<u-icon name="rmb-circle" color="#666666"></u-icon>
-								<text class="teacherMsg">预约费用:{{item.fee}}</text>
-							</view>
-
-						</view>
-
-						<view v-else class="serviceTeacher1 flex-row" :class="{selectBack: item.personId == serviceUserId}">
-							<image class="teacherImg" src="/static/order/nvren.png"></image>
-							<view class="flex-col justify-around teacherR ">
-								<view class="flex-row">
-									<text class="teacherName1">{{item.personName}}</text>
-									<text class="teacherTag">造型总监</text>
-								</view>
-								<view>
-									<text class="teacherMsg1">优质服务,从我做起</text>
-								</view>
-								<view class="flex-row ">
-									<view :style="{'marginTop':'7rpx'}">
-										<u-icon name="rmb-circle" color="#666666"></u-icon>
-									</view>
-									<text class="teacherMsg">预约费用:</text>
-									<text class="teacherMsg" :style="{'color':'#ED569F'}">{{item.fee}}</text>
-								</view>
-							</view>
-						</view>
-						<view class="serobV" v-if="item.personId == serviceUserId">
-							<image class="serobVicon" src="/static/order/ud20.png"></image>
-						</view>
-					</view>
-
-
-
-				</scroll-view>
-
-				<view class="flex-row justify-between chooseServiceTeacherButton">
-					<view class="chooseServiceTeacherButtonL" @click="closePopup">
-						<text>取消</text>
-					</view>
-					<view class="chooseServiceTeacherButtonR" @click="submit">
-						<text>确定</text>
-					</view>
-				</view>
-			</view>
-
-		</uni-popup>
-
-	</view>
-</template>
-
-<script>
-	export default {
-		name: 'chooseServiceTeacher',
-		props: {
-			storeId: {
-				type: String,
-				default () {
-					return ''
-				}
-			},
-			date: {
-				type: String,
-				default () {
-					return ''
-				}
-			}
-		},
-		data() {
-			return {
-				serviceUserId:'',
-				selectIndex:'',
-				workPersonList: []
-			}
-		},
-		methods: {
-
-			submit(){
-				this.$emit("getWorkPerson",this.workPersonList[this.selectIndex])
-				this.closePopup()
-			},
-
-			closePopup() {
-				this.$refs.chooseServiceTeacherPopup.close()
-			},
-
-			selectworkPerson(e,index){
-				this.serviceUserId = e.personId
-				this.selectIndex = index
-			},
-
-			openPopup(serviceUserId) {
-				this.serviceUserId = serviceUserId
-				this.$refs.chooseServiceTeacherPopup.open()
-				this.getServicePerson()
-
-			},
-
-
-
-			// 查询服务工作人员列表
-			getServicePerson() {
-				this.$api.getServicePerson({
-					date: this.date,
-					storeId: this.storeId,
-				}).then((res) => {
-					console.log(res)
-					this.workPersonList = res.data.data;
-					this.getImgUrlByOssId(res.data.data)
-				})
-			},
-			// 获取图片
-			getImgUrlByOssId(data) {
-				for (let i = 0; i < data.length; i++) {
-					if (data[i].facePhoto) {
-						this.$api.getImage(data[i].facePhoto).then(res => {
-							data[i].imgUrl = res.data.data[0].url.replace(/^http:/, "https:")
-							this.$set(this.workPersonList, i, data[i])
-						});
-					}
-				}
-			},
-
-
-
-		}
-	}
-</script>
-
-<style scoped lang="scss">
-	.chooseServiceTeacherView {
-		width: 750rpx;
-		height: 850rpx;
-		background: #FFFFFF;
-		border-radius: 24rpx 24rpx 0rpx 0rpx;
-	}
-
-	.chooseServiceTeacherTitle {
-		font-size: 32rpx;
-		font-weight: bold;
-		color: #333333;
-		line-height: 44rpx;
-		margin-left: 34rpx;
-		padding-top: 26rpx;
-	}
-
-	.scrollY {
-		width: 686rpx;
-		height: 604rpx;
-		margin-left: 32rpx;
-		margin-top: 32rpx;
-	}
-
-
-	.serviceTeacherView {
-		position: relative;
-	}
-
-	.serviceTeacher {
-		width: 678rpx;
-		height: 92rpx;
-		background: #FAFAFA;
-		border-radius: 8rpx;
-		border: 4rpx solid #FAFAFA;
-		position: relative;
-	}
-
-	.teacherName {
-		padding-right: 26rpx;
-		font-size: 32rpx;
-		font-weight: bold;
-		color: #111111;
-		margin-left: 24rpx;
-	}
-
-	.teacherName1 {
-		font-size: 32rpx;
-		font-weight: bold;
-		color: #111111;
-	}
-
-	.teacherTag {
-		padding: 6rpx 24rpx;
-		background: #FFF6CE;
-		border-radius: 8rpx;
-		border: 2rpx solid #FFE05C;
-		font-size: 20rpx;
-		font-weight: 400;
-		color: #333333;
-		line-height: 32rpx;
-		margin-left: 16rpx;
-	}
-
-	.teacherMsg {
-		font-size: 24rpx;
-		font-family: PingFangSC, PingFang SC;
-		font-weight: 400;
-		color: #999999;
-		margin-left: 8rpx;
-		margin-top: 5rpx;
-	}
-
-	.teacherR {
-		width: 400rpx;
-		height: 180rpx;
-		margin-top: 24rpx;
-		margin-left: 24rpx;
-	}
-
-	.teacherMsg1 {
-		font-size: 24rpx;
-		font-family: PingFangSC, PingFang SC;
-		font-weight: 400;
-		color: #999999;
-		line-height: 40rpx;
-	}
-
-	.teacherImg {
-		width: 180rpx;
-		height: 180rpx;
-		border-radius: 8rpx;
-		margin-top: 22rpx;
-		margin-left: 22rpx;
-	}
-
-	.serviceTeacher1 {
-		width: 678rpx;
-		height: 222rpx;
-		background: #FAFAFA;
-		border-radius: 16rpx;
-		border: 4rpx solid #FAFAFA;
-		margin-top: 24rpx;
-	}
-
-	.chooseServiceTeacherButton {
-		width: 686rpx;
-		height: 80rpx;
-		margin-left: 32rpx;
-		margin-top: 32rpx;
-	}
-
-	.chooseServiceTeacherButtonL {
-		width: 332rpx;
-		height: 80rpx;
-		background: #F5F5F5;
-		border-radius: 54rpx;
-		text-align: center;
-		line-height: 80rpx;
-		font-size: 28rpx;
-		font-weight: 400;
-		color: #666666;
-	}
-
-	.chooseServiceTeacherButtonR {
-		width: 332rpx;
-		height: 80rpx;
-		background: #FFE05C;
-		border-radius: 54rpx;
-		text-align: center;
-		line-height: 80rpx;
-		font-size: 28rpx;
-		font-weight: 400;
-		color: #333333;
-	}
-
-	.serobV {
-		width: 32rpx;
-		height: 32rpx;
-		position: absolute;
-		top: 0;
-		right: 0;
-	}
-
-	.serobVicon {
-		width: 32rpx;
-		height: 32rpx;
-	}
-
-	.selectBack {
-		background: rgba(255, 224, 92, 0.1);
-		border: 4rpx solid #FFE05C;
-		box-sizing:border-box
-	}
-</style>

+ 0 - 220
orderPages/bookService/components/chooseServiceTime.vue

@@ -1,220 +0,0 @@
-<template>
-	<view>
-		<uni-popup ref="chooseServiceTimePopup" :catchtouchmove="true" type="bottom">
-
-			<view class="chooseServiceTimeView">
-				<view class="chooseServiceTimeTitle">
-					<text>选择服务时段</text>
-				</view>
-
-				<scroll-view class="scrollY" scroll-y>
-
-					<view v-if="periodDateList === null || periodDateList.length === 0">
-						<view class="flex-row justify-center">
-							<image class="timeNull" src="/static/order/timeNull.png"></image>
-						</view>
-						<view class="timeNullText"><text>暂无服务时段,请选择其他技师</text></view>
-					</view>
-
-
-					<u-grid v-else :border="false" col="5">
-						<u-grid-item v-for="(item,index) in periodDateList" :key="index" @click="selectPeriod(item,index)">
-							<view class="flex-col justify-center timeItem" :class="{selectBack: item.label == label}">
-								<view class="flex-row justify-center">
-									<text class="time">{{item.label}}</text>
-								</view>
-								<view class="flex-row justify-center">
-									<text class="price">¥{{item.price}}</text>
-								</view>
-							</view>
-						</u-grid-item>
-					</u-grid>
-
-				</scroll-view>
-
-				<view class="flex-row justify-between chooseServiceTeacherButton">
-					<view class="chooseServiceTeacherButtonL" @click="closePopup">
-						<text>取消</text>
-					</view>
-					<view class="chooseServiceTeacherButtonR" @click="submit">
-						<text>确定</text>
-					</view>
-				</view>
-			</view>
-		</uni-popup>
-	</view>
-</template>
-
-<script>
-	export default {
-		name: 'chooseServiceTime',
-		data() {
-			return {
-				label:'',
-				selectIndex:0,
-				periodDateList: []
-			}
-		},
-		methods: {
-			submit(){
-				this.$emit("getPeriodDate",this.periodDateList[this.selectIndex])
-				this.closePopup()
-			},
-
-
-			closePopup() {
-				this.$refs.chooseServiceTimePopup.close()
-			},
-
-			selectPeriod(e,index){
-				this.label = e.label
-				this.selectIndex = index
-			},
-
-			openPopup(personId, date,storeId,childService,selectChildService,label) {
-				this.$refs.chooseServiceTimePopup.open()
-				this.label =label
-				this.getServiceTime(personId, date,storeId,childService,selectChildService)
-			},
-
-			//获取门店排班时段
-			getServiceTime(personId, date,storeId,childService,selectChildService) {
-				this.$api.getServicePersonTime({
-					personId:personId,
-					date: date,
-					storeId:storeId
-				}).then(res => {
-					let periodTimeList = res.data.data
-					let selectServiceObjectList = childService.filter(selectServiceObject =>
-							(selectServiceObject.serviceUserId === personId
-							&& selectServiceObject.serviceObjectId !== childService[selectChildService].serviceObjectId)
-							|| selectServiceObject.serviceUserId === -1
-
-				)
-					selectServiceObjectList.forEach(selectServiceObject =>{
-						periodTimeList.forEach(periodTime =>{
-							if (selectServiceObject.serviceStartTime === periodTime.label ){
-								periodTime.total = periodTime.total - 1
-							}
-						})
-					})
-					periodTimeList = periodTimeList.filter(periodTime=> periodTime.total>0)
-					console.log(periodTimeList)
-					this.periodDateList = periodTimeList
-					// if (this.periodTimeList.length === 0) {
-					// 	uni.$u.toast('暂无排班时段')
-					// }
-				})
-			},
-
-
-		}
-	}
-</script>
-
-<style scoped lang="scss">
-	.chooseServiceTimeView {
-		width: 750rpx;
-		height: 850rpx;
-		background: #FFFFFF;
-		border-radius: 24rpx 24rpx 0rpx 0rpx;
-	}
-
-	.chooseServiceTimeTitle {
-		font-size: 32rpx;
-		font-weight: bold;
-		color: #333333;
-		line-height: 44rpx;
-		margin-left: 34rpx;
-		padding-top: 26rpx;
-	}
-
-	.scrollY {
-		width: 730rpx;
-		height: 604rpx;
-		margin-top: 8rpx;
-		margin-left: 10rpx;
-	}
-
-	.timeItem {
-		width: 124rpx;
-		height: 124rpx;
-		background: #FAFAFA;
-		border-radius: 16rpx;
-		margin-top: 16rpx;
-	}
-
-
-	.time {
-		font-size: 24rpx;
-		color: #333333;
-		line-height: 40rpx;
-	}
-
-	.price {
-		font-size: 24rpx;
-		color: #ED569F;
-		line-height: 40rpx;
-	}
-
-	.chooseServiceTeacherButton {
-		width: 686rpx;
-		height: 80rpx;
-		margin-left: 32rpx;
-		margin-top: 32rpx;
-	}
-
-	.chooseServiceTeacherButtonL {
-		width: 332rpx;
-		height: 80rpx;
-		background: #F5F5F5;
-		border-radius: 54rpx;
-		text-align: center;
-		line-height: 80rpx;
-		font-size: 28rpx;
-		font-weight: 400;
-		color: #666666;
-	}
-
-	.chooseServiceTeacherButtonR {
-		width: 332rpx;
-		height: 80rpx;
-		background: #FFE05C;
-		border-radius: 54rpx;
-		text-align: center;
-		line-height: 80rpx;
-		font-size: 28rpx;
-		font-weight: 400;
-		color: #333333;
-	}
-
-	.serobV {
-		width: 32rpx;
-		height: 32rpx;
-		position: absolute;
-		top: 0;
-		right: 0;
-	}
-
-	.serobVicon {
-		width: 32rpx;
-		height: 32rpx;
-	}
-
-	.selectBack {
-		background: rgba(255, 224, 92, 0.1);
-		border: 4rpx solid #FFE05C;
-		box-sizing:border-box
-	}
-	.timeNull{
-		width: 200rpx;
-		height: 200rpx;
-		margin-top: 100rpx;
-	}
-	.timeNullText{
-		text-align: center;
-		font-size: 28rpx;
-		color: #333333;
-		margin-top: 40rpx;
-	}
-</style>

+ 44 - 53
orderPages/bookService/index.rpx.scss

@@ -1,8 +1,18 @@
 .page{
   background: #F7F7F7;
 }
+.periodDate{
+  height: 100rpx;
+  background: #FFFFFF;
+  font-size: 28rpx;
+  font-weight: 500;
+  color: #333333;
+  line-height: 100rpx;
+  padding-left: 32rpx;
+}
 .group{
   background: #FFFFFF;
+  margin-top: 16rpx;
   padding: 24rpx 32rpx;
 }
 .serob{
@@ -10,27 +20,19 @@
   font-weight: bold;
   color: #333333;
 }
-.serobItems{
-  margin-top: 32rpx;
-  height: 206rpx;
-}
-.scrollX{
-  height: 206rpx;
-  white-space: nowrap;
-  min-width: 150rpx;
-  max-width: 506rpx;
 
-}
+
 .serobItem{
-  width: 150rpx;
-  height: 206rpx;
+  //width: 150rpx;
+  margin-top: 24rpx;
   text-align: center;
-  margin-left: 28rpx;
   position: relative;
-
 }
-.serobItem:first-child {
-  margin-left: 0rpx;
+.teachPrice{
+  font-size: 24rpx;
+  font-weight: 400;
+  color: #ED569F;
+  line-height: 40rpx;
 }
 .serobImgView{
   width: 146rpx;
@@ -43,16 +45,7 @@
   border-radius: 75rpx;
 
 }
-.addSerobImg{
-  width: 146rpx;
-  height: 146rpx;
-  border-radius: 75rpx;
-  margin-left: 28rpx;
-  border: 2rpx dashed #DDDDDD;
-  font-size: 120rpx;
-  text-align: center;
-  line-height: 130rpx;
-}
+
 
 .serobName{
   height: 40rpx;
@@ -102,38 +95,12 @@
   width: 486rpx;
   color: #999999;
 }
-.hintView{
-  width: 686rpx;
-  height: 104rpx;
-  background: #FFF7EA;
-  border-radius: 16rpx;
-  border: 2rpx solid #FFFFFF;
-  margin: 24rpx 32rpx;
-}
-.hint{
-  width: 24rpx;
-  height: 24rpx;
-  border-radius: 12rpx;
-  text-align: center;
-  background:   #FFAF36;
-  color: #FFFFFF;
-  font-size: 18rpx;
-  margin-left: 10rpx;
-}
-.hintCentent{
-  font-size: 24rpx;
-  font-weight: 400;
-  color: #FFAF36;
-  line-height: 40rpx;
-  margin-left: 16rpx;
-  margin-top: 12rpx;
-}
 
 .selectSerobImg{
   width: 80rpx;
   height: 80rpx;
   border-radius: 40rpx;
-  margin-bottom: 40rpx;
+  margin-bottom: 32rpx;
 }
 .selectSerobName{
   font-size: 24rpx;
@@ -208,3 +175,27 @@
   color: red;
   line-height: 30rpx;
 }
+.timeItem {
+  width: 124rpx;
+  height: 124rpx;
+  background: #FAFAFA;
+  border-radius: 16rpx;
+  margin-top: 16rpx;
+}
+.selectBack {
+  background: rgba(255, 224, 92, 0.1);
+  border: 4rpx solid #FFE05C;
+  box-sizing:border-box
+}
+
+.time {
+  font-size: 24rpx;
+  color: #333333;
+  line-height: 40rpx;
+}
+
+.price {
+  font-size: 24rpx;
+  color: #ED569F;
+  line-height: 40rpx;
+}

+ 112 - 224
orderPages/bookService/index.vue

@@ -1,78 +1,74 @@
 <template>
 	<view class="page">
+		<view class="periodDate">
+			<text>服务日期:{{periodDate.label}}</text>
+		</view>
 
 		<view class="flex-col group">
 			<view class="serob"><text>服务对象</text></view>
-			<view class="serobItems flex-row">
-				<scroll-view class="scrollX" scroll-x>
-					<view class="flex-row">
-						<view class="serobItem flex-col" v-for="(item,index) in serviceObjectList" :key="index">
-							<view class="serobImgView" @click="selectServiceObject(item)">
-								<image class="serobImg" mode="aspectFill" :src="item.facePhotoUrl || '/static/logo.png'"></image>
-							</view>
-							<text class="serobName">{{item.nickName || '未填写'}}</text>
-							<view class="serobV" v-if="item.select === true">
-								<image class="serobVicon" src="/static/order/ud20.png"></image>
-							</view>
+			<u-grid :border="false" col="4">
+				<u-grid-item v-for="(item,index) in serviceObjectList" :key="index">
+					<view class="serobItem flex-col" >
+						<view class="serobImgView" @click="selectServiceObject(item)">
+							<image class="serobImg" mode="aspectFill" :src="item.facePhotoUrl || '/static/logo.png'"></image>
+						</view>
+						<text class="serobName">{{item.nickName || '未填写'}}</text>
+						<view class="serobV" v-if="item.select === true">
+							<image class="serobVicon" src="/static/order/ud20.png"></image>
 						</view>
 					</view>
-				</scroll-view>
-				<view class="addSerobImg" @click="addServiceObject">
-					<text>+</text>
-				</view>
-			</view>
+				</u-grid-item>
+			</u-grid>
 		</view>
 
-		<view class="flex-row hintView">
-			<view class="flex-col justify-center">
-				<view class="hint">
-					<text>!</text>
-				</view>
-			</view>
-			<view class="hintCentent">
-				<text>娇宝,提前10分钟到哟,一人一号过号需要重新取号排队!等你哟</text>
-			</view>
-
-		</view>
-
-		<view class="flex-col group marginTop" v-for="(item, index) in orderParam.childService">
-			<view class="flex-row">
+		<view class="flex-col group " v-for="(item, index) in orderParam.childService">
+			<view class="flex-row " >
 				<image class="selectSerobImg" mode="aspectFill" :src="item.facePhotoUrl || '/static/logo.png'"></image>
 				<text class="selectSerobName">{{item.nickName || '未填写'}}</text>
 			</view>
-
-			<view class="flex-row  groupItem ">
-				<view class="groupItemKey ">
-					<text>服务日期</text>
-				</view>
-				<view class="flex-row justify-between groupItemContent ">
-					<text>{{ item.periodDate || '请选择服务日期' }}</text>
-				</view>
+			<view class="serob">
+				<text>服务人员</text>
 			</view>
-
-			<view class="flex-row  groupItem">
-				<view class="groupItemKey">
-					<text>服务人员</text>
-				</view>
-				<view class="flex-row justify-between groupItemContent" @click="chooseServiceTeacher(index,item.serviceUserId)">
-					<text>{{ item.personName || '请选择服务人员' }}</text>
-					<u-icon name="arrow-right" color="#666" size="18"></u-icon>
-				</view>
+			<view >
+				<u-grid col="4">
+					<u-grid-item  v-for="(item,index1) in item.serviceTeacherList" :key="index1" >
+						<view class="serobItem flex-col " >
+							<view class="serobImgView ">
+								<image class="serobImg" mode="aspectFill" :src="item.facePhotoUrl || '/static/logo.png'"></image>
+							</view>
+							<text class="serobName ">{{item.personName || '未填写'}}</text>
+							<view class="flex-row justify-center ">
+								<u-icon name="rmb-circle" size="14"></u-icon>
+								<text class="teachPrice">¥{{item.fee}}</text>
+							</view>
+							<view class="serobV " v-if="item.select === true">
+								<image class="serobVicon" src="/static/order/ud20.png"></image>
+							</view>
+						</view>
+					</u-grid-item>
+				</u-grid>
 			</view>
-
-			<view class="flex-row  groupItem">
-				<view class="groupItemKey">
-					<text>服务时段</text>
-				</view>
-				<view class="flex-row justify-between groupItemContent" @click="chooseServiceTime(index)">
-					<text>{{ item.serviceStartTime || '服务时段' }}</text>
-					<u-icon name="arrow-right" color="#666" size="18"></u-icon>
-				</view>
+			<view class="serob" :style="{'marginTop':'32rpx'}">
+				<text>服务时段</text>
+			</view>
+			<view>
+				<u-grid :border="false" col="5">
+					<u-grid-item v-for="(item,index2) in item.serviceTimeList" :key="index2">
+						<view class="flex-col justify-center timeItem" :class="{selectBack: item.select}">
+							<view class="flex-row justify-center">
+								<text class="time">{{item.label}}</text>
+							</view>
+							<view class="flex-row justify-center">
+								<text class="price">¥{{item.price}}</text>
+							</view>
+						</view>
+					</u-grid-item>
+				</u-grid>
 			</view>
 		</view>
 
 
-		<view class="flex-col group marginTop">
+		<view class="flex-col group ">
 			<view class="groupItemKey">
 				<text>服务定制</text>
 			</view>
@@ -102,43 +98,31 @@
 				</view>
 			</view>
 		</view>
-		<chooseServiceTeacher ref="chooseServiceTeacher" :storeId="store.storeId" :date="date" @getWorkPerson="getWorkPerson"></chooseServiceTeacher>
-		<chooseServiceTime ref="chooseServiceTime"  @getPeriodDate="getPeriodDate"></chooseServiceTime>
 		<myPay ref="myPay" :blPay="false" :orderNo="subOrderNo" @payResult="payResult"></myPay>
 	</view>
 </template>
 
 <script>
-	import chooseServiceTeacher from './components/chooseServiceTeacher';
-	import chooseServiceTime from './components/chooseServiceTime';
 	import myPay from '../../components/pay/pay';
 	export default {
 		components: {
-			chooseServiceTeacher,
-			chooseServiceTime,
 			myPay
 		},
 		data() {
 			return {
-				selectIndex:0,
-				requestStatus:false,
-				personId:'',
-				date:'',
-				serviceObjectList: [],
+				//服务对象列表
+				serviceObjectList:[],
+				//服务人员列表
+				serviceTeacherList:[],
 				userInfo: {},
 				//服务门店
 				store: {},
-				//默认服务技师
-				serviceTeacher: {},
 				//默认服务时间
 				periodDate: [],
-				//默认服务时段
-				periodTime: [],
 				//预约费用
 				price: '0',
 				//订单编号
 				orderNo: '',
-				subOrderNo: '',
 				selectIcon: true,
 				orderParam:{
 					orderType: 1,
@@ -148,14 +132,15 @@
 					serviceDate:'',
 					childService:[
 						// 	{
-						// 		periodDate:'',//回显需要,不做参数
 						// 		serviceObjectId: '',
 						// 		facePhotoUrl:'', //回显需要,不做参数
 						// 		nickName:'', //回显需要,不做参数
 						// 		serviceUserId: '',
 						// 		personName:'',//回显需要,不做参数
 						// 		fee:'',//回显需要,不做参数
-						// 		serviceStartTime: ''
+						// 		serviceStartTime: '',
+						// 		serviceTeacherList:[],//服务人员列表,回显需要,不做参数
+						// 		serviceTimeList:[]//服务时段列表,回显需要,不做参数
 						// }
 					]
 				}
@@ -165,11 +150,13 @@
 			this.store = uni.getStorageSync('storeInfo')
 			this.userInfo = uni.getStorageSync('userInfo')
 			this.orderParam.serviceStoreId = this.store.storeId
+			//获取排班日期
+			this.selectDate()
+			this.listServiceObject()
 
 		},
 		onShow() {
-			// 服务对象
-			this.listServiceObject()
+
 		},
 		mounted(){
 
@@ -185,11 +172,8 @@
 					organization: this.store.storeId
 				}).then(res => {
 					this.periodDate = res.data.data[0]
-					this.date=this.periodDate.label
 					this.orderParam.serviceDate=this.periodDate.label
-					if (res.data.data[0]){
-						this.getServicePerson(res.data.data[0].label);
-					}
+					this.getServicePerson(this.periodDate.label)
 				})
 			},
 
@@ -199,39 +183,60 @@
 					storeId:this.store.storeId,
 					date:date
 				}).then((res) => {
-					this.serviceTeacher = res.data.data[0];
-					this.personId =this.serviceTeacher.id
-					if (res.data.data[0]){
-						this.getServiceTime(date,res.data.data[0].personId)
-					}
+					this.serviceTeacherList = res.data.data;
+					this.serviceTeacherList[0].select = true
+					this.getServicePersonUrl(this.serviceTeacherList);
 				})
 			},
+			getServicePersonUrl(items){
+				for (let i = 0; i < items.length; i++) {
+					if (items[i].facePhoto) {
+						this.$api.getImgUrlByOssId({
+							ossId: items[i].facePhoto
+						}).then(res => {
+							items[i].facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
+							this.$set(this.serviceTeacherList, i, items[i])
+						})
+					}
+				}
+			},
+
+
+			// 查询服务对象信息列表
+			listServiceObject() {
+				this.$api.listServiceObject(this.reqParm).then((res) => {
+					console.log(res)
+					this.serviceObjectList = res.data.data
+					this.getServiceObjectUrl(this.serviceObjectList);
 
-			//获取门店排班时段
-			getServiceTime(date,personId) {
-				this.$api.getServicePersonTime({
-					personId: personId,
-					date: date,
-					storeId:this.store.storeId
-				}).then(res => {
-					this.periodTime = res.data.data[0]
-					this.orderParam.childService[0].serviceStartTime = this.periodTime.label
-					this.orderParam.childService[0].periodDate = this.periodDate.label,
-					this.orderParam.childService[0].serviceUserId = this.serviceTeacher.personId ,
-					this.orderParam.childService[0].personName = this.serviceTeacher.personName ,//回显需要,不做参数
-					this.orderParam.childService[0].fee = this.serviceTeacher.fee //回显需要,不做参数
 				})
 			},
+			// 获取图片
+			getServiceObjectUrl(items) {
+				for (let i = 0; i < items.length; i++) {
+					if (items[i].facePhoto) {
+						this.$api.getImgUrlByOssId({
+							ossId: items[i].facePhoto
+						}).then(res => {
+							items[i].facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
+							this.$set(this.serviceObjectList, i, items[i])
+							if (i === 0){
+								this.selectServiceObject(items[i])
+							}
+						})
+					}
+				}
+			},
 
 			selectServiceObject(item) {
-				this.subOrderNo=''
 				console.log(item)
 				if (item.select) {
 					this.orderParam.childService = this.orderParam.childService.filter(selectServiceObject =>
 						selectServiceObject.serviceObjectId !== item.id)
 				} else {
+
 					this.$api.getServicePersonTime({
-						personId: this.serviceTeacher.personId,
+						personId: this.serviceTeacherList[0].personId,
 						date: this.periodDate.label,
 						storeId:this.store.storeId
 					}).then(res => {
@@ -247,16 +252,17 @@
 							})
 						})
 						periodTimeList = periodTimeList.filter(periodTime=> periodTime.total>0)
+						periodTimeList[0].select = true
 						console.log(periodTimeList)
 						let childService ={
-							periodDate: this.periodDate.label,
 							serviceObjectId: item.id,
 							facePhotoUrl:item.facePhotoUrl, //回显需要,不做参数
 							nickName:item.nickName, //回显需要,不做参数
-							serviceUserId: this.serviceTeacher.personId ,
-							personName:this.serviceTeacher.personName ,//回显需要,不做参数
-							fee:this.serviceTeacher.fee ,//回显需要,不做参数
-							serviceStartTime: periodTimeList[0].label ,
+							serviceUserId: this.serviceTeacherList[0].personId,
+							fee:this.serviceTeacherList[0].fee,//回显需要,不做参数
+							serviceStartTime: periodTimeList[0].label,
+							serviceTeacherList:this.serviceTeacherList,//服务人员列表,回显需要,不做参数
+							serviceTimeList:periodTimeList//服务时段列表,回显需要,不做参数
 						}
 						this.orderParam.childService.push(childService)
 
@@ -270,124 +276,6 @@
 				}
 			},
 
-			// 查询服务对接信息列表
-			listServiceObject() {
-				this.$api.listServiceObject(this.reqParm).then((res) => {
-					console.log(res)
-					this.serviceObjectList = res.data.data
-
-					if (this.orderParam.childService.length === 0) {
-						let selectServiceObject = this.serviceObjectList[0]
-						this.serviceObjectList[0].select = true
-						let childService ={
-							periodDate: '',
-							serviceObjectId: selectServiceObject.id,
-							facePhotoUrl:selectServiceObject.facePhotoUrl,
-							nickName:selectServiceObject.nickName,
-							serviceUserId: -1 ,
-							fee:'' ,
-							serviceStartTime: '' ,
-						}
-						this.orderParam.childService.push(childService)
-						this.selectDate()
-					} else {
-						for (let selectServiceObject of this.orderParam.childService) {
-							for (let serviceObject of this.serviceObjectList) {
-								if (selectServiceObject.id === serviceObject.id) {
-									serviceObject.select = true
-								}
-							}
-						}
-					}
-					this.getImgUrlByBannerOssId(this.serviceObjectList);
-
-				})
-			},
-			// 获取图片
-			getImgUrlByBannerOssId(items) {
-				for (let i = 0; i < items.length; i++) {
-					if (items[i].facePhoto) {
-						this.$api.getImgUrlByOssId({
-							ossId: items[i].facePhoto
-						}).then(res => {
-							items[i].facePhotoUrl = res.data.data[0].url.replace(/^http:/, "https:")
-							this.$set(this.serviceObjectList, i, items[i])
-							if (i === 0){
-								this.orderParam.childService[0].facePhotoUrl =res.data.data[0].url.replace(/^http:/, "https:")
-							}
-						})
-					}
-				}
-			},
-
-
-			addServiceObject() {
-				uni.navigateTo({
-					url: '/myPages/ServiceObjectManagement/index'
-				})
-			},
-
-
-			//选择服务人员
-			chooseServiceTeacher(index,serviceUserId) {
-				this.selectIndex = index
-				this.$refs.chooseServiceTeacher.openPopup(serviceUserId)
-			},
-
-			//选择服务人员
-			getWorkPerson(e) {
-
-				if (e.personId !== this.orderParam.childService[this.selectIndex].serviceUserId){
-					this.subOrderNo=''
-					this.$api.getServicePersonTime({
-						personId: e.personId,
-						date: this.periodDate.label,
-						storeId: this.store.storeId
-					}).then(res => {
-						this.orderParam.childService[this.selectIndex].serviceUserId = e.personId
-						this.orderParam.childService[this.selectIndex].personName = e.personName
-						this.orderParam.childService[this.selectIndex].fee = e.fee
-						this.orderParam.childService[this.selectIndex].serviceStartTime = ''
-						let periodTimeList = res.data.data
-						let selectServiceObjectList = this.orderParam.childService.filter(selectServiceObject =>
-								selectServiceObject.serviceUserId === e.personId
-								|| selectServiceObject.serviceUserId === -1
-						)
-						selectServiceObjectList.forEach(selectServiceObject =>{
-							periodTimeList.forEach(periodTime =>{
-								if (selectServiceObject.serviceStartTime === periodTime.label){
-									periodTime.total = periodTime.total - 1
-								}
-							})
-						})
-						periodTimeList = periodTimeList.filter(periodTime=> periodTime.total>0)
-						this.orderParam.childService[this.selectIndex].serviceStartTime = periodTimeList[0].label
-						this.price = 0
-						for (let childService of this.orderParam.childService) {
-							this.price =  this.price * 1 + childService.fee * 1
-						}
-					})
-				}
-			},
-
-			//选择服务时段
-			chooseServiceTime(index) {
-				this.selectIndex = index
-				this.$refs.chooseServiceTime.openPopup(this.orderParam.childService[index].serviceUserId,
-						this.periodDate.label,this.store.storeId,this.orderParam.childService,index,this.orderParam.childService[index].serviceStartTime)
-			},
-			//选择服务时段
-			getPeriodDate(e) {
-				console.log(e)
-				if (e){
-					if (this.orderParam.childService[this.selectIndex].serviceStartTime !== e.label){
-						this.subOrderNo=''
-						this.orderParam.childService[this.selectIndex].serviceStartTime = e.label
-						this.$set(this.orderParam)
-					}
-				}
-
-			},
 
 			selectChange() {
 				this.selectIcon = !this.selectIcon

+ 15 - 9
orderPages/orderDetail/index.rpx.scss

@@ -59,6 +59,13 @@
   color: #333333;
   line-height: 40rpx;
 }
+.orderNo{
+  font-size: 28rpx;
+  font-family: PingFangSC, PingFang SC;
+  font-weight: 400;
+  color: #333333;
+  line-height: 60rpx;
+}
 .key{
   font-size: 24rpx;
   font-family: PingFangSC-Regular, PingFang SC;
@@ -116,9 +123,7 @@
   background: #EEEEEE;
   margin-top: 32rpx;
 }
-.right{
-  width: 620rpx;
-}
+
 .projectState{
   font-size: 24rpx;
   font-family: PingFangSC-Regular, PingFang SC;
@@ -128,10 +133,10 @@
 }
 
 .projectMoney{
+  height: 44rpx;
   font-size: 28rpx;
-  font-family: PingFangSC-Medium, PingFang SC;
-  font-weight: 500;
-  color: #353535;
+  font-weight: 600;
+  color: #ED569F;
   line-height: 44rpx;
 }
 
@@ -223,9 +228,10 @@
   text-align: center;
 }
 .borderBottom{
-  margin-top: 32rpx;
-  border-bottom:  1px solid #F7F7F7;
-  padding-bottom: 32rpx;
+  margin-top: 24rpx;
+  border-top:  1px solid #F7F7F7;
+  padding: 24rpx 0;
+
 }
 .appealView{
   width: 700rpx;

+ 31 - 81
orderPages/orderDetail/index.vue

@@ -13,21 +13,17 @@
                         <view :class="order.serviceAttribute == 1? 'serviceAttrDesc':'serviceAttrDesc1'">
                             <text>{{order.serviceAttrDesc}}</text>
                         </view>
-                        <view class="flex-row justify-start">
-                            <u-icon name="/static/index/u217.png" color="#93D21A" size="18"></u-icon>
-                            <text class="key">订单编号:</text>
-                            <text class="value">{{order.orderNo}}</text>
-                        </view>
-                        <view>
-                            <text  class="serviceType">{{order.serviceType}}</text>
+                        <view class="flex-row justify-start orderNo">
+                            <text>订单编号:</text>
+                            <text>{{order.orderNo}}</text>
                         </view>
 
                         <view class="flex-row justify-between  jishi">
                             <view class="flex-col ">
                                 <view class=" flex-row">
                                     <u-icon name="/static/order/ud1.png" color="#93D21A" size="18"></u-icon>
-                                    <text  class="key">服务对象:</text>
-                                    <text  class="value">{{order.serviceObjectName || ''}}</text>
+                                    <text  class="key">服务日期:</text>
+                                    <text  class="value">{{order.serviceDate || ''}}</text>
                                 </view>
                                 <view class="flex-row">
                                     <u-icon name="/static/order/ud2.png" color="#93D21A" size="18"></u-icon>
@@ -35,72 +31,18 @@
                                     <text class="value">{{order.storeName}}</text>
                                 </view>
                                 <view class="flex-row">
-                                    <u-icon name="clock" size="16"></u-icon>
+                                    <u-icon name="/static/order/ud14.png" size="16"></u-icon>
                                     <text class="key">下单时间:</text>
                                     <text class="value">{{order.createTime}}</text>
                                 </view>
                             </view>
 
-                            <view class="flex-col justify-center " v-if="order.serviceAttribute == 1">
-                                <view class="planNumber flex-row justify-center">
-                                    <text>{{order.planNumber}}</text>
-                                </view>
-                                <view class="plan flex-row justify-center">
-                                    <text class="plan">排号</text>
-                                </view>
-                            </view>
                         </view>
 
 
-                        <view class="flex-row justify-between yuyue " v-if="order.serviceAttribute == 2">
-                            <view class="flex-col justify-center ">
-                                <view class=" flex-row">
-
-                                    <u-icon name="clock" size="16"></u-icon>
-                                    <text  class="key">服务日期:</text>
-                                    <text  class="value">{{order.serviceDate}}</text>
-                                </view>
-                                <view class="flex-row">
-                                    <u-icon name="/static/order/ud2.png" color="#93D21A" size="18"></u-icon>
-                                    <text class="key">服务时段:</text>
-                                    <text class="value">{{order.serviceStartTime}}</text>
-                                </view>
-                                <view class="flex-row">
-                                    <u-icon name="/static/order/ud3.png" color="#93D21A" size="18"></u-icon>
-                                    <text class="key">服务人员:</text>
-                                    <text class="value">{{order.servicePersonName}}</text>
-                                </view>
-                            </view>
-
-                            <view class="flex-col justify-center ">
-                                <view class="planNumber flex-row justify-center">
-                                    <text>{{order.planNumber}}</text>
-                                </view>
-                                <view class="plan flex-row justify-center">
-                                    <text class="plan">预约号</text>
-                                </view>
-                            </view>
-                        </view>
-
-
-
-                        <view class="flex-row justify-center"  v-if="order.canScanCode">
-                            <view class="scan flex-row justify-center" @click="scanCodeOrder(order)">
-                                <u-icon name="scan" size="18"></u-icon>
-                                <text>扫码</text>
-                            </view>
-                        </view>
-                        <view class="line"></view>
-
-                        <view class="flex-row justify-between borderBottom" v-for="(item,index) in order.child" :key="index">
-<!--                            <view class="flex-col justify-center" v-if="order.orderStatus != 3">-->
-<!--                                <u-icon v-if="item.tick" name="checkmark-circle-fill" color="#38db38" size="20" @click="tick(item,index)"></u-icon>-->
-<!--                                <u-icon v-else name="/static/order/ud9.png" color="green" size="20" @click="tick(item,index)"></u-icon>-->
-<!--                            </view>-->
-
-                            <view class="flex-col right">
-                                <view class="flex-row justify-between">
-                                    <text class="serviceType">{{item.serviceName}}</text>
+                        <view class="flex-col borderBottom " v-for="(item,index) in order.child" :key="index">
+                                <view class="flex-row justify-between ">
+                                    <text class="serviceType">排号:A102</text>
                                     <text class="projectState">{{item.statusDesc}}</text>
                                 </view>
 
@@ -108,38 +50,46 @@
                                     <view class="group_2"></view>
                                     <view class="group_3">
                                         <view class="flex-row">
-                                            <u-icon name="server-man" size="16"></u-icon>
-                                            <text class="key">服务人员:</text>
+                                            <u-icon name="/static/order/ud22.png" size="16"></u-icon>
+                                            <text class="key">服务项目:</text>
                                             <text class="value">{{item.servicePerson || ''}}</text>
                                         </view>
                                         <view class="flex-row">
-                                            <u-icon name="clock" size="16"></u-icon>
-                                            <text class="key">服务时间:</text>
-                                            <text class="value">{{item.serviceTime || ''}}</text>
+                                            <u-icon name="/static/order/ud21.png" size="16"></u-icon>
+                                            <text class="key">服务对象:</text>
+                                            <text class="value">{{item.servicePerson || ''}}</text>
+                                        </view>
+                                        <view class="flex-row">
+                                            <u-icon name="/static/order/ud14.png" size="16"></u-icon>
+                                            <text class="key">服务时段:</text>
+                                            <text class="value">{{item.servicePerson || ''}}</text>
+                                        </view>
+                                        <view class="flex-row">
+                                            <u-icon name="/static/order/ud3.png" size="16"></u-icon>
+                                            <text class="key">服务人员:</text>
+                                            <text class="value">{{item.servicePerson || ''}}</text>
                                         </view>
                                     </view>
                                 </view>
                                 <view class="flex-row justify-between">
-                                    <view v-if="item.discountAmount > 0">
+                                    <view >
+
+                                      <text  class="key">服务金额:</text>
                                       <text  class="projectMoney">¥{{item.payAmount}}</text>
-                                      <text  class="lineMoney">¥{{item.servicePrice}}</text>
+<!--                                      <text  class="lineMoney">¥{{item.servicePrice}}</text>-->
                                     </view>
-                                  <view v-else>
-                                    <text  class="projectMoney">¥{{item.servicePrice}}</text>
-                                  </view>
 
-                                    <view class="flex-row" v-if="item.status === 1" @click="appeal(item.orderServiceId)">
+                                    <view class="flex-row" @click="appeal(item.orderServiceId)">
                                         <u-icon name="/static/order/ud17.png" color="#93D21A" size="14"></u-icon>
                                         <text  class="ss_key">申诉</text>
                                     </view>
                                 </view>
-                            </view>
                         </view>
                     </view>
 
             <view class="bottomHeight"></view>
 
-            <view class="bottom1 flex-col"  v-if="order.orderStatus == 6 ">
+            <view class="bottom1 flex-col" >
                 <text class="allMoney"></text>
                 <view class="bottomBtn flex-row justify-between">
                     <view class=" flex-row">
@@ -151,7 +101,7 @@
                     </view>
 
                     <view v-if="order.canPay" class="btn" @click="qenPayInfo">
-                        <text class="text_33">一键付款</text>
+                        <text class="text_33">结 算</text>
                     </view>
                     <view v-else class="btn" @click="orderFinish">
                         <text  class="text_33">结束订单</text>

+ 1 - 1
pages.json

@@ -28,7 +28,7 @@
 		{
 			"path": "pages/order/index",
 			"style": {
-				"navigationBarTitleText": "我的订单",
+				"navigationStyle": "custom",
 				"enablePullDownRefresh": false
 			}
 		},

+ 4 - 6
pages/order/index.rpx.scss

@@ -1,5 +1,9 @@
+.content{
+  background: linear-gradient(to bottom, #FFF1B6,#F8F6ED 20%, #F7F7F7);
+}
 .tabBarLineHeight {
   height: 138rpx;
+
 }
 
 .tabBarView {
@@ -388,12 +392,6 @@
   color: #93BC23;
 
 }
-
-.tabs{
-  background: #FFFFFF;
-}
-
-
 .payView{
   height: 638rpx;
   background: #FFFFFF;

+ 7 - 128
pages/order/index.vue

@@ -1,25 +1,13 @@
 <template>
 	<view class="content">
 
-		<u-sticky>
-<!--			<view ref="hContentWrap" class="hContentWrap h-content-wrap">-->
-<!--				<view class="tab-bar">-->
-<!--					<view class="tab-item" :class="{ active: currentTab === 0 }" @click="changeTab(0)">-->
-<!--						服务订单-->
-<!--					</view>-->
-<!--					<view class="tab-item" :class="{ active: currentTab === 1 }" @click="changeTab(1)">-->
-<!--						产品订单-->
-<!--					</view>-->
-<!--				</view>-->
-<!--			</view>-->
-			<View class=" tabs">
+			<View  :style="{'paddingTop':menuButtonBottom}">
 				<u-tabs :list="tabList" :scrollable="false" lineWidth="30" lineColor="#FFE05C" :activeStyle="{
             					color: '#333333',
             					fontWeight: 'bold',
             					transform: 'scale(1.05)'
        							 }" :current="tabIndex" @click="clickTab"></u-tabs>
 			</View>
-		</u-sticky>
 
 		<!-- 订单列表 -->
 		<view :style="{'height':windowHeight}">
@@ -33,117 +21,6 @@
 			</swiper>
 		</view>
 
-
-<!--		<view class="product-order" v-if="currentTab === 1">-->
-<!--			&lt;!&ndash; Tab 2 内容 &ndash;&gt;-->
-<!--			<view class="developing">-->
-<!--				<text>敬请期待...</text>-->
-<!--			</view>-->
-<!--		</view>-->
-
-
-		<uni-popup ref="serialNumber">
-			<view class="serial-number">
-				<view class="text">
-					<text>您的排队号</text>
-				</view>
-				<view class="number">
-					<text>{{ orderNumberData.schedulingNo }}</text>
-				</view>
-
-				<view v-if="orderNumberData.overNo" class="text1">
-					<text>已过号,请重新取号</text>
-				</view>
-
-				<view v-else class="text">
-					<text>前面还有{{ orderNumberData.waitNoNum }}人在等待</text>
-				</view>
-
-				<view class="text">
-					<text>随时关注小程序的排队进程,过号作废</text>
-				</view>
-
-<!--				<view class="text">-->
-<!--					<text>0851—85833828</text>-->
-<!--				</view>-->
-			</view>
-		</uni-popup>
-
-		<uni-popup ref="popup" :catchtouchmove="true" :animation="false" type="bottom">
-
-			<view class=" payView">
-				<view class="flex-row justify-between">
-					<text class="payType">请选择支付方式</text>
-					<image class="x" src="/static/common/ox.png" @click="closePayPopup"></image>
-				</view>
-				<view class="payTitle">
-					<text>选择微信支付或余额支付</text>
-				</view>
-
-
-				<view class="payItem flex-row justify-between" @click="payItem(1)">
-					<view class="flex-row">
-						<u-icon name="/static/me/u701.png" color="#38db38" size="36"></u-icon>
-						<view class="payName flex-col justify-center">
-							<text>余额支付</text>
-							<text class="balance">可以余额¥{{userInfo.balance || 0}}</text>
-						</view>
-					</view>
-
-					<view class="flex-col justify-center">
-						<view v-if="curServiceTab === 1" >
-							<u-icon name="checkmark-circle-fill" color="#38db38" size="25"></u-icon>
-						</view>
-						<view v-else>
-							<u-icon name="/static/order/ud9.png" color="green" size="25"></u-icon>
-						</view>
-					</view>
-
-				</view>
-
-				<view class="payItem flex-row justify-between" @click="payItem(2)">
-					<view class="flex-row">
-						<u-icon name="weixin-circle-fill" color="#38db38" size="36"></u-icon>
-						<view class="payName flex-col justify-center">
-							<text>微信支付</text>
-						</view>
-					</view>
-					<view class="flex-col justify-center">
-						<view v-if="curServiceTab === 2" >
-							<u-icon name="checkmark-circle-fill" color="#38db38" size="25"></u-icon>
-						</view>
-						<view v-else>
-							<u-icon name="/static/order/ud9.png" color="green" size="25"></u-icon>
-						</view>
-					</view>
-				</view>
-
-				<view class="commitBtn" @click="commonGeneralOrder">
-					<text>确定</text>
-				</view>
-			</view>
-
-		</uni-popup>
-
-
-		<uni-popup ref="passwordPopup">
-			<view class="passwordView flex-col">
-				<view class="flex-row justify-center">
-					<text>请输入交易密码</text>
-				</view>
-				<view class="h-tab-bar flex-row justify-center">
-					<u-code-input  v-model="password" mode="box" dot></u-code-input>
-				</view>
-				<view class="flex-row justify-center">
-					<view class="h-operate-btn flex-row justify-center" @click="balancePay">
-						<text>确定</text>
-					</view>
-				</view>
-			</view>
-		</uni-popup>
-
-
-<!--		<view class="tabBarLineHeight"></view>-->
 		<view class="tabBarView">
 			<tab-bar :tabIndex="tabBarIndex"></tab-bar>
 		</view>
@@ -185,7 +62,8 @@
 				password:'',
 				openType:0,//开启的支付类型:1一键支付子订单费用,2:支付预约费用
 				appointmentOrder:{},
-				requestStatus : false
+				requestStatus : false,
+				menuButtonBottom:'',
 
 			}
 		},
@@ -193,10 +71,11 @@
 			uni.hideTabBar({
 				animation: false
 			})
-
+			let menuButton  = uni.getMenuButtonBoundingClientRect()
+			console.log(menuButton)
+			this.menuButtonBottom = menuButton.bottom + 'px'
 			let sysInfo = uni.getSystemInfoSync()
-      console.log(sysInfo,'2222222222222222222222222')
-			this.windowHeight = sysInfo.windowHeight - 74 + 'px' //除标题栏栏外的屏幕可用高度
+			this.windowHeight = sysInfo.windowHeight - menuButton.bottom - 74 + 'px' //除标题栏栏外的屏幕可用高度
 			this.$off()
 			this.$on('orderListIndex',this.listenerIndex)
 		},

+ 1 - 0
pages/order/module/index.rpx.css

@@ -285,6 +285,7 @@
 
 .item-text {
     color: #666666;
+    padding: 10rpx 0;
 }
 .item-v {
     font-family: PingFangSC-Medium, PingFang SC;

+ 52 - 104
pages/order/module/mescrollUni-item.vue

@@ -9,7 +9,7 @@
 		:up="upOption" @up="upCallback" @emptyclick="emptyClick">
 		<view>
 			<view class="service-order " v-for="(item,index) in list" :key="index">
-				<!-- 门店列表 -->
+
 				<view class="store-wrap" >
 					<view :class="{ 'grayscale': item.forstStatus === '1' }">
 						<view @click="orderDetail(item)" class="">
@@ -23,117 +23,45 @@
 										</view>
 									</view>
 								</view>
-                <view class="order-state-name">
-                  <text class="h-text1">{{ item.forstStatus === '1' ? '已冻结' : item.orderStatusDesc }}</text>
-                </view>
 							</view>
 							<view class="order-state">
 								<view class="order-num">
 									<view class="h-order-num">
 										<image src="/static/index/u217.png" mode=""></image>订单编号:{{ item.orderNo }}
 									</view>
-									<view class="h-order-text">
-										<text> {{item.serviceType }} </text>
-									</view>
 								</view>
-
-
 							</view>
 							<view class="flex-row justify-between ">
 								<view class="flex-col detail11 ">
-									<view class="d-item-row ">
-										<view class="item-icon">
-											<image src="/static/order/ud1.png" mode=""></image>
-										</view>
-										<view class="item-text">
-											服务对象:<text class="item-v">{{ item.serviceObjectName }}</text>
-										</view>
-									</view>
-									<view class="d-item-row ">
-										<view class="item-icon">
-											<image src="/static/order/ud2.png" mode=""></image>
-										</view>
-										<view class="item-text">
-											服务门店:<text class="item-v">{{ item.storeName }}</text>
-										</view>
-									</view>
-									<view class="d-item-row ">
-										<view class="item-icon">
-											<image src="/static/order/ud14.png" mode=""></image>
-										</view>
-										<view class="item-text">
-											下单时间:<text class="item-v">{{ item.createTime }}</text>
-										</view>
-									</view>
-								</view>
-
 
-								<view class="flex-col justify-center" v-if="item.serviceAttribute == 1">
-									<view class="planNumber flex-row justify-center">
-										<text>{{ item.planNumber || '未排号' }}</text>
+									<view class="item-text flex-row">
+										<u-icon name="/static/order/ud14.png" size="18"></u-icon>
+										服务日期:<text class="item-v">{{ item.serviceDate }}</text>
 									</view>
-
-									<view class="planNumber1 flex-row justify-center">
-										<text>排号</text>
+									<view class="item-text flex-row">
+										<u-icon name="/static/order/ud2.png" size="18"></u-icon>
+										服务门店:<text class="item-v">{{ item.storeName }}</text>
+									</view>
+									<view class="item-text flex-row">
+										<u-icon name="/static/order/ud14.png" size="18"></u-icon>
+										下单时间:<text class="item-v">{{ item.createTime }}</text>
 									</view>
 
 								</view>
-
-
-
 							</view>
-							<view class="detail flex-row justify-between" v-if="item.serviceAttribute == '2' " >
-								<view class="flexLR">
-									<view>
-										<view class="d-item-row ">
-											<view class="item-icon">
-												<image src="/static/order/ud3.png" mode=""></image>
-											</view>
-											<view class="item-text">
-												服务日期:<text class="item-v">{{item.serviceDate.substring(0,10) || ''}}</text>
-											</view>
-										</view>
-										<view class="d-item-row ">
-											<view class="item-icon">
-												<image src="/static/order/ud3.png" mode=""></image>
-											</view>
-											<view class="item-text">
-												服务时段:<text>{{item.serviceStartTime || ''}}</text>
-											</view>
-										</view>
-										<view class="d-item-row ">
-											<view class="item-icon">
-												<image src="/static/order/ud3.png" mode=""></image>
-											</view>
-											<view class="item-text">
-												服务技师:<text class="item-v">{{item.servicePersonName || '签到成功自动分配'}}</text>
-											</view>
-										</view>
-									</view>
-									<view class=" flex-col justify-center">
-										<view class="planNumber flex-row justify-center">
-											<text>{{ item.planNumber || '未排号' }}</text>
-										</view>
 
-										<view class="planNumber1 flex-row justify-center">
-											<text>预约号</text>
-										</view>
-									</view>
+							<view class="flex-row justify-end">
+								<view class="price" :style="{'padding-right':'40rpx'}" v-if="item.serviceAttribute == 2">
+									预约金额:<text class="fontColor"> ¥{{ item.subAmount || 0}}</text>
+								</view>
+								<view class="price">
+									订单总金额:<text class="fontColor"> ¥{{ item.payAmount || 0}}</text>
+									<text :style="{'text-decoration':'line-through','margin-left':'15rpx', 'font-size':'20rpx'}">¥{{ item.totalAmount || 0}}</text>
 								</view>
 							</view>
-							<view class="price" v-if="item.serviceAttribute == 2">
-								预约金额:<text class="fontColor"> ¥{{ item.subAmount || 0}}</text>
-							</view>
-							<view class="price">
-								订单总金额:<text class="fontColor"> ¥{{ item.payAmount || 0}}</text>
-								<text :style="{'text-decoration':'line-through','margin-left':'15rpx', 'font-size':'20rpx'}">¥{{ item.totalAmount || 0}}</text>
-							</view>
+
 						</view>
 						<view class="nav-bar">
-							<view class="btn" v-if="item.canScanCode"  @click="scanCodeOrder(item)">
-								<u-icon name="scan" size="18" />
-								<text>进店扫码</text>
-							</view>
 							<view class="btn" v-if="!item.canPay && item.orderStatus == 6"  @click="orderFinish(item)">
 								<text>结束订单</text>
 							</view>
@@ -146,22 +74,14 @@
 							<view @click="appointment(item)" class="btn" v-if="item.orderStatus == 9">
 								<text>去支付预约费用</text>
 							</view>
-<!--							<view @click="orderSign(item)" v-else-if="item.orderStatus == 4" class="btn">-->
-<!--								立即排队-->
-<!--								&lt;!&ndash; <text class="text1">点击开始排号</text> &ndash;&gt;-->
-<!--							</view>-->
+
 							<view @click="getOrderSign(item)" class="btn" v-else-if="item.orderStatus == 5">
 								<text>点击查看排号</text>
 							</view>
-<!--							<view class="btn" v-else-if="item.orderStatus == 6">-->
-<!--								<text>服务中</text>-->
-<!--							</view>-->
-<!--							<view class="btn" v-else-if="item.orderStatus == 7">-->
-<!--								<text>排号过期</text>-->
-<!--							</view>-->
-<!--							<view @click="gotoEvaluate(item)" class="btn" v-else-if="item.orderStatus == 8">-->
-<!--								<text>待评价</text>-->
-<!--							</view>-->
+
+							<view @click="orderSign(item)" class="btn">
+								<text>签到</text>
+							</view>
 
 						</view>
 					</view>
@@ -240,6 +160,34 @@
 
 		methods: {
 
+			orderSign(e){
+					let  that = this
+
+				  uni.getLocation({
+				    type: 'gcj02',
+				    success: function (res) {
+				      var latitude = res.latitude;
+				      var longitude = res.longitude;
+
+						console.log(res)
+						console.log(e)
+						that.$api.orderSign({
+							orderId:e.orderId,
+							latitude:latitude,
+							longitude:longitude
+						}).then(res=>{
+
+						})
+				    },
+					  fail:function (err) {
+
+						  console.log(err)
+					  }
+				  });
+				},
+
+
+
 
 			orderFinish(item){
 				this.$api.orderFinish(item.orderNo).then((res)=>{

binární
static/order/ud21.png


binární
static/order/ud22.png