|
@@ -4,7 +4,7 @@
|
|
<view class="box-top-title">
|
|
<view class="box-top-title">
|
|
{{ info.name }}
|
|
{{ info.name }}
|
|
<text class="subText">
|
|
<text class="subText">
|
|
- {{ info.postName }}
|
|
|
|
|
|
+ {{ info.postName || '' }}
|
|
<text v-if="info.postName && info.enterpriseName" class="gun">|</text>
|
|
<text v-if="info.postName && info.enterpriseName" class="gun">|</text>
|
|
{{ info.enterpriseName }}
|
|
{{ info.enterpriseName }}
|
|
</text>
|
|
</text>
|
|
@@ -146,20 +146,23 @@
|
|
|
|
|
|
<!-- </view> -->
|
|
<!-- </view> -->
|
|
<view class="box-bottom">
|
|
<view class="box-bottom">
|
|
- <view class="box-bottom-tool">
|
|
|
|
|
|
+ <view class="box-bottom-tool" style="display: flex; justify-content: space-between;">
|
|
<uni-tag :text="isSendResume ? '简历已投递' : '发送简历'" :disabled="isSendResume" type="success" @tap="handleFindResume"/>
|
|
<uni-tag :text="isSendResume ? '简历已投递' : '发送简历'" :disabled="isSendResume" type="success" @tap="handleFindResume"/>
|
|
|
|
+ <uni-tag text="发 送" type="success" @tap="handleSend"/>
|
|
</view>
|
|
</view>
|
|
|
|
|
|
- <textarea
|
|
|
|
- v-model="inputValue"
|
|
|
|
- confirm-type="send"
|
|
|
|
- auto-height
|
|
|
|
- @confirm="handleSend"
|
|
|
|
- />
|
|
|
|
|
|
+ <view class="d-flex align-end">
|
|
|
|
+ <textarea
|
|
|
|
+ v-model="inputValue"
|
|
|
|
+ confirm-type="send"
|
|
|
|
+ auto-height
|
|
|
|
+ @confirm="handleSend"
|
|
|
|
+ />
|
|
|
|
+ </view>
|
|
</view>
|
|
</view>
|
|
<uni-popup ref="popup" background-color="#fff">
|
|
<uni-popup ref="popup" background-color="#fff">
|
|
<view class="popup-title">
|
|
<view class="popup-title">
|
|
- <text>请选择简历</text>
|
|
|
|
|
|
+ <text>发送简历选择</text>
|
|
<uni-icons type="closeempty" size="20" @tap="handleClose"></uni-icons>
|
|
<uni-icons type="closeempty" size="20" @tap="handleClose"></uni-icons>
|
|
</view>
|
|
</view>
|
|
<view v-for="resume in resumeList" :key="resume.id" class="popup-content" @tap="resumeCheck = resume">
|
|
<view v-for="resume in resumeList" :key="resume.id" class="popup-content" @tap="resumeCheck = resume">
|
|
@@ -176,7 +179,7 @@
|
|
<view class="popup-upload-box">
|
|
<view class="popup-upload-box">
|
|
<uni-icons type="plusempty" size="50" color="#f1f1f1"></uni-icons>
|
|
<uni-icons type="plusempty" size="50" color="#f1f1f1"></uni-icons>
|
|
</view>
|
|
</view>
|
|
- <text>请先上传简历</text>
|
|
|
|
|
|
+ <text>您还未上传过简历,点击选取微信聊天文件投递</text>
|
|
</view>
|
|
</view>
|
|
<view v-if="resumeList.length" class="popup-actions">
|
|
<view v-if="resumeList.length" class="popup-actions">
|
|
<button class="default" type="default" @click="handleSendResume">发送简历</button>
|
|
<button class="default" type="default" @click="handleSendResume">发送简历</button>
|
|
@@ -198,7 +201,7 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
-import { ref, nextTick, watch, computed } from 'vue'
|
|
|
|
|
|
+import { ref, watch } from 'vue'
|
|
import { onLoad } from '@dcloudio/uni-app'
|
|
import { onLoad } from '@dcloudio/uni-app'
|
|
import { useIMStore } from '@/store/im'
|
|
import { useIMStore } from '@/store/im'
|
|
import { userStore } from '@/store/user'
|
|
import { userStore } from '@/store/user'
|
|
@@ -208,8 +211,9 @@ import { timesTampChange } from '@/utils/date'
|
|
import { getUserAvatar } from '@/utils/avatar'
|
|
import { getUserAvatar } from '@/utils/avatar'
|
|
import { preview } from '@/utils/preview'
|
|
import { preview } from '@/utils/preview'
|
|
import { getPersonResumeCv, saveResume } from '@/api/user'
|
|
import { getPersonResumeCv, saveResume } from '@/api/user'
|
|
|
|
+import { uploadFile } from '@/api/file'
|
|
import { getInterviewInviteListByInviteUserId, getMessageType } from '@/api/common'
|
|
import { getInterviewInviteListByInviteUserId, getMessageType } from '@/api/common'
|
|
-import { userInterviewInviteReject, userInterviewInviteConsent } from '@/api/personalCenter'
|
|
|
|
|
|
+import { userInterviewInviteReject } from '@/api/personalCenter'
|
|
import {
|
|
import {
|
|
jobCvRelSend,
|
|
jobCvRelSend,
|
|
jobCvRelCheckSend,
|
|
jobCvRelCheckSend,
|
|
@@ -312,7 +316,7 @@ function setScrollBottom () {
|
|
async function getInterviewInviteList () {
|
|
async function getInterviewInviteList () {
|
|
if (!info.value.id) return
|
|
if (!info.value.id) return
|
|
const { data } = await getInterviewInviteListByInviteUserId(info.value.id)
|
|
const { data } = await getInterviewInviteListByInviteUserId(info.value.id)
|
|
- interview.value = data.slice(0, 1).map(e => {
|
|
|
|
|
|
+ interview.value = data ? data.slice(0, 1).map(e => {
|
|
const statusItem = statusList.value.find(_e => _e.value === e.status)
|
|
const statusItem = statusList.value.find(_e => _e.value === e.status)
|
|
const statusText = statusItem?.label || ''
|
|
const statusText = statusItem?.label || ''
|
|
const statusColor = ['5', '98', '99'].includes(e.status)
|
|
const statusColor = ['5', '98', '99'].includes(e.status)
|
|
@@ -321,7 +325,7 @@ async function getInterviewInviteList () {
|
|
statusColor: statusColor ? '#FE574A' : '#0E8E80',
|
|
statusColor: statusColor ? '#FE574A' : '#0E8E80',
|
|
statusText
|
|
statusText
|
|
}
|
|
}
|
|
- })
|
|
|
|
|
|
+ }) : []
|
|
}
|
|
}
|
|
|
|
|
|
const getStatusList = async () => {
|
|
const getStatusList = async () => {
|
|
@@ -336,6 +340,10 @@ const getStatusList = async () => {
|
|
}
|
|
}
|
|
|
|
|
|
function handleSend () {
|
|
function handleSend () {
|
|
|
|
+ if (!inputValue.value) {
|
|
|
|
+ uni.showToast({ title: '不能发送空白信息', icon: 'none' })
|
|
|
|
+ return
|
|
|
|
+ }
|
|
send(inputValue.value, channelItem.value)
|
|
send(inputValue.value, channelItem.value)
|
|
}
|
|
}
|
|
|
|
|
|
@@ -358,9 +366,6 @@ async function handleFindResume () {
|
|
if (isSendResume.value) {
|
|
if (isSendResume.value) {
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- uni.showLoading({
|
|
|
|
- title: '真正查找简历'
|
|
|
|
- })
|
|
|
|
try {
|
|
try {
|
|
// 获取简历列表
|
|
// 获取简历列表
|
|
const { data } = await getPersonResumeCv()
|
|
const { data } = await getPersonResumeCv()
|
|
@@ -369,11 +374,11 @@ async function handleFindResume () {
|
|
title: '您还未上传过简历,请先上传简历后再投递',
|
|
title: '您还未上传过简历,请先上传简历后再投递',
|
|
icon: 'none',
|
|
icon: 'none',
|
|
mask: true,
|
|
mask: true,
|
|
|
|
+ duration: 3000
|
|
})
|
|
})
|
|
- return
|
|
|
|
}
|
|
}
|
|
- resumeList.value = data
|
|
|
|
- resumeCheck.value = data[0]
|
|
|
|
|
|
+ resumeList.value = data || []
|
|
|
|
+ resumeCheck.value = data && data.length ? data[0] : ''
|
|
popup.value.open('center')
|
|
popup.value.open('center')
|
|
} finally {
|
|
} finally {
|
|
uni.hideLoading()
|
|
uni.hideLoading()
|
|
@@ -401,7 +406,6 @@ async function handleSendResume () {
|
|
type: 1
|
|
type: 1
|
|
}
|
|
}
|
|
send (JSON.stringify(text), channelItem.value, 105)
|
|
send (JSON.stringify(text), channelItem.value, 105)
|
|
- // console.log(isEmployment.value, positionInfo.value)
|
|
|
|
try {
|
|
try {
|
|
if (isEmployment.value !== '-1') {
|
|
if (isEmployment.value !== '-1') {
|
|
await jobCvRelHireSend({
|
|
await jobCvRelHireSend({
|
|
@@ -420,7 +424,6 @@ async function handleSendResume () {
|
|
isSendResume.value = true
|
|
isSendResume.value = true
|
|
popup.value.close()
|
|
popup.value.close()
|
|
} catch (error) {
|
|
} catch (error) {
|
|
-
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -796,22 +799,22 @@ onLoad(async (options) => {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.popup-upload {
|
|
.popup-upload {
|
|
- display: flex;
|
|
|
|
- align-items: center;
|
|
|
|
- justify-content: center;
|
|
|
|
- flex-direction: column;
|
|
|
|
- width: 400rpx;
|
|
|
|
|
|
+ // display: flex;
|
|
|
|
+ // align-items: center;
|
|
|
|
+ // justify-content: center;
|
|
|
|
+ // flex-direction: column;
|
|
|
|
+ // width: 70%;
|
|
font-size: .75em;
|
|
font-size: .75em;
|
|
color: #999;
|
|
color: #999;
|
|
- padding-bottom: 40rpx;
|
|
|
|
|
|
+ padding: 40rpx;
|
|
&-box {
|
|
&-box {
|
|
- margin-top: 20rpx;
|
|
|
|
width: 200rpx;
|
|
width: 200rpx;
|
|
height: 200rpx;
|
|
height: 200rpx;
|
|
text-align: center;
|
|
text-align: center;
|
|
line-height: 200rpx;
|
|
line-height: 200rpx;
|
|
border: 4rpx solid #ddd;
|
|
border: 4rpx solid #ddd;
|
|
border-radius: 8rpx;
|
|
border-radius: 8rpx;
|
|
|
|
+ margin: 0 auto;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.popup-actions {
|
|
.popup-actions {
|