flat: 审核

This commit is contained in:
Apcallover
2024-04-18 20:50:22 +08:00
parent c5e9bd09f3
commit dced4cf379
12 changed files with 1679 additions and 1611 deletions

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -33,6 +33,7 @@ const msg = (title, duration = 1500, mask = false, icon = 'none') => {
icon icon
}); });
} }
const sleep = (time) => new Promise(resolve => setTimeout(resolve, time))
// 注册全局组件 // 注册全局组件
import JlButton from "@/components/jl-button/main.vue" import JlButton from "@/components/jl-button/main.vue"
@@ -45,7 +46,8 @@ Vue.component('jl-form-item', JlFormItem)
Vue.component('cs-button', CSButton) Vue.component('cs-button', CSButton)
Vue.component('empty', empty) Vue.component('empty', empty)
Vue.prototype.$api = { Vue.prototype.$api = {
msg msg,
sleep
} }
Vue.prototype.$config = config Vue.prototype.$config = config
Vue.prototype.navTo = navTo Vue.prototype.navTo = navTo

View File

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

View File

@@ -23,7 +23,12 @@
import { import {
mapState mapState
} from 'vuex' } from 'vuex'
let reviewStatus = {
'-1': '全部',
'0': "待审",
'1': "已审",
'9': "驳回",
};
export default { export default {
data() { data() {
return {} return {}
@@ -60,13 +65,29 @@
}) })
uni.hideLoading() uni.hideLoading()
if (resData.data.code === 200) { if (resData.data.code === 200) {
if (resData.data.data) { if (resData.data.data.haveCode) {
resolve() resolve()
} else { } else {
// this.$api.msg('您未申请开通该功能,请联系工作人员') switch (resData.data.data.reviewStatus) {
this.navTo( case 0:
'/pages/recruit/subPage/enterpriceCertification/enterpriceCertification' this.$api.msg('您的企业信息正在审核,请稍后再试')
) break
case 1:
this.$api.msg('您的企业信息已经通过审核但未启用,请联系工作人员')
break
case 9:
this.navTo(
'/pages/recruit/subPage/enterpriceCertification/enterpriceCertification'
)
this.$api.sleep(1000).then(() => {
this.$api.msg('您的企业信息已被系统驳回,请重新上传')
})
break
default: // -1 未提交
this.navTo(
'/pages/recruit/subPage/enterpriceCertification/enterpriceCertification'
)
}
} }
} else { } else {
reject() reject()

View File

@@ -216,11 +216,6 @@
cityId: Number(this.formData.cityId), cityId: Number(this.formData.cityId),
tradeId: Number(this.formData.tradeId), tradeId: Number(this.formData.tradeId),
} }
let resData = await addInviteCompanyAuth(params)
console.log(resData)
if (resData.data.code === 200) {
_this.$api.msg('已完成企业信息认证')
}
const _this = this const _this = this
this.$refs.formOne.validate().then(async (res) => { this.$refs.formOne.validate().then(async (res) => {
let params = { let params = {
@@ -233,8 +228,10 @@
} }
let resData = await addInviteCompanyAuth(params) let resData = await addInviteCompanyAuth(params)
if (resData.data.code === 200) { if (resData.data.code === 200) {
_this.$api.msg('已完成企业信息认证') uni.navigateBack(1)
uni.navigateBack() _this.$api.sleep(1000).then(() => {
_this.$api.msg('已完成企业信息认证')
})
} }
}).catch(errors => { }).catch(errors => {
console.log(errors) console.log(errors)

View File

@@ -120,6 +120,12 @@
<u-form-item label="座机" prop="callNumber" borderBottom labelWidth="80" ref="item1"> <u-form-item label="座机" prop="callNumber" borderBottom labelWidth="80" ref="item1">
<u--input v-model="info.callNumber" border="none" placeholder="请输入座机"></u--input> <u--input v-model="info.callNumber" border="none" placeholder="请输入座机"></u--input>
</u-form-item> </u-form-item>
<!-- <u-form-item label="工作地址" labelWidth="80" prop="jobAddress" borderBottom ref="item1"
@click="showjobAddress = true; hideKeyboard()">
<PickerList placeholder="请选择行业" :columns="dic.tradeArr" labelName="name" valueName="id"
:visibel="showjobAddress" v-model="info.jobAddress" @cancel="showjobAddress = false">
</PickerList>
</u-form-item> -->
<u-form-item label="详细地址" prop="address" borderBottom labelWidth="80" ref="item1"> <u-form-item label="详细地址" prop="address" borderBottom labelWidth="80" ref="item1">
<u--input v-model="info.address" border="none" placeholder="请输入详细地址"></u--input> <u--input v-model="info.address" border="none" placeholder="请输入详细地址"></u--input>
</u-form-item> </u-form-item>
@@ -158,12 +164,17 @@
<script> <script>
import dic from '@/common/dic.js' import dic from '@/common/dic.js'
// import area from '@/untils/area.js'
import { import {
submitInfo, submitInfo,
getWorktypesBaseList, getWorktypesBaseList,
findTradeList, findTradeList,
getDictionary getDictionary
} from '@/api/userrecruit.js' } from '@/api/userrecruit.js'
import PickerList from './enterpriceCertification/pickerList.vue'
import {
mapGetters
} from 'vuex'
export default { export default {
data() { data() {
return { return {
@@ -185,6 +196,7 @@
showCalendar: false, showCalendar: false,
showStime: false, showStime: false,
showEtime: false, showEtime: false,
showjobAddress: false,
info: { info: {
jobName: '', // 招工名称 jobName: '', // 招工名称
stime: '', // 发布时间 stime: '', // 发布时间
@@ -365,6 +377,9 @@
default: null, default: null,
} }
}, },
components: {
PickerList
},
created() { created() {
const { const {
id: staId, id: staId,
@@ -372,6 +387,7 @@
} = dic.wageUnitCategoryState[0].filter(item => item.id == 3)[0] } = dic.wageUnitCategoryState[0].filter(item => item.id == 3)[0]
this.info.wageUnitCategory = staId this.info.wageUnitCategory = staId
this.info.wageUnitCategoryName = staLabel this.info.wageUnitCategoryName = staLabel
// console.log(area)
this.getWorkTypes() this.getWorkTypes()
this.dictionary() this.dictionary()
if (this.company) { if (this.company) {

View File

@@ -3,7 +3,7 @@ module.exports = {
port: 1887, port: 1887,
proxy: { proxy: {
'/api': { '/api': {
target: 'http://localhost:8000', target: 'http://192.168.1.106:8000',
ws: true, ws: true,
pathRewrite: { pathRewrite: {
'^/api': '/' '^/api': '/'