报名工具小程序初始代码

This commit is contained in:
liupopo
2024-02-06 09:36:25 +08:00
commit d7420944ba
202 changed files with 41300 additions and 0 deletions

223
pages/team/CreateTeam.vue Normal file
View File

@@ -0,0 +1,223 @@
<template>
<view style="background: #F1F2F5;">
<RefreshView id="mescrollRef" ref="mescrollRef" :pageBg="F1F2F5" text="创建队伍" :useDownScroll="false"
:useUpScroll="false">
<view class="item">
<view class="view1">
<view class="view1_top">
<text class="view1_top_text">队伍名称</text>
<input class="view1_top_input" type="text" @input="nameText()" placeholder="请输入队伍名称"
:value="name" />
</view>
<view
style="width: 100%;height: 5rpx;background-color: #f5f4f9;margin-top: 20rpx;margin-bottom: 20rpx;">
</view>
<textarea class="slogan" auto-height="true" style="min-height: 80rpx;" @input="sloganText()"
placeholder="请输入队伍口号(点击编辑)" :value="slogan" />
</view>
</view>
<view class="item">
<view class="view2">
<text class="lift_text">人数限制</text>
<text class="right_text1">5 </text>
</view>
</view>
<view class="item">
<view class="view2">
<text class="lift_text">运动项目标签</text>
<view style="display: flex; flex: 1;justify-content: flex-end;margin-right: 15rpx;">
<fui-dropdown-menu :right="1" :minWidth="300" :size="30" selectedColor="#465CFF"
:options="options" @click="typeItemClick" @close="typeClose" ref="ddmtype">
<view class="fui-filter__item" @tap="filterTap()">
<text>{{type}}</text>
<image style="width: 22rpx;height: 22rpx; margin-left: 15rpx;"
src="../../static/event-icon/xia.png" mode="aspectFit" class="fui-filter__icon"
:class="{'fui-icon__ani':typeShow}">
</image>
</view>
</fui-dropdown-menu>
</view>
</view>
</view>
<view class="item">
<view class="view2">
<text class="lift_text">是否公开招募队员</text>
<switch color="#007AFF" class="tui-fr" :checked="switch1Checked" @change="switch1Change">
</switch>
</view>
</view>
<view class="item">
<view class="view2">
<text class="lift_text">所在市</text>
<view @click="selectCity()">
<text class="right_text2">{{page.city}}</text>
<image style="width: 22rpx;height: 22rpx; margin-left: 10rpx;"
src="../../static/home-icon/more.png" mode="aspectFit" class="fui-filter__icon">
</view>
</view>
</view>
<text class="btn" @click="save()">创建</text>
</RefreshView>
</view>
</template>
<script>
export default {
data() {
return {
page: {
'city': this.ReadPreference("find_city"),
'adCode': this.ReadPreference("find_city_code").slice(0, -2),
},
options: [{
text: '乒乓球',
value: 0,
}, {
text: '羽毛球',
value: 1
}, {
text: '户外',
value: 2
}, {
text: '骑行',
value: 3
}],
typeShow: false,
type: "乒乓球",
switch1Checked: true,
}
},
onShow() {
let backResult = this.OnActivityResult();
if (backResult != undefined) {
console.log("结果>" + JSON.stringify(backResult))
if (!this.IsEmpty(backResult.code)) {
console.log("结果2>" + backResult.code)
this.page.adCode = backResult.code
this.page.city = backResult.city
}
}
},
methods: {
filterTap() {
this.$refs.ddmtype.show()
this.typeShow = true;
},
typeItemClick(e) {
this.type = e.text
console.log(this.type)
this.typeClose()
},
typeClose() {
this.typeShow = false;
},
switch1Change: function(e) {
this.switch1Checked = !this.switch1Checked;
console.log(`switch1Change样式点击后是否选中`, this.switch1Checked)
},
selectCity() {
uni.navigateTo({
url: "../../pages/city/CitySelectActivity?city=" + this.page.city +
"&code=" + this.page.adCode
})
}
}
}
</script>
<style lang="scss">
.item {
display: flex;
margin-top: 20rpx;
background-color: #fff;
border-radius: 20rpx;
padding: 36rpx;
}
.view1 {
display: flex;
flex-direction: column;
width: 100%;
.view1_top {
display: flex;
flex-direction: row;
.view1_top_text {
font-size: 32rpx;
color: #898989;
}
.view1_top_input {
width: 70%;
font-size: 32rpx;
color: #101010;
margin-left: 15rpx;
}
}
.slogan {
width: 100%;
padding-left: 10rpx;
padding-right: 10rpx;
}
}
.view2 {
display: flex;
flex-direction: row;
width: 100%;
align-items: center;
.lift_text {
flex: 1;
font-size: 28rpx;
color: #898989;
}
.right_text1 {
font-size: 28rpx;
color: #BEBEBE;
}
.right_text2 {
font-size: 28rpx;
color: #101010;
}
.tui-fr {
zoom: .7
}
}
.btn {
justify-content: center;
width: 100%;
margin-top: 100rpx;
padding: 30rpx;
font-size: 30rpx;
color: #FFFFFF;
background: #007AFF;
text-align: center;
flex: 1;
position: absolute;
bottom: 0;
}
</style>

76
pages/team/JoinTeam.vue Normal file
View File

@@ -0,0 +1,76 @@
<template>
<RefreshView ref="mescrollRef" :hasBack="true" text="加入临时球队" :useDownScroll="false" :useUpScroll="false">
</RefreshView>
</template>
<script>
export default {
data() {
return {
list:[
{
logo:"https://www.keaidian.com/uploads/allimg/190424/24110307_8.jpg",
teamName:"撒大苏打阿萨的骄傲四京东爱睡觉ask就打算殴打送i的1",
name:"张三",
number:"100",
},
{
logo:"https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
teamName:"临时球队1",
name:"张三",
number:"100",
},
{
logo:"https://www.keaidian.com/uploads/allimg/190424/24110307_35.jpg",
teamName:"临时球队2",
name:"张三",
number:"100",
}
]
}
},
methods: {
nameText(e) {
this.teamName = e.detail.value
console.log(this.teamName)
},
save() {
}
}
}
</script>
<style lang="scss">
.inputLay {
display: flex;
flex-direction: row;
margin-left: 40rpx;
margin-right: 40rpx;
margin-top: 40rpx;
margin-bottom: 28rpx;
.input {
margin-left: 40rpx;
flex: 1;
}
}
.btn {
justify-content: center;
width: 100%;
display: flex;
margin-top: 100rpx;
padding: 30rpx;
font-size: 28rpx;
color: #FFFFFF;
background: #007AFF;
text-align: center;
}
</style>

555
pages/team/MyTeam.vue Normal file
View File

@@ -0,0 +1,555 @@
<template>
<view style="background: #F1F2F5;">
<RefreshView id="mescrollRef" ref="mescrollRef" :pageBg="F1F2F5" text="我的队伍" :useDownScroll="false"
:useUpScroll="false">
<view class="top">
<view style="flex: 1;">
<sl-filter id="header" ref="slLilter" v-if="menuList.length!=0" :color="fd6d2a" themeColor="#000000"
:menuList.sync="menuList" @result="result"></sl-filter>
</view>
<text class="top_text">共加入2个队伍</text>
</view>
<view>
<view v-for="(item,index) in list " :key="index">
<view class="itemLay">
<view class="itemLay_top">
<text class="itemLay_top_name">{{item.teamName}}</text>
<view class="itemLay_top_label">
<text class="itemLay_top_label_item">{{item.city}}</text>
<text class="itemLay_top_label_item">{{item.table}}</text>
<text class="itemLay_top_label_item">{{item.number}}</text>
</view>
</view>
<view class="line"></view>
<view class="itemLay_list">
<scroll-view class="itemLay_list_scroll_view" scroll-x="true">
<view v-for="(memberItem,pos) in item.member" :key="pos"
class="itemLay_list_scroll_view_for">
<view class="itemLay_list_scroll_view_item">
<image :src="memberItem.headImage" class="itemLay_list_scroll_view_item_image"
mode="scaleToFill">
</image>
<text class="itemLay_list_scroll_view_item_text">{{memberItem.name}}</text>
</view>
</view>
</scroll-view>
</view>
<view class="itemLay_bom">
<view class="itemLay_bom_right">
<text class="itemLay_bom_right1"
@click="apply(item.sid)">申请中({{item.applyNumber}})</text>
<text class="itemLay_bom_right2" @click="invitation(item.sid)">邀请队员</text>
<text class="itemLay_bom_right3" @click="manage(item.sid)">管理</text>
</view>
<view class="itemLay_bom_notice" v-if="isShow(item.noticeSid)">
<view class="line"></view>
<view class="itemLay_bom_notice_content">
<text class="itemLay_bom_notice_content_text">本队报名了</text>
<text class="itemLay_bom_notice_content_text2"
@click="detail(item.noticeSid)">{{item.notice}}</text>
<text class="itemLay_bom_notice_content_text">组队成功后即可报名</text>
</view>
</view>
</view>
</view>
</view>
</view>
</RefreshView>
</view>
</template>
<script>
export default {
data() {
return {
page: {
state: ""
},
menuList: [{
'title': '默认活动类型',
'key': 'state',
'reflexTitle': true,
'defaultSelectedIndex': 0,
detailList: [{
'title': '全部运动项目',
'value': ""
}]
}
],
list: [{
showDialog: false,
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "1",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "阿萨苏打水就激动四季豆i阿萨按时递交四栋i阿萨大四的1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "",
}, {
showDialog: false,
teamName: "asdsdfg士大夫是非得失的阿大撒大撒的地方dads发的阿风飒飒大大发生的1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "2",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}, {
showDialog: false,
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
sid: "3",
number: "2/5",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}, {
showDialog: false,
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "4",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}
]
}
},
onLoad() {
let that = this
that.HTTP({
url: 'aos/v1/activityManagement/getActivityCreatePageParameter',
method: 'GET',
data: {
"adcode": that.page.adCode
},
paramsType: "FORM",
loading: true
}).then((res) => {
console.log("that.menuList[0].detailList", that.menuList[0].detailList);
let list = [];
for (var i = 0; i < res.data.listSportCategoryArea.length; i++) {
list.push({
title: res.data.listSportCategoryArea[i].sportCategoryName,
value: res.data.listSportCategoryArea[i].sid
})
}
// 必须用变量去接受
that.menuList[0].detailList = that.menuList[0].detailList.concat(list)
console.log("qqq", that.menuList[0].detailList);
});
},
methods: {
result(val) {
console.log("aaa", val);
if (!this.IsEmpty(val.state)) {
this.page.state = val.state;
this.list = []
console.log("this.page.state", this.page.state);
} else {
this.page.state = val.state;
this.list = []
}
},
isShow(sid) {
if (!this.IsEmpty(sid)) {
return true
} else {
return false
}
},
apply(sid) {
// 查看申请
uni.navigateTo({
url: 'examineMember?sid=' + sid+"&type="+0
})
},
invitation(sid) {
// 邀请
},
manage(sid) {
// 管理
let newList = []
newList.push("修改信息")
newList.push("删除队员")
newList.push("解散队伍")
uni.showActionSheet({
itemList: newList,
success: function(res) {
switch (res.tapIndex) {
case 0:
console.log("res==修改")
break;
case 1:
// 查看申请
uni.navigateTo({
url: 'examineMember?sid=' + sid+"&type="+1
})
break;
case 2:
uni.showModal({
title: '提示',
content: '是否要解算队伍吗',
success: function(res) {
if (res.confirm) { //这里是点击了确定以后
} else { //这里是点击了取消以后
console.log('用户点击取消')
}
}
})
console.log("res==集散")
break;
}
},
fail(e) {
console.log("reeees==" + JSON.stringify(e))
}
});
},
detail(sid) {
// 活动详情
uni.navigateTo({
url: '../index/DetailActivity?raceSid=' + sid
})
},
}
}
</script>
<style lang="scss">
.top {
display: flex;
width: 100%;
flex-direction: row;
background-color: #fff;
align-items: center;
.top_text {
text-align: end;
margin-right: 30rpx;
}
}
.line {
height: 5rpx;
margin-top: 20rpx;
background: #eee;
width: 100%;
}
.itemLay {
background-color: #fff;
margin-bottom: 24rpx;
display: flex;
flex-direction: column;
padding: 32rpx;
.itemLay_top {
display: flex;
flex-direction: row;
.itemLay_top_name {
max-width: 350rpx;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 36rpx;
color: #101010;
}
.itemLay_top_label {
flex: 1;
display: flex;
flex-direction: row;
.itemLay_top_label_item {
background-color: #F4CE98;
color: #fff;
font-size: 24rpx;
padding: 5rpx 10rpx;
text-align: center;
align-items: center;
margin-left: 24rpx;
}
}
}
.itemLay_list {
z-index: 100;
.itemLay_list_scroll_view {
width: 100%;
white-space: nowrap;
.itemLay_list_scroll_view_for {
display: inline-block;
padding-top: 32rpx;
padding-bottom: 32rpx;
.itemLay_list_scroll_view_item {
margin-left: 20rpx;
margin-right: 20rpx;
display: flex;
flex-direction: column;
.itemLay_list_scroll_view_item_image {
width: 110rpx;
height: 110rpx;
border-radius: 12rpx;
}
.itemLay_list_scroll_view_item_text {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 100rpx;
margin-top: 15rpx;
font-size: 24rpx;
text-align: center;
color: #4D4A4A;
}
}
}
}
}
.itemLay_bom {
display: flex;
flex-direction: column;
.itemLay_bom_right {
align-items: center;
text-align: right;
.itemLay_bom_right1 {
margin-right: 24rpx;
font-size: 30rpx;
color: #FF5006;
}
.itemLay_bom_right2 {
margin-right: 36rpx;
font-size: 32rpx;
text-decoration-line: underline;
color: #E99D42;
}
.itemLay_bom_right3 {
font-size: 32rpx;
color: #E99D42;
text-decoration-line: underline;
}
}
.itemLay_bom_notice {
display: flex;
flex-direction: column;
.itemLay_bom_notice_content {
display: flex;
margin-top: 20rpx;
align-items: baseline;
.itemLay_bom_notice_content_text {
font-size: 28rpx;
color: #898989;
}
.itemLay_bom_notice_content_text2 {
font-size: 40rpx;
margin-left: 10rpx;
margin-right: 10rpx;
text-decoration-line: underline;
color: #E99D42;
}
}
}
}
}
/*下三角*/
.tip-bottom {
z-index: 1000;
margin: 20px;
padding: 5px;
width: 300px;
height: 60px;
border: 2px solid #f99;
position: relative;
background-color: #0FF;
/*设置圆角*/
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
}
.tip-bottom:before,
.tip-bottom:after {
z-index: 1000;
content: "";
display: block;
border-width: 15px;
position: absolute;
bottom: -30px;
left: 200px;
border-style: solid dashed dashed solid;
border-color: #f99 transparent transparent transparent;
font-size: 0;
line-height: 0;
}
.tip-bottom:after {
z-index: 1000;
bottom: -27px;
border-color: #0FF transparent transparent transparent;
}
</style>

126
pages/team/MyTeam2.vue Normal file
View File

@@ -0,0 +1,126 @@
<template>
<view style="background: #F1F2F5;">
<RefreshView id="mescrollRef" ref="mescrollRef" :pageBg="F1F2F5" text="我的队伍" :useDownScroll="false"
:useUpScroll="false">
<view class="top">
<view class="top_lift">
<text class="top_lift_text1">对不起您没有在任何队伍里</text>
<text class="top_lift_text2">您可以创建和管理自己队伍参加任何活动</text>
</view>
<text class="btn" @click="onClick(1)">创建队伍</text>
</view>
<view class="bom">
<text class="bom_text1">您可以申请加入招募队员的队伍</text>
<text class="bom_text2">通过申请后您将与队伍共同参与活动如遇队伍解散或未被任何队伍通过您可以选择其他队伍</text>
<view class="bom_bom">
<text class="bom_bom_text">{{number}}</text>
<text class="btn" @click="onClick(2)">查看列表</text>
</view>
</view>
</RefreshView>
</view>
</template>
<script>
export default {
data() {
return {
number: "石家庄市共有10个队伍在公开招募队员。"
}
},
methods: {
onClick(id) {
switch (id) {
case 1:
// 新建
uni.navigateTo({
url: 'CreateTeam'
})
break;
case 2:
// 加入
break;
}
}
}
}
</script>
<style lang="scss">
.btn {
background-color: #F4CE98;
color: #fff;
font-size: 26rpx;
padding: 5rpx 10rpx;
display: flex;
align-items: center;
}
.top {
display: flex;
margin-top: 20rpx;
background-color: #fff;
padding: 36rpx;
flex-direction: row;
align-items: center;
.top_lift {
flex: 1;
display: flex;
flex-direction: column;
.top_lift_text1 {
font-size: 28rpx;
color: #E99D42;
}
.top_lift_text2 {
margin-top: 15rpx;
font-size: 26rpx;
color: #E99D42;
}
}
}
.bom {
display: flex;
margin-top: 20rpx;
background-color: #fff;
padding: 36rpx;
flex-direction: column;
.bom_text1 {
font-size: 28rpx;
color: #898989;
}
.bom_text2 {
margin-top: 20rpx;
font-size: 26rpx;
color: #BEBEBE;
}
.bom_bom {
margin-top: 24rpx;
display: flex;
flex-direction: row;
.bom_bom_text {
flex: 1;
font-size: 28rpx;
color: #E99D42;
}
}
}
</style>

194
pages/team/WaitJoin.vue Normal file
View File

@@ -0,0 +1,194 @@
<template>
<RefreshView id="mescrollRef" ref="mescrollRef" text="等待成员加入的队员" :useDownScroll="false" :useUpScroll="false">
<view class="list" v-for="(teamItem,index) in page.list " :key="index">
<view class="team">
<view class="info">
<view >
<text class="team-name">{{teamItem.name}}</text>
<text class="link" @click="applyJoinTeam(teamItem.sid)">申请加入</text>
</view>
<view class="label-list">
<text class="label">{{teamItem.adName}}</text>
<text class="label">{{teamItem.sportCategoryName}}</text>
<text class="label">{{teamItem.memberNumber}}/{{teamItem.memberNumberLimit}}</text>
</view>
</view>
<scroll-view class="scorll" scroll-x="true">
<view v-for="(memberItem,pos) in teamItem.listTeamMemberArea" :key="pos" class="user-info-list" scroll-x="true">
<view class="user-info margin-left20">
<image class="head-image" :src="memberItem.headImage" mode="scaleToFill"></image>
<text class="real-name">{{memberItem.realName}}</text>
</view>
</view>
</scroll-view>
</view>
</view>
</RefreshView>
</template>
<script>
export default {
data() {
return {
isAdmin:0,
page: {
state: "",
current:1,
menuList: [{
'title': '默认活动类型',
'key': 'state',
'reflexTitle': true,
'defaultSelectedIndex': 0,
detailList: [{
'title': '全部运动项目',
'value': ""
}]
}
],
list:[]
},
}
},
onShow() {
let _this = this
this.HTTP({
url: 'aos/v1/aosUser/getMyTeamAreaPagerList',
paramsType: "JSON",
method: "POST",
data: {
current: _this.page.current,
size: 10,
params: {
sysUserSid: getApp().globalData.sysUserSid,
type: 0,
}
},
loading: true
})
.then((res) => {
_this.page.list = res.data.records
// 追加数据.concat
console.log("我的队伍:",_this.page.list )
});
},
methods: {
applyJoinTeam(teamSid){
let _this = this
_this.HTTP({
url: 'aos/v1/aosUser/applyJoinTeam',
method: 'POST',
paramsType: "JSON",
data: {
memberSid: getApp().globalData.sysUserSid,
teamSid: teamSid,
},
toast: true,
loading: true
}).then((res) => {
console.log('=======', res)
// 保存
uni.navigateBack({
delta: 1
})
});
},
refresh(page) {
let _this = this
this.HTTP({
url: 'aos/v1/aosUser/getMyTeamAreaPagerList',
paramsType: "JSON",
method: "POST",
data: {
current: _this.page.current,
size: 10,
params: {
sysUserSid: getApp().globalData.sysUserSid,
type: 0,
}
},
loading: true
}).then((res) => {
// 成功关闭刷新状态
_this.$refs.mescrollRef.refreshFinished(res.data.records.length)
if (_this.page.current == 1) {
// 第一页 先清空集合数据
_this.list = []
}
// 追加数据
//_this.list = _this.list.concat(res.data.records)
}).catch(function(err) {
console.log("11111");
_this.$refs.mescrollRef.refreshError()
});
},
clickItem(index) {
let raceSid = this.list[index].sid
console.log(raceSid)
uni.navigateTo({
url: '../find/DetailActivity?raceSid=' + raceSid
});
},
result(val) {
console.log("aaa", val);
if (!this.IsEmpty(val.state)) {
this.page.state = val.state;
this.list = []
console.log("this.page.state", this.page.state);
} else {
this.page.state = val.state;
this.list = []
}
},
isShow(sid) {
if (!this.IsEmpty(sid)) {
return true
} else {
return false
}
},
toExamineMember(sid) {
// 查看申请
uni.navigateTo({
url: 'MemberManage?sid=' + sid+"&type="+0
})
},
toDeleteMember(sid) {
// 查看申请
uni.navigateTo({
url: 'MemberManage?sid=' + sid+"&type="+1
})
},
invitation(sid) {
// 邀请
},
toMyTeamCreate(){
uni.navigateTo({
url: 'MyTeamCreate'
})
},
toWaitJoin(){
uni.navigateTo({
url: '../team/WaitJoin'
})
}
}
}
</script>
<style lang="scss">
@import url("../../static/columns.css");
.show_view {
display: inline;
}
.hide_view {
display: none;
}
</style>

498
pages/team/recruitList.vue Normal file
View File

@@ -0,0 +1,498 @@
<template>
<view style="background: #F1F2F5;">
<RefreshView id="mescrollRef" ref="mescrollRef" :pageBg="F1F2F5" text="招募队员的队伍列表" :useDownScroll="false"
:useUpScroll="false">
<view class="top">
<view style="flex: 1;">
<sl-filter id="header" ref="slLilter" v-if="menuList.length!=0" :color="fd6d2a" themeColor="#000000"
:menuList.sync="menuList" @result="result"></sl-filter>
</view>
<text class="top_text">共10个队伍</text>
</view>
<view style="margin-top: 20rpx;">
<view v-for="(item,index) in list " :key="index">
<view class="itemLay">
<view class="itemLay_top">
<text class="itemLay_top_name">{{item.teamName}}</text>
<view class="itemLay_top_label">
<text class="itemLay_top_label_item">{{item.city}}</text>
<text class="itemLay_top_label_item">{{item.table}}</text>
<text class="itemLay_top_label_item">{{item.number}}</text>
</view>
</view>
<view class="line"></view>
<view class="itemLay_list">
<scroll-view class="itemLay_list_scroll_view" scroll-x="true">
<view v-for="(memberItem,pos) in item.member" :key="pos"
class="itemLay_list_scroll_view_for">
<view class="itemLay_list_scroll_view_item">
<image :src="memberItem.headImage" class="itemLay_list_scroll_view_item_image"
mode="scaleToFill">
</image>
<text class="itemLay_list_scroll_view_item_text">{{memberItem.name}}</text>
</view>
</view>
</scroll-view>
</view>
<view class="itemLay_bom">
<view class="itemLay_bom_right">
<text class="itemLay_bom_right3" @click="join(item.sid)">申请加入</text>
</view>
<view class="itemLay_bom_notice" v-if="isShow(item.noticeSid)">
<view class="line"></view>
<view class="itemLay_bom_notice_content">
<text class="itemLay_bom_notice_content_text">本队报名了</text>
<text class="itemLay_bom_notice_content_text2"
@click="detail(item.noticeSid)">{{item.notice}}</text>
<text class="itemLay_bom_notice_content_text">组队成功后即可报名</text>
</view>
</view>
</view>
</view>
</view>
</view>
</RefreshView>
</view>
</template>
<script>
export default {
data() {
return {
page: {
'city': this.ReadPreference("find_city"),
'adCode': this.ReadPreference("find_city_code").slice(0, -2),
state: "",
type: "",
},
menuList: [{
'title': '当前定位城市',
'key': 'type',
'reflexTitle': true,
'defaultSelectedIndex': 0,
detailList: [{
'title': this.ReadPreference("find_city"),
'value': this.ReadPreference("find_city_code").slice(0, -2)
},
{
'title': '选择其他城市',
'value': '0'
}
]
}, {
'title': '默认活动类型',
'key': 'state',
'reflexTitle': true,
'defaultSelectedIndex': 0,
detailList: [{
'title': '全部活动',
'value': ""
}]
}
],
list: [{
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "1516589",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "阿萨苏打水就激动四季豆i阿萨按时递交四栋i阿萨大四的1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "",
}, {
teamName: "asdsdfg士大夫是非得失的阿大撒大撒的地方dads发的阿风飒飒大大发生的1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "1516589",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}, {
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
sid: "1516589",
number: "2/5",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}, {
teamName: "我的队伍名称1",
city: "石家庄1",
table: "乒乓球1",
number: "2/5",
sid: "1516589",
member: [{
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三1",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三2",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三3",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三4",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三5",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三6",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三7",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三8",
}, {
headImage: "https://tse1-mm.cn.bing.net/th/id/OIP-C.n0_p3rYRuofABd3XudbZnAHaEo?w=298&h=186&c=7&r=0&o=5&pid=1.7",
name: "张三9",
}],
applyNumber: "5",
notice: "梧桐居周赛",
noticeSid: "12561651651",
}
]
}
},
onLoad() {
let that = this
that.HTTP({
url: 'aos/v1/activityManagement/getActivityCreatePageParameter',
method: 'GET',
data: {
"adcode": that.page.adCode
},
paramsType: "FORM",
loading: true
}).then((res) => {
console.log("that.menuList[1].detailList", that.menuList[1].detailList);
let list = [];
for (var i = 0; i < res.data.listSportCategoryArea.length; i++) {
list.push({
title: res.data.listSportCategoryArea[i].sportCategoryName,
value: res.data.listSportCategoryArea[i].sid
})
}
// 必须用变量去接受
that.menuList[1].detailList = that.menuList[1].detailList.concat(list)
console.log("qqq", that.menuList[1].detailList);
});
},
onShow() {
let backResult = this.OnActivityResult();
if (backResult != undefined) {
console.log("结果>" + JSON.stringify(backResult))
if (!this.IsEmpty(backResult.code)) {
console.log("结果2>" + backResult.code)
this.page.adCode = backResult.code
this.page.city = backResult.city
this.menuList[0].detailList[0].title = backResult.city
this.menuList[0].detailList[0].value = backResult.code
console.log("qqq", this.menuList[0].detailList);
this.$refs.slLilter.setTitle(this.menuList)
}
}
},
methods: {
result(val) {
console.log("aaa", val);
if (!this.IsEmpty(val.type)) {
console.log("===>1" + JSON.stringify(this.page))
if (val.type != "0") {
this.page.type = val.type;
this.list = []
} else {
console.log("===>2" + JSON.stringify(this.page))
uni.navigateTo({
url: "../../pages/city/CitySelectActivity?city=" + this.page.city +
"&code=" + this.page.adCode
})
}
}
if (!this.IsEmpty(val.state)) {
this.page.state = val.state;
this.list = []
console.log("this.page.state", this.page.state);
} else {
this.page.state = val.state;
this.list = []
}
},
isShow(sid) {
if (!this.IsEmpty(sid)) {
return true
} else {
return false
}
},
join(sid) {
// 申请加入
},
detail(sid) {
// 活动详情
uni.navigateTo({
url: '../index/DetailActivity?raceSid=' + sid
})
},
}
}
</script>
<style lang="scss">
.top {
display: flex;
width: 100%;
flex-direction: row;
background-color: #fff;
align-items: center;
.top_text {
text-align: end;
margin-right: 30rpx;
}
}
.line {
height: 5rpx;
margin-top: 20rpx;
background: #eee;
width: 100%;
}
.itemLay {
background-color: #fff;
margin-bottom: 24rpx;
display: flex;
flex-direction: column;
padding: 32rpx;
.itemLay_top {
display: flex;
flex-direction: row;
.itemLay_top_name {
max-width: 350rpx;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
font-size: 36rpx;
color: #101010;
}
.itemLay_top_label {
flex: 1;
display: flex;
flex-direction: row;
.itemLay_top_label_item {
background-color: #F4CE98;
color: #fff;
font-size: 24rpx;
padding: 5rpx 10rpx;
text-align: center;
align-items: center;
margin-left: 24rpx;
}
}
}
.itemLay_list {
.itemLay_list_scroll_view {
width: 100%;
white-space: nowrap;
.itemLay_list_scroll_view_for {
display: inline-block;
padding-top: 32rpx;
padding-bottom: 32rpx;
.itemLay_list_scroll_view_item {
margin-left: 20rpx;
margin-right: 20rpx;
display: flex;
flex-direction: column;
.itemLay_list_scroll_view_item_image {
width: 110rpx;
height: 110rpx;
border-radius: 12rpx;
}
.itemLay_list_scroll_view_item_text {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 100rpx;
margin-top: 15rpx;
font-size: 24rpx;
text-align: center;
color: #4D4A4A;
}
}
}
}
}
.itemLay_bom {
display: flex;
flex-direction: column;
.itemLay_bom_right {
align-items: center;
text-align: right;
.itemLay_bom_right3 {
font-size: 32rpx;
color: #E99D42;
text-decoration-line: underline;
}
}
.itemLay_bom_notice {
display: flex;
flex-direction: column;
.itemLay_bom_notice_content {
display: flex;
margin-top: 20rpx;
align-items: baseline;
.itemLay_bom_notice_content_text {
font-size: 28rpx;
color: #898989;
}
.itemLay_bom_notice_content_text2 {
font-size: 40rpx;
margin-left: 10rpx;
margin-right: 10rpx;
text-decoration-line: underline;
color: #E99D42;
}
}
}
}
}
</style>