yujialong 3 months ago
parent 794e386705
commit 4831798670
  1. 26
      apis/modules/article.js
  2. 54
      apis/modules/client.js
  3. 42
      apis/modules/order.js
  4. 42
      apis/modules/parner.js
  5. 12
      components/empty/empty.vue
  6. 139
      course/courseDetail/courseDetail.vue
  7. 75
      course/practiceDetail/practiceDetail.vue
  8. 4
      pages.json
  9. 47
      pages/achievement/achievement.vue
  10. 3
      pages/index/index.vue
  11. 8
      pages/person/person.vue
  12. BIN
      static/image/avatar.png
  13. BIN
      static/image/person1.png
  14. BIN
      static/image/person2.png
  15. BIN
      static/image/person3.png
  16. BIN
      static/image/person4.png
  17. BIN
      static/image/tab1-1.png
  18. BIN
      static/image/tab1.png
  19. BIN
      static/image/tab2-1.png
  20. BIN
      static/image/tab2.png
  21. BIN
      static/image/tab3-1.png
  22. BIN
      static/image/tab3.png
  23. BIN
      static/image/tab4-1.png
  24. BIN
      static/image/tab4.png
  25. 32
      user/info/info.vue
  26. 2
      user/selectAccount/selectAccount.vue
  27. 2
      user/switchAccount/switchAccount.vue

@ -1,26 +0,0 @@
import request from '@/apis/request.js'
const { get, post } = request
export const partnerOperatingList = (data) => {
return post('nakadai/nakadai/partner/article/management/partnerOperatingList', data)
}
export const findById = id => {
return post('nakadai/nakadai/applets/partner/browse?contentId=' + id)
}
export const queryClassificationByType = id => {
return post('nakadai/nakadai/partner/article/classification/queryClassificationByType?typeId=' + id)
}
export const schemeList = data => {
return post('nakadai/nakadai/partner/schemeManagement/schemeList', data)
}
export const schemeFindById = id => {
return post('nakadai/nakadai/partner/schemeManagement/findById?id=' + id)
}
export const collectCourse = (id, state) => {
return post('nakadai/nakadai/partner/article/management/collectCourse?contentId=' + id + '&state=' + state)
}

@ -1,54 +0,0 @@
import request from '@/apis/request.js'
const { get, post } = request
export const queryCustomer = (data) => {
return post('nakadai/nakadai/customer/queryCustomer', data)
}
export const list = (data) => {
return post('nakadai/nakadai/applets/customer/getCustomerListBasedOnBusinessManagerId', data)
}
export const all = (data) => {
return post('nakadai/nakadai/applets/customer/customerList', data)
}
export const queryCustomerDetails = (data) => {
return get('nakadai/nakadai/customer/queryCustomerDetails', data)
}
export const querySchool = (data) => {
return get('nakadai/nakadai/school/querySchool', data)
}
export const queryIndustryClass = (data) => {
return get('nakadai/nakadai/hrIndustryClass/queryIndustryClass', data)
}
export const queryIndustry = (data) => {
return get('nakadai/nakadai/hrIndustry/queryIndustry', data)
}
export const queryCustomerIsExists = (data) => {
return get('nakadai/nakadai/customer/queryCustomerIsExists', data)
}
export const addCustomer = (data) => {
return post('nakadai/nakadai/customer/addCustomer', data)
}
export const updateCustomer = (data) => {
return post('nakadai/nakadai/customer/updateCustomer', data)
}
export const getProductsSubscribedByCustomers = (data) => {
return get('nakadai/nakadai/customer/getProductsSubscribedByCustomers', data)
}
export const getTeamsByAccountId = (data) => {
return post('nakadai/nakadai/applets/customer/getTeamsByAccountId', data)
}
export const getTheBusinessManagerIdsUnderTheTeam = id => {
return post(`nakadai/nakadai/applets/customer/getTheBusinessManagerIdsUnderTheTeam?id=${id}`)
}

@ -1,42 +0,0 @@
import request from '@/apis/request.js'
const { get, post } = request
export const getOrderOtherTime = (data) => {
return post('nakadai/nakadai/orderOther/getOrderOtherTime', data)
}
export const add = (data) => {
return post('nakadai/nakadai/order/add', data)
}
export const update = (data) => {
return post('nakadai/nakadai/order/update', data)
}
export const getDetail = (data) => {
return get('nakadai/nakadai/order/get', data)
}
export const renew = (data) => {
return post('nakadai/nakadai/orderOther/renew', data)
}
export const list = (data) => {
return post('nakadai/nakadai/applets/order/orderList', data)
}
export const orderList = (data) => {
return post('nakadai/nakadai/order/list', data)
}
export const del = (data) => {
return post('nakadai/nakadai/order/delete', data)
}
export const miniProgramOrderRecord = (data) => {
return post('nakadai/nakadai/applets/order/miniProgramOrderRecord', data)
}
export const queryCitySettlementPrice = (mallId, provinceId, cityId) => {
return post(`nakadai/mallPrice/queryCitySettlementPrice?mallId=${mallId}&provinceId=${provinceId}&cityId=${cityId}`)
}

@ -1,42 +0,0 @@
import request from '@/apis/request.js'
const { get, post } = request
export const savePartnerAccount = (data) => {
return post('nakadai/nakadai/partnerAccount/savePartnerAccount', data)
}
export const teamList = (data) => {
return post('nakadai/nakadai/partnerAccount/partnerAccountList', data)
}
export const generateInvitationCode = accountId => {
return post(`nakadai/nakadai/partnerAccount/generateInvitationCode?accountId=${accountId}`)
}
export const treeList = (data) => {
return post('nakadai/nakadai/partnerClassification/treeList', data)
}
export const my = (data) => {
return get('nakadai/nakadai/partner-team/my', data)
}
export const mailFileSend = (data) => {
return post('nakadai/nakadai/partnerAccount/mailFileSend', data)
}
export const salesProgress = data => {
return post(`nakadai/nakadai/applets/partner/salesProgress`, data)
}
export const annualOperatingAnalysis = data => {
return post(`nakadai/nakadai/applets/partner/annualOperatingAnalysis`, data)
}
export const editProvinceCity = data => {
return post(`nakadai/nakadai/partner-team/editProvinceCity`, data)
}
export const getPartnerTeamRates = data => {
return post(`nakadai/nakadai/partner-team/getPartnerTeamRates`, data)
}

@ -1,6 +1,6 @@
<template> <template>
<view class="none"> <view class="none">
<image src="../../static/image/none.png" mode="widthFix"></image> <image class="pic" src="https://eduvessel.com/images/occupationlab/none.svg" mode="widthFix"></image>
<view class="text">{{ text }}</view> <view class="text">{{ text }}</view>
</view> </view>
</template> </template>
@ -26,15 +26,15 @@
<style scoped lang="scss"> <style scoped lang="scss">
.none { .none {
padding-top: 100rpx; padding: 100rpx 0;
text-align: center; text-align: center;
image { .pic {
width: 426rpx; width: 400rpx;
margin-bottom: 52rpx; // margin-bottom: 52rpx;
} }
.text { .text {
font-size: 28rpx; font-size: 28rpx;
color: #333; color: #6d6d6d;
} }
} }
</style> </style>

@ -2,10 +2,31 @@
<view class="wrap"> <view class="wrap">
<view class="file-wrap"> <view class="file-wrap">
<image v-if="curRow.isPic" class="pic" :src="curRow.fileUrl" mode="widthFix"></image> <image v-if="curRow.isPic" class="pic" :src="curRow.fileUrl" mode="widthFix"></image>
<video v-else-if="curRow.isVideo" class="video" :key="curRow.fileUrl" width="100%" height="100%" autoplay controls :src="curRow.fileUrl" type="video/mp4"> <video v-else-if="curRow.isVideo" class="video" :key="curRow.fileUrl" width="100%" height="100%" autoplay controls :src="curRow.fileUrl" type="video/mp4" @fullscreenchange="fullScreenChange"></video>
<!-- <source :src="curRow.fileUrl" type="video/mp4"> <!-- -->
您的终端不支持 video 标签 --> <cover-view v-if="videoFullScreen" class="select-epi">
</video> <cover-image class="icon" src="https://eduvessel.com/images/occupationlab/list.png" mode="widthFix" @click="showPlayList" />
</cover-view>
<cover-view v-if="chapterList.length && playListVisible" class="chapters-full">
<cover-view class="chapters-scroll">
<cover-view v-for="(item, i) in chapterList" :key="i" class="chapter">
<cover-view class="chapterName">{{ item.name }}</cover-view>
<cover-view class="section" v-if="item.subsectionList.length">
<cover-view v-for="(section, j) in item.subsectionList" :key="j"class="sectionName" :class="{ active: curLink === `${item.name}${section.name}` }" @click="secClick(section, item)">
<cover-image v-if="section.fileType === 'pptx'" class="ext" src="https://izhixinyun.com/images/exts/ppt.png" alt="" />
<cover-image v-else-if="section.fileType === 'mp4'" class="ext" src="https://izhixinyun.com/images/exts/video.png" alt="" />
<cover-image v-else-if="section.fileType === 'doc' || section.fileType === 'docx'" class="ext"
src="https://izhixinyun.com/images/exts/word.png" alt="" />
<cover-image v-else-if="section.fileType === 'txt'" class="ext" src="https://izhixinyun.com/images/exts/txt.png" alt="" />
<cover-image v-else-if="section.fileType === 'pdf'" class="ext" src="https://izhixinyun.com/images/exts/pdf.png" alt="" />
<cover-image v-else class="ext" src="https://izhixinyun.com/images/exts/pic.png" alt="" />
<cover-view class="text">{{ section.name }}</cover-view>
</cover-view>
</cover-view>
</cover-view>
</cover-view>
</cover-view>
</view> </view>
<view class="detail"> <view class="detail">
@ -45,25 +66,32 @@
</view> </view>
<!-- 练习成绩 --> <!-- 练习成绩 -->
<view v-show="curTab === 2 && practices.length" class="list"> <view v-show="curTab === 2">
<view v-for="(item, i) in practices" :key="i" class="item" @click="toPrac(item)"> <view v-if="practices.length" class="list">
<view class="c-name">{{ item.projectName }}</view> <view v-for="(item, i) in practices" :key="i" class="item" @click="toPrac(item)">
<view class="line">最高分{{ item.hightScore }}&emsp;&emsp;练习次数{{ item.practiceNum }}</view> <view class="c-name">{{ item.projectName }}</view>
<view class="line">累计练习时长小时{{ item.hightScore }}</view> <view class="line">最高分{{ item.hightScore }}&emsp;&emsp;练习次数{{ item.practiceNum }}</view>
<view class="line">最近练习时间{{ item.lastTime }}</view> <view class="line">累计练习时长小时{{ item.hightScore }}</view>
<view class="btn">练习情况</view> <view class="line">最近练习时间{{ item.lastTime }}</view>
<view class="btn">练习情况</view>
</view>
</view> </view>
<empty v-else />
</view> </view>
<!-- 考核成绩 --> <!-- 考核成绩 -->
<view v-show="curTab === 3 && ass.length" class="list"> <view v-show="curTab === 3">
<view v-for="(item, i) in ass" :key="i" class="item" @click="toDetail(item)"> <view v-if="ass.length" class="list">
<view class="c-name">{{ item.experimentalName }}</view> <view v-for="(item, i) in ass" :key="i" class="item" @click="toDetail(item)">
<view class="line">得分{{ item.score }}&emsp;&emsp;耗时{{ item.timeSum }}min</view> <view class="c-name">{{ item.experimentalName }}</view>
<view class="line">考核开始时间{{ item.startTime }}</view> <view class="line">得分{{ item.score }}&emsp;&emsp;耗时{{ item.timeSum }}min</view>
<view class="line">考核结束时间{{ item.submitTime }}</view> <view class="line">考核开始时间{{ item.startTime }}</view>
<view class="btn">成绩报告</view> <view class="line">考核结束时间{{ item.submitTime }}</view>
<view class="btn">成绩报告</view>
</view>
</view> </view>
<empty v-else />
</view> </view>
</view> </view>
</view> </view>
@ -129,6 +157,8 @@
playAuth: '', playAuth: '',
player: null, player: null,
curRow: {}, curRow: {},
playListVisible: false,
videoFullScreen: false
} }
}, },
watch: { watch: {
@ -250,7 +280,6 @@
// //pdf // //pdf
handleFileType(row) { handleFileType(row) {
if (this.$util.exts.video.includes(row.fileType)) { if (this.$util.exts.video.includes(row.fileType)) {
// this.$set(row, 'isVideo', true)
row.isVideo = true row.isVideo = true
} else if (this.$util.exts.img.includes(row.fileType)) { } else if (this.$util.exts.img.includes(row.fileType)) {
row.isPic = true row.isPic = true
@ -259,6 +288,7 @@
}, },
// //
secClick(row) { secClick(row) {
this.playListVisible = false
this.handleFileType(row) this.handleFileType(row)
// debugger // debugger
if (this.curRow.isVideo) { if (this.curRow.isVideo) {
@ -282,19 +312,31 @@
vid: row.fileId, vid: row.fileId,
playauth: this.playAuth, playauth: this.playAuth,
encryptType: 1 // encryptType: 1 //
}); })
} }
}); })
}).catch(res => { }); }).catch(res => { });
} }
} }
}, },
//
fullScreenChange(e) {
console.log(444, e)
const { fullScreen } = e.detail
this.playListVisible = false
this.videoFullScreen = fullScreen
},
//
showPlayList() {
this.playListVisible = !this.playListVisible
}
} }
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.file-wrap { .file-wrap {
position: relative;
.pic, .video { .pic, .video {
width: 100%; width: 100%;
height: 400rpx; height: 400rpx;
@ -302,8 +344,63 @@
.pic { .pic {
object-fit: cover; object-fit: cover;
} }
.select-epi {
z-index: 1000;
position: fixed;
top: 30rpx;
right: -5rpx;
padding: 8rpx;
background-color: rgba(0, 0, 0, .6);
border-top-left-radius: 10rpx;
border-bottom-left-radius: 10rpx;
.icon {
width: 20rpx;
height: 20rpx;
}
}
}
.chapters-full {
position: fixed;
top: 0;
right: 0;
width: 50vw;
height: 100vh;
padding: 15rpx;
color: #fff;
background-color: rgba(0, 0, 0, .6);
box-sizing: border-box;
.chapters-scroll {
height: 95vh;
overflow: scroll;
}
.chapter {
margin-bottom: 10rpx;
.chapterName {
display: flex;
justify-content: space-between;
font-size: 14rpx;
}
.section {
margin: 5rpx 0;
}
.sectionName {
display: flex;
align-items: center;
padding: 0 6rpx;
margin: 8rpx 0;
font-size: 12rpx;
}
.ext {
width: 18px;
height: 18px;
margin-right: 12rpx;
}
}
} }
.tabs { .tabs {
position: sticky;
top: 0;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
margin-bottom: 32rpx; margin-bottom: 32rpx;

@ -49,7 +49,7 @@
this.cid = options.cid this.cid = options.cid
this.projectId = options.projectId this.projectId = options.projectId
this.paperId = options.paperId this.paperId = options.paperId
this.getList() this.initList()
}, },
methods: { methods: {
// //
@ -67,6 +67,11 @@
this.status = noMore ? 'noMore' : 'more' // noMore this.status = noMore ? 'noMore' : 'more' // noMore
this.reachBottom = noMore ? -1 : 0 // -1 this.reachBottom = noMore ? -1 : 0 // -1
}, },
initList() {
this.page = 1
this.reachBottom = 0
this.getList()
},
saveFile(fileData) { saveFile(fileData) {
console.log('url:', fileData) console.log('url:', fileData)
uni.downloadFile({ uni.downloadFile({
@ -99,43 +104,43 @@
}, },
// //
async toDetail(row) { async toDetail(row) {
uni.showLoading({ // uni.showLoading({
title: '加载中', // title: '',
mask: true // mask: true
}) // })
const that = this // const that = this
uni.request({ // uni.request({
header: { // header: {
token: uni.getStorageSync('token') // token: uni.getStorageSync('token')
}, // },
url: 'https://izhixinyun.com/exam/exam/paper/exportExamPaperReport?reportId=73157', // url: 'https://izhixinyun.com/exam/exam/paper/exportExamPaperReport?reportId=73157',
method: 'GET', // GET // method: 'GET', // GET
data: {}, // data: {},
// responseType: 'blob', // // responseType: 'blob',
success: (res) => { // success: (res) => {
console.log(4444, res) // console.log(4444, res)
OSS(res.data, ({ url }) => { // OSS(res.data, ({ url }) => {
console.log('ffff:', url) // console.log('ffff:', url)
// that.saveFile(url) // // that.saveFile(url)
}) // })
}, // },
fail: err => { // fail: err => {
console.log('fail:',fail) // console.log('fail:',fail)
uni.showToast({ // uni.showToast({
title: '请求失败!', // title: '',
icon: 'none' // icon: 'none'
}) // })
}, // },
}) // })
return // return
const res = await exportExamPaperReport({ // const res = await exportExamPaperReport({
reportId: row.reportId // reportId: row.reportId
}) // })
this.saveFile(res) // this.saveFile(res)
return // return
// //
uni.downloadFile({ uni.downloadFile({
url: 'https://eduvessel.com/images/occupationlab/ac校赛试卷四.docx', url: 'https://eduvessel.com/images/occupationlab/ac校赛试卷四.docx',

@ -158,8 +158,8 @@
"text": "成绩" "text": "成绩"
}, { }, {
"pagePath": "pages/person/person", "pagePath": "pages/person/person",
"iconPath": "static/image/tab4.png", "iconPath": "static/image/tab3.png",
"selectedIconPath": "static/image/tab4-1.png", "selectedIconPath": "static/image/tab3-1.png",
"text": "我的" "text": "我的"
}] }]
} }

@ -2,7 +2,7 @@
<view class="page"> <view class="page">
<view class="wrap"> <view class="wrap">
<view class="p-title"> <view class="p-title">
<image class="icon" src="https://eduvessel.com/images/occupationlab/record5.png" mode="widthFix"></image> 成绩概览 <image class="icon" src="https://eduvessel.com/images/occupationlab/stat.svg" mode="widthFix"></image> 成绩概览
</view> </view>
<view class="stat"> <view class="stat">
<view class="item"> <view class="item">
@ -30,7 +30,7 @@
<view class="wrap"> <view class="wrap">
<view class="p-title"> <view class="p-title">
<image class="icon" src="https://eduvessel.com/images/occupationlab/record6.png" mode="widthFix"></image> 成绩记录明细 <image class="icon" src="https://eduvessel.com/images/occupationlab/detail.svg" mode="widthFix"></image> 成绩记录明细
</view> </view>
<view class="tab-wrap"> <view class="tab-wrap">
@ -42,26 +42,32 @@
</view> </view>
<!-- 练习成绩 --> <!-- 练习成绩 -->
<view v-show="!curTab && list.length" class="list"> <template v-if="!curTab">
<view v-for="(item, i) in list" :key="i" class="item" @click="toPrac(item)"> <view v-if="list.length" class="list">
<view class="c-name">{{ item.projectName }}</view> <view v-for="(item, i) in list" :key="i" class="item" @click="toPrac(item)">
<view class="line">最高分{{ item.hightScore }}&emsp;&emsp;练习次数{{ item.practiceNum }}</view> <view class="c-name">{{ item.projectName }}</view>
<view class="line">累计练习时长小时{{ item.hightScore }}</view> <view class="line">最高分{{ item.hightScore }}&emsp;&emsp;练习次数{{ item.practiceNum }}</view>
<view class="line">最近练习时间{{ item.lastTime }}</view> <view class="line">累计练习时长小时{{ item.hightScore }}</view>
<view class="btn">练习情况</view> <view class="line">最近练习时间{{ item.lastTime }}</view>
<view class="btn">练习情况</view>
</view>
</view> </view>
</view> <empty v-else />
</template>
<!-- 考核成绩 --> <!-- 考核成绩 -->
<view v-show="curTab && list.length" class="list"> <template v-else>
<view v-for="(item, i) in list" :key="i" class="item" @click="toDetail(item)"> <view v-if="list.length" class="list">
<view class="c-name">{{ item.experimentalName }}</view> <view v-for="(item, i) in list" :key="i" class="item" @click="toDetail(item)">
<view class="line">得分{{ item.score }}&emsp;&emsp;耗时{{ item.timeSum }}min</view> <view class="c-name">{{ item.experimentalName }}</view>
<view class="line">考核开始时间{{ item.startTime }}</view> <view class="line">得分{{ item.score }}&emsp;&emsp;耗时{{ item.timeSum }}min</view>
<view class="line">考核结束时间{{ item.submitTime }}</view> <view class="line">考核开始时间{{ item.startTime }}</view>
<view class="btn">成绩报告</view> <view class="line">考核结束时间{{ item.submitTime }}</view>
<view class="btn">成绩报告</view>
</view>
</view> </view>
</view> <empty v-else />
</template>
</view> </view>
<realName /> <realName />
@ -156,6 +162,7 @@
// tab // tab
tabChange(id) { tabChange(id) {
this.curTab = id this.curTab = id
this.list = []
this.initList() this.initList()
}, },
// //
@ -257,7 +264,9 @@
.item { .item {
position: relative; position: relative;
padding: 20rpx 0; padding: 20rpx 0;
border-bottom: 1px solid #e6e6e6; &:not(:last-child) {
border-bottom: 1px solid #e6e6e6;
}
} }
.c-name { .c-name {
font-size: 32rpx; font-size: 32rpx;

@ -10,13 +10,14 @@
</scroll-view> </scroll-view>
</ul> </ul>
<ul class="list"> <ul v-if="list.length" class="list">
<li v-for="(item, i) in list" :key="i" @click="toDetail(item)"> <li v-for="(item, i) in list" :key="i" @click="toDetail(item)">
<image class="cover" :src="item.coverUrl"></image> <image class="cover" :src="item.coverUrl"></image>
<view class="name">{{ item.goodsName }}</view> <view class="name">{{ item.goodsName }}</view>
<view class="entry">进入课程</view> <view class="entry">进入课程</view>
</li> </li>
</ul> </ul>
<empty v-else />
<RealName /> <RealName />
</view> </view>

@ -16,21 +16,21 @@
<view class="list"> <view class="list">
<view class="item" @click="$util.to('/user/info/info')"> <view class="item" @click="$util.to('/user/info/info')">
<view class="left"> <view class="left">
<image class="icon" src="@/static/image/person4.png" mode=""></image> <image class="icon" src="https://eduvessel.com/images/occupationlab/person.svg" mode=""></image>
<text class="name">我的资料</text> <text class="name">我的资料</text>
</view> </view>
<uni-icons type="right" size="15" color="#ccc"></uni-icons> <uni-icons type="right" size="15" color="#ccc"></uni-icons>
</view> </view>
<view class="item" @click="$util.to('/user/switchAccount/switchAccount')"> <view class="item" @click="$util.to('/user/switchAccount/switchAccount')">
<view class="left"> <view class="left">
<image class="icon" src="@/static/image/person4.png" mode=""></image> <image class="icon" src="https://eduvessel.com/images/occupationlab/switch.svg" mode=""></image>
<text class="name">切换账号</text> <text class="name">切换账号</text>
</view> </view>
<uni-icons type="right" size="15" color="#ccc"></uni-icons> <uni-icons type="right" size="15" color="#ccc"></uni-icons>
</view> </view>
<view class="item" @click="logout"> <view class="item" @click="logout">
<view class="left"> <view class="left">
<image class="icon" src="@/static/image/person3.png" mode=""></image> <image class="icon" src="https://eduvessel.com/images/occupationlab/logout.svg" mode=""></image>
<text class="name">退出登录</text> <text class="name">退出登录</text>
</view> </view>
</view> </view>
@ -69,7 +69,7 @@
userName: '', userName: '',
schoolName: '' schoolName: ''
}, },
avatar: uni.getStorageSync('avatar') || '@/static/image/avatar.png', avatar: uni.getStorageSync('avatar') || 'https://eduvessel.com/images/occupationlab/avatar.png',
userName: uni.getStorageSync('userName'), userName: uni.getStorageSync('userName'),
} }
}, },

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 528 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 620 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 514 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 368 B

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 B

After

Width:  |  Height:  |  Size: 920 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 223 B

After

Width:  |  Height:  |  Size: 785 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 372 B

After

Width:  |  Height:  |  Size: 866 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 755 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 825 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 410 B

@ -64,7 +64,7 @@
</view> </view>
<view class="line"> <view class="line">
<view class="name">所在城市</view> <view class="name">所在城市</view>
<uni-data-picker class="picker-input" placeholder="请选择城市" popup-title="请选择城市" preload :clear-icon="false" :localdata="cities" v-model="hrUserInfo.cityId"></uni-data-picker> <uni-data-picker class="picker-input" placeholder="请选择城市" popup-title="请选择城市" preload :clear-icon="false" :localdata="cities" v-model="hrUserInfo.cityId" :readonly="!hrUserInfo.provinceId"></uni-data-picker>
</view> </view>
<view class="line"> <view class="line">
<view class="name">受教育程度</view> <view class="name">受教育程度</view>
@ -105,11 +105,11 @@
</view> </view>
<view class="line"> <view class="line">
<view class="name">专业类</view> <view class="name">专业类</view>
<uni-data-picker class="picker-input" placeholder="请选择专业类" popup-title="请选择专业类" preload :clear-icon="false" :localdata="archive.ProfessionalClassList" v-model="archive.professionalClassId" @change="e => getItemProfessional(e, i)"></uni-data-picker> <uni-data-picker class="picker-input" placeholder="请选择专业类" popup-title="请选择专业类" preload :clear-icon="false" :localdata="archive.ProfessionalClassList" v-model="archive.professionalClassId" :readonly="!archive.disciplineId" @change="e => getItemProfessional(e, i)"></uni-data-picker>
</view> </view>
<view class="line"> <view class="line">
<view class="name">专业</view> <view class="name">专业</view>
<uni-data-picker class="picker-input" placeholder="请选择专业" popup-title="请选择专业" preload :clear-icon="false" :localdata="archive.ProfessionalList" v-model="archive.professionalId"></uni-data-picker> <uni-data-picker class="picker-input" placeholder="请选择专业" popup-title="请选择专业" preload :clear-icon="false" :localdata="archive.ProfessionalList" v-model="archive.professionalId" :readonly="!archive.professionalClassId"></uni-data-picker>
</view> </view>
<uni-icons class="del" type="trash" size="20" color="#ccc" @click="delArchive(i)"></uni-icons> <uni-icons class="del" type="trash" size="20" color="#ccc" @click="delArchive(i)"></uni-icons>
</view> </view>
@ -515,19 +515,21 @@
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
} }
.archives {
padding-bottom: 20rpx;
.archive {
position: relative;
padding: 30rpx;
margin-bottom: 30rpx;
border: 1px dashed #d2d2d2;
border-radius: 20rpx;
.archive { .del {
position: relative; position: absolute;
padding: 30rpx; top: 10rpx;
margin-bottom: 30rpx; right: 10rpx;
border: 1px dashed #d2d2d2; }
border-radius: 20rpx; }
.del {
position: absolute;
top: 10rpx;
right: 10rpx;
}
} }
.fold { .fold {
padding-bottom: 20rpx; padding-bottom: 20rpx;

@ -6,7 +6,7 @@
<ul class="list"> <ul class="list">
<li v-for="item in accounts"> <li v-for="item in accounts">
<view class="left"> <view class="left">
<image class="avatar" :src="item.userAvatars || require('@/static/image/avatar.png')" mode=""></image> <image class="avatar" :src="item.userAvatars || 'https://eduvessel.com/images/occupationlab/avatar.png'" mode=""></image>
<view class="info"> <view class="info">
<view class="name">{{ item.userName }}</view> <view class="name">{{ item.userName }}</view>
<view class="org">{{ item.schoolName }}</view> <view class="org">{{ item.schoolName }}</view>

@ -4,7 +4,7 @@
<ul class="list"> <ul class="list">
<li v-for="item in list" @click="checkChange(item)"> <li v-for="item in list" @click="checkChange(item)">
<view class="left"> <view class="left">
<image class="avatar" :src="item.userAvatars || require('@/static/image/avatar.png')" mode=""></image> <image class="avatar" :src="item.userAvatars || 'https://eduvessel.com/images/occupationlab/avatar.png'" mode=""></image>
<view class="info"> <view class="info">
<view class="name">{{ item.userName }}</view> <view class="name">{{ item.userName }}</view>
<view class="org">{{ item.schoolName }}</view> <view class="org">{{ item.schoolName }}</view>

Loading…
Cancel
Save