my.js 6.0 KB

1
  1. "use strict";const e=require("../../common/vendor.js"),t=require("../../common/assets.js"),o=require("../../api/student.js"),n=require("../../utils/request.js");Math||a();const a=()=>"../../components/custom-tabbar/custom-tabbar.js",i={__name:"my",setup(a){const i=e.ref(80),s=e.ref(!1),d=e.ref({id:null,name:"",avatarUrl:"",schoolName:"",education:"",educationLabel:"",jobType:"",jobTypeLabel:"",resumeFile:null,educationList:[]}),l=e.computed((()=>{if(d.value.educationList&&d.value.educationList.length>0){const e={"初中及以下":1,"高中":2,"中专":2,"大专":3,"本科":4,"硕士":5,"博士":6};let t=d.value.educationList[0],o=e[t.education]||0;for(const n of d.value.educationList){const a=e[n.education]||0;a>o&&(o=a,t=n)}return t.education||""}if(d.value.educationLabel)return d.value.educationLabel;const e=d.value.education;return e&&"0"!==e&&0!==e?/^\d+$/.test(String(e))?"":e:""})),u={1:"全职",2:"实习",3:"兼职","全职":"全职","实习":"实习","兼职":"兼职"},c=e.computed((()=>{if(d.value.jobTypeLabel)return d.value.jobTypeLabel;const e=d.value.jobType;return u[e]||e||""})),r=e.computed((()=>{if(d.value.educationList&&d.value.educationList.length>0){const e={"初中及以下":1,"高中":2,"中专":2,"大专":3,"本科":4,"硕士":5,"博士":6};let t=d.value.educationList[0],o=e[t.education]||0;for(const n of d.value.educationList){const a=e[n.education]||0;a>o&&(o=a,t=n)}return t.school||""}const e=d.value.schoolName;return!e||/^\d+$/.test(e)?"":e})),v=e.computed((()=>!!d.value.resumeFile)),m=async()=>{const t=e.index.getStorageSync("userInfo");if(t&&t.studentId){try{const e=await o.getStudent(t.studentId);if(e&&e.data){const o=e.data;d.value={id:o.id,name:o.name||t.name||"",avatarUrl:o.avatarUrl||t.avatarUrl||"",schoolName:o.schoolName||"",education:o.education||"",educationLabel:o.educationLabel||"",jobType:o.jobType||"",jobTypeLabel:o.jobTypeLabel||"",resumeFile:o.resumeFile||null,educationList:o.educationList||[]}}}catch(n){console.error("获取用户详情失败",n)}p()}};e.onMounted((async()=>{try{const t=e.index.getMenuButtonBoundingClientRect();t&&(i.value=t.bottom+10)}catch(o){console.error("导航栏高度计算失败",o)}const t=e.index.getStorageSync("userInfo");t&&t.studentId?(d.value.id=t.studentId,d.value.name=t.name||"",d.value.avatarUrl=t.avatarUrl||"",await m()):e.index.reLaunch({url:"/pages/login/login"})})),e.onShow((async()=>{const t=e.index.getStorageSync("userInfo");t&&t.studentId&&await m()})),e.onPullDownRefresh((async()=>{await m(),e.index.stopPullDownRefresh()}));const p=async()=>{try{const t=e.index.getStorageSync("userInfo");if(t&&t.studentId){const e=await o.getAppendixList(t.studentId);e&&200===e.code&&(L.value=e.data.map((e=>({id:e.id,name:e.fileName,url:e.url,ossId:e.ossId}))))}}catch(t){console.error("获取附件列表失败",t)}},g=()=>{v.value?e.index.navigateTo({url:"/pages/my/resume_view"}):s.value=!0},h=()=>{s.value=!1,e.index.navigateTo({url:"/pages/profile/profile?editMode=1"})},x=t=>{const o={collection:"/pages/my/favorites",intention:"/pages/intention/intention?editMode=1",assessment:"/pages/my/assessment-records",order:"/pages/my/orders"};o[t]&&e.index.navigateTo({url:o[t]})},f=()=>{e.index.navigateTo({url:"/pages/my/offer"})},y=()=>{e.index.navigateTo({url:"/pages/my/privacy_policy"})},L=e.ref([]),_=()=>{L.value.length>=3?e.index.showToast({title:"最多上传3份简历",icon:"none"}):e.index.chooseMessageFile({count:1,type:"file",extension:["pdf"],success:e=>{const t=e.tempFiles[0];b(t.name,t.path,t.size)}})},w=()=>{_()},b=(t,a,i)=>{if(!t.toLowerCase().endsWith(".pdf"))return void e.index.showToast({title:"仅支持 PDF 格式文件",icon:"none"});e.index.showLoading({title:"上传中..."});const s=n.UPLOAD_URL;e.index.uploadFile({url:s+"/portal/oss/upload",filePath:a,name:"file",header:{Authorization:e.index.getStorageSync("token")?`Bearer ${e.index.getStorageSync("token")}`:"",PLATFORM_CODE:"PINGTAIDUAN"},success:async n=>{const a=JSON.parse(n.data);if(200===a.code){const n=a.data.ossId;try{const a=e.index.getStorageSync("userInfo"),s=await o.addAppendix({studentId:a.studentId,ossId:n,fileName:t,fileSize:i});e.index.hideLoading(),200===s.code?(e.index.showToast({title:"上传成功",icon:"success"}),p()):e.index.showToast({title:s.msg||"保存失败",icon:"none"})}catch(s){e.index.hideLoading(),e.index.showToast({title:"服务器异常",icon:"none"})}}else e.index.hideLoading(),e.index.showToast({title:a.msg||"上传失败",icon:"none"})},fail:t=>{e.index.hideLoading(),e.index.showToast({title:"网络上传失败",icon:"none"})}})},T=()=>{e.index.showModal({title:"提示",content:"确定要退出登录吗?",success:t=>{t.confirm&&(e.index.removeStorageSync("token"),e.index.removeStorageSync("userInfo"),e.index.reLaunch({url:"/pages/login/login"}))}})};return(n,a)=>e.e({a:i.value+"px",b:d.value.avatarUrl||"/static/images/hr_avatar.svg",c:e.t(d.value.name||"加载中..."),d:t._imports_0$10,e:t._imports_0$11,f:e.o(g),g:r.value},r.value?{h:e.t(r.value)}:{},{i:l.value},l.value?{j:e.t(l.value)}:{},{k:c.value},c.value?{l:e.t(c.value)}:{},{m:t._imports_2$5,n:e.o((e=>x("collection"))),o:t._imports_3$3,p:e.o((e=>x("intention"))),q:t._imports_4$1,r:e.o((e=>x("assessment"))),s:t._imports_5$1,t:e.o((e=>x("order"))),v:e.t(L.value.length),w:e.o(_),x:e.o(w),y:L.value.length>0},L.value.length>0?{z:e.f(L.value,((t,n,a)=>({a:e.t(t.name),b:e.o((t=>(t=>{const n=L.value[t];e.index.showModal({title:"提示",content:"确定要删除这份简历吗?",success:async a=>{if(a.confirm)try{e.index.showLoading({title:"删除中..."});const a=await o.removeAppendix(n.id);e.index.hideLoading(),200===a.code?(L.value.splice(t,1),e.index.showToast({title:"已删除",icon:"none"})):e.index.showToast({title:a.msg||"删除失败",icon:"none"})}catch(i){e.index.hideLoading(),e.index.showToast({title:"网络异常",icon:"none"})}}})})(n)),t.id),c:t.id}))),A:t._imports_0$9,B:t._imports_7$1}:{},{C:t._imports_8,D:e.o(f),E:t._imports_8,F:e.o(y),G:e.o(T),H:s.value},s.value?{I:e.o((e=>s.value=!1)),J:e.o(h),K:e.o((()=>{}))}:{},{L:e.p({activeIndex:3})})}},s=e._export_sfc(i,[["__scopeId","data-v-97267b04"]]);wx.createPage(s);