inReview.vue 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <!-- 注册企业进度 -->
  2. <template>
  3. <div class="my-5">
  4. <div :class="isMobile? 'mobileBox' : 'default-width'">
  5. <v-btn v-if="query?.noLogin" class="my-2" color="primary" variant="text" size="large" @click="router.push('/login')">{{ `<< 回到登录页` }}</v-btn>
  6. <v-btn v-else class="my-2" color="primary" variant="text" size="large" @click="router.push('/recruitHome')">{{ `<< 回到首页` }}</v-btn>
  7. </div>
  8. <v-card class="pa-5" :class="isMobile? 'mobileBox' : 'default-width'" :elevation="isMobile? '0' : '3'">
  9. <div style="margin: 80px auto;" :style="{width: isMobile ? '' : '600px'}">
  10. <!-- 提交企业注册以后跳转显示页面 -->
  11. <div v-if="!applyInfo || !(Object.keys(applyInfo).length)" class="d-flex flex-column align-center">
  12. <svg-icon name="submit" size="300"></svg-icon>
  13. <div>提交成功,审核时间在1~3个工作日内,申请结果会以短信方式通知到您的手机上,请注意查收。</div>
  14. <!-- <div>提交成功,审核时间在1~3个工作日内,申请结果会通过邮件的方式通知到您,请注意查看邮箱</div> -->
  15. </div>
  16. <!-- 等待审核 -->
  17. <div v-else-if="applyInfo.status === '0'">
  18. <div class="d-flex flex-column align-center">
  19. <svg-icon name="submit" size="300"></svg-icon>
  20. </div>
  21. <div>您的企业账号申请正在审核中,审核时间在1~3个工作日内,申请结果会以短信方式通知到您的手机上,请注意查收。</div>
  22. <!-- <span>您的申请正在审核中,审核时间在1~3个工作日内,申请结果会通过邮件的方式通知到您,请注意查看邮箱</span> -->
  23. <div class="mt-5">
  24. <span>提交时间:{{ applyInfo.createTime }}</span>
  25. </div>
  26. </div>
  27. <!-- 审核不通过 -->
  28. <div v-else-if="applyInfo.status === '2'">
  29. <div class="mb-3" style="color: red;">您的企业账号注册申请审核不通过,具体原因如下:{{ applyInfo.reason }}</div>
  30. <div v-if="applyInfo.remark">备注:{{ applyInfo.remark }}</div>
  31. <div class="mt-5">
  32. <span>审核时间:{{ applyInfo.updateTime }}</span>
  33. </div>
  34. <div class="mt-5">
  35. <span>提交时间:{{ applyInfo.createTime }}</span>
  36. </div>
  37. </div>
  38. <!-- 审核通过(审核通过不会进入此页面) -->
  39. <div v-else-if="applyInfo.status === '1'">
  40. <span>审核通过</span>
  41. </div>
  42. <div class="text-center" v-if="!isMobile">
  43. <v-btn class="mt-16 buttons" color="primary" to="/recruitHome">{{ $t('common.toHome') }}</v-btn>
  44. <v-btn v-if="applyInfo.status === '2'" class="mt-16 ml-12 buttons" color="primary" @click="handleConfirm">{{ $t('common.resubmit') }}</v-btn>
  45. </div>
  46. </div>
  47. </v-card>
  48. </div>
  49. </template>
  50. <script setup>
  51. defineOptions({name: 'enterprise-enterpriseRegister-inReview'})
  52. import { timesTampChange } from '@/utils/date'
  53. import { getUserRegisterEnterpriseApply } from '@/api/personal/user'
  54. import { onMounted, ref } from 'vue';
  55. import { useRouter } from 'vue-router'; const router = useRouter()
  56. const applyInfo = ref({})
  57. const query = router.currentRoute.value.query
  58. // 组件挂载后添加事件监听器
  59. const isMobile = ref(false)
  60. onMounted(() => {
  61. const userAgent = navigator.userAgent
  62. isMobile.value = /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i.test(userAgent)
  63. })
  64. // 查看用户是否有在申请中的数据
  65. const getApplyInfo = async () => {
  66. const data = query?.noLogin ? JSON.parse(localStorage.getItem('entRegisterData')) : await getUserRegisterEnterpriseApply() // 已经有数据说明已经申请过了
  67. localStorage.setItem('userApplyInfo', JSON.stringify(data))
  68. const obj = {
  69. createTime: timesTampChange(data.createTime), // 创建时间
  70. updateTime: timesTampChange(data.updateTime), // 更新时间
  71. status: data.status, // 审核状态(0审核中 1审核通过 2审核不通过)) // 审核状态
  72. reason: data.reason, // 审核原因
  73. remark: data.remark, // 备注
  74. }
  75. applyInfo.value = obj
  76. }
  77. getApplyInfo()
  78. const handleConfirm = () => {
  79. router.push(query?.noLogin ? '/register/company?type=noLoginToRegister&login=true' : '/recruit/entRegister')
  80. }
  81. </script>
  82. <style lang="scss" scoped>
  83. .mobileBox {
  84. width: 100vw;
  85. .resume-header {
  86. margin-bottom: 12px;
  87. }
  88. }
  89. </style>