会员
This commit is contained in:
+10
@@ -2,6 +2,7 @@ package com.budwk.app.zhgh.staffmanage.member.controller.apply;
|
|||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
import cn.hutool.core.lang.Dict;
|
import cn.hutool.core.lang.Dict;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.annotation.SLog;
|
import com.budwk.app.base.annotation.SLog;
|
||||||
import com.budwk.app.base.constant.RoleConstant;
|
import com.budwk.app.base.constant.RoleConstant;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
@@ -72,6 +73,9 @@ public class MemberApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员入会申请", msg = "保存申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员入会申请", msg = "保存申请,申请人: ${args[0].username}")
|
||||||
public Result save(@Param("data") MemberApplyRecord memberApplyRecord) {
|
public Result save(@Param("data") MemberApplyRecord memberApplyRecord) {
|
||||||
|
if (StrUtil.isBlank(memberApplyRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "apply");
|
||||||
|
}
|
||||||
dao.insertOrUpdate(memberApplyRecord);
|
dao.insertOrUpdate(memberApplyRecord);
|
||||||
return Result.success();
|
return Result.success();
|
||||||
}
|
}
|
||||||
@@ -83,6 +87,9 @@ public class MemberApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员入会申请", msg = "提交申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员入会申请", msg = "提交申请,申请人: ${args[0].username}")
|
||||||
public Result submit(@Param("data") MemberApplyRecord memberApplyRecord){
|
public Result submit(@Param("data") MemberApplyRecord memberApplyRecord){
|
||||||
|
if (StrUtil.isBlank(memberApplyRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "apply");
|
||||||
|
}
|
||||||
// 开启流程实例
|
// 开启流程实例
|
||||||
Dict args = Dict.create();
|
Dict args = Dict.create();
|
||||||
// 设置流程变量
|
// 设置流程变量
|
||||||
@@ -119,6 +126,9 @@ public class MemberApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员入会申请", msg = "重新提交申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员入会申请", msg = "重新提交申请,申请人: ${args[0].username}")
|
||||||
public Result submitAgain(@Param("data") MemberApplyRecord memberApplyRecord, @Param("taskId") Long taskId) {
|
public Result submitAgain(@Param("data") MemberApplyRecord memberApplyRecord, @Param("taskId") Long taskId) {
|
||||||
|
if (StrUtil.isBlank(memberApplyRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "apply");
|
||||||
|
}
|
||||||
Dict dict = Dict.create();
|
Dict dict = Dict.create();
|
||||||
// 设置流程变量
|
// 设置流程变量
|
||||||
if ("HMC".equals(Globals.SchoolCode)) {
|
if ("HMC".equals(Globals.SchoolCode)) {
|
||||||
|
|||||||
+9
@@ -75,6 +75,9 @@ public class MemberChangeApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员变更申请", msg = "保存申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员变更申请", msg = "保存申请,申请人: ${args[0].username}")
|
||||||
public Result save(@Param("data") MemberChangeRecord memberChangeRecord) {
|
public Result save(@Param("data") MemberChangeRecord memberChangeRecord) {
|
||||||
|
if (StrUtil.isBlank(memberChangeRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "change");
|
||||||
|
}
|
||||||
// 校验是否有变更
|
// 校验是否有变更
|
||||||
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
||||||
dao.insertOrUpdate(memberChangeRecord);
|
dao.insertOrUpdate(memberChangeRecord);
|
||||||
@@ -88,6 +91,9 @@ public class MemberChangeApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员变更申请", msg = "提交申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员变更申请", msg = "提交申请,申请人: ${args[0].username}")
|
||||||
public Result submit(@Param("data") MemberChangeRecord memberChangeRecord){
|
public Result submit(@Param("data") MemberChangeRecord memberChangeRecord){
|
||||||
|
if (StrUtil.isBlank(memberChangeRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "change");
|
||||||
|
}
|
||||||
// 校验是否有变更
|
// 校验是否有变更
|
||||||
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
||||||
dao.insertOrUpdate(memberChangeRecord);
|
dao.insertOrUpdate(memberChangeRecord);
|
||||||
@@ -118,6 +124,9 @@ public class MemberChangeApplyController {
|
|||||||
@SaCheckPermission("member.apply.submit")
|
@SaCheckPermission("member.apply.submit")
|
||||||
@SLog(tag = "会员变更申请", msg = "重新提交申请,申请人: ${args[0].username}")
|
@SLog(tag = "会员变更申请", msg = "重新提交申请,申请人: ${args[0].username}")
|
||||||
public Result submitAgain(@Param("data") MemberChangeRecord memberChangeRecord, @Param("taskId") Long taskId) {
|
public Result submitAgain(@Param("data") MemberChangeRecord memberChangeRecord, @Param("taskId") Long taskId) {
|
||||||
|
if (StrUtil.isBlank(memberChangeRecord.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(null, "change");
|
||||||
|
}
|
||||||
// 校验是否有变更
|
// 校验是否有变更
|
||||||
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
memberCommonService.validateChangeAndSetBasicData(memberChangeRecord);
|
||||||
dao.insertOrUpdate(memberChangeRecord);
|
dao.insertOrUpdate(memberChangeRecord);
|
||||||
|
|||||||
+6
@@ -5,6 +5,7 @@ import cn.dev33.satoken.annotation.SaMode;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.lang.Dict;
|
import cn.hutool.core.lang.Dict;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.annotation.RepeatSubmit;
|
import com.budwk.app.base.annotation.RepeatSubmit;
|
||||||
import com.budwk.app.base.annotation.SLog;
|
import com.budwk.app.base.annotation.SLog;
|
||||||
import com.budwk.app.base.constant.BpmProcessConstant;
|
import com.budwk.app.base.constant.BpmProcessConstant;
|
||||||
@@ -100,6 +101,11 @@ public class MemberChangeManageController {
|
|||||||
if (Lang.isEmpty(record)) {
|
if (Lang.isEmpty(record)) {
|
||||||
return Result.error("未获取到异动数据");
|
return Result.error("未获取到异动数据");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (StrUtil.isBlank(record.getId())) {
|
||||||
|
memberCommonService.validateApplyOrChangeIsDoing(record.getUserId(), "change");
|
||||||
|
}
|
||||||
|
|
||||||
boolean schoolRoleBool = AuthUtil.hasRoleOr(RoleConstant.SCHOOL_UNION_CHAIRMAN.name(), RoleConstant.SCHOOL_UNION_MEMBER_ADMIN.name(), RoleConstant.SYSADMIN.name());
|
boolean schoolRoleBool = AuthUtil.hasRoleOr(RoleConstant.SCHOOL_UNION_CHAIRMAN.name(), RoleConstant.SCHOOL_UNION_MEMBER_ADMIN.name(), RoleConstant.SYSADMIN.name());
|
||||||
boolean branchRoleBool = AuthUtil.hasRoleOr(RoleConstant.BRANCH_UNION_CHAIRMAN.name(), RoleConstant.BRANCH_UNION_OPERATOR.name());
|
boolean branchRoleBool = AuthUtil.hasRoleOr(RoleConstant.BRANCH_UNION_CHAIRMAN.name(), RoleConstant.BRANCH_UNION_OPERATOR.name());
|
||||||
boolean groupRoleBool = AuthUtil.hasRole(RoleConstant.BRANCH_UNION_GROUP_LEADER.name());
|
boolean groupRoleBool = AuthUtil.hasRole(RoleConstant.BRANCH_UNION_GROUP_LEADER.name());
|
||||||
|
|||||||
@@ -107,4 +107,12 @@ public interface MemberCommonService extends BaseService<Sys_user> {
|
|||||||
* @param record
|
* @param record
|
||||||
*/
|
*/
|
||||||
void validateChangeAndSetBasicData(MemberChangeRecord record, MemberChangeOrigin origin);
|
void validateChangeAndSetBasicData(MemberChangeRecord record, MemberChangeOrigin origin);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验申请和变更是否正在进行中
|
||||||
|
* @param userId 用户id
|
||||||
|
* @param type 类型: apply or change
|
||||||
|
*/
|
||||||
|
void validateApplyOrChangeIsDoing(String userId, String type);
|
||||||
}
|
}
|
||||||
|
|||||||
+35
@@ -10,6 +10,9 @@ import com.budwk.app.base.constant.RoleConstant;
|
|||||||
import com.budwk.app.base.exception.BaseException;
|
import com.budwk.app.base.exception.BaseException;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
import com.budwk.app.base.service.impl.BaseServiceImpl;
|
||||||
|
import com.budwk.app.flow.engine.FlowEngine;
|
||||||
|
import com.budwk.app.flow.entity.ProcessInstance;
|
||||||
|
import com.budwk.app.flow.enums.ProcessTaskStateEnum;
|
||||||
import com.budwk.app.sys.models.*;
|
import com.budwk.app.sys.models.*;
|
||||||
import com.budwk.app.sys.services.SysDictService;
|
import com.budwk.app.sys.services.SysDictService;
|
||||||
import com.budwk.app.sys.services.SysRoleService;
|
import com.budwk.app.sys.services.SysRoleService;
|
||||||
@@ -508,6 +511,38 @@ public class MemberManageServiceImpl extends BaseServiceImpl<Sys_user> implement
|
|||||||
record.setApplyDateTime(DateUtil.date());
|
record.setApplyDateTime(DateUtil.date());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 验证申请或变更是否正在进行
|
||||||
|
* @param userId 用户id
|
||||||
|
* @param type 类型: apply or change
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void validateApplyOrChangeIsDoing(String userId, String type) {
|
||||||
|
String businessNo = "";
|
||||||
|
|
||||||
|
Cnd cnd = Cnd.NEW();
|
||||||
|
cnd.and("userId", "=", StrUtil.isNotBlank(userId) ? userId : SecurityUtil.getUserId());
|
||||||
|
cnd.desc("applyDateTime");
|
||||||
|
if ("apply".equals(type)) {
|
||||||
|
// 申请
|
||||||
|
MemberApplyRecord apply = dao().fetch(MemberApplyRecord.class, cnd);
|
||||||
|
businessNo = apply.getId();
|
||||||
|
} else {
|
||||||
|
// 变更
|
||||||
|
MemberChangeRecord change = dao().fetch(MemberChangeRecord.class, cnd);
|
||||||
|
businessNo = change.getId();
|
||||||
|
}
|
||||||
|
|
||||||
|
int count = dao().count(ProcessInstance.class, Cnd.where("businessNo", "=", businessNo)
|
||||||
|
.and(ProcessInstance::getState, "=", ProcessTaskStateEnum.DOING.getCode()));
|
||||||
|
if (count > 0) {
|
||||||
|
throw new BaseException("您有%s流程还在进行中,请等待流程结束后再次操作".formatted("apply".equals(type) ? "申请" : "变更"));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private String booleanVerification(Object value) {
|
private String booleanVerification(Object value) {
|
||||||
// 检查是否为null或空字符串
|
// 检查是否为null或空字符串
|
||||||
if (ObjectUtil.isAllEmpty(value, "")) {
|
if (ObjectUtil.isAllEmpty(value, "")) {
|
||||||
|
|||||||
@@ -106,7 +106,7 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
.content-left .card .chart-container {
|
.content-left .card .chart-container {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
min-height: 200px;
|
/*min-height: 200px;*/
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 右侧表格样式 */
|
/* 右侧表格样式 */
|
||||||
|
|||||||
Reference in New Issue
Block a user