This commit is contained in:
@jyuhsin
2025-07-02 17:43:22 +08:00
parent ad0b8c558d
commit 9ba46d1908
7 changed files with 57 additions and 13 deletions
@@ -210,7 +210,7 @@ public class HonorBasicSettingsController {
Sql sql = Sqls.create("""
SELECT
u.loginname,
u.username,
GROUP_CONCAT(u.username) as username,
(select count(1) from `vw_user` where unionId = @unionId) unionPeoNum,
(select count(1) from `vw_user` where member='1' and unionId = @unionId) memberNumber
FROM
@@ -1,18 +1,26 @@
package com.budwk.app.zhgh.dayofficework.honor.controller;
import cn.dev33.satoken.annotation.SaCheckLogin;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.util.StrUtil;
import com.budwk.app.base.page.Pagination;
import com.budwk.app.base.result.Result;
import com.budwk.app.sys.models.Sys_union;
import com.budwk.app.sys.services.SysUnionService;
import com.budwk.app.sys.services.SysUserService;
import com.budwk.app.web.commons.auth.utils.SecurityUtil;
import com.budwk.app.zhgh.dayofficework.honor.models.Honor;
import com.budwk.app.zhgh.dayofficework.honor.service.HonorCommonService;
import org.nutz.dao.Cnd;
import org.nutz.dao.Sqls;
import org.nutz.dao.sql.Sql;
import org.nutz.dao.util.cri.SqlExpressionGroup;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Ok;
import javax.validation.Valid;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@@ -58,4 +66,33 @@ public class HonorRegistrationController {
Honor fetch = honorViService.fetch(id);
return Result.success().addData(fetch);
}
@At
@SaCheckLogin
public Result listBeComfortedUser(@Valid String keyWord) {
Sql sql = Sqls.create("""
SELECT
t1.id,
t1.username AS userName,
t1.loginname AS loginName,
t1.unitName,
t1.birthday,
t1.sex
FROM
`vw_user` t1
$condition
""");
Cnd cnd = Cnd.NEW();
if(StrUtil.isNotBlank(keyWord)){
SqlExpressionGroup seg = new SqlExpressionGroup();
seg.orLike("t1.id",keyWord);
seg.orLike("t1.loginname",keyWord);
seg.orLike("t1.username",keyWord);
cnd.and(seg);
}
cnd.and("t1.unionId","=", SecurityUtil.getUnionId());
sql.setCondition(cnd);
Pagination pagination = sysUserService.listPageMap(1, 50, sql);
return Result.success(pagination.getList());
}
}
@@ -16,7 +16,6 @@
:clickable="['SELECT'].includes(column.columnFormType)"
:label="column.columnName"
:name="column.columnCode"
:error="errors.has(column.columnCode)"
:type="['INT'].includes(column.columnType) ? 'digit' : ''"
:placeholder="(['SELECT'].includes(column.columnFormType) ? '请选择' : '请填写') + column.columnName"
:readonly="['SELECT'].includes(column.columnFormType)"
@@ -206,7 +206,7 @@
<el-table-column label="校区" prop="campus">
<template v-slot="{row}">
<el-select size="small" v-model="row.campus" style="width: 100%">
<el-option :label="item.name" :value="item.code" :key="item.code" v-for="item in campusList"></el-option>
<el-option :label="item.name" :value="item.name" :key="item.code" v-for="item in campusList"></el-option>
</el-select>
</template>
</el-table-column>
@@ -256,6 +256,7 @@ layout("/layouts/platform.html"){
adjust(o) {
this.userInfo = o
this.afterAdjustCourse = ""
this.getCourse(this.pageForm.activityId)
this.adjustDialogVisible = true
},
deleteSignUser(o) {
@@ -34,7 +34,7 @@ layout("/layouts/platform.html"){
v-model="formData.userId"
@change="userChange"
ref="beComfortedUserRef"
api="/platform/condolence/apply/listBeComfortedUser"
api="/platform/honor/registration/listBeComfortedUser"
api_input_key_name="keyWord"
:option_label_func="(item)=>{return item.userName + item.loginName + '(' + item.unitName + ')'}"
style="width: 100%"
@@ -62,7 +62,7 @@ layout("/layouts/platform.html"){
clearable
filterable
>
<el-option v-for="item in units" :label="item.name" :value="item.id"></el-option>
<el-option v-for="item in units" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -76,7 +76,7 @@ layout("/layouts/platform.html"){
clearable
filterable
>
<el-option v-for="item in unions" :label="item.name" :value="item.id"></el-option>
<el-option v-for="item in unions" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -146,7 +146,7 @@ layout("/layouts/platform.html"){
filterable
@change="searchUnionInfo(formData.unionId)"
>
<el-option v-for="item in unions" :label="item.name" :value="item.id"></el-option>
<el-option v-for="item in unions" :label="item.name" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
</el-col>
@@ -339,6 +339,14 @@ layout("/layouts/platform.html"){
const data = this.honorTypeList.find((v) => v.id === val)
if (data) {
this.$set(this.formData, "queryTypeCode", data.queryTypeCode)
if(data.queryTypeCode === 'HONOR_LIST') {
this.$set(this.formData, "unionId", this.$store.state.user.union ? this.$store.state.user.union.id : "")
if (this.formData.unionId) {
this.searchUnionInfo(this.formData.unionId)
}
} else {
this.$set(this.formData, "unionId", "")
}
}
},
async getHonorPrize(honorType) {
@@ -349,7 +357,6 @@ layout("/layouts/platform.html"){
this.$axios.post("/platform/honor/basic/settings/getHonorType").then((res) => {
if (res.code === 0) {
this.honorTypeList = res.data
console.log(this.honorTypeList)
}
})
},
@@ -401,14 +408,14 @@ layout("/layouts/platform.html"){
this.getHonorAwardType()
this.unions = await this.$businessTool.listUnion()
this.units = await this.$businessTool.listUnit()
this.$set(this.formData, "unionId", this.$store.state.user.union ? this.$store.state.user.union.id : "")
/*this.$set(this.formData, "unionId", this.$store.state.user.union ? this.$store.state.user.union.id : "")
if (this.formData.unionId) {
this.searchUnionInfo(this.formData.unionId)
}
if (this.honorTypeList && this.honorLevelList.length > 0) {
}*/
if (this.honorTypeList && this.honorTypeList.length > 0) {
this.formData = {
honorType: this.honorTypeList[0].id,
queryTypeCode: this.honorLevelList[0].queryTypeCode
queryTypeCode: this.honorTypeList[0].queryTypeCode
}
this.honorPrizeList = await this.getHonorPrize(this.formData.honorType)
}
@@ -325,7 +325,7 @@ layout("/layouts/platform_h5.html"){
<van-nav-bar @click-left="joinPopup = false" left-text="返回" fixed left-arrow placeholder title="活动报名"></van-nav-bar>
<div class="join_content">
<van-form @submit="joinSubmit" :show-error-message="false">
<div class="van-doc-card-two" style="margin: 36px 0 16px 0">
<div class="van-doc-card-two" style="margin: 0 0 16px 0">
<div></div>
<div class="van-card-header">基础信息</div>
<div class="van-card-body">