This commit is contained in:
@jyuhsin
2024-12-06 14:57:44 +08:00
parent 02150326e0
commit da97219124
24 changed files with 1007 additions and 187 deletions
+108 -93
View File
@@ -25,8 +25,7 @@ layout("/mobile/platform.html"){
}
.van-button--small {
border-top-right-radius: 16px;
border-bottom-left-radius: 16px;
border-radius: 6px;
height: 26px;
}
@@ -123,6 +122,18 @@ layout("/mobile/platform.html"){
padding: 7px 16px !important;
}
.more_text{
display: inline-block !important;
}
.more_text .van-field__label {
width: 100% !important;
}
.more_text .van-cell__value {
width: auto !important;
}
</style>
<div id="app" v-cloak>
@@ -234,107 +245,113 @@ layout("/mobile/platform.html"){
<van-popup v-model="infoShow" get-container="#app" position="right" :style="{ height: '100%', width: '100%' }">
<van-nav-bar
title="社团详细信息"
:title="viewType === 'view' ? '基础信息' : '信息登记'"
left-arrow
placeholder
fixed
@click-left="infoShow = false"
safe-area-inset-top></van-nav-bar>
<van-tabs v-model="infoActive">
<van-tab title="社团信息">
<van-cell-group inset>
<van-cell title="社团名称">{{ detailData.name }}</van-cell>
<van-cell title="成立时间">{{ detailData.foundtime }}</van-cell>
<van-cell title="报名联系人">{{ detailData.fzrname }}</van-cell>
<van-cell title="所属单位">{{ detailData.fzr_unit_name }}</van-cell>
<van-cell title="联系人电话">{{ detailData.concatpersonmobile }}</van-cell>
<van-cell title="联系人邮箱">{{ detailData.concatpersonemail }}</van-cell>
<van-cell title="会费标准">{{ detailData.dues_standard }}</van-cell>
<van-cell title="当前人数">{{ detailData.cynum }}</van-cell>
<van-cell title="QQ群二维码" @click="showCode('QQ')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
<van-cell title="微信群二维码" @click="showCode('weChat')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
</van-cell-group>
</van-tab>
<van-tab class="info_tab" v-if="viewType === 'join'" title="个人信息">
<van-form @submit="needJoin" ref="form" :show-error-message="false">
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
基础信息
</div>
<div class="van-card-body">
<van-field readonly v-model="formData.username" name="username" required
label="姓名" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.sex" name="sex" required
label="性别" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.loginname" name="loginname" required
label="工号" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.unitName" name="unitName" required
label="工作部门" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.mobile" name="mobile" required
label="电话" placeholder="请填写电话" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.QQNumber" name="QQNumber" required type="digit"
label="QQ" placeholder="请填写QQ" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.hobby" name="hobby" required
placeholder="请填写爱好" label="爱好" :rules="[{ required: true }]"></van-field>
<div v-if="viewType === 'view'" class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
基础信息
</div>
<div class="van-card-body">
<van-cell title="社团名称">{{ detailData.name }}</van-cell>
<van-cell title="成立时间">{{ detailData.foundtime }}</van-cell>
<van-cell title="报名联系人">{{ detailData.fzrname }}</van-cell>
<van-cell title="所属单位">{{ detailData.fzr_unit_name }}</van-cell>
<van-cell title="联系人电话">{{ detailData.concatpersonmobile }}</van-cell>
<van-cell title="联系人邮箱">{{ detailData.concatpersonemail }}</van-cell>
<van-cell title="会费标准">{{ detailData.dues_standard }}</van-cell>
<van-cell title="当前人数">{{ detailData.cynum }}</van-cell>
<van-cell title="QQ群二维码" @click="showCode('QQ')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
<van-cell title="微信群二维码" @click="showCode('weChat')">
<span style="cursor: pointer; color: #236eb4">点击查看</span>
</van-cell>
</div>
</div>
<van-field v-model="formData.sickness" name="sickness" required @click="sicknessVisible = true" is-link
placeholder="请选择是否患有运动限制类疾病" label="是否患有运动限制类疾病" :rules="[{ required: true }]"></van-field>
</div>
</div>
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
紧急联系人(建议家人)信息
</div>
<div class="van-card-body">
<van-field v-model="formData.familyUserName" name="familyUserName" required
placeholder="请填写紧急联系人姓名" label="姓名" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.familyRelation" name="familyRelation" required
placeholder="请填写紧急联系人关系" label="与申请者关系" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.familyMobile" name="familyMobile" required type="tel"
placeholder="请填写紧急联系人电话" label="联系电话" :rules="[{ required: true }]"></van-field>
</div>
</div>
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
选填项
</div>
<div class="van-card-body">
<van-field v-model="formData.project" name="project"
rows="1"
autosize
type="textarea"
placeholder="请填写擅长项目" label="擅长项目"></van-field>
<van-form v-if="viewType === 'join'" @submit="needJoin" ref="form" :show-error-message="false">
<van-field v-model="formData.selfSkill" name="selfSkill" @click="selfSkillVisible = true" is-link
placeholder="请选择个人技能水平" label="个人技能水平"></van-field>
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
基础信息
</div>
<div class="van-card-body">
<van-field readonly v-model="formData.username" name="username" required
label="姓名" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.sex" name="sex" required
label="性别" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.loginname" name="loginname" required
label="工号" :rules="[{ required: true }]"></van-field>
<van-field readonly v-model="formData.unitName" name="unitName" required
label="工作部门" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.mobile" name="mobile" required
label="电话" placeholder="请填写电话" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.QQNumber" name="QQNumber" required type="digit"
label="QQ" placeholder="请填写QQ" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.hobby" name="hobby" required
placeholder="请填写爱好" label="爱好" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.playRole" name="playRole" @click="playRoleVisible = true" is-link
placeholder="请选择期望在协会中扮演的角色" label="期望在协会中扮演的角色"></van-field>
<van-field class="more_text" v-model="formData.sickness" name="sickness" required @click="sicknessVisible = true"
placeholder="请选择是否患有运动限制类疾病"
label="是否患有运动限制类疾病"
readonly
:rules="[{ required: true }]"></van-field>
</div>
</div>
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
紧急联系人(建议家人)信息
</div>
<div class="van-card-body">
<van-field v-model="formData.familyUserName" name="familyUserName" required
placeholder="请填写紧急联系人姓名" label="姓名" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.familyRelation" name="familyRelation" required
placeholder="请填写紧急联系人关系" label="与申请者关系" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.familyMobile" name="familyMobile" required type="tel"
placeholder="请填写紧急联系人电话" label="联系电话" :rules="[{ required: true }]"></van-field>
</div>
</div>
<div class="van-doc-card" style="margin-bottom: 16px; box-shadow: 0 0 16px 0 #ebedf0; margin-top: 10px">
<div></div>
<div class="van-card-header">
选填项
</div>
<div class="van-card-body">
<van-field v-model="formData.project" name="project"
rows="1"
autosize
type="textarea"
placeholder="请填写擅长项目" label="擅长项目"></van-field>
<van-field v-model="formData.provideServices" name="provideServices" @click="provideServicesVisible = true" is-link
placeholder="请选择是否愿意为协会提供志愿服务" label="是否愿意为协会提供志愿服务"></van-field>
<van-field v-model="formData.selfSkill" name="selfSkill" @click="selfSkillVisible = true"
readonly placeholder="请选择个人技能水平" label="个人技能水平"></van-field>
<van-field v-model="formData.joinManageWork" name="joinManageWork" @click="joinManageWorkVisible = true" is-link
placeholder="请选择是否愿意参与协会的管理工作" label="是否愿意参与协会的管理工作"></van-field>
<van-field v-model="formData.playRole" name="playRole" @click="playRoleVisible = true" class="more_text"
readonly placeholder="请选择期望在协会中扮演的角色" label="期望在协会中扮演的角色"></van-field>
<van-field v-model="formData.provideServices" name="provideServices" @click="provideServicesVisible = true" class="more_text"
readonly placeholder="请选择是否愿意为协会提供志愿服务" label="是否愿意为协会提供志愿服务"></van-field>
<van-field v-model="formData.joinManageWork" name="joinManageWork" @click="joinManageWorkVisible = true" class="more_text"
readonly placeholder="请选择是否愿意参与协会的管理工作" label="是否愿意参与协会的管理工作"></van-field>
<van-field v-model="formData.giveHelp" name="giveHelp" @click="giveHelpVisible = true" class="more_text"
readonly placeholder="请选择是否愿意为协会的活动提供赞助或资源支持" label="是否愿意为协会的活动提供赞助或资源支持"></van-field>
</div>
</div>
<div class="footer">
<van-button class="join join_submit" native-type="submit">申请加入</van-button>
</div>
</van-form>
<van-field v-model="formData.giveHelp" name="giveHelp" @click="giveHelpVisible = true" is-link
placeholder="请选择是否愿意为协会的活动提供赞助或资源支持" label="是否愿意为协会的活动提供赞助或资源支持"></van-field>
</div>
</div>
<div class="footer">
<van-button class="join join_submit" native-type="submit">申请加入</van-button>
</div>
</van-form>
</van-tab>
</van-tabs>
</van-popup>
<van-popup position="bottom" round v-model="sicknessVisible">
@@ -394,7 +411,6 @@ layout("/mobile/platform.html"){
data() {
return {
showPicker: false,
infoActive: 0,
clickRow: {},
typeOptions: [],
clubType: [{text: '未加入', value: false}, {text: '已加入', value: true}],
@@ -441,7 +457,6 @@ layout("/mobile/platform.html"){
},
openInfo(row, type) {
this.viewType = type
this.infoActive = type === 'view' ? 0 : 1
if(type === 'join') {
this.formData = {
username: "${@shiro.getPrincipalProperty('username')}",