活动等开发

master
yujialong 12 months ago
parent 65c39e3a30
commit a51e096915
  1. 9
      apis/modules/activity.js
  2. 42
      apis/modules/order.js
  3. 4
      config/request.js
  4. 205
      order/activityDetail/activityDetail.vue
  5. 12
      pages.json
  6. 149
      pages/index/index.vue
  7. 3
      pages/login/login.vue
  8. 94
      pages/person/person.vue
  9. 9
      pages/supplier/supplier.vue
  10. BIN
      static/image/index/1.png
  11. BIN
      static/image/index/2.png
  12. BIN
      static/image/index/3.png
  13. BIN
      static/image/index/4.png
  14. BIN
      static/image/index/5.png
  15. BIN
      static/image/index/6.png
  16. BIN
      static/image/index/7.png
  17. BIN
      static/image/index/8.png
  18. BIN
      static/image/index/9.png
  19. BIN
      static/image/index/banner.png
  20. BIN
      static/image/index/banner1.png
  21. BIN
      static/image/info.png
  22. BIN
      static/image/product/1.png
  23. BIN
      static/image/product/2.png
  24. BIN
      static/image/product/3.png
  25. BIN
      static/image/product/4.png
  26. BIN
      static/image/product/5.png
  27. BIN
      static/image/product/6.png
  28. BIN
      static/image/product/excel.png
  29. BIN
      static/image/product/pdf.png
  30. BIN
      static/image/product/ppt.png
  31. BIN
      static/image/product/shop-blue.png
  32. BIN
      static/image/product/shop.png
  33. BIN
      static/image/product/word.png
  34. BIN
      static/image/study-bg.jpg
  35. 2
      styles/common.scss
  36. 46
      team/info/info.vue
  37. 107
      team/infoEdit/infoEdit.vue
  38. 2
      uni_modules/uni-scss/variables.scss

@ -0,0 +1,9 @@
import request from '@/apis/request.js'
const { get, post } = request
export const postLoginActivity = (data) => {
return post('competition/competition/management/postLoginActivity', data)
}
export const getCompetition = (id) => {
return post(`competition/competition/management/getCompetition?competitionId=${id}`)
}

@ -1,42 +0,0 @@
import request from '@/apis/request.js'
const { get, post } = request
export const getOrderOtherTime = (data) => {
return post('nakadai/nakadai/orderOther/getOrderOtherTime', data)
}
export const add = (data) => {
return post('nakadai/nakadai/order/add', data)
}
export const update = (data) => {
return post('nakadai/nakadai/order/update', data)
}
export const getDetail = (data) => {
return get('nakadai/nakadai/order/get', data)
}
export const renew = (data) => {
return post('nakadai/nakadai/orderOther/renew', data)
}
export const list = (data) => {
return post('nakadai/nakadai/applets/order/orderList', data)
}
export const orderList = (data) => {
return post('nakadai/nakadai/order/list', data)
}
export const del = (data) => {
return post('nakadai/nakadai/order/delete', data)
}
export const miniProgramOrderRecord = (data) => {
return post('nakadai/nakadai/applets/order/miniProgramOrderRecord', data)
}
export const queryCitySettlementPrice = (mallId, provinceId, cityId) => {
return post(`nakadai/mallPrice/queryCitySettlementPrice?mallId=${mallId}&provinceId=${provinceId}&cityId=${cityId}`)
}

@ -5,8 +5,8 @@
*/ */
export default { export default {
baseURL: 'https://huorantech.cn/', // baseURL: 'https://huorantech.cn/',
// baseURL: 'http://192.168.31.152:9000/', baseURL: 'http://192.168.31.217:10010/',
// baseURL: 'http://121.37.12.51/', // baseURL: 'http://121.37.12.51/',
headers: { headers: {
'Content-Type': 'application/json;charset=UTF-8' 'Content-Type': 'application/json;charset=UTF-8'

@ -1,7 +1,7 @@
<template> <template>
<view class="wrap"> <view class="wrap">
<view class="banner"> <view class="banner">
<image class="pic" :src="form.mall.coverDrawing" mode="widthFix"></image> <image class="pic" :src="form.coverUrl" mode="widthFix"></image>
</view> </view>
<view class="info"> <view class="info">
@ -11,19 +11,23 @@
</view> </view>
<view class="line"> <view class="line">
<view class="label">人数限制</view> <view class="label">人数限制</view>
<view class="val">进行中</view> <view class="val">{{ form.quantityLimit }}</view>
</view>
<view class="line">
<view class="label">举办时间</view>
<view class="val">{{ form.playStartTime + ' ~ ' + form.playEndTime }}</view>
</view> </view>
<view class="line"> <view class="line">
<view class="label">活动地点</view> <view class="label">活动地点</view>
<view class="val">进行中</view> <view class="val">{{ form.reportingPlace }}</view>
</view> </view>
<view class="line"> <view class="line">
<view class="label">主办方</view> <view class="label">主办方</view>
<view class="val">进行中</view> <view class="val">{{ form.sponsor }}</view>
</view> </view>
<view class="line"> <view v-if="form.whetherToShowApplicants === '1'" class="line">
<view class="label">已报名人员</view> <view class="label">已报名人员</view>
<view class="val">进行中</view> <view class="val">(0/{{ form.quantityLimit }})</view>
</view> </view>
</view> </view>
@ -32,16 +36,21 @@
</ul> </ul>
<view v-if="!curTab" class="detail"> <view v-if="!curTab" class="detail">
<mp-html :content="form.description"/>
</view> </view>
<view v-else class="list"> <view v-else class="list">
</view> </view>
<view class="btns">
<view class="btn share">分享</view>
<view class="btn sign">立刻报名</view>
</view>
</view> </view>
</template> </template>
<script> <script>
import { detailsOfGoods, addToShoppingCart, shoppingCartList, productCategoryList } from '@/apis/modules/product.js' import { getCompetition } from '@/apis/modules/activity.js'
export default { export default {
data() { data() {
return { return {
@ -56,29 +65,16 @@
name: '活动通知', name: '活动通知',
id: 1 id: 1
}, },
{
name: '已报名人员',
id: 2
}
], ],
form: { form: {
classificationIds: [], quantityLimit: '',
interfaceDiagram: [], playStartTime: '',
mall: { playEndTime: '',
coverDrawing: '' reportingPlace: '',
}, sponsor: '',
goodsRes: {},
mallAnnex: []
}, },
shopCartTotal: 0, shopCartTotal: 0,
types: [], types: [],
dotsStyles: {
backgroundColor: 'rgba(83, 200, 249,0.3)',
border: '1px rgba(83, 200, 249,0.3) solid',
color: '#fff',
selectedBackgroundColor: 'rgba(83, 200, 249,0.9)',
selectedBorder: '1px rgba(83, 200, 249,0.9) solid'
},
mpStyle: { mpStyle: {
p: 'font-size: 25rpx !important;font-family: Microsoft Yahei !important;font-weight: 400 !important;color: #333 !important;', p: 'font-size: 25rpx !important;font-family: Microsoft Yahei !important;font-weight: 400 !important;color: #333 !important;',
span: 'font-size: 25rpx !important;font-family: Microsoft Yahei !important;font-weight: 400 !important;color: #333 !important;' span: 'font-size: 25rpx !important;font-family: Microsoft Yahei !important;font-weight: 400 !important;color: #333 !important;'
@ -90,8 +86,6 @@
const { options } = pages[pages.length - 1] const { options } = pages[pages.length - 1]
this.id = options.id this.id = options.id
this.getInfo() this.getInfo()
this.getShopCart()
this.getTypes()
}, },
methods: { methods: {
// //
@ -99,61 +93,21 @@
uni.showLoading({ uni.showLoading({
title: '加载中' title: '加载中'
}) })
detailsOfGoods(this.id).then(res => { getCompetition(this.id).then(res => {
const e = res.orderDetails const data = res.competition
e.mall.productIntroduction = this.$util.removeTag(e.mall.productIntroduction) data.whetherToShowApplicants === '1' && this.tabs.push({
// e.mall.detailedIntroduction = this.$util.removeTag(e.mall.detailedIntroduction) name: '已报名人员',
this.form = e id: 2
const pics = this.form.mall.interfaceDiagram })
if (pics) { this.form = data
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() uni.hideLoading()
}).catch(e => { }).catch(e => {
uni.hideLoading() 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(tab) {
this.curTab = id this.curTab = tab.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) { download(item) {
@ -164,53 +118,6 @@
}) })
this.$util.to(`/team/send/send`) 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>
@ -236,7 +143,7 @@
margin: 20rpx 0; margin: 20rpx 0;
} }
.label { .label {
width: 180rpx; min-width: 180rpx;
font-size: 28rpx; font-size: 28rpx;
} }
.val { .val {
@ -245,34 +152,36 @@
color: #333; color: #333;
} }
} }
.tabs { .detail {
padding: 34rpx 32rpx;
margin: 20rpx;
border-radius: 20px;
background-color: #fff;
}
.btns {
position: fixed;
bottom: 0;
display: flex; display: flex;
justify-content: center; justify-content: center;
margin-bottom: 32rpx; width: 100%;
li { padding: 20rpx 0;
width: 33.33%; background-color: #fff;
text-align: center; .btn {
width: 200rpx;
padding: 16rpx 0;
font-size: 28rpx; font-size: 28rpx;
color: #333; color: #fff;
white-space: nowrap; text-align: center;
} }
.active { .share {
color: #007EFF; background-color: #75b4ff;
&:after { border-top-left-radius: 40rpx;
content: ''; border-bottom-left-radius: 40rpx;
display: block;
width: 40rpx;
height: 8rpx;
margin: 18rpx auto 0;
border-radius: 4px;
background-color: #007EFF;
} }
.sign {
background-color: $uni-primary;
border-top-right-radius: 40rpx;
border-bottom-right-radius: 40rpx;
} }
} }
.detail {
padding: 34rpx 32rpx;
margin: 16rpx 0;
border-radius: 20px;
background-color: #fff;
}
</style> </style>

@ -146,6 +146,14 @@
"navigationBarTitleText" : "企业认证", "navigationBarTitleText" : "企业认证",
"enablePullDownRefresh" : false "enablePullDownRefresh" : false
} }
},
{
"path" : "infoEdit/infoEdit",
"style" :
{
"navigationBarTitleText" : "信息维护",
"enablePullDownRefresh" : false
}
} }
] ]
} }
@ -166,7 +174,7 @@
"globalStyle": { "globalStyle": {
"navigationBarTextStyle": "white", "navigationBarTextStyle": "white",
"navigationBarTitleText": "幼教产业B2B产业平台", "navigationBarTitleText": "幼教产业B2B产业平台",
"navigationBarBackgroundColor": "#007EFF", "navigationBarBackgroundColor": "#4876f9",
"backgroundColor": "#f5f5f5", "backgroundColor": "#f5f5f5",
"app-plus": { "app-plus": {
"background": "#efeff4" "background": "#efeff4"
@ -174,7 +182,7 @@
}, },
"tabBar": { "tabBar": {
"color": "#B8B9B8", "color": "#B8B9B8",
"selectedColor": "#007FFF", "selectedColor": "#4876f9",
"borderStyle": "white", "borderStyle": "white",
"backgroundColor": "#ffffff", "backgroundColor": "#ffffff",
"fontSize": "22px", "fontSize": "22px",

@ -9,30 +9,32 @@
</view> </view>
<view class="banner"> <view class="banner">
<image class="pic" src="@/static/image/index/banner.png" mode="widthFix"></image> <image class="pic" src="@/static/image/info-bg.jpg" mode="widthFix"></image>
</view> </view>
<view class="block"> <view class="module">
<view class="title-wrap"> <view class="title-wrap">
<view class="title">爆款推荐</view> <view class="title">爆款推荐</view>
</view> </view>
<image class="pic" src="@/static/image/info-bg.jpg" mode="widthFix"></image> <image class="hot" src="@/static/image/info-bg.jpg" mode="widthFix"></image>
</view> </view>
<view class="block"> <view class="module">
<view class="title">活动速递</view> <view class="title">活动速递</view>
<ul class="tab"> <ul class="tab">
<li v-for="(tab, i) in tabs" :class="{active: curTab === tab.id}" @click="tabChange(tab)">{{ tab.name }}</li> <li v-for="(tab, i) in tabs" :class="{active: curTab === tab.id}" @click="tabChange(tab)">{{ tab.name }}</li>
</ul> </ul>
<view class="list"> <view class="list">
<view v-for="(item, i) in hotProducts" :key="i" class="item" @click="toDetail(item)"> <view v-for="(item, i) in list" :key="i" class="item" @click="toDetail(item)">
<image class="pic" src="@/static/image/info-bg.jpg"></image> <image class="pic" :src="item.coverUrl"></image>
<view class="texts"> <view class="texts">
<view class="name ell">{{ item.productName }}</view> <view class="name ell">{{ item.competitionName }}</view>
<view class="des ell">{{ item.tagsName }}</view> <view class="meta">时间{{ item.playStartTime + ' ~ ' + item.playEndTime }}</view>
<view class="meta">{{ item.marketUnitPrice }}/</view> <view class="meta ell">主办方{{ item.sponsor }}</view>
<view v-if="item.whetherToShowApplicants === '1'" class="meta ell">(0/{{ item.quantityLimit }})人已报名</view>
<view class="sign" @click.stop="sign(item)">报名</view>
</view> </view>
</view> </view>
</view> </view>
@ -43,19 +45,16 @@
</template> </template>
<script> <script>
import { getUserRolesPermissionMenu } from '@/apis/modules/user.js' import { postLoginActivity } from '@/apis/modules/activity.js'
import { tagsList, listOfGoods, shoppingCartList } from '@/apis/modules/product.js'
import { getTeamsByAccountId } from '@/apis/modules/client.js'
export default { export default {
data() { data() {
return { return {
per: true, // per: true, //
teamId: uni.getStorageSync('teamId') || '', teamId: uni.getStorageSync('teamId') || '',
list: [],
keyword: '', keyword: '',
tags: [], list: [],
hotProducts: [], page: 1,
offcialProducts: [], pageSize: 10,
total: 0, total: 0,
curTab: 0, curTab: 0,
tabs: [ tabs: [
@ -64,13 +63,30 @@
id: 0 id: 0
}, },
{ {
name: '论坛', name: '会议',
id: 1 id: 1
},
{
name: '论坛',
id: 2
},
{
name: '讲座',
id: 3
},
{
name: '展会',
id: 4
},
{
name: '培训',
id: 5
} }
], ],
} }
}, },
onShow() { onShow() {
uni.setStorageSync('token', 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiaWF0IjoxNzAyMjg4MDEzLCJleHAiOjE3MDMxNTIwMTMsImFjY291bnRJZCI6IjEifQ.3dZSZAG7w8tSPU9DBL0VdULgkQmiZpYVzjf1qfxx5HY')
this.keyword = '' this.keyword = ''
this.per = true this.per = true
this.getProducts() this.getProducts()
@ -83,35 +99,34 @@
} }
this.getProducts() this.getProducts()
}, },
// //
getProducts() { getProducts() {
// postLoginActivity({
listOfGoods({ pageNum: this.page,
pageNum: 1, pageSize: this.pageSize,
pageSize: 5, listType: 0,
sort: 1, platformSource: ''
isShelves: 0, }).then(({ data }) => {
hotTag: 1 this.list = data.records
}).then(({ page }) => {
page.records.forEach(e => {
e.productIntroduction = this.$util.removeTag(e.productIntroduction)
})
this.hotProducts = page.records
}).catch(e => {}) }).catch(e => {})
}, },
// //
searchConfirm(e) { searchConfirm(e) {
e.value && this.$util.to(`/order/products/products?keyword=${e.value}`) e.value && this.$util.to(`/order/products/products?keyword=${e.value}`)
}, },
// //
toDetail(item) { toDetail(item) {
this.$util.to('/order/activityDetail/activityDetail?id=' + item.mallId) this.$util.to('/order/activityDetail/activityDetail?id=' + item.id)
}, },
// tab // tab
tabChange(tab) { tabChange(tab) {
this.curTab = tab.id this.curTab = tab.id
// this.initList() // this.initList()
}, },
//
sign(item) {
}
} }
} }
</script> </script>
@ -119,8 +134,6 @@
<style scoped lang="scss"> <style scoped lang="scss">
.page { .page {
position: relative; position: relative;
box-sizing: border-box;
background-color: #fff;
border-top-left-radius: 16px; border-top-left-radius: 16px;
border-top-right-radius: 16px; border-top-right-radius: 16px;
} }
@ -130,21 +143,24 @@
width: 100%; width: 100%;
} }
} }
.hot {
width: 100%;
}
.search-wrap { .search-wrap {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
padding: 0 10rpx; padding: 0 10rpx;
background-color: #fff;
.search { .search {
flex: 1; flex: 1;
} }
} }
.all { .module {
font-size: 24rpx; margin: 20rpx;
border-radius: 20px; padding: 20rpx;
} background-color: #fff;
.block { border-radius: 8px;
margin: 20rpx 0;
.title-wrap { .title-wrap {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
@ -153,59 +169,48 @@
.title { .title {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
font-size: 28rpx; font-size: 30rpx;
font-weight: 600; font-weight: 600;
color: #333; color: #333;
} }
} }
.list { .list {
.item { .item {
position: relative;
display: flex; display: flex;
align-items: center;
margin-bottom: 28rpx; margin-bottom: 28rpx;
background-color: #fff;
border-radius: 8px;
overflow: hidden;
} }
.pic { .pic {
width: 220rpx; width: 320rpx;
height: 140rpx; height: 240rpx;
margin-right: 20rpx; margin-right: 20rpx;
border-radius: 8px;
} }
.texts { .texts {
width: calc(100% - 240rpx); width: calc(100% - 240rpx);
padding: 10rpx;
} }
.name { .name {
font-size: 28rpx; font-size: 28rpx;
font-weight: 600; font-weight: 600;
color: #333; color: #333;
} }
.des {
margin: 10rpx 0;
font-size: 22rpx;
color: #666;
}
.meta { .meta {
display: flex; margin: 10rpx 0;
align-items: center; font-size: 26rpx;
font-size: 24rpx; color: #999;
color: #2E2D31; }
.icon { .sign {
width: 32rpx; position: absolute;
height: 32rpx; bottom: 0;
margin-right: 12rpx; right: 0;
} padding: 10rpx 30rpx;
text { font-size: 28rpx;
width: 330rpx; color: #fff;
} background-color: $uni-primary;
} border-radius: 4px;
}
.plus {
bottom: 140rpx;
right: 60rpx;
.icon {
width: 106rpx;
}
.uni-badge {
font-size: 32rpx;
} }
} }
</style> </style>

@ -45,7 +45,8 @@
} }
}, },
onShow() { onShow() {
// uni.setStorageSync('token', 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiaWF0IjoxNjg2NzExNTA5LCJleHAiOjE2ODY3NTQ3MDksImFjY291bnRJZCI6IjEyNTU4In0.SX1sNFtb2JiCufgTz3ZmQkcJ-FtVci7Hp0DFd_mVk8E')
uni.setStorageSync('token', 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIiwiaWF0IjoxNzAyMjg4MDEzLCJleHAiOjE3MDMxNTIwMTMsImFjY291bnRJZCI6IjEifQ.3dZSZAG7w8tSPU9DBL0VdULgkQmiZpYVzjf1qfxx5HY')
// //
this.checkLogin() this.checkLogin()
}, },

@ -1,7 +1,7 @@
<template> <template>
<view class="page"> <view class="page">
<view class="status-bar"></view> <view class="status-bar"></view>
<image class="bg" src="@/static/image/person-bg.png"></image> <image class="bg" src="https://occupationlab.com/images/preschoolEdu/person-bg.png"></image>
<view class="wrap"> <view class="wrap">
<view class="info"> <view class="info">
<button class="avatar-btn" open-type="chooseAvatar" @chooseavatar="onChooseAvatar"> <button class="avatar-btn" open-type="chooseAvatar" @chooseavatar="onChooseAvatar">
@ -14,44 +14,32 @@
<view v-if="!disabled" class="tag">团队负责人</view> <view v-if="!disabled" class="tag">团队负责人</view>
</view> </view>
<view class="block"> <view class="block" style="padding-bottom: 0;">
<view class="title">基础功能</view> <view class="title">基础功能</view>
<ul class="func"> <ul class="func">
<li @click="toPage('')"> <li @click="toPage('')">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon1.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">我的电子券</view> <view class="text ell">我的电子券</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon2.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">我的关注</view> <view class="text ell">我的关注</view>
</li> </li>
<li @click="toPage('/order/registeredActivity/registeredActivity')"> <li @click="toPage('/order/registeredActivity/registeredActivity')">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon3.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">已报名活动</view> <view class="text ell">已报名活动</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon4.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">我的发票</view> <view class="text ell">我的发票</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon5.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">我的订单</view> <view class="text ell">我的订单</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon6.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">发布采购</view> <view class="text ell">发布采购</view>
</li> </li>
</ul> </ul>
@ -66,62 +54,44 @@
</view> </view>
<view class="block"> <view class="block" style="padding-bottom: 0;">
<view class="title">工作台</view> <view class="title">工作台</view>
<ul class="func"> <ul class="func">
<li @click="toPage('/team/auth/auth')"> <li @click="toPage('/team/auth/auth')">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon7.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">供应商认证</view> <view class="text ell">供应商认证</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon8.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">商品管理</view> <view class="text ell">商品管理</view>
</li> </li>
<li @click="toPage('/team/teams/teams')"> <li @click="toPage('/team/teams/teams')">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon9.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">团队管理</view> <view class="text ell">团队管理</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon10.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">订单管理</view> <view class="text ell">订单管理</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon11.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">活动管理</view> <view class="text ell">活动管理</view>
</li> </li>
<li @click="toPage('/team/info/info')"> <li @click="toPage('/team/info/info')">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon12.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">信息维护</view> <view class="text ell">信息维护</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon13.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">对账管理</view> <view class="text ell">对账管理</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon14.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">商机线索</view> <view class="text ell">商机线索</view>
</li> </li>
<li @click="tips"> <li @click="tips">
<view class="icon"> <image src="https://occupationlab.com/images/preschoolEdu/icon15.png" />
<image src="@/static/image/info-bg.jpg"></image>
</view>
<view class="text ell">发票管理</view> <view class="text ell">发票管理</view>
</li> </li>
</ul> </ul>
@ -161,7 +131,8 @@
myIncome: 0, myIncome: 0,
teamIncome: 0 teamIncome: 0
}, },
avatar: uni.getStorageSync('avatar') || '@/static/image/avatar.png', // avatar: uni.getStorageSync('avatar') || '@/static/image/avatar.png',
avatar: 'https://cube.elemecdn.com/3/7c/3ea6beec64369c2642b92c6726f1epng.png',
userName: uni.getStorageSync('userName'), userName: uni.getStorageSync('userName'),
hasOwnTeam: 0, // hasOwnTeam: 0, //
disabled: true, disabled: true,
@ -169,7 +140,7 @@
}, },
onShow() { onShow() {
this.per = true this.per = true
this.getTeam() // this.getTeam()
}, },
methods: { methods: {
// //
@ -308,12 +279,12 @@
<style scoped lang="scss"> <style scoped lang="scss">
.bg { .bg {
width: 100%; width: 100%;
height: calc(var(--status-bar-height) + 317rpx); height: calc(var(--status-bar-height) + 500rpx);
} }
.wrap { .wrap {
position: relative; position: relative;
padding: 0 24rpx 24rpx; padding: 0 24rpx 24rpx;
margin-top: -150rpx; margin-top: -400rpx;
} }
.block { .block {
padding: 24rpx; padding: 24rpx;
@ -328,9 +299,7 @@
.info { .info {
display: flex; display: flex;
align-items: center; align-items: center;
padding: 26rpx 34rpx; padding: 26rpx 0;
background-color: #fff;
border-radius: 16rpx;
.avatar-btn { .avatar-btn {
padding: 0; padding: 0;
margin: 0 28rpx 0 0; margin: 0 28rpx 0 0;
@ -362,7 +331,7 @@
margin-top: -50rpx; margin-top: -50rpx;
font-size: 24rpx; font-size: 24rpx;
color: #fff; color: #fff;
background-color: #2979ff; background-color: $uni-primary;
border-radius: 20px; border-radius: 20px;
} }
} }
@ -370,9 +339,10 @@
.func { .func {
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
margin-top: 15rpx;
li { li {
width: 25%; width: 25%;
margin-bottom: 24rpx; margin-bottom: 30rpx;
text-align: center; text-align: center;
&:last-child { &:last-child {
image { image {
@ -381,16 +351,6 @@
} }
} }
} }
.icon {
display: flex;
justify-content: center;
align-items: center;
width: 90rpx;
height: 90rpx;
margin: 0 auto 18rpx;
background-color: rgb(228,239,255);
border-radius: 50%;
}
image { image {
width: 60rpx; width: 60rpx;
height: 60rpx; height: 60rpx;

@ -6,7 +6,7 @@
</view> </view>
<view class="banner"> <view class="banner">
<image class="pic" src="@/static/image/index/banner.png" mode="widthFix"></image> <!-- <image class="pic" src="@/static/image/index/banner.png" mode="widthFix"></image> -->
</view> </view>
<ul class="tab"> <ul class="tab">
@ -68,8 +68,8 @@
onShow() { onShow() {
this.keyword = '' this.keyword = ''
this.per = true this.per = true
this.getInfo() // this.getInfo()
this.getShopCart() // this.getShopCart()
}, },
methods: { methods: {
// //
@ -77,8 +77,7 @@
if (!uni.getStorageSync('auth').includes('首页')) { if (!uni.getStorageSync('auth').includes('首页')) {
this.per = false this.per = false
} }
this.getTags() // this.getProducts()
this.getProducts()
}, },
// //
getAuth() { getAuth() {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 775 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 599 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 439 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 522 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 483 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 434 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 298 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 351 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 641 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 480 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 440 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1007 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 502 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

@ -275,7 +275,7 @@ ul {
text-align: center; text-align: center;
color: #fff; color: #fff;
border-radius: 10rpx; border-radius: 10rpx;
background-color: #007EFF; background-color: $uni-primary;
} }
} }
.per-mask { .per-mask {

@ -2,38 +2,31 @@
<view> <view>
<view class="block"> <view class="block">
<view class="form-list"> <view class="form-list">
<view class="line with-arrow"> <view class="line">
<view class="name">LOGO</view> <view class="name">LOGO</view>
<view class="val"> <view class="val">
<image class="avatar" src="@/static/image/info-bg.jpg"></image> <image class="avatar" src="@/static/image/info-bg.jpg"></image>
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view> </view>
</view> </view>
<view class="line with-arrow"> <view class="line">
<view class="name">幼儿园名称</view> <view class="name">幼儿园名称</view>
<view class="val"> <view class="val">测试测试</view>
<input type="text" placeholder="请输入幼儿园名称" />
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view>
</view> </view>
<view class="line with-arrow"> <view class="line">
<view class="name">标签</view> <view class="name">标签</view>
<view class="val"> <view class="val">测试测试</view>
<input type="text" placeholder="请输入标签" />
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view>
</view> </view>
<view class="line textarea-line"> <view class="line textarea-line">
<view class="name">幼儿园slogan</view> <view class="name">幼儿园slogan</view>
<textarea placeholder="请输入幼儿园slogan"></textarea> <view class="val">测试测试</view>
</view> </view>
<view class="line textarea-line"> <view class="line textarea-line">
<view class="name">地址</view> <view class="name">地址</view>
<textarea placeholder="请输入地址"></textarea> <view class="val">测试测试</view>
</view> </view>
<view class="line textarea-line"> <view class="line textarea-line">
<view class="name">幼儿园简介</view> <view class="name">幼儿园简介</view>
<textarea placeholder="请输入幼儿园简介"></textarea> <view class="val">测试测试</view>
</view> </view>
</view> </view>
</view> </view>
@ -44,6 +37,10 @@
<view class="line">联系电话测试测试</view> <view class="line">联系电话测试测试</view>
<image class="qrcode" src="@/static/image/info-bg.jpg"></image> <image class="qrcode" src="@/static/image/info-bg.jpg"></image>
</view> </view>
<view class="btn-wrap">
<view class="btn" @click="toEdit">编辑</view>
</view>
</view> </view>
</template> </template>
@ -69,22 +66,9 @@
this.info = my.info this.info = my.info
}).catch(e => {}) }).catch(e => {})
}, },
toPage(path) { //
this.$util.to(path) toEdit() {
}, this.$util.to('/team/infoEdit/infoEdit')
// 退
logout() {
const that = this
uni.showModal({
title: '提示',
content: '确定要退出账号吗?',
success(res) {
if (res.confirm) {
uni.clearStorageSync()
that.$util.to('/pages/login/login')
}
}
})
} }
} }
} }

@ -0,0 +1,107 @@
<template>
<view>
<view class="block">
<view class="form-list">
<view class="line with-arrow">
<view class="name">LOGO</view>
<view class="val">
<image class="avatar" src="@/static/image/info-bg.jpg"></image>
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view>
</view>
<view class="line with-arrow">
<view class="name">幼儿园名称</view>
<view class="val">
<input type="text" placeholder="请输入幼儿园名称" />
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view>
</view>
<view class="line with-arrow">
<view class="name">标签</view>
<view class="val">
<input type="text" placeholder="请输入标签" />
<uni-icons type="right" size="18" color="#ababab"></uni-icons>
</view>
</view>
<view class="line textarea-line">
<view class="name">幼儿园slogan</view>
<textarea placeholder="请输入幼儿园slogan"></textarea>
</view>
<view class="line textarea-line">
<view class="name">地址</view>
<textarea placeholder="请输入地址"></textarea>
</view>
<view class="line textarea-line">
<view class="name">幼儿园简介</view>
<textarea placeholder="请输入幼儿园简介"></textarea>
</view>
</view>
</view>
<view class="block info">
<view class="title">联系我们</view>
<view class="line">地址测试测试</view>
<view class="line">联系电话测试测试</view>
<image class="qrcode" src="@/static/image/info-bg.jpg"></image>
</view>
<view class="btn-wrap">
<view class="btn" @click="submit">保存</view>
</view>
</view>
</template>
<script>
import { my } from '@/apis/modules/parner.js'
export default {
data() {
return {
}
},
onShow() {
this.getInfo()
},
methods: {
//
getInfo() {
const { partnerId, teamId } = uni.getStorageSync('team')
my({
partnerId,
teamId
}).then(({ my }) => {
this.info = my.info
}).catch(e => {})
},
//
submit() {
}
}
}
</script>
<style scoped lang="scss">
.avatar {
width: 80rpx;
height: 80rpx;
border: 0;
border-radius: 50%;
}
.info {
position: relative;
padding: 24rpx;
.line {
margin: 20rpx 0;
font-size: 26rpx;
color: #333;
}
.qrcode {
position: absolute;
top: 30rpx;
right: 30rpx;
width: 120rpx;
height: 120rpx;
}
}
</style>

@ -5,7 +5,7 @@ $uni-space-root: 2;
$uni-radius-root:5px; $uni-radius-root:5px;
// 主色 // 主色
$uni-primary: #2979ff; $uni-primary: #4876f9;
$uni-primary-disable:mix(#fff,$uni-primary,50%); $uni-primary-disable:mix(#fff,$uni-primary,50%);
$uni-primary-light: mix(#fff,$uni-primary,80%); $uni-primary-light: mix(#fff,$uni-primary,80%);

Loading…
Cancel
Save