Browse Source

新增部分接口

master
1263428893@qq.com 5 months ago
parent
commit
e40ecca293
12 changed files with 629 additions and 60 deletions
  1. +4
    -1
      common/api.js
  2. +20
    -2
      pages.json
  3. +1
    -1
      pages/auth/index.vue
  4. +14
    -12
      pages/identity/index.vue
  5. +23
    -14
      pages/login/index.vue
  6. +4
    -4
      pages/order/component/enterprise.vue
  7. +46
    -1
      pages/user/index.vue
  8. +241
    -0
      pages_subpack/enterprise/index.vue
  9. +31
    -15
      pages_subpack/order-detail/index.vue
  10. +17
    -5
      pages_subpack/payment/index.vue
  11. +224
    -0
      pages_subpack/person/index.vue
  12. +4
    -5
      pages_subpack/resume/index.vue

+ 4
- 1
common/api.js View File

@ -59,4 +59,7 @@ export const bossOrderList = (params) => http.get('/employ-api/order/bossOrderLi
export const workOrderList = (params) => http.get('/employ-api/order/workOrderList', {params:params})
// 获取平台隐私政策,协议等
export const getSysText = (params) => http.post('/employ-api/index/getSysText', params)
// 小程序-绑定手机号
export const bindPhone = (params) => http.post('/employ-api/user/bindPhone', params)
// 修改头像和昵称,传nickName和headimgurl
export const updateUserInfo = (params) => http.post('/employ-api/user/updateUserInfo', params)

+ 20
- 2
pages.json View File

@ -123,9 +123,27 @@
}
},
{
"path": "master-settled/index",
"path": "enterprise/index",
"style": {
"navigationBarTitleText": "师傅入驻",
"navigationBarTitleText": "企业",
"navigationStyle":"default",
"navigationBarBackgroundColor": "#FF7A31",
"navigationBarTextStyle": "white"
}
},
{
"path": "person/index",
"style": {
"navigationBarTitleText": "个人",
"navigationStyle":"default",
"navigationBarBackgroundColor": "#FF7A31",
"navigationBarTextStyle": "white"
}
},
{
"path": "resume/index",
"style": {
"navigationBarTitleText": "我的简历",
"navigationStyle":"default",
"navigationBarBackgroundColor": "#FF7A31",
"navigationBarTextStyle": "white"


+ 1
- 1
pages/auth/index.vue View File

@ -18,7 +18,7 @@
</view> -->
<view class="se-mx-80 se-br-40 se-mt-40 se-flex-h-c se-h-80 se-lh-80 se-ta-c se-fs-24 se-c-33">
<u-checkbox-group @change="checkboxChange" v-model="checked">
<u-checkbox name="1" activeColor="#07C160" label-size="12" shape="circle" label="阅读并同意"></u-checkbox>
<u-checkbox name="1" activeColor="#ff7a31" label-size="12" shape="circle" label="阅读并同意"></u-checkbox>
</u-checkbox-group>
<text class="se-c-green" @click="show=true">隐私政策</text>
<text class="se-c-green" @click="show=true">服务条款</text>


+ 14
- 12
pages/identity/index.vue View File

@ -3,12 +3,12 @@
<view class="se-fs-40 se-fw-6 se-ta-c se-pt-120">
请选择您要入驻的身份
</view>
<view @click="onBusinessSettled" class="business se-mt-80 se-br-10 se-mx-35 se-bgc-red se-flex se-flex-h-sb se-w-680 se-h-240 se-fs-48 se-c-white">
<text class="se-ml-80">企业/个人入驻</text>
<view @click="onPerson" class="business se-mt-80 se-br-10 se-mx-35 se-bgc-red se-flex se-flex-h-sb se-w-680 se-h-240 se-fs-48 se-c-white">
<text class="se-ml-80">个人入驻</text>
<image class="se-a-170 se-br-p-50 se-mr-80" src="@/static/image/header.png" mode=""></image>
</view>
<view @click="onMasterSettled" class="master se-mt-80 se-br-10 se-mx-35 se-bgc-orange se-flex se-flex-h-sb se-w-680 se-h-240 se-fs-48 se-c-white">
<text class="se-ml-80">师傅入驻</text>
<view @click="onEnterprise" class="master se-mt-80 se-br-10 se-mx-35 se-bgc-orange se-flex se-flex-h-sb se-w-680 se-h-240 se-fs-48 se-c-white">
<text class="se-ml-80">企业入驻</text>
<image class="se-a-170 se-br-p-50 se-mr-80" src="@/static/image/47761.png" mode=""></image>
</view>
<view class="se-pos-fixed se-flex-h-c se-bs-t se-w-750 se-h-200" style="background-color: #fff;bottom: 0;left: 0;">
@ -27,19 +27,21 @@
}
},
methods:{
onJump(){
uni.switchTab({
url:"/pages/home/index"
//
onPerson(){
uni.navigateTo({
url:"/pages_subpack/person/index"
})
},
onBusinessSettled(){
//
onEnterprise(){
uni.navigateTo({
url:"/pages_subpack/business-settled/index"
url:"/pages_subpack/enterprise/index"
})
},
onMasterSettled(){
uni.navigateTo({
url:"/pages_subpack/master-settled/index"
onJump(){
uni.switchTab({
url:"/pages/home/index"
})
}
}


+ 23
- 14
pages/login/index.vue View File

@ -3,7 +3,7 @@
<view class="se-pt-200 se-flex se-flex-h-c se-flex-ff-cw">
<image class="se-w-150 se-h-150" src="@/static/image/logo.png" mode=""></image>
<view class="se-flex se-flex-h-c se-fs-34 se-fw-6 se-c-black se-mt-40">
用工平台小程序
智选猎头
</view>
<view class="se-mt-20 se-fs-26 se-c-black se-flex se-flex-h-c">
申请获取您的头像昵称
@ -23,17 +23,16 @@
<input type="nickname" placeholder="请输入昵称" v-model="nameUser"
@blur="bindblur" class="se-h-80 se-lh-80 se-w-320 se-fs-24 se-ta-r" placeholder-class="se-fs-24 se-ta-r" />
</view>
<!-- <view class=" se-b-b se-flex se-h-140 se-lh-140 se-flex-h-sb">
<view class=" se-b-b se-flex se-h-140 se-lh-140 se-flex-h-sb">
<text>手机号</text>
<button v-if="phone" class="default-btn se-h-100 se-p-0 se-m-0" open-type="getPhoneNumber" @getphonenumber="onPhonenumber">{{phone}}</button>
<button v-else class="se-w-140 se-h-60 se-lh-60 se-fs-20 se-bgc-green se-c-white se-py-0 se-br-30 se-px-20 se-m-0" open-type="getPhoneNumber" @getphonenumber="onPhonenumber">
<button v-else class="se-w-140 se-h-60 se-lh-60 se-fs-20 se-bgc-orange se-c-white se-py-0 se-br-30 se-px-20 se-m-0" open-type="getPhoneNumber" @getphonenumber="onPhonenumber">
获取手机号
</button>
</view> -->
</view>
</view>
<view class="se-mx-40">
<view @click="onUpdateInfo" class="se-br-40 se-flex-h-c se-h-80 se-lh-80 se-ta-c se-fs-32 se-c-white se-bgc-green">
<view @click="onUpdateInfo" class="se-br-40 se-flex-h-c se-h-80 se-lh-80 se-ta-c se-fs-32 se-c-white se-bgc-orange">
确认
</view>
</view>
@ -41,7 +40,7 @@
</template>
<script>
import { appletLogin } from "@/common/api.js"
import { updateUserInfo,bindPhone,userInfo } from "@/common/api.js"
export default {
name : 'Login',
data() {
@ -53,14 +52,24 @@
}
},
onLoad(options) {
console.info(options)
if(options.back==1){
this.imagUrl = uni.getStorageSync('userInfo').headImage
this.nameUser = uni.getStorageSync('userInfo').nickName
this.phone = uni.getStorageSync('userInfo').phone
this.back = options.back
this.onUserInfo()
}
},
methods: {
onUserInfo(){
let params={}
userInfo(params).then(response=>{
this.imagUrl=response.result.headImage
this.nameUser=response.result.nickName?response.result.nickName:"微信昵称"
this.phone=response.result.phone?response.result.phone:""
}).catch(error=>{
})
},
bindblur(event) {
this.nameUser = event.target.value
},
@ -104,13 +113,13 @@
code : res.code,
headimgurl:that.imagUrl,
nickName:that.nameUser,
openid:uni.getStorageSync('userInfo').appletOpenid
// phone:that.phone
openid:uni.getStorageSync('userInfo').appletOpenid,
phone:that.phone
}
// &&that.phone
if(that.imagUrl&&that.nameUser){
appletLogin(params).then((response) => {
if(this.back==1){
updateUserInfo(params).then((response) => {
if(that.back==1){
uni.navigateBack({
delta:1
})


+ 4
- 4
pages/order/component/enterprise.vue View File

@ -17,7 +17,7 @@
@click="tabClick"></u-tabs>
</u-sticky>
<view class="se-p-40">
<view class="se-px-40 se-mb-30 se-py-30 se-bgc-white se-br-40 se-bs-b" v-for="(items,indexs) in 20" :key="indexs">
<view class="se-px-40 se-mb-30 se-py-30 se-bgc-white se-br-40 se-bs-b" v-for="(items,indexs) in list" :key="indexs">
<view class="se-flex se-flex-h-sb se-fw-6 se-fs-32 se-pb-20">
<view class="se-flex">
<text>工装石膏板搬运</text>
@ -122,10 +122,10 @@
pageSize:that.pageSize
}
bossOrderList(params).then(response=>{
if(this.pageNo==1){
this.list = response.result.records
if(that.pageNo==1){
that.list = response.result.records
}else{
this.list = this.list.concat(response.result.records)
that.list = that.list.concat(response.result.records)
}
}).catch(error=>{


+ 46
- 1
pages/user/index.vue View File

@ -6,7 +6,7 @@
<view class="se-ml-20 se-flex se-flex-v-sa se-flex-ai-fs">
<view class="se-flex">
<text class="se-fw-6 se-fs-30">{{nickName}}</text>
<view class="se-flex se-flex-ai-c se-ml-20">
<view class="se-flex se-flex-ai-c se-ml-20" @click="onEdit()">
<image class="se-a-25 se-mr-10" src="@/static/image/pencil.png" mode=""></image>
<text class="se-fs-22">修改资料</text>
</view>
@ -63,6 +63,24 @@
</view>
</view>
<view class="se-grid">
<view class="se-flex-v-c se-mb-20 se-mt-20 se-cursor-p" @click="onEnterprise()">
<view class="se-w-80 se-h-80 se-flex se-flex-v-c">
<image class="se-a-50" src="@/static/image/setting.png" mode=""></image>
</view>
<text class="se-h-60 se-lh-60 se-c-33 se-fs-26 se-ta-c se-mt-10 se-toe-2">企业入驻</text>
</view>
<view class="se-flex-v-c se-mb-20 se-mt-20 se-cursor-p" @click="onPerson()">
<view class="se-w-80 se-h-80 se-flex se-flex-v-c">
<image class="se-a-50" src="@/static/image/setting.png" mode=""></image>
</view>
<text class="se-h-60 se-lh-60 se-c-33 se-fs-26 se-ta-c se-mt-10 se-toe-2">个人入驻</text>
</view>
<view class="se-flex-v-c se-mb-20 se-mt-20 se-cursor-p" @click="onResume()">
<view class="se-w-80 se-h-80 se-flex se-flex-v-c">
<image class="se-a-50" src="@/static/image/setting.png" mode=""></image>
</view>
<text class="se-h-60 se-lh-60 se-c-33 se-fs-26 se-ta-c se-mt-10 se-toe-2">我的简历</text>
</view>
<view class="se-flex-v-c se-mb-20 se-mt-20 se-cursor-p" @click="onCustomerService()">
<view class="se-w-80 se-h-80 se-flex se-flex-v-c">
<image class="se-a-50" src="@/static/image/setting.png" mode=""></image>
@ -123,6 +141,11 @@
this.onBannerList()
},
methods: {
onEdit(){
uni.navigateTo({
url:"/pages/login/index?back=1"
})
},
onBannerList(){
bannerList({}).then(response=>{
console.info("banner",response)
@ -176,6 +199,28 @@
url:"/pages_subpack/version/index"
})
},
onBusinessSettled(){
uni.navigateTo({
url:"/pages_subpack/business-settled/index"
})
},
//
onPerson(){
uni.navigateTo({
url:"/pages_subpack/person/index"
})
},
//
onEnterprise(){
uni.navigateTo({
url:"/pages_subpack/enterprise/index"
})
},
onResume(){
uni.navigateTo({
url:"/pages_subpack/resume/index"
})
},
onCustomerService(){
uni.showModal({
title: '联系客服',


+ 241
- 0
pages_subpack/enterprise/index.vue View File

@ -0,0 +1,241 @@
<template>
<!-- 企业 -->
<view>
<u--form labelPosition="left" :model="form" :rules="rules" ref="uForm" labelWidth="80">
<view class="se-p-20">
<view class="se-p-20 se-bgc-white se-br-10 se-fs-20">
<u-form-item label="姓名" prop="name">
<u--input v-model="form.name" class="se-bgc-f5" placeholder="请输入姓名"></u--input>
</u-form-item>
<!-- <u-form-item label="密码" prop="password">
<u--input v-model="form.password" class="se-bgc-f5" placeholder="请输入您的密码"></u--input>
</u-form-item> -->
<u-form-item label="联系电话" prop="mobile">
<u--input v-model="form.mobile" class="se-bgc-f5" placeholder="请输入联系方式"></u--input>
</u-form-item>
<u-form-item label="公司名称" prop="company">
<u--input v-model="form.company" class="se-bgc-f5" placeholder="请输入公司名称"></u--input>
</u-form-item>
<u-form-item label="公司地址" prop="address">
<u--input v-model="form.address" class="se-bgc-f5" placeholder="请输入公司地址"></u--input>
</u-form-item>
<u-form-item label="行业" prop="industryId" @click="handleIndChange()">
<u--input readonly v-model="form.industryName" placeholder="请选择行业" border="bottom"></u--input>
<u-icon slot="right" name="arrow-right"></u-icon>
</u-form-item>
</view>
</view>
<view class="se-p-20">
<view class="se-px-20 se-pb-20 se-bgc-white se-br-10 se-fs-20">
<u-form-item prop="file" labelWidth="2">
<view class="se-flex se-flex-v-sa">
<view class="se-py-20 se-w-p-100 se-flex">
<view class="line-orange"></view>
<view class="se-ml-10">
营业执照上传
</view>
</view>
<view class="se-py-20 se-w-p-100">
<u-upload :fileList="form.businessLicenseFile" @afterRead="afterRead" @delete="deletePic" name="1"
multiple :maxCount="10"></u-upload>
</view>
</view>
</u-form-item>
</view>
</view>
<view class="se-px-20 se-pt-20">
<view class="se-px-20 se-pb-80 se-fs-20 se-flex">
<view @click="submit" class="se-mx-10 se-flex-1 se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-white se-bgc-orange">
<text>提交审核</text>
</view>
<!-- <view
class="se-mx-10 se-flex-1 se-b se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-66 se-bgc-f5">
<text>联系我们</text>
</view> -->
</view>
</view>
</u--form>
<u-action-sheet :actions="indList" @select="selectIndClick" title="行业" :show="show" @close="show=false"></u-action-sheet>
</view>
</template>
<script>
import {roleBoss,industryList} from "@/common/api.js"
export default{
data(){
return{
show:false,
indList: [],
form: {
role:1,
name: 'jerryxiao',
password: '',
mobile: '13189698114',
company:'小小公司',
idCard:'',
address:'湖南长沙岳麓区',
industryId:'1865294357074157570',
industryName:'建筑',
businessLicense: '',
businessLicenseFile:[
{
url:"https://tennis-oss.xzaiyp.top/2024-12-22/cf84422d-dcf7-4efa-82e7-371454eafbee.png"
}
]
},
rules: {
name: [{
type: 'string',
required: true,
message: '请输入姓名名称',
trigger: ['blur', 'change']
}],
password: [{
type: 'string',
required: true,
message: '请输入您的密码',
trigger: ['blur', 'change']
}],
mobile: [
{
required: true,
message: '请输入手机号',
trigger: ['change','blur'],
},
{
validator: (rule, value, callback) => {
return uni.$u.test.mobile(value);
},
message: '手机号码不正确',
trigger: ['change','blur'],
},
],
company: [{
type: 'string',
required: true,
message: '请输入公司名称',
trigger: ['blur', 'change']
}],
address: [{
type: 'string',
required: true,
message: '请输入公司地址',
trigger: ['blur', 'change']
}],
industryId: [{
type: 'string',
required: true,
message: '请选择行业',
trigger: ['blur', 'change']
}],
businessLicenseFile:[
{
validator: (rule, value, callback) => {
if (value === null || value === undefined || value === '' || (Array.isArray(value) && value.length === 0)) {
callback(new Error('请选择营业执照'));
} else {
callback();
}
},
trigger: 'blur'
}
]
},
}
},
watch: {
fileList(newValue, oldValue) {
if (newValue.length > 0) {
this.form.file = '有'
} else {
this.form.file = ''
}
}
},
onReady() {
this.onIndustryList()
this.$refs.uForm.setRules(this.rules)
},
methods: {
handleIndChange(){
this.show = true
},
selectIndClick(event){
console.info("selectIndClick",event)
this.form.industryId = event.id
this.form.industryName = event.name
this.show = false
},
onIndustryList(){
industryList({}).then(response=>{
console.info(response)
this.indList = response.result
}).catch(error=>{
})
},
onRoleBoss(){
let that = this
let params={
userName:that.form.name,
role:that.form.role,
phone:that.form.mobile,
companyName:that.form.company,
companyAddress:that.form.companyAddress,
industryId:that.form.industryId,
industryName:that.form.industryName,
businessLicense:that.form.businessLicenseFile.map(item => item.url).join(','),
}
roleBoss(params).then(response=>{
uni.$u.toast("提交成功,等待申请")
setTimeout(()=>{
uni.switchTab({
url:"/pages/home/index"
})
},1500)
}).catch(error=>{
// uni.$u.toast("")
setTimeout(()=>{
uni.switchTab({
url:"/pages/home/index"
})
},1500)
})
},
submit() {
let that = this
that.$refs.uForm.validate().then(res => {
that.onRoleBoss()
}).catch(errors => {
// uni.$u.toast('')
})
},
deletePic(event) {
this.form.businessLicenseFile.splice(event.index, 1)
},
async afterRead(e) {
let self = this
e.file.forEach(file => {
self.$Oss.ossUpload(file.url).then(url => {
console.info(url)
self.form.businessLicenseFile.push({
url
})
})
})
}
}
}
</script>
<style lang="scss" scoped>
.line-orange {
width: 8rpx;
height: 32rpx;
background: #ff7a31;
border-radius: 4rpx;
}
</style>

+ 31
- 15
pages_subpack/order-detail/index.vue View File

@ -99,37 +99,38 @@
<view class="se-flex se-flex-ai-c se-pb-10">
<view class="line-orange"></view>
<view class="se-ml-10 se-fs-32 se-c-black se-fw-6">
商品详情
工作详情
</view>
</view>
<view class="se-flex se-flex-v-sa se-flex-ai-fs se-py-20">
<view class="se-flex">
<view class="se-w-160 se-h-160">
<image class="se-w-160 se-h-160 se-br-10" src="https://cdn.uviewui.com/uview/album/1.jpg" mode=""></image>
<image class="se-w-160 se-h-160 se-br-10" :src="obj.workPic" mode=""></image>
</view>
<view class="se-ml-20 se-flex se-flex-v-sa se-flex-ai-fs">
<view class="se-fw-6 se-c-black se-fs-30 se-display-ib">泰山工装石膏板搬运</view>
<view class="se-fs-24 se-c-text-third se-display-ib">所属行业:水泥搬运</view>
<view class="se-fs-24 se-c-text-third se-display-ib">所属工种:中午搬运</view>
<view class="se-fw-6 se-c-black se-fs-30 se-display-ib">{{obj.title}}</view>
<view class="se-fs-24 se-c-text-third se-display-ib">所属行业:{{obj.industryName}}</view>
<!-- <view class="se-fs-24 se-c-text-third se-display-ib">所属工种:{{obj.title}}</view> -->
<view class="se-fs-24 se-c-text-third se-display-ib">工作时间:{{obj.workTime}}</view>
</view>
</view>
<view class="se-flex se-flex-h-sb se-w-p-100 se-pt-20">
<view class="se-fs-24 se-display-ib">薪资</view>
<view class="se-c-orange se-fs-32 se-fw-6 se-display-ib">6000</view>
<view class="se-c-orange se-fs-32 se-fw-6 se-display-ib">{{obj.rateMoney}}</view>
</view>
</view>
<u-line dashed></u-line>
<view class="se-py-10 se-pb-30">
<view class="se-mt-30">
<text class="se-fs-28 se-c-black se-fw5">姓名:李满和</text>
<text class="se-fs-24 se-c-text-third se-ml-40">联系方式:13189698114</text>
<view class="se-bgc-orange se-c-white se-fs-20 se-display-ib se-px-10 se-py-5 se-br-10 se-ml-10">
<text class="se-fs-28 se-c-black se-fw5">姓名:{{obj.userName}}</text>
<text class="se-fs-24 se-c-text-third se-ml-40">联系方式:{{obj.phone}}</text>
<view class="se-bgc-orange se-c-white se-fs-20 se-display-ib se-px-10 se-py-5 se-br-10 se-ml-10" @click="copyText(obj.phone)">
复制
</view>
</view>
<view class="se-mt-10">
<text class="se-fs-24 se-c-33">工作地址:湖南省长沙市雨花区高升路与时代阳光大道西交叉口东北方向140米御天国际商汇中心5栋6023</text>
<view class="se-bgc-orange se-c-white se-fs-20 se-display-ib se-px-10 se-py-5 se-br-10 se-ml-10">
<text class="se-fs-24 se-c-33">工作地址:{{obj.workerAddress}}</text>
<view class="se-bgc-orange se-c-white se-fs-20 se-display-ib se-px-10 se-py-5 se-br-10 se-ml-10" @click="copyText(obj.workerAddress)">
复制
</view>
</view>
@ -145,7 +146,7 @@
</view>
<view class="se-flex se-pt-30 se-flex-h-sb">
<view class="se-fs-24 se-display-ib">工作时间</view>
<view class="se-fs-24 se-display-ib">3h</view>
<view class="se-fs-24 se-display-ib">{{obj.workTime}}</view>
</view>
</view>
<u-line dashed></u-line>
@ -154,7 +155,7 @@
工作内容
</view>
<view class="se-fs-24 se-pt-20 se-pb-20 se-lh-40">
<u-parse :content="detail"></u-parse>
<u-parse :content="obj.detail"></u-parse>
</view>
</view>
<view class="se-px-220 se-pb-30 se-fs-20 se-flex se-flex-h-c">
@ -207,7 +208,8 @@
3具备一定的设计提案能力能完整的呈现设计思路与创意能清晰的表达设计逻辑与思考;<br/>
4热爱设计平面基本功扎实拥有优良的审美与创意想法对版式色彩把控能力强;对工作富有责任心具备团队沟通与协作能力;<br/>
5精通 PSAICDR 等平面设计软件能独立完成日常平面设计工作内容熟练使用 PPT/Keynote能完成提案内容的材料美化工作<br/>
</p>`
</p>`,
obj:{}
}
},
onLoad(options) {
@ -221,11 +223,25 @@
orderId:that.orderId
}
orderDetail(params).then(response=>{
that.obj = response.result
}).catch(error=>{
})
},
copyText(event){
uni.setClipboardData({
data: event,
success: () => {
uni.showToast({
title: "复制成功",
icon: "none",
});
},
fail: (err) => {
console.error("复制失败", err);
},
})
},
onCancel(){
uni.navigateBack({
delta:1


+ 17
- 5
pages_subpack/payment/index.vue View File

@ -54,7 +54,10 @@
<view class="se-mt-10 se-py-10 se-br-20">
<text class="se-c-66 se-fs-22">温馨提示下单前请仔细查看下单需知</text>
<view class="se-flex-h-fs se-br-40 se-mt-20 se-flex-ai-fs se-h-80 se-lh-80 se-ta-c se-fs-24 se-c-33" style="align-items: unset;">
<u-checkbox :checked="checked" activeColor="#ff7a31" label-size="12" shape="circle" label="阅读并同意"></u-checkbox>
<u-checkbox-group @change="checkboxChange" v-model="checked">
<u-checkbox name="true" activeColor="#ff7a31" label-size="12" shape="circle" label="阅读并同意"></u-checkbox>
</u-checkbox-group>
<!-- <u-checkbox v-model="checked" activeColor="#ff7a31" label-size="12" shape="circle" label="阅读并同意"></u-checkbox> -->
<text class="se-c-orange" @click="show=true">用户使用协议</text>
</view>
</view>
@ -69,14 +72,14 @@
</view>
<u-popup :show="show" :custom-style="{alignItems:'center'}" mode="center" bg-color="transparent">
<view class="se-w-600 se-bgc-white se-br-40 se-p-40">
<view class="se-flex se-flex-h-c se-fs-34 se-fw-6 se-c-black se-mt-40">
<view class="se-flex se-flex-h-c se-fs-34 se-fw-6 se-c-black se-mt-0">
用户使用协议
</view>
<view class="se-lh-40 se-mt-40 se-fs-24 se-c-99">
<u-parse :content="getValueByName('yhsyxx')"></u-parse>
</view>
<view class="se-flex se-flex-h-sb se-mt-40">
<view @click="show=false" class="se-br-20 se-flex-1 se-flex-h-c se-h-80 se-lh-80 se-ta-c se-fs-32 se-c-66 se-bgc-f5">
<view @click="show=false" class="se-br-20 se-flex-1 se-flex-h-c se-h-80 se-lh-80 se-ta-c se-fs-32 se-c-white se-bgc-orange">
<text>确认</text>
</view>
</view>
@ -94,7 +97,7 @@
return{
show:false,
id:"",
checked:false,
checked:[],
myMoney:"",//
items:{},
amount:"9.9",
@ -123,6 +126,9 @@
})
},
checkboxChange(n) {
console.log('change', n);
},
getOrderDetail(){
orderDetail({orderId:this.id}).then(response=>{
console.info('orderDetail',response)
@ -133,7 +139,13 @@
},
onPay(){
let that = this
// if(that.checked==false) return;
console.info(that.checked)
if(that.checked.length==0){
return uni.showToast({
icon: "none",
title: "请勾选隐私协议"
})
}
console.info(that.payRadio)
if(that.payRadio==1){


+ 224
- 0
pages_subpack/person/index.vue View File

@ -0,0 +1,224 @@
<template>
<!-- 个人 -->
<view>
<u--form labelPosition="left" :model="form" :rules="rules" ref="uForm" labelWidth="80">
<view class="se-p-20">
<view class="se-p-20 se-bgc-white se-br-10 se-fs-20">
<u-form-item label="姓名" prop="name">
<u--input v-model="form.name" class="se-bgc-f5" placeholder="请输入姓名名称"></u--input>
</u-form-item>
<!-- <u-form-item label="密码" prop="password">
<u--input v-model="form.password" class="se-bgc-f5" placeholder="请输入您的密码"></u--input>
</u-form-item> -->
<u-form-item label="联系电话" prop="mobile">
<u--input v-model="form.mobile" class="se-bgc-f5" placeholder="请输入联系方式"></u--input>
</u-form-item>
<u-form-item label="居住地址" prop="address">
<u--input v-model="form.address" class="se-bgc-f5" placeholder="请输入详细地址"></u--input>
</u-form-item>
<u-form-item label="行业" prop="industryId" @click="handleIndChange()">
<u--input readonly v-model="form.industryName" placeholder="请选择行业" border="bottom"></u--input>
<u-icon slot="right" name="arrow-right"></u-icon>
</u-form-item>
</view>
</view>
<view class="se-p-20">
<view class="se-px-20 se-pb-20 se-bgc-white se-br-10 se-fs-20">
<u-form-item prop="file" labelWidth="2">
<view class="se-flex se-flex-v-sa">
<view class="se-py-20 se-w-p-100 se-flex">
<view class="line-orange"></view>
<view class="se-ml-10">
身份证上传(正反面)
</view>
</view>
<view class="se-py-20 se-w-p-100">
<u-upload :fileList="form.idCardFile" @afterRead="afterRead" @delete="deletePic" name="1"
multiple :maxCount="10"></u-upload>
</view>
</view>
</u-form-item>
</view>
</view>
<view class="se-px-20 se-pt-20">
<view class="se-px-20 se-pb-80 se-fs-20 se-flex">
<view @click="submit"
class="se-mx-10 se-flex-1 se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-white se-bgc-orange">
<text>提交审核</text>
</view>
<!-- <view class="se-mx-10 se-flex-1 se-b se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-66 se-bgc-f5">
<text>联系我们</text>
</view> -->
</view>
</view>
</u--form>
<u-action-sheet :actions="indList" @select="selectIndClick" title="行业" :show="show" @close="show=false"></u-action-sheet>
</view>
</template>
<script>
import {roleBoss,industryList} from "@/common/api.js"
export default{
data(){
return{
show:false,
indList: [],
fileList: [],
form: {
role:0,
name: 'jerryxiao',
password: '',
mobile: '13189698114',
address:'湖南长沙岳麓区',
industryId:'1865294357074157570',
industryName:'建筑',
idCard:'',
idCardFile:[
{
url:"https://tennis-oss.xzaiyp.top/2024-12-22/cf84422d-dcf7-4efa-82e7-371454eafbee.png"
}
]
},
rules: {
name: [{
type: 'string',
required: true,
message: '请输入姓名名称',
trigger: ['blur', 'change']
}],
password: [{
type: 'string',
required: true,
message: '请输入您的密码',
trigger: ['blur', 'change']
}],
mobile: [
{
required: true,
message: '请输入手机号',
trigger: ['change','blur'],
},
{
validator: (rule, value, callback) => {
return uni.$u.test.mobile(value);
},
message: '手机号码不正确',
trigger: ['change','blur'],
},
],
address: [{
type: 'string',
required: true,
message: '请输入公司地址',
trigger: ['blur', 'change']
}],
industryId: [{
type: 'string',
required: true,
message: '请选择行业',
trigger: ['blur', 'change']
}],
idCardFile:[
{
validator: (rule, value, callback) => {
if (value === null || value === undefined || value === '' || (Array.isArray(value) && value.length === 0)) {
callback(new Error('请选择身份证'));
} else {
callback();
}
},
trigger: 'blur'
}
]
},
}
},
watch: {
fileList(newValue, oldValue) {
if (newValue.length > 0) {
this.form.file = '有'
} else {
this.form.file = ''
}
}
},
onReady() {
this.onIndustryList()
this.$refs.uForm.setRules(this.rules)
},
methods: {
handleIndChange(){
this.show = true
},
selectIndClick(event){
console.info("selectIndClick",event)
this.form.industryId = event.id
this.form.industryName = event.name
this.show = false
},
onIndustryList(){
industryList({}).then(response=>{
console.info(response)
this.indList = response.result
}).catch(error=>{
})
},
submit() {
let that = this
that.$refs.uForm.validate().then(res => {
that.onRoleBoss()
}).catch(errors => {
uni.$u.toast('校验失败')
})
},
onRoleBoss(){
let that = this
let params={
userName:that.form.name,
role:that.form.role,
phone:that.form.mobile,
industryId:that.form.industryId,
industryName:that.form.industryName,
idCard:that.form.idCardFile.map(item => item.url).join(','),
}
roleBoss(params).then(response=>{
uni.$u.toast("提交成功,等待申请")
setTimeout(()=>{
uni.switchTab({
url:"/pages/home/index"
})
},1500)
}).catch(error=>{
setTimeout(()=>{
uni.switchTab({
url:"/pages/home/index"
})
},1500)
})
},
deletePic(event) {
this.form.idCardFile.splice(e.index, 1)
},
async afterRead(e) {
let self = this
e.file.forEach(file => {
self.$Oss.ossUpload(file.url).then(url => {
self.form.idCardFile.push({
url
})
})
})
}
}
}
</script>
<style lang="scss" scoped>
.line-orange {
width: 8rpx;
height: 32rpx;
background: #ff7a31;
border-radius: 4rpx;
}
</style>

pages_subpack/master-settled/index.vue → pages_subpack/resume/index.vue View File

@ -57,14 +57,13 @@
</view>
<view class="se-px-20 se-pt-20">
<view class="se-px-20 se-pb-80 se-fs-20 se-flex">
<view @click="submit"
class="se-mx-10 se-flex-1 se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-white se-bgc-orange">
<text>申请审核</text>
<view @click="submit" class="se-mx-10 se-flex-1 se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-white se-bgc-orange">
<text>保存</text>
</view>
<view
<!-- <view
class="se-mx-10 se-flex-1 se-b se-br-40 se-flex-h-c se-h-60 se-lh-60 se-ta-c se-fs-28 se-c-66 se-bgc-f5">
<text>联系我们</text>
</view>
</view> -->
</view>
</view>
</u--form>

Loading…
Cancel
Save