zhengkaixin 2 nedēļas atpakaļ
vecāks
revīzija
16d4accb59

+ 3 - 3
config/.env.dev.js

@@ -5,8 +5,8 @@ const UNI_APP = {
 	
 	BASE_URL: 'https://youdian.hbjp.com.cn/charging-station-server/',
 	//
-	//BASE_URL: 'http://charging.xiaoxinda.com/charging-station-test/',
-	BASE_URL: 'https://youdian-test.hbjp.com.cn/charging-station-test/',
+
+	//BASE_URL: 'https://youdian-test.hbjp.com.cn/charging-station-test/',
 	
 	
 	//BASE_URL:'http://192.168.8.162:8081/charging-station/', //sz
@@ -18,7 +18,7 @@ const UNI_APP = {
 	
 	openId:"123456",
 	openId:"oSruR6YkhP7QDroLnZGxWis43Kn0",
-	
+	openId:"oSruR6fYa0yzdMsDinzNOlePTotk",
 	//appid
 	//VUE_APP_WXAPPID:"wxa9f555dc92a1cbfc",
 	VUE_APP_WXAPPID:"wxca33ab204e738ca4",

+ 1 - 1
pages/index/index.vue

@@ -199,7 +199,7 @@
 				
 				<u-divider color="#F44336" 
 				 :isnone="dataerrRecordsTotal==0" nonetext="暂无数据"
-				 v-if="dataerrRecordsTotal>5&&current==0"
+				 v-if="dataerrRecordsTotal>5||dataerrRecordsTotal==0"
 				 @click="gotoUrl('/pages/task/listTask?status='+tabslist[current].code)"  >故障记录{{dataerrRecordsTotal}}条,点击查看更多</u-divider>
 				
 				  

+ 2 - 1
pages/inspection/add.vue

@@ -542,7 +542,8 @@
 		.item:first-child {
 			border-bottom: 2rpx solid rgba(232, 232, 232, 1);
 			font-size: 32rpx;
-			font-weight: bold;
+			font-weight: bold;
+			padding: 28rpx 24rpx;
 		}
 
 

+ 3 - 1
pages/inspection/list.vue

@@ -257,7 +257,9 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.list = list
+					this.listForm.recordsTotal=res.data.recordsTotal
+					
 					uni.hideLoading();
 				
 				}).catch(error => {

+ 1 - 1
pages/myTab/abnormalInfo.vue

@@ -14,7 +14,7 @@
 			
 			<view class="line">
 				<view class="name">
-					告警地锁
+					告警设备
 
 			
 				</view>

+ 7 - 5
pages/myTab/abnormalList.vue

@@ -27,11 +27,11 @@
 						<view class="item">
 							<view class="name">
 								<view class="text1">软件园</view>
-								<view class="text2">私人地锁</view>
+								<view class="text2">私人设备</view>
 							</view>
 							<view class="value">
 								<view class="text1">2024-02-14 09:00:01</view>
-								<view class="text2">私人地锁</view>
+								<view class="text2">私人设备</view>
 							</view>
 						</view>
 					</view>
@@ -48,11 +48,11 @@
 						<view class="item">
 							<view class="name">
 								<view class="text1">软件园</view>
-								<view class="text2">私人地锁</view>
+								<view class="text2">私人设备</view>
 							</view>
 							<view class="value">
 								<view class="text1">软件园</view>
-								<view class="text2">私人地锁</view>
+								<view class="text2">私人设备</view>
 							</view>
 						</view>
 					</view>
@@ -147,7 +147,9 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.list = list
+					this.listForm.recordsTotal=res.data.recordsTotal
+					
 					uni.hideLoading();
 
 				}).catch(error => {

+ 1 - 1
pages/myTab/customerService.vue

@@ -49,7 +49,7 @@
 				list: [{
 					name: '软件使用'
 				}, {
-					name: '地锁状态及参数'
+					name: '状态及参数'
 				}, {
 					name: '工单相关',
 

+ 3 - 1
pages/myTab/feedbackList.vue

@@ -76,7 +76,9 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.list = list
+					this.listForm.recordsTotal=res.data.recordsTotal
+					
 					uni.hideLoading();
 	
 				}).catch(error => {

+ 1 - 1
pages/myTab/index.vue

@@ -32,7 +32,7 @@
 					<view class="item"   @click="gotoUrl('/pages/mylock/myLock')" 
 					v-if="userInfoPlus&&userInfoPlus.myAllList" >
 						<view class="name">{{userInfoPlus.myAllList.length}}</view>
-						<view class="value">地锁</view>
+						<view class="value">信息</view>
 					</view>
 					<view class="item2">
 		

+ 7 - 5
pages/myTab/myMessage.vue

@@ -18,7 +18,7 @@
 						</view>
 					</view>
 					<view class="message">
-						A01车位地锁于2025-02-02 23:00:01离线断网...
+						A01车位设备于2025-02-02 23:00:01离线断网...
 
 					</view>
 				</view>
@@ -39,7 +39,7 @@
 						</view>
 					</view>
 					<view class="message">
-						A01车位地锁于2025-02-02 23:00:01离线断网...
+						A01车位设备于2025-02-02 23:00:01离线断网...
 			
 					</view>
 				</view>
@@ -60,7 +60,7 @@
 						</view>
 					</view>
 					<view class="message">
-						A01车位地锁于2025-02-02 23:00:01离线断网...
+						A01车位设备于2025-02-02 23:00:01离线断网...
 			
 					</view>
 				</view>
@@ -81,7 +81,7 @@
 						</view>
 					</view>
 					<view class="message">
-						A01车位地锁于2025-02-02 23:00:01离线断网...
+						A01车位设备于2025-02-02 23:00:01离线断网...
 			
 					</view>
 				</view>
@@ -138,7 +138,9 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.list = list
+					this.listForm.recordsTotal=res.data.recordsTotal
+					
 					uni.hideLoading();
 		
 				}).catch(error => {

+ 401 - 401
pages/station/stationGun.vue

@@ -1,38 +1,38 @@
-<template>
-	<view class="jpmain  ">
-		<u-navbar title="设备详情"></u-navbar>
-
-		<view class="gradient-header">
-			<view class="jpback">
-
-			</view>
-		</view>
-		<view class="body">
-			<view class="page-top">
-				<!-- <view class="text1">地锁名称</view> -->
+<template>
+	<view class="jpmain  ">
+		<u-navbar title="设备详情"></u-navbar>
+
+		<view class="gradient-header">
+			<view class="jpback">
+
+			</view>
+		</view>
+		<view class="body">
+			<view class="page-top">
+				<!-- <view class="text1">设备名称</view> -->
 				<!---->
 				
-				<view class="text1">{{
-					infotext(chargingStation.name)
+				<view class="text1">{{
+					infotext(chargingStation.name)
 				}}</view> 
-				<view class="text1">{{
-					infotext(chargingDevice.name)
-				}}</view> 
-				
-			</view>
-			<view class="page">
-				<view class="info-title">
-					<view class="name">设备信息</view>
-					<view class="value">
-						<view class="pack-up" v-show="listShow" @click="listShow=false">
-							展开<u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
-						</view>
-						<view class="pack-up" v-if="!listShow" @click="listShow=true">
-							收起<u-icon name="arrow-up" size="32" color="#AAAAAA"></u-icon>
-						</view>
-					</view>
-				</view>
-				<view class="table">
+				<view class="text1">{{
+					infotext(chargingDevice.name)
+				}}</view> 
+				
+			</view>
+			<view class="page">
+				<view class="info-title">
+					<view class="name">设备信息</view>
+					<view class="value">
+						<view class="pack-up" v-show="listShow" @click="listShow=false">
+							展开<u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+						</view>
+						<view class="pack-up" v-if="!listShow" @click="listShow=true">
+							收起<u-icon name="arrow-up" size="32" color="#AAAAAA"></u-icon>
+						</view>
+					</view>
+				</view>
+				<view class="table">
 					<view class="row">
 						<view class="name">设备型号</view>
 						<view class="value">{{chargingDevice.model}}</view>
@@ -96,379 +96,379 @@
 						<view class="name">设备质保期</view>
 						<view class="value">{{chargingDevice.shelfLife}}</view>
 					</view>
-					</template>
-
-				</view>
-			</view>
-			<view class="page">
-				<view class="info-title">
-					<view class="name">联网信息</view>
-					<view class="value">
-
-					</view>
-				</view>
-				<view class="table">
-					<view class="row">
-						<view class="name">联网卡号</view>
-						<view class="value">{{chargingDevice.internetCard}}</view>
-					</view>
-					<view class="row">
-						<view class="name">有效期至</view>
-						<view class="value">
-							{{chargingDevice.cardExpirationDate?chargingDevice.cardExpirationDate.split(' ')[0]:''}}
-
-						</view>
-
-					</view>
-					<view class="tips" v-if="chargingDevice.tariffStandard">
-						<u-icon style="    margin-top: 2px;" size="30" name="info-circle"></u-icon>
-						<view>
+					</template>
+
+				</view>
+			</view>
+			<view class="page">
+				<view class="info-title">
+					<view class="name">联网信息</view>
+					<view class="value">
+
+					</view>
+				</view>
+				<view class="table">
+					<view class="row">
+						<view class="name">联网卡号</view>
+						<view class="value">{{chargingDevice.internetCard}}</view>
+					</view>
+					<view class="row">
+						<view class="name">有效期至</view>
+						<view class="value">
+							{{chargingDevice.cardExpirationDate?chargingDevice.cardExpirationDate.split(' ')[0]:''}}
+
+						</view>
+
+					</view>
+					<view class="tips" v-if="chargingDevice.tariffStandard">
+						<u-icon style="    margin-top: 2px;" size="30" name="info-circle"></u-icon>
+						<view>
 							家用充电桩内含物联网卡,此卡随设备出厂时赠送三年免费使用时长,三年后将按5元/月资费标准收取费用。
-							
-						</view>
-
-					</view>
-				</view>
-			</view>
-
-		</view>
-
-
-
-
-	</view>
-</template>
-
-<script>
-	import * as API from '@/apis/pagejs/pagesStation.js'
-
-	export default {
-		components: {
-
-		},
-		data() {
-			return {
-				id: "",
-				chargingDevice: {},
-				listShow: true,
-				popupShow: false,
-				customStyle: {
-					"border-radius": "50px",
-					"background-color": 'rgba(242, 244, 246, 1)',
-					padding: "5px 20px",
-					margin: "5px 0 ",
-
-				},
-				abc: false,
-				whiteList: [],
-				vipUser: {},
-				delShow: false,
-				chargingDevice: {},
+							
+						</view>
+
+					</view>
+				</view>
+			</view>
+
+		</view>
+
+
+
+
+	</view>
+</template>
+
+<script>
+	import * as API from '@/apis/pagejs/pagesStation.js'
+
+	export default {
+		components: {
+
+		},
+		data() {
+			return {
+				id: "",
+				chargingDevice: {},
+				listShow: true,
+				popupShow: false,
+				customStyle: {
+					"border-radius": "50px",
+					"background-color": 'rgba(242, 244, 246, 1)',
+					padding: "5px 20px",
+					margin: "5px 0 ",
+
+				},
+				abc: false,
+				whiteList: [],
+				vipUser: {},
+				delShow: false,
+				chargingDevice: {},
 				carshow: false,
 				chargingGun:{},
 				chargingStation:{},
-				
-			};
-		},
-		onLoad(op) {
-			this.id = op.gunNo
-			this.getFloorlockDetails()
-
-		},
-		onShow() {
-
-		},
-		methods: {
-			infotext(text) {
-				if (text) {
-					return text
-				} else {
-					return ""
-				}
-			},
-
-			getFloorlockDetails() {
-
-				uni.showLoading({
-					title: "加载中",
-					mask: true,
-				})
-				var chargingDevice = {
-					gunNo: this.id,
-
-				}
-
-				API.findStationByGun(chargingDevice).then((res) => {
-					this.chargingDevice = res.data.chargingDevice
+				
+			};
+		},
+		onLoad(op) {
+			this.id = op.gunNo
+			this.getFloorlockDetails()
+
+		},
+		onShow() {
+
+		},
+		methods: {
+			infotext(text) {
+				if (text) {
+					return text
+				} else {
+					return ""
+				}
+			},
+
+			getFloorlockDetails() {
+
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				var chargingDevice = {
+					gunNo: this.id,
+
+				}
+
+				API.findStationByGun(chargingDevice).then((res) => {
+					this.chargingDevice = res.data.chargingDevice
 					this.chargingStation = res.data.chargingStation
 					this.chargingGun = res.data.chargingGun
-					
-					uni.hideLoading();
-					//this.getWhiteList()
-				}).catch(error => {
-
-					uni.hideLoading();
-					uni.showToast({
-						title: error,
-						icon: "none"
-					})
-				})
-			},
-
-
-
-		}
-	}
-</script>
-<style>
-	page {
-		background-color: rgba(242, 244, 246, 1);
-	}
-</style>
-<style lang="scss" scoped>
-	.gradient-header {
-		height: 0px;
-	}
-
-	.jpback {
-		height: 360rpx;
-		background: linear-gradient(180deg, rgba(22, 119, 255, 1) 11%, rgba(242, 244, 246, 1) 100%);
-	}
-
-	.body {
-		padding: 32rpx 32rpx 120rpx 32rpx;
-		//padding-bottom: ;
-	}
-
-	.page-top {
-		color: rgba(255, 255, 255, 1);
-		margin: 48rpx 0;
-
-		.text1 {
-			font-size: 36rpx;
-			margin-bottom: 12rpx;
-		}
-
-		.text2 {
-			font-size: 40rpx;
-
-		}
-	}
-
-	.page {
-		border-radius: 16rpx;
-		background-color: rgba(255, 255, 255, 1);
-		color: rgba(16, 16, 16, 1);
-
-		padding: 32rpx;
-		margin-bottom: 32rpx;
-		font-size: 32rpx;
-		color: rgb(16, 16, 16);
-
-		.info-title {
-			display: flex;
-			justify-content: space-between;
-			padding-bottom: 24rpx;
-
-			.name {
-				font-size: 36rpx;
-				color: rgba(51, 51, 51, 1);
-				font-weight: bold;
-
-				.span {
-					font-weight: 400;
-					font-size: 28rpx;
-					color: rgba(119, 119, 119, 1);
-				}
-			}
-
-			.value {
-				font-size: 28rpx;
-				color: rgba(119, 119, 119, 1);
-			}
-		}
-
-		.pack-up {
-
-
-			color: rgba(119, 119, 119, 100);
-		}
-
-		.tips {
-			margin-top: 12rpx;
-			display: flex;
-			align-items: flex-start;
-			font-size: 24rpx;
-		}
-
-		.table {
-			.table_v {
-				width: 100%;
-			}
-
-			.table_tr {
-
-				display: flex;
-				justify-content: space-between;
-			}
-
-			.row {
-				display: flex;
-				align-items: center;
-				height: 72rpx;
-				font-size: 28rpx;
-				padding: 0 24rpx;
-
-				.name {
-					width: 240rpx;
-				}
-
-			}
-
-			.table_td {
-
-				height: 72rpx;
-				font-size: 28rpx;
-				display: flex;
-				align-items: center;
-
-
-			}
-
-			.table_td1 {
-				width: 30%;
-			}
-
-			.table_td2 {
-				width: 30%;
-			}
-
-			.table_td3 {
-				width: 30%;
-			}
-
-			.table_td4 {
-				width: 10%;
-			}
-
-			/* 隔行变色: 偶数行设置背景色 */
-			.row:nth-child(odd) {
-				background-color: #f9f9f9;
-				/* 偶数行 */
-			}
-
-			.table_tr:nth-child(odd) {
-				background-color: #f9f9f9;
-				/* 偶数行 */
-			}
-
-			.row:nth-child(even) {
-				background-color: #ffffff;
-				/* 奇数行 */
-			}
-
-			.table_tr:nth-child(even) {
-				background-color: #ffffff;
-				/* 奇数行 */
-			}
-
-		}
-	}
-
-	::v-deep.u-keyboard-grids-btn:nth-child(15) {
-		background-color: red;
-	}
-
-	.popup-screen {
-		padding: 40rpx 40rpx 60rpx 40rpx;
-
-		.carNumber {
-			background-color: #F2F4F6;
-			padding: 5px 20px;
-			margin: 5px 0 15px 0;
-			height: 90rpx;
-			display: flex;
-			align-items: center;
-			border-radius: 50px;
-
-		}
-
-		.carNumber1 {
-			color: #bcbcbc;
-		}
-
-
-
-
-		.popup-title {
-			font-size: 36rpx;
-			color: rgba(51, 51, 51, 1);
-			font-weight: bold;
-			padding-bottom: 10px;
-		}
-
-		.cardList {
-			display: flex;
-			justify-content: space-evenly;
-
-			.cardInfo {
-				display: flex;
-				flex-direction: column;
-				justify-content: center;
-				width: 160rpx;
-				height: 160rpx;
-				border-radius: 8px;
-				background-color: rgba(255, 255, 255, 1);
-				text-align: center;
-				border: 1px solid rgba(187, 187, 187, 1);
-
-				.name {
-					color: rgba(16, 16, 16, 1);
-					font-size: 28rpx;
-				}
-
-				.price {
-					color: rgba(16, 16, 16, 1);
-					font-size: 48rpx;
-					font-weight: bold;
-				}
-			}
-
-			.cardInfoCk {
-				background-color: rgba(225, 247, 237, 1);
-				border: 1px solid rgba(0, 185, 98, 1);
-
-				.price {
-					color: rgba(0, 161, 85, 1);
-
-				}
-			}
-		}
-	}
-
-	.floating-button {
-		position: fixed;
-		bottom: 0;
-		/* 距离底部 20px */
-		width: 100%;
-		display: flex;
-		height: 120rpx;
-		justify-content: center;
-		background-color: rgba(255, 255, 255, 1);
-
-		.button {
-			margin-top: 24rpx;
-			border-radius: 50px;
-			height: 80rpx;
-			width: 80%;
-			display: flex;
-			align-items: center;
-			justify-content: center;
-			padding: 12rpx;
-
-			background-color: rgba(22, 119, 255, 1);
-			color: rgba(255, 255, 255, 1);
-			font-size: 36rpx;
-		}
-	}
+					
+					uni.hideLoading();
+					//this.getWhiteList()
+				}).catch(error => {
+
+					uni.hideLoading();
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+
+
+
+		}
+	}
+</script>
+<style>
+	page {
+		background-color: rgba(242, 244, 246, 1);
+	}
+</style>
+<style lang="scss" scoped>
+	.gradient-header {
+		height: 0px;
+	}
+
+	.jpback {
+		height: 360rpx;
+		background: linear-gradient(180deg, rgba(22, 119, 255, 1) 11%, rgba(242, 244, 246, 1) 100%);
+	}
+
+	.body {
+		padding: 32rpx 32rpx 120rpx 32rpx;
+		//padding-bottom: ;
+	}
+
+	.page-top {
+		color: rgba(255, 255, 255, 1);
+		margin: 48rpx 0;
+
+		.text1 {
+			font-size: 36rpx;
+			margin-bottom: 12rpx;
+		}
+
+		.text2 {
+			font-size: 40rpx;
+
+		}
+	}
+
+	.page {
+		border-radius: 16rpx;
+		background-color: rgba(255, 255, 255, 1);
+		color: rgba(16, 16, 16, 1);
+
+		padding: 32rpx;
+		margin-bottom: 32rpx;
+		font-size: 32rpx;
+		color: rgb(16, 16, 16);
+
+		.info-title {
+			display: flex;
+			justify-content: space-between;
+			padding-bottom: 24rpx;
+
+			.name {
+				font-size: 36rpx;
+				color: rgba(51, 51, 51, 1);
+				font-weight: bold;
+
+				.span {
+					font-weight: 400;
+					font-size: 28rpx;
+					color: rgba(119, 119, 119, 1);
+				}
+			}
+
+			.value {
+				font-size: 28rpx;
+				color: rgba(119, 119, 119, 1);
+			}
+		}
+
+		.pack-up {
+
+
+			color: rgba(119, 119, 119, 100);
+		}
+
+		.tips {
+			margin-top: 12rpx;
+			display: flex;
+			align-items: flex-start;
+			font-size: 24rpx;
+		}
+
+		.table {
+			.table_v {
+				width: 100%;
+			}
+
+			.table_tr {
+
+				display: flex;
+				justify-content: space-between;
+			}
+
+			.row {
+				display: flex;
+				align-items: center;
+				height: 72rpx;
+				font-size: 28rpx;
+				padding: 0 24rpx;
+
+				.name {
+					width: 240rpx;
+				}
+
+			}
+
+			.table_td {
+
+				height: 72rpx;
+				font-size: 28rpx;
+				display: flex;
+				align-items: center;
+
+
+			}
+
+			.table_td1 {
+				width: 30%;
+			}
+
+			.table_td2 {
+				width: 30%;
+			}
+
+			.table_td3 {
+				width: 30%;
+			}
+
+			.table_td4 {
+				width: 10%;
+			}
+
+			/* 隔行变色: 偶数行设置背景色 */
+			.row:nth-child(odd) {
+				background-color: #f9f9f9;
+				/* 偶数行 */
+			}
+
+			.table_tr:nth-child(odd) {
+				background-color: #f9f9f9;
+				/* 偶数行 */
+			}
+
+			.row:nth-child(even) {
+				background-color: #ffffff;
+				/* 奇数行 */
+			}
+
+			.table_tr:nth-child(even) {
+				background-color: #ffffff;
+				/* 奇数行 */
+			}
+
+		}
+	}
+
+	::v-deep.u-keyboard-grids-btn:nth-child(15) {
+		background-color: red;
+	}
+
+	.popup-screen {
+		padding: 40rpx 40rpx 60rpx 40rpx;
+
+		.carNumber {
+			background-color: #F2F4F6;
+			padding: 5px 20px;
+			margin: 5px 0 15px 0;
+			height: 90rpx;
+			display: flex;
+			align-items: center;
+			border-radius: 50px;
+
+		}
+
+		.carNumber1 {
+			color: #bcbcbc;
+		}
+
+
+
+
+		.popup-title {
+			font-size: 36rpx;
+			color: rgba(51, 51, 51, 1);
+			font-weight: bold;
+			padding-bottom: 10px;
+		}
+
+		.cardList {
+			display: flex;
+			justify-content: space-evenly;
+
+			.cardInfo {
+				display: flex;
+				flex-direction: column;
+				justify-content: center;
+				width: 160rpx;
+				height: 160rpx;
+				border-radius: 8px;
+				background-color: rgba(255, 255, 255, 1);
+				text-align: center;
+				border: 1px solid rgba(187, 187, 187, 1);
+
+				.name {
+					color: rgba(16, 16, 16, 1);
+					font-size: 28rpx;
+				}
+
+				.price {
+					color: rgba(16, 16, 16, 1);
+					font-size: 48rpx;
+					font-weight: bold;
+				}
+			}
+
+			.cardInfoCk {
+				background-color: rgba(225, 247, 237, 1);
+				border: 1px solid rgba(0, 185, 98, 1);
+
+				.price {
+					color: rgba(0, 161, 85, 1);
+
+				}
+			}
+		}
+	}
+
+	.floating-button {
+		position: fixed;
+		bottom: 0;
+		/* 距离底部 20px */
+		width: 100%;
+		display: flex;
+		height: 120rpx;
+		justify-content: center;
+		background-color: rgba(255, 255, 255, 1);
+
+		.button {
+			margin-top: 24rpx;
+			border-radius: 50px;
+			height: 80rpx;
+			width: 80%;
+			display: flex;
+			align-items: center;
+			justify-content: center;
+			padding: 12rpx;
+
+			background-color: rgba(22, 119, 255, 1);
+			color: rgba(255, 255, 255, 1);
+			font-size: 36rpx;
+		}
+	}
 </style>

+ 40 - 8
pages/station/stationInfo.vue

@@ -162,12 +162,21 @@
 				<view class="text">
 					<view>设备信息</view>
 			
-					<view class="check-all" v-if="false" >查看全部<u-icon name="arrow-right"></u-icon></view>
-			
+					<view class="check-all " v-if="false" >查看全部<u-icon name="arrow-right"></u-icon></view>
+					<template v-if="gunList.length>5">
+						
+						<view class="pack-up check-all" v-show="listShow" @click="listShow=false">
+							展开<u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+						</view>
+						<view class="pack-up check-all" v-if="!listShow" @click="listShow=true">
+							收起<u-icon name="arrow-up" size="32" color="#AAAAAA"></u-icon>
+						</view>
+					</template>
 				</view>
 			
 			</view>
-			
+				<u-alert-tips type="warning" v-if="showalerttips" :description="showalerttipsdescription"></u-alert-tips>
+
 			<view class="body">
 				<view class="line lineT">
 					<view class="p1">
@@ -186,6 +195,7 @@
 				</view>
 				<view class="line" v-for="(item,index) in gunList"
 				@click="gotoUrl('/pages/station/stationGun?gunNo='+item.gunNo)"
+				v-show="index<5||listShow"
 				 :key="index">
 					<view class="p1">
 						充电枪
@@ -198,16 +208,18 @@
 			
 						
 					</view>
-					<view class="p3">
+					<view class="p3" :class="{
+						red:daysDistanceDay(item.lastChargeTime)
+					}">
 						{{lastChargeTime(item.lastChargeTime)}}
 					</view>
 					
 					<u-icon name="arrow-right" color="#D4D4D4" ></u-icon>
 					
 				</view>
-				<u-divider :isnone="gunList.length==0"
-				 nonetext="没有找到相关内容" border-color="#CFD2D5">{{'已经到底了'}}</u-divider>
 				
+				<u-divider :isnone="gunList.length==0"  v-if="gunList.length==0"
+				 nonetext="没有找到相关内容" border-color="#CFD2D5"></u-divider>
 				
 			</view>
 			
@@ -217,7 +229,10 @@
 
 <script>
 	import * as API from '@/apis/pagejs/pagesStation.js'
-	
+	import {
+		
+			newDate,daysDistance
+		} from '@/apis/utils'
 	export default {
 		data() {
 			return {
@@ -228,6 +243,10 @@
 				recordListTotal:0,
 				errList:[],
 				errListTotal:0,
+				listShow:false,
+				showalerttips:false,
+				showalerttipsdescription:"",
+				showalerttipsNum:10,
 				
 			};
 		},
@@ -242,6 +261,10 @@
 			this.getrecordList()
 		},
 		methods: {
+			daysDistanceDay(time){
+				
+				return daysDistance(time,new Date())>this.showalerttipsNum
+			},
 			getrecordList(){
 				
 				API.recordList({
@@ -297,7 +320,13 @@
 				}).then((res) => {
 					this.info = res.data.station
 					this.gunList=res.data.gunList
-				
+					this.gunList.forEach(item=>{
+						if(this.daysDistanceDay(item.lastChargeTime)){
+							this.showalerttips=true;
+							this.listShow=true
+							this.showalerttipsdescription=`存在超过${this.showalerttipsNum}天未充电的充电枪`
+						}
+					})
 					uni.hideLoading();
 			
 				}).catch(error => {
@@ -554,5 +583,8 @@
 		.lineT{
 			font-weight: bold;
 		}
+		.red{
+			color: red;
+		}
 	}
 </style>

+ 4 - 3
pages/station/stationList.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<u-navbar title="地锁列表"></u-navbar>
+		<u-navbar title="站点列表"></u-navbar>
 		<view class="main">
 			<view class="top">
 				<view class="search">
@@ -49,7 +49,7 @@
 								<span class="span span2">空闲{{item.gunFreeNum}}</span>/
 								<span class="span span3">故障{{item.gunFaultNum}}</span>/
 								<span class="span span4">离线{{item.gunOfflineNum}}</span>/
-								<span class="span span5">共{{item.gunNum}}</span>
+								<span class="span span5">共{{item.gunNum}}</span>
 							</view>
 						</view>
 					</view>
@@ -178,7 +178,8 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.listForm.recordsTotal=res.data.recordsTotal
+					this.list = list
 					uni.hideLoading();
 
 				}).catch(error => {

+ 3 - 1
pages/task/listTask.vue

@@ -332,7 +332,9 @@
 							...res.data.data
 						];
 					}
-					this.list = res.data.data
+					this.list = list
+					this.listForm.recordsTotal=res.data.recordsTotal
+					
 					uni.hideLoading();
 				
 				}).catch(error => {

+ 56 - 45
pages/team/stationAdd.vue

@@ -25,13 +25,9 @@
 				</view>
 				
 				
-				<u-icon v-if="radiovalue"
-				color="red"
-				  size="40"
-				  name="minus-circle-fill"
-				></u-icon>
+				
 				
-				<u-icon v-else-if="!item.userHave"
+				<u-icon v-if="!item.userHave"
 				color="#1677FF"
 				  size="40"
 				  name="plus-circle-fill"
@@ -49,18 +45,20 @@
 		</view>
 
 		<view class="floating-button">
+			<view class="class1">
+				已关联<span style="color: #1677ff;">{{userHaveNum}}</span>个充电站
+			</view>
+			<view class="class2">
+				<u-checkbox-group>
+					<u-checkbox v-model="radiovalue"  	@change="radioChange" 
+					shape="circle">全选</u-checkbox>
+				</u-checkbox-group>
+				
+				<view class="button " @click="submit">
 			
-			
-			<u-checkbox-group>
-				<u-checkbox v-model="radiovalue"  	@change="radioChange" 
-				shape="circle">全选</u-checkbox>
-			</u-checkbox-group>
-			
-			<view class="button " @click="submit">
-		
-				关联场站
+					关联场站
+				</view>
 			</view>
-		
 		</view>
 
 	</view>
@@ -76,12 +74,9 @@
 				list: [],
 				listForm: {
 					pageIndex: 1,
-					pageSize: 15,
+					pageSize: 999,
 					recordsTotal: 1,
 					status: 0,
-					roleName: "XJ,XJADMIN",
-
-					roleName: "XJ",
 				},
 				radiovalue:false,
 				id: "",
@@ -92,7 +87,7 @@
 		onLoad(op) {
 			this.id = op.id
 			this.getInfo()
-			this.getList()
+			
 		},
 		onShow() {
 			
@@ -101,14 +96,20 @@
 			if (this.list.length < this.listForm.recordsTotal) {
 				this.myLoadmore();
 			}
+		},
+		computed:{
+			userHaveNum(){
+				var list=this.list.filter(item=>{
+					return  item.userHave
+				})
+				return list.length
+			}
 		},
 		methods: {
 			userHaveBtn(item){
 				if(this.radiovalue){
 					this.radiovalue=false
-					this.list.forEach(item=>{
-						item.userHave=false
-					})
+					
 				}
 				item.userHave=!item.userHave
 			},
@@ -122,7 +123,7 @@
 					if(this.addInfo.authorizedStationEnabled==false){
 						this.radiovalue=true
 					}
-			
+					this.getList()
 				}).catch(error => {
 			
 					uni.hideLoading();
@@ -137,6 +138,7 @@
 				this.listForm.pageIndex += 1;
 				this.getList()
 			},
+			
 			submit(){
 				var list=[]
 				var str=""
@@ -146,9 +148,14 @@
 					list=this.list.filter(item=>{
 						return  item.userHave
 					})
-					var str=list.map(item=>{
-						return item.id
-					}).join(',')
+					if(list.length==this.listForm.recordsTotal){
+						str="-1"
+					}else{
+						var str=list.map(item=>{
+							return item.id
+						}).join(',')
+					}
+					
 				}
 			
 				
@@ -194,6 +201,10 @@
 			
 				console.log(e,this.radiovalue)
 				
+				this.list.forEach(item=>{
+						item.userHave=e.value
+				})
+				
 			},
 			
 			showqueryName(item) {
@@ -225,19 +236,12 @@
 				API.teamUserStationUpdateList(this.listForm).then((res) => {
 
 					
-					var list = this.list
-					
-									
-					
-					if (this.listForm.pageIndex == 1) {
-						list = res.data.data;
-					} else {
-						list = [
-							...list,
-							...res.data.data
-						];
+					 this.list=res.data.data
+					if(this.radiovalue){
+						 this.list.forEach(item=>{
+							 item.userHave=true
+						 })
 					}
-					this.list =list
 					this.listForm.recordsTotal=res.data.recordsTotal
 					
 					uni.hideLoading();
@@ -350,12 +354,19 @@
 		bottom: 0;
 	
 		width: 100%;
-		display: flex;
-		height: 120rpx;
-	
-		    justify-content: space-around;
+		
+		height: 150rpx;
+		    border-top: 1px solid #e8e8e8;
 		background-color: rgba(255, 255, 255, 1);
-	
+		.class1{
+			padding-left: 36rpx;
+		}
+		.class2{
+			display: flex;
+			justify-content: space-around;
+			
+		}
+		
 		.button {
 			margin-top: 24rpx;
 			border-radius: 50px;

+ 1 - 1
pages/team/teamInfo.vue

@@ -58,7 +58,7 @@
 		<view class="list">
 			<view class="item">
 				<view class="name">
-					关联设备管理
+					场站关联管理
 
 		
 				</view>

+ 17 - 6
pages/team/teamList.vue

@@ -11,7 +11,9 @@
 			</view>
 		</view>
 		
-
+		<view class="bodyMain">
+			
+		
 		<view class="list"  >
 			<view class="item" 
 			 v-for="(item,index) in list" 
@@ -29,7 +31,7 @@
 				<view class="body">
 					<view class="line1">
 						<view class="title">
-							{{item.name}} <span class="tag">{{item.roleName}}</span> 
+							{{item.name}} <span class="tag"  :class="'role'+item.role">{{item.roleName}}</span> 
 		
 						</view>
 						
@@ -52,6 +54,7 @@
 			
 		</view>
 		<u-divider :isnone="list.length==0" nonetext="没有找到相关内容" border-color="#CFD2D5">已经到底了</u-divider>
+		</view>
 		<view class="floating-button">
 			<view class="button"  @click="gotoUrl('/pages/team/teamAdd')" >
 				
@@ -73,7 +76,7 @@
 				list:[],
 				listForm:{
 					pageIndex: 1,
-					pageSize: 20,
+					pageSize: 99,
 					recordsTotal: 1,
 					status:0,
 					roleName:"XJ,XJADMIN",
@@ -162,9 +165,11 @@
 </script>
 
 <style lang="scss" scoped>
-
+	.bodyMain{
+		padding-bottom: 120rpx;
+	}
 		.list {
-			padding: 24rpx 32rpx;
+			padding: 0rpx 32rpx;
 background-color: rgba(255,255,255,1);
 			.item {
 				display: flex;
@@ -309,12 +314,18 @@ background-color: rgba(255,255,255,1);
 		}
 		.tag{
 			border-radius: 2pt;
-			background-color: rgba(22,119,255,1);
+			background-color: #19be6b;
 			color: rgba(255,255,255,1);
 			font-size: 24rpx;
 			line-height: 24rpx;
 			padding:2rpx 8rpx;
 			margin-left: 8rpx;
 
+		}
+		.role1{
+			background-color: rgba(22,119,255,1);
+		}
+		.role2{
+			
 		}
 </style>

+ 1 - 1
uni_modules/uview-ui/components/u-dropdown-change/u-dropdown-change.vue

@@ -217,7 +217,7 @@
 			getContentHeight() {
 				// 这里的原理为,因为dropdown组件是相对定位的,它的下拉出来的内容,必须给定一个高度
 				// 才能让遮罩占满菜单一下,直到屏幕底部的高度
-				// this.$u.sys()为uView封装的获取地锁信息的方法
+				// this.$u.sys()为uView封装的获取设备信息的方法
 				let windowHeight = this.$u.sys().windowHeight;
 				this.$uGetRect('.u-dropdown__menu').then(res => {
 					// 这里获取的是dropdown的尺寸,在H5上,uniapp获取尺寸是有bug的(以前提出修复过,后来又出现了此bug,目前hx2.8.11版本)

+ 1 - 1
uni_modules/uview-ui/components/u-dropdown/u-dropdown.vue

@@ -214,7 +214,7 @@
 			getContentHeight() {
 				// 这里的原理为,因为dropdown组件是相对定位的,它的下拉出来的内容,必须给定一个高度
 				// 才能让遮罩占满菜单一下,直到屏幕底部的高度
-				// this.$u.sys()为uView封装的获取地锁信息的方法
+				// this.$u.sys()为uView封装的获取设备信息的方法
 				let windowHeight = this.$u.sys().windowHeight;
 				this.$uGetRect('.u-dropdown__menu').then(res => {
 					// 这里获取的是dropdown的尺寸,在H5上,uniapp获取尺寸是有bug的(以前提出修复过,后来又出现了此bug,目前hx2.8.11版本)

+ 1 - 1
uni_modules/uview-ui/components/u-subsection/u-subsection.vue

@@ -89,7 +89,7 @@
 				type: String,
 				default: '#ffffff'
 			},
-			// 在切换分段器的时候,是否让地锁震一下
+			// 在切换分段器的时候,是否让设备震一下
 			vibrateShort: {
 				type: Boolean,
 				default: false

+ 1 - 1
uni_modules/uview-ui/index.js

@@ -61,7 +61,7 @@ import getParent from './libs/function/getParent.js'
 // 获取整个父组件
 import $parent from './libs/function/$parent.js'
 // 获取sys()和os()工具方法
-// 获取地锁信息,挂载到$u的sys()(system的缩写)属性中,
+// 获取设备信息,挂载到$u的sys()(system的缩写)属性中,
 // 同时把安卓和ios平台的名称"ios"和"android"挂到$u.os()中,方便取用
 import {sys, os} from './libs/function/sys.js'
 // 防抖方法