From 659d09ec24dab6c451220c8f3bb3943b0fdb3ba1 Mon Sep 17 00:00:00 2001
From: quanyawei <401863037@qq.com>
Date: Mon, 08 Jan 2024 16:16:12 +0800
Subject: [PATCH] fix:地图导航

---
 pages/actionChange/components/basicInfor.vue |  364 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 202 insertions(+), 162 deletions(-)

diff --git a/pages/actionChange/components/basicInfor.vue b/pages/actionChange/components/basicInfor.vue
index f7e26bb..87811da 100644
--- a/pages/actionChange/components/basicInfor.vue
+++ b/pages/actionChange/components/basicInfor.vue
@@ -4,7 +4,15 @@
 		<view class="workOrderDetail">
 			<view class="headerCont">
 				<p class="title">������������</p>
-				<p>���������{{ basicInfor.allocationNum }}</p>
+				<view style="display: flex;align-items: center;">
+					<p style="display: inline-block;padding-right: 10px;">���������{{ basicInfor.allocationNum }}</p>
+					<p class="sharebut">
+						<button open-type="share" class="shareAn">
+						</button>
+						<u-icon name="share-square" label='������' labelPos="bottom" bold size='18' color="#efb287"
+							labelColor="#efb287"></u-icon>
+					</p>
+				</view>
 			</view>
 			<u-line color="#bbb" />
 			<view>
@@ -12,9 +20,25 @@
 					<p class="rowTip">
 						<view class="rowTipContenet">
 							<view class="wholeLine">
+								<text class="rowTipContenetLabel">������������:</text>
+								<text class="rowTipContenetAll">
+									{{ basicInfor.escalationTime ||'' }}
+								</text>
+							</view>
+						</view>
+						<view class="rowTipContenet">
+							<view class="wholeLine">
+								<text class="rowTipContenetLabel">���������:</text>
+								<text class="rowTipContenetAll">{{ basicInfor.escalationName ||'' }}</text>
+							</view>
+						</view>
+					</p>
+					<p class="rowTip">
+						<view class="rowTipContenet">
+							<view class="wholeLine">
 								<text class="rowTipContenetLabel">������������:</text>
 								<text class="rowTipContenetAll">
-									{{ unitName }}
+									{{ basicInfor.unitName }}
 								</text>
 							</view>
 						</view>
@@ -22,7 +46,7 @@
 							<view class="wholeLine">
 								<text class="rowTipContenetLabel">������������:</text>
 								<text class="rowTipContenetAll">
-									{{ polluteType }}
+									{{ basicInfor.polluteTypeName }}
 								</text>
 							</view>
 						</view>
@@ -41,7 +65,8 @@
 							<view class="wholeLine">
 								<text class="rowTipContenetLabel">������������:</text>
 								<text class="rowTipContenetAll">
-									{{ dictObj.changeEnum[basicInfor.changeType] ||'' }}
+									<text>{{ dictObj.changeEnum[basicInfor.changeType]||'' }}</text>
+									<!-- <text>{{ basicInfor.residueDay||'' }}</text> -->
 								</text>
 							</view>
 						</view>
@@ -51,184 +76,199 @@
 							<view class="wholeLine">
 								<text class="rowTipContenetLabel">������������:</text>
 								<text class="rowTipContenetAll">
-									{{ escalationUnitName }}
+									{{ basicInfor.escalationUnitName }}
 								</text>
 							</view>
-						</view>
-						<view class="rowTipContenet">
-							<view class="wholeLine">
-								<text class="rowTipContenetLabel">���������:</text>
-								<text class="rowTipContenetAll">{{ basicInfor.escalationName ||'' }}</text>
-							</view>
-						</view>
-					</p>
-					<p class="rowTip">
-						<view class="wholeLine">
-							<text class="rowTipContenetLabel">������������:</text>
-							<text class="rowTipContenetAll">{{ basicInfor.escalationTime ||'' }}</text>
 						</view>
 					</p>
 					<p class="rowTip">
 						<view class="wholeLine">
 							<text class="rowTipContenetLabel">������������:</text>
 							<text class="rowTipContenetAll">{{ basicInfor.pollutePosition ||'' }}</text>
+							<u-icon name="map" color="#2979ff" size="28" @tap="toNavigation()"
+								v-if="basicInfor.longitude !==null"></u-icon>
 						</view>
 					</p>
 					<p class="rowTip">
-						<view class="wholeLine">
-							<text class="rowTipContenetLabel">������������:</text>
-							<text v-if="fileList.length>0" class="rowTipContenetAll">
-								<cl-upload
-									v-model="fileList"
-									:action="`''`"
-									:add="false"
-									cloud-type="other"
-									:remove="false"
-								/>
-							</text>
+						<view class="rowTipContenet" style="width: 100%;">
+							<view class="wholeLine">
+								<text class="rowTipContenetLabel">������������:</text>
+								<text class="rowTipContenetAll">
+									<text>{{ dictObj.emphasisEnum[basicInfor.keyPoint]||'' }}</text>
+								</text>
+							</view>
 						</view>
 					</p>
+					<view class="formItemContent">
+						<u--form labelPosition="left" label-width="75" :border-bottom="false" ref="uForm">
+							<u-form-item border-bottom label="������������:" :border-bottom="false">
+								<view class="fileBox">
+									<cl-upload v-if="fileList.length>0" v-model="fileList" :add="false" :action="`''`"
+										cloud-type="other" :remove="false" />
+								</view>
+							</u-form-item>
+						</u--form>
+					</view>
 				</view>
 			</view>
 		</view>
 	</view>
 </template>
 <script>
-export default {
-	props: {
-	 basicInfor: {
-	  type: Object,
-	  default: ()=> {}
-		},
-	},
-	data() {
-		return {
-			polluteList: this.$storage.getJson('polluteList'),
-			unitList: this.$storage.getJson('unitList'),
-			dictObj: this.$storage.getJson('dictObj'),
-			fileList: [],
-			baseUrl: this.$storage.get('baseUrl'),
-		}
-	},
-	computed: {
-		unitName(){
-			let data ={}
-			if(this.basicInfor.unitId){
-				data=this.unitList&& this.unitList.find(
-					(a)=> parseInt(a.unitId) === this.basicInfor.unitId
-				)
-				console.log('nnnnnn', this.unitList)
-				console.log('nnnnnn', this.basicInfor.unitId)
-
-			}
-			return data.unitName || ''
-		},
-		escalationUnitName(){
-			let data ={}
-			if(this.basicInfor.unitId){
-				data=this.unitList&& this.unitList.find(
-					(a)=> parseInt(a.unitId) === this.basicInfor.escalationUnitId
-				)
-				console.log('nnnnnn', this.unitList)
-				console.log('nnnnnn', this.basicInfor.unitId)
-
-			}
-			return data.unitName || ''
-
-		},
-		polluteType(){
-			let data ={}
-			if(this.basicInfor.polluteType){
-				data=this.polluteList.find(
-					(a)=> parseInt(a.dataKey) === this.basicInfor.polluteType
-				)
-			}
-			return data.dataValue ||''
-		}
-	},
-	watch: {
-		basicInfor: {
-			handler: function(newValue, oldValue) {
-				// ������������������
-				this.basicInfor=newValue
+	export default {
+		props: {
+			basicInfor: {
+				type: Object,
+				default: () => {}
 			},
-			deep: true
-		}
-	},
-	onLoad: function (option) {
-		//option���object������������������������������������������������
-		console.log(option) //���������������������������������������
-	},
-	mounted() {
-		if(this.basicInfor.fileBaseList&&this.basicInfor.fileBaseList.length>0){
-			this.basicInfor.fileBaseList.forEach(item=> {
-				this.baseUrl='http://120.26.43.34:8081/api/'
-				let name = item.fileType === 1 ? 'name.png' : ''
-				this.fileList.push(`${this.baseUrl}/file/preview/${item.fileId}?${name}`) // ������
-				this.fileList.push('http://120.26.43.34:8081/api//file/preview/145?name.png') // ������
-			})
-			console.log('this.fileList', this.basicInfor.fileBaseList)
-			console.log('this.fileList', this.fileList)
-		}
-
-	},
-	methods: {},
-}
+		},
+		data() {
+			return {
+				polluteList: [],
+				unitList: [],
+				dictObj: JSON.parse(uni.getStorageSync('dictObj') || '[]'),
+				fileList: [],
+				baseUrl: this.$storage.get('baseUrl'),
+			}
+		},
+		computed: {},
+		watch: {
+			basicInfor: {
+				handler: function(newValue, oldValue) {
+					// ������������������
+					this.basicInfor = newValue
+				},
+				deep: true
+			}
+		},
+		onLoad: function(option) {
+			//option���object������������������������������������������������
+			console.log(option) //���������������������������������������
+		},
+		created() {
+			this.getUnitList()
+		},
+		mounted() {
+			// ������������������list
+			console.log('this.basicInfor.fileBaseList', this.basicInfor.fileBaseList)
+			if (this.basicInfor.fileBaseList && this.basicInfor.fileBaseList.length > 0) {
+				this.basicInfor.fileBaseList.forEach(item => {
+					let name = item.fileType === 1 ? 'name.png' : ''
+					this.fileList.push(`${this.baseUrl}/file/preview/${item.fileId}?${name}`) // ������
+				})
+				console.log('this.basicInfor.fileList', this.basicInfor.fileBaseList)
+				console.log('this.fileList', this.fileList)
+			}
+		},
+		methods: {
+			//������--������������������������
+			toNavigation: function() {
+				//������������������������������������
+				uni.openLocation({
+					longitude: parseFloat(this.basicInfor.longitude), // ������������������-180~180���������������������
+					latitude: parseFloat(this.basicInfor.latitude), // ������������������-90~90���������������������
+					scale: 28, // ������������
+					name: this.basicInfor.name, //������������
+					address: this.basicInfor.address, //������������������
+					success: function(res) {
+						console.log('success:', res)
+					}
+				})
+			},
+			getUnitList() {
+				this.$http.httpGet('/allocation/unit').then(res => {
+					this.unitList = res.data
+					this.getContaminateList()
+				})
+			},
+			getContaminateList() {
+				this.$http.httpGet('/allocation/contaminate').then(res => {
+					this.polluteList = res.data
+				})
+			},
+		},
+	}
 </script>
-
 <style scoped lang="scss">
-/deep/.u-line {
-  margin: 19.23rpx 0px !important;
-}
-.workOrderDetail {
-  border: 1px solid #bbb;
-  border-radius: 5px;
-  min-height: 288.46rpx;
-  margin: 19.23rpx;
-  padding: 19.23rpx;
-  color: #101010;
-  font-weight: 700;
-  font-size: 26.92rpx;
-  .headerCont {
-    display: flex;
-    justify-content: space-between;
-    font-size: 15px;
-  }
-  .mainContent {
-    margin-bottom: 10px;
-    font-weight: 500;
-    .rowTip {
-      display: flex;
-      padding: 8px 0;
-      border-bottom: 1px dashed #bbb;
-      .wholeLine {
-        display: flex;
-		width: 100%;
-        align-items: center;
-        .rowTipContenetLabel {
-          min-width: 125rpx;
-        }
-		.rowTipContenetAll{
-			width: calc(100% - 125rpx);
-		}
-      }
+	/deep/.u-line {
+		margin: 19.23rpx 0px !important;
+	}
 
-      .rowTipContenet {
-        width: 50%;
-        text-align: left;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        white-space: nowrap;
-        .butsName {
-          display: inline-block;
-          margin-left: 19.23rpx;
-          color: #1990ff;
-        }
-      }
-    }
-    .rowTipContenet_right {
-      text-align: right !important;
-    }
-  }
-}
-</style>
+	.workOrderDetail {
+		border: 1px solid #bbb;
+		border-radius: 5px;
+		min-height: 288.46rpx;
+		margin: 19.23rpx;
+		padding: 19.23rpx;
+		color: #101010;
+		font-weight: 700;
+		font-size: 30.77rpx;
+
+		.headerCont {
+			display: flex;
+			justify-content: space-between;
+			font-size: 30.77rpx;
+			align-items: center;
+		}
+
+		.mainContent {
+			margin-bottom: 10px;
+			font-weight: 500;
+
+			.rowTip {
+				display: flex;
+				padding: 5px 0;
+				border-bottom: 1px dashed #bbb;
+
+				.wholeLine {
+					display: flex;
+					width: 100%;
+					align-items: center;
+
+					.rowTipContenetLabel {
+						min-width: 144.23rpx;
+						font-size: 28.85rpx;
+						text-align: left;
+					}
+
+					.rowTipContenetAll {
+						font-size: 28.85rpx;
+						width: calc(100% - 144.23rpx);
+					}
+				}
+
+				.rowTipContenet {
+					width: 50%;
+					text-align: left;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+
+					.butsName {
+						display: inline-block;
+						margin-left: 19.23rpx;
+						color: #1990ff;
+					}
+				}
+			}
+
+			.rowTipContenet_right {
+				text-align: right !important;
+			}
+		}
+	}
+
+	.sharebut {
+		position: relative;
+		display: inline-block;
+
+		.shareAn {
+			position: absolute;
+			height: 36px;
+			width: 30px;
+			padding: 0;
+			opacity: 0;
+			z-index: 100;
+		}
+	}
+</style>
\ No newline at end of file

--
Gitblit v1.8.0