index.vue 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. <template>
  2. <view class="container">
  3. <view class="title-content">
  4. <image src="../../static/emblem-icon.png" mode=""></image>
  5. <view class="text-layer">
  6. <!-- <text class="title">哈密市在建项目建设及工作</text> -->
  7. <text class="sub-title">哈密市项目管理智慧平台</text>
  8. </view>
  9. </view>
  10. <view class="form-content">
  11. <view class="form-list">
  12. <view class="form-item" @click="goToPage('/pages/mine/verify-email/index')">
  13. <view class="item-right">
  14. <image src="@/static/mine-chnage-pass.svg" mode=""></image>
  15. <text>修改密码</text>
  16. </view>
  17. <u-icon name="arrow-right" color="#343437" size="14" customStyle="margin-left:10rpx"></u-icon>
  18. </view>
  19. <view class="form-item" @click="goToPage('/pages/mine/account-manage/index')">
  20. <view class="item-right">
  21. <image src="@/static/mine-account.svg" mode=""></image>
  22. <text>账号管理</text>
  23. </view>
  24. <u-icon name="arrow-right" color="#343437" size="14" customStyle="margin-left:10rpx"></u-icon>
  25. </view>
  26. <view class="form-item">
  27. <view class="item-right">
  28. <image src="@/static/mine-verison.svg" mode=""></image>
  29. <text>当前版本</text>
  30. </view>
  31. <text>{{visionText}}</text>
  32. </view>
  33. </view>
  34. </view>
  35. </view>
  36. </template>
  37. <script setup>
  38. import {
  39. ref
  40. } from "vue"
  41. import {
  42. onLoad
  43. } from "@dcloudio/uni-app"
  44. import {
  45. getInfo
  46. } from "@/api/login.js"
  47. function goToPage(url) {
  48. uni.navigateTo({
  49. url
  50. })
  51. }
  52. let userInfo = ref(null)
  53. let visionText = ref(null)
  54. onLoad(() => {
  55. let vision = uni.getStorageSync('visionNow')
  56. visionText.value = vision ? 'V ' + vision : '获取版本失败'
  57. getInfo().then(res => {
  58. userInfo.value = res.data.user;
  59. if (userInfo.value.realName.length > 8) {
  60. let tempName = userInfo.value.realName
  61. userInfo.value.realName = tempName.substring(0, 7) + '...'
  62. }
  63. })
  64. })
  65. </script>
  66. <style lang="scss">
  67. page {
  68. height: 100%;
  69. background-color: #EAF0FA;
  70. }
  71. .container {
  72. position: relative;
  73. padding-top: 0 !important;
  74. width: 100%;
  75. height: 100%;
  76. // background: linear-gradient(108deg, #192DE8 0%, #1DA0FF 53%, #84D8FF 100%);
  77. background-color: #002F69;
  78. .title-content {
  79. display: flex;
  80. justify-content: center;
  81. align-items: center;
  82. gap: 20rpx;
  83. width: 100%;
  84. height: 318rpx;
  85. z-index: 1;
  86. // background: url('@/static/login_bg.png');
  87. background-size: 100% 100%;
  88. image {
  89. width: 144rpx;
  90. height: 144rpx;
  91. }
  92. .text-layer {
  93. display: flex;
  94. flex-direction: column;
  95. justify-content: center;
  96. align-items: flex-start;
  97. .title {
  98. font-size: 36rpx;
  99. font-weight: 700;
  100. color: #FFFFFF;
  101. }
  102. .sub-title {
  103. font-size: 40rpx;
  104. font-weight: 700;
  105. color: #FFFFFF;
  106. }
  107. }
  108. }
  109. .form-content {
  110. position: absolute;
  111. bottom: 0;
  112. left: 0;
  113. width: 100%;
  114. height: calc(100vh - var(--status-bar-height) - 318rpx - var(--window-bottom));
  115. background-color: #fff;
  116. border-radius: 40rpx 40rpx 0rpx 0rpx;
  117. .form-list {
  118. margin: auto;
  119. margin-top: 100rpx;
  120. display: flex;
  121. flex-direction: column;
  122. align-items: flex-start;
  123. justify-content: center;
  124. gap: 20rpx;
  125. width: 642rpx;
  126. .form-item {
  127. width: 100%;
  128. display: flex;
  129. justify-content: space-between;
  130. align-items: center;
  131. .item-right {
  132. display: flex;
  133. justify-content: flex-start;
  134. align-items: center;
  135. gap: 20rpx;
  136. image {
  137. width: 72rpx;
  138. height: 72rpx;
  139. }
  140. text {
  141. font-size: 32rpx;
  142. font-weight: 500;
  143. color: #222222;
  144. }
  145. }
  146. .item-left {}
  147. }
  148. }
  149. }
  150. .change-ip {
  151. margin-top: 200rpx;
  152. text-align: center;
  153. .forget-pass {
  154. color: #002F69;
  155. border-bottom: 2rpx solid #002F69;
  156. }
  157. }
  158. .download-box {
  159. display: flex;
  160. align-items: center;
  161. justify-content: center;
  162. height: 100%;
  163. .loading-box {
  164. display: flex;
  165. flex-direction: column;
  166. justify-content: space-between;
  167. width: 360rpx;
  168. height: 360rpx;
  169. padding: 20rpx;
  170. background-color: #fff;
  171. border-radius: 40rpx;
  172. }
  173. .loading-icon {
  174. flex: 4;
  175. display: flex;
  176. flex-direction: column;
  177. justify-content: center;
  178. }
  179. .loading-text {
  180. flex: 1;
  181. display: flex;
  182. align-items: flex-end;
  183. text-align: center;
  184. }
  185. .loading-progress {
  186. flex: 1;
  187. display: flex;
  188. align-items: flex-end;
  189. }
  190. }
  191. }
  192. </style>