wkyy hace 1 año
padre
commit
a2f8604a92

+ 19 - 17
pages/abnormal/abnormalAlarmRecord.vue

@@ -11,11 +11,6 @@
 			<view class="dropdown-item" @click="show3=true">
 				{{device}} <u-icon name="arrow-down" color="#999999"></u-icon>
 			</view>
-			<!-- <u-dropdown-change ref="uDropdown">
-				<u-dropdown-item v-model="value1" title="全部时间" :options="options1"></u-dropdown-item>
-				<u-dropdown-item v-model="value2" title="全部状态" :options="options2"></u-dropdown-item>
-				<u-dropdown-item v-model="value3" title="全部设备" :options="options3"></u-dropdown-item>
-			</u-dropdown-change> -->
 		</view>
 
 		<u-picker mode="time" :defaultTime="defaultTime" v-model="show1" :params="params" @confirm="timeChange"></u-picker>
@@ -209,22 +204,29 @@
 				})
 				API.alarmConfiguration().then((response) => {
 					uni.hideLoading();
-					var list1 = response.data.alarmConfigList.map(item => {
-						return {
-							label: item.name,
-							value: item.id
-						}
-					});
+					var list1 = [];
+					var list2 = [];
+					if(response.data.alarmConfigList && response.data.alarmConfigList.length != 0) {
+						list1 = response.data.alarmConfigList.map(item => {
+							return {
+								label: item.name,
+								value: item.id
+							}
+						});
+					}
 					list1.unshift({
 						value: '',
 						label: '全部状态'
 					});
-					var list2 = response.data.companyInfoList.map(item => {
-						return {
-							label: item.name,
-							value: item.id
-						}
-					});
+					
+					if(response.data.companyInfoList && response.data.companyInfoList.length != 0) {
+						list2 = response.data.companyInfoList.map(item => {
+							return {
+								label: item.name,
+								value: item.id
+							}
+						});
+					}
 					list2.unshift({
 						value: '',
 						label: '全部设备'

+ 97 - 14
pages/equipmentDataMonitoring/dataMonitoring-list.vue

@@ -1,12 +1,5 @@
 <template>
 	<view>
-		<!-- <u-navbar title="设备数据监测"  title-color="#101010" >
-			
-			<view class="slot" slot="right">
-				<image class="img" src="@/assets/img/riLine-road-map-line.svg" mode=""></image>地图
-			
-			</view>
-		</u-navbar> -->
 		<view class="navbar-c">
 			<view class="back" @click="toStatistics">
 				<u-icon name="arrow-left" color="#101010" size="36"></u-icon>
@@ -18,12 +11,18 @@
 				<image class="img" src="@/assets/img/riLine-road-map-line.svg" mode=""></image>地图
 			</view>
 		</view>
-		<!-- <view class="dropdown">
-			<u-dropdown-change>
-				<u-dropdown-item v-model="value1" title="全部设备" :options="options1"></u-dropdown-item>
-				<u-dropdown-item v-model="value2" title="全部状态" :options="options2"></u-dropdown-item>
-			</u-dropdown-change>
-		</view> -->
+		<view class="dropdown">
+			<view class="dropdown-item" @click="show1=true">
+				{{device}} <u-icon name="arrow-down" color="#999999"></u-icon>
+			</view>
+			<view class="dropdown-item" @click="show2=true">
+				{{state}} <u-icon name="arrow-down" color="#999999"></u-icon>
+			</view>
+		</view>
+		
+		<u-select v-model="show1" mode="single-column" :list="selectDeviceList" @confirm="deviceChange"></u-select>
+		
+		<u-select v-model="show2" mode="single-column" :list="stateList" @confirm="stateChange"></u-select>
 
 		<view class="main">
 			<view class="item" v-for="(item,index) in deviceList" :key="index" @click="toElectronicMonitoring(item)">
@@ -138,6 +137,12 @@
 	export default {
 		data() {
 			return {
+				show2: false, // 状态选择
+				state: '全部状态',
+				stateList: [],
+				show1: false, // 设备选择
+				device: '全部设备',
+				selectDeviceList: [],
 				deviceList: [],
 				companyId: '',
 				pageIndex: 1,
@@ -178,7 +183,8 @@
 			}
 		},
 		onReady() {
-			this.getList()
+			this.getList();
+			this.getAlarmConfiguration();
 		},
 		onReachBottom() {
 			if (this.deviceList.length < this.recordsTotal) {
@@ -186,6 +192,67 @@
 			}
 		},
 		methods: {
+			// 异常查询条件
+			getAlarmConfiguration() {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.alarmConfiguration().then((response) => {
+					uni.hideLoading();
+					var list1 = [];
+					var list2 = [];
+					if(response.data.alarmConfigList && response.data.alarmConfigList.length != 0) {
+						list1 = response.data.alarmConfigList.map(item => {
+							return {
+								label: item.name,
+								value: item.id
+							}
+						});
+					}
+					list1.unshift({
+						value: '',
+						label: '全部状态'
+					});
+					
+					if(response.data.companyInfoList && response.data.companyInfoList.length != 0) {
+						list2 = response.data.companyInfoList.map(item => {
+							return {
+								label: item.name,
+								value: item.id
+							}
+						});
+					}
+					list2.unshift({
+						value: '',
+						label: '全部设备'
+					});
+					
+					this.stateList = list1;
+					this.selectDeviceList = list2;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			// 状态查询
+			stateChange(e) {
+				console.log(e);
+				this.configId = e[0].value;
+				this.state = e[0].label;
+				
+				this.getList(true);
+			},
+			// 设备查询
+			deviceChange(e) {
+				console.log(e);
+				this.companyId = e[0].value;
+				this.device = e[0].label;
+				
+				this.getList(true);
+			},
 			myLoadmore() {
 				this.pageIndex += 1;
 				this.getList();
@@ -240,6 +307,22 @@
 	page {
 		padding-bottom: 100rpx;
 	}
+	
+	.dropdown {
+		background-color: #fff;
+		position: sticky;
+		top: 88rpx;
+		z-index: 999;
+		padding: 18rpx 46rpx;
+		display: flex;
+		border-bottom: 1px solid rgba(245, 245, 245, 1);
+		.dropdown-item{
+			width: 50%;
+			text-align: center;
+			height: 60rpx;
+			line-height: 60rpx;
+		}
+	}
 
 	.back {
 		z-index: 999;

+ 0 - 46
pages/equipmentDataMonitoring/electronicMonitoring.vue

@@ -548,52 +548,6 @@
 					this.getElectricityStatistics();
 				}
 			},
-			getChildren(item) {
-				if(item.remoteReadingMeterList.length!=0 && item.remoteMonitorMeterList.length!=0) {
-					return [{
-						label: '抄表',
-						value: '1',
-						children: item.remoteReadingMeterList.map(item => {
-							return {
-								label: item.name,
-								value: item.id,
-							}
-						})
-					},
-					{
-						label: '监控表',
-						value: '1',
-						children: item.remoteMonitorMeterList.map(item => {
-							return {
-								label: item.name,
-								value: item.id,
-							}
-						})
-					}]
-				} else if (item.remoteReadingMeterList.length!=0 && item.remoteMonitorMeterList.length==0) {
-					return [{
-						label: '抄表',
-						value: '1',
-						children: item.remoteReadingMeterList.map(item => {
-							return {
-								label: item.name,
-								value: item.id,
-							}
-						})
-					}]
-				} else {
-					return [{
-						label: '监控表',
-						value: '1',
-						children: item.remoteMonitorMeterList.map(item => {
-							return {
-								label: item.name,
-								value: item.id,
-							}
-						})
-					}]
-				}
-			},
 			getCompanyInfoList() {
 				uni.showLoading({
 					title: "加载中",

+ 145 - 24
pages/workOrderManagement/faultReport.vue

@@ -1,17 +1,24 @@
 <template>
 	<view>
 		<u-navbar title="故障上报" title-color="#101010"></u-navbar>
+		<!-- 设备选择器 -->
+		<u-select title="设备选择" v-model="show" mode="single-column" :list="deviceList" @confirm="deviceConfirm">
+		</u-select>
+		
 		<view class="main">
 			<!-- 故障设备 -->
-			<view class="fault-equipment">
+			<view class="fault-equipment" @click="show=true">
 				<view class="title">
 					<text class="asterisk">*</text>故障设备
 
 				</view>
 				<view class="value">
-					<view class="placeholder">
+					<view class="placeholder" v-if="!faultForm.deviceName">
 						请选择设备
 					</view>
+					<view v-else>
+						{{faultForm.deviceName}}
+					</view>
 					<view class="icon">
 						<u-icon name="arrow-right" color="#acacac"></u-icon>
 					</view>
@@ -23,17 +30,9 @@
 					<text class="asterisk">*</text>请选择故障类型:
 				</view>
 				<view class="type">
-					<view class="type-item item-checked">
-						温度异常
-					</view>
-					<view class="type-item ">
-						电压异常
-					</view>
-					<view class="type-item ">
-						设备离线
-					</view>
-					<view class="type-item ">
-						其他问题
+					<view class="type-item" v-for="(item,index) in stateList" :key="index"
+						:class="stateIndex==index ? 'item-checked' : ''" @click="stateClick(item,index)">
+						{{item.label}}
 					</view>
 				</view>
 			</view>
@@ -44,16 +43,18 @@
 				现场照片/视频(最多4张)
 			</view>
 			<view class="upload">
-				<u-upload :action="action" :file-list="fileList" max-count="4" width="144" height="144"></u-upload>
+				<!-- <u-upload :action="action" :file-list="fileList" max-count="4" width="144" height="144"></u-upload> -->
+				<u-upload max-count="4" name="photoFile" ref="uUpload" :form-data="formData" :header="header"
+					:action="action" :file-list="fileList" width="144" height="144"></u-upload>
 			</view>
 		</view>
 		<!-- 故障描述 -->
 		<view class="fault-description">
 			<view class="title">
-				故障描述
+				<text class="asterisk">*</text>故障描述
 			</view>
 			<view class="textarea">
-				<textarea placeholder="请详细描述故障现象,以便我们更准确快速的为您解决问题"></textarea>
+				<textarea v-model="faultForm.content" placeholder="请详细描述故障现象,以便我们更准确快速的为您解决问题"></textarea>
 			</view>
 		</view>
 		<!-- 底部 -->
@@ -64,37 +65,153 @@
 </template>
 
 <script>
+	import * as API from '@/apis/pagejs/energy/index.js'
+	import * as API_workOrder from '@/apis/pagejs/energy/workOrder.js'
+	
 	export default {
 		data() {
 			return {
+				stateIndex: -1,
+				stateList: [], //故障类型List
+				faultForm: {
+					deviceId: '', //故障设备id
+					deviceName: '',
+					faultType: '', //故障类型
+					pic: '', //故障拍照
+					content: '' //故障内容
+				},
+				show: false,
+				deviceList: [], //设备
 				action: '',
 				fileList: [],
 				formData: {}
 			}
 		},
 		onLoad() {
-			this.action = process.car.BASE_URL + "uploadPicture";
+			this.action = process.car.BASE_URL + "uploadFile";
 			this.formData = {
-				subFolder: "image"
+				subFolder: "workorder"
 			}
-			
 			var token = this.carhelp.getToken();
 			this.header={
 				'Authorization': token,
 				'X-Requested-With': 'application/x-www-form-urlencoded'
 			}
+			
+			this.getLoadMyDevices();
+			this.getFindByCatalogName();
 		},
 		methods: {
 			submit() {
-				uni.navigateTo({
-					url: '/pages/workOrderManagement/workOrderManagement'
+				let files = [];
+				// 通过filter,筛选出上传进度为100的文件(因为某些上传失败的文件,进度值不为100,这个是可选的操作)
+				files = this.$refs.uUpload.lists.filter(val => {
+					return val.progress == 100;
 				})
-			}
+				// 如果您不需要进行太多的处理,直接如下即可
+				files = this.$refs.uUpload.lists;
+				var imgUrl = files.map(item => {
+					return item.response.data.url;
+				})
+				this.faultForm.pic = imgUrl.join(',');
+				
+				if(!this.faultForm.deviceId){
+					uni.showToast({
+						icon: "none",
+						title: "请选择故障设备"
+					})
+					return
+				}
+				if(!this.faultForm.faultType){
+					uni.showToast({
+						icon: "none",
+						title: "请选择故障类型"
+					})
+					return
+				}
+				
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API_workOrder.usCreate(this.faultForm).then((res) => {
+					uni.hideLoading();
+					uni.navigateTo({
+						url: '/pages/workOrderManagement/workOrderManagement'
+					})
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			//选择故障类型
+			stateClick(item,index) {
+				this.stateIndex = index;
+				this.faultForm.faultType = item.value;
+			},
+			// 异常查询条件
+			getFindByCatalogName() {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API_workOrder.findByCatalogName({
+					catalogName: '故障类型'
+				}).then((response) => {
+					uni.hideLoading();
+					var list = response.data.map(item => {
+						return {
+							label: item.name,
+							value: item.id
+						}
+					});
+					this.stateList = list;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			//选择设备
+			deviceConfirm(e) {
+				console.log(e)
+				this.faultForm.deviceId = e[2].value;
+				this.faultForm.deviceName = e[2].label;
+			},
+			getLoadMyDevices() {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API_workOrder.loadMyDevices().then((response) => {
+					uni.hideLoading();
+					this.deviceList = [];
+					this.deviceList = response.data.map(item => {
+						return {
+							label: item.name,
+							value: item.id
+						}
+					});
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 		}
 	}
 </script>
 
 <style lang="scss" scoped>
+	/deep/.u-select__header__title {
+		font-size: 36rpx;
+		font-weight: bold;
+	}
+	
 	.main {
 		background-color: #fff;
 
@@ -146,16 +263,20 @@
 
 			.type {
 				display: flex;
-				justify-content: space-between;
 				padding: 24rpx 32rpx;
+				align-items: center;
+				flex-wrap: wrap;
 
 				.type-item {
 					border: 1px solid rgba(216, 223, 232, 1);
 					color: rgba(16, 16, 16, 1);
-					width: 160rpx;
 					line-height: 66rpx;
 					text-align: center;
 					border-radius: 4px;
+					padding:0 16rpx;
+					line-height: 66rpx;
+					margin-right: 16rpx;
+					margin-bottom: 16rpx;
 				}
 
 				.item-checked {

+ 27 - 39
pages/workOrderManagement/workOrderDetails.vue

@@ -1,6 +1,7 @@
 <template>
 	<view>
 		<u-navbar title="工单详情" title-color="#101010"></u-navbar>
+
 		<!-- 工单详情 -->
 		<view class="main">
 			<view class="title">
@@ -94,13 +95,11 @@
 				<u-time-line>
 					<!-- 关闭原因 -->
 					<u-time-line-item nodeTop="10">
-					<template v-slot:node>
-						<view class="u-node" >
-							
-							
-						</view>
-					</template>
-					
+						<template v-slot:node>
+							<view class="u-node">
+
+							</view>
+						</template>
 						<template v-slot:content>
 							<view>
 								<view class="u-order-title"> <text class="name">我 </text>关闭了工单</view>
@@ -109,30 +108,24 @@
 							</view>
 						</template>
 					</u-time-line-item>
-					
+
 					<!-- 关闭工单 -->
 					<u-time-line-item nodeTop="10">
+						<template v-slot:node>
+							<view class="u-node">
 
-                 <template v-slot:node>
-				<view class="u-node" >
-					
-					
-				</view>
-			</template>
-
+							</view>
+						</template>
 						<template v-slot:content>
-							<view >
+							<view>
 								<view class="u-order-title">关闭工单</view>
-
 								<view class="u-order-time">2019-05-08 12:12</view>
 							</view>
 						</template>
 					</u-time-line-item>
+					
 					<!-- 完成工单 -->
 					<u-time-line-item nodeTop="10">
-
-
-
 						<template v-slot:content>
 							<view>
 								<view class="u-order-title"> <text class="name">郭群 </text>完成工单</view>
@@ -146,24 +139,19 @@
 						</template>
 					</u-time-line-item>
 
-
 					<u-time-line-item nodeTop="10">
-
-
-
 						<template v-slot:content>
 							<view>
 								<view class="u-order-title">平台指派 <text class="name">郭群 </text>处理工单</view>
-
 								<view class="u-order-time">2019-05-08 12:12</view>
 							</view>
 						</template>
 					</u-time-line-item>
+					
 					<u-time-line-item nodeTop="10">
 						<template v-slot:content>
 							<view>
 								<view class="u-order-title">触发告警 温度过高</view>
-
 								<view class="u-order-time">2019-05-08 12:12</view>
 							</view>
 						</template>
@@ -192,8 +180,7 @@
 						上传现场照片
 					</view>
 					<view class="upload-picture">
-						<u-upload max-count="4" width="144" height="144" :action="action"
-							:file-list="fileList"></u-upload>
+						<u-upload max-count="4" width="144" height="144" :action="action" :file-list="fileList"></u-upload>
 					</view>
 				</view>
 				<!-- 按钮 -->
@@ -204,12 +191,13 @@
 			</view>
 		</u-popup>
 
-
-
 	</view>
 </template>
 
 <script>
+	import * as API from '@/apis/pagejs/energy/index.js'
+	import * as API_workOrder from '@/apis/pagejs/energy/workOrder.js'
+	
 	export default {
 		data() {
 			return {
@@ -220,13 +208,12 @@
 			}
 		},
 		onLoad() {
-			this.action = process.car.BASE_URL + "uploadPicture";
+			this.action = process.car.BASE_URL + "uploadFile";
 			this.formData = {
-				subFolder: "image"
+				subFolder: "workorder"
 			}
-			
 			var token = this.carhelp.getToken();
-			this.header={
+			this.header = {
 				'Authorization': token,
 				'X-Requested-With': 'application/x-www-form-urlencoded'
 			}
@@ -381,9 +368,9 @@
 				width: 18rpx;
 				height: 18rpx;
 				border-radius: 10px;
-				background-color: rgba(22,119,255,1);
+				background-color: rgba(22, 119, 255, 1);
 			}
-			
+
 
 			/deep/.u-time-axis {
 				padding-left: 4rpx;
@@ -427,7 +414,7 @@
 				height: 18rpx;
 				border-radius: 10px;
 			}
-			
+
 
 			/deep/.u-time-axis-item::before {
 				border-left: 1px solid #cdcdcd !important;
@@ -438,7 +425,7 @@
 			}
 
 		}
-		
+
 	}
 
 	// 底部
@@ -451,7 +438,8 @@
 		right: 0;
 		background-color: #fff;
 		padding: 20rpx 32rpx;
-        z-index: 999;
+		z-index: 999;
+
 		.back {
 			width: 328rpx;
 			line-height: 80rpx;

+ 76 - 167
pages/workOrderManagement/workOrderManagement.vue

@@ -53,42 +53,44 @@
 				</view>
 			</view>
 			<!-- 工单详情 -->
+			<!-- <view class="work-order" v-for="(item,index) in workOrderList" :key="index"> -->
 			<view class="work-order">
 				<!-- 紧急 -->
-				<view class="urgency">
-					紧急
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-building-fill1.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						荆鹏集团-荆鹏软件园01
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-alert-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						温度过高
+				<view @click="gotoUrl('/pages/workOrderManagement/workOrderDetails?id=')">
+					<view class="urgency">
+						紧急
 					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-map-pin-fill.svg" mode=""></image>
+					<view class="order-item">
+						<view class="item-icon">
+							<image class="img" src="@/assets/img/riFill-building-fill1.svg" mode=""></image>
+						</view>
+						<view class="item-value value-bold">
+							荆鹏集团-荆鹏软件园01
+						</view>
 					</view>
-					<view class="item-value">
-						沙市区江津东路附155号
+					<view class="order-item">
+						<view class="item-icon">
+							<image class="img" src="@/assets/img/riFill-alert-fill.svg" mode=""></image>
+						</view>
+						<view class="item-value value-bold">
+							温度过高
+						</view>
 					</view>
-				</view>
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-time-fill.svg" mode=""></image>
+					<view class="order-item">
+						<view class="item-icon">
+							<image class="img" src="@/assets/img/riFill-map-pin-fill.svg" mode=""></image>
+						</view>
+						<view class="item-value">
+							沙市区江津东路附155号
+						</view>
 					</view>
-					<view class="item-value">
-						2024-02-04 20:00:00
+					<view class="order-item">
+						<view class="item-icon">
+							<image class="img" src="@/assets/img/riFill-time-fill.svg" mode=""></image>
+						</view>
+						<view class="item-value">
+							2024-02-04 20:00:00
+						</view>
 					</view>
 				</view>
 
@@ -96,150 +98,20 @@
 					<view class="state">
 						待指派
 					</view>
-					<view class="btn">
-						<button class="close" @click="closeShow=true">关闭</button>
-						<button class="reminder" @click="reminderShow=true">催单</button>
-					</view>
-				</view>
-			</view>
-
-			<view class="work-order">
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-building-fill1.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						荆鹏集团-荆鹏软件园01
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-alert-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						温度过高
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-map-pin-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						沙市区江津东路附155号
-					</view>
-				</view>
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-time-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						2024-02-04 20:00:00
-					</view>
-				</view>
-
-				<view class="button">
-					<view class="state state2">
+					<view class="state state2" v-if="false">
 						进行中
 					</view>
-					<view class="btn">
-
-						<button class="resolved">确认解决</button>
-					</view>
-				</view>
-			</view>
-
-			<view class="work-order">
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-building-fill1.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						荆鹏集团-荆鹏软件园01
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-alert-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						温度过高
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-map-pin-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						沙市区江津东路附155号
-					</view>
-				</view>
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-time-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						2024-02-04 20:00:00
-					</view>
-				</view>
-
-				<view class="button">
-					<view class="state state3">
+					<view class="state state3" v-if="false">
 						已解决
 					</view>
-					<view class="btn">
-
-						<button class="view">查看详情</button>
-					</view>
-				</view>
-			</view>
-
-			<view class="work-order">
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-building-fill1.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						荆鹏集团-荆鹏软件园01
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-alert-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value value-bold">
-						温度过高
-					</view>
-				</view>
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-map-pin-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						沙市区江津东路附155号
-					</view>
-				</view>
-
-				<view class="order-item">
-					<view class="item-icon">
-						<image class="img" src="@/assets/img/riFill-time-fill.svg" mode=""></image>
-					</view>
-					<view class="item-value">
-						2024-02-04 20:00:00
-					</view>
-				</view>
-
-				<view class="button">
-					<view class="state state4">
+					<view class="state state4" v-if="false">
 						已关闭
 					</view>
 					<view class="btn">
-
-						<button class="view">查看详情</button>
+						<button class="close" @click="closeShow=true">关闭</button>
+						<button class="reminder" @click="reminderShow=true">催单</button>
+						<button class="resolved" v-if="false">确认解决</button>
+						<button class="view" v-if="false">查看详情</button>
 					</view>
 				</view>
 			</view>
@@ -291,12 +163,23 @@
 
 <script>
 	import energyCenterTabbar from '@/components/energyCenterTabbar.vue'
+	import * as API_workOrder from '@/apis/pagejs/energy/workOrder.js'
+	
 	export default {
 		components: {
 			energyCenterTabbar
 		},
 		data() {
 			return {
+				workOrderList: [], //工单列表
+				recordsTotal: 0,
+				queryForm: {
+					pageIndex: 1,
+					pageSize: 5,
+					qkey: '', //关键字(工单编号/设备名/故障信息)
+					startDate: '', //开始日期	
+					endDate: '', //截止日期
+				},
 				keyword: '',
 				closeShow: false,
 				reminderShow: false,
@@ -304,7 +187,33 @@
 				current: 0
 			}
 		},
+		onLoad() {
+			// this.getQueryMy();
+		},
 		methods: {
+			getQueryMy(bl) {
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				if (bl) {
+					this.workOrderList = [];
+					this.queryForm.pageIndex = 1;
+				}
+				API_workOrder.queryMy(this.queryForm).then((res) => {
+					uni.hideLoading();
+					this.workOrderList = [
+						...this.workOrderList,
+						...res.data.data
+					];
+					this.recordsTotal = res.data.recordsTotal;
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			reasonClick(item,index) {
 				this.current = index;
 			},