shuishen
2025-10-11 3fc27febccd04e2fcffbd2cdd16d2daafd0b3ca3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<!-- 登录页 -->
<template>
  <view>
    <view class="login-form-wrap">
      <view class="title"> 掌控智飞</view>
      <input v-model="loginForm.username" class="u-border-bottom" placeholder="请输入用户名"/>
      <input v-model="loginForm.password" class="u-border-bottom" type="password" placeholder="请输入密码"/>
      <button class="login-btn" :style="[inputStyle]" @tap="submit">
        登录
        <text class="i-mdi-login"/>
      </button>
    </view>
  </view>
</template>
 
<script setup>
import md5 from 'js-md5'
import {loginByUsername} from '@/api/user/index.js'
import {useUserStore} from "@/store/index.js";
import {
  HOME_PATH, LOGIN_PATH, removeQueryString,
} from "@/router";
const userStore = useUserStore();
const loginForm = ref({
  username: "shuishen",
  password: "Dashabi...."
})
const inputStyle = computed(() => {
  const style = {};
  if (loginForm.value.username && loginForm.value.password) {
    style.color = "#fff";
    style.backgroundColor = uni.$u.color.warning;
  }
  return style;
});
let redirect = HOME_PATH;
 
async function submit() {
  let userInfo = {
    "tenantId": "000000",
    "deptId": "",
    "roleId": "",
    "username": loginForm.value.username,
    "password": loginForm.value.password,
    "type": "account",
    "code": "",
    "key": "",
  }
  loginByUsername(
    userInfo.tenantId,
    userInfo.deptId,
    userInfo.roleId,
    userInfo.username,
    md5(userInfo.password),
    userInfo.type,
    userInfo.key,
    userInfo.code
  ).then(res => {
    userStore.setUserInfo(res.data)
    uni.switchTab({
      url: '/'
    })
  })
}
 
onLoad((options) => {
  if (options.redirect && removeQueryString(options.redirect) !== LOGIN_PATH) {
    redirect = decodeURIComponent(options.redirect);
  }
});
</script>
 
<style lang="scss" scoped>
.login-form-wrap {
  @apply mt-80rpx mx-auto mb-0 w-600rpx;
 
  .title {
    @apply mb-100rpx text-60rpx text-left font-500;
  }
 
  input {
    @apply pb-6rpx mb-10rpx text-left;
  }
 
  .tips {
    @apply mt-8rpx mb-60rpx;
 
    color: $u-info;
  }
 
  .login-btn {
    @apply flex items-center justify-center py-12rpx px-0 text-30rpx bg-#fdf3d0 border-none;
 
    color: $u-tips-color;
 
    &::after {
      @apply border-none;
    }
  }
 
  .alternative {
    @apply flex justify-between mt-30rpx;
 
    color: $u-tips-color;
  }
}
 
.login-type-wrap {
  @apply flex justify-between pt-350rpx px-150rpx pb-150rpx;
 
  .item {
    @apply flex items-center flex-col text-28rpx;
 
    color: $u-content-color;
  }
}
 
.hint {
  @apply px-40rpx py-20rpx text-24rpx;
 
  color: $u-tips-color;
 
  .link {
    color: $u-warning;
  }
}
</style>