From 19a01f3fe9e64b4a70bfa7331f948eb57f6739b3 Mon Sep 17 00:00:00 2001
From: chenyao <1219716595@qq.com>
Date: Tue, 13 Jan 2026 15:20:02 +0800
Subject: [PATCH] feat:更新小程序

---
 uniapps/work-wx/src/subPackages/userDetail/infos/index.vue    |   28 ++++++++-----
 uniapps/work-wx/src/subPackages/userDetail/password/index.vue |   11 ++++-
 uniapps/work-wx/src/subPackages/deviceRegistration/add.vue    |   23 ++++++++++-
 uniapps/work-wx/src/pages/user/index.vue                      |    6 ++-
 4 files changed, 50 insertions(+), 18 deletions(-)

diff --git a/uniapps/work-wx/src/pages/user/index.vue b/uniapps/work-wx/src/pages/user/index.vue
index a3dae5e..20ddaf9 100644
--- a/uniapps/work-wx/src/pages/user/index.vue
+++ b/uniapps/work-wx/src/pages/user/index.vue
@@ -5,7 +5,7 @@
 	<view class="userBox">
 	  <view class="flex items-center pb-30rpx pl-30rpx pr-20rpx">
 	    <view class="mr-20rpx">
-	      <u-avatar :src="user.avatar || defaultAvatar" size="70" />
+	      <u-avatar @click="uploadAvatar" :src="user.avatar || showDefaultHeader" size="70" />
 	    </view>
 	    <view class="flex-1">
 	      <view class="userName">{{user.nickName }}</view>
@@ -55,6 +55,7 @@
 import { getDeviceRegionApi } from "@/api/map.js";
 import defaultAvatar  from '/static/images/defaultAvatar.svg'
 import rightImage from '@/static/images/user/rightBtn.svg';
+import showDefaultHeader from "@/static/images/user/default-header.svg";
 const { setClipboardData, getClipboardData } = useClipboard();
 //
 // const rightImage = getAssetsImage("/images/user/rightBtn.svg");
@@ -99,7 +100,8 @@
   height: 100%;
 }
 .pageUser {
-  background: url("@/static/images/user/userbg.svg")  no-repeat ;
+  background: url("@/static/images/user/userbg.svg")  no-repeat;
+  background-size: 100%;
 }
 .userBox {
   padding-top: 212rpx;
diff --git a/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue b/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
index 97e8ce7..e15b689 100644
--- a/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
+++ b/uniapps/work-wx/src/subPackages/deviceRegistration/add.vue
@@ -260,12 +260,18 @@
       @confirm="onPurchaseDate"
       @cancel="showPurchaseDate = false"
     />
+    <!-- 所属区域 -->
+     <u-cascader 
+        show="show"
+        v-model="value"
+        :data="areaData"
+    ></u-cascader>
     </u-form>
 </view>
 </template>
 <script setup>
-import { aircraftInfoSaveApi,uploadFileApi } from '@/api/index'
-import { ref, computed } from 'vue'
+import { aircraftInfoSaveApi,uploadFileApi,areaDataApi } from '@/api/index'
+import { ref, computed, onMounted } from 'vue'
 import dayjs from 'dayjs'
 
 const formRef = ref(null);
@@ -445,6 +451,16 @@
         });
     });
 }
+// 获取所属单位
+const isShowRegion = ref(false)
+const areaData = ref([])
+function getAreaData() {
+    areaDataApi().then(res => {
+        if (res.data.code === 200) {
+            areaData.value = res.data.data
+        }
+    })
+}
 // 提交图片
 function afterReadImage(event) {
     // 获取上传的文件对象
@@ -526,6 +542,9 @@
         // 这里可以添加额外的失败处理逻辑
     }
 }
+onMounted(() => {
+    getAreaData()
+})
 </script>
 <style scoped lang="scss">
 .deviceRegistration {
diff --git a/uniapps/work-wx/src/subPackages/userDetail/infos/index.vue b/uniapps/work-wx/src/subPackages/userDetail/infos/index.vue
index 4bf1b95..2c407b9 100644
--- a/uniapps/work-wx/src/subPackages/userDetail/infos/index.vue
+++ b/uniapps/work-wx/src/subPackages/userDetail/infos/index.vue
@@ -1,22 +1,23 @@
+<!-- 个人资料 -->
 <template>
 	<view class="container">
 		<view class="pageBg"></view>
 		<div class="avatarBox">
-			<u-avatar @click="uploadAvatar" :src="userInfo.avatar" size="114" mode="aspectFill" />
+			<u-avatar @click="uploadAvatar" :src="userInfo.avatar || showDefaultHeader" size="114" mode="aspectFill" />
 		</div>
 		<view class="detailBox">
 			<div class="detailCon">
 				<div class="orderRow">
 					<div class="rowTitle">姓名</div>
-					<div>{{userInfo.realName}}</div>
+					<div>{{userInfo.nickName}}</div>
 				</div>
 				<!-- <div class="orderRow">
 					<div class="rowTitle">所属单位</div>
 					<div>{{userInfo.deptName}}</div>
 				</div> -->
 				<div class="orderRow">
-					<div class="rowTitle">是否认证</div>
-					<div>{{userInfo.isAuth ? '已认证' : '未认证'}}</div>
+					<div class="rowTitle">认证状态</div>
+					<div>{{userInfo.status === 1 ? '已认证' : '未认证'}}</div>
 				</div>
 				<div class="orderRow">
 					<div class="rowTitle">手机号</div>
@@ -40,6 +41,7 @@
 </template>
 
 <script setup>
+	import showDefaultHeader from "@/static/images/user/default-header.svg";
 	import {
 		getEnvObj,
 		getWebViewUrl
@@ -55,7 +57,7 @@
 	const userInfo = ref({
 		id: '',
 		avatar: '',
-		realName: '',
+		nickName: '',
 		name: '',
 		phone: '',
 		email: '',
@@ -95,14 +97,15 @@
 	const getUserInfoData = () => {
 		getUserInfo().then(res => {
 			const user = res.data.data;
+			console.log('user',user)
 			userInfo.value = {
-				id: user.id,
+				id: user.userId,
 				avatar: user.avatar,
-				name: user.name,
-				realName: user.realName,
-				phone: user.phone,
-				email: user.email,
-				deptName: user.deptName,
+				nickName: user.nickName,
+				// realName: user.realName,
+				phone: user.phonenumber,
+				email: user.sysDept.email,
+				deptName: user.sysDept.deptName,
 			};
 
 		});
@@ -250,6 +253,7 @@
 		width: 100%;
 		height: 100%;
 		background: url("@/static/images/user/userbg.svg")  no-repeat ;
+		background-size: 100%;
 	}
 	.avatarBox {
 		width: 228rpx;
@@ -323,6 +327,8 @@
 		height: 100rpx !important;
 	}
 	.note {
+		position: absolute;
+		bottom: 400rpx;
 		font-family: Source Han Sans CN, Source Han Sans CN;
 		font-weight: 400;
 		font-size: 10px;
diff --git a/uniapps/work-wx/src/subPackages/userDetail/password/index.vue b/uniapps/work-wx/src/subPackages/userDetail/password/index.vue
index 7a7212b..875d361 100644
--- a/uniapps/work-wx/src/subPackages/userDetail/password/index.vue
+++ b/uniapps/work-wx/src/subPackages/userDetail/password/index.vue
@@ -10,17 +10,17 @@
 				</div>
 				<div class="orderRow">
 					<div class="rowTitle">密码</div>
-					<input type="password" v-model="passwordForm.password" placeholder="请输入" class="input-item" />
+					<input type="password" v-model="passwordForm.password" placeholder="请输入新密码" class="input-item" />
 
 				</div>
 				<div class="orderRow">
 					<div class="rowTitle">确认密码</div>
-					<input type="password" v-model="passwordForm.password2" placeholder="请输入" class="input-item" />
+					<input type="password" v-model="passwordForm.password2" placeholder="请输入确认密码" class="input-item" />
 				</div>
 				<div class="orderRow">
 					<div class="rowTitle">验证码</div>
 					<input type="text" v-model="passwordForm.code" placeholder="请输入验证码" class="input-item" />
-					<u-button :disabled="countDown > 0" @click="sendVerificationCode" type="primary" color="#007AFF">
+					<u-button class="getCode" :disabled="countDown > 0" @click="sendVerificationCode" type="primary" color="#007AFF">
 						{{ countDown > 0 ? `${countDown}s后重发` : '获取验证码' }}
 					</u-button>
 				</div>
@@ -262,6 +262,7 @@
 		width: 100%;
 		height: 100%;
 		background: url("@/static/images/user/userbg.svg")  no-repeat ;
+		background-size: 100%;
 	}
 
 	.detailBox {
@@ -363,4 +364,8 @@
 		width: 276rpx !important;
 		height: 100rpx !important;
 	}
+	.getCode {
+		margin-left: 20rpx;
+            width: 180rpx;
+        }
 </style>

--
Gitblit v1.9.3