enterprise.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270
  1. <template>
  2. <div class="div" @click="onshezhi">
  3. <div id="navigation" class="navbar-inverse navbar-fixed-top animated-header">
  4. <div class="container">
  5. <div class="navbar-header">
  6. <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
  7. <span class="sr-only">Toggle navigation</span>
  8. <span class="icon-bar"></span>
  9. <span class="icon-bar"></span>
  10. <span class="icon-bar"></span>
  11. </button>
  12. <h1 class="navbar-brand">
  13. <a href="#">
  14. <img class="logo-img" src="/static/img/assets/dalogo@2x_1.png" alt="">
  15. </a>
  16. </h1>
  17. </div>
  18. <div class="collapse navbar-collapse navbar-right" role="navigation">
  19. <ul id="nav" class="nav navbar-nav menu">
  20. <li><router-link to="/home"><a href="#"><span style="color: white">首页</span></a></router-link></li>
  21. <li><a href="https://uas.usoftchina.com/about" target="_blank"><span>关于我们</span></a></li>
  22. <li style="margin-left:30px;margin-top: 13px;cursor: pointer;">
  23. <span style="color:#fff;font-size: 16px;">
  24. <img style="width: 20px;" src="/static/img/assets/denglu3x.png" alt="">
  25. {{mytoken.realname || mytoken.username}}
  26. </span>
  27. <span style="color:#fff;" @click="loginout">【退出】</span>
  28. </li>
  29. </ul>
  30. </div>
  31. </div>
  32. </div>
  33. <iframe hidden :src="setTokenPage"></iframe>
  34. <div class="gs-worp">
  35. <!-- 顶部tab -->
  36. <div class="gs-tab">
  37. <ul>
  38. <li class="xs" v-for="(btn , index) in tab" :key='index' :class= "{gsactive:nowindex == index}" @click= "tabswitch(index)">{{btn.name}}</li>
  39. </ul>
  40. </div>
  41. <div class="gs-none">
  42. <div :class= "{gsqiye:nowindex == 0}">
  43. <!-- 企业列表展示-------添加企业-------------企业详细信息展示 ---------------------------- -->
  44. <router-view></router-view>
  45. </div>
  46. <!-- 个人信息------------------------------------------------------------------- -->
  47. <div :class= "{gsqiye:nowindex == 1}">
  48. <div v-if="ismodifyname" class="over gr-worp" style="margin-bottom: 30px;">
  49. <div class="left gr-left">
  50. <img src="/static/img/qiye/yonghu@2x.png" alt="">
  51. </div>
  52. <div class="left gr-right">
  53. <ul>
  54. <li>
  55. <span>姓名</span>
  56. <span>{{mytoken.realname}}</span>
  57. <button class="modifyname dianji" @click="modify">修改</button>
  58. </li>
  59. <li>
  60. <span>UU号</span><span>{{mytoken.uu}}</span>
  61. </li>
  62. <li>
  63. <span>邮箱</span><span>{{mytoken.email}}</span>
  64. </li>
  65. <li>
  66. <span>手机号</span><span>{{mytoken.mobile}}</span>
  67. </li>
  68. </ul>
  69. </div>
  70. </div>
  71. <!-- 修改页面 -->
  72. <div v-else class="over gr-worp" style="margin-bottom: 30px;">
  73. <div class="left gr-left">
  74. <img src="/static/img/qiye/yonghu@2x.png" alt="">
  75. </div>
  76. <div class="left gr-right" style="margin-bottom: 30px;">
  77. <ul>
  78. <li>
  79. <span><span class="xinghao" style="width:5px">*</span>姓名</span>
  80. <input @change="regname" class="realname" type="text" ref="realname" :value="mytoken.realname">
  81. <p class="usname" ref="usname"></p>
  82. </li>
  83. <li>
  84. <span>UU号</span><span>{{mytoken.uu}}</span>
  85. </li>
  86. <li>
  87. <span>邮箱</span><span>{{mytoken.email}}</span>
  88. </li>
  89. <li>
  90. <span>手机号</span><span>{{mytoken.mobile}}</span>
  91. </li>
  92. <li>
  93. <button class="baocun dianji" @click="Preservation">保存</button>
  94. <button class="qy-quxiao quxiao" @click="cancel">取消</button>
  95. </li>
  96. </ul>
  97. </div>
  98. </div>
  99. </div>
  100. <!-- 安全信息----------------------------------------------------------------------------- -->
  101. <div :class="{gsqiye:nowindex == 2}">
  102. <div class="gs-anquanxinxi">
  103. <div class="over aq-title"><span class="left">登录密码</span><button @click="changpasd" class="right dianji">更换密码</button></div>
  104. <div class="aq-text">
  105. <p>安全性高的密码可以使账号更安全,建议您定期更换密码,并且设置一个包含数字和字母,长度超过8位以上的密码。
  106. </p>
  107. </div>
  108. </div>
  109. <div class="gs-anquanxinxi">
  110. <div class="over aq-title"><span class="left">手机验证</span><button @click="changphone" class="right dianji">修改手机号</button></div>
  111. <div class="aq-text">
  112. <p>您绑定的手机:{{mobile}}。若已丢失或停用,请立即更换,避免账户被盗。
  113. </p>
  114. </div>
  115. </div>
  116. </div>
  117. <!-- 消息 ------------------------------------------------------------------>
  118. <div :class="{gsqiye:nowindex == 3}">
  119. 我是消息页面
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. </template>
  125. <script>
  126. import Session from '@/utils/session'
  127. import { setTimeout } from 'timers';
  128. export default {
  129. data(){
  130. return{
  131. nowindex: 0,//tab切换
  132. tianjiaqiye: true,//添加企业切换
  133. mytoken: JSON.parse(localStorage.getItem('app-state-session')).account,//本地储存的用户信息
  134. mobile: null,
  135. ismodifyname:true,
  136. isname:true,//姓名验证
  137. reg: new RegExp(/[\@\#\$\%\&\*!\¥]/),//非法字符
  138. tab: [
  139. {name: '企业信息'},
  140. {name: '个人信息'},
  141. {name: '安全设置'},
  142. // {name: '消息'},
  143. ],
  144. }
  145. },
  146. mounted(){
  147. let mob = this.mytoken.mobile.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2');
  148. this.mobile = mob
  149. },
  150. computed :{
  151. setTokenPage() {
  152. return this.$url.web + '/set-token.html'
  153. },
  154. },
  155. methods: {
  156. // tab切换
  157. tabswitch(index){
  158. this.nowindex = index;
  159. },
  160. //退出
  161. loginout(){
  162. const frame = window.frames[window.frames.length - 1]
  163. frame.postMessage('', '*')
  164. Session.remove()
  165. window.location.href=this.$url.sso+'/logquit?appId=sp&returnURL='+window.location.origin
  166. // this.$router.puth({path:'/home'})
  167. },
  168. //修改密码
  169. changpasd(){
  170. window.location.href = this.$url.sso+'/reset/forgetPasswordValidationAccount?returnURL='+this.$url.web+'&appId=sp'
  171. },
  172. //修改手机号
  173. changphone(){
  174. window.location.href = this.$url.sso+'/validation/phoneValidation?returnURL='+this.$url.web+'&appId=sp'
  175. },
  176. //修改姓名
  177. modify(){
  178. this.ismodifyname = false
  179. },
  180. //取消修改姓名
  181. cancel(){
  182. this.ismodifyname = true
  183. },
  184. regname(){
  185. let name = this.$refs.realname.value.replace(/\s+/g, "");
  186. if (name == '') {
  187. this.$refs.usname.innerHTML = '个人姓名不能为空'
  188. this.isname = false
  189. } else {
  190. this.isname = true
  191. if (this.reg.test(name)) {
  192. this.$refs.usname.innerHTML = '不能包含非法字符'
  193. this.isname = false
  194. } else {
  195. this.$refs.usname.innerHTML = ''
  196. this.isname = true
  197. }
  198. }
  199. },
  200. // 保存修改姓名
  201. Preservation(){
  202. if (this.isname) {
  203. let name = this.$refs.realname.value.replace(/\s+/g, "");
  204. console.log(name)
  205. }
  206. },
  207. onshezhi(){
  208. this.$store.state.ismoren = '';
  209. this.$store.state.issaasxiangxi = ''
  210. },
  211. },
  212. }
  213. </script>
  214. <style scoped>
  215. .div {
  216. padding-top: 100px;
  217. background: #FDFDFD;
  218. }
  219. .gsqiye div:last-child {
  220. margin-bottom: 100px;
  221. }
  222. .modifyname {
  223. margin-left: 80px;
  224. font-family: PingFangSC-Regular;
  225. font-size: 14px;
  226. color: #FFFFFF;
  227. letter-spacing: 0.25px;
  228. text-align: center;
  229. padding: 5px 20px;
  230. background: #1E88F5;
  231. border-radius: 2px;
  232. border: 0
  233. }
  234. .baocun {
  235. font-family: PingFangSC-Regular;
  236. font-size: 14px;
  237. color: #FFFFFF;
  238. letter-spacing: 0.25px;
  239. text-align: center;
  240. padding: 5px 26px;
  241. background: #1E88F5;
  242. border-radius: 2px;
  243. border: 0
  244. }
  245. .quxiao {
  246. padding: 5px 26px;
  247. margin-left: 30px
  248. }
  249. .realname {
  250. margin-left: -5px;
  251. padding-left: 5px;
  252. }
  253. .usname {
  254. height: 0px;
  255. margin-left: 85px;
  256. color: red;
  257. font-size: 12px;
  258. }
  259. .xinghao {
  260. float: left;
  261. margin-left: -10px;
  262. color: red;
  263. }
  264. </style>