Browse Source

no message

xiaoxin 3 years ago
parent
commit
a92dd3ee42

+ 72 - 1
pages.json

@@ -141,78 +141,150 @@
 				"path": "index/index",
 				"path": "index/index",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "授权中",
 					"navigationBarTitleText": "授权中",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "box/box",
 				"path": "box/box",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "首页",
 					"navigationBarTitleText": "首页",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "message/message",
 				"path": "message/message",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "消息中心",
 					"navigationBarTitleText": "消息中心",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "selectArea/selectArea",
 				"path": "selectArea/selectArea",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "区域选择",
 					"navigationBarTitleText": "区域选择",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "selectGoods/selectGoods",
 				"path": "selectGoods/selectGoods",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "物品选择",
 					"navigationBarTitleText": "物品选择",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "evaluate/evaluate",
 				"path": "evaluate/evaluate",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "评价",
 					"navigationBarTitleText": "评价",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "repairDetails/repairDetails",
 				"path": "repairDetails/repairDetails",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "报修详情",
 					"navigationBarTitleText": "报修详情",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "offer/offer",
 				"path": "offer/offer",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "报价",
 					"navigationBarTitleText": "报价",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "addGoods/addGoods",
 				"path": "addGoods/addGoods",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "关联耗材",
 					"navigationBarTitleText": "关联耗材",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "repairRecord/repairRecord",
 				"path": "repairRecord/repairRecord",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "维修记录",
 					"navigationBarTitleText": "维修记录",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "transferOrder/transferOrder",
 				"path": "transferOrder/transferOrder",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "转单审核",
 					"navigationBarTitleText": "转单审核",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "help/help",
 				"path": "help/help",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "协作审核",
 					"navigationBarTitleText": "协作审核",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}, {
 			}, {
 				"path": "helpPeople/helpPeople",
 				"path": "helpPeople/helpPeople",
 				"style": {
 				"style": {
 					"navigationBarTitleText": "协作人",
 					"navigationBarTitleText": "协作人",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
+					"enablePullDownRefresh": false
+				}
+			}, {
+				"path": "delay/delay",
+				"style": {
+					"navigationBarTitleText": "延时",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
+					"enablePullDownRefresh": false
+				}
+			}, {
+				"path": "edit/edit",
+				"style": {
+					"navigationBarTitleText": "编辑",
+					"disableScroll": true,
+					"navigationBarBackgroundColor": "#6FB6B8",
+					"navigationBarTextStyle": "white",
+					"backgroundColorTop": "#6FB6B8",
 					"enablePullDownRefresh": false
 					"enablePullDownRefresh": false
 				}
 				}
 			}]
 			}]
@@ -386,7 +458,6 @@
 		"navigationBarTextStyle": "black",
 		"navigationBarTextStyle": "black",
 		"navigationBarTitleText": "uni-app",
 		"navigationBarTitleText": "uni-app",
 		"navigationBarBackgroundColor": "#fff",
 		"navigationBarBackgroundColor": "#fff",
-		"backgroundColor": "#fff",
 		"usingComponents": {
 		"usingComponents": {
 			"login": "plugin://myPlugin/login"
 			"login": "plugin://myPlugin/login"
 		}
 		}

+ 229 - 4
pagesRepairs/addressBook/addressBook.vue

@@ -1,13 +1,144 @@
 <template>
 <template>
 	<view class="container">
 	<view class="container">
-		<view class="">通讯录</view>
+		<!-- 搜索框区域 -->
+		<view class="search">
+			<img src="../../static/images/repairsImg/search.png" />
+
+			<input type="text" placeholder="请输入搜索内容" />
+		</view>
+
+		<view class="title">外部维修成员({{ list.length }})</view>
+
+		<!-- 每一个外部维修成员区域 -->
+		<view class="box" v-for="item in list" :key="item.id" @click="handleEdit(item)">
+			<img src="../../static/images/repairsImg/photo.png" />
+			<view class="item_info">
+				<view class="info_msg">
+					{{ item.name }}
+					<view class="msg_work">{{ item.work }}</view>
+				</view>
+				<view class="info_phone">{{ item.phone }}</view>
+			</view>
+			<view class="item_type color_type" v-if="item.type === 1">接单中</view>
+			<view class="item_type color_type2" v-if="item.type === 2">订单饱和</view>
+			<view class="item_type color_type3" v-if="item.type === 3">停止接单</view>
+		</view>
+
+		<view class="title">内部维修成员({{ list2.length }})</view>
+		<!-- 每一个内部维修成员区域 -->
+		<view class="box" v-for="item in list2" :key="item.id" @click="handleEdit(item)">
+			<img src="../../static/images/repairsImg/photo.png" />
+			<view class="item_info">
+				<view class="info_msg">
+					{{ item.name }}
+					<view class="msg_work">{{ item.work }}</view>
+				</view>
+				<view class="info_phone">{{ item.phone }}</view>
+			</view>
+			<view class="item_type color_type" v-if="item.type === 1">接单中</view>
+			<view class="item_type color_type2" v-if="item.type === 2">订单饱和</view>
+			<view class="item_type color_type3" v-if="item.type === 3">停止接单</view>
+		</view>
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
 	data() {
 	data() {
-		return {}
+		return {
+			list: [
+				{
+					id: 1,
+					name: '张三',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				},
+				{
+					id: 2,
+					name: '李四',
+					phone: '13659856958',
+					type: 2,
+					work: '电工'
+				},
+				{
+					id: 3,
+					name: '张三',
+					phone: '13659856958',
+					type: 3,
+					work: '电工'
+				},
+				{
+					id: 4,
+					name: '张三',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				},
+				{
+					id: 5,
+					name: '李四',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				},
+				{
+					id: 6,
+					name: '张三',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				}
+			],
+			list2: [
+				{
+					id: 1,
+					name: '张三',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				},
+				{
+					id: 2,
+					name: '李四',
+					phone: '13659856958',
+					type: 3,
+					work: '电工'
+				},
+				{
+					id: 3,
+					name: '张三',
+					phone: '13659856958',
+					type: 2,
+					work: '电工'
+				},
+				{
+					id: 4,
+					name: '张三',
+					phone: '13659856958',
+					type: 1,
+					work: '电工'
+				}
+			]
+		}
+	},
+	methods: {
+		handleEdit(item) {
+			// console.log(item.id)
+			uni.showActionSheet({
+				itemList: ['编辑', '删除'],
+				success: (res) => {
+					if (res.tapIndex === 0) {
+						uni.navigateTo({
+							url: '/pagesRepairs/edit/edit'
+						})
+					} else if (res.tapIndex === 1) {
+						console.log('删除')
+					}
+				},
+				fail: (res) => {}
+			})
+		}
 	}
 	}
 }
 }
 </script>
 </script>
@@ -16,6 +147,100 @@ export default {
 .container {
 .container {
 	width: 100vw;
 	width: 100vw;
 	height: calc(100vh - 102rpx);
 	height: calc(100vh - 102rpx);
-	background-color: salmon;
+	overflow-y: auto;
+
+	.search {
+		display: flex;
+		align-items: center;
+		margin: 30rpx auto 30rpx;
+		width: 690rpx;
+		height: 80rpx;
+		border-radius: 4rpx;
+		background-color: #f2f2f2;
+
+		img {
+			margin: 0 20rpx;
+			width: 40rpx;
+			height: 40rpx;
+		}
+
+		input {
+			flex: 1;
+			padding: 10rpx;
+		}
+	}
+
+	.title {
+		display: flex;
+		align-items: flex-end;
+		box-sizing: border-box;
+		padding: 0 30rpx;
+		height: 80rpx;
+		font-size: 36rpx;
+		font-weight: bold;
+		border-top: 1rpx solid #e5e5e5;
+	}
+
+	.box {
+		display: flex;
+		align-items: center;
+		padding-right: 30rpx;
+		height: 160rpx;
+		border-bottom: 1rpx solid #e5e5e5;
+
+		img {
+			margin: 0 24rpx 0 27rpx;
+			width: 82rpx;
+			height: 82rpx;
+			border-radius: 50%;
+		}
+
+		.item_info {
+			display: flex;
+			flex-direction: column;
+
+			.info_msg {
+				display: flex;
+				align-items: center;
+				font-size: 32rpx;
+				font-weight: bold;
+
+				.msg_work {
+					display: flex;
+					justify-content: center;
+					align-items: center;
+					margin-left: 13rpx;
+					padding: 0 10rpx;
+					height: 32rpx;
+					color: #6fb6b8;
+					font-size: 24rpx;
+					font-weight: 400;
+					border-radius: 7rpx;
+					border: 1rpx solid #6fb6b8;
+				}
+			}
+
+			.info_phone {
+				margin-top: 10rpx;
+				color: #808080;
+				font-size: 28rpx;
+			}
+		}
+
+		.item_type {
+			margin-left: auto;
+			font-size: 24rpx;
+		}
+
+		.color_type {
+			color: #6fb6b8;
+		}
+		.color_type2 {
+			color: #1e7dfb;
+		}
+		.color_type3 {
+			color: #ff5733;
+		}
+	}
 }
 }
-</style>
+</style>

+ 17 - 74
pagesRepairs/box/box.vue

@@ -4,12 +4,8 @@
 		<Home v-if="show === 'home'" />
 		<Home v-if="show === 'home'" />
 		<!-- 工单管理 -->
 		<!-- 工单管理 -->
 		<Management v-if="show === 'management'" />
 		<Management v-if="show === 'management'" />
-		<!-- 接单池 -->
-		<Order v-if="show === 'order'" />
 		<!-- 通讯录 -->
 		<!-- 通讯录 -->
 		<AddressBook v-if="show === 'addressBook'" />
 		<AddressBook v-if="show === 'addressBook'" />
-		<!-- 待分配单 -->
-		<WaitAllot v-if="show === 'waitAllot'" />
 		<!-- 待处理池 -->
 		<!-- 待处理池 -->
 		<Pending v-if="show === 'pending'" />
 		<Pending v-if="show === 'pending'" />
 		<!-- 报修 -->
 		<!-- 报修 -->
@@ -17,16 +13,14 @@
 		<!-- 我的报修 -->
 		<!-- 我的报修 -->
 		<MyRepairs v-if="show === 'myRepairs'" />
 		<MyRepairs v-if="show === 'myRepairs'" />
 		<!-- 底部导航栏 -->
 		<!-- 底部导航栏 -->
-		<Tabbar :list="list" @changeRouter="handleChangeRouter" />
+		<Tabbar :list="routes" @changeRouter="handleChangeRouter" />
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
 import Home from '../home/home.vue'
 import Home from '../home/home.vue'
 import Management from '../management/management.vue'
 import Management from '../management/management.vue'
-import Order from '../order/order.vue'
 import AddressBook from '../addressBook/addressBook.vue'
 import AddressBook from '../addressBook/addressBook.vue'
-import WaitAllot from '../waitAllot/waitAllot.vue'
 import Pending from '../pending/pending.vue'
 import Pending from '../pending/pending.vue'
 import Repairs from '../repairs/repairs.vue'
 import Repairs from '../repairs/repairs.vue'
 import MyRepairs from '../myRepairs/myRepairs.vue'
 import MyRepairs from '../myRepairs/myRepairs.vue'
@@ -36,27 +30,27 @@ export default {
 	components: {
 	components: {
 		Home,
 		Home,
 		Management,
 		Management,
-		Order,
 		AddressBook,
 		AddressBook,
-		WaitAllot,
 		Pending,
 		Pending,
 		Repairs,
 		Repairs,
 		MyRepairs,
 		MyRepairs,
 		Tabbar
 		Tabbar
 	},
 	},
 	mounted() {
 	mounted() {
-		this.list = this.adminList
-		this.show = this.list[0].show
+		const repairsUserInfo = uni.getStorageSync('repairsUserInfo')
+		console.log(repairsUserInfo)
+		if (repairsUserInfo.routes) {
+			this.routes = this.filterRoute(this.list, repairsUserInfo.routes)
+		}
+		this.show = this.routes[0].show
 		uni.setNavigationBarTitle({
 		uni.setNavigationBarTitle({
-			title: this.list[0].text
+			title: this.routes[0].text
 		})
 		})
 	},
 	},
 	data() {
 	data() {
 		return {
 		return {
-			list: [],
-			show: 'home',
-			// 用户路由
-			userList: [
+			routes: [],
+			list: [
 				{
 				{
 					text: '报修',
 					text: '报修',
 					imgUrl: '../../static/images/repairsImg/repairs.png',
 					imgUrl: '../../static/images/repairsImg/repairs.png',
@@ -68,65 +62,8 @@ export default {
 					imgUrl: '../../static/images/repairsImg/myRepairs.png',
 					imgUrl: '../../static/images/repairsImg/myRepairs.png',
 					imgUrlActive: '../../static/images/repairsImg/myRepairs-active.png',
 					imgUrlActive: '../../static/images/repairsImg/myRepairs-active.png',
 					show: 'myRepairs'
 					show: 'myRepairs'
-				}
-			],
-			// 师傅路由
-			workerList: [
-				{
-					text: '首页',
-					imgUrl: '../../static/images/repairsImg/home.png',
-					imgUrlActive: '../../static/images/repairsImg/home-active.png',
-					show: 'home'
-				},
-				{
-					text: '工单管理',
-					imgUrl: '../../static/images/repairsImg/management.png',
-					imgUrlActive: '../../static/images/repairsImg/management-active.png',
-					show: 'management'
-				},
-				{
-					text: '待处理池',
-					imgUrl: '../../static/images/repairsImg/myRepairs.png',
-					imgUrlActive: '../../static/images/repairsImg/myRepairs-active.png',
-					show: 'pending'
-				}
-				// {
-				// 	text: '待分配单',
-				// 	icon: 'clock',
-				// 	show: 'waitAllot'
-				// },
-				// {
-				// 	text: '接单池',
-				// 	icon: 'order',
-				// 	show: 'order'
-				// }
-			],
-			// 后勤路由
-			logisticsList: [
-				{
-					text: '首页',
-					icon: 'home',
-					show: 'home'
-				},
-				{
-					text: '工单管理',
-					icon: 'list-dot',
-					show: 'management'
-				},
-				{
-					text: '待处理池',
-					icon: 'warning',
-					show: 'pending'
 				},
 				},
 				{
 				{
-					text: '通讯录',
-					icon: 'phone',
-					show: 'addressBook'
-				}
-			],
-			// 管理者路由
-			adminList: [
-				{
 					text: '首页',
 					text: '首页',
 					imgUrl: '../../static/images/repairsImg/home.png',
 					imgUrl: '../../static/images/repairsImg/home.png',
 					imgUrlActive: '../../static/images/repairsImg/home-active.png',
 					imgUrlActive: '../../static/images/repairsImg/home-active.png',
@@ -150,7 +87,8 @@ export default {
 					imgUrlActive: '../../static/images/repairsImg/addressBook-active.png',
 					imgUrlActive: '../../static/images/repairsImg/addressBook-active.png',
 					show: 'addressBook'
 					show: 'addressBook'
 				}
 				}
-			]
+			],
+			show: ''
 		}
 		}
 	},
 	},
 	methods: {
 	methods: {
@@ -159,6 +97,11 @@ export default {
 			uni.setNavigationBarTitle({
 			uni.setNavigationBarTitle({
 				title: text
 				title: text
 			})
 			})
+		},
+		filterRoute(arr1, arr2) {
+			return arr1.filter((item) => {
+				return arr2.includes(item.text)
+			})
 		}
 		}
 	}
 	}
 }
 }

+ 1 - 1
pagesRepairs/components/tabbar.vue

@@ -1,6 +1,6 @@
 <template>
 <template>
 	<view>
 	<view>
-		<uv-tabbar activeColor="#6FB6B8" :value="currentRouter" @change="change">
+		<uv-tabbar activeColor="#6FB6B8" :value="currentRouter" @change="change" :safeAreaInsetBottom="false" :placeholder="false">
 			<uv-tabbar-item v-for="(item, index) in list" :key="index" :text="item.text">
 			<uv-tabbar-item v-for="(item, index) in list" :key="index" :text="item.text">
 				<template v-slot:active-icon>
 				<template v-slot:active-icon>
 					<image class="icon" :src="item.imgUrlActive"></image>
 					<image class="icon" :src="item.imgUrlActive"></image>

+ 93 - 0
pagesRepairs/delay/delay.vue

@@ -0,0 +1,93 @@
+<template>
+	<view class="container">
+		<!-- 接单考核时间区域 -->
+		<view class="box">
+			接单考核时间
+			<view class="box_time">
+				<input type="text" v-model="time" />
+				<img src="../../static/images/repairsImg/clock.png" />
+			</view>
+			分钟
+		</view>
+
+		<!-- 维修考核时间区域 -->
+		<view class="box">
+			维修考核时间
+			<view class="box_time">
+				<input type="text" v-model="time2" />
+				<img src="../../static/images/repairsImg/clock.png" />
+			</view>
+			分钟
+		</view>
+
+		<!-- 提交按钮区域 -->
+		<view class="btn">提交</view>
+	</view>
+</template>
+
+<script>
+export default {
+	data() {
+		return {
+			time: 5,
+			time2: 10
+		}
+	},
+	methods: {}
+}
+</script>
+
+<style lang="scss" scoped>
+.container {
+	box-sizing: border-box;
+	padding: 0 30rpx;
+	width: 100vw;
+	height: 100vh;
+
+	.box {
+		display: flex;
+		align-items: center;
+		height: 100rpx;
+		font-size: 32rpx;
+		font-weight: bold;
+
+		.box_time {
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			box-sizing: border-box;
+			padding: 0 23rpx;
+			margin: 0 25rpx;
+			width: 237rpx;
+			height: 68rpx;
+			font-weight: 400;
+			border-radius: 4rpx;
+			border: 1rpx solid #a6a6a6;
+
+			input {
+				flex: 1;
+			}
+
+			img {
+				width: 40rpx;
+				height: 40rpx;
+			}
+		}
+	}
+
+	.btn {
+		position: absolute;
+		bottom: 66rpx;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		margin: auto;
+		width: 690rpx;
+		height: 100rpx;
+		color: #fff;
+		font-size: 32rpx;
+		border-radius: 12rpx;
+		background-color: #6fb6b8;
+	}
+}
+</style>

+ 177 - 0
pagesRepairs/edit/edit.vue

@@ -0,0 +1,177 @@
+<template>
+	<view class="container">
+		<view class="title">成员基本信息</view>
+
+		<view class="box">
+			手机
+			<view class="box_input">
+				<input type="text" v-model="phone" />
+			</view>
+		</view>
+
+		<view class="box">
+			状态
+			<picker @change="bindPickerChange" :value="index" :range="array">
+				<view class="box_input">
+					{{ array[index] }}
+					<img src="../../static/images/repairsImg/bottom.png" />
+				</view>
+			</picker>
+		</view>
+
+		<view class="box">
+			工种
+			<picker @change="bindPickerChange2" :value="index2" :range="array2">
+				<view class="box_input">
+					{{ array2[index2] }}
+					<img src="../../static/images/repairsImg/bottom.png" />
+				</view>
+			</picker>
+		</view>
+
+		<view class="title">接单考核时间</view>
+
+		<view class="box_time">
+			<view class="time">
+				<input type="text" v-model="time" />
+				<img src="../../static/images/repairsImg/clock.png" />
+			</view>
+			分钟
+		</view>
+
+		<view class="title">维修考核时间</view>
+
+		<view class="box_time">
+			<view class="time">
+				<input type="text" v-model="time2" />
+				<img src="../../static/images/repairsImg/clock.png" />
+			</view>
+			分钟
+		</view>
+
+		<!-- 提交按钮区域 -->
+		<view class="btn">确认提交</view>
+	</view>
+</template>
+
+<script>
+export default {
+	data() {
+		return {
+			phone: '13659864589',
+			time: 10,
+			time2: 15,
+			array: ['接单中', '停止接单', '订单饱和'],
+			index: 0,
+			array2: ['电工', '水工', '泥工', '空调'],
+			index2: 0
+		}
+	},
+	methods: {
+		bindPickerChange(e) {
+			console.log('picker发送选择改变,携带值为', e.detail.value)
+			this.index = e.detail.value
+		},
+		bindPickerChange2(e) {
+			console.log('picker发送选择改变,携带值为', e.detail.value)
+			this.index2 = e.detail.value
+		}
+	}
+}
+</script>
+
+<style lang="scss" scoped>
+.container {
+	box-sizing: border-box;
+	padding: 0 30rpx;
+	width: 100vw;
+	height: 100vh;
+
+	.title {
+		display: flex;
+		align-items: center;
+		height: 112rpx;
+		font-size: 36rpx;
+		font-weight: bold;
+	}
+
+	.box {
+		display: flex;
+		align-items: center;
+		margin-bottom: 30rpx;
+		height: 94rpx;
+		color: #808080;
+		font-size: 32rpx;
+
+		.box_input {
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			box-sizing: border-box;
+			margin-left: 33rpx;
+			padding: 0 33rpx;
+			width: 542rpx;
+			height: 94rpx;
+			color: #000000;
+			border-radius: 10rpx;
+			border: 1rpx solid #cccccc;
+
+			input {
+				width: 100%;
+				height: 100%;
+			}
+
+			img {
+				width: 54rpx;
+				height: 54rpx;
+			}
+		}
+	}
+
+	.box_time {
+		display: flex;
+		align-items: center;
+		height: 100rpx;
+		font-size: 32rpx;
+		font-weight: bold;
+
+		.time {
+			display: flex;
+			justify-content: space-between;
+			align-items: center;
+			box-sizing: border-box;
+			padding: 0 23rpx;
+			margin-right: 25rpx;
+			width: 237rpx;
+			height: 68rpx;
+			font-weight: 400;
+			border-radius: 4rpx;
+			border: 1rpx solid #a6a6a6;
+
+			input {
+				flex: 1;
+			}
+
+			img {
+				width: 40rpx;
+				height: 40rpx;
+			}
+		}
+	}
+
+	.btn {
+		position: absolute;
+		bottom: 66rpx;
+		display: flex;
+		justify-content: center;
+		align-items: center;
+		margin: auto;
+		width: 690rpx;
+		height: 100rpx;
+		color: #fff;
+		font-size: 32rpx;
+		border-radius: 12rpx;
+		background-color: #6fb6b8;
+	}
+}
+</style>

+ 52 - 2
pagesRepairs/help/help.vue

@@ -1,5 +1,12 @@
 <template>
 <template>
 	<view class="container">
 	<view class="container">
+		<view class="title" v-if="type === '1'">申请人</view>
+
+		<view class="box" v-if="type === '1'">
+			<img src="../../static/images/repairsImg/people.png" />
+			<view class="box_info">张三</view>
+		</view>
+
 		<view class="title">协作对象</view>
 		<view class="title">协作对象</view>
 
 
 		<view class="box" @click="handleHelpPeople">
 		<view class="box" @click="handleHelpPeople">
@@ -24,14 +31,27 @@
 			<textarea placeholder-style="color:#CCCCCC" placeholder="请输入协作说明"></textarea>
 			<textarea placeholder-style="color:#CCCCCC" placeholder="请输入协作说明"></textarea>
 		</view>
 		</view>
 
 
-		<view class="btn">确认</view>
+		<view class="btn2" v-if="type === '1'">
+			<view class="btn_box type">拒绝</view>
+			<view class="btn_box type2">派单</view>
+		</view>
+
+		<view class="btn" v-else>确认</view>
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
 	data() {
 	data() {
-		return {}
+		return {
+			type: null
+		}
+	},
+	onLoad(options) {
+		console.log(options)
+		if (options.type) {
+			this.type = options.type
+		}
 	},
 	},
 	methods: {
 	methods: {
 		handleHelpPeople() {
 		handleHelpPeople() {
@@ -47,6 +67,7 @@ export default {
 .container {
 .container {
 	box-sizing: border-box;
 	box-sizing: border-box;
 	padding: 0 30rpx;
 	padding: 0 30rpx;
+	overflow-y: auto;
 
 
 	.title {
 	.title {
 		display: flex;
 		display: flex;
@@ -133,5 +154,34 @@ export default {
 		border-radius: 12rpx;
 		border-radius: 12rpx;
 		background-color: #6fb6b8;
 		background-color: #6fb6b8;
 	}
 	}
+
+	.btn2 {
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+		margin: 200rpx auto 70rpx;
+		width: 690rpx;
+		height: 100rpx;
+		font-size: 32rpx;
+
+		.btn_box {
+			display: flex;
+			justify-content: center;
+			align-items: center;
+			width: 300rpx;
+			height: 100rpx;
+			border-radius: 12rpx;
+		}
+
+		.type {
+			color: #fff;
+			background-color: #6fb6b8;
+		}
+
+		.type2 {
+			color: #6fb6b8;
+			border: 1rpx solid #6fb6b8;
+		}
+	}
 }
 }
 </style>
 </style>

+ 8 - 0
pagesRepairs/helpPeople/helpPeople.vue

@@ -87,6 +87,14 @@ export default {
 			checkList: []
 			checkList: []
 		}
 		}
 	},
 	},
+	onLoad(options) {
+		console.log(options)
+		if (options.type) {
+			uni.setNavigationBarTitle({
+				title: '派单'
+			})
+		}
+	},
 	methods: {
 	methods: {
 		change(item) {
 		change(item) {
 			item.checked = !item.checked
 			item.checked = !item.checked

+ 5 - 0
pagesRepairs/home/home.vue

@@ -302,10 +302,12 @@ export default {
 	}
 	}
 
 
 	.rank {
 	.rank {
+		position: relative;
 		box-sizing: border-box;
 		box-sizing: border-box;
 		margin: 0 auto 100rpx;
 		margin: 0 auto 100rpx;
 		padding: 0 30rpx;
 		padding: 0 30rpx;
 		width: 690rpx;
 		width: 690rpx;
+		height: 745rpx;
 		border-radius: 10rpx;
 		border-radius: 10rpx;
 		box-shadow: 0px 0px 4rpx rgba(0, 0, 0, 0.25);
 		box-shadow: 0px 0px 4rpx rgba(0, 0, 0, 0.25);
 
 
@@ -324,6 +326,9 @@ export default {
 		}
 		}
 
 
 		.rank_charts {
 		.rank_charts {
+			position: absolute;
+			bottom: 0;
+			width: 100%;
 			height: 650rpx;
 			height: 650rpx;
 		}
 		}
 	}
 	}

+ 126 - 5
pagesRepairs/index/index.vue

@@ -1,16 +1,137 @@
 <template>
 <template>
-	<view>授权</view>
+	<view>
+		<view v-if="showLogin">
+			<login :ocode="ocode" :appkey="appkey" scope="snsapi_userinfo" :visible="visible" @success="loginSuccess" @fail="loginFail" @cancel="loginCancel" />
+		</view>
+	</view>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
 	data() {
 	data() {
-		return {}
+		return {
+			// 获取用户信息
+			ocode: '1015730314',
+			// 商户appkey
+			appkey: '9D6ACFE8CF9AFD07',
+			// 是否授权可见
+			visible: false,
+			// 是否启动授权
+			showLogin: false,
+			// 获取用户信息
+			appid: 'wxd6f090391d410534',
+			repairsUserInfo: {
+				routes: ['首页', '工单管理', '待处理池']
+			},
+			// 用户路由
+			userList: ['报修', '我的报修'],
+			// 师傅路由
+			workerList: ['首页', '工单管理', '待处理池'],
+			// 后勤路由
+			logisticsList: ['首页', '工单管理', '待处理池', '通讯录'],
+			// 管理者路由
+			adminList: ['首页', '工单管理', '待处理池', '通讯录']
+		}
 	},
 	},
 	mounted() {
 	mounted() {
-		uni.reLaunch({
-			url: '/pagesRepairs/box/box'
-		})
+		this.hasUserInfo()
+	},
+	methods: {
+		// 检查是否存在用户信息
+		hasUserInfo() {
+			const repairsUserInfo = uni.getStorageSync('repairsUserInfo')
+			console.log(repairsUserInfo)
+			if (repairsUserInfo) {
+				uni.reLaunch({
+					url: '/pagesRepairs/box/box'
+				})
+			} else {
+				console.log('重新授权')
+				uni.setStorageSync('repairsUserInfo', this.repairsUserInfo)
+				uni.reLaunch({
+					url: '/pagesRepairs/box/box'
+				})
+				// this.showLogin = true
+				// this.visible = true
+			}
+		},
+		// 授权成功回调
+		loginSuccess(res) {
+			console.log('成功')
+			let wxcode = res.detail.wxcode
+			console.log(wxcode)
+			// 获取wxcode后请求登录
+			// this.login(wxcode)
+		},
+		// 授权失败回调
+		loginFail() {
+			// console.log("授权失败");
+			uni.showModal({
+				title: '提示',
+				content: '授权:请先领取校园卡、并激活!',
+				confirmText: '领取',
+				success: (res) => {
+					if (res.confirm) {
+						uni.reLaunch({
+							url: '/pages/qr_code/qr_code'
+						})
+					} else if (res.cancel) {
+						uni.reLaunch({
+							url: '/pagesClockIn/404/404'
+						})
+					}
+				}
+			})
+		},
+		// 授权取消回调
+		loginCancel() {
+			// console.log("取消");
+			uni.showModal({
+				title: '提示',
+				content: '请先授权,否则无法使用该功能',
+				confirmText: '授权',
+				success: (res) => {
+					if (res.confirm) {
+						uni.reLaunch({
+							url: '/pagesRepairs/index/index'
+						})
+					} else if (res.cancel) {
+						uni.reLaunch({
+							url: '/pagesClockIn/404/404'
+						})
+					}
+				}
+			})
+		},
+
+		// 用户登陆获取个人信息和token
+		async login(wxcode) {
+			const res = await this.$myRequest_repairs({
+				url: '/attendance/api/system/user/login/app',
+				method: 'post',
+				header: {
+					'content-type': 'application/json',
+					platform: 2,
+					'Accept-Language': 'zh-CN,zh;q=0.9'
+				},
+				data: {
+					redirect_uri: `mnp://${this.appid}`,
+					wxcode
+				}
+			})
+			// console.log(res);
+			if (res.code == 200) {
+				uni.setStorageSync('token', res.data.token)
+				uni.reLaunch({
+					url: '/pagesRepairs/box/box'
+				})
+			} else {
+				uni.showToast({
+					title: res.message,
+					icon: 'none'
+				})
+			}
+		}
 	}
 	}
 }
 }
 </script>
 </script>

+ 149 - 18
pagesRepairs/management/management.vue

@@ -30,20 +30,20 @@
 			<view class="bottom">
 			<view class="bottom">
 				<view class="bottom_box">
 				<view class="bottom_box">
 					<view class="box_num">100</view>
 					<view class="box_num">100</view>
-					<view class="box_info">工单数</view>
+					<view class="box_info">待接单</view>
 				</view>
 				</view>
 
 
 				<view class="bottom_box">
 				<view class="bottom_box">
 					<view class="box_num">10</view>
 					<view class="box_num">10</view>
-					<view class="box_info">处理中</view>
+					<view class="box_info">维修中</view>
 				</view>
 				</view>
 				<view class="bottom_box">
 				<view class="bottom_box">
 					<view class="box_num">50</view>
 					<view class="box_num">50</view>
-					<view class="box_info">已完成</view>
+					<view class="box_info">已超时</view>
 				</view>
 				</view>
 				<view class="bottom_box">
 				<view class="bottom_box">
 					<view class="box_num">60</view>
 					<view class="box_num">60</view>
-					<view class="box_info">已超时</view>
+					<view class="box_info">待审核</view>
 				</view>
 				</view>
 				<view class="bottom_box">
 				<view class="bottom_box">
 					<view class="box_num">60</view>
 					<view class="box_num">60</view>
@@ -57,7 +57,7 @@
 		</view>
 		</view>
 
 
 		<!-- 订单列表区域 -->
 		<!-- 订单列表区域 -->
-		<view class="body" :class="{ body2: permission }">
+		<view class="body">
 			<!-- 每一个订单区域 -->
 			<!-- 每一个订单区域 -->
 			<view class="body_item" v-for="item in dataList" :key="item.id">
 			<view class="body_item" v-for="item in dataList" :key="item.id">
 				<!-- 工单编号 -->
 				<!-- 工单编号 -->
@@ -90,7 +90,7 @@
 				<!-- 报修电话 -->
 				<!-- 报修电话 -->
 				<view class="item_box">
 				<view class="item_box">
 					<view class="box_key">报修电话:</view>
 					<view class="box_key">报修电话:</view>
-					<view class="box_value phone">
+					<view class="box_value phone" @click="handleCallPhone('13820846714')">
 						{{ item.phone }}
 						{{ item.phone }}
 						<img src="../../static/images/repairsImg/phone.png" />
 						<img src="../../static/images/repairsImg/phone.png" />
 					</view>
 					</view>
@@ -137,7 +137,7 @@
 				<!-- 师傅电话 -->
 				<!-- 师傅电话 -->
 				<view class="item_box" v-if="item.type === 2 || item.type === 3 || item.type === 4 || item.type === 6">
 				<view class="item_box" v-if="item.type === 2 || item.type === 3 || item.type === 4 || item.type === 6">
 					<view class="box_key">师傅电话:</view>
 					<view class="box_key">师傅电话:</view>
-					<view class="box_value phone">
+					<view class="box_value phone" @click="handleCallPhone('13820846714')">
 						{{ item.workerPhone }}
 						{{ item.workerPhone }}
 						<img src="../../static/images/repairsImg/phone.png" />
 						<img src="../../static/images/repairsImg/phone.png" />
 					</view>
 					</view>
@@ -156,16 +156,16 @@
 				<view class="item_btn">
 				<view class="item_btn">
 					<img v-if="item.type < 3" src="../../static/images/repairsImg/close.png" @click="handleClose" />
 					<img v-if="item.type < 3" src="../../static/images/repairsImg/close.png" @click="handleClose" />
 					<img class="img" src="../../static/images/repairsImg/help.png" v-if="item.type === 1 && !permission" @click="handleHelp" />
 					<img class="img" src="../../static/images/repairsImg/help.png" v-if="item.type === 1 && !permission" @click="handleHelp" />
-					<view class="btn_box type" v-if="item.type < 3 && permission">延时</view>
+					<view class="btn_box type" v-if="item.type < 3 && permission" @click="handleDelay">延时</view>
 					<view class="btn_box type" v-if="item.type === 1">接单</view>
 					<view class="btn_box type" v-if="item.type === 1">接单</view>
 					<view class="btn_box type2" v-if="item.type === 1 && !permission" @click="handleTransferOrder">转单</view>
 					<view class="btn_box type2" v-if="item.type === 1 && !permission" @click="handleTransferOrder">转单</view>
-					<view class="btn_box type2" v-if="item.type === 1 && permission">派单</view>
+					<view class="btn_box type2" v-if="item.type === 1 && permission" @click="handleSendOrder">派单</view>
 					<view class="btn_box type" v-if="item.type === 2" @click="handleOffer">报价</view>
 					<view class="btn_box type" v-if="item.type === 2" @click="handleOffer">报价</view>
 					<view class="btn_box type2" v-if="item.type === 2" @click="handleFinish">维修完成</view>
 					<view class="btn_box type2" v-if="item.type === 2" @click="handleFinish">维修完成</view>
 
 
-					<view class="btn_box type" v-if="item.type === 3 && permission">审核</view>
+					<view class="btn_box type" v-if="item.type === 3 && permission" @click="handleAudit(item.status)">审核</view>
 					<view class="btn_box type" v-if="item.type === 5">改价</view>
 					<view class="btn_box type" v-if="item.type === 5">改价</view>
-					<view class="btn_box type2" v-if="item.type === 5">留言</view>
+					<view class="btn_box type2" v-if="item.type === 5" @click="handleLeaveWords">留言</view>
 				</view>
 				</view>
 
 
 				<!-- 关闭按钮弹窗 -->
 				<!-- 关闭按钮弹窗 -->
@@ -180,6 +180,20 @@
 						</view>
 						</view>
 					</view>
 					</view>
 				</uni-popup>
 				</uni-popup>
+
+				<!-- 留言弹窗 -->
+				<uni-popup ref="popup_leaveWords" :is-mask-click="false">
+					<view class="pop_leaveWords">
+						<view class="leaveWords_title">留言</view>
+						<view class="leaveWords_body">
+							<textarea placeholder-style="color:#CCCCCC" placeholder="请输入您宝贵的留言"></textarea>
+						</view>
+						<view class="leaveWords_btn">
+							<view class="btn_box cancel" @click="$refs.popup_leaveWords[0].close()">取消</view>
+							<view class="btn_box confirm" @click="$refs.popup_leaveWords[0].close()">确定</view>
+						</view>
+					</view>
+				</uni-popup>
 			</view>
 			</view>
 		</view>
 		</view>
 	</view>
 	</view>
@@ -242,7 +256,26 @@ export default {
 					img: '',
 					img: '',
 					workerName: '老张',
 					workerName: '老张',
 					workerPhone: '13659585689',
 					workerPhone: '13659585689',
-					money: 50
+					money: 50,
+					status: 1
+				},
+				{
+					id: 369,
+					order: '956262219626262',
+					overtime: false,
+					time: '2023.07.05  09:25:26',
+					type: 3,
+					name: '李四',
+					phone: '13659585689',
+					area: '行政楼',
+					address: '3楼309',
+					goods: '电脑',
+					description: '电脑坏了',
+					img: '',
+					workerName: '老张',
+					workerPhone: '13659585689',
+					money: 50,
+					status: 2
 				},
 				},
 				{
 				{
 					id: 4,
 					id: 4,
@@ -299,37 +332,81 @@ export default {
 		}
 		}
 	},
 	},
 	methods: {
 	methods: {
+		// 关闭图标点击回调
 		handleClose() {
 		handleClose() {
 			this.$refs.popup_close[0].open('center')
 			this.$refs.popup_close[0].open('center')
 		},
 		},
+		// 关闭按钮弹窗选中按钮时回调
 		handleChangeItem(val) {
 		handleChangeItem(val) {
 			this.activeIndex = val
 			this.activeIndex = val
 		},
 		},
+		// 报价按钮回调
 		handleOffer() {
 		handleOffer() {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/offer/offer'
 				url: '/pagesRepairs/offer/offer'
 			})
 			})
 		},
 		},
+		// 维修完成按钮回调
 		handleFinish() {
 		handleFinish() {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/repairRecord/repairRecord'
 				url: '/pagesRepairs/repairRecord/repairRecord'
 			})
 			})
 		},
 		},
+		// 转单按钮回调
 		handleTransferOrder() {
 		handleTransferOrder() {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/transferOrder/transferOrder'
 				url: '/pagesRepairs/transferOrder/transferOrder'
 			})
 			})
 		},
 		},
+		// 协作图标点击回调
 		handleHelp() {
 		handleHelp() {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/help/help'
 				url: '/pagesRepairs/help/help'
 			})
 			})
 		},
 		},
+		// 分段器切换回调
 		onClickItem(e) {
 		onClickItem(e) {
 			if (this.current != e.currentIndex) {
 			if (this.current != e.currentIndex) {
 				this.current = e.currentIndex
 				this.current = e.currentIndex
 				console.log(this.current)
 				console.log(this.current)
 			}
 			}
+		},
+		// 留言按钮回调
+		handleLeaveWords() {
+			this.$refs.popup_leaveWords[0].open('center')
+		},
+		// 延时按钮回调
+		handleDelay() {
+			uni.navigateTo({
+				url: '/pagesRepairs/delay/delay'
+			})
+		},
+		// 派单按钮回调
+		handleSendOrder() {
+			uni.navigateTo({
+				url: '/pagesRepairs/helpPeople/helpPeople?type=1'
+			})
+		},
+		// 审核按钮回调
+		handleAudit(status) {
+			console.log(status)
+			// 1为转单审核,2为协作审核
+			if (status === 1) {
+				uni.navigateTo({
+					url: '/pagesRepairs/transferOrder/transferOrder?type=1'
+				})
+			} else if (status === 2) {
+				uni.navigateTo({
+					url: '/pagesRepairs/help/help?type=1'
+				})
+			}
+		},
+		// 点击电话号码回调
+		handleCallPhone(phone) {
+			console.log(phone)
+			uni.makePhoneCall({
+				phoneNumber: phone
+			})
 		}
 		}
 	}
 	}
 }
 }
@@ -339,6 +416,7 @@ export default {
 .container {
 .container {
 	width: 100vw;
 	width: 100vw;
 	height: calc(100vh - 102rpx);
 	height: calc(100vh - 102rpx);
+	overflow-y: auto;
 
 
 	.top_bg {
 	.top_bg {
 		height: 165rpx;
 		height: 165rpx;
@@ -416,8 +494,6 @@ export default {
 	.body {
 	.body {
 		box-sizing: border-box;
 		box-sizing: border-box;
 		padding: 0 30rpx 30rpx 30rpx;
 		padding: 0 30rpx 30rpx 30rpx;
-		height: calc(100vh - 355rpx);
-		overflow-y: auto;
 
 
 		.body_item {
 		.body_item {
 			margin-top: 20rpx;
 			margin-top: 20rpx;
@@ -643,11 +719,66 @@ export default {
 					}
 					}
 				}
 				}
 			}
 			}
-		}
-	}
 
 
-	.body2 {
-		height: calc(100vh - 555rpx);
+			.pop_leaveWords {
+				border-radius: 19rpx;
+				background-color: #fff;
+
+				.leaveWords_title {
+					display: flex;
+					justify-content: center;
+					align-items: center;
+					width: 690rpx;
+					height: 110rpx;
+					font-size: 32rpx;
+					font-weight: bold;
+					border-radius: 19rpx 19rpx 0 0;
+					border-bottom: 1rpx solid #e6e6e6;
+				}
+
+				.leaveWords_body {
+					height: 320rpx;
+
+					textarea {
+						box-sizing: border-box;
+						margin: 35rpx 40rpx;
+						padding: 20rpx;
+						width: 610rpx;
+						height: 312rpx;
+						font-size: 28rpx;
+						border-radius: 14rpx;
+						border: 1rpx solid #e6e6e6;
+					}
+				}
+
+				.leaveWords_btn {
+					display: flex;
+					align-items: center;
+					justify-content: space-evenly;
+					height: 121rpx;
+
+					.btn_box {
+						display: flex;
+						justify-content: center;
+						align-items: center;
+						width: 203rpx;
+						height: 72rpx;
+						border-radius: 9rpx;
+						font-size: 32rpx;
+					}
+
+					.cancel {
+						background-color: #e5e5e5;
+						color: #6fb6b8;
+					}
+
+					.confirm {
+						background-color: #6fb6b8;
+						color: #fff;
+					}
+				}
+			}
+		}
 	}
 	}
 }
 }
 </style>
 </style>

+ 21 - 7
pagesRepairs/myRepairs/myRepairs.vue

@@ -38,7 +38,7 @@
 				<!-- 报修电话 -->
 				<!-- 报修电话 -->
 				<view class="item_box">
 				<view class="item_box">
 					<view class="box_key">报修电话:</view>
 					<view class="box_key">报修电话:</view>
-					<view class="box_value phone">
+					<view class="box_value phone" @click="handleCallPhone('13820846714')">
 						{{ item.phone }}
 						{{ item.phone }}
 						<img src="../../static/images/repairsImg/phone.png" />
 						<img src="../../static/images/repairsImg/phone.png" />
 					</view>
 					</view>
@@ -85,7 +85,7 @@
 				<!-- 师傅电话 -->
 				<!-- 师傅电话 -->
 				<view class="item_box" v-if="item.type === 3 || item.type === 4">
 				<view class="item_box" v-if="item.type === 3 || item.type === 4">
 					<view class="box_key">师傅电话:</view>
 					<view class="box_key">师傅电话:</view>
-					<view class="box_value phone">
+					<view class="box_value phone" @click="handleCallPhone('13820846714')">
 						{{ item.workerPhone }}
 						{{ item.workerPhone }}
 						<img src="../../static/images/repairsImg/phone.png" />
 						<img src="../../static/images/repairsImg/phone.png" />
 					</view>
 					</view>
@@ -196,7 +196,7 @@ export default {
 			],
 			],
 			dataList2: [
 			dataList2: [
 				{
 				{
-					id: 1,
+					id: 19999,
 					order: '656262219626262',
 					order: '656262219626262',
 					overtime: false,
 					overtime: false,
 					time: '2023.07.05  09:25:26',
 					time: '2023.07.05  09:25:26',
@@ -215,7 +215,7 @@ export default {
 			],
 			],
 			dataList3: [
 			dataList3: [
 				{
 				{
-					id: 1,
+					id: 1854,
 					order: '656262219626262',
 					order: '656262219626262',
 					overtime: false,
 					overtime: false,
 					time: '2023.07.05  09:25:26',
 					time: '2023.07.05  09:25:26',
@@ -232,7 +232,7 @@ export default {
 					money: 50
 					money: 50
 				},
 				},
 				{
 				{
-					id: 2,
+					id: 2789,
 					order: '656262219626262',
 					order: '656262219626262',
 					overtime: false,
 					overtime: false,
 					time: '2023.07.05  09:25:26',
 					time: '2023.07.05  09:25:26',
@@ -255,6 +255,7 @@ export default {
 		this.list = this.dataList
 		this.list = this.dataList
 	},
 	},
 	methods: {
 	methods: {
+		// 分段器切换回调
 		onClickItem(index) {
 		onClickItem(index) {
 			console.log(index)
 			console.log(index)
 			if (this.current != index) {
 			if (this.current != index) {
@@ -268,22 +269,33 @@ export default {
 				this.list = this.dataList3
 				this.list = this.dataList3
 			}
 			}
 		},
 		},
+		// 查看维修费用回调
 		checkFeeDetail() {
 		checkFeeDetail() {
 			this.$refs.popup_fee[0].open('center')
 			this.$refs.popup_fee[0].open('center')
 		},
 		},
+		// 转后勤按钮回调
 		handleBackOffice() {
 		handleBackOffice() {
 			this.$refs.popup_logistics[0].open('center')
 			this.$refs.popup_logistics[0].open('center')
 		},
 		},
+		// 去评价按钮回调
 		handleEvaluate() {
 		handleEvaluate() {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/evaluate/evaluate'
 				url: '/pagesRepairs/evaluate/evaluate'
 			})
 			})
 		},
 		},
+		// 点击工单编号区域回调
 		handleLookDetail(item) {
 		handleLookDetail(item) {
 			const detailInfo = JSON.stringify(item)
 			const detailInfo = JSON.stringify(item)
 			uni.navigateTo({
 			uni.navigateTo({
 				url: `/pagesRepairs/repairDetails/repairDetails?detailInfo=${detailInfo}`
 				url: `/pagesRepairs/repairDetails/repairDetails?detailInfo=${detailInfo}`
 			})
 			})
+		},
+		// 点击电话号码回调
+		handleCallPhone(phone) {
+			console.log(phone)
+			uni.makePhoneCall({
+				phoneNumber: phone
+			})
 		}
 		}
 	}
 	}
 }
 }
@@ -297,6 +309,7 @@ export default {
 	padding: 0 30rpx;
 	padding: 0 30rpx;
 	width: 100vw;
 	width: 100vw;
 	height: calc(100vh - 102rpx);
 	height: calc(100vh - 102rpx);
+	overflow-y: auto;
 
 
 	.control {
 	.control {
 		display: flex;
 		display: flex;
@@ -313,6 +326,7 @@ export default {
 			display: flex;
 			display: flex;
 			justify-content: center;
 			justify-content: center;
 			align-items: center;
 			align-items: center;
+			height: 76rpx;
 			font-size: 32rpx;
 			font-size: 32rpx;
 		}
 		}
 
 
@@ -323,8 +337,8 @@ export default {
 	}
 	}
 
 
 	.body {
 	.body {
-		height: calc(100vh - 190rpx);
-		overflow-y: auto;
+		// height: calc(100vh - 190rpx);
+		// overflow-y: auto;
 
 
 		.body_item {
 		.body_item {
 			margin: 10rpx 10rpx 30rpx;
 			margin: 10rpx 10rpx 30rpx;

+ 25 - 4
pagesRepairs/pending/pending.vue

@@ -27,7 +27,7 @@
 				<!-- 报修电话 -->
 				<!-- 报修电话 -->
 				<view class="item_box">
 				<view class="item_box">
 					<view class="box_key">报修电话:</view>
 					<view class="box_key">报修电话:</view>
-					<view class="box_value phone">
+					<view class="box_value phone" @click="handleCallPhone('13820846714')">
 						{{ item.phone }}
 						{{ item.phone }}
 						<img src="../../static/images/repairsImg/phone.png" />
 						<img src="../../static/images/repairsImg/phone.png" />
 					</view>
 					</view>
@@ -66,9 +66,9 @@
 				<!-- 按钮区域 -->
 				<!-- 按钮区域 -->
 				<view class="item_btn">
 				<view class="item_btn">
 					<img src="../../static/images/repairsImg/close.png" @click="handleClose" />
 					<img src="../../static/images/repairsImg/close.png" @click="handleClose" />
-					<view class="btn_box type" v-if="permission">延时</view>
+					<view class="btn_box type" v-if="permission" @click="handleDelay">延时</view>
 					<view class="btn_box type">接单</view>
 					<view class="btn_box type">接单</view>
-					<view class="btn_box type2" v-if="permission">派单</view>
+					<view class="btn_box type2" v-if="permission" @click="handleSendOrder">派单</view>
 				</view>
 				</view>
 
 
 				<!-- 关闭按钮弹窗 -->
 				<!-- 关闭按钮弹窗 -->
@@ -146,11 +146,32 @@ export default {
 		}
 		}
 	},
 	},
 	methods: {
 	methods: {
+		// 关闭图标点击回调
 		handleClose() {
 		handleClose() {
 			this.$refs.popup_close[0].open('center')
 			this.$refs.popup_close[0].open('center')
 		},
 		},
+		// 关闭按钮弹窗选中按钮时回调
 		handleChangeItem(val) {
 		handleChangeItem(val) {
 			this.activeIndex = val
 			this.activeIndex = val
+		},
+		// 延时按钮回调
+		handleDelay() {
+			uni.navigateTo({
+				url: '/pagesRepairs/delay/delay'
+			})
+		},
+		// 派单按钮回调
+		handleSendOrder() {
+			uni.navigateTo({
+				url: '/pagesRepairs/helpPeople/helpPeople?type=1'
+			})
+		},
+		// 点击电话号码回调
+		handleCallPhone(phone) {
+			console.log(phone)
+			uni.makePhoneCall({
+				phoneNumber: phone
+			})
 		}
 		}
 	}
 	}
 }
 }
@@ -160,6 +181,7 @@ export default {
 .container {
 .container {
 	width: 100vw;
 	width: 100vw;
 	height: calc(100vh - 102rpx);
 	height: calc(100vh - 102rpx);
+	overflow-y: auto;
 
 
 	.top_bg {
 	.top_bg {
 		height: 165rpx;
 		height: 165rpx;
@@ -172,7 +194,6 @@ export default {
 		margin-top: -100rpx;
 		margin-top: -100rpx;
 		padding: 2rpx;
 		padding: 2rpx;
 		width: 690rpx;
 		width: 690rpx;
-		height: calc(100vh - 170rpx);
 		border-radius: 11rpx 11rpx 0 0;
 		border-radius: 11rpx 11rpx 0 0;
 		background-color: #fff;
 		background-color: #fff;
 		overflow-y: auto;
 		overflow-y: auto;

+ 10 - 2
pagesRepairs/repairs/repairs.vue

@@ -115,8 +115,8 @@
 		<!-- 底部区域 -->
 		<!-- 底部区域 -->
 		<view class="foot">
 		<view class="foot">
 			<view class="foot_btn">确认提交</view>
 			<view class="foot_btn">确认提交</view>
-			<view class="foot_phone">紧急电话 5661626</view>
-			<view class="foot_phone">服务监督电话 5661626</view>
+			<view class="foot_phone" @click="handleCallPhone('13820846714')">紧急电话 5661626</view>
+			<view class="foot_phone" @click="handleCallPhone('13820846714')">服务监督电话 5661626</view>
 		</view>
 		</view>
 
 
 		<!-- 消息通知按钮区域 -->
 		<!-- 消息通知按钮区域 -->
@@ -209,6 +209,7 @@ export default {
 				})
 				})
 			})
 			})
 		},
 		},
+		// 删除图片回调
 		handleDelete(e) {
 		handleDelete(e) {
 			// console.log(e);
 			// console.log(e);
 			const num = imgList.value.findIndex((v) => v.url === e.tempFilePath)
 			const num = imgList.value.findIndex((v) => v.url === e.tempFilePath)
@@ -233,6 +234,13 @@ export default {
 			uni.navigateTo({
 			uni.navigateTo({
 				url: '/pagesRepairs/message/message'
 				url: '/pagesRepairs/message/message'
 			})
 			})
+		},
+		// 点击电话号码回调
+		handleCallPhone(phone) {
+			console.log(phone)
+			uni.makePhoneCall({
+				phoneNumber: phone
+			})
 		}
 		}
 	}
 	}
 }
 }

+ 71 - 2
pagesRepairs/transferOrder/transferOrder.vue

@@ -1,5 +1,12 @@
 <template>
 <template>
 	<view class="container">
 	<view class="container">
+		<view class="title" v-if="type === '1'">申请人</view>
+
+		<view class="box" v-if="type === '1'">
+			<img src="../../static/images/repairsImg/people.png" />
+			<view class="box_info">张三</view>
+		</view>
+
 		<view class="title">转单语音说明</view>
 		<view class="title">转单语音说明</view>
 
 
 		<!-- 录音区域 -->
 		<!-- 录音区域 -->
@@ -16,14 +23,26 @@
 			<textarea placeholder-style="color:#CCCCCC" placeholder="请输入转单说明"></textarea>
 			<textarea placeholder-style="color:#CCCCCC" placeholder="请输入转单说明"></textarea>
 		</view>
 		</view>
 
 
-		<view class="btn">确认</view>
+		<view class="btn2" v-if="type === '1'">
+			<view class="btn_box type">拒绝</view>
+			<view class="btn_box type2">派单</view>
+		</view>
+		<view class="btn" v-else>确认</view>
 	</view>
 	</view>
 </template>
 </template>
 
 
 <script>
 <script>
 export default {
 export default {
 	data() {
 	data() {
-		return {}
+		return {
+			type: null
+		}
+	},
+	onLoad(options) {
+		console.log(options)
+		if (options.type) {
+			this.type = options.type
+		}
 	}
 	}
 }
 }
 </script>
 </script>
@@ -41,6 +60,25 @@ export default {
 		font-weight: bold;
 		font-weight: bold;
 	}
 	}
 
 
+	.box {
+		display: flex;
+		align-items: center;
+		height: 94rpx;
+		font-size: 32rpx;
+		border-radius: 10rpx;
+		border: 1rpx solid #cccccc;
+
+		.box_info {
+			flex: 1;
+		}
+
+		img {
+			margin: 0 14rpx 0 30rpx;
+			width: 48rpx;
+			height: 48rpx;
+		}
+	}
+
 	.voice {
 	.voice {
 		display: flex;
 		display: flex;
 		align-items: center;
 		align-items: center;
@@ -94,5 +132,36 @@ export default {
 		border-radius: 12rpx;
 		border-radius: 12rpx;
 		background-color: #6fb6b8;
 		background-color: #6fb6b8;
 	}
 	}
+
+	.btn2 {
+		position: absolute;
+		bottom: 66rpx;
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+		margin: auto;
+		width: 690rpx;
+		height: 100rpx;
+		font-size: 32rpx;
+
+		.btn_box {
+			display: flex;
+			justify-content: center;
+			align-items: center;
+			width: 300rpx;
+			height: 100rpx;
+			border-radius: 12rpx;
+		}
+
+		.type {
+			color: #fff;
+			background-color: #6fb6b8;
+		}
+
+		.type2 {
+			color: #6fb6b8;
+			border: 1rpx solid #6fb6b8;
+		}
+	}
 }
 }
 </style>
 </style>

+ 0 - 27
pagesRepairs/waitAllot/waitAllot.vue

@@ -1,27 +0,0 @@
-<template>
-	<view class="container">
-		<view class="">待分配单</view>
-		<Recording2 />
-	</view>
-</template>
-
-<script>
-import Recording2 from '../components/recording2.vue'
-export default {
-	components: {
-		Recording2
-	},
-	data() {
-		return {}
-	},
-	mounted() {},
-	methods: {}
-}
-</script>
-
-<style lang="scss" scoped>
-.container {
-	width: 100vw;
-	height: calc(100vh - 102rpx);
-}
-</style>

BIN
static/images/repairsImg/bottom.png


BIN
static/images/repairsImg/clock.png