flat: 暂存

This commit is contained in:
Apcallover
2024-04-18 11:49:14 +08:00
15 changed files with 1694 additions and 944 deletions

View File

@@ -1,266 +1,283 @@
<template>
<view class="body" @click="goInfo(companyitem.id)">
<view class="heads">
<view class="head_left">
<rich-text :nodes="string">
</rich-text>
</view>
<view class="head_right">
{{ companyitem.wage }}{{ wageUnit[companyitem.wageUnitCategory] }}
</view>
</view>
<view class="ask">
<view class="asj_content">
<view class="askList">
{{ companyitem.tradeNames }}
</view>
<view class="askList" v-for="(item, index) in skillNames" :key="index">
{{ item }}
</view>
</view>
<view class="ask_right">
<u-tag v-if="companyitem.reviewState == 1" :text="getReviewState(companyitem.reviewState)" type="success" plain shape="circle"></u-tag>
<u-tag v-if="companyitem.reviewState == 9" :text="getReviewState(companyitem.reviewState)" type="error" plain shape="circle"></u-tag>
<u-tag v-if="companyitem.reviewState == 0" :text="getReviewState(companyitem.reviewState)" plain shape="circle"></u-tag>
</view>
</view>
<!-- <view class="allName">
{{ companyitem.jobCompanyName }}
</view> -->
<view style="width: 100%;height: 1rpx;background-color: #999;margin: 0 auto;opacity: .5;"></view>
<view class="timeAddress" style="position: relative;">
<!-- <view v-if="companyitem.missionCompanyName">
{{ companyitem.missionCompanyName }}
</view> -->
<!-- <view>
<image src="../../static/img/city.png" style="width: 40rpx;height: 40rpx;" mode=""></image>
{{ companyitem.jobCompanyName }}
</view> -->
<view style="display: flex;align-items: center;">
<image src="../../../static/img/city.png" style="width: 40rpx;height: 40rpx;margin-right: 10rpx;" mode=""></image>
<view style="font-size: 26rpx;color:#333;">{{ companyitem.jobAddress }}</view>
</view>
<!-- <view v-if="near">
{{ companyitem.distanceStr }}km
</view>
<view v-else>
{{ getCity(companyitem.cityId) }}
</view> -->
<view style="display: flex;align-items: center;position:absolute;right:0;">
<image src="../../../static/img/location_new.png" style="width: 30rpx;height: 30rpx;" mode=""></image>
<view>2.2km</view>
</view>
</view>
<view class="comment" v-if='comment' @tap.stop="goComment(companyitem.missionNo)">
<view class="comment_content commentimg" v-if='companyitem.scoreAll > 0'>
<image class="commentimg_image" src="../../../static/img/star.full.svg" v-for="index1 in companyitem.scoreAll"
mode="" :key="index1"></image>
<image class="commentimg_image" src="../../../static/img/star.empty.svg"
v-for="index2 in (5 - companyitem.scoreAll)" mode="" :key="index2"></image>
</view>
<view class="comment_content allName gocomment" v-else>
评价
</view>
</view>
</view>
</template>
<script>
import {
toDoller,
dateFormat
} from "../../../untils/format.js";
import dictionary from '@/common/textdata.js';
export default {
beforeCreate: function () { },
props: {
companyitem: {
type: Object,
default() { return [] }
},
comment: {
type: Boolean,
default: false
},
noApply: {
type: Boolean,
default: true
},
near: {
type: Boolean,
default: false
}
},
data() {
return {
...dictionary,
string: "<div style='overflow: hidden;white-space: nowrap;text-overflow: ellipsis;'>" + this.companyitem.jobName +
"</div>"
};
},
computed: {
skillNames() {
return this.companyitem.skillNames.split(',')
}
},
methods: {
getReviewState(type) {
switch(type) {
case 1:
return '已审核'
case 0:
return '待审核'
case 9:
return '已驳回'
}
},
goComment: function (no) {
uni.navigateTo({
url: `../../pageMy/mycomment/mycomment?missionNo=${encodeURIComponent(no)}`
})
},
goInfo: function (no) {
const isCan = this.noApply === false ? '0' : '1'
uni.navigateTo({
url: `/pages/projectInfo/userrecruitInfo?workId=${encodeURIComponent(no)}&isCan=${isCan}&jobType=${this.companyitem.jobType
}&id=${this.companyitem.id}`
})
},
getCity: function (val) {
if (val) {
let areas = this.$store.getters.getAreaParents(val)
if (areas.length === 3) {
return areas[0].label + '-' + areas[1].label + '-' + areas[2].label
}
}
},
toDoller,
dateFormat
}
}
</script>
<style>
.commentimg_image {
width: 40rpx;
height: 40rpx;
}
.commentimg {
display: flex;
align-items: center;
justify-content: flex-end;
}
.gocomment {
font-size: 26rpx !important;
border-radius: 5rpx;
border: 1rpx solid #c3c3c3;
width: 160rpx;
text-align: center;
float: right;
height: 50rpx;
line-height: 50rpx;
}
.timeAddress {
display: flex;
align-items: center;
justify-content: space-between;
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: #999999;
margin: 10rpx 0;
padding: 10rpx 0;
}
.allName {
font-family: PingFangSC-Regular;
font-size: 28rpx;
color: #666666;
}
.askList {
/* width: 14%; */
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: #666666;
background-color: #f6f6f6;
padding: 5rpx 15rpx;
margin-right: 10rpx;
margin-bottom: 10rpx;
}
.ask {
overflow: hidden;
width: 100%;
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: space-between;
margin: 20rpx 0;
}
.asj_content{
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: flex-start;
flex: 1;
}
.ask_right{
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: blue;
background-color: #FFFFFF;
/* border: 2rpx solid blue; */
border-radius: 6px;
/* padding: 2rpx 10rpx; */
margin-right: 10rpx;
margin-bottom: 10rpx;
}
.head_right {
font-family: PingFangSC-Medium;
font-size: 28rpx;
color: #F46161;
font-weight: bold;
}
.head_left {
font-family: PingFangSC-Medium;
font-size: 32rpx;
font-weight: bold;
color: #333333;
width: 350rpx;
overflow: hidden;
white-space: nowrap;
/*不换行*/
text-overflow: ellipsis;
/*超出部分文字以...显示*/
}
.highlight {
color: #F46161;
}
.body {
width: 690rpx;
margin: 0rpx auto;
background-color: #fefefe;
overflow: hidden;
box-sizing: border-box;
padding: 20rpx;
padding-bottom: 0;
border-radius: 20rpx;
margin-bottom: 20rpx;
}
.heads {
display: flex;
align-items: center;
justify-content: space-between;
}
</style>
<template>
<view class="body" @click="goInfo(companyitem)">
<view class="heads">
<view class="head_left">
<rich-text :nodes="string">
</rich-text>
</view>
<view class="head_right">
{{ companyitem.wage }}{{ wageUnit[companyitem.wageUnitCategory] }}
</view>
</view>
<view class="ask">
<view class="asj_content">
<view class="askList">
{{ companyitem.tradeNames }}
</view>
<view class="askList" v-for="(item, index) in skillNames" :key="index">
{{ item }}
</view>
</view>
<view class="ask_right">
<u-tag v-if="companyitem.reviewState == 1" :text="getReviewState(companyitem.reviewState)"
type="success" plain shape="circle"></u-tag>
<u-tag v-if="companyitem.reviewState == 9" :text="getReviewState(companyitem.reviewState)" type="error"
plain shape="circle"></u-tag>
<u-tag v-if="companyitem.reviewState == 0" :text="getReviewState(companyitem.reviewState)" plain
shape="circle"></u-tag>
</view>
</view>
<!-- <view class="allName">
{{ companyitem.jobCompanyName }}
</view> -->
<view style="width: 100%;height: 1rpx;background-color: #999;margin: 0 auto;opacity: .5;"></view>
<view class="timeAddress" style="position: relative;">
<!-- <view v-if="companyitem.missionCompanyName">
{{ companyitem.missionCompanyName }}
</view> -->
<!-- <view>
<image src="../../static/img/city.png" style="width: 40rpx;height: 40rpx;" mode=""></image>
{{ companyitem.jobCompanyName }}
</view> -->
<view style="display: flex;align-items: center;">
<image src="../../../static/img/city.png" style="width: 40rpx;height: 40rpx;margin-right: 10rpx;"
mode=""></image>
<view style="font-size: 26rpx;color:#333;">{{ companyitem.jobAddress }}</view>
</view>
<!-- <view v-if="near">
{{ companyitem.distanceStr }}km
</view>
<view v-else>
{{ getCity(companyitem.cityId) }}
</view> -->
<view style="display: flex;align-items: center;position:absolute;right:0;">
<image src="../../../static/img/location_new.png" style="width: 30rpx;height: 30rpx;" mode=""></image>
<view>2.2km</view>
</view>
</view>
<view class="comment" v-if='comment' @tap.stop="goComment(companyitem.missionNo)">
<view class="comment_content commentimg" v-if='companyitem.scoreAll > 0'>
<image class="commentimg_image" src="../../../static/img/star.full.svg"
v-for="index1 in companyitem.scoreAll" mode="" :key="index1"></image>
<image class="commentimg_image" src="../../../static/img/star.empty.svg"
v-for="index2 in (5 - companyitem.scoreAll)" mode="" :key="index2"></image>
</view>
<view class="comment_content allName gocomment" v-else>
评价
</view>
</view>
</view>
</template>
<script>
import {
toDoller,
dateFormat
} from "../../../untils/format.js";
import dictionary from '@/common/textdata.js';
export default {
beforeCreate: function() {},
props: {
companyitem: {
type: Object,
default () {
return []
}
},
comment: {
type: Boolean,
default: false
},
noApply: {
type: Boolean,
default: true
},
near: {
type: Boolean,
default: false
}
},
data() {
return {
...dictionary,
string: "<div style='overflow: hidden;white-space: nowrap;text-overflow: ellipsis;'>" + this.companyitem
.jobName +
"</div>"
};
},
computed: {
skillNames() {
return this.companyitem.skillNames.split(',')
}
},
methods: {
getReviewState(type) {
switch (type) {
case 1:
return '已审核'
case 0:
return '待审核'
case 9:
return '已驳回'
}
},
goComment: function(no) {
uni.navigateTo({
url: `../../pageMy/mycomment/mycomment?missionNo=${encodeURIComponent(no)}`
})
},
goInfo: function({
id,
jobType
}) {
const isCan = this.noApply === false ? '0' : '1'
switch (jobType) {
case 0:
this.navTo(`/pages/projectInfo/userrecruitInfo?workId=${encodeURIComponent(id)}&isCan=${isCan}&jobType=${
this.companyitem.jobType}&id=${this.companyitem.id}`)
break
case 1:
this.navTo(`/pages/projectInfo/userrecruitWorkInfo?workId=${encodeURIComponent(id)}&isCan=${isCan}&jobType=${
this.companyitem.jobType}&id=${this.companyitem.id}`)
break
}
},
getCity: function(val) {
if (val) {
let areas = this.$store.getters.getAreaParents(val)
if (areas.length === 3) {
return areas[0].label + '-' + areas[1].label + '-' + areas[2].label
}
}
},
toDoller,
dateFormat
}
}
</script>
<style>
.commentimg_image {
width: 40rpx;
height: 40rpx;
}
.commentimg {
display: flex;
align-items: center;
justify-content: flex-end;
}
.gocomment {
font-size: 26rpx !important;
border-radius: 5rpx;
border: 1rpx solid #c3c3c3;
width: 160rpx;
text-align: center;
float: right;
height: 50rpx;
line-height: 50rpx;
}
.timeAddress {
display: flex;
align-items: center;
justify-content: space-between;
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: #999999;
margin: 10rpx 0;
padding: 10rpx 0;
}
.allName {
font-family: PingFangSC-Regular;
font-size: 28rpx;
color: #666666;
}
.askList {
/* width: 14%; */
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: #666666;
background-color: #f6f6f6;
padding: 5rpx 15rpx;
margin-right: 10rpx;
margin-bottom: 10rpx;
}
.ask {
overflow: hidden;
width: 100%;
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: space-between;
margin: 20rpx 0;
}
.asj_content {
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: flex-start;
flex: 1;
}
.ask_right {
font-family: PingFangSC-Regular;
font-size: 24rpx;
color: blue;
background-color: #FFFFFF;
/* border: 2rpx solid blue; */
border-radius: 6px;
/* padding: 2rpx 10rpx; */
margin-right: 10rpx;
margin-bottom: 10rpx;
}
.head_right {
font-family: PingFangSC-Medium;
font-size: 28rpx;
color: #F46161;
font-weight: bold;
}
.head_left {
font-family: PingFangSC-Medium;
font-size: 32rpx;
font-weight: bold;
color: #333333;
width: 350rpx;
overflow: hidden;
white-space: nowrap;
/*不换行*/
text-overflow: ellipsis;
/*超出部分文字以...显示*/
}
.highlight {
color: #F46161;
}
.body {
width: 690rpx;
margin: 0rpx auto;
background-color: #fefefe;
overflow: hidden;
box-sizing: border-box;
padding: 20rpx;
padding-bottom: 0;
border-radius: 20rpx;
margin-bottom: 20rpx;
}
.heads {
display: flex;
align-items: center;
justify-content: space-between;
}
</style>

View File

@@ -26,9 +26,7 @@
export default {
data() {
return {
}
return {}
},
computed: {
...mapState({
@@ -65,10 +63,10 @@
if (resData.data.data) {
resolve()
} else {
// this.$api.msg('您未申请开通该功能,请联系工作人员')
this.navTo(
'/pages/recruit/subPage/enterpriceCertification/enterpriceCertification'
)
this.$api.msg('您未申请开通该功能,请联系工作人员')
// this.navTo(
// '/pages/recruit/subPage/enterpriceCertification/enterpriceCertification'
// )
}
} else {
reject()

View File

@@ -3,7 +3,7 @@
<view class="content">
<u--form labelPosition="left" :model="formData" :rules="rules" ref="formOne">
<view class="card">
<view class="card_title">企业信息</view>
<view class="card_title">企业认证信息</view>
<u-form-item label="企业名称" labelWidth="100" prop="comname" borderBottom ref="item1">
<u--input v-model="formData.comname" placeholder="请输入企业名称"></u--input>
</u-form-item>
@@ -45,7 +45,7 @@
</u-form-item>
</view>
<view class="card">
<view class="card_title">用户信息</view>
<view class="card_title">联系人信息</view>
<u-form-item label="联系人" labelWidth="100" prop="manager" borderBottom ref="item1">
<u--input v-model="formData.manager" placeholder="请输入联系人"></u--input>
</u-form-item>
@@ -55,7 +55,7 @@
</view>
<view class="card">
<view class="card_title">相关资料</view>
<view class="card_title">证件资料</view>
<view class="card_content">
<u-form-item labelWidth="100" prop="identityUrl4Id">
<UploadIdNumber v-model="formData.identityUrl4Id" backImg="/static/img/idcard.png">
@@ -210,6 +210,17 @@
uni.hideKeyboard()
},
async submit() {
let params = {
...this.formData,
nature: Number(this.formData.nature),
cityId: Number(this.formData.cityId),
tradeId: Number(this.formData.tradeId),
}
let resData = await addInviteCompanyAuth(params)
console.log(resData)
if (resData.data.code === 200) {
_this.$api.msg('已完成企业信息认证')
}
const _this = this
this.$refs.formOne.validate().then(async (res) => {
let params = {
@@ -229,7 +240,6 @@
console.log(errors)
_this.$api.msg('请完善内容')
})
},
reset() {
const _this = this

View File

@@ -600,6 +600,9 @@
if (res.data.code == 200) {
that.reset()
uni.$u.toast('发布成功')
setTimeout(() => {
this.navTo('/pages/recruit/subPage/index')
}, 1000)
}
})
}).catch(errors => {

View File

@@ -595,6 +595,9 @@
if (res.data.code == 200) {
that.reset()
uni.$u.toast('发布成功')
setTimeout(() => {
this.navTo('/pages/recruit/subPage/index')
}, 1000)
}
})
}).catch(errors => {