志愿者相关接口对接

This commit is contained in:
Renpc-kilig 2020-06-26 14:06:35 +08:00
parent 36b3061f86
commit 35dc887c0d
19 changed files with 897 additions and 26 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 337 B

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@ -7,6 +7,22 @@ Page({
data: { data: {
}, },
/**
* 跳转到我的志愿团队页面
*/
toMyTeam: function() {
wx.navigateTo({
url: '../myVlounteerTeam/myVlounteerTeam',
})
},
/**
* 跳转到我的志愿活动页面
*/
toMyVolunteerActivity: function() {
wx.navigateTo({
url: '../myVolunteerActivity/myVolunteerActivity',
})
},
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载

View File

@ -23,6 +23,18 @@
<image src="../../images/my-collect.png"></image> <image src="../../images/my-collect.png"></image>
<view class="title">我的收藏</view> <view class="title">我的收藏</view>
</view> </view>
<view class="main-box">
<image src="../../images/share.png"></image>
<view class="title" bindtap="toMyTeam">我的志愿团队</view>
</view>
<view class="main-box">
<image src="../../images/team.png"></image>
<view class="title" bindtap="toMyVolunteerActivity">我的志愿活动</view>
</view>
<view class="main-box">
<image src="../../images/share.png"></image>
<view class="title">我的分享</view>
</view>
<view class="main-box"> <view class="main-box">
<image src="../../images/setting.png"></image> <image src="../../images/setting.png"></image>
<view class="title">设置</view> <view class="title">设置</view>

View File

@ -0,0 +1,166 @@
// pages/volunteer/volunteer.js
Page({
/**
* 页面的初始数据
*/
data: {
baseUrl: 'http://192.168.0.111:8888/volunteer/',
token: '',
otherTeamMap: {},
type: '1',
teamId: '',
},
getToken: function() {
var self = this;
return new Promise(resolve =>{
wx.getStorage({
key: 'token',
success(res) {
self.setData({
token: res.data
})
return resolve();
}
})
})
},
newTeam: function () {
wx.navigateTo({
url: '../newTeam/newTeam',
})
},
changeTab: function(e) {
var self = this;
self.setData({
type: e.currentTarget.dataset.type
})
if(self.data.type === '1') {
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true');
}else {
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/myjointeam?myTeam=true');
}
},
otherTeam: function(url) {
var self = this;
wx.request({
url: url,
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
self.setData({
otherTeamMap: res.data.rows
})
}
console.log(res)
console.log(self.data.otherTeamMap)
}
})
},
/**
* 申请/退出加入团队
*/
joinOrOutTeam: function(e) {
var self = this;
self.setData({
teamId: e.currentTarget.dataset.teamid
})
var teamMemberVO;
var url;
var methodType;
var title;
if('1' == self.data.type) {
url = self.data.baseUrl + 'wxminiapp/teammember/saveteammember'
teamMemberVO = {
teamId: e.currentTarget.dataset.teamid
}
methodType = 'POST'
title = '申请成功!'
}else {
url = self.data.baseUrl + 'wxminiapp/teammember/quitTeam/' + self.data.teamId
methodType = 'GET'
title = '退出成功!'
}
wx.request({
url: url,
data: teamMemberVO,
method: methodType,
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
wx.showToast({
title: title,
icon: 'none',
duration: 2000
})
wx.navigateTo({
url: '../volunteer/volunteer',
})
}
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var self = this;
this.getToken().then(result => {
this.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true');
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

View File

@ -0,0 +1,30 @@
<view class="top-tab">
<view class="tab-box {{type==1?'active':''}}" data-type="1" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image>
未参加
<image src="../../images/selected-r.png" class="selected-r"></image>
</view>
<view class="tab-box {{type==2?'active':''}}" data-type="2" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image>
已参加
<image src="../../images/selected-r.png" class="selected-r"></image>
</view>
</view>
<view class="team">
<view class="team-box" wx:for="{{otherTeamMap}}" data-id="{{item.teamId}}">
<view class="name-join">
<view class="name">{{item.teamName}}</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 1}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">申请加入</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 2}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '0'}}">待审核</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '1'}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '2'}}">审核驳回</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '3'}}">已退出 </view>
</view>
<view class="slogan">团队口号:{{item.teamWatchword}}</view>
<view class="area">所属区域:{{item.teamCityDictionaryName}} {{item.teamCountyDictionaryName}} {{item.teamAreaDictionaryName}}</view>
</view>
</view>
<view class="new-team">
<view class="new-team-btn" bindtap="newTeam">创建新团队</view>
</view>

View File

@ -0,0 +1,94 @@
.top-tab{
position: fixed;
top: 0;
left: 0;
right: 0;
display: flex;
box-shadow:0 0 17rpx 0 rgba(0,0,0,0.1);
border-radius:0 0 31rpx 31rpx;
background: #fff;
}
.tab-box{
display: flex;
justify-content: center;
align-items: center;
flex: 1;
position: relative;
height: 90rpx;
font-size: 30rpx;
color: #242424;
}
.tab-box.active{
color: #9F1512;
}
.tab-box image{
position: absolute;
width: 15rpx;
height: 40rpx;
top: 50%;
margin-top: -20rpx;
display: none;
}
.tab-box.active image{
display: block;
}
.tab-box image.selected-l{
left: 100rpx;
}
.tab-box image.selected-r{
right: 100rpx;
}
.team{
margin-top: 90rpx;
padding: 0 30rpx;
margin-bottom: 110rpx;
}
.team-box{
padding: 20rpx 0;
border-bottom: 1px solid #EBEBEB;
}
.name-join{
display: flex;
justify-content: space-between;
height: 40rpx;
line-height: 40rpx;
font-size: 32rpx;
color: #242424;
}
.name{
width: 70%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.join{
padding: 0 10rpx;
background: rgba(159,21,18,.1);
color: #9F1512;
font-size: 28rpx;
border-radius: 10rpx;
}
.slogan, .area{
color: #949494;
font-size: 26rpx;
margin-top: 10rpx;
}
.new-team{
position: fixed;
background: #fff;
bottom: 0;
left: 0;
right: 0;
padding: 15rpx 30rpx;
border-top: 1px solid #EBEBEB;
}
.new-team-btn{
height: 80rpx;
display: flex;
justify-content: center;
align-items: center;
font-size: 30rpx;
color: #fff;
background: #9F1512;
border-radius: 10rpx;
}

View File

@ -0,0 +1,166 @@
// pages/volunteer/volunteer.js
Page({
/**
* 页面的初始数据
*/
data: {
baseUrl: 'http://192.168.0.111:8888/volunteer/',
token: '',
otherTeamMap: {},
type: '1',
teamId: '',
},
getToken: function() {
var self = this;
return new Promise(resolve =>{
wx.getStorage({
key: 'token',
success(res) {
self.setData({
token: res.data
})
return resolve();
}
})
})
},
newTeam: function () {
wx.navigateTo({
url: '../newTeam/newTeam',
})
},
changeTab: function(e) {
var self = this;
self.setData({
type: e.currentTarget.dataset.type
})
if(self.data.type === '1') {
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true');
}else {
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/myjointeam?myTeam=true');
}
},
otherTeam: function(url) {
var self = this;
wx.request({
url: url,
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
self.setData({
otherTeamMap: res.data.rows
})
}
console.log(res)
console.log(self.data.otherTeamMap)
}
})
},
/**
* 申请/退出加入团队
*/
joinOrOutTeam: function(e) {
var self = this;
self.setData({
teamId: e.currentTarget.dataset.teamid
})
var teamMemberVO;
var url;
var methodType;
var title;
if('1' == self.data.type) {
url = self.data.baseUrl + 'wxminiapp/teammember/saveteammember'
teamMemberVO = {
teamId: e.currentTarget.dataset.teamid
}
methodType = 'POST'
title = '申请成功!'
}else {
url = self.data.baseUrl + 'wxminiapp/teammember/quitTeam/' + self.data.teamId
methodType = 'GET'
title = '退出成功!'
}
wx.request({
url: url,
data: teamMemberVO,
method: methodType,
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
wx.showToast({
title: title,
icon: 'none',
duration: 2000
})
wx.navigateTo({
url: '../volunteer/volunteer',
})
}
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
var self = this;
this.getToken().then(result => {
this.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true');
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
})

View File

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

View File

@ -0,0 +1,30 @@
<view class="top-tab">
<view class="tab-box {{type==1?'active':''}}" data-type="1" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image>
未参加
<image src="../../images/selected-r.png" class="selected-r"></image>
</view>
<view class="tab-box {{type==2?'active':''}}" data-type="2" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image>
已参加
<image src="../../images/selected-r.png" class="selected-r"></image>
</view>
</view>
<view class="team">
<view class="team-box" wx:for="{{otherTeamMap}}" data-id="{{item.teamId}}">
<view class="name-join">
<view class="name">{{item.teamName}}</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 1}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">申请加入</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 2}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '0'}}">待审核</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '1'}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '2'}}">审核驳回</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '3'}}">已退出 </view>
</view>
<view class="slogan">团队口号:{{item.teamWatchword}}</view>
<view class="area">所属区域:{{item.teamCityDictionaryName}} {{item.teamCountyDictionaryName}} {{item.teamAreaDictionaryName}}</view>
</view>
</view>
<view class="new-team">
<view class="new-team-btn" bindtap="newTeam">创建新团队</view>
</view>

View File

@ -0,0 +1,94 @@
.top-tab{
position: fixed;
top: 0;
left: 0;
right: 0;
display: flex;
box-shadow:0 0 17rpx 0 rgba(0,0,0,0.1);
border-radius:0 0 31rpx 31rpx;
background: #fff;
}
.tab-box{
display: flex;
justify-content: center;
align-items: center;
flex: 1;
position: relative;
height: 90rpx;
font-size: 30rpx;
color: #242424;
}
.tab-box.active{
color: #9F1512;
}
.tab-box image{
position: absolute;
width: 15rpx;
height: 40rpx;
top: 50%;
margin-top: -20rpx;
display: none;
}
.tab-box.active image{
display: block;
}
.tab-box image.selected-l{
left: 100rpx;
}
.tab-box image.selected-r{
right: 100rpx;
}
.team{
margin-top: 90rpx;
padding: 0 30rpx;
margin-bottom: 110rpx;
}
.team-box{
padding: 20rpx 0;
border-bottom: 1px solid #EBEBEB;
}
.name-join{
display: flex;
justify-content: space-between;
height: 40rpx;
line-height: 40rpx;
font-size: 32rpx;
color: #242424;
}
.name{
width: 70%;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.join{
padding: 0 10rpx;
background: rgba(159,21,18,.1);
color: #9F1512;
font-size: 28rpx;
border-radius: 10rpx;
}
.slogan, .area{
color: #949494;
font-size: 26rpx;
margin-top: 10rpx;
}
.new-team{
position: fixed;
background: #fff;
bottom: 0;
left: 0;
right: 0;
padding: 15rpx 30rpx;
border-top: 1px solid #EBEBEB;
}
.new-team-btn{
height: 80rpx;
display: flex;
justify-content: center;
align-items: center;
font-size: 30rpx;
color: #fff;
background: #9F1512;
border-radius: 10rpx;
}

View File

@ -37,10 +37,25 @@ Page({
}) })
}) })
}, },
bindDateChange: function(e) { startDateChange: function(e) {
console.log('picker发送选择改变携带值为', e.detail.value) console.log('picker发送选择改变携带值为', e.detail.value)
this.setData({ this.setData({
date: e.detail.value startDate: e.detail.value
})
},
endDateChange: function(e) {
var self = this;
console.log('picker发送选择改变携带值为', e.detail.value)
if(self.data.startDate > e.detail.value) {
wx.showToast({
title: '结束时间不能早于开始时间',
icon: 'none',
duration: 1500
})
return false;
}
this.setData({
endDate: e.detail.value
}) })
}, },
dateDafault: function() { dateDafault: function() {

View File

@ -67,7 +67,7 @@
<view class="row"> <view class="row">
<view class="row-title">开始时间:</view> <view class="row-title">开始时间:</view>
<view class="row-text"> <view class="row-text">
<picker mode="date" value="{{startDate}}" bindchange="bindDateChange"> <picker mode="date" value="{{startDate}}" bindchange="startDateChange">
<view class="picker"> <view class="picker">
{{startDate}} {{startDate}}
</view> </view>
@ -77,7 +77,7 @@
<view class="row"> <view class="row">
<view class="row-title">结束时间:</view> <view class="row-title">结束时间:</view>
<view class="row-text"> <view class="row-text">
<picker mode="date" value="{{endDate}}" bindchange="bindDateChange"> <picker mode="date" value="{{endDate}}" bindchange="endDateChange">
<view class="picker"> <view class="picker">
{{endDate}} {{endDate}}
</view> </view>

View File

@ -5,10 +5,17 @@ Page({
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
url: 'http://192.168.0.111:8888/volunteer/', baseUrl: 'http://192.168.0.111:8888/volunteer/',
imgUrl: 'http://192.168.0.111:8888/volunteer/route/file/downloadfile/true/', imgUrl: 'http://192.168.0.111:8888/volunteer/route/file/downloadfile/true/',
dataMap: {}, dataMap: {},
token: '' token: '',
serviceId: '',
type: '',
teamIndex: 0,
teamResult: '请选择服务区域',
team: {}, // 服务区域-市
teamArray: [], // 服务区域-市
}, },
getToken: function() { getToken: function() {
var self = this; var self = this;
@ -24,15 +31,10 @@ Page({
}) })
}) })
}, },
goSign: function () {
wx.navigateTo({
url: '../activitySign/activitySign'
})
},
getDetail: function(id) { getDetail: function(id) {
var self = this; var self = this;
wx.request({ wx.request({
url: self.data.url + 'wxminiapp/volunteerservice/getvolunteerservicebyid/' + id, url: self.data.baseUrl + 'wxminiapp/volunteerservice/getvolunteerservicebyid/' + id,
header: { header: {
'token': self.data.token 'token': self.data.token
}, },
@ -46,6 +48,183 @@ Page({
} }
}) })
}, },
/**
* 志愿者团队报名
*/
enroll: function(e) {
var self = this;
self.setData({
serviceId: e.target.dataset.serviceid,
type: e.target.dataset.type
})
},
/**
*
* @param {志愿者报名} e
*/
volunteerEnroll: function(e) {
var self = this;
self.setData({
serviceId: e.target.dataset.serviceid,
type: e.target.dataset.type
})
// 提交报名请求
var serviceMemberVO = {
serviceId: self.data.serviceId,
voluntaryType: self.data.type
}
self.sendEnrollRequest(serviceMemberVO);
},
/**
*
* @param {团队报名} e
*/
teamChange: function(e) {
var self = this;
self.setData({
teamIndex: e.detail.value
})
// 提交报名请求
var serviceMemberVO = {
serviceId: self.data.serviceId,
teamId: self.data.team[self.data.teamIndex].teamId,
voluntaryType: self.data.type
}
self.sendEnrollRequest(serviceMemberVO);
},
/**
*
* @param {团队取消报名} e
*/
teamCancelChange: function(e) {
var self = this;
self.setData({
teamIndex: e.detail.value
})
self.sendCancelEnrollRequest();
},
/**
*
* @param {志愿者取消报名} e
*/
volunteerCancelEnroll: function(e) {
var self = this;
self.setData({
serviceId: e.target.dataset.serviceid,
type: e.target.dataset.type,
teamArray: []
})
self.sendCancelEnrollRequest();
},
/**
*
* @param {发送报名请求} serviceMemberVO
*/
sendEnrollRequest: function(serviceMemberVO) {
var self = this;
wx.request({
url: self.data.baseUrl + 'wxminiapp/servicemember/saveservicemember',
method: 'POST',
header: {
token: self.data.token
},
data: serviceMemberVO,
success(res) {
if(res.statusCode == 200) {
wx.showToast({
title: '报名成功!',
icon: 'none',
duration: 1500
})
wx.navigateTo({
url: '../volunteer/volunteer',
})
}
}
})
},
/**
* 发送取消报名请求
*/
sendCancelEnrollRequest() {
var self = this;
var url;
if(self.data.teamArray.length > 0) {
url = self.data.baseUrl + 'wxminiapp/servicemember/cancelapply/'+ self.data.type +'/'+ self.data.serviceId +'/' + self.data.team[self.data.teamIndex].teamId;
}else {
url = self.data.baseUrl + 'wxminiapp/servicemember/cancelapply/'+ self.data.type +'/'+ self.data.serviceId +'/null';
}
wx.request({
url: url,
header: {
token: self.data.token
},
success(res) {
if(res.statusCode == 200) {
wx.showToast({
title: '取消报名成功!',
icon: 'none',
duration: 1500
})
wx.navigateTo({
url: '../volunteer/volunteer',
})
}
},
fail(res) {
}
})
},
/**
* 获取我的团队
*/
getMyTeam: function() {
var self = this;
wx.request({
url: self.data.baseUrl + 'wxminiapp/team/myteamm',
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
var array = [];
for(var item of res.data.rows) {
delete item.teamArea;
delete item.teamAreaDictionaryName;
delete item.teamWatchword;
delete item.teamOwner;
delete item.memberId;
delete item.memberName;
delete item.gmtCreate;
delete item.photo;
delete item.count;
delete item.status;
delete item.content;
delete item.isTeamOwner;
delete item.checkStatus;
delete item.teamCounty;
delete item.teamCity;
delete item.teamCityDictionaryName;
delete item.teamCountyDictionaryName;
delete item.teamCity;
array.push(item.teamName);
}
self.setData({
teamArray: array,
team: res.data.rows
})
}
}
})
},
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
@ -53,6 +232,7 @@ Page({
var id = options.id; var id = options.id;
this.getToken().then(result => { this.getToken().then(result => {
this.getDetail(id); this.getDetail(id);
this.getMyTeam();
}) })
}, },

View File

@ -27,6 +27,15 @@
</view> </view>
</view> </view>
</view> </view>
<view class="sign-box" bindtap="goSign" data-id="{{dataMap.activityLibraryId }}" wx-if="{{dataMap.activityState == 3 && dataMap.isEnroll == ''}}"> <view class="sign-box" wx-if="{{dataMap.status == 'enroll'}}">
<view class="sign-btn">报名</view> <picker bindchange="teamChange" value="{{teamIndex}}" range="{{teamArray}}" wx:if="{{dataMap.voluntaryType == '2'}}">
<view class="sign-btn" data-serviceId="{{dataMap.volunteerServiceId }}" data-type="{{dataMap.voluntaryType }}" bindtap="enroll">报名</view>
</picker>
<view class="sign-btn" wx:if="{{dataMap.voluntaryType == '1'}}" data-serviceId="{{dataMap.volunteerServiceId }}" data-type="{{dataMap.voluntaryType }}" bindtap="volunteerEnroll">报名</view>
</view> </view>
<view class="sign-box" wx-if="{{dataMap.status == 'isEnroll'}}">
<picker bindchange="teamCancelChange" value="{{teamIndex}}" range="{{teamArray}}" wx:if="{{dataMap.voluntaryType == '2'}}">
<view class="sign-btn" wx:if="{{dataMap.voluntaryType == '2'}}" data-serviceId="{{dataMap.volunteerServiceId }}" data-type="{{dataMap.voluntaryType }}" bindtap="enroll">取消报名</view>
</picker>
<view class="sign-btn" wx:if="{{dataMap.voluntaryType == '1'}}" data-serviceId="{{dataMap.volunteerServiceId }}" data-type="{{dataMap.voluntaryType }}" bindtap="volunteerCancelEnroll">取消报名</view>
</view>

View File

@ -77,7 +77,7 @@
} }
.sign-btn{ .sign-btn{
width: 100%; width: 100%;
height: 100%; height: 80rpx;
background: #9F1512; background: #9F1512;
border-radius: 10rpx; border-radius: 10rpx;
display: flex; display: flex;

View File

@ -8,7 +8,9 @@ Page({
baseUrl: 'http://192.168.0.111:8888/volunteer/', baseUrl: 'http://192.168.0.111:8888/volunteer/',
token: '', token: '',
otherTeamMap: {}, otherTeamMap: {},
type: '1' type: '1',
teamId: '',
}, },
getToken: function() { getToken: function() {
var self = this; var self = this;
@ -35,11 +37,9 @@ Page({
type: e.currentTarget.dataset.type type: e.currentTarget.dataset.type
}) })
if(self.data.type === '1') { if(self.data.type === '1') {
console.log('otherteam')
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true'); self.otherTeam(self.data.baseUrl + 'wxminiapp/team/otherteamm?otherTeam=true');
}else { }else {
console.log('myteams') self.otherTeam(self.data.baseUrl + 'wxminiapp/team/myjointeam?myTeam=true');
self.otherTeam(self.data.baseUrl + 'wxminiapp/team/listpageteam');
} }
}, },
otherTeam: function(url) { otherTeam: function(url) {
@ -50,11 +50,58 @@ Page({
token: self.data.token token: self.data.token
}, },
success(res) { success(res) {
console.log(res.data); if('200' == res.statusCode) {
self.setData({ self.setData({
otherTeamMap: res.data.rows otherTeamMap: res.data.rows
}) })
console.log(res.data.rows) }
console.log(res)
console.log(self.data.otherTeamMap)
}
})
},
/**
* 申请/退出加入团队
*/
joinOrOutTeam: function(e) {
var self = this;
self.setData({
teamId: e.currentTarget.dataset.teamid
})
var teamMemberVO;
var url;
var methodType;
var title;
if('1' == self.data.type) {
url = self.data.baseUrl + 'wxminiapp/teammember/saveteammember'
teamMemberVO = {
teamId: e.currentTarget.dataset.teamid
}
methodType = 'POST'
title = '申请成功!'
}else {
url = self.data.baseUrl + 'wxminiapp/teammember/quitTeam/' + self.data.teamId
methodType = 'GET'
title = '退出成功!'
}
wx.request({
url: url,
data: teamMemberVO,
method: methodType,
header: {
token: self.data.token
},
success(res) {
if('200' == res.statusCode) {
wx.showToast({
title: title,
icon: 'none',
duration: 2000
})
wx.navigateTo({
url: '../volunteer/volunteer',
})
}
} }
}) })
}, },

View File

@ -1,12 +1,12 @@
<view class="top-tab"> <view class="top-tab">
<view class="tab-box {{type==1?'active':''}}" data-type="1" bindtap="changeTab"> <view class="tab-box {{type==1?'active':''}}" data-type="1" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image> <image src="../../images/selected-l.png" class="selected-l"></image>
团队 未参加
<image src="../../images/selected-r.png" class="selected-r"></image> <image src="../../images/selected-r.png" class="selected-r"></image>
</view> </view>
<view class="tab-box {{type==2?'active':''}}" data-type="2" bindtap="changeTab"> <view class="tab-box {{type==2?'active':''}}" data-type="2" bindtap="changeTab">
<image src="../../images/selected-l.png" class="selected-l"></image> <image src="../../images/selected-l.png" class="selected-l"></image>
我的团队 已参加
<image src="../../images/selected-r.png" class="selected-r"></image> <image src="../../images/selected-r.png" class="selected-r"></image>
</view> </view>
</view> </view>
@ -14,6 +14,12 @@
<view class="team-box" wx:for="{{otherTeamMap}}" data-id="{{item.teamId}}"> <view class="team-box" wx:for="{{otherTeamMap}}" data-id="{{item.teamId}}">
<view class="name-join"> <view class="name-join">
<view class="name">{{item.teamName}}</view> <view class="name">{{item.teamName}}</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 1}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">申请加入</view>
<view class="join" wx:if="{{item.checkStatus == '' && type == 2}}" data-teamid="{{item.teamId}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '0'}}">待审核</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '1'}}" bindtap="joinOrOutTeam">退出</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '2'}}">审核驳回</view>
<view class="join" wx:if="{{item.checkStatus != '' && item.checkStatus == '3'}}">已退出 </view>
</view> </view>
<view class="slogan">团队口号:{{item.teamWatchword}}</view> <view class="slogan">团队口号:{{item.teamWatchword}}</view>
<view class="area">所属区域:{{item.teamCityDictionaryName}} {{item.teamCountyDictionaryName}} {{item.teamAreaDictionaryName}}</view> <view class="area">所属区域:{{item.teamCityDictionaryName}} {{item.teamCountyDictionaryName}} {{item.teamAreaDictionaryName}}</view>