From 6c16a58b5b7f38ce9e370eab160b516c058da6e2 Mon Sep 17 00:00:00 2001
From: baoshiwei <baoshiwei@shlanbao.cn>
Date: 星期五, 20 六月 2025 14:19:49 +0800
Subject: [PATCH] feat(eims): 优化点检记录和点检汇总查询
---
eims-ui-mobile/src/pages/login/index.vue | 101 ++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 81 insertions(+), 20 deletions(-)
diff --git a/eims-ui-mobile/src/pages/login/index.vue b/eims-ui-mobile/src/pages/login/index.vue
index f26a05d..5c56190 100644
--- a/eims-ui-mobile/src/pages/login/index.vue
+++ b/eims-ui-mobile/src/pages/login/index.vue
@@ -13,7 +13,7 @@
<wd-cell-group border>
<wd-input
label="鐢ㄦ埛鍚�"
- label-width="100px"
+ label-width="200rpx"
prop="username"
clearable
v-model="model.username"
@@ -22,7 +22,7 @@
/>
<wd-input
label="瀵嗙爜"
- label-width="100px"
+ label-width="200rpx"
prop="password"
show-password
clearable
@@ -31,28 +31,46 @@
:rules="[{ required: true, message: '璇峰~鍐欏瘑鐮�' }]"
/>
</wd-cell-group>
- <view class="footer mt-6">
- <wd-button type="primary" size="large" @click="handleSubmit" block>鎻愪氦</wd-button>
+ <view class="footer">
+ <view>
+ <wd-checkbox v-model="rember" @change="handleChange">
+ <text class="rember-text">璁颁綇瀵嗙爜</text>
+ </wd-checkbox>
+ </view>
+ <wd-button class="mt-6" type="primary" size="large" @click="handleSubmit" block>
+ 鎻愪氦
+ </wd-button>
+
+ <view class="copyright-info">
+ <text>涓婃捣鍏板疂浼犳劅绉戞妧鑲′唤鏈夐檺鍏徃</text>
+ </view>
</view>
</wd-form>
</template>
<script setup lang="ts">
import { currRoute } from '@/utils'
-import { useUserStore, useAccessStore } from '@/store'
+import { useUserStore, useAccessStore, useSystemConfigStore } from '@/store'
import { useToast } from 'wot-design-uni'
-import { login } from '@/service/login'
+import { login, getUserInfo } from '@/service/login'
+import type { UserInfo } from '@/service/login.d'
+import { tabbarStore } from '@/components/fg-tabbar/tabbar'
const userStore = useUserStore()
const accessStore = useAccessStore()
-const { success: showSuccess } = useToast()
+const configStore = useSystemConfigStore()
const model = reactive<{
username: string
password: string
}>({
- username: 'admin',
- password: 'admin123',
+ username: '',
+ password: '',
})
+const rember = ref<boolean>(false)
+
+function handleChange({ value }) {
+ console.log(value)
+}
const form = ref()
function handleSubmit() {
@@ -67,25 +85,68 @@
console.log(error, 'error')
})
}
+
+onLoad(() => {
+ const { remberPassword, username, password } = configStore.systemConfigInfo
+ if (remberPassword) {
+ rember.value = true
+ model.username = username
+ model.password = password
+ }
+})
+
const toLogin = async () => {
+ // 璁颁綇瀵嗙爜
+ if (rember.value) {
+ configStore.setConfigInfo({ ...model, ...{ remberPassword: true } })
+ }
+
const res = await login(model)
- console.error(res)
accessStore.setAccessInfo(res as any)
- console.error(accessStore.accessInfo.access_token)
- // userStore.setUserInfo({ nickname: '鑿查附', avatar: '', token: 'abcdef' })
+ const backUserInfo: any = await getUserInfo()
+ /**
+ * 鐧诲綍瓒呮椂鐨勬儏鍐�
+ */
+ if (!backUserInfo) {
+ throw new Error('鑾峰彇鐢ㄦ埛淇℃伅澶辫触.')
+ }
+ const { permissions = [], roles = [], user } = backUserInfo
+ /**
+ * 浠庡悗鍙皍ser -> vben user杞崲
+ */
+ const userInfo: UserInfo = {
+ avatar: user.avatar ?? '',
+ permissions,
+ realName: user.nickName,
+ roles,
+ userId: user.userId,
+ deptId: user.deptId,
+ username: user.userName,
+ }
+ userStore.setUserInfo(userInfo)
const { query } = currRoute()
- console.error(query.redirect)
- uni.switchTab({ url: query.redirect })
+ uni.switchTab({ url: '/pages/home/index' })
+ tabbarStore?.setCurIdx(0)
+ tabbarStore?.setLastIdx(0)
}
-
-
-
-
-
</script>
<style scoped lang="scss">
.footer {
- padding: 12px;
+ padding: 24rpx;
+}
+.rember-text {
+ font-size: 24rpx;
+ color: $uni-text-color-grey;
+}
+
+.copyright-info {
+ position: absolute;
+ bottom: 20rpx;
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ color: $uni-text-color-disable;
+ font-size: 24rpx;
}
</style>
--
Gitblit v1.9.3