This commit is contained in:
@jyuhsin
2026-01-22 17:32:06 +08:00
parent c50bcbf869
commit 6a07605b39
27 changed files with 515 additions and 41 deletions
@@ -195,7 +195,10 @@ layout("/layouts/platform_h5.html"){
title: "提示",
message: "您确定要提交申请吗?"
}).then(() => {
this.$axios.post("/platform/club/join/apply/submit", this.formData).then(res => {
this.$axios.post("/platform/club/join/apply/submit", {
data: JSON.stringify(this.formData),
mode: true
}).then(res => {
if (res.code === 0) {
this.$toast(res.msg)
this.$pjaxReplace("/platform/club/join/mine/h5")
@@ -3,7 +3,13 @@ layout("/layouts/platform_h5.html"){
#-->
<style scoped>
.payed-field .van-field__control--custom {
display: block;
}
.payed-field .label{
color: rgb(153, 153, 153);
font-size: 13px;
}
</style>
<div id="app">
@@ -20,6 +26,8 @@ layout("/layouts/platform_h5.html"){
></van-search>
<van-dropdown-menu :close-on-click-outside="false" :close-on-click-overlay="false">
<year-van-dropdown-item :num="5" @change="doSearch" v-model="pageForm.year"></year-van-dropdown-item>
<van-dropdown-item v-model="pageForm.mode" :options="modeOptions" :multiple="false"
@change="doSearch"></van-dropdown-item>
<van-dropdown-item v-model="pageForm.unionId" :options="unionOptions" :multiple="false"
@change="doSearch"></van-dropdown-item>
</van-dropdown-menu>
@@ -58,6 +66,26 @@ layout("/layouts/platform_h5.html"){
<div v-if="showApprovalForm">
<div class="process-title">{{formData.taskName}}</div>
<van-form ref="formRef">
<van-field
v-if="formData.mode === true"
v-model="formData.tf_payed"
name="tf_payed"
label="缴费状态"
placeholder="请选择缴费状态"
:rules="[{ required: true, message: '请选择缴费状态' }]"
required
class="payed-field"
>
<template #input>
<div class="label">(说明:请确认{{ formData.userName }}当年是否缴费)</div>
<div>
<van-radio-group v-model="formData.tf_payed" direction="horizontal">
<van-radio name="0">未缴费</van-radio>
<van-radio name="1">已缴费</van-radio>
</van-radio-group>
</div>
</template>
</van-field>
<van-field
v-model="formData.tf_opinion"
name="tf_opinion"
@@ -98,10 +126,12 @@ layout("/layouts/platform_h5.html"){
approval: false,
year: new Date().getFullYear(),
unionId: null,
mode: null,
},
unionOptions: [],
formData: {},
showApprovalForm: false
showApprovalForm: false,
modeOptions: [{text: "全部类型", value: null}, {text: "申请加入", value: true}, {text: "申请退出", value: false}],
}
},
methods: {
@@ -127,7 +157,10 @@ layout("/layouts/platform_h5.html"){
this.$refs.infoRef.onOpen(row)
this.formData = {
processTaskId: row.taskId,
taskName: row.curTaskName
taskName: row.curTaskName,
tf_payed: 0,
userName: row.userName,
mode: row.mode
}
},
async handleTaskAction(val) {
@@ -24,15 +24,17 @@ const clubUserJoin = {
<van-cell class="direction-column-cell" title="文化、体育方面的活动经历、获奖情况">
{{ viewData.awardsExperience || '暂无' }}
</van-cell>
<van-cell class="direction-column-cell" title="照片">
<van-cell class="direction-column-cell" title="照片">
<template slot="default">
<van-image :src="viewData.avatar"></van-image>
<van-image v-if="viewData.avatar && viewData.avatar !== '[]'" :src="viewData.avatar"></van-image>
<span v-else>暂无</span>
</template>
</van-cell>
<van-cell title="签字" >
<van-image :src="viewData.signature"
v-if="viewData.signature"
class="signature-image"></van-image>
<span v-else>暂无</span>
</van-cell>
</van-cell-group>
<template v-for="task in doneTasks">
@@ -23,7 +23,7 @@ layout("/layouts/platform_h5.html"){
<table-column label="工号">{{row.loginName}}</table-column>
<table-column label="申请模式">{{row.mode ? '加入' : '退出'}}</table-column>
<table-column label="申请时间">{{row.applyDate}}</table-column>
<table-column label="当前节点">{{row.taskName}}</table-column>
<table-column label="当前节点">{{row.curTaskName}}</table-column>
</template>
<template #actions="{index,row}">
<div class="action-btn" @click="onView(row)">
@@ -31,10 +31,15 @@ layout("/layouts/platform_h5.html"){
<span>查看</span>
</div>
<div class="action-btn" @click="onEdit(row)"
v-if="row.taskKey === 'startTask' || !row.instanceId">
v-if="(row.taskKey === 'startTask' || !row.instanceId) && row.mode === true">
<i class="fa fa-edit"></i>
<span>编辑</span>
</div>
<div class="action-btn" @click="exitSubmitAgain(row)"
v-if="(row.taskKey === 'startTask' || !row.instanceId) && row.mode === false">
<i class="fa fa-edit"></i>
<span>提交</span>
</div>
<div class="action-btn delete" @click="onRevoke(row)"
v-if="row.canRevoke">
<i class="fa fa-undo"></i>
@@ -70,6 +75,23 @@ layout("/layouts/platform_h5.html"){
}
},
methods: {
exitSubmitAgain(row) {
this.$dialog.confirm({
title: "提示",
message: "您确定要提交申请吗?"
}).then(async () => {
const res = await this.$axios.post("/platform/club/join/apply/info", {id: row.id})
this.$axios.post('/platform/club/join/apply/submitAgain', {
data: JSON.stringify(res.data),
taskId: row.startTaskId,
}).then(res => {
if (res.code === 0) {
this.$toast(res.msg)
this.doSearch()
}
})
})
},
onRevoke(row) {
this.$dialog.confirm({
title: "提示",
@@ -0,0 +1,95 @@
<!--#
layout("/layouts/platform_h5.html"){
#-->
<style scoped>
.van-cell__value {
min-width: 70%;
}
</style>
<div id="app">
<van-nav-bar title="我的协会" left-text="返回" left-arrow @click-left="historyBack" fixed placeholder></van-nav-bar>
<van-sticky offset-top="46px">
<van-search
v-model="pageForm.clubName"
:show-action="false"
:reverse-color="false"
input-align="left"
placeholder="请输入协会名称"
@search="doSearch"
></van-search>
</van-sticky>
<table-list api="/platform/club/join/mine/club/pageData" :page_form.sync="pageForm" ref="tableListRef" title="clubName" @ready="doSearch">
<template v-slot="{index,row}">
<table-column label="协会编码">{{row.clubCode}}</table-column>
<table-column label="成立时间">{{row.foundTime}}</table-column>
<table-column label="会长">{{row.clubLeader}}</table-column>
<table-column label="秘书长">{{row.clubSecretary}}</table-column>
<table-column label="当前人数">{{row.currentPeopleNum}}</table-column>
</template>
<template #actions="{index,row}">
<div class="action-btn" @click="onView(row)">
<i class="fa fa-eye"></i>
<span>查看</span>
</div>
<div class="action-btn delete" @click="onExit(row)">
<i class="fa fa-undo"></i>
<span>申请退会</span>
</div>
</template>
</table-list>
</div>
<script nonce="${cspNonce!}">
new Vue({
el: "#app",
store,
components: {
},
data() {
return {
pageForm: {
pageNumber: 1,
pageSize: 10,
totalCount: 0,
},
}
},
methods: {
onExit(row) {
this.$dialog.confirm({
title: "提示",
message: "您确定要申请退出" + row.clubName + "吗?"
}).then(() => {
this.$axios.post('/platform/club/join/apply/submit', {
data: JSON.stringify(row),
mode: false,
}).then(res => {
if (res.code === 0) {
this.$toast(res.msg)
this.$pjaxReplace("/platform/club/join/mine/h5")
}
})
})
},
onView(row) {
this.$refs.infoRef.onOpen(row)
},
doSearch() {
this.$nextTick(() => {
this.pageForm.pageNumber = 1
this.pageForm.totalCount = 0
this.$refs.tableListRef.doSearch()
})
}
},
})
</script>
<!--#
}
#-->