瀏覽代碼

显示调整,增加筛选

zhengkaixin 6 天之前
父節點
當前提交
b5d3ec1af8
共有 5 個文件被更改,包括 268 次插入66 次删除
  1. 10 0
      apis/utils/index.js
  2. 69 47
      pages/index/index.vue
  3. 99 13
      pages/inspection/list.vue
  4. 78 5
      pages/task/listTask.vue
  5. 12 1
      pages/team/teamList.vue

+ 10 - 0
apis/utils/index.js

@@ -92,6 +92,16 @@ export const daysDistance = (date1, date2) => {
 	var days = parseInt(Math.floor(ms / (24 * 3600 * 1000)));
 	return days;
 }
+//计算两个时间的相差天数
+export const daysDistanceTrue = (date1, date2) => {
+	date1 = Date.parse(date1);
+	date2 = Date.parse(date2);
+	var ms = date2 - date1;
+	ms = ms < 0 ? -1 : ms;
+	var days = parseInt(Math.floor(ms / (24 * 3600 * 1000)));
+	return days;
+}
+
 //计算两个时间的相差小时数
 export const hourDistanceArr = (date1, date2) => {
 	if (!date1 || !date2) {

+ 69 - 47
pages/index/index.vue

@@ -165,7 +165,7 @@
 			</view>
 
 			<view class="top-main">
-				<u-tabs :list="tabslist" v-if="0" :current="current" @change="change"></u-tabs>
+				<u-tabs :list="tabslist"  :current="current1" @change="change1"></u-tabs>
 
 			</view>
 
@@ -188,13 +188,26 @@
 
 
 						</view>
-
-						<view class="line2">
+						<view class="line2">
+							<view v-if="item.type==1" >
+								{{item.deviceName}} {{item.deviceNo}}
+							</view>
+							<view v-if="item.type==2" >
+								人工上报
+							</view>
+						
+							<view class="value" style=" white-space: pre;">
+						
+								{{item.errorReportTime}}
+							</view>
+						
+						</view>
+						<view class="line2" v-if="item.type==1">
 							<view v-if="getHourDistanceArr(item.errorReportTime)==0" :class="{
 								getHourDistanceArrNum10:true,
 							
 							}">
-
+								
 							</view>
 							<view v-else :class="{
 								getHourDistanceArrNum10:true,
@@ -203,10 +216,7 @@
 							}">
 								超{{getHourDistanceArr(item.errorReportTime) }}小时未处理</view>
 
-							<view class="value" style=" white-space: pre;">
-
-								{{item.errorReportTime}}
-							</view>
+						
 
 						</view>
 
@@ -216,7 +226,7 @@
 					<u-icon name="arrow-right" size="24" color="#BBBBBB"></u-icon>
 				</view>
 
-				<u-divider color="#F44336" :isnone="dataerrRecordsTotal==0" nonetext="暂无数据"
+				<u-divider color="#F44336"  nonetop="0" :isnone="dataerrRecordsTotal==0" nonetext="暂无数据"
 					v-if="dataerrRecordsTotal==0"></u-divider>
 
 
@@ -245,7 +255,7 @@
 			</view>
 
 			<view class="top-main">
-				<u-tabs :list="tabslist" v-if="0" :current="current" @change="change"></u-tabs>
+				<u-tabs :list="tabslist"  :current="current2" @change="change2"></u-tabs>
 
 			</view>
 
@@ -261,9 +271,13 @@
 
 							{{item.stationName}}
 						</view>
-						<view class="value">
+						<view class="value" v-if="0">
 							上次巡检时间:{{lastChargeTime(item.lastInspectionTime)}}
 
+						</view>
+						<view class="value">
+							巡检截止时间:{{lastChargeTime(item.inspectionEndTime)}}
+						
 						</view>
 
 
@@ -273,7 +287,7 @@
 
 					<view class="line2">
 						
-						<view   v-if="getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)=='-'"
+						<view   v-if="getdaysDistance(item.inspectionEndTime)=='-'"
 						
 						 style="color:#777777 ;" >
 						
@@ -281,13 +295,18 @@
 						
 						</view>
 						
-						<view   v-else-if="getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)<5"
+						<view   v-else-if="getdaysDistance(item.inspectionEndTime)>0"
 						 style="color:#FF7B00 ;" >
 
-							{{getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)}}天后到期
+							{{getdaysDistance(item.inspectionEndTime)}}天后到期
 
 						</view>
-
+						<view   class="value" v-else-if="getdaysDistance(item.inspectionEndTime)==0"  style="color: #EE3138 ;" >
+						
+							&le;1天后到期
+						
+						
+						</view>
 						<view   v-else  style="color: #EE3138 ;" >
 						
 							已逾期
@@ -304,7 +323,7 @@
 
 				</view>
 
-				<u-divider color="#F44336" :isnone="datainsRecordsTotal==0" nonetext="暂无数据"
+				<u-divider color="#F44336" nonetop="0" :isnone="datainsRecordsTotal==0" nonetext="暂无数据"
 					v-if="datainsRecordsTotal==0"></u-divider>
 
 
@@ -333,7 +352,7 @@
 
 		newDate,
 		hourDistanceArr,
-		daysDistance
+		daysDistanceTrue
 	} from '@/apis/utils'
 	export default {
 		components: {
@@ -356,13 +375,14 @@
 
 				tabslist: [{
 					name: '电动车充电站',
-					code: "geterrList0"
+					code: "1"
 
 				}, {
 					name: '电单车充电站',
-					code: "geterrList1"
+					code: "0"
 				}],
-				current: 0,
+				current1: 0,
+				current2: 0,
 			};
 		},
 		onLoad() {
@@ -407,19 +427,17 @@
 			},
 			getinsList() {
 				var status = 0
-				var code = this.tabslist[this.current].code
-				if (code == "geterrList0") {
-					status = 0
-				}
-				if (code == "geterrList1") {
-					status = 1
-				}
+				var code = this.tabslist[this.current2].code
+				
 				API.recordList({
 					pageIndex: 1,
 					pageSize: 20,
-					status: 0,
+					status: 0,
+					chargingType:code
 				}).then((response) => {
-					this.datainsList = response.data.data
+					this.datainsList = response.data.data
+					
+					
 					this.datainsRecordsTotal = response.data.recordsTotal
 					this.isReadyinsList = true
 				}).catch(error => {
@@ -430,12 +448,12 @@
 
 				})
 			},
-			getdaysDistance(time1, time2) {
-				if (!time1) {
-					return '-'
-				}
-
-				return daysDistance(time1, time2)
+			getdaysDistance( time2) {
+				if (!time2) {
+					return '-'
+				}
+			
+				return daysDistanceTrue(new Date(),time2)
 			},
 			getHourDistanceArr(time) {
 				if (!time) {
@@ -445,14 +463,20 @@
 
 
 			},
-			change(e) {
-				this.current = e
+			change1(e) {
+				this.current1 = e
 
 				this.dataerrList = []
 
 				this.geterrList()
 			},
-
+			change2(e) {
+				this.current2 = e
+			
+				this.datainsList = []
+			
+				this.getinsList()
+			},
 			isToday(dateStr) {
 				if (!dateStr) {
 					return false
@@ -502,19 +526,17 @@
 			},
 			geterrList() {
 				var status = 0
-				var code = this.tabslist[this.current].code
-				if (code == "geterrList0") {
-					status = 0
-				}
-				if (code == "geterrList1") {
-					status = 1
-				}
+				var code = this.tabslist[this.current1].code
+				
 				API.errList({
 					pageIndex: 1,
 					pageSize: 5,
-					status: 0,
+					status: 0,
+					chargingType:code
 				}).then((response) => {
-					this.dataerrList = response.data.data
+					this.dataerrList = response.data.data
+					
+					
 					this.dataerrRecordsTotal = response.data.recordsTotal
 					this.isReadyerrList = true
 				}).catch(error => {

+ 99 - 13
pages/inspection/list.vue

@@ -12,10 +12,29 @@
 			</view>
 		</view>
 		
+		<u-select v-model="queryStatusBl" :default-value="queryStatusValue" value-name="value"
+			label-name="name" @confirm="selectQueryStatusConfirm" :list="statuslist"></u-select>
+		<u-select v-model="queryTypeBl" :default-value="queryTypeValue" value-name="value"
+			label-name="name" @confirm="selectQueryTypeConfirm" :list="typelist"></u-select>
+		
+		
 		<view  class="viewTop" >
-			<u-tabs :list="tabslist" 
-			 style="   width: 70%;"
-			 :current="current" @change="change"></u-tabs>
+		
+			<view class="select" @click="queryStatusBl=true">
+							<view class="selectSpan">
+								{{queryStatus==''?'全部记录':queryStatusN}}
+							</view>
+							 <u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+			</view>
+			<view class="select" @click="queryTypeBl=true">
+							<view class="selectSpan">
+								{{queryType?queryTypeN:'全部站点'}}
+							</view>
+							 <u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+			</view>
+		
+		
+		
 			 <view class="select" @click="completionTimeShow=true">
 				<view class="selectSpan">
 					{{completionTimeN}}
@@ -53,17 +72,23 @@
 		
 						</view>
 						
-						<view  class="value"  v-if="getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)=='-'"
+						<view  class="value"  v-if="getdaysDistance(item.inspectionEndTime)=='-'"
 						
 						 style="color:#777777 ;" >
 						
 							
 						</view>
 						
-						<view  class="value"  v-else-if="getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)<5"
+						<view  class="value"  v-else-if="getdaysDistance(item.inspectionEndTime)>0"
 						 style="color:#FF7B00 ;" >
 						
-							{{getdaysDistance(item.lastInspectionTime,item.inspectionEndTime)}}天后到期
+							{{getdaysDistance(item.inspectionEndTime)}}天后到期
+						
+						</view>
+						<view   class="value" v-else-if="getdaysDistance(item.inspectionEndTime)==0"  style="color: #EE3138 ;" >
+						
+							即将到期(&le;1天)
+						
 						
 						</view>
 						
@@ -107,7 +132,7 @@
 	import {
 	
 		currentTimeStamp,
-		parseUnixTime,newDate,nextMonth,daysDistance
+		parseUnixTime,newDate,nextMonth,daysDistanceTrue
 	} from '@/apis/utils'
 	export default {
 		data() {
@@ -119,8 +144,20 @@
 					pageIndex: 1,
 					pageSize: 20,
 					recordsTotal: 1,
-					status:0
+					status:""
 				},
+				
+				queryStatus: "",
+				queryStatusN: "",
+				queryStatusBl:false,
+				queryStatusValue: [0],
+				
+				
+				queryType: "",
+				queryTypeN: "",
+				queryTypeBl:false,
+				queryTypeValue: [0],
+				
 				completionTime: "",
 				completionTimeShow: false,
 				lockId:"",
@@ -137,6 +174,32 @@
 						name: '全部',
 						status:''
 					}
+				],
+				statuslist:[
+					{
+						name: '全部记录',
+						value:""
+					},
+					{
+						name: '未处理',
+						value:"0"
+					}, {
+						name: '已处理',
+						value:"1"
+					}
+				],
+				typelist:[
+					{
+						name: '全部记录',
+						value:""
+					},
+					{
+						name: '电单车',
+						value:"0"
+					}, {
+						name: '电动车',
+						value:"1"
+					}
 				]
 			};
 		},
@@ -173,12 +236,12 @@
 			}
 		},
 		methods: {
-			getdaysDistance(time1, time2) {
-				if (!time1) {
+			getdaysDistance( time2) {
+				if (!time2) {
 					return '-'
 				}
-			
-				return daysDistance(time1, time2)
+				console.log( daysDistanceTrue(new Date(),time2))
+				return daysDistanceTrue(new Date(),time2)
 			},
 			testBtn() {
 			
@@ -258,6 +321,21 @@
 				this.listForm.pageIndex += 1;
 				this.getList()
 			},
+			selectQueryStatusConfirm(e) {
+				this.queryStatusValue=[e[0].i]
+				this.queryStatusN = e[0].label
+				this.queryStatus = e[0].value
+				this.listForm.status=this.queryStatus
+				this.getList(1)
+			},
+			selectQueryTypeConfirm(e) {
+				console.log(e)
+				this.queryTypeValue=[e[0].i]
+				this.queryTypeN = e[0].label
+				this.queryType = e[0].value
+				this.listForm.chargingType=this.queryType
+				this.getList(1)
+			},
 			getList(bl) {
 				if(bl){
 					this.listForm.pageIndex = 1
@@ -284,7 +362,11 @@
 							...res.data.data
 						];
 					}
+					
+					
+					
 					this.list = list
+					
 					this.listForm.recordsTotal=res.data.recordsTotal
 					
 					uni.hideLoading();
@@ -358,6 +440,9 @@
 							color:#fff;
 							padding: 2rpx 8rpx;
 							//border-radius: 8rpx;
+							white-space: pre;
+							  
+							    height: 40rpx;
 
 						}
 						
@@ -396,6 +481,7 @@
 		}
 		
 		.viewTop{
+			padding:16rpx 0 24rpx 0;
 			border-bottom: 2rpx solid #e8e8e8;
 			background-color: #fff;
 			    display: flex;
@@ -408,7 +494,7 @@
 								
 							.selectSpan{
 								    text-align: end;
-								width: 200rpx;
+								//width: 200rpx;
 								overflow: hidden;
 								   text-overflow: ellipsis;
 								   white-space: nowrap; /* 禁止换行,强制单行 */

+ 78 - 5
pages/task/listTask.vue

@@ -15,20 +15,39 @@
 		<u-select v-model="selectTaskInfoCode" :default-value="selectTaskInfoCodeValue" value-name="value"
 			label-name="name" @confirm="selectTaskInfoCodeConfirm" :list="codeList"></u-select>
 		
+		
+		<u-select v-model="queryStatusBl" :default-value="queryStatusValue" value-name="value"
+			label-name="name" @confirm="selectQueryStatusConfirm" :list="statuslist"></u-select>
+		<u-select v-model="queryTypeBl" :default-value="queryTypeValue" value-name="value"
+			label-name="name" @confirm="selectQueryTypeConfirm" :list="typelist"></u-select>
+		
+		
 		<u-picker mode="time" v-model="completionTimeShow" @confirm="completionTimeConfirm"
 			:default-time="completionTime" :params="params"></u-picker>
 		
 		
 		
 		<view  class="viewTop" >
-			<u-tabs :list="tabslist" 
+			<!-- <u-tabs :list="tabslist" 
 			 style="   width: 50%;"
-			 :current="current" @change="change"></u-tabs>
+			 :current="current" @change="change"></u-tabs> -->
 			 
+			 <view class="select" @click="queryStatusBl=true">
+			 				<view class="selectSpan">
+			 					{{queryStatus==''?'全部记录':queryStatusN}}
+			 				</view>
+			 				 <u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+			 </view>
+			 <view class="select" @click="queryTypeBl=true">
+			 				<view class="selectSpan">
+			 					{{queryType?queryTypeN:'全部站点'}}
+			 				</view>
+			 				 <u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
+			 </view>
 			 
 			 <view class="select" @click="selectTaskInfoCodeBtn">
 			 				<view class="selectSpan">
-			 					{{codeN?codeN:'全部类型'}}
+			 					{{codeN?codeN:'故障类型'}}
 			 				</view>
 			 				 <u-icon name="arrow-down" size="32" color="#AAAAAA"></u-icon>
 			 </view>
@@ -62,7 +81,7 @@
 					
 					<view class="line2">
 						<view class="value" v-if="item.deviceName">
-							设备编号 {{item.deviceName}}<span style="margin: 0 8rpx;">|</span>{{item.deviceNo}}
+							设备编号 {{item.deviceName}} {{item.deviceNo}}
 		
 						</view>
 						<view class="value">
@@ -146,12 +165,24 @@
 					pageIndex: 1,
 					pageSize: 20,
 					recordsTotal: 1,
-					status:0
+					status:""
 				},
 				lockId:"",
 				lockName:"",
 				codeN: "",
 				code: "",
+				
+				queryStatus: "",
+				queryStatusN: "",
+				queryStatusBl:false,
+				queryStatusValue: [0],
+				
+				
+				queryType: "",
+				queryTypeN: "",
+				queryTypeBl:false,
+				queryTypeValue: [0],
+				
 				selectTaskInfoCode: false,
 				selectTaskInfoCodeValue: [0],
 				completionTime: "",
@@ -173,6 +204,32 @@
 					}, {
 						name: '已处理'
 					}
+				],
+				statuslist:[
+					{
+						name: '全部记录',
+						value:""
+					},
+					{
+						name: '未处理',
+						value:"0"
+					}, {
+						name: '已处理',
+						value:"1"
+					}
+				],
+				typelist:[
+					{
+						name: '全部记录',
+						value:""
+					},
+					{
+						name: '电单车',
+						value:"0"
+					}, {
+						name: '电动车',
+						value:"1"
+					}
 				]
 			};
 		},
@@ -289,6 +346,21 @@
 				this.listForm.errorCode=this.code
 				this.getList(1)
 			},
+			selectQueryStatusConfirm(e) {
+				this.queryStatusValue=[e[0].i]
+				this.queryStatusN = e[0].label
+				this.queryStatus = e[0].value
+				this.listForm.status=this.queryStatus
+				this.getList(1)
+			},
+			selectQueryTypeConfirm(e) {
+				console.log(e)
+				this.queryTypeValue=[e[0].i]
+				this.queryTypeN = e[0].label
+				this.queryType = e[0].value
+				this.listForm.chargingType=this.queryType
+				this.getList(1)
+			},
 			gotoSelectLock(){
 				uni.navigateTo({
 				  url: '/pages/task/selectStation?isAll=1',
@@ -481,6 +553,7 @@
 		}
 		
 		.viewTop{
+			padding:16rpx 0 24rpx 0;
 			border-bottom: 2rpx solid #e8e8e8;
 			background-color: #fff;
 			    display: flex;

+ 12 - 1
pages/team/teamList.vue

@@ -146,8 +146,19 @@
 				API.teamMembers(this.listForm).then((res) => {
 					
 				
-					this.list = res.data.memberList
+					var list = res.data.memberList
 					
+					list=list.sort((item1,item2)=>{
+						if(item1.role<item2.role){
+							return -1
+						}else {
+							return 1
+						}
+						
+						
+					})
+					
+					this.list= list
 					uni.hideLoading();
 				
 				}).catch(error => {