This commit is contained in:
@jyuhsin
2025-01-06 09:30:09 +08:00
parent a7ca527cd3
commit 0c5a0deb03
3 changed files with 57 additions and 20 deletions
@@ -210,11 +210,16 @@ public class ClubApplyInController {
@RequiresAuthentication
public Object getCount() {
int hasJoinCount = dao.count("sys_club", Cnd.NEW().and("isjs", "=", false)
.and("state", "=", ClubRegistAuditState.SCHOOL_PASS)
.and("id in (SELECT clubid from sys_club_user WHERE isNormal = true and userid = '" + ShiroUtil.getPrincipalProperty("id") + "') and 1", "=", 1));
.and(new Static("id in (SELECT clubid from sys_club_user WHERE isNormal = true and status in (1,3,5) and userid = '%s')".formatted(ShiroUtil.getUserId()))));
SqlExpressionGroup group = new SqlExpressionGroup();
group.and("state", "=", ClubRegistAuditState.SCHOOL_PASS);
group.or(new Static("id in (select clubid from sys_club_user where userid = '%s' and invite = true and status in (6, 7))"
.formatted(ShiroUtil.getPlatformUid())));
int noJoinCount = dao.count("sys_club", Cnd.NEW().and("isjs", "=", false)
.and("state", "=", ClubRegistAuditState.SCHOOL_PASS)
.and("id not in (SELECT clubid from sys_club_user WHERE isNormal = true and userid = '" + ShiroUtil.getPrincipalProperty("id") + "' and status not in (2, 4) ) and 1", "=", 1));
.and(group)
.and(new Static("id not in (SELECT clubid from sys_club_user WHERE isNormal = true and userid = '%s' and status not in (2, 4, 6, 7) )".formatted(ShiroUtil.getUserId()))));
return new NutMap().setv("hasJoinCount", hasJoinCount).setv("noJoinCount", noJoinCount);
}
@@ -317,8 +317,8 @@ layout("/mobile/platform.html"){
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.weChatNumber" name="weChatNumber" required
label="微信号" placeholder="请填写微信号" :rules="[{ required: true }]"></van-field>
<van-field v-model="formData.weChatNumber" name="weChatNumber"
label="微信号" placeholder="请填写微信号"></van-field>
<van-field v-model="formData.hobby" name="hobby" required
placeholder="请填写爱好" label="爱好" :rules="[{ required: true }]"></van-field>
<van-field class="more_text" v-model="formData.sickness" name="sickness" required @click="sicknessVisible = true"
@@ -163,23 +163,32 @@ layout("/layouts/platform.html"){
</template>
</el-table-column>
<el-table-column align="center" header-align="center" label="操作" width="350px">
<el-table-column align="center" header-align="center" label="操作" width="300px">
<template slot-scope="scope">
<el-button size="mini" type="primary" @click="openDetail(scope.row, 'view')">查看
</el-button>
<template v-if="scope.row.state > 800">
<el-button size="mini" type="primary" @click="openDetail(scope.row, 'view')">查看</el-button>
<el-button size="mini" type="primary" @click="openApply(scope.row)" v-if="activeName=='false'">申请</el-button>
<el-button size="mini" v-if="activeName=='true'&&scope.row.status==1" type="danger"
@click="doRevocation(scope.row.id)">
撤销申请
</el-button>
</template>
<template v-else>
<el-button size="mini" type="primary" @click="openDetail(scope.row, 'view')">查看</el-button>
<template v-if="scope.row.status == 7">
<el-button size="mini" type="danger" @click="rollbackInvite(scope.row)">撤回</el-button>
</template>
<template v-else>
<el-button size="mini" type="primary" v-if="activeName=='false'" @click="openApply(scope.row, 'view')">同意</el-button>
<el-button size="mini" type="primary" v-if="activeName=='false'" @click="inviteNotAgree(scope.row)">不同意</el-button>
</template>
</template>
<el-button size="mini" type="primary" @click="yearAudit(scope.row)" v-if="activeName=='true' && !scope.row.yearauditstatus && scope.row.status == 5">
年审
</el-button>
<el-button type="primary" size="mini" v-if="activeName=='true'" @click="doExportApply(scope.row)">导出申请表</el-button>
<!-- <el-button size="mini" v-if="activeName=='false'" type="primary"-->
<!-- @click="openDetail(scope.row, 'join')">-->
<!-- 申请加入-->
<!-- </el-button>-->
<el-button size="mini" type="primary" @click="openApply(scope.row)" v-if="activeName=='false'">申请</el-button>
<el-button size="mini" v-if="activeName=='true'&&scope.row.status==1" type="danger"
@click="doRevocation(scope.row.id)">
撤销申请
</el-button>
</template>
</el-table-column>
@@ -276,7 +285,6 @@ layout("/layouts/platform.html"){
</el-form-item>
</td>-->
<th>
<span style="color: red">*</span>
微信号
</th>
<td>
@@ -444,7 +452,7 @@ layout("/layouts/platform.html"){
unitName: [{required: true, message: '必填', trigger: ['blur', 'change']}],
mobile: [{required: true, message: '必填', trigger: ['blur', 'change']}],
// QQNumber: [{required: true, message: '必填', trigger: ['blur', 'change']}],
weChatNumber: [{required: true, message: '必填', trigger: ['blur', 'change']}],
//weChatNumber: [{required: true, message: '必填', trigger: ['blur', 'change']}],
sickness: [{required: true, message: '必填', trigger: ['blur', 'change']}],
familyUserName: [{required: true, message: '必填', trigger: ['blur', 'change']}],
familyRelation: [{required: true, message: '必填', trigger: ['blur', 'change']}],
@@ -471,6 +479,30 @@ layout("/layouts/platform.html"){
'club-regist-info': httpVueLoader('/components/club/clubRegistInfo.vue'),
},
methods: {
async rollbackInvite(o) {
const confirm = await this.$confirm('您确定要撤回吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
if (confirm === "confirm") {
const resp = await $.post('/platform/sys/club/sq/rollbackInvite', {clubId: o.id})
this.$message.success(resp.msg)
this.doSearch()
}
},
async inviteNotAgree(o) {
const confirm = await this.$confirm('您确定要不同意' + o.name + '的入会邀请吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
if (confirm === "confirm") {
const resp = await $.post('/platform/sys/club/sq/inviteNotAgree', {clubId: o.id})
this.$message.success(resp.msg)
this.doSearch()
}
},
async yearAudit(row) {
this.$confirm('您确定要提交今年的年审吗?', '提示', {
confirmButtonText: '确定',