云员工详情--查看简历--bug修复

main
lijingyu007 11 months ago
parent 812f83bde9
commit 1228d13ed7
  1. BIN
      public/assets/ability/cloudMore1.png
  2. BIN
      public/assets/ability/det1.png
  3. BIN
      public/assets/ability/det2.png
  4. BIN
      public/assets/ability/det3.png
  5. BIN
      public/assets/ability/det4.png
  6. BIN
      public/assets/crowd/edu.png
  7. BIN
      public/assets/home/12.png
  8. 4
      src/api/tester/TesterApply.js
  9. 26
      src/page/homepage/personability/ability.vue
  10. 34
      src/page/homepage/personability/abilityApply.vue
  11. 10
      src/page/homepage/personability/abilityMore.vue
  12. 258
      src/page/homepage/personability/abilityMoreDetail.vue
  13. 40
      src/page/personalpage/commonheader/personalheader.vue
  14. 35
      src/page/personalpage/home/resume.vue
  15. 2
      src/page/personalpage/home/userUpgrade.vue
  16. 147
      src/page/personalpage/testcrowd/TesterDetail.vue
  17. 2
      src/router/router.js

Binary file not shown.

After

Width:  |  Height:  |  Size: 710 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 488 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 434 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 336 KiB

@ -148,9 +148,9 @@ export function couldUserInfoAdd(data) {
} }
// 查询简历信息 // 查询简历信息
export function getCloudAll() { export function getCloudAll(id) {
return request({ return request({
url: '/personal/resume', url: '/personal/resume/'+id,
method: 'get', method: 'get',
}) })
} }

@ -5,6 +5,10 @@
<img class="ijaoricon" src="/assets/home/fbrwicon.png" alt="" /> <img class="ijaoricon" src="/assets/home/fbrwicon.png" alt="" />
提交用人需求 提交用人需求
</div> --> </div> -->
<div class="zxzx2" @click="openDialog1('测试工程师')">
提交用人需求
<img class="cloudMore" style="width:38px;height:38px" src="/assets/ability/cloudMore1.png" alt="">
</div>
<div class="zxzx1" @click="lookMore"> <div class="zxzx1" @click="lookMore">
浏览云员工 浏览云员工
<img class="cloudMore" src="/assets/ability/cloudMore.png" alt=""> <img class="cloudMore" src="/assets/ability/cloudMore.png" alt="">
@ -642,11 +646,29 @@ export default {
.zxzx1 { .zxzx1 {
z-index: 2147483639; z-index: 2147483639;
width: 180px; width: 172px;
height: 68px;
position: fixed;
right: 16px;
top: 515px;
font-weight: 500;
font-size: 17px;
color: #ffffff;
cursor: pointer;
background: linear-gradient(0deg, #5ea6fd, #1a81f9);
box-shadow: 0px 1px 20px 1px rgba(13, 92, 187, 0.4);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
}
.zxzx2 {
z-index: 2147483639;
width: 172px;
height: 68px; height: 68px;
position: fixed; position: fixed;
right: 16px; right: 16px;
top: 500px; top: 425px;
font-weight: 500; font-weight: 500;
font-size: 17px; font-size: 17px;
color: #ffffff; color: #ffffff;

@ -456,7 +456,7 @@ import {
couldBookAdd, couldBookAdd,
couldBookUpdate, couldBookUpdate,
couldApply, couldApply,
delBook delBook,
} from '@/api/tester/TesterApply' } from '@/api/tester/TesterApply'
export default { export default {
@ -465,7 +465,9 @@ export default {
return { return {
active: 0, active: 0,
// //
certifform: {}, certifform: {
},
certifRules: { certifRules: {
name: [ name: [
{ required: true, message: '真实姓名不能为空', trigger: 'blur' }, { required: true, message: '真实姓名不能为空', trigger: 'blur' },
@ -550,7 +552,7 @@ export default {
}, },
}, },
computed: { computed: {
...mapGetters(['userinform', 'token']), ...mapGetters(['userinform','userId', 'token']),
}, },
created() { created() {
this.getCloudAllList() this.getCloudAllList()
@ -567,7 +569,7 @@ export default {
}, },
// //
getCloudAllList() { getCloudAllList() {
getCloudAll().then((res) => { getCloudAll(this.userId).then((res) => {
// //
this.projectList = res.experience.filter((it) => it.type == 0) this.projectList = res.experience.filter((it) => it.type == 0)
if (!this.projectList.length) { if (!this.projectList.length) {
@ -582,17 +584,19 @@ export default {
this.educationList = [{}] this.educationList = [{}]
} }
// //
this.userForm = res.personalInfo if (res.personalInfo) {
this.province = this.userForm.city.split('-')[0] this.userForm = res.personalInfo
this.city = this.userForm.city.split('-')[1] this.province = this.userForm.city.split('-')[0]
this.city = this.userForm.city.split('-')[1]
// 1 2 0 // 1 2 0
if (res.personalInfo.status === 0) { if (res.personalInfo.status === 0) {
} else if (res.personalInfo.status === 1) { } else if (res.personalInfo.status === 1) {
this.active = 6 this.active = 6
} else if (res.personalInfo.status === 2) { } else if (res.personalInfo.status === 2) {
this.active = 6 this.active = 6
} else { } else {
}
} }
// //
@ -843,8 +847,6 @@ export default {
}) })
} }
}) })
}, },
// //
addEducation() { addEducation() {

@ -6,7 +6,7 @@
<div class="searchbtn" @click="searchFn">搜索</div> <div class="searchbtn" @click="searchFn">搜索</div>
</div> </div>
<div class="contentBox container"> <div class="contentBox container">
<div class="jianliboxitem" v-for="it in peopleList" :key="it.url"> <div class="jianliboxitem" v-for="it in peopleList" :key="it.user_id" @click="doDetail(it)">
<div class="jlboxtop"> <div class="jlboxtop">
<img class="jlboxtopimg" :src="it.avatar" alt="" /> <img class="jlboxtopimg" :src="it.avatar" alt="" />
<div class="jlboxtoptit">{{ it.name }}</div> <div class="jlboxtoptit">{{ it.name }}</div>
@ -80,6 +80,14 @@ export default {
}) })
}) })
}, },
doDetail(it) {
this.$router.push({
path: '/ability/more/detail',
query: {
id: it.user_id,
},
})
},
handleSizeChange(val) { handleSizeChange(val) {
this.queryParams.pageSize = val this.queryParams.pageSize = val
this.getList() this.getList()

@ -0,0 +1,258 @@
<template>
<div style="background: #f2f3f7; overflow: hidden">
<div class="userDetail container">
<div class="topNA">
<div class="topNAT">
<span class="topNAT1">{{ userInfo.name }}</span>
<span class="topNAT2">{{ userInfo.testSkills }}</span>
</div>
<div class="topNAB">
<div class="topNABit">
<img src="/assets/ability/det1.png" alt="" />
{{ city }}
</div>
<div class="topNABit">
<img src="/assets/ability/det2.png" alt="" />
{{ educationList[0].name }}
</div>
<div class="topNABit">
<img src="/assets/ability/det3.png" alt="" />
{{ educationList[0].major }}
</div>
<div class="topNABit">
<img src="/assets/ability/det4.png" alt="" />
{{ educationList[0].education }}({{
educationList[0].startTime + '-' + educationList[0].endTime
}})
</div>
</div>
</div>
<div class="content">
<div class="contentitem">
<div class="contentitemT">
<div class="contentTline"></div>
个人优势
</div>
<div class="contentitemB">
{{ userInfo.personalAdvantage }}
</div>
</div>
<div class="contentitem">
<div class="contentitemT">
<div class="contentTline"></div>
工作经历
</div>
<div v-for="it in workList" :key="it.caseId">
<div class="contentitemM">
<div class="contentitemML">公司名称{{ it.name }}</div>
<div class="contentitemML">职位{{ it.title }}</div>
<div class="contentitemMR">{{ it.startTime }}-{{ it.endTime }}</div>
</div>
<div class="contentitemB"><span class="contentitemBF">工作内容</span>{{ it.intro }}</div>
</div>
</div>
<div class="contentitem">
<div class="contentitemT">
<div class="contentTline"></div>
项目经历
</div>
<div v-for="it in projectList" :key="it.caseId">
<div class="contentitemM">
<div class="contentitemML">公司名称{{ it.name }}</div>
<div class="contentitemML">担任角色{{ it.title }}</div>
<div class="contentitemMR">{{ it.startTime }}-{{ it.endTime }}</div>
</div>
<div class="contentitemB" style="margin-bottom: 20px">
<span class="contentitemBF">应用技术</span>{{ it.applyTech }}
</div>
<div class="contentitemB"><span class="contentitemBF">工作内容</span>{{ it.intro }}</div>
</div>
</div>
<div class="contentitem">
<div class="contentitemT">
<div class="contentTline"></div>
资格证书
</div>
<div class="contentitemTBook">
<div class="contentitemTBookit" v-for="it in certificateList" :key="it.fileId">
<div class="contentitemTBookitT">{{ it.fileName }}</div>
<img class="contentitemTBookitTimg" :src="it.fileUrl" alt="" />
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import { getCloudAll } from '@/api/tester/TesterApply'
export default {
data() {
return {
userInfo: {},
base: process.env.VUE_APP_BASE_API,
projectList: [],
workList: [],
educationList: [],
certificateList: [],
city: '',
}
},
mounted() {},
created() {
this.getCloudAllList()
},
computed: {
...mapGetters(['userinform', 'token']),
},
methods: {
getCloudAllList() {
getCloudAll(this.$route.query.id).then((res) => {
//
this.projectList = res.experience.filter((it) => it.type == 0)
this.workList = res.experience.filter((it) => it.type == 1)
this.educationList = res.experience.filter((it) => it.type == 2)
if (!this.educationList.length) {
this.educationList = [
{
name: '未填写',
major: '未填写',
education: '未填写',
startTime: '未填写',
endTime: '未填写',
},
]
}
//
this.certificateList = res.credentials
//
if (res.personalInfo) {
this.userInfo = res.personalInfo
this.city = this.userInfo.city.split('-')[1] || '无'
}
})
},
},
}
</script>
<style scoped>
.container {
width: 1200px;
margin: auto;
}
.topNA {
height: 130px;
background: linear-gradient(270deg, #fdeeeb, #eaf1fc);
border-radius: 8px 8px 0 0;
margin-top: 18px;
padding: 0 40px;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: center;
}
.topNAT1 {
font-weight: bold;
font-size: 28px;
color: #1a1a1a;
margin-right: 50px;
}
.topNAT2 {
font-weight: bold;
font-size: 22px;
color: #de8423;
}
.topNAB {
display: flex;
align-items: center;
flex-wrap: wrap;
margin-top: 20px;
}
.topNABit {
display: flex;
align-items: center;
margin-right: 30px;
font-weight: 500;
font-size: 15px;
color: #4d4d4d;
}
.topNABit img {
margin-right: 5px;
}
.content {
border-radius: 0 0 8px 8px;
padding: 0 40px;
box-sizing: border-box;
margin-bottom: 30px;
background: #ffffff;
overflow: hidden;
}
.contentitem {
border-bottom: 1px solid #f2f2f2;
padding-bottom: 25px;
box-sizing: border-box;
}
.contentitemT {
display: flex;
align-items: center;
font-weight: bold;
font-size: 20px;
color: #1a1a1a;
margin: 25px 0;
}
.contentTline {
width: 4px;
height: 17px;
background: #0066eb;
border-radius: 2px;
margin-right: 6px;
}
.contentitemB {
font-weight: 500;
font-size: 16px;
color: #666666;
}
.contentitemM {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 25px;
}
.contentitemML {
font-weight: bold;
font-size: 18px;
color: #333333;
}
.contentitemMR {
font-weight: 500;
font-size: 16px;
color: #999999;
}
.contentitemBF {
font-weight: bold;
font-size: 16px;
color: #333333;
}
.contentitemTBook {
display: flex;
flex-wrap: wrap;
}
.contentitemTBookit {
margin-right: 30px;
}
.contentitemTBookitT {
font-weight: 500;
font-size: 16px;
color: #4d4d4d;
margin-bottom: 10px;
}
.contentitemTBookitTimg {
width: 313px;
height: 220px;
}
</style>

@ -104,6 +104,20 @@
> >
<!-- 企业用户--新菜单 --> <!-- 企业用户--新菜单 -->
<template v-if="userinform.companyStatus == 2"> <template v-if="userinform.companyStatus == 2">
<el-submenu index="7">
<template slot="title">
<i class="el-icon-user-solid"></i>
<span slot="title">个人中心</span>
</template>
<el-menu-item-group>
<el-menu-item index="/console/profile">
<span>基本信息</span>
</el-menu-item>
<el-menu-item index="/console/message">
<span>消息管理</span>
</el-menu-item>
</el-menu-item-group>
</el-submenu>
<el-menu-item index="/console/myparticipate"> <el-menu-item index="/console/myparticipate">
<i class="el-icon-document-copy"></i> <i class="el-icon-document-copy"></i>
<span>我的众包</span> <span>我的众包</span>
@ -148,12 +162,18 @@
<i class="el-icon-tickets"></i> <i class="el-icon-tickets"></i>
<span slot="title">我收到的评价</span> <span slot="title">我收到的评价</span>
</el-menu-item> </el-menu-item>
</template>
<template v-else>
<el-submenu index="7"> <el-submenu index="7">
<template slot="title"> <template slot="title">
<i class="el-icon-user-solid"></i> <i class="el-icon-user-solid"></i>
<span slot="title">个人中心</span> <span slot="title">个人中心</span>
</template> </template>
<el-menu-item-group> <el-menu-item-group>
<el-menu-item index="/console/resume" v-if="userinform.testerStatus == 2">
<span>个人简历</span>
</el-menu-item>
<el-menu-item index="/console/profile"> <el-menu-item index="/console/profile">
<span>基本信息</span> <span>基本信息</span>
</el-menu-item> </el-menu-item>
@ -162,8 +182,6 @@
</el-menu-item> </el-menu-item>
</el-menu-item-group> </el-menu-item-group>
</el-submenu> </el-submenu>
</template>
<template v-else>
<el-menu-item index="/console/myparticipate"> <el-menu-item index="/console/myparticipate">
<i class="el-icon-document-copy"></i> <i class="el-icon-document-copy"></i>
<span>我的众包</span> <span>我的众包</span>
@ -206,23 +224,7 @@
<i class="el-icon-s-order"></i> <i class="el-icon-s-order"></i>
<span>我的订单</span> <span>我的订单</span>
</el-menu-item> </el-menu-item>
<el-submenu index="7">
<template slot="title">
<i class="el-icon-user-solid"></i>
<span slot="title">个人中心</span>
</template>
<el-menu-item-group>
<el-menu-item index="/console/resume">
<span>个人简历</span>
</el-menu-item>
<el-menu-item index="/console/profile">
<span>基本信息</span>
</el-menu-item>
<el-menu-item index="/console/message">
<span>消息管理</span>
</el-menu-item>
</el-menu-item-group>
</el-submenu>
</template> </template>
</el-menu> </el-menu>
</div> </div>

@ -2,8 +2,9 @@
<div class="allbox"> <div class="allbox">
<div class="userAbility"> <div class="userAbility">
<div class="toptttt"> <div class="toptttt">
<img src="/assets/ability/metop.png" style="width:24px;height:28px;margin-right:15px" alt=""> <img src="/assets/ability/metop.png" style="width: 24px; height: 28px; margin-right: 15px" alt="" />
云员工个人简历</div> 云员工个人简历
</div>
<div class="contentBig"> <div class="contentBig">
<div class="contentBox"> <div class="contentBox">
<div class="active4"> <div class="active4">
@ -14,12 +15,12 @@
</div> </div>
<div class="workIt"> <div class="workIt">
<el-form :rules="userRules" :model="userForm" label-width="80px" ref="userRef"> <el-form :rules="userRules" :model="userForm" label-width="80px" ref="userRef">
<div class="flexbox"> <div class="flexbox">
<el-form-item label="姓名: "> <el-form-item label="姓名: ">
<span>张三(已实名)</span> <span>{{userForm.name}}</span>
</el-form-item> </el-form-item>
<el-form-item label="性别: " style="margin-left: 40px"> <el-form-item label="性别: " style="margin-left: 40px">
<span></span> <span>{{userForm.sex}}</span>
</el-form-item> </el-form-item>
</div> </div>
<el-form-item label="所在城市" prop="city"> <el-form-item label="所在城市" prop="city">
@ -294,7 +295,7 @@ import {
couldBookAdd, couldBookAdd,
couldBookUpdate, couldBookUpdate,
couldApply, couldApply,
delBook delBook,
} from '@/api/tester/TesterApply' } from '@/api/tester/TesterApply'
export default { export default {
@ -388,7 +389,7 @@ export default {
}, },
}, },
computed: { computed: {
...mapGetters(['userinform', 'token']), ...mapGetters(['userinform','userId', 'token']),
}, },
created() { created() {
this.getCloudAllList() this.getCloudAllList()
@ -405,7 +406,7 @@ export default {
}, },
// //
getCloudAllList() { getCloudAllList() {
getCloudAll().then((res) => { getCloudAll(this.userId).then((res) => {
// //
this.projectList = res.experience.filter((it) => it.type == 0) this.projectList = res.experience.filter((it) => it.type == 0)
if (!this.projectList.length) { if (!this.projectList.length) {
@ -420,18 +421,14 @@ export default {
this.educationList = [{}] this.educationList = [{}]
} }
// //
this.userForm = res.personalInfo if (res.personalInfo) {
this.province = this.userForm.city.split('-')[0] this.userForm = res.personalInfo
this.city = this.userForm.city.split('-')[1] this.province = this.userForm.city.split('-')[0]
this.city = this.userForm.city.split('-')[1]
}
// 1 2 0 // 1 2 0
if (res.personalInfo.status === 0) {
} else if (res.personalInfo.status === 1) {
this.active = 6
} else if (res.personalInfo.status === 2) {
this.active = 6
} else {
}
// //
this.certificateList = res.credentials.map((it) => { this.certificateList = res.credentials.map((it) => {
@ -681,8 +678,6 @@ export default {
}) })
} }
}) })
}, },
// //
addEducation() { addEducation() {

@ -336,7 +336,7 @@ export default {
allFileGetFlag: false, allFileGetFlag: false,
testerdata: null, testerdata: null,
testerStatus: 0, testerStatus: 0,
baseUrl: process.env.VUE_APP_BASE_TARGET, baseUrl: process.env.VUE_APP_BASE_API,
} }
}, },
created() { created() {

@ -34,10 +34,16 @@
> >
</el-tooltip> --> </el-tooltip> -->
<img :title="testerdata.phonenumber" v-if="testerdata.phonenumber" style="width: 20px; height: 20px; margin-bottom: 0" src="/assets/crowd/phone.png" alt="" /> <img
:title="testerdata.phonenumber"
v-if="testerdata.phonenumber"
style="width: 20px; height: 20px; margin-bottom: 0"
src="/assets/crowd/phone.png"
alt=""
/>
<img v-else style="width: 25px; height: 25px" src="/assets/crowd/nophone.png" alt="" /> <img v-else style="width: 25px; height: 25px" src="/assets/crowd/nophone.png" alt="" />
<span style="margin: 0 10px; color: #808080; font-size: 14px"> l</span> <span style="margin: 0 10px; color: #808080; font-size: 14px"> l</span>
<template v-if="testerdata.commentsStar && testerdata.commentsStar !=0"> <template v-if="testerdata.commentsStar && testerdata.commentsStar != 0">
<span class="pingjiarate">评分{{ testerdata.commentsStar }}</span> <span class="pingjiarate">评分{{ testerdata.commentsStar }}</span>
<span v-if="crowdtype == 'myPublish'" style="margin: 0 10px; color: #808080; font-size: 14px"> <span v-if="crowdtype == 'myPublish'" style="margin: 0 10px; color: #808080; font-size: 14px">
l</span l</span
@ -77,37 +83,19 @@
{{ testerdata.personalAdvantage }} {{ testerdata.personalAdvantage }}
</p> </p>
<p v-else style="color: #333333; text-align: left; margin: 20px 30px"></p> <p v-else style="color: #333333; text-align: left; margin: 20px 30px"></p>
<div class="sintitle">
<img style="width: 23px; height: 24px" src="/assets/crowd/jnzs.png" alt="" />
<p>技能证书</p>
</div>
<div>
<!-- height: 150px; -->
<img
v-if="testerdata.certificate_url"
style="width: 213px; object-fit: contain; margin: 20px 0"
:src="testerdata.certificate_url"
alt=""
/>
<p v-else style="text-align: left; margin-left: 30px"></p>
</div>
<div class="sintitle"> <div class="sintitle">
<img style="width: 15px; height: 22px" src="/assets/crowd/gzjl.png" alt="" /> <img style="width: 15px; height: 22px" src="/assets/crowd/gzjl.png" alt="" />
<p>工作经历</p> <p>工作经历</p>
</div> </div>
<div <div v-if="workList.length">
@click="nextpro('work')" <div class="newfont" v-for="it in workList" :key="it.caseId">
v-if="testerdata.work_experience" <div>公司名称{{ it.name }}</div>
v-html="testerdata.work_experience.replace(/(\r\n|\n|\r)/gm, '<br />')" <div>在职时间{{ it.startTime }} - {{ it.endTime }}</div>
style=" <div>职位名称{{ it.title }}</div>
color: #333333; <div>工作内容{{ it.intro }}</div>
white-space: nowrap; </div>
margin: 20px 30px; </div>
text-align: left;
line-height: 25px;
font-size: 14px;
"
></div>
<p v-else style="color: #333333; margin: 20px 30px; text-align: left"></p> <p v-else style="color: #333333; margin: 20px 30px; text-align: left"></p>
<!-- <div style="margin-top: 30px;"> <!-- <div style="margin-top: 30px;">
<p style="font-weight: bold;font-size:17px;color: #1A1A1A;text-align: left;margin-left: 30px;"> 项目案例</p> <p style="font-weight: bold;font-size:17px;color: #1A1A1A;text-align: left;margin-left: 30px;"> 项目案例</p>
@ -115,37 +103,42 @@
<div style="width:100%;height: 1px;background-color: #EBEBEB;margin:10px 0 19px 0;"></div> --> <div style="width:100%;height: 1px;background-color: #EBEBEB;margin:10px 0 19px 0;"></div> -->
<div class="sintitle"> <div class="sintitle">
<img style="width: 23px; height: 24px" src="/assets/crowd/projecta.png" alt="" /> <img style="width: 23px; height: 24px" src="/assets/crowd/projecta.png" alt="" />
<p>项目案例</p> <p>项目经历</p>
</div> </div>
<div v-if="projectlist.length > 0"> <div v-if="proList.length">
<div v-for="(item, key) of projectlist"> <div class="newfont" v-for="it in proList" :key="it.caseId">
<div <div>公司名称{{ it.name }}</div>
style=" <div>在职时间{{ it.startTime }} - {{ it.endTime }}</div>
display: flex; <div>担任角色{{ it.title }}</div>
justify-content: space-between; <div>应用技术{{ it.applyTech }}</div>
align-items: center; <div>工作内容{{ it.intro }}</div>
margin: 5px 10px 10px 30px; </div>
" </div>
> <p v-else style="color: #333333; margin: 20px 30px; text-align: left"></p>
<p style="font-weight: bold; font-size: 15px; margin: 0">{{ item.projectName }}</p> <div class="sintitle">
<p style="margin-right: 6px; color: #4d4d4d">{{ item.projectPeriod }}</p> <img style="width: 23px; height: 24px" src="/assets/crowd/edu.png" alt="" />
</div> <p>教育经历</p>
<p style="color: #000000; text-align: left; margin: 0 30px">{{ item.role }}</p> </div>
<p <div v-if="eduList.length">
style=" <div class="newfont" v-for="it in eduList" :key="it.caseId">
color: #595959; <div>学校名称{{ it.name }}</div>
margin-top: 25rpx; <div>在校时间{{ it.startTime }} - {{ it.endTime }}</div>
text-align: left; <div>学历{{ it.education }}</div>
margin-left: 30px; <div>专业{{ it.major }}</div>
line-height: 25px;
font-size: 14px;
"
>
{{ item.projectIntro }}
</p>
</div> </div>
</div> </div>
<p v-else style="color: #333333; margin-top: 13px; margin-left: 30px; text-align: left"></p> <p v-else style="color: #333333; margin: 20px 30px; text-align: left"></p>
<div class="sintitle">
<img style="width: 23px; height: 24px" src="/assets/crowd/jnzs.png" alt="" />
<p>技能证书</p>
</div>
<div v-if="bookList.length">
<div class="newfont" v-for="it in bookList" :key="it.fileId">
<div>证书名称{{ it.fileName }}</div>
<img :src="it.fileUrl" style="width:360px;height:150px" alt="">
</div>
</div>
<p v-else style="color: #333333; margin: 20px 30px; text-align: left"></p>
<div v-if="crowdtype == 'myPublish'"> <div v-if="crowdtype == 'myPublish'">
<div class="sintitle"> <div class="sintitle">
<img style="width: 22px; height: 22px" src="/assets/crowd/aplycom.png" alt="" /> <img style="width: 22px; height: 22px" src="/assets/crowd/aplycom.png" alt="" />
@ -206,8 +199,8 @@
</template> </template>
<script> <script>
import { getdetesterId } from '@/api/tester/CompanyApply' import { getdetesterId } from '@/api/tester/CompanyApply'
import { getMyreviewListNoToken } from '@/api/review/myreview.js' import { getMyreviewListNoToken } from '@/api/review/myreview.js'
export default { export default {
name: 'TesterDetail', name: 'TesterDetail',
props: { props: {
@ -230,6 +223,15 @@ export default {
programme: {}, // programme: {}, //
value1: '', value1: '',
viewList: [], viewList: [],
base: process.env.VUE_APP_BASE_API,
//
workList: [],
//
proList: [],
//
eduList: [],
//
bookList: [],
} }
}, },
methods: { methods: {
@ -238,21 +240,31 @@ export default {
this.open = true this.open = true
getdetesterId(this.userId, taskId).then((res) => { getdetesterId(this.userId, taskId).then((res) => {
this.testerdata = res.data this.testerdata = res.data
if (this.testerdata.avatar) {
if (this.testerdata.avatar.indexOf('/prod-api') == -1) {
this.testerdata.avatar = this.base + this.testerdata.avatar
}
}
this.projectlist = res.projectCase this.projectlist = res.projectCase
if (res.projectCase && res.projectCase.length) {
this.workList = res.projectCase.filter((it) => it.type == 1)
this.proList = res.projectCase.filter((it) => it.type == 0)
this.eduList = res.projectCase.filter((it) => it.type == 2)
}
if (res.credentials && res.credentials.length) {
this.bookList = res.credentials
}
this.programme = res.plan this.programme = res.plan
}) })
const res = await getMyreviewListNoToken(this.userId) const res = await getMyreviewListNoToken(this.userId)
this.viewList = res.rows this.viewList = res.rows
}, },
openurl(url) { openurl(url) {
this.$message.success('下载成功') this.$message.success('下载成功')
window.location.href = url window.location.href = url
}, },
// //
handleClose(done) { handleClose(done) {
this.open = false this.open = false
@ -263,6 +275,15 @@ export default {
</script> </script>
<style scoped> <style scoped>
.newfont {
font-size: 14px;
text-align: left;
color: rgb(51, 51, 51);
margin: 20px 30px;
line-height: 25px;
border-bottom: 1px solid #f2f4f7;
padding-bottom: 10px;
}
.crowdtask >>> .el-drawer__header { .crowdtask >>> .el-drawer__header {
margin-bottom: 10px; margin-bottom: 10px;
font-weight: bold; font-weight: bold;

@ -17,6 +17,7 @@ import abilityUser from "../page/homepage/personability/abilityUser.vue"
import abilityUserD from "../page/homepage/personability/abilityUserDetail.vue" import abilityUserD from "../page/homepage/personability/abilityUserDetail.vue"
import abilityMore from "../page/homepage/personability/abilityMore.vue" import abilityMore from "../page/homepage/personability/abilityMore.vue"
import abilityMoreDetail from "../page/homepage/personability/abilityMoreDetail.vue"
import abilityApply from "../page/homepage/personability/abilityApply.vue" import abilityApply from "../page/homepage/personability/abilityApply.vue"
import employ from "../page/homepage/employ/employ.vue" import employ from "../page/homepage/employ/employ.vue"
import cooperation from "../page/homepage/cooperation/cooperation.vue" import cooperation from "../page/homepage/cooperation/cooperation.vue"
@ -97,6 +98,7 @@ const router = new Router({
{ path: 'ability/user', component: abilityUser }, { path: 'ability/user', component: abilityUser },
{ path: 'ability/detail', component: abilityUserD }, { path: 'ability/detail', component: abilityUserD },
{ path: 'ability/more', component: abilityMore }, { path: 'ability/more', component: abilityMore },
{ path: 'ability/more/detail', component: abilityMoreDetail },
{ path: 'ability/apply', component: abilityApply }, { path: 'ability/apply', component: abilityApply },
// {path:'news',component:dynamics,}, // {path:'news',component:dynamics,},
// {path:'news/detail',component:industrydetails,name:'industrydynamics',}, // {path:'news/detail',component:industrydetails,name:'industrydynamics',},

Loading…
Cancel
Save