Просмотр исходного кода

Merge branch 'dev' of https://git.citupro.com/zhengnaiwen_citu/menduner into dev

zhengnaiwen_citu 6 месяцев назад
Родитель
Сommit
001819c043

+ 8 - 0
src/api/integral.js

@@ -35,4 +35,12 @@ export const getTaskList = async (params) => {
     url: '/admin-api/menduner/reward/event-track/get/mark/task',
     params
   })
+}
+
+// 二维码拉新记录
+export const getInviteRecord = async (params) => {
+  return await request.get({
+    url: '/app-api/menduner/system/person/get/invite/person/page',
+    params
+  })
 }

+ 7 - 0
src/api/recruit/enterprise/information/index.js

@@ -13,4 +13,11 @@ export const saveEnterpriseAuth = async (data) => {
     url: '/app-api/menduner/system/recruit/enterprise/auth/save',
     data
   })
+}
+
+// 检查密码是否需要修改
+export const getEntUpdatePasswordCheck = async () => {
+  return await request.get({
+    url: '/app-api/menduner/system/recruit/user/check/password'
+  })
 }

+ 6 - 0
src/layout/company/side.vue

@@ -51,6 +51,7 @@ const list = computed(() => {
   return getList(enterpriseRoute)
 })
 
+const info = localStorage.getItem('entBaseInfo') ? JSON.parse(localStorage.getItem('entBaseInfo')) : {}
 const getList = (arr, obj = []) => {
   // 是否为企业管理员
   const isAdmin = localStorage.getItem('isAdmin')
@@ -69,6 +70,9 @@ const getList = (arr, obj = []) => {
     if (element?.meta?.isAdmin) {
       data.isAdmin = true
     }
+    if (element?.meta?.isPersonMap) {
+      data.isPersonMap = true
+    }
     if (element?.children) {
       getList(element.children, data.children)
     }
@@ -80,6 +84,8 @@ const getList = (arr, obj = []) => {
       e.children = e.children.filter(val => !val.isAdmin)
     })
   }
+  // 人才地图是否可看
+  if (info && Object.keys(info).length && !info?.entitlement?.personMap) obj = obj.filter(e => !e.isPersonMap)
   return obj
 }
 

+ 12 - 4
src/layout/personal/footer.vue

@@ -17,12 +17,20 @@
           <div class="size mt-2">企业微信</div>
         </div>
       </div>
-      <div class="center">
+      <div class="center ml-15">
         <h4>使用与帮助</h4>
         <div class="mt-4 size">
-          <a href="/userAgreement">用户协议</a>
-          <a class="my-2" href="/privacyPolicy">隐私协议</a>
-          <a>使用与帮助</a>
+          <div class="d-flex my-2">
+            <a href="/userAgreement" style="width: 140px;">用户协议</a>
+            <a href="/UserBehaviorNorms">行为规范</a>
+          </div>
+          <div class="d-flex my-2">
+            <a href="/CopyrightPolicy" style="width: 140px;">版权政策</a>
+            <a href="/privacyPolicy">隐私协议</a>
+          </div>
+          <div class="d-flex my-2">
+            <a href="/WorkplaceCommunityPolicy" style="width: 140px;">职场社区政策</a>
+          </div>
         </div>
       </div>
       <div class="right size d-flex">

+ 6 - 1
src/permission.js

@@ -5,6 +5,7 @@ import { getToken, getIsEnterprise } from '@/utils/auth'
 import { useDictStore } from '@/store/dict'
 import { useUserStore } from '@/store/user'
 import Confirm from '@/plugins/confirm'
+import fullScreen from '@/plugins/fullScreen'
 
 const { start, done } = useNProgress()
 // loginType:1.enterprise: 企业路由
@@ -23,10 +24,14 @@ router.beforeEach(async (to, from, next) => {
     useUserStore().changeRole(obj)
     next()
   } else if (getToken(tokenIndex)) {
+    // 强制修改密码
+    if (localStorage.getItem('entUpdatePassword') === 'needChange') fullScreen('entUpdatePassword')
     // 企业信息完成度提示
-    if (localStorage.getItem('checkEnterpriseBaseInfoFalseHref')) {
+    else if (localStorage.getItem('checkEnterpriseBaseInfoFalseHref')) {
       const href = localStorage.getItem('checkEnterpriseBaseInfoFalseHref')
       localStorage.setItem('checkEnterpriseBaseInfoFalseHref', '')
+      localStorage.setItem('checkEnterpriseBaseInfoFalseHref', '')
+      localStorage.setItem('entUpdatePassword', '')
       if (to.path !== '/recruit/enterprise/entInfoSetting') {
         setTimeout(() => {
           Confirm('系统提示', '企业信息设置未完善,是否前往完善?').then(() => {

+ 44 - 0
src/plugins/fullScreen/components/entUpdatePassword.vue

@@ -0,0 +1,44 @@
+<!-- 修改密码 -->
+<template>
+  <v-app>
+    <v-dialog
+      v-model="dialog"
+      max-width="100vw"
+    >
+      <div class="white-bgc ma-n6 d-flex flex-column align-center justify-center" style="min-height: 100vh;">
+        <staffChangePassword :hideGoBack="true" :hideWidth="true" :entChangePassword="true" elevation="0"></staffChangePassword>
+      </div>
+    </v-dialog>
+  </v-app>
+</template>
+
+<script setup>
+import { onMounted, ref } from 'vue'
+import staffChangePassword from '@/views/recruit/enterprise/staffChangePassword'
+defineOptions({name: 'fullScreen-entUpdatePassword'})
+
+const dialog = ref(true)
+onMounted(() => {
+  dialog.value = true
+})
+
+</script>
+<style lang="scss" scoped>
+.white-bgc {
+  background-image: url('https://minio.menduner.com/dev/menduner/login-banner.png');
+  background-size: cover;
+}
+::-webkit-scrollbar {
+  width: 4px;
+  height: 10px;
+  display: none;
+}
+::-webkit-scrollbar-thumb, .temporaryAdd ::-webkit-scrollbar-thumb, .details_edit ::-webkit-scrollbar-thumb {
+  // 滚动条-颜色
+  background: #c3c3c379;
+}
+::-webkit-scrollbar-track, .temporaryAdd ::-webkit-scrollbar-track, .details_edit ::-webkit-scrollbar-track {
+  // 滚动条-底色
+  background: #e5e5e58f;
+}
+</style>

+ 27 - 0
src/plugins/fullScreen/index.js

@@ -0,0 +1,27 @@
+import { createApp } from 'vue'
+import entUpdatePassword from './components/entUpdatePassword.vue'
+import vuetify from '@/plugins/vuetify'
+
+const toastMessage = (type, options)  => {
+  const componentName = type === 'entUpdatePassword' ? entUpdatePassword : null
+
+  const rootNode = document.createElement("div")
+  document.querySelector('.v-application').appendChild(rootNode)
+  const app = createApp(componentName, options)
+  app.use(vuetify)
+  app.mount(rootNode)
+  const { timeout } = options || {}
+  if ((timeout - 0)) {
+    setTimeout(() => {
+      app.unmount()
+      rootNode.remove()
+    }, (timeout-0))
+  }
+}
+
+// 注册插件app.use()会自动执行install函数
+toastMessage.install = (app) => {
+  app.config.globalProperties.Curtain = toastMessage
+}
+
+export default toastMessage

+ 2 - 1
src/router/modules/components/recruit/enterprise.js

@@ -172,7 +172,8 @@ const enterprise = [
     meta: {
       title: '人才地图',
       enName: 'Talent Map',
-      icon: 'mdi-map-check'
+      icon: 'mdi-map-check',
+      isPersonMap: true
     },
     children: [
       {

+ 11 - 0
src/router/modules/components/recruit/personCenter.js

@@ -104,6 +104,17 @@ const personCenter = [
               icon: 'mdi-order-bool-ascending-variant'
             }
           },
+          // 邀请记录
+          {
+            path: '/recruit/personal/personalCenter/inviteRecord',
+            name: 'Invite Record',
+            component: () => import('@/views/recruit/personal/PersonalCenter/inviteRecord/index.vue'),
+            meta: {
+              title: '邀请记录',
+              enName: 'Invite Record',
+              icon: 'mdi-format-list-numbered-rtl'
+            }
+          },
           // 会员福利
           {
             path: '/recruit/personal/personalCenter/memberBenefits',

+ 42 - 0
src/router/modules/remaining.js

@@ -87,6 +87,48 @@ const remainingRouter = [
       }
     ]
   },
+  {
+    path: '/UserBehaviorNorms',
+    component: Layout,
+    name: 'UserBehaviorNorms',
+    children: [
+      {
+        path: '/UserBehaviorNorms',
+        component: () => import('@/views/login/components/UserBehaviorNorms.vue'),
+        meta: {
+          title: '用户行为规范'
+        }
+      }
+    ]
+  },
+  {
+    path: '/WorkplaceCommunityPolicy',
+    component: Layout,
+    name: 'WorkplaceCommunityPolicy',
+    children: [
+      {
+        path: '/WorkplaceCommunityPolicy',
+        component: () => import('@/views/login/components/WorkplaceCommunityPolicy.vue'),
+        meta: {
+          title: '职场社区政策'
+        }
+      }
+    ]
+  },
+  {
+    path: '/CopyrightPolicy',
+    component: Layout,
+    name: 'CopyrightPolicy',
+    children: [
+      {
+        path: '/CopyrightPolicy',
+        component: () => import('@/views/login/components/CopyrightPolicy.vue'),
+        meta: {
+          title: '版权政策'
+        }
+      }
+    ]
+  },
 ]
 setLoginType(remainingRouter, 'personalCommon') // 暂定:登录企业端不能访问personalCommon路由
 setLoginType(common, 'common') // common 没有身份,任何情况都能访问

+ 10 - 0
src/store/user.js

@@ -10,6 +10,7 @@ import {
   logout 
 } from '@/api/common'
 import { getUserInfo } from '@/api/personal/user'
+import { getEntUpdatePasswordCheck } from '@/api/recruit/enterprise/information'
 import { getEnterpriseUserAccount, getAccountBalance, getUserAccount, userRegister } from '@/api/common'
 import { getEnterpriseBaseInfo } from '@/api/enterprise'
 import Snackbar from '@/plugins/snackbar'
@@ -165,6 +166,7 @@ export const useUserStore = defineStore('user',
         localStorage.setItem('accountInfo', JSON.stringify(data))
         localStorage.setItem('expiresTime', data.expiresTime)
         updateEventList(false)
+        await this.updatePasswordCheck() // 检查密码是否需要修改
         await this.getEnterpriseInfo()
         await this.getEnterpriseUserAccountInfo()
         
@@ -228,6 +230,14 @@ export const useUserStore = defineStore('user',
         const data = await getAccountBalance()
         const obj = Object.assign(this.userAccount, data)
         localStorage.setItem('userAccount', JSON.stringify(obj))
+      },
+
+      // 检查密码是否需要修改
+      async updatePasswordCheck () {
+        const bool = await getEntUpdatePasswordCheck()
+        if (bool) {
+          localStorage.setItem('entUpdatePassword', bool ? 'needChange' : 'doNotNeedChange')
+        }
       }
     }
   },

+ 36 - 0
src/views/login/components/CopyrightPolicy.vue

@@ -0,0 +1,36 @@
+<template>
+  <div class="conter">
+    <div class="Protocol">
+      <h1 class="segment">版权政策</h1>
+      <p class="text-color"><span class="text-font">苏州识喜识谊信息科技有限公司(以下称“门墩儿网站”、“本网站”)尊重他人的知识产权,志在提供内容不侵犯他人知识产权的网站。根据《中华人民共和国著作权法》、《信息网络传播权保护条例》、《互联网著作权行政保护办法》等相关法律、法规的规定,门墩儿网站针对网络侵权采取如下版权政策:</span></p>
+      <p class="text-color"><span class="text-font">1. 本网站对网络版权保护尽合理、审慎的义务,在有理由确信存在明显侵犯任何第三人版权的作品时,有权不事先通知并随时删除该涉嫌侵权作品;</span></p>
+      <p class="text-color"><span class="text-font">2. 本网站在接到符合法定要求的版权通知后,将迅速删除涉嫌侵权作品;</span></p>
+      <p class="text-color"><span class="text-font">3. 本网站采取必要的技术措施,尽可能防止相同的侵权作品的再次上传;</span></p>
+      <p class="text-color"><span class="text-font">4.在适当情况下,经本网站决定后,涉嫌一次或多次侵犯他人知识产权、或发布不准确或非法内容的会员或组织(视具体情况而定)的帐号将被禁用或关闭。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">版权侵犯通知</span></h2>
+      <p class="text-color"><span class="text-font">如果您认为门墩儿网站上提供的信息存储空间所上载、传播的任何内容侵犯了您的信息网络传播权或者删除、改变了您的权利管理电子信息的,您可以通过向本网站的邮箱发送邮件,或向本网站版权负责人寄送信件,要求本网站删除该作品或者断开该作品的链接。通知书需由权利人或其合法授权人亲笔签名,若为单位则需加盖单位公章。</span></p>
+      <p class="text-color"><span class="text-font">通知书应当包含下列内容:</span></p>
+      <p class="text-color"><span class="text-font">1. 权利人的姓名(名称)、联系方式、地址、身份证复印件(自然人)、单位登记证明复印件(单位);</span></p>
+      <p class="text-color"><span class="text-font">2. 要求删除或者断开链接的侵权作品的准确名称和网络地址,以便本网站能够发现并初步审核涉嫌侵权作品;</span></p>
+      <p class="text-color"><span class="text-font">3. 认为构成侵权的初步证明材料,包括但不限于对作品享有版权或依法享有信息网络传播权的权属证明等。</span></p>
+      <p class="text-color"><span class="text-font">您应对通知书的真实性负责。若通知书的内容不真实,您将承担由此造成的全部法律责任。因此建议在提交通知书前,先进行法律咨询。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">反驳通知</span></h2>
+      <p class="text-color"><span class="text-font">作品提供者收到本网站转送的通知书后,认为其提供的作品并未侵犯他人权利的,可向本网站提交反通知的书面说明,要求恢复被删除的作品或被断开的作品链接。反通知书需作品提供者或其合法授权人亲笔签名,若为单位则需加盖单位公章。</span></p>
+      <p class="text-color"><span class="text-font">反通知应当包含下列内容:</span></p>
+      <p class="text-color"><span class="text-font">1. 作品提供者的姓名(名称)、联系方式、地址、身份证复印件(自然人)、单位登记证明复印件(单位);</span></p>
+      <p class="text-color"><span class="text-font">2. 要求恢复被删除的作品,或者被断开链接的作品的准确名称和网络地址,以便本网站能够发现并初步审核涉嫌侵权的作品;</span></p>
+      <p class="text-color"><span class="text-font">3. 认为不构成侵权的初步证明材料,包括但不限于对作品享有著作权或依法享有信息网络传播权的权属证明等。</span></p>
+      <p class="text-color"><span class="text-font">作品提供者应对反通知书的真实性负责。若通知书的内容不真实,提供者将承担由此造成的全部法律责任。因此建议在提交反驳通知书前,先进行法律咨询。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">线下版权通知</span></h2>
+      <p class="text-color"><span class="text-font">投诉请邮寄至如下地址:</span></p>
+      <p class="text-color"><span class="text-font">地址:江苏省苏州工业园区林泉街 399 号东南大学国家 大学科技园(苏州)南工院(2#)304 室</span></p>
+      <p class="text-color"><span class="text-font">邮编:215123</span></p>
+      <p class="text-color"><span class="text-font">公司:苏州识喜识谊信息科技有限公司</span></p>
+      <p class="text-color"><span class="text-font">邮箱:services@menduner.com</span></p>
+    </div>
+  </div>
+</template>
+
+<style scoped lang="scss">
+@import url('../../../styles/protocol/index.scss');
+</style>

+ 102 - 0
src/views/login/components/UserBehaviorNorms.vue

@@ -0,0 +1,102 @@
+<template>
+  <div class="conter">
+    <div class="Protocol">
+      <h1 class="segment">用户行为规范</h1>
+      <h2 class="subtitle text-size"><span class="text-font">一、前言</span></h2>
+      <p class="text-color"><span class="text-font">《用户行为规范》(以下简称“本规范”)适用门墩儿招聘所有用户,是《门墩儿招聘用户服务协议》的重要组成部分,两者具有同等法律效力,用户同意或使用门墩儿招聘服务(即《门墩儿招聘用户协议》所提及的门墩儿招聘网页(www.menduner.com)、移动客户端(包括IOS、安卓及已有或未来将新增的任何其他移动客户端)等各类平台或媒介的服务,以下简称“本服务”)的行为即视为同意受到本规范的约束。本协议术语及定义与《门墩儿招聘用户协议》一致。
+        <strong>您应当仔细阅读并遵守本用户协议下的全部内容,特别是涉及免除或者限制我们的责任的条款,此类条款可能以黑体加粗的形式提示您注意。</strong></span></p>
+      <p class="text-color"><span class="text-font">本规范与《门墩儿招聘用户协议》不一致之处(如有),以本规范为准,本规范未提及事宜,以《门墩儿招聘用户协议》中的约定为准。</span></p>
+      <p class="text-color"><span class="text-font">用户(包括求职者用户和招聘者用户)在使用本服务(详情请查阅《门墩儿招聘用户协议》)的过程中,应当遵守宪法和其他适用的法律法规(以下简称“相关法律法规”),包括但不限于《中华人民共和国保守国家秘密法》、《中华人民共和国网络安全法》、《中华人民共和国数据安全法》、《中华人民共和国著作权法》、《中华人民共和国劳动法》、《中华人民共和国劳动合同法》、《中华人民共和国计算机信息系统安全保护条例》、《计算机软件保护条例》、《互联网电子公告服务管理规定》、《网络信息内容生态治理规定》、《信息网络传播权保护条例》、《互联网信息服务管理办法》、《网络信息内容生态治理规定》、《互联网用户账号名称管理规定》等有关计算机及互联网规定的法律法规,以及《中华人民共和国就业促进法》、《就业服务与就业管理规定》、《中华人民共和国广告法》、《中华人民共和国个人信息保护法》、《中华人民共和国民法典》、《互联网广告管理办法》、《网络招聘服务管理规定》等相关法律法规;应当遵循公序良俗,不得损害国家利益、公共利益和他人合法权益。</span></p>
+      <p class="text-color"><span class="text-font">您理解并同意,您须为您的门墩儿招聘账号(包括招聘方用户账号以及求职者用户账号)下的一切行为负责,包括您所发表的任何内容以及由此产生的任何后果。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">二、用户权利</span></h2>
+      <p class="text-color"><span class="text-font">用户在使用本服务期间,有权:</span></p>
+      <p class="text-color"><span class="text-font">1、根据《门墩儿招聘用户协议》和相关法律法规,制作、发布、上传由用户原创或取得了合法授权(含转授权)内容,包括但不限于文字、图片、语音、视频、直播等内容。</span></p>
+      <p class="text-color"><span class="text-font">2、根据《门墩儿招聘用户协议》,在我们的授权范围或门墩儿招聘各类平台或媒介支持的功能范围内,使用本服务。</span></p>
+      <p class="text-color"><span class="text-font">3、向我们提出与本服务有关的意见和建议,以帮助我们更好地向您提供服务。</span></p>
+      <p class="text-color"><span class="text-font">4、对其他用户的违法违规行为、违反本协议条款和规则的行为,与我们联系进行投诉和举报。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">三、用户义务</span></h2>
+      <p class="text-color"><span class="text-font">用户在使用门墩儿招聘服务期间,禁止:</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">1、制作、上传、复制、传送、传播包含下列内容的违法信息:</span></h2>
+      <p class="text-color"><span class="text-font">(1)反对宪法所确定的基本原则的;</span></p>
+      <p class="text-color"><span class="text-font">(2)危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一的;</span></p>
+      <p class="text-color"><span class="text-font">(3)损害国家荣誉和利益的;</span></p>
+      <p class="text-color"><span class="text-font">(4)歪曲、丑化、亵渎、否定英雄烈士事迹和精神,以侮辱、诽谤或者其他方式侵害英雄烈士的姓名、肖像、名誉、荣誉的;</span></p>
+      <p class="text-color"><span class="text-font">(5)宣扬恐怖主义、极端主义或者煽动实施恐怖活动、极端主义活动的;</span></p>
+      <p class="text-color"><span class="text-font">(6)煽动民族仇恨、民族歧视,破坏民族团结的;</span></p>
+      <p class="text-color"><span class="text-font">(7)破坏国家宗教政策,宣扬邪教和封建迷信的;</span></p>
+      <p class="text-color"><span class="text-font">(8)散布谣言,扰乱经济秩序和社会秩序,破坏社会稳定的;</span></p>
+      <p class="text-color"><span class="text-font">(9)散布淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪的;</span></p>
+      <p class="text-color"><span class="text-font">(10)侮辱或者诽谤他人,侵害他人名誉、隐私和其他合法权益的;</span></p>
+      <p class="text-color"><span class="text-font">(11)法律、行政法规禁止的其他内容。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">2、制作、上传、复制、传送、传播包含下列内容的不良信息:</span></h2>
+      <p class="text-color"><span class="text-font">(1)使用夸张标题,内容与标题严重不符的;</span></p>
+      <p class="text-color"><span class="text-font">(2)炒作绯闻、丑闻、劣迹等的;</span></p>
+      <p class="text-color"><span class="text-font">(3)不当评述自然灾害、重大事故等灾难的;</span></p>
+      <p class="text-color"><span class="text-font">(4)带有性暗示、性挑逗等易使人产生性联想的;</span></p>
+      <p class="text-color"><span class="text-font">(5)展现血腥、惊悚、残忍等致人身心不适的;</span></p>
+      <p class="text-color"><span class="text-font">(6)煽动人群歧视、地域歧视等的;</span></p>
+      <p class="text-color"><span class="text-font">(7)宣扬低俗、庸俗、媚俗内容的;</span></p>
+      <p class="text-color"><span class="text-font">(8)可能引发未成年人模仿不安全行为和违反社会公德行为、诱导未成年人不良嗜好等的;</span></p>
+      <p class="text-color"><span class="text-font">(9)其他对网络生态造成不良影响的内容。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">您知悉并同意,您不得向其他用户发布具有跟踪性、威胁性、伤害性、骚扰性或令人尴尬的内容;不得针对性、性别、年龄、体重、体形、残障、种族、宗教或性取向发表任何贬损性言论,亦不得支持针对任何个人或群体实施暴力行为,即使是以幽默的方式所表达,这包括针对任何群体或社区发表任何成见。在您参与线上沟通时,请围绕相关话题就事论事,您可以礼貌地对某条消息、帖子或某个话题表示反对,但请勿以嘲讽或侮辱的方式攻击其他用户。在您受到其他用户的攻击时,如果您反过来攻击对方,那么对方可能还会再次攻击您。</span></h2>
+      <p class="text-color"><span class="text-font">3、以任何方式危害未成年人,包括但不限于制作、上传、复制、传送、传播诱发未成年人模仿违反社会公德和违法犯罪行为的内容,含有恐怖、残酷等妨害未成年人身心健康的内容,含有披露未成年人个人隐私的内容。</span></p>
+      <p class="text-color"><span class="text-font">4、利用本服务从事危害网络安全的活动:</span></p>
+      <p class="text-color"><span class="text-font">(1)非法侵入门墩儿招聘或他人网络、干扰门墩儿招聘或他人网络正常功能、窃取网络数据等危害网络安全的活动。包括但不限于:出于任何目的,在未经授权的情况下使用、破坏或企图破坏、自动攻击、开发或滥用我们的资源或我们的网络安全保护措施,使用任何网络机器人、网络蜘蛛(SPIDER)、抓取工具、抓宠程序、拟人程序或其他非真实用户或避开、破坏技术措施等非正常的自动手段读取、复制、转存访问本服务的任何内容,未经门墩儿招聘许可使用插件、外挂或者通过其他第三方工具、运营平台或任何服务接入本服务和相关系统;对本服务的网络服务及相关软硬件设施进行破解、破坏、删除、修改或者增加,对计算机信息网络中存储或者传输的数据和应用程序进行删除、修改或者增加的;</span></p>
+      <p class="text-color"><span class="text-font">(2)上传、复制、传送、传播任何干扰、破坏或限制任何计算机软件、硬件或通讯设备功能的软件病毒或其他计算机代码、档案和程序之资料,干扰或破坏本服务或与提供本服务相连的服务器和网络;</span></p>
+      <p class="text-color"><span class="text-font">(3)向他人提供专门用于从事侵入网络、干扰网络正常功能及防护措施、窃取网络数据等危害网络安全活动的程序、工具。</span></p>
+      <p class="text-color"><span class="text-font">(4)明知他人从事危害网络安全的活动的,为其提供技术支持、广告推广、支付结算等帮助的行为。</span></p>
+      <p class="text-color"><span class="text-font">(5)其他违反法律法规,危害计算机网络安全的行为。</span></p>
+      <p class="text-color"><span class="text-font">5、以通过发布评论等任何方式向任何人发布任何垃圾信息。</span></p>
+      <p class="text-color"><span class="text-font">6、篡改其他用户发布的内容。</span></p>
+      <p class="text-color"><span class="text-font">7、任何未经授权的商业行为。包括但不限于:</span></p>
+      <p class="text-color"><span class="text-font">(1)对本服务的全部或任何部分,进行复制、拷贝、出售、转售或用于任何其他商业目的;</span></p>
+      <p class="text-color"><span class="text-font">(2)利用本服务进行任何牟利性经营活动等。</span></p>
+      <p class="text-color"><span class="text-font">(3)传播任何未经要求或授权的广告、宣传材料、“邮寄宣传片”、“垃圾邮件”、“连环信”、传销、违法直销或任何其他形式的此类兜售;</span></p>
+      <p class="text-color"><span class="text-font">(4)发布包含经我们自行判断后认为令人反感或者妨碍任何其他人士使用或享用本服务的内容;</span></p>
+      <p class="text-color"><span class="text-font">(5)发布可能会使我们或其他用户受到任何类型的任何伤害或承担任何责任的内容;</span></p>
+      <p class="text-color"><span class="text-font">(6)发布损害或降低与我们的标志有关的商誉的内容,包括但不限于:</span></p>
+      <p class="text-color"><span class="text-font">(7)强制、诱导其他用户关注、点击链接页面或分享信息;</span></p>
+      <p class="text-color"><span class="text-font">(8)未经门墩儿招聘书面许可利用门墩儿招聘账号和任何功能进行推广或互相推广的;</span></p>
+      <p class="text-color"><span class="text-font">(9)利用技术手段批量建立虚假账号。</span></p>
+      <p class="text-color"><span class="text-font">8、将无权传送的内容(例如受保密协议保护的保密资料、机密资料)、侵犯他人的个人信息、著作权、专利权、商标权、商业秘密或其他专属权利之内容、广告函件、促销资料、干扰、破坏或限制任何计算机软件、硬件或通讯设备功能的软件病毒或其他计算机代码、档案和程序之资料等作为任何内容进行上传、复制、传送、传播;</span></p>
+      <p class="text-color"><span class="text-font">9、从事侵害他人名誉权、肖像权、知识产权、商业秘密、隐私、个人信息等合法权益的行为。包括但不限于:</span></p>
+      <p class="text-color"><span class="text-font">(1)以任何不当手段侵扰他人;</span></p>
+      <p class="text-color"><span class="text-font">(2)违法收集、发布个人信息,发布与任何第三方有关或者违法向任何第三方收集包含个人信息的内容,包括用户通过在线课堂可能披露的个人信息,例如的电话号码、街道地址、姓名等;</span></p>
+      <p class="text-color"><span class="text-font">(3)未经本人的明确许可,公布其个人信息,包括但不限于手机号码、住址、姓名等;</span></p>
+      <p class="text-color"><span class="text-font">(4)公开发布私人对话,包括公开自其他用户收到的私人消息。</span></p>
+      <p class="text-color"><span class="text-font">(5)以其他任何方式非法获取、使用、出售、提供其他用户的个人信息;</span></p>
+      <p class="text-color"><span class="text-font">(6)其他违反法律法规或国家政策以及损害我们及他人合法权益的行为。</span></p>
+      <p class="text-color"><span class="text-font">10、利用本服务服务从事违法犯罪活动。包括但不限于:</span></p>
+      <p class="text-color"><span class="text-font">(1)设立用于实施诈骗,传授犯罪方法,制作或者销售违禁物品、管制物品等违法犯罪活动的网站、通讯群组;</span></p>
+      <p class="text-color"><span class="text-font">(2)利用本服务发布涉及实施诈骗,制作或者销售违禁物品、管制物品以及其他违法犯罪活动的信息;</span></p>
+      <p class="text-color"><span class="text-font">(3)利用门墩儿招聘账号或本服务从事欺诈、传销、刷流量、好评等任何违法犯罪活动;</span></p>
+      <p class="text-color"><span class="text-font">(4)利用本服务从事洗钱、窃取商业秘密、窃取个人信息等违法犯罪活动。</span></p>
+      <p class="text-color"><span class="text-font">(5)在不符合中国有关法规的情况下,从中国大陆向境外传输资料信息。</span></p>
+      <p class="text-color"><span class="text-font">11、冒充任何人或机构。包括但不限于:</span></p>
+      <p class="text-color"><span class="text-font">(1)冒充门墩儿招聘工作人员或以虚伪不实的方式谎称或使人误认为门墩儿招聘与任何人或任何机构有关;</span></p>
+      <p class="text-color"><span class="text-font">(2)伪造标题或以其他方式使人误认为该内容为门墩儿招聘发布、传送;</span></p>
+      <p class="text-color"><span class="text-font">(3)仿冒、混淆他人账号昵称、头像或发布内容,或冒充、利用他人名义;</span></p>
+      <p class="text-color"><span class="text-font">(4)盗用他人头像或资料,冒充、利用他人名义。</span></p>
+      <p class="text-color"><span class="text-font">12、未能按照本服务的流程、规则进行注册、认证或使用本服务的,违反本服务功能限制或运营策略,或采取任何措施规避本服务的流程、规则、限制或策略的。</span></p>
+      <p class="text-color"><span class="text-font">13、使用本服务在本服务上制作、上传、发布、传播任何违反法律法规及其他规范性文件、本规范及《门墩儿招聘用户服务协议》的文字、图片等内容的。</span></p>
+      <p class="text-color"><span class="text-font">14、不遵守本协议之约定或教唆他人从事本协议所禁止的行为。</span></p>
+      <p class="text-color"><span class="text-font">15、违反任何相关的法律、法规、规章、条例等其他具有法律效力的规范。</span></p>
+      <p class="text-color"><span class="text-font">16、其他任何导致或可能导致我们与第三方产生纠纷、争议或诉讼的行为。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">四、违约责任</span></h2>
+      <h2 class="subtitle text-size"><span class="text-font">为了维护平台的良好秩序及用户权益,如果您出现违反有关法律法规以及本协议的情况,包括但不限于发布违法信息或本协议及本协议的关联协议中明令禁止发布的内容,以及恶意损害本网站声誉、商誉或违反有关法律法规、本协议以及相关网站、App 、小程序使用规则的行为,我们有权自行判断并视情节严重程度,决定采取以下一种或多种处置措施:警示、拒绝发布、删除信息、屏蔽或断开连接、限制功能、限期改正、限制账号功能、按照平台要求出具不再发生违规行为的保证及其他证明文件并根据实际情况决定是否恢复服务、暂停更新直至关闭账号、中止/终止向您提供部分/全部服务、封禁/回收用户账号、禁止重新注册、不予退还已支付费用、要求您赔偿门墩儿招聘因此遭受的全部损失(包括但不限于财产损害赔偿、名誉损害赔偿、律师费、交通费等因维权而产生的合理费用,定义下同)等处理措施。</span></h2>
+      <h2 class="subtitle text-size"><span class="text-font">此外,您的行为如涉及违法犯罪活动的,门墩儿招聘有权单方终止提供全部或部分智联产品与/或服务,并移交司法机关进行处理。如因上述处理措施给用户带来任何损失或者因此无法使用门墩儿招聘账号和服务的,门墩儿招聘对此不承担任何责任。</span></h2>
+      <h2 class="subtitle text-size"><span class="text-font">由此导致的一切不利后果,由用户自行承担;导致第三方损害的,用户应当独立承担责任;因用户的上述行为给我们造成不利后果的,用户应负责消除影响,并且赔偿我们因此遭受的一切损失,包括但不限于财产损害赔偿、名誉损害赔偿、律师费、交通费等因维权而产生的合理费用。</span></h2>
+      <p class="text-color"><span class="text-font">用户上传的内容非用户原创的,用户保证对该内容已经取得了合法授权(包含转授权),有权以《门墩儿招聘用户服务协议》及本规范约定的方式授权给门墩儿招聘使用,若用户违反上述保证,导致的任何争议或纠纷由用户自行解决;
+        <strong>由此给门墩儿招聘造成损失的,用户应当对门墩儿招聘承担赔偿责任,包括但不限于财产损害赔偿、名誉权损害赔偿、律师费、交通费等因维权而产生的合理费用。</strong></span></p>
+      <p class="text-color"><span class="text-font">如用户因违反《门墩儿招聘用户服务协议》或本规范导致第三方损害的,用户应当独立承担责任,门墩儿招聘不因此承担任何责任;如有任何第三方向我们主张权益,您应当为我们积极向第三方抗辩,或者按照我们的要求,为我们向第三方抗辩提供必要的配合与协助(包括但不限于提供与相关权利证明文件、资料、信息等);
+        <strong>造成门墩儿招聘损失的,用户应当对门墩儿招聘承担赔偿责任,包括但不限于财产损害赔偿、名誉权损害赔偿、律师费、交通费等因维权而产生的合理费用。</strong></span></p>
+      <h2 class="subtitle text-size"><span class="text-font">五、附则</span></h2>
+      <p class="text-color"><span class="text-font">1.本行为规范的订立、执行和解释及争议的解决均应适用中国法律并受中国法院管辖。如您与门墩儿招聘就本规范内容或其执行发生任何争议,双方应友好协商解决;协商不成时,任何一方均可向苏州工业园区人民法院提起诉讼。</span></p>
+      <p class="text-color"><span class="text-font">2.本规范自发布之日起施行,门墩儿招聘有权基于法律规定的变化、平台功能的调整,以及自身管理经验的不断丰富等,出于维护门墩儿招聘平台秩序的目的,不断修订并完善本规范。用户应经常查阅并了解本规范,以便获得最新信息。</span></p>
+    </div>
+  </div>
+</template>
+
+<style scoped lang="scss">
+@import url('../../../styles/protocol/index.scss');
+</style>

+ 27 - 0
src/views/login/components/WorkplaceCommunityPolicy.vue

@@ -0,0 +1,27 @@
+<template>
+  <div class="conter">
+    <div class="Protocol">
+      <h1 class="segment">职场社区政策</h1>
+      <p class="text-color"><span class="text-font">我们将竭诚为会员提供专业的“服务”,为更好提供服务,我们制定此职场社区政策。职场社区政策旨在规范何种行为在社区是被允许的,何种行为在社区是被禁止的。您在使用本网站服务时,应该遵守此规定。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">1. 个人资料</span></h2>
+      <p class="text-color"><span class="text-font">本网站要求会员必须提供真实的姓名和准确的个人资料。您在使用本网站服务时不得以使用他人姓名、图像或其他个人信息来假冒他人,也不得以任何其他形式使他人误解您隶属于某个企业或组织。同时不得使用不属于您本人的账户,不得创建除本网站用户协议规定以外的非真实用户。在上传档案头像时,必须是您本人的图像。同时,您不得操控识别码以伪装通过服务传递任何消息或动态来源。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">2. 发布内容</span></h2>
+      <p class="text-color"><span class="text-font">您在本网站交流及所发布之内容务必与本网站宗旨相一致,不得做出不当行为。您在本网站使用服务时所创建之内容,必须遵守本网站相关政策规定,并且所创建之内容应该与本网站服务内容相关。不得邀请您所无法识别其真实身份的人加入您的人脉,不要将错误的或未经证实信息在本网站进行分享。你所发布的内容不得明示或暗示含有任何色情内容。您也不得发布任何含有暴力或妨害风化等内容,同时不得在使用本网站服务时从事任何违法犯罪活动。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">3. 社区氛围</span></h2>
+      <p class="text-color"><span class="text-font">本网站所倡导之交流应该是积极、向上、充满正能量氛围。不得在本网站发表攻击他人或企业的不当言论。此类言论包含但不限于辱骂或羞辱性言语、讽刺及影射性言论、未经允许发布他人未经公开的个人资料、或者煽动他人进行此类行为。</span></p>
+      <p class="text-color"><span class="text-font">您不得利用本网站之服务发表鼓吹暴力、组织犯罪、煽动仇恨、散布偏见言论等行为。您不得利用本网站之服务为恐怖组织进行招募,或者利用本网站为恐怖组织进行宣传或报道恐怖活动等。</span></p>
+      <p class="text-color"><span class="text-font">您不得在使用本网站服务时发布暴力或露骨内容,或意图恫吓或羞辱他人。不允许鼓吹、组织、描绘或助长犯罪活动;不允许叙述或鼓吹指导武器制作、药物滥用和盗窃威胁等相关内容;也不允许宣传或鼓励自杀或任何自我伤害的举动,包括自残、绝食或暴食等内容或活动。</span></p>
+      <p class="text-color"><span class="text-font">您不得在使用本网站服务时发送无特定对象、无相关性、不想要、未经请求、未经授权、不恰当的商业或促销,或无故重复的消息。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">4. 合法使用</span></h2>
+      <p class="text-color"><span class="text-font">您在使用本网站服务时所分享和使用的作品、商标、私人信息或商业秘密等必须首先保证您具有合法的权限。本网站所提供的服务不应被用于非法活动、宣传非法产品或侵犯他人权利。请勿使用本网站进行诈骗或企图蒙骗他人的活动。</span></p>
+      <p class="text-color"><span class="text-font">您在使用本网站的服务时您不得在未经授权的情况下向不认识的本网站会员征求邮箱地址或其他个人资料;不得使用、揭露或散布任何以违反本网站政策或协议之方式取得的资料;不得发布您未获同意即公开的信息。</span></p>
+      <p class="text-color"><span class="text-font">您在使用本网站服务时必须遵守相关法律、法规,包括但不限于知识产权法、税法及监管要求。您不得使用本网站服务从事传销活动、参与欺诈等违法犯罪活动。</span></p>
+      <p class="text-color"><span class="text-font">您在使用本网站服务时不得违反他人的知识产权,包括版权、专利、商标、商业机密或其他所有权。</span></p>
+      <p class="text-color"><span class="text-font">您在使用本网站服务时不得侵害本网站权利。您必须遵守我们的规则、协议和政策。</span></p>
+    </div>
+  </div>
+</template>
+
+<style scoped lang="scss">
+@import url('../../../styles/protocol/index.scss');
+</style>

+ 41 - 404
src/views/login/components/privacyPolicy.vue

@@ -1,410 +1,47 @@
 <template>
   <div class="conter">
     <div class="Protocol">
-      <h1
-        class="segment"
-        style="margin-top:20px;font-size:26px;margin-bottom:20px;"
-      >门墩儿招聘隐私保护政策</h1>
-      <div style="word-break: break-word;">
-        <p>尊敬的用户,欢迎您使用门墩儿产品和服务!
-门墩儿致力于为您提供高质量的招聘服务,我们深知个人信息的重要性,并承诺严格遵守相关法律法规,保护您的隐私和个人信息安全。本隐私政策旨在向您说明我们在收集、使用、处理、存储和分享您的个人信息时的做法,以帮助您更好地了解我们的服务并作出明智的决策。
-        </p>
-        <p>&nbsp;
-
-        </p>
-        <p>
-          依据《网络安全法》《互联网用戶账号信息管理规定》等法律法规的要求 ,您在门墩儿招聘注册页面完成手机短信 验证并勾选同意门墩儿招聘《用戶协议》等相关协议 ,即表示您已经阅读并且同意与门墩儿招聘公司达成本协议 , 成为门墩儿招聘的用戶 ,并接受本协议中的全部注册条款以及门墩儿招聘《隐私政策》和本平台内公布的包括但不  限于《招聘行为管理规范》《门墩儿招聘增值服务协议》等各项协议或规则(统称“平台协议”或“平台规则”) 的所   有条款的约束 ,包括真有解决条款(详见本协议第十五条)。
-        </p>
-        <p>
-          一、 引言</p>
-        <p>二、 我们如何收集和使用您的个人信息</p>
-        <p>三、 我们如何使用 Cookie 和同类技术</p>
-        <p>四、 我们如何共享、转让、公开披露您的个人信息</p>
-        <p>五、 我们如何保存及保护您的个人信息</p>
-        <p>六、 您控制个人信息的权利</p>
-        <p>七、 我们如何处理未成年人的个人信息</p>
-        <p>八、 您的个人信息如何跨境转移</p>
-        <p>九、 隐私保护政策的修订</p>
-        <p>十、 如何联系我们</p>
-        <p>十一、 争议解决方式</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>一、引言</strong></span></p>
-        <p>为切实保护门墩儿招聘用户隐私权,优化用户体验,门墩儿招聘根据现行法规及政策,制定本《隐私保护政策》。本《隐私保护政策》将详细说明门墩儿招聘在获取、管理及保护用户个人信息方面的政策及措施。本《隐私保护政策》适用于门墩儿招聘向您提供的所有服务,无论您是通过计算机设备、移动终端或其他设备获得的门墩儿招聘服务。</p>
-        <p>本《隐私保护政策》旨在帮助您了解我们会收集哪些数据、为什么收集这些数据,会利用这些数据做些什么及如何保护这些数据。我们希望您在使用门墩儿招聘服务前仔细阅读并明确您已经充分理解、接受本《隐私保护政策》的内容,希望您可以根据自己的理解做出合适的选择。您一旦开始使用门墩儿招聘平台服务,即表示您认同我们在本《隐私保护政策》中所述内容。在我们更新本《隐私保护政策》后,您继续使用我们的产品与/或服务,即意味着您同意本《隐私保护政策》(含更新版本)内容,并且同意我们按照本《隐私保护政策》收集、使用、保存和共享您的相关信息。此外,在将您的信息用于本《隐私保护政策》未涵盖的用途时,我们会事先征求您的同意。</p>
-        <p>&nbsp;</p>
-        <p><strong><span style="color: --var(--v-primary-base);">二、我们如何收集和使用您的个人信息</span></strong></p>
-        <p>我们深知个人信息对您的重要性,也深知为您的信息提供有效保护是我们业务健康可持续发展的基石。感谢您对门墩儿招聘平台的使用和信任!我们致力于维持您对我们的信任,恪守适用法律和我们对您的承诺,尽全力保证您的个人信息安全和合理使用。我们郑重承诺,我们已按业界成熟的安全标准,采取相应的安全保护措施来保护您的个人信息。我们承诺将坚持合法、正当、“最小必要化”原则收集、使用、存储和传输用户信息,不会收集与业务无关的信息或采取不正当的方式收集信息,并通过用户协议和隐私保护政策告知您相关信息的使用目的和范围。</p>
-        <p><br></p>
-        <p><strong>(一)个人信息的定义</strong></p>
-        <p>个人信息,是指以电子或者其他方式记录的能够单独或者与其他信息结合识别特定自然人身份或者反映特定自然人活动情况的各种信息,在本隐私保护政策中涉及的个人信息包括但不限于:</p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>基本信息:包括个人姓名、年龄(生日)、身份证号码、性别、个人电话号码、个人邮箱、照片、工作经历、教育经历、职业技能、所属公司;</p>
-          </li>
-          <li>
-            <p>帐号信息:包括系统帐号、地址、邮箱地址及与前述有关的密码;</p>
-          </li>
-          <li>
-            <p>个人上网记录:包括网站及APP登录记录、浏览记录、使用记录、点击记录、操作记录;</p>
-          </li>
-          <li>
-            <p>个人常用设备信息:包括硬件型号、设备地址、操作系统类型、设备识别码;</p>
-          </li>
-          <li>
-            <p>个人位置信息:包括定位信息;</p>
-          </li>
-          <li>
-            <p>个人财产信息:包括交易和支付记录;</p>
-          </li>
-          <li>
-            <p>个人聊天记录:您作为求职者/招聘者,与您的相对方通过在线沟通功能所发送的信息。</p>
-          </li>
-        </ol>
-        <p>如无特别说明,本《隐私保护政策》中使用的特定词语,均遵循以上定义。</p>
-        <p>其中,本《隐私保护政策》中,身份证号码、手机号码、照片、个人位置信息、个人财产信息属于个人敏感信息,一旦泄露、非法提供或滥用可能危害人身和财产安全,极易导致个人名誉、身心健康受到损害。</p>
-        <p>&nbsp;</p>
-        <p><strong>(二)平台收集和使用个人信息的目的</strong></p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>&nbsp;为保护您的账户安全,对您的身份进行识别、验证;</p>
-          </li>
-          <li>
-            <p>为评估您的履约能力,用于工作、招聘准入风险;</p>
-          </li>
-          <li>
-            <p>为您提供产品和服务所必须;</p>
-          </li>
-          <li>
-            <p>为保护您的资金交易安全;</p>
-          </li>
-          <li>
-            <p>为改善产品和服务、提升客户体验;</p>
-          </li>
-          <li>
-            <p>为履行法定义务(如反洗钱、网络诈骗义务);</p>
-          </li>
-          <li>
-            <p>经您许可的其他用途。</p>
-          </li>
-        </ol>
-        <p><br></p>
-        <p><strong>(三)平台如何收集和使用个人信息</strong></p>
-        <p>在您使用平台基本功能服务的过程中,需要您主动或经您授权向平台提供与您必要的信息,平台将根据您提供的信息合法留存,以供平台为您提供服务。如果您不提供相关信息,您将无法使用平台的服务具体功能。请您注意,您在使用平台服务功能时所提供的所有个人信息,除非您删除或通过系统设置拒绝我们收集,否则将在您使用我们的产品与或服务期间持续授权我们使用。部分个人信息的收集,需要您同意调取所使用设备的相应系统权限,具体参见第本条款第(四)部分需要您授权同意调取系统权限的情形。平台搜集、使用个人信息的方式如下:</p>
-        <p>1.用户注册</p>
-        <p>您首先需要注册一个门墩儿招聘帐号成为门墩儿招聘用户。当您注册时,您至少需要向我们提供您本人的手机号码,我们将通过发送短信验证码的方式来验证您的身份是否有效。如果您不提供这些信息,不影响您进行浏览、搜索。您可以自主设置您的帐号密码,并选择完善帐号信息,如绑定邮箱地址、第三方帐号(如微信、QQ、新浪微博、Apple账号)</p>
-        <p><br></p>
-        <p>2.找工作</p>
-        <p>为了更好地为您匹配并推荐职位信息并让企业招聘负责人更好地发现您,我们将收集您的基本信息、个人上网记录、个人位置信息。通过收集这些信息,平台将为您推荐更符合您的职位(例如与您所在城市、所在行业相匹配的职位)。</p>
-        <p>关于简历:由于门墩儿招聘是连接候选人与用人者的中介信息招聘平台,如您作为求职者,您必须先完善您的个人在线简历后方可投递本网站上招聘企业发布的职位。个人在线简历包括生日、年龄、开始工作时间、过往工作经历(公司名称、担任职务、在职时间段、工作内容描述)、过往教育经历(毕业学校、学历、在校时间段、在校经历描述)、联系方式(手机、电子邮箱)、期望工作(期望城市、期望薪资、期望行业、期望职位以及其他因找工作所需提供的信息。当您向门墩儿招聘传附件简历或编辑在线简历,并选择了公开您的简历时,您已经同意使用门墩儿招聘相应服务的招聘单位(及人员)可以通过我们的系统功能(如职位、行业、从业时间等关键词)发现您。购买了相应服务的招聘企业(及人员)拥有法律上许可的对您的简历进行查询、浏览、下载、使用、存储的权利;但是你仍然拥有通过系统隐私设置功能,选择是否完全公开您的简历或屏蔽某些招聘企业发现您的信息的权利。对于因此而引起的任何法律纠纷(包括但不限于招聘企业或人员错误或非法使用前述简历信息),门墩儿招聘不承担任何法律责任。</p>
-        <p>&nbsp;</p>
-        <p>3.招聘</p>
-        <p>您在代表公司注册招聘人员帐号并入驻平台时需要完成招聘者身份认证</p>
-        <p>3.1实名认证</p>
-        <p>注册招聘人员帐号后,根据法律法规要求,为确保职位发布者身份的真实性和完成实名认证的要求,您需要填写<strong>姓名和身份证号码,并完成人脸识别</strong>。</p>
-        <p><br></p>
-        <p>3.2企业认证</p>
-        <p>您代表企业注册招聘人员帐号并完成实名认证后,还需要出具您所在企业的营业执照,在审核完成后方能正式在本平台进行招聘。您作为企业招聘人员代表企业在平台上提供的信息及使用平台所产生的信息,企业均有权向平台申请获取或查看上述信息。</p>
-        <p>您理解并同意,未通过上述实名认证和企业认证的招聘者用户无法使用本平台招聘相关业务。</p>
-        <p>&nbsp;</p>
-        <p>4.浏览招聘信息和求职用户的在线简历</p>
-        <p>为了让您快速地找到您所需要职位或求职用户,我们可能会收集您使用我们的产品与或服务的设备信息(包括设备名称、设备型号、设备识别码、操作系统和应用程序版本、分辨率、服务提供商网络、浏览器类型来为您提供信息展示的最优方式。我们也会为了不断改进和优化上述的功能来使用您的上述信息。您也可以通过搜索来精准地找到您所需要的工作信息或求职用户。我们会保留您的搜索内容以方便您重复输入或为您展示与您搜索内容相关岗位或求职用户。请您注意,您的搜索关键词信息无法单独识别您的身份,不属于您的个人信息,我们有权以任何的目的对其进行使用;只有当您的搜索关键词信息与您的其他信息相互结合使用并可以识别您的身份时,则在结合使用期间,我们会将您的搜索关键词信息作为您的个人信息,与您的搜索历史记录一同按照本《隐私保护政策》对其进行处理与保护。</p>
-        <p><br></p>
-        <p>5.在线沟通</p>
-        <p>门墩儿招聘为招聘企业及候选人之间提供了在线沟通的功能,为此平台需要使用双方的帐号信息。</p>
-        <p>&nbsp;</p>
-        <p>6.视频面试功能</p>
-        <p>门墩儿招聘为招聘企业及候选人之间提供了在视频面试的功能,为此平台需要使用双方的帐号信息。</p>
-        <p>&nbsp;</p>
-        <p>7.购买服务</p>
-        <p>在您选择购买我们的增值服务时,您可以选择第三方支付机构所提供的支付服务。支付功能本身并不收集您的个人信息,但我们需要将您的订单号与交易金额信息与这些支付机构共享以实现其确认您的支付指令并完成支付。关联方指一方现在或将来控制、受控制或与其处于共同控制下的任何公司、机构以及上述公司或机构的法定代表人。控制是指直接或间接地拥有影响所提及公司管理的能力,无论是通过所有权、有投票权的股份、合同或其他被人民法院认定的方式。</p>
-        <p>&nbsp;</p>
-        <p>8.客服功能</p>
-        <p>您在使用服务的过程中,可能会向客服渠道提出任何问题、意见、建议、投诉、举报等需求。为此我们需收集、使用上述个人信息中的部分/全部相关内容。有关向第三方披露、共享您的个人信息的情况,将遵循下文中的具体约定。</p>
-        <p><br></p>
-        <p>9.改进产品与或服务所必须的功能</p>
-        <p>当您登录门墩儿招聘的网页或使用平台时,我们的服务器会自动记录您的日志信息,例如您的登录记录、输入的搜索关键词信息、点击的内容,您发布的报错信息、反馈和评论信息,您上传的图片信息、您的地址、浏览器的类型和使用的语言、硬件设备信息、操作系统的版本、网络运营商的信息、您访问服务的日期、时间、时长。为了给您带来更便捷的服务,我们可能会收集您设备上的信息并进行本地存储。我们会:</p>
-        <p>(1)基于前述信息以及您的求职意向、对您的偏好、习惯、位置作特征分析和用户画像,以便为您提供更适合您的定制化服务,例如向您展现或推荐相关程度更高(而非普遍推送)的展示结果、搜索结果、信息流或者推广信息结果,或向您发送短信、电话邀约等营销内容、广告以及您可能感兴趣的其他信息(包括与本平台、本平台的合作伙伴活动及服务相关的信息)。如果您不希望平台提供上述服务,您可以关闭相应功能(如您未登录门墩儿招聘平台帐号,我们不提供个性化推荐功能,您无须关闭)。您可以在APP端点击“我的-设置-关闭首页推荐”来关闭个性化推荐功能(温馨提示:本功能默认开启),则平台不会再提供基于用户画像展现的个性化推荐结果。对于短信的推送信息,您可以根据短信内容提示进行退订服务。对于商业性广告电话,您可以在电话中明确表示拒绝接收。</p>
-        <p>(2)用于产品功能改进:如统计我们产品的用户数量、分析产品的使用状况、网页升级改版、浏览器兼容性检测、排查崩溃原因、减少崩溃情况、监测广告投放情况、改进产品BUG、优化产品的稳定性及功能性。</p>
-        <p>&nbsp;</p>
-        <p>10.使用第三方收集、使用您的个人信息</p>
-        <p>我们提供部分功能和或服务时需要使用第三方技术。这些第三方可能会收集或使用您的部分个人信息/设备权限(包括但不限于下列内容)。我们会对相关SDK(或API)进行严格的安全检测,并采取技术手段,努力确保其按照本政策以及其他任何相关的保密和安全措施来处理个人信息。</p>
-        <p><br></p>
-        <p><br></p>
-        <p style="white-space: normal;"><br></p>
-        <p style="white-space: normal;">(31)“金融级实人认证SDK”,由“阿里云计算有限公司”提供,用于“实名认证招聘者身份”,需要收集或使用的个人信息设备权限包括:设备制造商、设备品牌、设备型号、设备名称、设备操作系统信息、设备配置信息、设备环境信息、Android ID、OAID、Google AID、WiFi信息、网络运营商信息、网络类型、网络状态。</p>
-        <p style="white-space: normal;">官网链接:<a
-            href="https://terms.aliyun.com/legal-agreement/terms/suit_bu1_ali_cloud/suit_bu1_ali_cloud202107281509_18386.html?spm=a2c4g.11186623.0.0.37c330e5MGyLy7"
-            _src="https://terms.aliyun.com/legal-agreement/terms/suit_bu1_ali_cloud/suit_bu1_ali_cloud202107281509_18386.html?spm=a2c4g.11186623.0.0.37c330e5MGyLy7"
-          >https://terms.aliyun.com/legal-agreement/terms/suit_bu1_ali_cloud/suit_bu1_ali_cloud202107281509_18386.html?spm=a2c4g.11186623.0.0.37c330e5MGyLy7</a></p>
-        <p><br></p>
-        <p>11.保障求职招聘安全所必须的功能</p>
-        <p>为了增强门墩儿招聘平台求职招聘信息发布服务的安全性,保护您或其他用户在招聘求职过程中的人身、财产安全免遭侵害,更好地预防求职诈骗等安全风险,更准确地识别违反法律法规或门墩儿招聘相关协议规则的情况。我们可能使用或整合您的帐号信息、设备信息、以及我们关联公司、合作伙伴取得您授权或依据法律共享的信息,用于判断您的帐号风险、进行身份验证、检测我们认为有风险的行为以及防范平台安全事件,并采取必要的记录、审计、分析、处置措施。</p>
-        <p>&nbsp;</p>
-        <p>12.其他使用</p>
-        <p>您通过门墩儿招聘与他人在线沟通、拨打电话以及视频面试等商务场景下产生的文字、语音及视频等形式的沟通信息,为响应维护网络秩序和防欺诈的要求,本平台将会根据《网络安全法》等法律相关规定存储,且仅用于投诉举报的处理、安全风控及离线暂存功能的实现。本平台对该信息的采集、传输及存储均会采取加密、防泄露等相关措施。</p>
-        <p><br></p>
-        <p><br></p>
-        <p style="white-space: normal;"><strong>(四)自启动和关联启动说明</strong></p>
-        <p>1.为确保本应用处于关闭或后台运营状态下可正常接收到客户端推送的广播信息,本应用须使用(自启动)能力,将存在一定频率通过形同发送广播唤醒本应用自启动或关联启动行为,是因实现功能及服务所必要的。</p>
-        <p>2.当您打开门墩儿招聘APP内容类推送消息,在征得您的明确同意后,会跳转门墩儿招聘APP打开相关内容。在未征得您同意的情况下,则不会有关联启动。</p>
-        <p><strong><br></strong></p>
-        <p>&nbsp;</p>
-        <p><strong>(五)无需征得授权的情形</strong></p>
-        <p>根据国家法律法规的相关规定及特定事项的需求,门墩儿招聘在以下情况无需经过您的授权即可收集并使用您的个人信息,您知晓并充分理解此等情形:</p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>与国家安全、国防安全有关的</p>
-          </li>
-          <li>
-            <p>与公共安全、公共卫生、重大公共利益有关的;</p>
-          </li>
-          <li>
-            <p>与犯罪侦查、起诉、审判和判决执行等有关的;</p>
-          </li>
-          <li>
-            <p>出于维护个人信息主体或其他个人的生命、财产等重大合法权益的;</p>
-          </li>
-          <li>
-            <p>所收集的个人信息是个人信息主体自行向社会公众公开的;</p>
-          </li>
-          <li>
-            <p>从合法公开披露的信息中收集的您的个人信息的,如合法的新闻报道、政府信息公开等渠道;</p>
-          </li>
-          <li>
-            <p>根据您的要求签订合同所必需的;</p>
-          </li>
-          <li>
-            <p>用于维护所提供的产品与/或服务的安全稳定运行所必需的,例如发现、处置产品与/或服务的故障;</p>
-          </li>
-          <li>
-            <p>为合法的新闻报道所必需的;</p>
-          </li>
-          <li>
-            <p>统计机构、学术研究机构、政府公共部门等基于公共利益开展统计或学术研究所必要,且对外提供学术研究或描述的结果时,对结果中所包含的个人信息进行去标识化处理的;</p>
-          </li>
-          <li>
-            <p>法律法规规定的其他情形。</p>
-          </li>
-        </ol>
-        <p>&nbsp;</p>
-        <p><strong>(六) 从第三方获取您的个人信息</strong></p>
-        <p>我们可能从第三方获取您授权共享的帐号信息(头像、昵称),并在您同意本隐私保护政策后将您的第三方帐号与您的门墩儿招聘帐号绑定,使您可以通过第三方帐号直接登录并使用我们的产品与/或服务。我们会将依据与第三方的约定、对个人信息来源的合法性进行确认后,在符合相关法律和法规规定的前提下,使用您的这些个人信息。</p>
-        <p>&nbsp;</p>
-        <p><strong>(七)个人信息去标识化后的使用</strong></p>
-        <p>在收集您的个人信息后,我们可以通过技术手段对数据进行去标识化处理,去标识化处理的信息将无法识别主体。您了解并同意,在此情况下我们有权使用已经去标识化的信息;并对您的个人信息进行脱敏处理的前提下,我们有权对用户数据库进行分析并予以商业化的利用。比如,我们会对我们服务使用情况进行统计,并可能会与公众或第三方共享这些统计信息,以展示互联网行业及招聘领域发展趋势等,但这些统计信息不包含您的任何身份识别信息。</p>
-        <p>&nbsp;</p>
-        <p>如果您对我们收集和使用您的个人信息有任何疑问或需要提供进一步的信息,请通过本《隐私保护政策》公布的联系方式与我们联系。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>三、我们如何使用Cookie和同类技术</strong></span></p>
-        <p>为确保网站正常运转,我们会在您的计算机或移动设备上存储名为 Cookie 的小数据文件。Cookie 通常包含用户身份标识符、城市名称以及一些字符。Cookie主要的功能是能够存储您的偏好,便于您使用网站产品和服务,以及帮助网站统计独立访客数量。运用Cookie技术,我们能够为您提供更加周到的服务。我们不会将 Cookie 用于本《隐私保护政策》所述目的之外的任何用途。您可根据自己的偏好管理或删除 Cookie。有关详情,请参见 【AboutCookies.org】。您可以清除计算机上保存的所有 Cookie,大部分网络浏览器都设有阻止 Cookie 的功能。但如果您这么做,则需要在每一次访问我们的网站时亲自更改用户设置,但您可能因为该修改,无法登录或使用依赖于Cookie的百度提供的服务或功能。 您可以通过更改您的浏览器设置限制门墩儿招聘对Cookie的使用。以【Chrome】浏览器为例,您可以在【Chrome】浏览器右上方的下拉菜单的“浏览器设置”中,通过“【设置-高级-清楚浏览数据】”,选择清除您的Cookie。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>四、我们如何共享、转让、公开披露您的个人信息</strong></span></p>
-        <p>我们不会向任何第三方共享、转让您的个人信息,除非经过您本人事先授权同意,或者共享、转让的个人信息是去标识化处理后的信息,且共享第三方无法重新识别此类信息的自然人主体。</p>
-        <p>1.共享</p>
-        <p><br></p>
-        <p>当【软件服务提供商、智能设备提供商或系统服务提供商】与我们联合为您提供服务时,当您需要使用地理位置功能时,为实现这一功能,我们可能会收集您的位置信息及相关设备信息(包括硬件型号、操作系统版本号、国际移动设备身份识别码(IMEI)、网络设备硬件地址(MAC))经过去标识化后并提供给前述提供商。</p>
-        <p>目前,我们的授权合作伙伴包括以下类型:</p>
-        <p>• 服务平台或服务提供商。门墩儿招聘各产品接入了丰富的第三方服务。当您选择使用该第三方服务时,您授权我们将该信息提供给第三方服务平台或服务提供商,以便其基于相关信息为您提供服务,包括认证服务提供商,当您绑定门墩儿招聘与认证平台帐号时,我们将弹出授权确认页面,在向您告知收集上述信息并得到您授权的情况下,我们会将您的简历信息提供给认证平台,用于评价您的信用分。</p>
-        <p>• 软硬件/系统服务提供商。当第三方软硬件/系统产品或服务与门墩儿招聘的产品或服务结合为您提供服务时,经您授权,我们会向第三方软硬件/系统服务提供商提供您必要的个人信息,以便您使用服务,或用于我们分析产品和服务使用情况,来提升您的使用体验。</p>
-        <p>• 广告、咨询类服务商/广告主。未经您授权,我们不会将您的个人信息与提供广告、咨询类服务商共享。但我们可能会将经处理无法识别您的身份且接收方无法复原的信息,包括经匿名化处理的用户画像,与广告或咨询类服务商或广告主共享,以帮助其在不识别您个人的前提下,提升广告有效触达率,以及分析我们的产品和服务使用情况。<br><br></p>
-        <p>1.3 对我们与之共享个人信息的公司、组织和个人,我们会与其签署严格的保密协定,并要求第三方以不低于本《隐私保护政策》所要求的保密和安全措施来处理该些信息。<br></p>
-        <p><br></p>
-        <p>2. 转让</p>
-        <p>我们不会将您的个人信息转让给除门墩儿招聘及其关联公司外的任何公司、组织和个人,但以下情形除外:</p>
-        <p>2.1 事先获得您的明确授权或同意;</p>
-        <p>2.2 满足法律法规、法律程序的要求或强制性的政府要求或司法裁定;</p>
-        <p>2.3 如果我们或我们的关联公司涉及合并、分立、清算、资产或业务的收购或出售等交易,您的个人信息有可能作为此类交易的一部分而被转移,我们将确保该等信息在转移时的机密性,并要求新的持有您个人信息的公司、组织继续受此隐私保护政策的约束,否则我们将要求该公司、组织重新向您征求授权同意。<br></p>
-        <p><br></p>
-        <p>3. 公开披露</p>
-        <p>我们仅会在以下情形下,公开披露您的个人信息:</p>
-        <p>3.1 获得您的明确同意;</p>
-        <p>3.2 基于法律法规、法律程序、诉讼或政府主管部门强制性要求下。<br></p>
-        <p><br></p>
-        <p>4. 共享、转让、公开披露个人信息时事先征得授权同意的例外</p>
-        <p>在以下情形中,共享、转让、公开披露您的个人信息无需事先征得您的授权同意:</p>
-        <p>4.1 与国家安全、国防安全直接相关的;</p>
-        <p>4.2 与公共安全、公共卫生、重大公共利益直接相关的;</p>
-        <p>4.3 与犯罪侦查、起诉、审判和判决执行等直接相关的;</p>
-        <p>4.4 出于维护您或其他个人的生命、财产等重大合法权益但又很难得到本人同意的;</p>
-        <p>4.5 您自行向社会公众公开的个人信息;</p>
-        <p>4.6 从合法公开披露的信息中收集个人信息的,如合法的新闻报道、政府信息公开等渠道。</p>
-        <p>4.7 根据个人信息主体要求签订和履行合同所必需的;</p>
-        <p>4.8 用于维护所提供的产品或服务的安全稳定运行所必需的,包括发现、处置产品或服务的故障;</p>
-        <p>4.9 法律法规规定的其他情形。</p>
-        <p>根据法律规定,共享、转让经去标识化处理的个人信息,且确保数据接收方无法复原并重新识别个人信息主体的,不属于个人信息的对外共享、转让及公开披露行为,对此类数据的保存及处理将无需另行向您通知并征得您的同意。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>五、我们如何保存及保护您的个人信息</strong></span></p>
-        <p>1.保存期限</p>
-        <p>您在使用门墩儿招聘产品及服务期间,我们将持续为您保存您的个人信息。如果您注销帐户或主动删除上述信息,我们将依据网络安全法等法律法规规定保存您的信息。在您注销帐户或主动删除上述信息后,我们不会再对您的个人信息进行商业化使用,但我们可能会对您的个人信息进行删除或匿名化处理后使用。</p>
-        <p>&nbsp;</p>
-        <p>2. 保存地域</p>
-        <p>您的个人信息均储存于中华人民共和国境内。如部分产品或服务涉及跨境,我们需要向境外传输您的个人信息,我们会严格按照法律法规的规定执行,并保证您的个人信息安全。<br></p>
-        <p><br></p>
-        <p>3. 一般而言,我们仅为实现目的所必需的最短时间保留您的个人信息,下列情况下,我们有能因需符合法律要求,更改个人信息的存储时间:(1)为遵守适用的法律法规等有关规定;</p>
-        <p>(2)遵守法院判决、裁定或其他法律程序的规定;</p>
-        <p>(3)为遵守相关政府机关或法定授权组织的要求;</p>
-        <p>(4)我们有理由确信需要遵守法律法规等有关规定;</p>
-        <p>(5)为执行相关服务协议或本《隐私保护政策》、维护社会公共利益,为保护们的客户、我们或我们的关联公司、其他用户或雇员的人身财产安全或其他合法权益所合理必需的用途。</p>
-        <p>当我们的产品或服务发生停止运营的情形时,我们将采取例如,推送通知、公告等形式通知您,并在合理的期限内删除或匿名化处理您的个人信息。<br></p>
-        <p><br></p>
-        <p>4. 保护措施</p>
-        <p>4.1 我们已采取符合业界标准、合理可行的安全防护措施保护您的信息,防止个人信息遭到未经授权访问、公开披露、使用、修改、损坏或丢失。平台会采取一切合理可行的措施,保护您的个人信息。例如,在您的浏览器与服务器之间交换数据时受SSL协议加密保护;我们同时对门墩儿招聘网站提供HTTPS协议安全浏览方式;我们会使用加密技术提高个人信息的安全性;我们会使用受信赖的保护机制防止个人信息遭到恶意攻击;我们会部署访问控制机制,尽力确保只有授权人员才可访问个人信息;以及我们会举办安全培训课程,加强员工对于保护个人信息重要性的认识。</p>
-        <p><br></p>
-        <p>4.2 我们从组织建设、制度设计、人员管理、产品技术等方面多维度提升整个系统的安全性。目前,我们的重要信息系统已经通过网络安全等级保护的测评。<br><br></p>
-        <p>4.3 请您理解,由于技术的限制以及可能存在的各种恶意手段,有可能出现平台无法合理预见、防范、避免、控制的以外情况。我们会采取合理可行的措施,尽力避免收集无关的个人信息。我们只会在达成本《隐私保护政策》所述目的所需的期限内保留您的个人信息(除非法律有强制的存留要求)。<br><br></p>
-        <p>4.4 互联网并非绝对安全的环境,使用门墩儿招聘平台服务时,我们强烈建议您不要使用非门墩儿招聘平台推荐的通信方式发送您的信息。您可以通过我们的服务建立联系和相互分享。当您通过我们的服务创建交流、分享时,您可以自主选择沟通、分享的对象,作为能够看到您的联络方式、交流信息或分享内容等相关信息的第三方。<br><br></p>
-        <p>4.5 在使用门墩儿招聘服务进行沟通时,请您妥善保护自己的个人信息,仅在必要的情形下向他人提供。如您发现自己的个人信息尤其是您的帐号或密码发生泄露,请您立即通过第十章公布的联系方式联络我们,以便我们根据您的申请采取相应措施。<br><br></p>
-        <p>4.6请注意,您在使用我们服务时自愿共享甚至公开分享的信息,可能会涉及您或他人的个人信息甚至个人敏感信息,如您在评论、沟通时选择上传包含个人信息的图片。请您更加谨慎地考虑,是否在使用我们的服务时共享甚至公开分享相关信息。请使用复杂密码,协助我们保证您的帐号安全。我们将尽力保障您发送给我们的任何信息的安全性。<br></p>
-        <p><br></p>
-        <p>5. 安全事件通知</p>
-        <p>5.1 我们会制定网络安全事件应急预案,及时处置系统漏洞、计算机病毒、网络攻击、网络侵入等安全风险,在发生危害网络安全的事件时,我们会立即启动应急预案,采取相应的补救措施,并按照规定向有关主管部门报告。<br><br></p>
-        <p>5.2 个人信息泄露、毁损、丢失属于公司级特大安全事件,我们会负责定期组织工作组成员进行安全预案演练,防止此类安全事件发生。若一旦不幸发生,我们将按照最高优先级启动应急预案,由安全部、政府关系部、法务部等多个部门组成应急响应小组,在最短时间内追溯原因并减少损失。<br><br></p>
-        <p>5.3 在不幸发生个人信息安全事件后,我们将按照法律法规的要求,及时通过邮件、短信或电话等方式向您告知安全事件的基本情况和可能的影响、我们已采取或将要采取的处理措施、您可自主防范和降低的风险的建议、对您的补救措施等。我们将及时将事件相关情况通过上述方式告知您,难以逐一告知时我们会采取合理、有效的方式发布公告。同时,我们还将按照监管部门要求,主动上报个人信息安全事件的处置情况。</p>
-        <p>我们将不定期更新并公开安全风险、个人信息安全影响评估报告等有关内容,您可通过门墩儿招聘公告方式获得。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>六、您控制个人信息的权利</strong></span></p>
-        <p>按照中国相关的法律、法规、标准,以及其他国家、地区的通行做法,我们保障您对自己的个人信息行使以下权利:1. 访问和修改您的个人信息<br>(1) 访问修改姓名</p>
-        <p>可以在【我的门墩儿招聘&gt;编辑简历&gt;基本信息】中显示和修改</p>
-        <p>(2) 访问和修改性别</p>
-        <p>可以在【我的门墩儿招聘&gt;编辑简历&gt;基本信息】中显示和修改</p>
-        <p>(3) 访问和修改简历内容</p>
-        <p>可以在【我的门墩儿招聘&gt;编辑简历&gt;】中显示和修改</p>
-        <p>(4) 访问和修改手机号</p>
-        <p>可以在【我的门墩儿招聘&gt;编辑简历&gt;基本信息】中更换手机号</p>
-        <p>您在使用我们的产品和服务过程中产生的其他个人信息,只要我们不需要过多投入,我们会向您提供。如果您想行使数据访问权,请通过本《隐私保护政策》的“十、如何联系我们”中公布的联系方式与我们联系。</p>
-        <p>您发现我们处理的关于您的个人信息有错误时,您有权对错误或不完整的信息作出更正或更新,您可以通过上述段落中列明的方式提出更正或补充申请。为保障安全,我们将在您行使更正权前对您的身份进行验证。<br></p>
-        <p><br></p>
-        <p>2. 删除您的个人信息<br>您可以通过“1.&nbsp;访问和修改您的个人信息”中列明的方式或本《隐私保护政策》公布的联系方式随时与我们联系:</p>
-        <p>在以下情形中,您可以向我们提出删除个人信息的请求,但已做数据匿名化处理或法律法规另有规定的除外:</p>
-        <p>2.1 如果我们违反法律法规或与您的约定收集、使用、与他人共享或转让您的个人信息</p>
-        <p>2.2 如果我们违反法律法规规定或与您的约定,公开披露您的个人信息,您有权要求我们立即停止公开披露的行为,并发布通知要求相关接收方删除相应的信息</p>
-        <p>2.3 我们没有征求您的明确同意,收集了您的个人信息&nbsp;</p>
-        <p>2.4 我们违反了与您的约定来使用和处理您的个人信息</p>
-        <p>2.5 您注销了门墩儿招聘帐号、卸载或者不再使用我们的产品(或服务)</p>
-        <p>2.6 我们停止对您提供服务<br></p>
-        <p><br></p>
-        <p>3. 改变授权范围</p>
-        <p>3.1 改变或撤回敏感信息权限</p>
-        <p>您可以在设备本身操作系统中关闭地理位置、相册、摄像头、麦克风权限改变同意范围或撤回您的授权。</p>
-        <p>3.2 拒接受推送及营销信息</p>
-        <p>您可以通过手机设置关闭“推送通知”拒绝消息的推送,通过回复“TD”退订我们的营销短信。</p>
-        <p>3.3 请您理解,特定的业务功能和服务将需要您的信息才能完成,当您撤回同意或授权后,我们无法继续为您提供撤回同意或授权所对应的服务,也将不再处理您相应的个人信息。但您撤回同意或授权的决定,不会影响此前基于您的同意或授权而开展的个人信息处理。<br></p>
-        <p><br></p>
-        <p>4. 注销您的帐号</p>
-        <p>4.2 如您需注销企业帐号,可联系客服 400-826-0101,我们将在核实信息后3个工作日内完成注销。</p>
-        <p>您注销帐号的行为是不可逆的,一旦您的帐号被注销,我们将不再为您提供门墩儿招聘产品与/或服务,并根据法律的要求删除您的个人信息,或对其进行匿名化处理。</p>
-        <p><br></p>
-        <p>5. 提前获知产品和服务停止运营</p>
-        <p>门墩儿招聘愿一直陪伴您,若因特殊原因导致门墩儿招聘平台被迫停止运营,我们将按照法律法规的要求,在产品和/或服务的主页面或站内信或向您发送电子邮件或其他合适的能触达您的方式通知您,并将停止对您个人信息的收集,同时会按照法律规定对所持有的您的个人信息进行删除或匿名化处理。</p>
-        <p><br></p>
-        <p>6. 响应您的上述请求</p>
-        <p>6.1 为保障安全,您需要提供书面请求,或以其他方式证明您的身份。我们可能会先要求您验证自己的身份,然后再处理您的请求。</p>
-        <p>6.2 对于您合理的请求,我们原则上不收取费用,但对多次重复、超出合理限度的请求,我们将视情况收取一定成本费用。对于那些无端重复、需要过多技术手段(例如,需要开发新系统或从根本上改变现行惯例)、给他人合法权益带来风险或者非常不切实际(例如,涉及备份磁带上存放的信息)、违反法律法规、公序良俗的请求,我们可能会予以拒绝。<br></p>
-        <p><br></p>
-        <p>7. 响应请求的例外</p>
-        <p>在以下情形中,按照法律法规要求,我们将无法响应您的上述请求:</p>
-        <p>(1)与国家安全、国防安全直接相关的;</p>
-        <p>(2)与公共安全、公共卫生、重大公共利益直接相关的;</p>
-        <p>(3)与犯罪侦查、起诉、审判和执行判决等直接相关的;</p>
-        <p>(4)我们有充分证据表明您存在主观恶意或滥用权利的(如您的请求将危害公共安全和其他人合法权益,或您的请求超出了一般技术手段和商业成本可覆盖的范围);</p>
-        <p>(5)响应个人信息主体的请求将导致您或其他个人、组织的合法权益受到严重损害的;</p>
-        <p>(6)涉及商业秘密的。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>七、我们如何处理未成年人的个人信息</strong></span></p>
-        <p>门墩儿招聘非常重视对未成年人信息的保护。</p>
-        <p>基于我们的产品、网站和服务的性质,我们不向16周岁以下的未成年人提供服务,因此无法收集相关信息。若您是已满16周岁不满18周岁的未成年人,建议您请您的监护人仔细阅读本《隐私保护政策》,并在征得您的监护人同意的前提下使用我们的产品和/或服务或向我们提供信息。</p>
-        <p>如您的监护人不同意您按照本《隐私保护政策》使用我们的服务或向我们提供信息,请您立即终止使用我们的服务并及时通知我们,以便我们采取相应的措施。</p>
-        <p>如果监护人发现我们在未获监护人同意的情况下收集了未成年人的个人信息,请通过本《隐私保护政策》公布的联系方式联系我们,我们会尽快删除相关数据。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>八、您的个人信息如何进行跨境转移</strong></span></p>
-        <p>原则上,我们在中国境内收集和产生的个人信息仅存储在中国境内。如部分产品或服务涉及跨境,我们需要向境外传输您的个人信息,我们会严格按照法律法规的规定执行,并保证您的个人信息安全。</p>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>九、本《隐私保护政策》如何更新</strong></span></p>
-        <p>我们可能根据国家法律法规变化或服务运营需要适时修订本《隐私保护政策》内容。如该等变更会导致您在本《隐私保护政策》项下权利的实质变化,我们将在变更生效前,通过【推送站内通知、电子邮件、短信或网站公告】等方式通知您。在此期间,您应不时关注相关公告、提示信息及协议、规则等相关内容的变动。</p>
-        <p>若您不同意该等变更应停止使用门墩儿招聘平台产品和服务,或通过本《隐私保护政策》公布的联系方式要求暂时封停、注销您的帐号,平台将停止收集您的相关个人信息;若您继续使用我们的产品和/或服务,即表示您同意受修订后的本《隐私保护政策》的约束。</p>
-        <p><br></p>
-        <p>本《隐私保护政策》所指的重大变更包括但不限于:</p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>我们的服务模式发生重大变化。如处理个人信息的目的、处理的个人信息类型、个人信息的使用方式等;</p>
-          </li>
-          <li>
-            <p>个人信息共享、转让或公开披露的主要对象发生变化;</p>
-          </li>
-          <li>
-            <p>您参与个人信息处理方面的权利及其行使方式发生重大变化;</p>
-          </li>
-          <li>
-            <p>其他可能对您的个人信息权益产生重大影响的变化时;</p>
-          </li>
-          <li>
-            <p>个人信息出境情况发生变更时。</p>
-          </li>
-        </ol>
-        <p>&nbsp;</p>
-        <p><span style="color: --var(--v-primary-base);"><strong>十一、争议解决</strong></span></p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>本协议之效力、解释、变更、执行与争议解决均适用中华人民共和国法律,如无相关法律规定的,则应参照行业惯例。</p>
-          </li>
-          <li>
-            <p>因本协议产生之争议,应依照中华人民共和国法律予以处理,协议双方应向苏州识喜识谊信息科技有限公司所在地有管辖权的法院起诉。</p>
-          </li>
-        </ol>
-        <p>&nbsp;</p>
-        <p>附录1:定义</p>
-        <p>本《隐私保护政策》中使用的特定词语,具有如下含义:</p>
-        <ol
-          class=" list-paddingleft-2"
-          style="list-style-type: decimal;"
-        >
-          <li>
-            <p>“我们”或“平台”或“门墩儿招聘公司”,指苏州识喜识谊信息科技有限公司。</p>
-          </li>
-          <li>
-            <p>&nbsp;“您”或“用户”,指使用我们的产品或服务的注册用户以及收费服务的购买方。</p>
-          </li>
-          <li>
-            <p>“门墩儿招聘平台”,指门墩儿招聘网站(https://www.mendunerhr.com)及门墩儿招聘手机客户端、门墩儿招聘微信小程序。</p>
-          </li>
-          <li>
-            <p>“门墩儿招聘关联方、合作方”,指我们的关联公司(包括先之教育、乔邦猎头)、投资公司、合作伙伴及其他受信任的第三方供应商、服务商及代理商。</p>
-          </li>
-          <li>
-            <p>“个人信息”,指以电子或者其他方式记录的能够单独或者与其他信息结合识别特定自然人身份或者反映特定自然人活动情况的各种信息。个人信息包括个人基本信息、个人身份信息、个人生物识别信息、网络身份标识信息、个人健康生理信息、个人教育工作信息、个人财产信息、个人通信信息、联系人信息、个人上网记录、个人常用设备信息、个人位置信息。为免疑义,个人信息包括但不限于个人敏感信息。</p>
-          </li>
-          <li>
-            <p>“个人信息主体”,指个人信息所标识的自然人。</p>
-          </li>
-          <li>
-            <p>“个人敏感信息”,指一旦泄露、非法提供或滥用可能危害人身和财产安全,极易导致个人名誉、身心健康受到损害或歧视性待遇等的个人信息。个人敏感信息包括个人财产信息、个人健康生理信息、个人生物识别信息、个人身份信息、网络身份标识信息。</p>
-          </li>
-          <li>
-            <p>“去标识化”,指通过对个人信息的技术处理,使其在不借助额外信息的情况下,无法识别个人信息主体的过程。</p>
-          </li>
-          <li>
-            <p>“匿名化”,指通过对个人信息的技术处理,使得个人信息主体无法被识别,且处理后的信息不能被复原的过程。</p>
-          </li>
-          <li>
-            <p>“中国”或“中国境内”,指中华人民共和国大陆地区,仅为本《隐私保护政策》之目的,不包含香港特别行政区、澳门特别行政区和台湾地区。</p>
-          </li>
-        </ol>
-      </div>
+      <h1 class="segment">隐私政策</h1>
+      <h2 class="subtitle text-size"><span class="text-font">引言</span></h2>
+      <p class="text-color"><span class="text-font">苏州识喜识谊信息科技有限公司(“识喜识谊”、“我们”、“我们的”)尊重您的隐私,致力于保护您在使用我们的网站www.menduner.com、企业公众服务号、小程序、其他线上产品和服务(“网站”)、在您注册网站会员时、或在您以其他方式与我们互动时,提供给我们、或我们收集的属于您的个人信息的隐私性、保密性和安全性。</span></p>
+      <p class="text-color"><span class="text-font">本网站关注每一位用户的权益,珍视您的隐私,此隐私保障政策解释了我们的个人信息实际操作和您能够选择的个人信息被使用的方式。此隐私保障政策是我们对您个人信息保护的承诺,并已被所有识喜识谊其关联公司或子公司所采纳。</span></p>
+      <p class="text-color"><span class="text-font">在下列情形下,您将被要求同意此隐私保障政策中的各项条款:注册会员、享受会员服务、注册加入活动或促销活动、通过网站与我们联系或适用法律法规所要求的其他情况。除此之外,您对本网站的继续使用将视为您已同意该隐私保障政策的各项条款。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">数据使用</span></h2>
+      <p class="text-color"><span class="text-font">我们给您提供的服务将基于您提供的数据。</span></p>
+      <p class="text-color"><span class="text-font">在您确定使用我们的服务,以及您使用服务的方式及设置后,我们将确定如何使用您的个人数据。为更好为您提供服务,我们在使用您的个人数据进行服务时,将借助智能系统进行处理。</span></p>
+      <p class="text-color"><span class="text-font">为更好提供服务,我们将对服务内容进行更新,由此造成的数据采集内容及使用方式的变更,我们将及时通知您,同时可能会对本政策进行修改。</span></p>
+      <p class="text-color"><span class="text-font">我们在使用您的个人信息时将以合理、合法为原则。我们将在以下几个方面使用您的个人信息。</span></p>
+      <p class="text-color"><span class="text-font">1. 我们收集的个人信息将被用于确保我们产品和服务的功能和安全、验证您的身份、防止并追究欺诈或其他不当使用的情形。</span></p>
+      <p class="text-color"><span class="text-font">2. 我们收集的个人信息将被用于我们的产品和服务开发,尽管一般情况下,我们为此目的仅使用综合信息和统计性信息。</span></p>
+      <p class="text-color"><span class="text-font">3. 我们收集的个人信息将被用于与您进行交流,例如在本网站产品或服务更新、发布的第一时间向您发出通知。</span></p>
+      <p class="text-color"><span class="text-font">4. 我们所收集的个人信息将被用于进行产品的个性化设计,并向您提供更优化的服务。</span></p>
+      <p class="text-color"><span class="text-font">5. 为了更好的为您提供服务,本网站可能将您同意公开的姓名、简历信息、个人标签、职位等信息推送给适合的招聘或求职用户。</span></p>
+      <p class="text-color"><span class="text-font">6. 如果您参与本网站举办的调查、抽奖、竞赛或类似推广活动,我们会将您提供的个人信息用于管理此类活动。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">信息分享</span></h2>
+      <p class="text-color"><span class="text-font">1. 与本公司其他产品或关联公司产品或共享:为更好的向您提供服务,推荐您可能感兴趣的信息,您的部分个人信息可能会共享给本公司其他产品或者关联公司的产品。我们只会共享必要的个人信息,例如共享您的行为偏好,以向您推荐同类信息。</span></p>
+      <p class="text-color"><span class="text-font">2. 为更好提供服务,我们可能会在《用户协议》框架内及法律允许的范围内将您的信息与第三方信息进行匹配,从而为您量身定制相关信息。在使用过程中,我们会采取一切必要措施保证您的个人数据安全。随着我们业务的持续发展,我们以及我们的关联公司有可能进行合并、收购、资产转让或类似的交易,我们收集的相关信息有可能作为此类交易的一部分而被转移。</span></p>
+      <p class="text-color"><span class="text-font">3. 法律声明</span></p>
+      <p class="text-color"><span class="text-font">如果我们或我们的关联公司依照法律、法规、法院命令、监管机构命令的要求,或根据政府的行为、监管要求或请求,或为了保护您、我们和他人的权利与安全,我们也许需要共享您的数据。</span></p>
+      <p class="text-color"><span class="text-font">我们将根据法律及相关政策要求,在以下情况下公开您的信息: (1) 相关政府执法部门在执法过程中需要进行协助的;(2) 根据《用户协议》可以公开的;(3) 针对任何第三方主张或指控进行调查与自我辩护;(4) 保护我们“服务”的安全性或完整性;或 (5) 行使或保护本网站、“会员”、职员或他人的权利和安全。在应法律及相关政策要求需要提供您个人数据时,我们将根据情况尽力通知您。</span></p>
+      <p class="text-color"><span class="text-font">4. 管理变更或出售</span></p>
+      <p class="text-color"><span class="text-font">将来我们可能会被出售、合并等管理主体变更时,您的数据依然会被新的管理主体共享,但本政策会被继续遵守。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">您的选择与义务</span></h2>
+      <p class="text-color"><span class="text-font">1. 数据保留</span></p>
+      <p class="text-color"><span class="text-font">在您使用我们账号的过程中,您的数据将被我们保留。此数据包含您提供的数据及我们经过推断而产生的数据等。</span></p>
+      <p class="text-color"><span class="text-font">2. 访问与控制个人数据的权利</span></p>
+      <p class="text-color"><span class="text-font">对于您的个人数据,您可以随时查看和更改,同时我们对于您数据的收集、使用、共享提供了多种选择。</span></p>
+      <p class="text-color"><span class="text-font">数据管理:</span></p>
+      <p class="text-color"><span class="text-font">删除数据:您可以要求我们清除或删除您的全部或部分个人数据。</span></p>
+      <p class="text-color"><span class="text-font">更改或纠正数据: 您可以通过您的帐号编辑您的部分个人数据。</span></p>
+      <p class="text-color"><span class="text-font">限制对数据的使用:您可以要求我们停止使用您的全部或部分个人数据。</span></p>
+      <p class="text-color"><span class="text-font">3. 注销帐号</span></p>
+      <p class="text-color"><span class="text-font">在您被注销帐号之后,我们仍然会保留您的部分数据。</span></p>
+      <p class="text-color"><span class="text-font">在您注销您的本网站帐号后24小时内,您的个人数据将不再向其他人显示。以下情形除外:</span></p>
+      <p class="text-color"><span class="text-font">法律或相关政策要求、遵守监管要求、解决争议、保证安全、防止欺诈与滥用、执行《用户协议》或满足您向我们“退订”某些消息的请求,即使您注销帐号,本网站仍可能保留您的部分个人数据。在您的帐号注销后,我们将保留不可识别个人的信息。</span></p>
+      <p class="text-color"><span class="text-font">您已与他人分享的信息在您注销帐号或从职业档案或收件箱中删除后,将仍对他人公开,并且我们无法控制其他“会员”从我们的“服务”中复制的信息。与注销帐号相关的群组内容、评分或点评内容,会以“未知用户”列为内容来源。您的职业档案可能继续显示在其他方的服务中,直到其更新缓存。</span></p>
+      <h2 class="subtitle text-size"><span class="text-font">联系信息</span></h2>
+      <p class="text-color"><span class="text-font">您可以联系我们或使用其他方式来解决任何投诉。</span></p>
+      <p class="text-color"><span class="text-font">若您对本《隐私政策》有任何疑问或投诉,您可以通过邮件来联系我们。</span></p>
     </div>
   </div>
 </template>

Разница между файлами не показана из-за своего большого размера
+ 0 - 114
src/views/login/components/userAgreement.vue


+ 8 - 1
src/views/login/forgotPassword.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="box">
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
     <div class="content pa-10">
       <div class="resume-header">
         <div class="resume-title">
@@ -17,10 +17,17 @@ defineOptions({ name: 'forgotPassword'})
 import { useRouter, useRoute } from 'vue-router'
 import navBar from '@/layout/personal/navBar.vue'
 import editPasswordPage from '@/views/login/components/editPassword.vue'
+import { ref, onMounted } from 'vue'
 
 const router = useRouter()
 const route = useRoute()
 
+
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
 </script>
 
 <style scoped lang="scss">

+ 7 - 2
src/views/login/forgotPasswordEnt.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="box">
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
     <div class="content pa-10">
       <div class="resume-header">
         <div class="resume-title">企业修改密码</div>
@@ -23,10 +23,15 @@ import { useRouter } from 'vue-router'
 import navBar from '@/layout/personal/navBar.vue'
 import editPasswordPage from '@/views/login/components/editPasswordEnt.vue'
 import Verify from '@/components/Verifition'
-import { ref } from 'vue'
+import { ref, onMounted } from 'vue'
 
 const router = useRouter()
 
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
 
 // 验证码
 const verify = ref()

+ 8 - 2
src/views/login/index.vue

@@ -65,7 +65,7 @@
         <about></about>
       </div>
     </div>
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
   </div>
   <Verify
     ref="verify"
@@ -78,7 +78,7 @@
 
 <script setup>
 defineOptions({ name: 'login-index' })
-import { nextTick, ref } from 'vue'
+import { nextTick, ref, onMounted } from 'vue'
 import passwordFrom from './components/passwordPage.vue'
 import phoneFrom from '@/components/VerificationCode'
 import { useUserStore } from '@/store/user'
@@ -95,6 +95,12 @@ import about from '@/views/about/index.vue'
 import { useRoute } from 'vue-router'; const route = useRoute()
 import Verify from '@/components/Verifition'
 
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
+
 const { t } = useI18n()
 const router = useRouter()
 const tab = ref(1)

+ 9 - 3
src/views/recruit/enterprise/resume/components/table.vue

@@ -170,9 +170,15 @@ const handleCancelEliminate = async (item) => {
 // 查看简历
 const handlePreviewResume = async ({ url, id }) => {
   if (!url || !id) return
-  await personJobCvLook(id)
-  emit('refresh')
-  previewFile(url)
+  try {
+    const res = await personJobCvLook(id)
+    if (res) {
+      emit('refresh')
+      previewFile(url)
+    }
+  } catch (err) {
+    console.log(err)
+  }
 }
 
 // 邀请面试

+ 40 - 8
src/views/recruit/enterprise/staffChangePassword/index.vue

@@ -1,12 +1,14 @@
 <!--  -->
 <template>
-  <v-card class="pa-5 card-box d-flex flex-column align-center">
+  <v-card class="pa-5 d-flex flex-column align-center" :class="{'card-box': !props.hideWidth}" :elevation="props.elevation">
     <div class="resume-header mt-15 mb-8" style="width: 700px;">
       <div class="resume-title">修改登录密码</div>
     </div>
     <CtForm ref="CtFormRef" :items="formItems" style="width: 700px;"></CtForm>
-    <v-btn class="buttons mt-5" color="primary" @click.stop="handleCommit">{{ $t('common.save') }}</v-btn>
-    <v-btn class="mt-3" color="primary" variant="text" @click="router.go(-1)">返回</v-btn>
+    <div class="mb-15">
+      <v-btn class="buttons mt-5" color="primary" :loading="loading" @click.stop="handleCommit">保存</v-btn>
+      <v-btn v-if="!props.hideGoBack" class="mt-3" color="primary" variant="text" @click="router.go(-1)">返回</v-btn>
+    </div>
   </v-card>
 
   <Loading :visible="overlay"></Loading>
@@ -15,12 +17,31 @@
 <script setup>
 import { ref } from 'vue'
 import Snackbar from '@/plugins/snackbar'
-import { useI18n } from '@/hooks/web/useI18n'
+// import { useI18n } from '@/hooks/web/useI18n'
 import { useRouter } from 'vue-router'; const router = useRouter()
 import { entUpdatePassword } from '@/api/enterprise'
+const props = defineProps({
+  entChangePassword: {
+    type: Boolean,
+    default: false
+  },
+  hideGoBack: {
+    type: Boolean,
+    default: false
+  },
+  hideWidth: {
+    type: Boolean,
+    default: false
+  },
+  elevation: {
+    type: String,
+    default: '2'
+  }
+})
+
 defineOptions({name: 'staff-changePassword'})
 
-const { t } = useI18n()
+// const { t } = useI18n() // 强制修改密码不能使用
 
 const CtFormRef = ref()
 const formItems = ref({
@@ -60,7 +81,7 @@ const formItems = ref({
   ]
 })
 
-
+const loading = ref(false)
 const handleCommit = async () => {
   const { valid } = await CtFormRef.value.formRef.validate()
   if (!valid) return
@@ -73,10 +94,21 @@ const handleCommit = async () => {
   // 邮箱登录密码校验
   if (params.password !== params.passwordConfirm) return Snackbar.warning('两次输入的密码不一致,请确认')
 
+  loading.value = true
   await entUpdatePassword(params)
-  Snackbar.success(t('common.submittedSuccessfully'))
-  router.go(-1)
+  Snackbar.success('修改成功')
+  if (props.entChangePassword) {
+    localStorage.setItem('entUpdatePassword', 'doNotNeedChange')
+    setTimeout(() => {
+      loading.value = false
+      window.location.href = '/recruit/enterprise'
+    }, 1500)
+  } else {
+    loading.value = false
+    router.go(-1)
+  }
 }
+
 </script>
 <style lang="scss" scoped>
 </style>

+ 58 - 0
src/views/recruit/personal/PersonalCenter/inviteRecord/index.vue

@@ -0,0 +1,58 @@
+<template>
+  <div class="resume-box">
+    <div class="resume-header mb-3">
+      <div class="resume-title">邀请新用户注册记录</div>
+    </div>
+    <CtTable
+      class="mt-3"
+      :items="items"
+      :headers="headers"
+      :loading="false"
+      :elevation="0"
+      :isTools="false"
+      :showPage="true"
+      :total="total"
+      :page-info="query"
+      itemKey="id"
+      @pageHandleChange="handleChangePage"
+    >
+    </CtTable>
+  </div>
+</template>
+
+<script setup>
+defineOptions({ name: 'inviteRecord'})
+import { ref } from 'vue'
+import { getInviteRecord } from '@/api/integral.js'
+
+const total = ref(0)
+const items = ref([])
+const query = ref({
+  pageNo: 1,
+  pageSize: 10
+})
+const headers = [
+  { title: '用户名', key: 'name', sortable: false },
+  { title: '用户名', key: 'name', sortable: false },
+  { title: '性别', key: 'sex', sortable: false },
+  { title: '求职状态', key: 'jobStatus', sortable: false },
+  { title: '工作经验', key: 'expType', sortable: false },
+  { title: '学历', key: 'eduType', sortable: false }
+]
+
+
+const getData = async () => {
+  const res = await getInviteRecord(query.value)
+  console.log(res, 'getData')
+}
+// getData()
+
+const handleChangePage = (e) => {
+  query.value.pageNo = e.page
+  getData()
+}
+</script>
+
+<style scoped lang="scss">
+
+</style>

BIN
src/views/recruit/personal/home/img/adImg.jpg


+ 2 - 1
src/views/recruit/personal/home/index.vue

@@ -25,6 +25,7 @@
   </div>
   <!-- 快速填写简易人才信息-弹窗 -->
   <simplePage v-if="showSimplePage" :closeable="true" closeText="暂时跳过" @close="handleInfoClose" @simpleInfoReady="handleUpdateInfo"></simplePage>
+  <!-- 广告弹窗 -->
   <v-dialog
     v-model="adDialog"
     max-width="900"
@@ -32,7 +33,7 @@
   >
     <div style="cursor: pointer; margin: 0 auto; position: relative;">
       <v-img src="./img/adImg.jpg" :width="adImgWidth" style="height: auto;border-radius: 4px;" @click="adClick"></v-img>
-      <span style="color: white; font-size: 40px; position: absolute; right: 0px; top: 0px;" class="mdi mdi-close-circle-outline cursor-pointer px-3" @click="adDialog = false"></span>
+      <span style="color: #ddddddcc; font-size: 32px; position: absolute; right: 0px; top: 0px;" class="mdi mdi-close-circle-outline cursor-pointer px-3" @click="adDialog = false"></span>
     </div>
   </v-dialog>
 </template>

+ 8 - 2
src/views/register/company.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="box" style="overflow-x: hidden;">
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
     <PhonePage v-if="!valid" :isCompany="true" @success="handleValidate" :isLogin="query.login ? true : false"></PhonePage>
   </div>
 </template>
@@ -9,10 +9,16 @@
 defineOptions({ name: 'registerCompany'})
 import { getUserRegisterEnterpriseApply } from '@/api/personal/user'
 import navBar from '@/layout/personal/navBar.vue'
-import { ref } from 'vue'
+import { ref, onMounted } from 'vue'
 import PhonePage from './person.vue'
 import { useRouter } from 'vue-router'
 
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
+
 const router = useRouter()
 const query = router.currentRoute.value.query
 

+ 8 - 2
src/views/register/person.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="box">
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
     <div class="content pa-10">
       <div class="content-title text-center mt-4">{{ isLogin ? '请输入您申请企业账号时填入的手机号进行效验' : '请输入手机号码进行注册认证'}}</div>
       <phoneFrom class="mt-10" ref="phoneRef" @handleEnter="handleRegister" :phone="phone"></phoneFrom>
@@ -17,7 +17,7 @@
 
 <script setup>
 defineOptions({ name: 'registerPerson'})
-import { ref } from 'vue'
+import { ref, onMounted } from 'vue'
 import { useRouter } from 'vue-router'
 import phoneFrom from '@/components/VerificationCode'
 import { useUserStore } from '@/store/user'
@@ -25,6 +25,12 @@ import Snackbar from '@/plugins/snackbar'
 import { checkEmail } from '@/utils/validate'
 import navBar from '@/layout/personal/navBar.vue'
 
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
+
 const emit = defineEmits(['success'])
 const props = defineProps({
   isCompany: {

+ 8 - 1
src/views/register/select.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="register-box">
-    <navBar :showLoginBtn="false" class="navBar"></navBar>
+    <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
     <div class="register-content">
       <h2 style="color: #666; font-weight: 400;">请选择您当前注册的身份</h2>
       <div class="d-flex mt-16">
@@ -21,6 +21,13 @@
 import navBar from '@/layout/personal/navBar.vue'
 defineOptions({ name: 'register-select'})
 import { useRouter } from 'vue-router'
+import { ref, onMounted } from 'vue'
+
+const isMobile = ref(false)
+onMounted(() => {
+  const userAgent = navigator.userAgent
+  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)
+})
 
 const router = useRouter()
 

Некоторые файлы не были показаны из-за большого количества измененных файлов