yujialong 11 months ago
parent acd91b5d0a
commit d2a0fb0517
  1. 2
      apis/modules/user.js
  2. 21
      config/common.js
  3. 1
      other/activityDetail/activityDetail.vue
  4. 172
      other/supplierDetail/supplierDetail.vue
  5. 2
      pages.json
  6. 14
      pages/index/index.vue
  7. 8
      pages/login/login.vue
  8. 43
      pages/person/person.vue
  9. 11
      pages/supplier/supplier.vue
  10. 13
      team/auth/auth.vue
  11. 1
      team/info/info.vue
  12. 7
      team/infoEdit/infoEdit.vue
  13. 13
      team/personAuth/personAuth.vue
  14. 4
      team/userName/userName.vue

@ -52,7 +52,7 @@ export const queryCity = (data) => {
} }
export const updateAvatars = data => { export const updateAvatars = data => {
return post(`users/users/user/updateAvatars?openId=${data.openId}&url=${data.url}&userName=${data.userName}`) return post(`users/users/user/updateAvatars?openId=${data.openId}&url=${data.url}&userName=${data.userName}&platformId=7`)
} }
export const sendPhoneOrEmailCode = (data) => { export const sendPhoneOrEmailCode = (data) => {

@ -25,7 +25,7 @@ export default {
name: '供应商' name: '供应商'
}, },
], ],
// 认证状态 // 审核状态
auditStatus: [ auditStatus: [
{ {
id: null, id: null,
@ -48,4 +48,23 @@ export default {
name: '不通过' name: '不通过'
}, },
], ],
// 认证状态
authenticationStatus: [
{
id: null,
name: '不限'
},
{
id: 0,
name: '未认证'
},
{
id: 1,
name: '认证中'
},
{
id: 2,
name: '已认证'
},
],
} }

@ -248,6 +248,7 @@
.label { .label {
min-width: 180rpx; min-width: 180rpx;
font-size: 28rpx; font-size: 28rpx;
text-align: right;
} }
.val { .val {
font-size: 28rpx; font-size: 28rpx;

@ -1,21 +1,19 @@
<template> <template>
<view class="wrap"> <view class="wrap">
<view class="banner-wrap bg-wh"> <view class="top">
<view class="pic-wrap"> <view class="name">{{ form.classificationName }}</view>
<image class="pic" :src="form.mall.coverDrawing" mode="widthFix"></image>
<view class="pro-title">{{ form.mall.productName }}</view>
</view>
</view> </view>
<view class="detail"> <view class="detail">
<ul class="tabs"> <ul class="tabs">
<li :class="{active: curTab === 0}" @click="tabChange(0)">主页</li> <li :class="{active: curTab === 0}" @click="tabChange(0)">主页</li>
<li :class="{active: curTab === 1, disabled: !form.interfaceDiagram}" @click="tabChange(1)">商品</li> <li :class="{active: curTab === 1}" @click="tabChange(1)">商品</li>
</ul> </ul>
</view> </view>
<view v-if="!curTab" class="detail"> <view v-if="!curTab" class="detail">
<view class="title">公司简介</view> <view class="title">公司简介</view>
<view v-html="form.briefIntroduction"></view>
</view> </view>
<view v-else class="list"> <view v-else class="list">
<!-- <view class="item"> <!-- <view class="item">
@ -51,10 +49,11 @@
</template> </template>
<script> <script>
import { queryTeamInfo } from '@/apis/modules/user.js'
export default { export default {
data() { data() {
return { return {
id: '', teamId: '',
curTab: 0, curTab: 0,
tabs: [ tabs: [
{ {
@ -71,13 +70,8 @@
} }
], ],
form: { form: {
classificationIds: [], classificationName: '',
interfaceDiagram: [], briefIntroduction: ''
mall: {
coverDrawing: ''
},
goodsRes: {},
mallAnnex: []
}, },
shopCartTotal: 0, shopCartTotal: 0,
types: [], types: [],
@ -97,129 +91,25 @@
onShow() { onShow() {
const pages = getCurrentPages() const pages = getCurrentPages()
const { options } = pages[pages.length - 1] const { options } = pages[pages.length - 1]
this.id = options.id this.teamId = options.teamId
this.getInfo() this.getInfo()
this.getShopCart()
this.getTypes()
}, },
methods: { methods: {
// //
getInfo() { async getInfo() {
uni.showLoading({ uni.showLoading({
title: '加载中' title: '加载中'
}) })
detailsOfGoods(this.id).then(res => { const res = await queryTeamInfo({
const e = res.orderDetails teamId: this.teamId
e.mall.productIntroduction = this.$util.removeTag(e.mall.productIntroduction)
// e.mall.detailedIntroduction = this.$util.removeTag(e.mall.detailedIntroduction)
this.form = e
const pics = this.form.mall.interfaceDiagram
if (pics) {
this.form.interfaceDiagram = pics.split(',')
// this.tabs.push({
// name: '',
// id: 1
// })
}
// this.form.mallAnnex && this.form.mallAnnex.length && this.tabs.push({
// name: '',
// id: 2
// })
uni.hideLoading()
}).catch(e => {
uni.hideLoading()
}) })
}, this.form = res.teamInfo
// uni.hideLoading()
getShopCart() {
shoppingCartList({
pageNum: 1,
pageSize: 1000,
}).then(({ data }) => {
this.shopCartTotal = data.total
}).catch(e => {})
},
//
getTypes() {
productCategoryList().then(res => {
this.types = res.classificationList
}).catch(e => {})
}, },
// tab // tab
tabChange(id) { tabChange(id) {
this.curTab = id this.curTab = id
}, },
//
downloadAll() {
const fileName = []
const urls = []
this.form.mallAnnex.forEach(e => {
fileName.push(e.fileName)
urls.push(e.filePath)
})
uni.setStorageSync('files', {
copyWriting: this.form.mall.productName,
fileName,
urls
})
this.$util.to(`/team/send/send`)
},
//
download(item) {
uni.setStorageSync('files', {
copyWriting: this.form.mall.productName,
fileName: [item.fileName],
urls: [item.filePath]
})
this.$util.to(`/team/send/send`)
},
//
addShop() {
uni.showLoading({
title: '加载中'
})
addToShoppingCart({
mallId: this.id
}).then(res => {
this.$util.sucMsg('加购成功')
uni.hideLoading()
this.getShopCart()
}).catch(e => {
uni.hideLoading()
})
},
//
order() {
const { mall } = this.form
const classificationId = this.form.classificationIds[0]
const authority = this.$util.getOrderType(classificationId)
//
uni.setStorageSync('courses', [{
dataOrCourseId: mall.associatedProduct, // id
mallId: mall.mallId,
productName: mall.productName, //
periodOfUse: '', // 使
startTime: this.$util.formatDate(new Date(), 'yyyy-MM-dd'), //
endTime: '', //
remainingPeriod: '', //
marketValue: '', //
marketPrice: mall.marketUnitPrice, //
finalPrice: 0, //
finalValue: 0, //
discountRate: '0%', //
accountNum: 1, //
totalAmount: '', //
isEnable: 0, // 10
ship: 0, // 01
authority, //
options: 2,
miniProgramPictureAddress: mall.appletIcon || '', //
settlementPrice: 0, //
settlementPriceUnit: 0, //
serviceFee: 0 //
}])
this.$util.to(`../orderDetail/orderDetail?shopCart=1`)
}
} }
} }
</script> </script>
@ -228,38 +118,10 @@
.wrap { .wrap {
padding-bottom: 140rpx; padding-bottom: 140rpx;
} }
.banner-wrap { .top {
width: 100%; padding: 20rpx;
border-radius: 0px 0px 20px 20px; .name {
.pic-wrap {
padding: 20rpx 32rpx;
border-bottom: 1px solid #E2E2E2;
}
.pic {
width: 100%;
}
.pro-title {
margin-top: 22rpx;
font-size: 30rpx; font-size: 30rpx;
font-weight: 600;
color: #333;
}
.fields {
padding: 26rpx 32rpx;
}
.field {
display: flex;
align-items: center;
font-size: 28rpx;
color: #333;
&:first-child {
margin-bottom: 22rpx;
}
.icon {
width: 36rpx;
height: 36rpx;
margin-right: 12rpx ;
}
} }
} }
.tabs { .tabs {

@ -150,7 +150,7 @@
"path" : "certified/certified", "path" : "certified/certified",
"style" : "style" :
{ {
"navigationBarTitleText" : "幼儿园认证", "navigationBarTitleText" : "认证",
"enablePullDownRefresh" : false "enablePullDownRefresh" : false
} }
}, },

@ -2,7 +2,7 @@
<view :class="[{oh: !per}]"> <view :class="[{oh: !per}]">
<view class="page"> <view class="page">
<view class="search-wrap"> <view class="search-wrap">
<uni-search-bar class="search" radius="30" placeholder="请输入" v-model="keyword" clearButton="auto" cancelButton="none" @confirm="initList" @clear="clearKeyword" /> <uni-search-bar class="search" radius="30" placeholder="请输入" v-model="keyword" clearButton="auto" cancelButton="none" @confirm="initList" />
<view> <view>
<uni-icons type="notification" size="20"></uni-icons> <uni-icons type="notification" size="20"></uni-icons>
</view> </view>
@ -43,8 +43,8 @@
</view> </view>
<view v-if="!per" class="per-mask">功能升级中敬请期待...</view> <view v-if="!per" class="per-mask">功能升级中敬请期待...</view>
<uni-popup ref="popup" type="dialog"> <!-- <uni-popup ref="popup" type="dialog">
<uni-popup-dialog mode="input" placeholder="请输入4位数邀请码" :duration="2000" :before-close="true" @close="closePopup" @confirm="codeSubmit"></uni-popup-dialog> <uni-popup-dialog mode="input" placeholder="请输入4位数邀请码" :duration="2000" :before-close="true" @close="closePopup" @confirm="codeSubmit"></uni-popup-dialog> -->
</uni-popup> </uni-popup>
</view> </view>
</template> </template>
@ -127,6 +127,9 @@
}, },
// //
getList() { getList() {
uni.showLoading({
title: '加载中'
})
postLoginActivity({ postLoginActivity({
pageNum: this.page, pageNum: this.page,
pageSize: this.pageSize, pageSize: this.pageSize,
@ -142,11 +145,14 @@
this.now = await Util.getNow() this.now = await Util.getNow()
this.statusInterval() this.statusInterval()
uni.hideLoading()
this.timer = setInterval(() => { this.timer = setInterval(() => {
this.now = new Date(this.now.setSeconds(this.now.getSeconds() + 1)) this.now = new Date(this.now.setSeconds(this.now.getSeconds() + 1))
this.statusInterval() this.statusInterval()
}, 1000) }, 1000)
}).catch(e => {}) }).catch(e => {
uni.hideLoading()
})
}, },
async statusInterval () { async statusInterval () {
this.list.map(item => { this.list.map(item => {

@ -116,6 +116,7 @@
this.submiting = false this.submiting = false
// //
if (state === 'bind') { if (state === 'bind') {
this.submiting = false
this.code = code this.code = code
this.openid = sessionKey.openid this.openid = sessionKey.openid
this.sessionKey = sessionKey.session_key this.sessionKey = sessionKey.session_key
@ -159,6 +160,7 @@
const phone = data.phoneNumber const phone = data.phoneNumber
this.phone = phone this.phone = phone
if (this.isReg) { // if (this.isReg) { //
this.submiting = false
this.$refs.popup.open('bottom') this.$refs.popup.open('bottom')
} else { // } else { //
userBinding({ userBinding({
@ -198,6 +200,9 @@
}, },
// //
async toReg(platformId) { async toReg(platformId) {
if (this.submiting) return false
this.submiting = true
try {
const { data } = await kindergartenWeChatApplication({ const { data } = await kindergartenWeChatApplication({
code: this.code, code: this.code,
openId: this.openid, openId: this.openid,
@ -220,6 +225,9 @@
}) })
} }
this.toIndex() this.toIndex()
} catch(e) {
this.submiting = false
}
}, },
toAgreement(id) { toAgreement(id) {
this.$util.openFile(id) this.$util.openFile(id)

@ -4,7 +4,7 @@
<image class="bg" src="https://occupationlab.com/images/preschoolEdu/person-bg.png" /> <image class="bg" src="https://occupationlab.com/images/preschoolEdu/person-bg.png" />
<view class="team-wrap" :style="{paddingTop: headerTop}"> <view class="team-wrap" :style="{paddingTop: headerTop}">
<view v-if="platformId !== 7" class="team"> <view v-if="platformId !== 7 && teams.length" class="team">
<uni-data-picker class="picker-input" placeholder="切换团队" popup-title="切换团队" preload :clear-icon="false" :localdata="teams" :map="{text: 'classificationName', value: 'teamId'}" v-model="teamId" @change="teamChange"></uni-data-picker> <uni-data-picker class="picker-input" placeholder="切换团队" popup-title="切换团队" preload :clear-icon="false" :localdata="teams" :map="{text: 'classificationName', value: 'teamId'}" v-model="teamId" @change="teamChange"></uni-data-picker>
</view> </view>
</view> </view>
@ -15,8 +15,8 @@
<image class="avatar" :src="info.userAvatars" mode=""></image> <image class="avatar" :src="info.userAvatars" mode=""></image>
</button> </button>
<view class="text"> <view class="text">
<view class="name">{{ curAccount.account || userName }}</view> <view class="name">{{ info.userName || userName }}</view>
<view class="phone">{{ curAccount.phone }}</view> <view class="phone">{{ curAccount.account || info.phone }}</view>
</view> </view>
<view class="auth" @click="toAuth"> <view class="auth" @click="toAuth">
{{ info.authentication }} {{ info.authentication }}
@ -86,7 +86,6 @@
<view v-if="!isMember" class="badge">{{ platformName }}负责人</view> <view v-if="!isMember" class="badge">{{ platformName }}负责人</view>
<view class="auth">{{ auditStatus }}</view> <view class="auth">{{ auditStatus }}</view>
</view> </view>
<view v-if="enterInfo.companyName" class="company-name">{{ enterInfo.companyName }}</view>
<view class="identity-bg"> <view class="identity-bg">
<image v-if="isPreschool" class="pic" src="https://occupationlab.com/images/preschoolEdu/preschool1.png" mode="widthFix" /> <image v-if="isPreschool" class="pic" src="https://occupationlab.com/images/preschoolEdu/preschool1.png" mode="widthFix" />
<image v-else class="pic" src="https://occupationlab.com/images/preschoolEdu/supplier1.png" mode="widthFix" /> <image v-else class="pic" src="https://occupationlab.com/images/preschoolEdu/supplier1.png" mode="widthFix" />
@ -177,7 +176,9 @@
auditStatus: '', auditStatus: '',
isMember: true, // isMember: true, //
organizationName: '', organizationName: '',
curAccount: {} curAccount: {
account: ''
}
} }
}, },
computed: { computed: {
@ -211,6 +212,16 @@
const { result } = await viewUserDetails({ const { result } = await viewUserDetails({
openId: this.openId openId: this.openId
}) })
// statusfalse退
if (result.status === false) {
this.$util.errMsg(result.message)
setTimeout(() => {
uni.clearStorageSync()
this.$util.to('/pages/login/login')
}, 1500)
return false
}
if (result.hrUserInfo) { if (result.hrUserInfo) {
if (!result.hrUserInfo.userAvatars) result.hrUserInfo.userAvatars = Common.avatar // if (!result.hrUserInfo.userAvatars) result.hrUserInfo.userAvatars = Common.avatar //
this.info = result.hrUserInfo this.info = result.hrUserInfo
@ -224,13 +235,18 @@
if (accountList && accountList.length) { if (accountList && accountList.length) {
const enter = accountList.find(e => e.platformId !== '7') const enter = accountList.find(e => e.platformId !== '7')
this.curAccount = enter || accountList[0] this.curAccount = enter || accountList[0]
//
if (!enter) {
uni.setStorageSync('platformId', 7)
this.platformId = 7
}
} }
}, },
// //
async getEnterInfo() { async getEnterInfo() {
const { data } = await enterpriseCertificationStatus(this.openId) const { data } = await enterpriseCertificationStatus(this.openId)
if (data) { if (data) {
this.auditStatus = Common.auditStatus.find(e => e.id === data.auditStatus).name this.auditStatus = Common.authenticationStatus.find(e => e.id === data.authenticationStatus).name
this.enterInfo = data this.enterInfo = data
} }
}, },
@ -272,7 +288,8 @@
updateAvatars({ updateAvatars({
url, url,
userName: '', userName: '',
openId: this.openId openId: this.openId,
platformId: this.platformId,
}).then(res => { }).then(res => {
this.getInfo() this.getInfo()
}).catch(e => {}) }).catch(e => {})
@ -287,9 +304,9 @@
}, },
// //
toEnterAuth(platformId) { toEnterAuth(platformId) {
const { auditStatus, platformSource } = this.enterInfo const { authenticationStatus, platformSource } = this.enterInfo
// (0 1.2.3.) // (0 1.2.3.)
if (auditStatus === 1) { if (authenticationStatus === 1) {
if (platformSource != platformId) { if (platformSource != platformId) {
// //
this.$util.errMsg(`您已提交我是${platformId === 5 ? '供应商' : '幼儿园'}的认证,无法再提交${platformId === 5 ? '幼儿园' : '供应商'}认证。`) this.$util.errMsg(`您已提交我是${platformId === 5 ? '供应商' : '幼儿园'}的认证,无法再提交${platformId === 5 ? '幼儿园' : '供应商'}认证。`)
@ -297,7 +314,7 @@
this.$util.errMsg('您已提交认证,请等待审核。') this.$util.errMsg('您已提交认证,请等待审核。')
} }
} else { } else {
this.$util.to(auditStatus === 2 ? '/team/certified/certified' : '/team/auth/auth?platformId=' + platformId) this.$util.to(authenticationStatus === 2 ? '/team/certified/certified' : '/team/auth/auth?platformId=' + platformId)
} }
}, },
// //
@ -402,12 +419,6 @@
width: 25%; width: 25%;
margin-bottom: 30rpx; margin-bottom: 30rpx;
text-align: center; text-align: center;
&:last-child {
image {
width: 50rpx;
height: 50rpx;
}
}
} }
image { image {
width: 60rpx; width: 60rpx;

@ -119,6 +119,9 @@
}, },
// //
getList() { getList() {
uni.showLoading({
title: '加载中'
})
selectEnterpriseCertificationList({ selectEnterpriseCertificationList({
auditStatus: null, auditStatus: null,
authenticationStatus: 2, authenticationStatus: 2,
@ -132,7 +135,10 @@
const noMore = this.list.length === data.total // const noMore = this.list.length === data.total //
this.status = noMore ? 'noMore' : 'more' // noMore this.status = noMore ? 'noMore' : 'more' // noMore
this.reachBottom = noMore ? -1 : 0 // -1 this.reachBottom = noMore ? -1 : 0 // -1
}).catch(e => {}) uni.hideLoading()
}).catch(e => {
uni.hideLoading()
})
}, },
// keyword // keyword
clearKeyword() { clearKeyword() {
@ -141,7 +147,7 @@
}, },
// //
toDetail(item) { toDetail(item) {
this.$util.to('/other/supplierDetail/supplierDetail?id=' + item.id) this.$util.to('/other/supplierDetail/supplierDetail?teamId=' + item.teamId)
}, },
// tab // tab
tabChange(tab) { tabChange(tab) {
@ -199,6 +205,7 @@
color: #999; color: #999;
} }
.meta { .meta {
margin: 10rpx 0;
font-size: 28rpx; font-size: 28rpx;
color: #333; color: #333;
} }

@ -114,7 +114,10 @@
if (!form.companyName) return this.$util.errMsg(`请输入${platformName}名称!`) if (!form.companyName) return this.$util.errMsg(`请输入${platformName}名称!`)
if (!form.creditCode) return this.$util.errMsg('请输入统一社会信用代码!') if (!form.creditCode) return this.$util.errMsg('请输入统一社会信用代码!')
if (!form.legalPerson) return this.$util.errMsg('请输入法人!') if (!form.legalPerson) return this.$util.errMsg('请输入法人!')
this.submiting = false this.submiting = true
uni.showLoading({
title: '提交中'
})
const data = { const data = {
...form, ...form,
auditStatus: 1, auditStatus: 1,
@ -144,15 +147,15 @@
classificationName: form.companyName classificationName: form.companyName
}) })
} }
} catch(e) {
this.submiting = false
}
this.$util.sucMsg('提交成功,请重新登录!') this.$util.sucMsg('提交成功,请重新登录!')
setTimeout(() => { setTimeout(() => {
uni.clearStorageSync() uni.clearStorageSync()
this.$util.to('/pages/login/login') this.$util.to('/pages/login/login')
}, 1500) }, 1500)
} catch(e) {
uni.hideLoading()
this.submiting = false
}
}, },
} }
} }

@ -92,7 +92,6 @@
getInfo() { getInfo() {
queryTeamInfo({ queryTeamInfo({
teamId: this.teamId teamId: this.teamId
// teamId: 281
}).then(res => { }).then(res => {
const data = res.teamInfo const data = res.teamInfo
if (!data.logoUrl) data.logoUrl = Common.avatar if (!data.logoUrl) data.logoUrl = Common.avatar

@ -123,6 +123,7 @@
provinces: [], provinces: [],
cities: [], cities: [],
desPics: [], desPics: [],
submiting: false
} }
}, },
computed: { computed: {
@ -233,18 +234,24 @@
}, },
// //
async submit() { async submit() {
if (this.submiting) return false
const { form } = this const { form } = this
if (!form.classificationName) return this.$util.errMsg(`请输入幼儿园名称!`) if (!form.classificationName) return this.$util.errMsg(`请输入幼儿园名称!`)
this.submiting = true
form.pictureUrl = this.desPics.map(e => e.url).join() form.pictureUrl = this.desPics.map(e => e.url).join()
form.qrCodeOneUrl = this.qrCodeOne.length ? this.qrCodeOne[0].url : '' form.qrCodeOneUrl = this.qrCodeOne.length ? this.qrCodeOne[0].url : ''
form.qrCodeTwoUrl = this.qrCodeTwo.length ? this.qrCodeTwo[0].url : '' form.qrCodeTwoUrl = this.qrCodeTwo.length ? this.qrCodeTwo[0].url : ''
form.qrCodeThreeUrl = this.qrCodeThree.length ? this.qrCodeThree[0].url : '' form.qrCodeThreeUrl = this.qrCodeThree.length ? this.qrCodeThree[0].url : ''
try {
await updateTeamInfo(form) await updateTeamInfo(form)
this.$util.sucMsg('保存成功!') this.$util.sucMsg('保存成功!')
setTimeout(() => { setTimeout(() => {
uni.navigateBack() uni.navigateBack()
}, 1500) }, 1500)
} catch(e) {
this.submiting = false
}
} }
} }
} }

@ -55,7 +55,8 @@
theFrontOfIDCard: 'https://occupationlab.com/images/preschoolEdu/credentials1.png', theFrontOfIDCard: 'https://occupationlab.com/images/preschoolEdu/credentials1.png',
reverseOfIDCard: 'https://occupationlab.com/images/preschoolEdu/credentials2.png', reverseOfIDCard: 'https://occupationlab.com/images/preschoolEdu/credentials2.png',
frontData: {}, frontData: {},
backData: {} backData: {},
submiting: false
} }
}, },
onShow() { onShow() {
@ -111,9 +112,14 @@
}); });
}, },
submit() { submit() {
if (this.submiting) return false
const { form } = this const { form } = this
if (!form.userName) return this.$util.errMsg('请输入姓名!') if (!form.userName) return this.$util.errMsg('请输入姓名!')
if (!form.idCardNo) return this.$util.errMsg('请输入证件号!') if (!form.idCardNo) return this.$util.errMsg('请输入证件号!')
this.submiting = true
uni.showLoading({
title: '提交中'
})
const { frontData } = this const { frontData } = this
const { backData } = this const { backData } = this
realNameAuthentication({ realNameAuthentication({
@ -136,7 +142,10 @@
url: '/pages/person/person' url: '/pages/person/person'
}) })
}, 1500) }, 1500)
}).catch(e => {}) }).catch(e => {
uni.hideLoading()
this.submiting = false
})
}, },
} }
} }

@ -12,6 +12,7 @@
export default { export default {
data() { data() {
return { return {
platformId: uni.getStorageSync('platformId'),
info: { info: {
userName: '' userName: ''
}, },
@ -37,7 +38,8 @@
await updateAvatars({ await updateAvatars({
url: '', url: '',
userName, userName,
openId: this.openId openId: this.openId,
platformId: this.platformId,
}) })
this.$util.sucMsg('修改成功!') this.$util.sucMsg('修改成功!')
setTimeout(() => { setTimeout(() => {

Loading…
Cancel
Save