flat: 添加企业2
This commit is contained in:
8
App.vue
8
App.vue
@@ -15,7 +15,7 @@
|
||||
|
||||
export default {
|
||||
onLaunch: function(options) {
|
||||
if(options.query.token) {
|
||||
if (options.query.token) {
|
||||
uni.reLaunch({
|
||||
url: '/pages/login/blank?token=' + options.query.token
|
||||
})
|
||||
@@ -69,4 +69,10 @@
|
||||
/* .uni-tabbar__label{
|
||||
font-size: 14px !important;
|
||||
} */
|
||||
@font-face {
|
||||
font-family: 'uicon-iconfont';
|
||||
font-weight: mormal;
|
||||
font-style: mormal;
|
||||
src: url('/static/font/font_2225171_8kdcwk4po24.ttf') format('truetype');
|
||||
}
|
||||
</style>
|
||||
52
api/upload.js
Normal file
52
api/upload.js
Normal file
@@ -0,0 +1,52 @@
|
||||
import {
|
||||
request
|
||||
} from '@/untils/AxiosUtils.js';
|
||||
import {
|
||||
baseUrl
|
||||
} from '@/config/env.js'
|
||||
import {
|
||||
getStore
|
||||
} from '@/untils/store.js'
|
||||
import {
|
||||
Base64
|
||||
} from 'js-base64'
|
||||
import website from "@/config/website.js"
|
||||
|
||||
export async function uploadFile(file) {
|
||||
uni.showLoading({
|
||||
title: '上传中'
|
||||
})
|
||||
var token = getStore({
|
||||
name: 'token'
|
||||
})
|
||||
return new Promise((resolve, reject) => {
|
||||
const header = {
|
||||
'Authorization': `Basic ${Base64.encode(`${website.clientId}:${website.clientSecret}`)}`,
|
||||
}
|
||||
header[website.tokenName] = "bearer " + token
|
||||
uni.uploadFile({
|
||||
url: `${baseUrl}/api/jobslink-api/resource/file/save?bussinessType=5`,
|
||||
header,
|
||||
filePath: file.url,
|
||||
// formData: formdata,
|
||||
name: 'file',
|
||||
success: ({
|
||||
statusCode,
|
||||
data
|
||||
}) => {
|
||||
const resp = JSON.parse(data)
|
||||
if (statusCode === 200 && resp.code === 200) {
|
||||
resolve(resp.msg)
|
||||
} else {
|
||||
reject(new Error('数据异常'))
|
||||
}
|
||||
},
|
||||
fail: (uploadFileRes) => {
|
||||
reject(uploadFileRes)
|
||||
},
|
||||
complete: () => {
|
||||
uni.hideLoading()
|
||||
}
|
||||
});
|
||||
})
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import {
|
||||
import {
|
||||
getStore
|
||||
} from '@/untils/store.js'
|
||||
|
||||
function getHeader() {
|
||||
const platformId = getStore({
|
||||
name: 'platformId'
|
||||
@@ -91,3 +92,15 @@ export const findTradeList = () => {
|
||||
// params
|
||||
})
|
||||
}
|
||||
|
||||
export const addInviteCompanyAuth = ({
|
||||
params,
|
||||
data
|
||||
}) => {
|
||||
return request({
|
||||
url: '/api/jobslink-api/tenant/company/app/inviteCompany/auth',
|
||||
method: 'post',
|
||||
data,
|
||||
params
|
||||
})
|
||||
}
|
||||
143
common/dic.js
143
common/dic.js
@@ -269,41 +269,137 @@ const expeArr = [
|
||||
]
|
||||
]
|
||||
|
||||
const companyEnum = [
|
||||
{ value: 1, label: "机关/事业单位" },
|
||||
{ value: 2, label: "国有企业" },
|
||||
{ value: 3, label: "私营企业" },
|
||||
{ value: 4, label: "外商及港澳台投资企业" },
|
||||
{ value: 5, label: "股份制企业" },
|
||||
{ value: 6, label: "学校/下级学院" },
|
||||
{ value: 7, label: "医院" },
|
||||
{ value: 8, label: "律师事务所" },
|
||||
{ value: 9, label: "银行" },
|
||||
{ value: 10, label: "非盈利社会组织" },
|
||||
{ value: 11, label: "其它" },
|
||||
const companyEnum = [{
|
||||
value: 1,
|
||||
label: "机关/事业单位"
|
||||
},
|
||||
{
|
||||
value: 2,
|
||||
label: "国有企业"
|
||||
},
|
||||
{
|
||||
value: 3,
|
||||
label: "私营企业"
|
||||
},
|
||||
{
|
||||
value: 4,
|
||||
label: "外商及港澳台投资企业"
|
||||
},
|
||||
{
|
||||
value: 5,
|
||||
label: "股份制企业"
|
||||
},
|
||||
{
|
||||
value: 6,
|
||||
label: "学校/下级学院"
|
||||
},
|
||||
{
|
||||
value: 7,
|
||||
label: "医院"
|
||||
},
|
||||
{
|
||||
value: 8,
|
||||
label: "律师事务所"
|
||||
},
|
||||
{
|
||||
value: 9,
|
||||
label: "银行"
|
||||
},
|
||||
{
|
||||
value: 10,
|
||||
label: "非盈利社会组织"
|
||||
},
|
||||
{
|
||||
value: 11,
|
||||
label: "其它"
|
||||
},
|
||||
]
|
||||
|
||||
const wageUnitCategoryState = [[
|
||||
{ id: 1, label: "元/人·时", disable: false },
|
||||
{ id: 2, label: "元/人·天", disable: false },
|
||||
{ id: 3, label: "元/人·月", disable: false },
|
||||
{ id: 4, label: "其他", disable: false },
|
||||
const wageUnitCategoryState = [
|
||||
[{
|
||||
id: 1,
|
||||
label: "元/人·时",
|
||||
disable: false
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
label: "元/人·天",
|
||||
disable: false
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
label: "元/人·月",
|
||||
disable: false
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
label: "其他",
|
||||
disable: false
|
||||
},
|
||||
// { value: 0, label: "元/人·次", disable: true },
|
||||
// { value: 4, label: "元/人·周", disable: true },
|
||||
// { value: 5, label: "元/人·个", disable: true },
|
||||
// { value: 6, label: "元/人·件", disable: true },
|
||||
]];
|
||||
]
|
||||
];
|
||||
|
||||
const workwageUnitCategoryState = [[
|
||||
const workwageUnitCategoryState = [
|
||||
[
|
||||
// { id: 1, label: "元/人·时", disable: false },
|
||||
// { id: 2, label: "元/人·天", disable: false },
|
||||
{ id: 3, label: "元/人·月", disable: true },
|
||||
{ id: 4, label: "其他", disable: true },
|
||||
{
|
||||
id: 3,
|
||||
label: "元/人·月",
|
||||
disable: true
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
label: "其他",
|
||||
disable: true
|
||||
},
|
||||
// { value: 0, label: "元/人·次", disable: true },
|
||||
// { value: 4, label: "元/人·周", disable: true },
|
||||
// { value: 5, label: "元/人·个", disable: true },
|
||||
// { value: 6, label: "元/人·件", disable: true },
|
||||
]];
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
const addressColumn = [
|
||||
[{
|
||||
value: '95',
|
||||
label: "绵竹市"
|
||||
},
|
||||
{
|
||||
value: '185',
|
||||
label: "绵竹市"
|
||||
},
|
||||
{
|
||||
value: '143',
|
||||
label: "旌阳区"
|
||||
},
|
||||
{
|
||||
value: '150',
|
||||
label: "罗江区"
|
||||
},
|
||||
{
|
||||
value: '42',
|
||||
label: "什邡市"
|
||||
},
|
||||
{
|
||||
value: '156',
|
||||
label: "中江县"
|
||||
},
|
||||
{
|
||||
value: '44139628',
|
||||
label: "经济技术开发区"
|
||||
},
|
||||
{
|
||||
value: '79194151',
|
||||
label: "德阳市开发区"
|
||||
},
|
||||
]
|
||||
]
|
||||
|
||||
export default {
|
||||
salary,
|
||||
@@ -315,5 +411,6 @@ export default {
|
||||
expeArr,
|
||||
companyEnum,
|
||||
wageUnitCategoryState,
|
||||
workwageUnitCategoryState
|
||||
workwageUnitCategoryState,
|
||||
addressColumn
|
||||
}
|
||||
@@ -7,7 +7,8 @@
|
||||
<!-- <image src="../../static/img/search.svg" style="width: 32rpx;height: 32rpx; color: blue;" mode=""></image> -->
|
||||
<view class="headd_left">
|
||||
<u-icon name="search" color="#2297fa" size="24"></u-icon>
|
||||
<input placeholder-class="search_style" type="text" confirm-type="搜索" v-model="keywords" placeholder="搜任务/搜岗位/搜个体户招工/搜政策" />
|
||||
<input placeholder-class="search_style" type="text" confirm-type="搜索" v-model="keywords"
|
||||
placeholder="搜任务/搜岗位/搜个体户招工/搜政策" />
|
||||
</view>
|
||||
<view class="headd_right">
|
||||
搜索
|
||||
@@ -16,8 +17,8 @@
|
||||
</uni-nav-bar>
|
||||
<!-- <view class="homeHead"> -->
|
||||
<view class="headSwiper">
|
||||
<swiper :indicator-dots="true" indicator-active-color="#fff" indicator-color="rgba(255,255,255,0.80)" :autoplay="true"
|
||||
:interval="3000" :duration="1000" class="yswiper" :circular="true">
|
||||
<swiper :indicator-dots="true" indicator-active-color="#fff" indicator-color="rgba(255,255,255,0.80)"
|
||||
:autoplay="true" :interval="3000" :duration="1000" class="yswiper" :circular="true">
|
||||
<swiper-item v-for="(item,index) in swiperList" :key="index" v-if="item.isShow !== '2'">
|
||||
<view class="swiper-item">
|
||||
<image :src="item.image" mode="" class="swiperImg"></image>
|
||||
@@ -30,13 +31,18 @@
|
||||
<view class="policyImgIndex">
|
||||
<image src="../../static/img/index/newPolicy.png"></image>
|
||||
</view>
|
||||
<swiper style="width: 100%;height: 100rpx; line-height: 100rpx;margin-left: 164rpx;" :indicator-dots="true" :autoplay="true" :interval="3000" :duration="1000" :vertical="true" :circular="true">
|
||||
<swiper-item v-for="(item,index) in policyContentList" :key="index" @click="goPolicyInfo(item.id)">
|
||||
<swiper style="width: 100%;height: 100rpx; line-height: 100rpx;margin-left: 164rpx;"
|
||||
:indicator-dots="true" :autoplay="true" :interval="3000" :duration="1000" :vertical="true"
|
||||
:circular="true">
|
||||
<swiper-item v-for="(item,index) in policyContentList" :key="index"
|
||||
@click="goPolicyInfo(item.id)">
|
||||
<view class="swiper-item">
|
||||
<view class="policyText">
|
||||
<view class="textTitle">{{item.articleTitle}}</view>
|
||||
<view class="textDate">{{dateFormat(item.createTime)}}</view>
|
||||
<image src="../../static/img/right.svg" mode="" style="width: 18rpx;height: 32rpx;position:absolute;top: 12rpx;right:0;"></image>
|
||||
<image src="../../static/img/right.svg" mode=""
|
||||
style="width: 18rpx;height: 32rpx;position:absolute;top: 12rpx;right:0;">
|
||||
</image>
|
||||
</view>
|
||||
</view>
|
||||
</swiper-item>
|
||||
@@ -65,7 +71,7 @@
|
||||
<view class="itemIcon">
|
||||
<image class="Icon_size" src="../../static/img/index/skill.png" mode=""></image>
|
||||
</view>
|
||||
<view class="itemText" >
|
||||
<view class="itemText">
|
||||
<view class="font30">最新任务</view>
|
||||
<view class="font22">最新任务推荐</view>
|
||||
</view>
|
||||
@@ -197,7 +203,8 @@
|
||||
</view>
|
||||
|
||||
<view class="latestMission">
|
||||
<view class="cardTips" style="margin: 0 26rpx;display: flex;align-items: center;justify-content: space-between;padding-bottom: 10rpx;">
|
||||
<view class="cardTips"
|
||||
style="margin: 0 26rpx;display: flex;align-items: center;justify-content: space-between;padding-bottom: 10rpx;">
|
||||
<view>政策资讯</view>
|
||||
<view style="display: flex;align-items: center;" @click="toNewProject">
|
||||
<view style="color:#707070;font-size:26rpx;margin-right: 10rpx;">更多</view>
|
||||
@@ -211,8 +218,11 @@
|
||||
<company-list :companyitem="item"></company-list>
|
||||
</block> -->
|
||||
<view style="background-color: #fff;padding: 20rpx 30rpx;">
|
||||
<view v-for="(item,index) in policyContentList" :key="index" style="display: flex;align-items: center;padding: 20rpx 0;" @click="toArticleDetail(item.id)">
|
||||
<image :src="item.headPic" style="width: 80rpx;height: 80rpx;margin-right: 20rpx;border-radius: 10rpx;" mode=""></image>
|
||||
<view v-for="(item,index) in policyContentList" :key="index"
|
||||
style="display: flex;align-items: center;padding: 20rpx 0;" @click="toArticleDetail(item.id)">
|
||||
<image :src="item.headPic"
|
||||
style="width: 80rpx;height: 80rpx;margin-right: 20rpx;border-radius: 10rpx;" mode="">
|
||||
</image>
|
||||
<view style="font-size: 28rpx;">{{ item.articleTitle }}</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -251,7 +261,10 @@
|
||||
setStore,
|
||||
getStore
|
||||
} from '@/untils/store.js'
|
||||
import {getSwiperList,getPolicyContent} from '@/api/newIndex.js'
|
||||
import {
|
||||
getSwiperList,
|
||||
getPolicyContent
|
||||
} from '@/api/newIndex.js'
|
||||
import {
|
||||
dateFormat
|
||||
} from "../../untils/format.js";
|
||||
@@ -269,13 +282,13 @@
|
||||
keywords: '',
|
||||
isLogin: false,
|
||||
open: false,
|
||||
swiperList:[],//轮播图图片地址
|
||||
policyContentList:[],//国家新政
|
||||
policyType:1,//国家新政类型
|
||||
swiperType:1,//轮播图类型:冀联:1、衡水3
|
||||
swiperList: [], //轮播图图片地址
|
||||
policyContentList: [], //国家新政
|
||||
policyType: 1, //国家新政类型
|
||||
swiperType: 1, //轮播图类型:冀联:1、衡水3
|
||||
};
|
||||
},
|
||||
onLoad: function(options) { },
|
||||
onLoad: function(options) {},
|
||||
onShow: function() {
|
||||
if (!this.$store.state.user.token) {
|
||||
uni.reLaunch({
|
||||
@@ -317,9 +330,9 @@
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getPolicy(){
|
||||
getPolicyContent(this.policyType).then(res=>{
|
||||
this.policyContentList=res.data.data.records
|
||||
getPolicy() {
|
||||
getPolicyContent(this.policyType).then(res => {
|
||||
this.policyContentList = res.data.data.records
|
||||
})
|
||||
},
|
||||
swiperItemSrc() {
|
||||
@@ -449,9 +462,9 @@
|
||||
});
|
||||
},
|
||||
toArticleDetail(id) {
|
||||
if(id){
|
||||
if (id) {
|
||||
uni.navigateTo({
|
||||
url:`/pages/user/policyContent?id=${id}`
|
||||
url: `/pages/user/policyContent?id=${id}`
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -500,24 +513,23 @@
|
||||
// }
|
||||
}
|
||||
},
|
||||
getSwiperList(){
|
||||
getSwiperList(this.swiperType).then(res=>{
|
||||
const data=res.data.data;
|
||||
this.swiperList=data;
|
||||
getSwiperList() {
|
||||
getSwiperList(this.swiperType).then(res => {
|
||||
const data = res.data.data;
|
||||
this.swiperList = data;
|
||||
})
|
||||
},
|
||||
dateFormat,
|
||||
|
||||
goPolicyInfo(data){
|
||||
if(data){
|
||||
goPolicyInfo(data) {
|
||||
if (data) {
|
||||
// var val=encodeURIComponent(data)
|
||||
|
||||
uni.navigateTo({
|
||||
url:`/pages/user/policyContent?id=${data}`
|
||||
url: `/pages/user/policyContent?id=${data}`
|
||||
})
|
||||
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
// uni.showToast({
|
||||
// title:'暂无内容',
|
||||
// icon:'none'
|
||||
@@ -529,7 +541,7 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.info_market{
|
||||
.info_market {
|
||||
margin: 24rpx;
|
||||
height: fit-content;
|
||||
background-color: #FFFFFE;
|
||||
@@ -537,7 +549,8 @@
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
overflow: hidden;
|
||||
.market_top{
|
||||
|
||||
.market_top {
|
||||
background: url(@/static/img/index/bannerBg.png) no-repeat center center;
|
||||
background-size: 100% 100%;
|
||||
height: 100rpx;
|
||||
@@ -545,14 +558,16 @@
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
padding: 24rpx;
|
||||
.top_log{
|
||||
|
||||
.top_log {
|
||||
background: url(@/static/img/index/inLogo.png) no-repeat center center;
|
||||
background-size: cover;
|
||||
height: 60rpx;
|
||||
width: 450rpx;
|
||||
|
||||
}
|
||||
.next_market{
|
||||
|
||||
.next_market {
|
||||
font-size: 26rpx;
|
||||
color: #FFFFFF;
|
||||
background: linear-gradient(to right, rgba(137, 168, 253, 1), rgba(87, 129, 250, 1));
|
||||
@@ -564,34 +579,40 @@
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
.market_bottom{
|
||||
|
||||
.market_bottom {
|
||||
font-size: 32rpx;
|
||||
height: 80rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
view{
|
||||
|
||||
view {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
.home_logo{
|
||||
|
||||
.home_logo {
|
||||
background: url(@/static/img/index/inLogo.png) no-repeat center center;
|
||||
background-size: cover;
|
||||
height: 76rpx;
|
||||
width: 560rpx;
|
||||
margin: 24rpx 24rpx 24rpx 24rpx;
|
||||
}
|
||||
.body_header{
|
||||
|
||||
.body_header {
|
||||
background: url(@/static/img/index/bannerBg.png) no-repeat center center;
|
||||
background-size: 100% 100%;
|
||||
padding-top: 24rpx;
|
||||
padding-bottom: 18rpx;
|
||||
}
|
||||
.search_style{
|
||||
|
||||
.search_style {
|
||||
color: #2297fa;
|
||||
}
|
||||
|
||||
.home-body {
|
||||
overflow-x: hidden;
|
||||
/* background-color: #FFFFFF; */
|
||||
@@ -621,13 +642,15 @@
|
||||
width: 690rpx;
|
||||
margin-right: auto;
|
||||
height: 80rpx;
|
||||
.headd_left{
|
||||
|
||||
.headd_left {
|
||||
padding-left: 15rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex: 1;
|
||||
}
|
||||
.headd_right{
|
||||
|
||||
.headd_right {
|
||||
padding: 0 30rpx;
|
||||
color: #2297fa;
|
||||
font-size: 28rpx;
|
||||
@@ -637,7 +660,8 @@
|
||||
position: relative;
|
||||
font-weight: bold;
|
||||
}
|
||||
.headd_right::before{
|
||||
|
||||
.headd_right::before {
|
||||
position: absolute;
|
||||
content: '';
|
||||
left: 0;
|
||||
@@ -700,17 +724,18 @@
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.swiper-item{
|
||||
.swiper-item {
|
||||
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
|
||||
.policyImgIndex{
|
||||
.policyImgIndex {
|
||||
position: absolute;
|
||||
top: 48rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.policyImgIndex image {
|
||||
width: 140rpx;
|
||||
height: 48rpx;
|
||||
@@ -805,11 +830,13 @@
|
||||
right: 0;
|
||||
text-align: center;
|
||||
}
|
||||
.hotFunction .hot_img{
|
||||
|
||||
.hotFunction .hot_img {
|
||||
width: 144rpx;
|
||||
height: 34rpx;
|
||||
}
|
||||
.hotFunction .text{
|
||||
|
||||
.hotFunction .text {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 22rpx;
|
||||
@@ -939,7 +966,8 @@
|
||||
height: 64rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.serviceItemContent .itemIcon{
|
||||
|
||||
.serviceItemContent .itemIcon {
|
||||
background-color: rgba(0, 0, 0, 0.06);
|
||||
width: 90rpx;
|
||||
height: 90rpx;
|
||||
@@ -947,7 +975,7 @@
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
|
||||
.Icon_size{
|
||||
.Icon_size {
|
||||
width: 60rpx;
|
||||
height: 60rpx;
|
||||
border-radius: 0;
|
||||
|
||||
@@ -1,21 +1,25 @@
|
||||
<template>
|
||||
<view class="container">
|
||||
<view class="select">用工单位发布招工</view>
|
||||
<view class="select-text">提交申请资料,通过认证后可快速发布招工信息</view>
|
||||
<view class="select">企业申请认证后</view>
|
||||
<view class="select-text">即可发布零工任务或者发布正规岗位</view>
|
||||
<!-- <view class="block" @click="next(0)">
|
||||
<img src="../../static/img/zhao_icon1.png" alt="" />
|
||||
<view class="block-text">个体户招工</view>
|
||||
</view> -->
|
||||
<view class="block" @click="next(1)">
|
||||
<img src="../../static/img/zhao_icon2.png" alt="" />
|
||||
<view class="block-text" style="background-color: #4171F9;">我要招工</view>
|
||||
<view class="block-text" style="background-color: #4171F9;">企业招工</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {seeIsHaveCodep} from '@/api/userrecruit.js'
|
||||
import { mapState } from 'vuex'
|
||||
import {
|
||||
seeIsHaveCodep
|
||||
} from '@/api/userrecruit.js'
|
||||
import {
|
||||
mapState
|
||||
} from 'vuex'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
@@ -24,11 +28,13 @@
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapState({idNumber: (state) => state.auth.authInfo.idNumber}),
|
||||
...mapState({
|
||||
idNumber: (state) => state.auth.authInfo.idNumber
|
||||
}),
|
||||
},
|
||||
methods: {
|
||||
next(type) {
|
||||
switch (type){
|
||||
switch (type) {
|
||||
case 0:
|
||||
this.isHaveCode(this.idNumber).then(() => {
|
||||
this.$store.commit('setEnterprise', type)
|
||||
@@ -44,16 +50,22 @@
|
||||
}
|
||||
},
|
||||
isHaveCode(idNumber) {
|
||||
uni.showLoading({ title:'请求中' })
|
||||
return new Promise(async(resolve, reject) => {
|
||||
let resData = await seeIsHaveCodep({idNumber})
|
||||
uni.showLoading({
|
||||
title: '请求中'
|
||||
})
|
||||
return new Promise(async (resolve, reject) => {
|
||||
let resData = await seeIsHaveCodep({
|
||||
idNumber
|
||||
})
|
||||
uni.hideLoading()
|
||||
if(resData.data.code === 200) {
|
||||
if (resData.data.code === 200) {
|
||||
if (false && resData.data.data) {
|
||||
resolve()
|
||||
} else {
|
||||
// this.$api.msg('您未申请开通该功能,请联系工作人员')
|
||||
this.navTo('/pages/recruit/subPage/enterpriceCertification/enterpriceCertification')
|
||||
this.navTo(
|
||||
'/pages/recruit/subPage/enterpriceCertification/enterpriceCertification'
|
||||
)
|
||||
}
|
||||
} else {
|
||||
reject()
|
||||
@@ -65,17 +77,20 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.container {
|
||||
.container {
|
||||
padding: 60rpx;
|
||||
|
||||
.select {
|
||||
font-size: 36rpx;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
.select-text {
|
||||
font-size: 28rpx;
|
||||
color: #999;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
|
||||
.block {
|
||||
width: 100%;
|
||||
height: 300rpx;
|
||||
@@ -85,6 +100,7 @@
|
||||
position: relative;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.block-text {
|
||||
color: #fff;
|
||||
font-size: 26rpx;
|
||||
@@ -99,11 +115,12 @@
|
||||
top: 50%;
|
||||
margin-top: -30rpx;
|
||||
}
|
||||
|
||||
img {
|
||||
width: 300rpx;
|
||||
margin-left: 50rpx;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,54 +1,100 @@
|
||||
<template>
|
||||
<view class="">
|
||||
<view class="content">
|
||||
<u--form labelPosition="left" :model="model1" :rules="rules" ref="uForm">
|
||||
<u-form-item label="企业名称" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u--form labelPosition="left" :model="formData" :rules="rules" ref="uForm">
|
||||
<view class="card">
|
||||
<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>
|
||||
<u-form-item label="统一信用代码" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="统一信用代码" labelWidth="100" prop="companyTid" borderBottom ref="item1">
|
||||
<u--input v-model="formData.companyTid" placeholder="请输入统一信用代码"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="法人姓名" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="法人姓名" labelWidth="100" prop="masterName" borderBottom ref="item1">
|
||||
<u--input v-model="formData.masterName" placeholder="请输入法人姓名"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="法人身份证号" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="法人身份证号" labelWidth="100" prop="masterIdentity" borderBottom ref="item1">
|
||||
<u--input v-model="formData.masterIdentity" placeholder="请输入法人身份证号"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="所在地区" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="所在地区" labelWidth="100" prop="cityId" borderBottom ref="item1"
|
||||
@click="showAddress = true; hideKeyboard()">
|
||||
<PickerList placeholder="请选择所在地区" :columns="dic.addressColumn" :visibel="showAddress"
|
||||
v-model="formData.cityId" @cancel="showAddress = false">
|
||||
</PickerList>
|
||||
</u-form-item>
|
||||
<u-form-item label="详细地址" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="详细地址" labelWidth="100" prop="companyAddress" borderBottom ref="item1">
|
||||
<u--input v-model="formData.companyAddress" placeholder="请输入详细地址"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="联系人" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="企业性质" labelWidth="100" prop="nature" borderBottom ref="item1"
|
||||
@click="showJobCompanyNature = true; hideKeyboard()">
|
||||
<PickerList placeholder="请选择企业性质" :columns="[dic.companyEnum]" :visibel="showJobCompanyNature"
|
||||
v-model="formData.nature" @cancel="showJobCompanyNature = false">
|
||||
</PickerList>
|
||||
</u-form-item>
|
||||
<u-form-item label="手机号码" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
<u-form-item label="行业" labelWidth="100" prop="tradeId" borderBottom ref="item1"
|
||||
@click="showjobCompanyIndustry = true; hideKeyboard()">
|
||||
<PickerList placeholder="请选择行业" :columns="dic.tradeArr" labelName="name" valueName="id"
|
||||
:visibel="showjobCompanyIndustry" v-model="formData.tradeId"
|
||||
@cancel="showjobCompanyIndustry = false">
|
||||
</PickerList>
|
||||
</u-form-item>
|
||||
<u-form-item label="企业性质" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="行业" labelWidth="100" prop="userInfo.name" borderBottom ref="item1">
|
||||
<u--input v-model="formData.name" placeholder="请输入企业名称"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="企业介绍" labelWidth="100" labelPosition="top" prop="userInfo.name" borderBottom
|
||||
<u-form-item label="企业介绍" labelWidth="100" labelPosition="top" prop="companyDesc" borderBottom
|
||||
ref="item1">
|
||||
<u--textarea v-model="formData.name" placeholder="请输入内容"></u--textarea>
|
||||
<u--textarea v-model="formData.companyDesc" placeholder="请输入内容"></u--textarea>
|
||||
</u-form-item>
|
||||
</view>
|
||||
<view class="card">
|
||||
<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>
|
||||
<u-form-item label="手机号码" labelWidth="100" prop="telphone" borderBottom ref="item1">
|
||||
<u--input v-model="formData.telphone" placeholder="请输入手机号码"></u--input>
|
||||
</u-form-item>
|
||||
</view>
|
||||
|
||||
<view class="card">
|
||||
<view class="card_title">相关资料</view>
|
||||
<view class="card_content">
|
||||
<UploadIdNumber v-model="formData.identityUrl4Id" backImg="/static/img/idcard.png">
|
||||
</UploadIdNumber>
|
||||
<UploadIdNumber v-model="formData.identityUrl5Id" backImg="/static/img/backidcard1.png">
|
||||
</UploadIdNumber>
|
||||
<UploadIdNumber v-model="formData.authUrlId" backImg="/static/img/idcard.png"></UploadIdNumber>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="card">
|
||||
<u-button type="primary" text="提交" customStyle="margin-top: 50px" @click="submit"></u-button>
|
||||
<u-button type="error" text="重置" customStyle="margin-top: 10px" @click="reset"></u-button>
|
||||
</view>
|
||||
</u--form>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import UploadIdNumber from './uploadIdNumber.vue';
|
||||
import dic from '@/common/dic.js'
|
||||
import PickerList from './pickerList.vue';
|
||||
import {
|
||||
addInviteCompanyAuth
|
||||
} from '@/api/userrecruit.js'
|
||||
const rules = []
|
||||
import {
|
||||
mapState
|
||||
} from 'vuex'
|
||||
export default {
|
||||
components: {
|
||||
UploadIdNumber,
|
||||
PickerList
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
showAddress: false,
|
||||
showJobCompanyNature: false,
|
||||
showjobCompanyIndustry: false,
|
||||
dic,
|
||||
formData: {},
|
||||
rules
|
||||
};
|
||||
@@ -60,16 +106,60 @@
|
||||
}),
|
||||
},
|
||||
created() {
|
||||
|
||||
this.formData.manager = this.authInfo.realName
|
||||
this.formData.idNumber = this.authInfo.idNumber
|
||||
console.log(this.authInfo)
|
||||
console.log(this.userInfo)
|
||||
},
|
||||
methods: {
|
||||
|
||||
hideKeyboard() {
|
||||
uni.hideKeyboard()
|
||||
},
|
||||
async submit() {
|
||||
let data = {
|
||||
...this.formData,
|
||||
nature: Number(this.formData.nature),
|
||||
cityId: Number(this.formData.cityId),
|
||||
tradeId: Number(this.formData.tradeId),
|
||||
}
|
||||
let params = {
|
||||
// auth: this.authInfo.authValue
|
||||
}
|
||||
let resData = await addInviteCompanyAuth({
|
||||
params,
|
||||
data
|
||||
})
|
||||
console.log(resData)
|
||||
},
|
||||
reset() {
|
||||
const _this = this
|
||||
uni.showModal({
|
||||
content: '重置将清空表单,确定重置吗?',
|
||||
success() {
|
||||
_this.formData = {}
|
||||
},
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.content {
|
||||
padding: 24rpx;
|
||||
|
||||
.card {
|
||||
.card_title {
|
||||
font-weight: bold;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
|
||||
.card_content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
72
pages/recruit/subPage/enterpriceCertification/pickerList.vue
Normal file
72
pages/recruit/subPage/enterpriceCertification/pickerList.vue
Normal file
@@ -0,0 +1,72 @@
|
||||
<template>
|
||||
<view style="width: 100%">
|
||||
<u--input :value="valueEnum[value]" disabledColor="#ffffff" :placeholder="placeholder"></u--input>
|
||||
<u-picker :show="visibel" :keyName="labelName" :columns="columns" @confirm="skillConfirm" @cancel="skillClose"
|
||||
@close="skillClose"></u-picker>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
valueEnum: {}
|
||||
}
|
||||
},
|
||||
props: {
|
||||
valueName: {
|
||||
type: String,
|
||||
default: 'value'
|
||||
},
|
||||
labelName: {
|
||||
type: String,
|
||||
default: 'label'
|
||||
},
|
||||
placeholder: {
|
||||
type: String,
|
||||
require: ''
|
||||
},
|
||||
visibel: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
columns: {
|
||||
type: Array,
|
||||
require: true
|
||||
},
|
||||
value: {
|
||||
type: String,
|
||||
require: ''
|
||||
},
|
||||
cancel: {
|
||||
type: Function
|
||||
}
|
||||
},
|
||||
created() {
|
||||
if (Array.isArray(this.columns)) {
|
||||
this.columns.map((item) => {
|
||||
item.map((child) => {
|
||||
this.valueEnum[child[this.valueName]] = child[this.labelName]
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
skillConfirm({
|
||||
index,
|
||||
value,
|
||||
values
|
||||
}) {
|
||||
this.$emit("input", String(value[0][this.valueName]));
|
||||
this.$emit("cancel");
|
||||
},
|
||||
skillClose() {
|
||||
this.$emit("cancel");
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
||||
@@ -0,0 +1,53 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<u-upload :fileList="ImgUrl" @afterRead="afterRead" :deletable="true" @delete="deletePic" name="6" :maxCount="1"
|
||||
width="280" height="150">
|
||||
<image :src="backImg" mode="widthFix" style="width: 280px;height: 150px;"></image>
|
||||
</u-upload>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
uploadFile
|
||||
} from '@/api/upload.js'
|
||||
export default {
|
||||
name: 'UploadIdNumber',
|
||||
props: {
|
||||
backImg: {
|
||||
type: String,
|
||||
require: true,
|
||||
},
|
||||
value: {
|
||||
type: String,
|
||||
default: null
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
ImgUrl(val) {
|
||||
return this.value ? [this.value] : []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
afterRead({
|
||||
file,
|
||||
index,
|
||||
name
|
||||
}) {
|
||||
// this.$emit("input", file);
|
||||
uploadFile(file).then((url) => {
|
||||
this.$emit("input", url);
|
||||
})
|
||||
},
|
||||
deletePic() {
|
||||
this.$emit("input", null);
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.content {
|
||||
margin: 20rpx 0 0 0;
|
||||
}
|
||||
</style>
|
||||
BIN
static/font/font_2225171_8kdcwk4po24.ttf
Normal file
BIN
static/font/font_2225171_8kdcwk4po24.ttf
Normal file
Binary file not shown.
BIN
static/img/backidcard1.png
Normal file
BIN
static/img/backidcard1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 7.5 KiB |
BIN
static/img/idcard.png
Normal file
BIN
static/img/idcard.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 12 KiB |
@@ -55,20 +55,22 @@ const user = {
|
||||
refreshToken: getStore({
|
||||
name: 'refreshToken'
|
||||
}) || '',
|
||||
userChecked:getStore({
|
||||
userChecked: getStore({
|
||||
name: 'setUserCheckValue'
|
||||
}) || false,
|
||||
sendTimes:getStore({//用户发送短信次数
|
||||
name:'setUserSendTimes'
|
||||
sendTimes: getStore({ //用户发送短信次数
|
||||
name: 'setUserSendTimes'
|
||||
}) || 0,
|
||||
seeEnterprise: getStore({//用户发送短信次数
|
||||
name:'enterprise'
|
||||
seeEnterprise: getStore({ //用户发送短信次数
|
||||
name: 'enterprise'
|
||||
}) || 0, // 0 个体招工 ; 企业招工
|
||||
},
|
||||
actions: {
|
||||
//用户点击radio按钮
|
||||
UserCheckedBtn({commit},val){
|
||||
commit('SET_USER_CHECKED',val);
|
||||
UserCheckedBtn({
|
||||
commit
|
||||
}, val) {
|
||||
commit('SET_USER_CHECKED', val);
|
||||
},
|
||||
//根据用户名登录
|
||||
LoginByUsername({
|
||||
@@ -76,7 +78,8 @@ const user = {
|
||||
dispatch
|
||||
}, userInfo) {
|
||||
return new Promise((resolve, reject) => {
|
||||
loginByUsername(userInfo.tenantId, userInfo.username, md5(userInfo.password), userInfo.type, userInfo.key,
|
||||
loginByUsername(userInfo.tenantId, userInfo.username, md5(userInfo.password), userInfo.type,
|
||||
userInfo.key,
|
||||
userInfo.code, userInfo.token).then(res => {
|
||||
|
||||
const data = res.data;
|
||||
@@ -179,7 +182,7 @@ const user = {
|
||||
UpdateUserSendTimes({
|
||||
commit
|
||||
}, data) {
|
||||
commit('SET_USER_SENDTIMES',data);
|
||||
commit('SET_USER_SENDTIMES', data);
|
||||
},
|
||||
},
|
||||
mutations: {
|
||||
@@ -221,15 +224,15 @@ const user = {
|
||||
content: state.userInfo
|
||||
})
|
||||
},
|
||||
SET_USER_CHECKED:(state,val)=>{
|
||||
state.userChecked=val;
|
||||
SET_USER_CHECKED: (state, val) => {
|
||||
state.userChecked = val;
|
||||
setStore({
|
||||
name: 'setUserCheckValue',
|
||||
content: state.userChecked
|
||||
})
|
||||
},
|
||||
SET_USER_SENDTIMES:(state,val)=>{
|
||||
state.sendTimes=val;
|
||||
SET_USER_SENDTIMES: (state, val) => {
|
||||
state.sendTimes = val;
|
||||
setStore({
|
||||
name: 'setUserSendTimes',
|
||||
content: state.sendTimes
|
||||
|
||||
@@ -3,7 +3,7 @@ module.exports = {
|
||||
port: 1887,
|
||||
proxy: {
|
||||
'/api': {
|
||||
target: 'http://10.165.0.173:8000',
|
||||
target: 'http://192.168.1.106:8000',
|
||||
ws: true,
|
||||
pathRewrite: {
|
||||
'^/api': '/'
|
||||
|
||||
Reference in New Issue
Block a user