Browse Source

上传修改

master
前端-胡立永 4 months ago
parent
commit
5a7c336f87
13 changed files with 610 additions and 35 deletions
  1. +1
    -1
      App.vue
  2. +21
    -2
      api/api.js
  3. +6
    -0
      pages.json
  4. +49
    -0
      pages/index/index.vue
  5. +93
    -10
      pages/index/keepAccounts.vue
  6. +114
    -0
      pages_order/kepp/keepAccountsDetail.vue
  7. +3
    -0
      pages_order/mine/IntegralRecord.vue
  8. +10
    -1
      pages_order/mine/collect.vue
  9. +10
    -1
      pages_order/mine/contract.vue
  10. +61
    -18
      pages_order/mine/help.vue
  11. +11
    -1
      pages_order/mine/seeMy.vue
  12. +230
    -0
      pages_order/work/jobPosting.vue
  13. +1
    -1
      store/store.js

+ 1
- 1
App.vue View File

@ -5,7 +5,7 @@
onShow: function() {
// this.$store.commit('initConfig')
this.$store.commit('getJobTypeList')
// this.$store.commit('getAddressList')
this.$store.commit('getAddressList')
},
onHide: function() {
}


+ 21
- 2
api/api.js View File

@ -147,7 +147,11 @@ const config = {
url: '/api/common/queryStrartJobLists',
method: 'GET',
},
//会员中心-正式积分||临时积分||积分记录
commonQueryScore: {
url: '/api/common/queryScore',
method: 'GET',
},
/**
* 求职者的接口
@ -190,7 +194,7 @@ const config = {
*/
//获取简历列表
bossQueryJobList: {
url: '/api/boss/queryJobList',
url: '/api/boss/queryResumeListByAll',
method: 'GET',
},
//根据Id查看简历详情
@ -203,6 +207,21 @@ const config = {
url: '/api/boss/queryContractList',
method: 'GET',
},
//我的收藏
bossQueryCollectionJobList: {
url: '/api/boss/queryJobCollectionList',
method: 'GET',
},
//会员中心-联系记录-我看过谁(我的招工)
bossQueryWatchWho: {
url: '/api/boss/queryWatchWho',
method: 'GET',
},
//会员中心-联系记录-谁看过我(谁看过我的招工)
bossQueryWatchMe: {
url: '/api/boss/queryWatchMe',
method: 'GET',
},
}
export function api(key, data, callback, loadingTitle) {


+ 6
- 0
pages.json View File

@ -98,6 +98,12 @@
},
{
"path": "auth/certification"
},
{
"path": "work/jobPosting"
},
{
"path": "kepp/keepAccountsDetail"
}
]
}],


+ 49
- 0
pages/index/index.vue View File

@ -47,6 +47,19 @@
<!-- 工人看到的 -->
<workList ref="workList" v-else/>
<view class="box"
@click="$utils.navigateTo('/pages_order/work/jobPosting')">
<view class="left">
发布
</view>
<view class="center">
<image src="/static/image/home/c.png" mode=""></image>
</view>
<view class="right">
{{ role ? '招工' : '找活' }}
</view>
</view>
<PrivacyAgreementPoup/>
<tabber select="0"/>
@ -88,6 +101,8 @@
// this.$refs.videoList.queryVideoList()
// this.queryBannerList()
// },
//
onShow() {
this.$refs.workList.getData()
this.$store.commit('getBanner')
@ -132,6 +147,40 @@
}
}
}
.box{
position: fixed;
left: 50%;
background: $uni-color;
bottom: calc(env(safe-area-inset-bottom) + 150rpx);
color: #fff;
display: flex;
justify-content: center;
align-items: center;
transform: translate(-50%);
border-radius: 20rpx;
height: 80rpx;
font-size: 28rpx;
image{
width: 100%;
height: 100%;
border-radius: 50%;
}
.left{
padding-left: 30rpx;
}
.center{
width: 100rpx;
height: 100rpx;
border-radius: 50%;
background: $uni-color;
margin: 0 20rpx;
margin-top: -30rpx;
box-shadow: 0 0 4rpx 4rpx #ffffff;
}
.right{
padding-right: 30rpx;
}
}
.content{
position: relative;
margin-top: -60rpx;


+ 93
- 10
pages/index/keepAccounts.vue View File

@ -42,27 +42,61 @@
color: '#3796F8',
}"></uv-tabs>
</view>
<view class="list">
<view class="item"
v-for="(item,index) in list"
@click="$utils.navigateTo('/pages_order/kepp/keepAccountsDetail?id=' + item.id)"
:key="index">
<view class="top">
<view class="title">
{{ item.title }}
</view>
<view class="date">
{{ item.createTime }}
</view>
</view>
<view class="btn">
<view class="left">
<uv-icon
name="setting"
size="40rpx"></uv-icon>
设置
</view>
<view class="right">
<view class="b1">
记工
</view>
<view class="b2">
记账
</view>
</view>
</view>
</view>
</view>
<uv-overlay :show="show">
<view class="warp">
<view class="rect">
<view class="warp-top">
新建项目
{{ addOrUpdate ? '编辑项目' : '新建项目'}}
</view>
<view class="rect-two">
<view class="designation">项目名称</view>
<view class="wire" />
<view class="description">请输入项目名称</view>
<input class="rect-input" />
<!-- <view class="description">请输入项目名称</view> -->
<input class="rect-input"
v-model="form.title"
placeholder="请输入项目名称"/>
<view class="wire" style="margin-top: 20rpx;" />
<view class="option">
<!-- <view class="option">
<select class="select">
<option value="option1">收入 </option>
</select>
</view>
<view class="introduce">
</view> -->
<!-- <view class="introduce">
项目金额1314
</view>
</view> -->
<view class="button">
<view @click="isShohw">取消</view>
<view>确定</view>
@ -107,6 +141,10 @@
show: false,
mixinsListApi : 'commonQueryStrartJobLists',
apiType : '',
addOrUpdate : false,
form : {
title : '',
},
}
},
computed: {
@ -157,6 +195,51 @@
}
}
}
.list{
.item{
margin: 30rpx;
background-color: #fff;
padding: 20rpx;
border-radius: 20rpx;
.top{
display: flex;
justify-content: space-between;
padding: 20rpx;
.title{
font-weight: 900;
}
.date{
}
}
.btn{
display: flex;
justify-content: space-between;
padding: 20rpx;
.left{
display: flex;
align-items: center;
}
.right{
display: flex;
view{
padding: 15rpx 40rpx;
margin: 0 10rpx;
border-radius: 10rpx;
}
.b1{
border: 1px solid #FFA011;
color: #FFA011;
}
.b2{
background: $uni-color;
color: #fff;
}
}
}
}
}
.warp {
display: flex;
@ -166,7 +249,6 @@
.rect {
width: 90%;
height: 700rpx;
background-color: #fff;
border-radius: 20rpx;
overflow: hidden;
@ -201,10 +283,11 @@
}
.rect-input {
height: 60rpx;
height: 40rpx;
background-color: #EBF0FC;
border: 2rpx solid #4280FD;
border-radius: 14rpx;
padding: 10rpx 20rpx;
}
.option {
@ -231,7 +314,7 @@
justify-content: space-around;
text-align: center;
align-content: center;
margin-top: 70rpx;
margin: 50rpx 0;
view:nth-child(1) {
color: #575757;


+ 114
- 0
pages_order/kepp/keepAccountsDetail.vue View File

@ -0,0 +1,114 @@
<template>
<!-- 记工记账 -->
<view class="page">
<navbar title="记工记账" leftClick @leftClick="$utils.navigateBack" />
<view style="font-weight: 500; margin-top: 20rpx;">
<uv-tabs :list="tabsSatus" lineWidth="0"
lineHeight="0"
:scrollable="false"
activeStyle="color: #3796F8;"></uv-tabs>
</view>
<view class="page-two">
<view class="cell" style="margin-top: 40rpx;">
<uv-cell v-for="(item,index) in list"
:label="item.billDate"
title="佣金收入"
:value="item.amount"></uv-cell>
</view>
</view>
</view>
</template>
<script>
import mixinList from '@/mixins/list.js'
export default {
mixins : [mixinList],
data() {
return {
mixinsListApi : 'commonQueryBill',
apiType : '',
tabsSatus : [
{
name: '记账',
},
{
name: '记工',
},
],
}
},
onLoad({apiType}) {
this.apiType = apiType
this.mixinsListApi += apiType || ''
},
onShow() {},
methods: {
}
}
</script>
<style scoped lang="less">
.page {
background-color: #fff;
.page-two {
width: 90%;
margin-left: 5%;
.wire {
border-bottom: 4rpx dashed rgb(168, 197, 255);
}
.option {
padding: 40rpx 40rpx 40rpx 0rpx;
.select {
background-color: #EBF0FC;
padding: 15rpx 20rpx;
border: none;
color: #4280FD;
}
}
.select-date {
padding: 30rpx 0;
.select {
padding: 15rpx 0rpx;
border: none;
color: #4280FD;
}
}
.card {
display: flex;
justify-content: space-around;
align-items: center;
background-color: #F2F5FD;
.card-one,
.card-two {
display: flex;
justify-content: center;
align-items: center;
height: 150rpx;
width: 50%;
font-size: 28rpx;
line-height: 40rpx;
}
image {
height: 50rpx;
width: 50rpx;
margin-right: 20rpx;
}
}
}
}
</style>

+ 3
- 0
pages_order/mine/IntegralRecord.vue View File

@ -47,7 +47,9 @@
</template>
<script>
import mixinList from '@/mixins/list.js'
export default {
mixins : [mixinList],
data() {
return {
title : '积分记录',
@ -85,6 +87,7 @@
},
],
type : 0,
mixinsListApi : 'commonQueryScore',
}
},
onLoad(e) {


+ 10
- 1
pages_order/mine/collect.vue View File

@ -10,13 +10,14 @@
<workListSwipe
:options="options"
@clickSwipeAction="clickSwipeAction"
:list="10"/>
:list="list"/>
</view>
</template>
<script>
import workListSwipe from '@/components/list/workList/workListSwipe.vue'
import mixinList from '@/mixins/list.js'
import { mapState } from 'vuex'
export default {
mixins : [mixinList],
components : {
@ -35,6 +36,14 @@
mixinsListApi : 'employeeQueryCollectionJobList',
}
},
computed : {
...mapState([
'role',
]),
},
onLoad() {
this.mixinsListApi = (this.role ? 'boss' : 'employee') + 'QueryCollectionJobList'
},
methods: {
clickSwipeAction({e, item}){
console.log(e, item);


+ 10
- 1
pages_order/mine/contract.vue View File

@ -16,7 +16,7 @@
</view>
<view class="content">
<view class="projectContent"
v-for="(item, index) in 10"
v-for="(item, index) in list"
:key="index">
<img src="../static/contract/contract.png" alt="" />
<view class="itemList">
@ -43,6 +43,7 @@
<script>
import mixinList from '@/mixins/list.js'
import { mapState } from 'vuex'
export default {
mixins : [mixinList],
data() {
@ -65,6 +66,14 @@
mixinsListApi : 'bossQueryContractList',
}
},
computed : {
...mapState([
'role',
]),
},
onLoad() {
this.mixinsListApi = (this.role ? 'boss' : 'employee') + 'QueryContractList'
},
methods: {
clickTabs({index}) {
this.type = index


+ 61
- 18
pages_order/mine/help.vue View File

@ -8,7 +8,7 @@
<text>问题和意见</text>
<text style="color: #BD3624;">*</text>
</view>
<uv-textarea v-model="value" :count="true" border="none" height="400"
<uv-textarea v-model="form.question" :count="true" border="none" height="400"
placeholder="请把发现的问题提交给我们,感谢您的参与(必填)"
:text-style="{color:'#BCB7B7',fontSize:'28rpx'}" />
</view>
@ -16,7 +16,7 @@
<view>
<view class="help-issue">
<text>问题截图</text>
<text style="color: #BD3624;">*</text>
<!-- <text style="color: #BD3624;">*</text> -->
</view>
<view class="help-screenshot">
@ -28,26 +28,27 @@
</view>
</view>
<!-- <view>
<view>
<view class="help-issue">
<text>联系方式</text>
<text style="color: #BD3624;">*</text>
</view>
<uv-input placeholder="请输入联系方式" fontSize="24rpx" border="bottom"
:custom-style="{backgroundColor: '#fff'}">
<template #prefix>
<uv-text text="联系姓名" size="24rpx" margin="20rpx 10rpx 20rpx 10rpx" />
</template>
</uv-input>
<uv-input placeholder="请输入联系姓名" border="none" fontSize="24rpx"
:custom-style="{backgroundColor: '#fff'}">
<template #prefix>
<uv-text text="联系方式" size="24rpx" margin="20rpx 10rpx 20rpx 10rpx" />
</template>
</uv-input>
</view> -->
<view class="form-sheet-cell">
<view>
联系姓名
</view>
<input placeholder="请输入联系姓名" v-model="form.name" />
</view>
<view class="form-sheet-cell">
<view>
联系电话
</view>
<input placeholder="请输入联系电话" v-model="form.phone" />
</view>
</view>
<view class="help-button">
<view>确认</view>
<!-- <view>历史提交</view> -->
<view @click="submit">确认</view>
</view>
</view>
</view>
@ -57,7 +58,12 @@
export default {
data() {
return {
value: "",
form : {
question : '',
phone : '',
name : '',
image : '',
},
fileList: []
}
},
@ -78,6 +84,32 @@
})
})
},
submit(){
let data = JSON.parse(JSON.stringify(this.form))
if(this.$utils.verificationAll(this.form, {
question : '请输入你的问题和意见',//
// image : '',//
name : '请输入姓名',//
phone : '请输入手机号码',//
})){
return
}
data.image = this.fileList.map((item) => item.url).join(",")
this.$api('addAdvice', data, res => {
if(res.code == 200){
uni.showToast({
title: res.message,
icon:'none'
})
setTimeout(uni.navigateBack, 800, -1)
}
})
},
}
}
</script>
@ -101,6 +133,17 @@
background-color: #fff;
padding: 20rpx;
}
.form-sheet-cell{
display: flex;
background-color: #fff;
padding: 20rpx 30rpx;
font-size: 24rpx;
align-items: center;
view{
width: 150rpx;
}
}
.help-button {
display: flex;


+ 11
- 1
pages_order/mine/seeMy.vue View File

@ -9,7 +9,7 @@
<statisticsNumber title="简历被查看量"/>
<bossList ref="bossList"/>
<bossList ref="bossList" v-if="!role"/>
</view>
</template>
@ -17,6 +17,7 @@
import bossList from '@/components/list/bossList/index.vue'
import statisticsNumber from '../components/statistics/statisticsNumber.vue'
import mixinList from '@/mixins/list.js'
import { mapState } from 'vuex'
export default {
mixins : [mixinList],
components : {
@ -39,8 +40,17 @@
}
},
],
mixinsListApi : 'bossQueryWatchMe',
}
},
computed : {
...mapState([
'role',
]),
},
onLoad() {
this.mixinsListApi = (this.role ? 'boss' : 'employee') + 'QueryWatchMe'
},
methods: {
clickSwipeAction({e, item}){
console.log(e, item);


+ 230
- 0
pages_order/work/jobPosting.vue View File

@ -0,0 +1,230 @@
<template>
<view class="page">
<navbar title="发布招工" leftClick @leftClick="$utils.navigateBack" />
<view class="form">
<view class="help-issue">
<text>招工标题</text>
<text style="color: #BD3624;">*</text>
</view>
<view class="form-sheet-cell">
<input type="text" class="title-input"/>
</view>
<uv-cell
title="工作地点"
rightIconStyle="fontSize: 30rpx;"
value="请选择招工地点"
isLink
></uv-cell>
<uv-cell
title="所属工种"
rightIconStyle="fontSize: 30rpx;"
value="请选择所属工种"
isLink
></uv-cell>
<!-- <view class="form-sheet-cell">
<view class="label">
工作地点
</view>
<view>
请选择招工地点
</view>
<view class="right-icon">
<uv-icon
name="arrow-right"
></uv-icon>
</view>
</view>
<view class="form-sheet-cell">
<view class="label">
学历要求
</view>
<view>
请选择学历要求
</view>
<view class="right-icon">
<uv-icon
name="arrow-right"
></uv-icon>
</view>
</view>
<view class="form-sheet-cell">
<view class="label">
工龄要求
</view>
<view>
请选择工龄要求
</view>
<view class="right-icon">
<uv-icon
name="arrow-right"
></uv-icon>
</view>
</view>
<view class="form-sheet-cell">
<view class="label">
所属工种
</view>
<view>
请选择工种
</view>
<view class="right-icon">
<uv-icon
name="arrow-right"
></uv-icon>
</view>
</view> -->
<view class="form-sheet-cell">
<view class="label">
薪资范围
</view>
<view class="price">
<input placeholder="最小值" v-model="form.min" />
~
<input placeholder="最大值" v-model="form.max" />
</view>
</view>
<view class="form-sheet-cell">
<view class="label">
结算方式
</view>
<uv-radio-group v-model="radiovalue">
<view class="price">
<uv-radio
:customStyle="{margin: '8px'}"
v-for="(item, index) in radiolist"
:key="index"
iconSize="30rpx"
size="40rpx"
labelSize="26rpx"
:label="item.name"
:name="item.name">
</uv-radio>
</view>
</uv-radio-group>
</view>
<view class="form-sheet-cell">
<view class="label">
工作性质
</view>
<uv-radio-group v-model="radiovalue">
<view class="price">
<uv-radio
:customStyle="{margin: '8px'}"
v-for="(item, index) in radiolist"
:key="index"
iconSize="30rpx"
size="40rpx"
labelSize="26rpx"
:label="item.name"
:name="item.name">
</uv-radio>
</view>
</uv-radio-group>
</view>
<view class="form-sheet-cell">
<view class="label">
联系电话
</view>
<input placeholder="请输入联系电话" v-model="form.phone" />
</view>
<view class="">
<uv-textarea
v-model="form.content"
count
:maxlength="300"
autoHeight
placeholder="请输入详细介绍"></uv-textarea>
</view>
<view class="btn">
发布
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
form : {
},
radiovalue : '',
radiolist : [
{
name : '日结',
},
{
name : '月结',
},
],
}
},
methods: {
}
}
</script>
<style scoped lang="scss">
.page{
background-color: #fff;
min-height: 100vh;
box-sizing: border-box;
color: #333333;
font-size: 28rpx;
/deep/ text{
font-size: 28rpx !important;
}
.form{
padding: 30rpx;
.help-issue {
margin: 20rpx;
}
.title-input{
border: 1px solid $uni-color;
width: 100%;
border-radius: 10rpx;
padding: 10rpx 20rpx;
box-sizing: border-box;
height: 65rpx;
}
.form-sheet-cell{
display: flex;
background-color: #fff;
padding: 20rpx 30rpx;
align-items: center;
.label{
width: 160rpx;
}
.price{
display: flex;
text-align: center;
input{
width: 150rpx;
border: 1px solid $uni-color;
margin: 0 10rpx;
}
}
.right-icon{
margin-left: auto;
}
}
.btn{
border-radius: 40rpx;
padding: 20rpx;
margin: 40rpx;
background: $uni-color;
color: #fff;
text-align: center;
font-size: 28rpx;
}
}
}
</style>

+ 1
- 1
store/store.js View File

@ -10,7 +10,7 @@ const store = new Vuex.Store({
state: {
configList: [], //配置列表
// 角色 true为老板 false为工人
role : true,
role : false,
userInfo : {}, //用户信息
banner : [],//轮播图
jobTypeList : [],//工种


Loading…
Cancel
Save