first commit

This commit is contained in:
2026-09-08 20:09:15 +08:00
commit c7e76e98ab
1647 changed files with 210480 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-api</artifactId>
<version>3.6.1</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-api-member</artifactId>
<description>
ruoyi-api-member系统接口模块
</description>
<dependencies>
<!-- RuoYi Common Core-->
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
</dependency>
</dependencies>
</project>
@@ -0,0 +1,55 @@
package com.ruoyi.member.api.constant;
import org.nutz.lang.Lang;
import java.util.List;
/**
* 会员申请状态
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
public interface MemberApplyState {
/**
* 待院级工会审核
*/
int UNION = 10;
/**
* 院级工会审核不通过
*/
int UNION_FAIL = 15;
/**
* 待校工会审核
*/
int SCHOOL_UNION = 20;
/**
* 校工会审核不通过
*/
int SCHOOL_UNION_FAIL = 25;
/**
* 正式会员
*/
int NORMAL_MEMBER = 30;
/**
* 待审核状态
*/
List<Integer> READY_AUDIT_STATES = Lang.list(UNION, SCHOOL_UNION);
/**
* 成功状态
*/
List<Integer> AUDIT_PASS_STATES = Lang.list(NORMAL_MEMBER);
/**
* 拒绝状态
*/
List<Integer> AUDIT_REJECTED_STATES = Lang.list(UNION_FAIL, SCHOOL_UNION_FAIL);
}
@@ -0,0 +1,35 @@
package com.ruoyi.member.api.constant;
/**
* 会员变更申请状态
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
public interface MemberChangeApplyState {
/**
* 待院级工会审核
*/
int UNION = 50;
/**
* 院级工会审核不通过
*/
int UNION_FAIL = 55;
/**
* 待校工会审核
*/
int SCHOOL_UNION = 60;
/**
* 校工会审核不通过
*/
int SCHOOL_UNION_FAIL = 65;
/**
* 变更成功
*/
int SUCCESS = 70;
}
@@ -0,0 +1,24 @@
package com.ruoyi.member.api.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 会员变更来源
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
@Getter
@AllArgsConstructor
public enum MemberChangeOrigin {
PERSONAL(1, "个人"),
UNION(2, "分工会"),
UNION_GROUP(3, "工会小组"),
SCHOOL(4, "校工会"),
OTHER(5, "其他");
private final int code;
private final String description;
}
@@ -0,0 +1,20 @@
package com.ruoyi.member.api.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 会员变更记录模式
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
@Getter
@AllArgsConstructor
public enum MemberChangeRecordMode {
MEMBER(1, "会员"), WELFARE_MEMBER(2, "福利会员");
private int code;
private String description;
}
@@ -0,0 +1,53 @@
package com.ruoyi.member.api.constant;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
/**
* @version 1.0
* @Author zzr
* @nameMemberComparisonTemp
* @Date 2024/6/6 16:20
* @注释
*/
@Data
public class MemberComparisonTemp {
@Excel(name = "工号")
private String userName;
@Excel(name = "姓名")
private String nickName;
@Excel(name = "性别")
private String sex;
@Excel(name = "联系方式")
private String mobile;
@Excel(name = "身份证号")
private String idCard;
@Excel(name = "在职状态")
private String userState;
@Excel(name = "人员类型")
private String personType;
@Excel(name = "单位编号")
private String deptCode;
@Excel(name = "单位名称")
private String deptName;
@Excel(name = "科室编号")
private String threeUnitCode;
@Excel(name = "科室名称")
private String threeUnitName;
@Excel(name = "是否会员")
private String isMember;
private String errorInfo;
}
@@ -0,0 +1,25 @@
package com.ruoyi.member.api.constant;
import lombok.Getter;
/**
* 会员状态
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
@Getter
public enum MemberMode {
NONE(0, "非会员"), NORMAL(1, "正式会员");
private int code;
private String description;
MemberMode(int code, String description) {
this.code = code;
this.description = description;
}
}
@@ -0,0 +1,20 @@
package com.ruoyi.member.api.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 会员来源
*
* @author: 1V
* @date: 2021/1/25
* @since 1.0
*/
@Getter
@AllArgsConstructor
public enum MemberOrigin {
APPLY(1, "个人申请"), MAKE(2, "补录"), BATCH(3, "批量设置"), OTHER(4, "其他");
private int code;
private String description;
}
@@ -0,0 +1,29 @@
package com.ruoyi.member.api.constant;
import com.ruoyi.common.core.domain.PageForm;
import com.ruoyi.common.core.domain.TableColumn;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
@EqualsAndHashCode(callSuper = true)
@Data
public class MemberPageForm extends PageForm {
private Integer year;
private String unionId;
private Long unitId;
private String unionGroupId;
private Long threeUnitId;
private String sex;
private String personType;
private String userType;
private String userState;
private String campus;
private Integer isMember;
private List<String> personTypes;
private List<String> userStates;
private List<TableColumn> props;
private String retireTime;
}
@@ -0,0 +1,53 @@
package com.ruoyi.member.api.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author Aaron
*/
@Getter
@AllArgsConstructor
public enum MemberStatus {
//会员状态
NORMAL(1, "入会"),
TURN_IN(2, "转入"),
TURN_OUT(3, "转出"),
KEEP(4, "保留"),
WITHDRAWAL(5, "退会"),
RESTORE(6, "恢复"),
EXPELLED(7, "除名");
/**
* 编码
*/
private final int code;
/**
* 描述
*/
private final String description;
public String getDescByCode(int code) {
switch (code) {
case 1:
return NORMAL.getDescription();
case 2:
return TURN_IN.getDescription();
case 3:
return TURN_OUT.getDescription();
case 4:
return KEEP.getDescription();
case 5:
return WITHDRAWAL.getDescription();
case 6:
return RESTORE.getDescription();
case 7:
return EXPELLED.getDescription();
default:
return "";
}
}
}
@@ -0,0 +1,28 @@
package com.ruoyi.member.api.constant;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 变更类型
*
* @author: 1V
* @date: 2021/2/2
* @since 1.0
*/
@Getter
@AllArgsConstructor
public enum UserChangeType {
UNIT_CHANGE("1", "单位异动"),
NEW("2", "新增"),
RESIGN("3", "离职"),
DIE("4", "去世"),
RETIREMENT("5", "退休"),
EXPELLED("6", "开除"),
RESTORE("7", "入会"),
WITHDRAWAL("8", "退会");
private String code;
private String description;
}
@@ -0,0 +1,197 @@
package com.ruoyi.member.api.constant;
import com.ruoyi.common.core.constant.Roles;
import com.ruoyi.common.core.constant.UserConstants;
import com.ruoyi.common.core.utils.SpringUtils;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.member.api.domain.MemberApplyRecord;
import com.ruoyi.member.api.domain.MemberChangeRecord;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.api.domain.SysUserRole;
import org.nutz.dao.Chain;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* Todo
*
* @author: 1V
* @date: 2021/2/3
* @since 1.0
*/
public interface UserMode {
public static Dao dao = SpringUtils.getBean(Dao.class);
/**
* 添加角色
*
* @param userId
* @param roleId
*/
static void addRole(Long userId, Long roleId) {
SysUserRole sysUserRole = new SysUserRole();
sysUserRole.setRoleId(roleId);
sysUserRole.setUserId(userId);
dao.insert(sysUserRole);
}
/**
* 添加角色
*
* @param userIds
* @param roleId
*/
static void addRole(Long[] userIds, Long roleId) {
List<SysUserRole> userRoles = Arrays.stream(userIds).map(v -> {
SysUserRole sysUserRole = new SysUserRole();
sysUserRole.setRoleId(roleId);
sysUserRole.setUserId(v);
return sysUserRole;
}).collect(Collectors.toList());
dao.insert(userRoles);
}
/**
* 添加角色之前先删
*
* @param userId
* @param roleId
*/
static void addRoleAndFlush(Long userId, Long roleId) {
removeRole(userId, roleId);
addRole(userId, roleId);
}
/**
* 添加角色之前先删
*
* @param userIds
* @param roleId
*/
static void addRoleAndFlush(Long[] userIds, Long roleId) {
removeRole(userIds, roleId);
addRole(userIds, roleId);
}
/**
* 移除角色
*
* @param userId
* @param roleId
*/
static void removeRole(Long userId, Long roleId) {
dao.clear(SysUserRole.class, Cnd.where("userId", "=", userId).and("roleId", "=", roleId));
}
/**
* 移除角色
*
* @param userIds
* @param roleId
*/
static void removeRole(Long[] userIds, Long roleId) {
dao.clear(SysUserRole.class, Cnd.where("userId", "in", userIds).and("roleId", "=", roleId));
}
/**
* 初始化用户并持久化
*
* @param user
* @param <E>
* @return
*/
static <E extends SysUser> E initUserPush(E user) {
// SysUserService sysUserService = ioc.getByType(SysUserService.class);
return dao.insert(initUser(user));
// return null;
}
/**
* 初始化用户
*
* @param user
* @param <E>
* @return
*/
static <E extends SysUser> E initUser(E user) {
user.setPassword(SecurityUtils.encryptPassword(UserConstants.DEFAULT_PASSWORD));
user.setDelFlag("0");
user.setStatus("0");
user.setMember(0);
return user;
}
/**
* 添加普通用户的角色
*
* @param userid
*/
static void addPublicRole(Long userid) {
addRoleAndFlush(userid, Roles.COMMON);
// sysUserService.deleteCache(userid);
}
/**
* 删除一个用户
*
* @param userid
*/
static void removeUser(Long userid) {
removeMemberRole(userid);
dao.delete(SysUser.class, userid);
dao.clear(MemberApplyRecord.class, Cnd.where("userId", "=", userid));
dao.clear(MemberChangeRecord.class, Cnd.where("userId", "=", userid));
}
/**
* 添加会员角色
*
* @param userid
*/
static void addMemberRole(Long userid, Integer changeOriginCode) {
Chain chain = Chain.make("member", MemberMode.NORMAL.getCode()).add("memberJoinTime", new Date()).add("memberStatus", MemberStatus.NORMAL.getCode());
if (changeOriginCode != null) {
chain.add("memberOrigin", changeOriginCode);
}
dao.update(SysUser.class, chain, Cnd.where("userId", "=", userid));
addRoleAndFlush(userid, Roles.MEMBER);
}
/**
* 添加会员角色(多个)
*
* @param userIds
*/
static void addMemberRole(Long[] userIds) {
dao.update(SysUser.class, Chain.make("member", MemberMode.NORMAL.getCode()).add("memberJoinTime", new Date()).add("memberStatus", MemberStatus.NORMAL.getCode()).add("memberOrigin", MemberOrigin.BATCH.getCode()), Cnd.where("userId", "in", userIds));
addRoleAndFlush(userIds, Roles.MEMBER);
}
/**
* 删除会员角色
*
* @param userid
*/
static void removeMemberRole(Long userid) {
dao.update(SysUser.class, Chain.make("member", MemberMode.NONE.getCode()), Cnd.where("userId", "=", userid));
removeRole(userid, Roles.MEMBER);
}
/**
* 删除会员角色(多个)
*
* @param userIds
*/
static void removeMemberRole(Long[] userIds) {
dao.update(SysUser.class, Chain.make("member", MemberMode.NONE.getCode()), Cnd.where("userId", "in", userIds));
removeRole(userIds, Roles.MEMBER);
}
}
@@ -0,0 +1,21 @@
package com.ruoyi.member.api.constant;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
@Data
public class WelfareMemberTemp {
@Excel(name = "工号")
private String loginName;
@Excel(name = "姓名")
private String userName;
@Excel(name = "福利发放单位")
private String welfareUnitName;
@Excel(name = "福利缴费类型")
private String welfarePayType;
}
@@ -0,0 +1,147 @@
package com.ruoyi.member.api.domain;
import com.ruoyi.common.security.utils.SecurityUtils;
import lombok.Data;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.util.Date;
/**
* @ClassName Audit
* @Description TODO
* @Author zhaoxinyu
* @Date 2022/12/15 11:27
* @Version 1.0
*/
@Table("audit")
@Data
@Accessors(chain = true)
public class Audit {
@Column
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(uu32 = true)
private String id;
@Column
@Comment("审核人")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(els = {@EL("$me.uid()")})
private Long auditor;
@Column
@Comment("是否通过")
@ColDefine(type = ColType.BOOLEAN)
private Boolean auditPass;
@Column
@Comment("审核时间")
@Prev(els = {@EL("$me.nowDate()")})
private Date auditTime;
@Column
@Comment("审核意见")
@ColDefine(type = ColType.VARCHAR, width = 500)
private String auditOpinion;
@Column
@Comment("签字")
@ColDefine(type = ColType.TEXT)
private String auditSign;
@Column
@Comment("审核人姓名")
@ColDefine(type = ColType.VARCHAR, width = 50)
@PrevInsert(els = {@EL("$me.userName()")})
private String userName;
@Column
@Comment("审核人工号")
@ColDefine(type = ColType.VARCHAR, width = 50)
@PrevInsert(els = {@EL("$me.loginName()")})
private String loginName;
public Long uid() {
return SecurityUtils.getUserId();
}
public Date nowDate() {
return new Date();
}
public String userName() {
return SecurityUtils.getNickName();
}
public String loginName() {
return SecurityUtils.getUsername();
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Long getAuditor() {
return auditor;
}
public void setAuditor(Long auditor) {
this.auditor = auditor;
}
public Boolean getAuditPass() {
return auditPass;
}
public void setAuditPass(Boolean auditPass) {
this.auditPass = auditPass;
}
public Date getAuditTime() {
return auditTime;
}
public void setAuditTime(Date auditTime) {
this.auditTime = auditTime;
}
public String getAuditOpinion() {
return auditOpinion;
}
public void setAuditOpinion(String auditOpinion) {
this.auditOpinion = auditOpinion;
}
public String getAuditSign() {
return auditSign;
}
public void setAuditSign(String auditSign) {
this.auditSign = auditSign;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getLoginName() {
return loginName;
}
public void setLoginName(String loginName) {
this.loginName = loginName;
}
}
@@ -0,0 +1,47 @@
package com.ruoyi.member.api.domain;
import lombok.Data;
import org.nutz.dao.entity.annotation.*;
/**
* @ClassName AuditState
* @Description TODO
* @Author zhaoxinyu
* @Date 2022/12/15 11:43
* @Version 1.0
*/
@Table("audit_state")
@Data
public class AuditState {
@Column
@Id(
auto = false
)
@Comment("ID")
@ColDefine(
type = ColType.INT,
width = 8
)
private Integer stateId;
@Column
@Comment("状态名")
@ColDefine(
type = ColType.VARCHAR,
width = 50
)
private String stateName;
@Column
@Comment("强调色")
@ColDefine(
type = ColType.VARCHAR,
width = 20
)
private String stateColor;
@Column
@Comment("隶属(***模块)")
@ColDefine(
type = ColType.VARCHAR,
width = 50
)
private String module;
}
@@ -0,0 +1,77 @@
package com.ruoyi.member.api.domain;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.util.Date;
/***
* 会员申请表
* @description
* @author zhaoxinyu
* @date 2022/12/12 14:28
*/
@Table("member_apply_record")
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class MemberApplyRecord extends BaseEntity {
@Name
@PrevInsert(uu32 = true)
private String id;
@Column
@ColDefine(type = ColType.VARCHAR, width = 32)
@Comment("工会id")
private String unionId;
@Column
@ColDefine(customType = "bigint")
@Comment("用户id")
private Long userId;
@Column
@ColDefine(customType = "int")
@Comment("审核状态")
private Integer stateId;
@Column
@ColDefine(type = ColType.DATETIME)
@Comment("申请时间")
private Date applyTime;
/**
* @see
*/
@Column
@ColDefine(customType = "int")
@Comment("加入方式")
private Integer memberStates;
@Column
@Comment("分工会审核记录id")
@ColDefine(type = ColType.VARCHAR, width = 32)
public String unionAuditId;
@Column
@Comment("校工会审核记录id")
@ColDefine(type = ColType.VARCHAR, width = 32)
public String schoolAuditId;
@One(field = "unionAuditId")
public Audit unionAudit;
@One(field = "schoolAuditId")
public Audit schoolAudit;
@One(field = "stateId")
private AuditState auditState;
}
@@ -0,0 +1,169 @@
package com.ruoyi.member.api.domain;
import com.ruoyi.common.core.web.domain.BaseEntity;
import com.ruoyi.system.api.domain.SysDept;
import com.ruoyi.system.api.domain.SysUnion;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.util.Date;
@EqualsAndHashCode(callSuper = true)
@Data
@Accessors(chain = true)
@Table("member_change_record")
public class MemberChangeRecord extends BaseEntity {
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(uu32 = true)
private String id;
@Column
@Comment("变更类型")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String type;
@Column
@Comment("用户id")
@ColDefine(customType = "bigint")
private Long userId;
@Column
@Comment("原单位id")
@ColDefine(customType = "bigint")
private Long originUnitId;
@Column
@Comment("原工会id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String originUnionId;
@Column
@Comment("原三级单位id")
@ColDefine(customType = "bigint")
private Long originThreeUnitId;
@Column
@Comment("现单位id")
@ColDefine(customType = "bigint")
private Long currentUnitId;
@Column
@Comment("现三级单位id")
@ColDefine(customType = "bigint")
private Long currentThreeUnitId;
@Column
@Comment("现工会id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String currentUnionId;
@Column
@Comment("备注")
@ColDefine(type = ColType.VARCHAR, width = 500)
private String notes;
@Column
@Comment("申请时间")
@ColDefine(type = ColType.DATETIME)
private Date applyTime;
/**
* @see com.ruoyi.member.api.constant.MemberChangeOrigin
*/
@Column
@Comment("申请来源")
@ColDefine(type = ColType.INT, width = 8)
private Integer applyOrigin;
/**
* @see com.ruoyi.member.api.constant.MemberChangeRecordMode
*/
@Column
@Comment("记录模式")
@ColDefine(type = ColType.INT, width = 8)
private Integer recordMode;
@Column
@Comment("状态id")
@ColDefine(type = ColType.INT, width = 8)
private Integer stateId;
@Column
@Comment("分工会审核记录id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String unionAuditId;
@Column
@Comment("校工会审核记录id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String schoolAuditId;
@Column
@Comment("是否增加会员身份(true:增加 false:不增加)")
@ColDefine(type = ColType.BOOLEAN)
private Boolean insertMember;
@Column
@Comment("是否增加福利会员,针对新入职")
@ColDefine(type = ColType.BOOLEAN)
private Boolean updateWelfareMember;
@Column
@Comment("是否更新会员")
@ColDefine(type = ColType.BOOLEAN)
private Boolean updateMember;
@Column
@Comment("福利会员身份(true:取消 false:不取消);针对(退休、离职、退会、去世)")
@ColDefine(type = ColType.BOOLEAN)
private Boolean updateWelfare;
@Column
@Comment("在职状态")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String userState;
@Column
@Comment("人员类别")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String personType;
@Column
@Comment("退休时间")
@ColDefine(type = ColType.DATE)
private Date retireTime;
@Column
@Comment("任务id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String taskId;
@One(field = "unionAuditId")
private Audit unionAudit;
@One(field = "schoolAuditId")
private Audit schoolAudit;
@One(field = "stateId")
private AuditState auditState;
@One(field = "originUnitId")
private SysDept originUnit;
@One(field = "originUnionId")
private SysUnion originUnion;
@One(field = "currentUnitId")
private SysDept currentUnit;
@One(field = "currentUnionId")
private SysUnion currentUnion;
}
@@ -0,0 +1,59 @@
package com.ruoyi.member.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.util.Date;
/**
* 福利成员检查任务
*
* @author jug
* @date 2023/02/12
*/
@EqualsAndHashCode(callSuper = true)
@Data
@Accessors(chain = true)
@Table("member_check_task")
public class MemberCheckTask extends BaseEntity {
@Column
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(uu32 = true)
private String id;
@Column
@Comment("任务名称")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String taskName;
@Column
@Comment("年度")
@ColDefine(type = ColType.INT)
private Integer year;
@Column
@Comment("说明")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String description;
@Column
@Comment("开始时间")
@ColDefine(type = ColType.DATETIME)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@Column
@Comment("结束时间")
@ColDefine(type = ColType.DATETIME)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
}
@@ -0,0 +1,59 @@
package com.ruoyi.member.api.domain;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
/**
* 工会会员核对任务
*
* @author jug
* @date 2023/05/30
*/
@EqualsAndHashCode(callSuper = true)
@Data
@Accessors(chain = true)
@Table("member_check_union_task")
public class MemberCheckUnionTask extends BaseEntity {
@Column
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(uu32 = true)
private String id;
@Column
@Comment("任务ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String taskId;
@Column
@Comment("工会ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String unionId;
@Column
@Comment("工会名称")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unionName;
@Column
@Comment("工会编码")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unionCode;
@Column
@Comment("工会小组ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String unionGroupId;
@Column
@Comment("是否核对完成")
@ColDefine(type = ColType.BOOLEAN)
private Boolean isFinish;
}
@@ -0,0 +1,42 @@
package com.ruoyi.member.api.domain;
import com.ruoyi.system.api.domain.SysUser;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@Table("member_history")
public class MemberHistory extends SysUser {
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String id;
@Column
@Comment("年度")
@ColDefine(type = ColType.INT, width = 4)
private Integer year;
@Column(hump = true)
@Comment("用户id")
@ColDefine(customType = "bigint")
private Long userId;
@Comment("工会小组id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String unionGroupId;
@Comment("工会小组")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unionGroupName;
@Comment("工会小组编码")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unionGroupCode;
}
@@ -0,0 +1,85 @@
package com.ruoyi.member.api.domain;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.math.BigDecimal;
import java.util.Date;
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@Table("member_payment")
public class MemberPayMent extends BaseEntity {
@Name
@Comment("ID")
@ColDefine(type = ColType.VARCHAR, width = 32)
@PrevInsert(uu32 = true)
private String id;
@Column
@Comment("用户id")
@ColDefine(customType = "bigint")
private Long userId;
@Column
@Comment("姓名")
@ColDefine(type = ColType.VARCHAR, width = 20)
@Excel(name = "姓名", width = 20)
private String userName;
@Column
@Comment("工号")
@ColDefine(type = ColType.VARCHAR, width = 20)
@Excel(name = "工号", width = 20)
private String loginName;
@Column
@Comment("单位id")
@ColDefine(customType = "bigint")
private Long deptId;
@Column
@Comment("工会id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String unionId;
@Column
@Comment("会费金额(元)")
@ColDefine(customType = "DECIMAL")
@Excel(name = "会费金额(元)", width = 20)
private BigDecimal money;
@Column
@Comment("是否缴费")
@ColDefine(type = ColType.BOOLEAN)
@Excel(name = "是否缴费", width = 20, addressList = true, replace = {"是_true", "否_false"})
private Boolean isPay;
// @Excel(name = "是否缴费", width = 20, addressList = true, replace = {"是_0", "否_1"})
// private String isPayExcel;
@Column
@Comment("开始时间")
@ColDefine(type = ColType.DATE)
@Excel(name = "开始时间", width = 20, format = "yyyy-MM-dd")
private Date startDate;
@Column
@Comment("结束时间")
@ColDefine(type = ColType.DATE)
@Excel(name = "结束时间", width = 20, format = "yyyy-MM-dd")
private Date endDate;
/**
* 检验错误信息
*/
private String errMsg;
}
@@ -0,0 +1,19 @@
package com.ruoyi.member.api.domain;
import org.nutz.dao.entity.annotation.Id;
/**
* @ClassName MemberUser
* @Description TODO
* @Author zhaoxinyu
* @Date 2022/12/15 17:12
* @Version 1.0
*/
//@Table("member_user")
public class MemberUser {
@Id
private Long userId;
private String userName;
}
@@ -0,0 +1,439 @@
package com.ruoyi.member.api.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import com.ruoyi.system.api.domain.SysDept;
import com.ruoyi.system.api.domain.SysRole;
import com.ruoyi.system.api.domain.SysUnion;
import com.ruoyi.system.api.domain.SysUser;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.nutz.dao.entity.annotation.*;
import org.nutz.dao.interceptor.annotation.PrevInsert;
import java.util.Date;
import java.util.List;
/**
* @ClassName UserHistory
* @Description TODO
* @Author zhaoxinyu
* @Date 2022/12/16 17:03
* @Version 1.0
*/
@Table("user_history")
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
public class UserHistory extends BaseEntity {
@Name
@Comment("ID")
@PrevInsert(uu32 = true)
@ColDefine(type = ColType.VARCHAR, width = 32)
private String id;
@Column(hump = true)
@Comment("userId")
@ColDefine(customType = "bigint")
private Long userId;
/**
* 二级单位ID
*/
@Excel(name = "部门编号", type = Excel.Type.IMPORT)
@Column(hump = true)
private Long deptId;
/**
* 三级单位ID
*/
@Column
@Comment("三级单位")
private Long threeUnitId;
/**
* 用户账号
*/
@Excel(name = "登录名称")
@Column(hump = true)
private String userName;
/**
* 用户昵称
*/
@Excel(name = "用户名称")
@Column(hump = true)
private String nickName;
/**
* 用户邮箱
*/
@Excel(name = "用户邮箱")
@Column(hump = true)
private String email;
/**
* 用户性别
*/
@Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
@Column(hump = true)
@Comment("用户性别")
private String sex;
/**
* 用户头像
*/
@Column(hump = true)
private String avatar;
/**
* 密码
*/
@Column(hump = true)
private String password;
/**
* 帐号状态(0正常 1停用)
*/
@Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
@Column(hump = true)
private String status;
/**
* 删除标志(0代表存在 2代表删除)
*/
@Column(hump = true)
private String delFlag;
/**
* 最后登录IP
*/
@Excel(name = "最后登录IP", type = Excel.Type.EXPORT)
@Column(hump = true)
private String loginIp;
/**
* 最后登录时间
*/
@Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Excel.Type.EXPORT)
@Column(hump = true)
private Date loginDate;
/**
* 生日
*/
@Column
@Comment("出生日期")
@ColDefine(type = ColType.DATE)
@JsonFormat(pattern = "yyyy-MM-dd")
private Date birthday;
/**
* 人员类型
*/
@Column
@Comment("人员类型")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String personType;
/**
* 在职状态
*/
@Column
@Comment("在职状态")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String userState;
/**
* 出生地点
*/
@Column
@Comment("出生地点")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String birthPlace;
/**
* 职务
*/
@Column
@Comment("职务")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String position;
/**
* 职称
*/
@Column
@Comment("职称")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String jobTitle;
/**
* 职称级别
*/
@Column
@Comment("职称级别")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String jobTitleLevel;
/**
* 籍贯
*/
@Column
@Comment("籍贯")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String hometown;
/**
* 民族
*/
@Column
@Comment("民族")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String nation;
/**
* 手机
*/
@Column
@Comment("手机号码")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String mobile;
/**
* 学历
*/
@Column
@Comment("学历")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String education;
/**
* 政治面貌
*/
@Column
@Comment("政治面貌")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String political;
/**
* 入校时间
*/
@Column
@Comment("入校时间")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String schoolTime;
/**
* 身份证
*/
@Column
@Comment("身份证")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String idcard;
/**
* 成员
*/
@Column
@Comment("会员状态")
@ColDefine(type = ColType.INT, width = 2)
private Integer member;
/**
* 会员加入时间
*/
@Column
@Comment("会员加入时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date memberJoinTime;
/**
* 福利会员状态
*/
@Column
@Comment("福利会员状态")
@ColDefine(type = ColType.INT, width = 2)
private Integer welfareMember;
/**
* 福利会员加入时间
*/
@Column
@Comment("福利会员加入时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date welfareMemberJoinTime;
/**
* 会员来源(1 个人申请 2 补录 3 批量设置 4 其他)
*/
@Column
@Comment("会员来源(1 个人申请 2 补录 3 批量设置 4 其他)")
@ColDefine(type = ColType.INT, width = 2)
private Integer memberOrigin;
/**
* 会员状态
*/
@Column
@Comment("会员状态")
@ColDefine(type = ColType.INT, width = 2)
private Integer memberStatus;
/**
* 兴趣爱好
*/
@Column
@Comment("兴趣爱好")
@ColDefine(type = ColType.VARCHAR, width = 255)
private String hobby;
/**
* 婚否
*/
@Column
@Comment("婚否")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String marriage;
/**
* 人事编制
*/
@Column
@Comment("人事编制")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String preparedBy;
/**
* 有效证件类型
*/
@Column
@Comment("有效证件类型")
@ColDefine(type = ColType.VARCHAR, width = 20)
private String idType;
/**
* 有效证件起始日期
*/
@Column
@Comment("有效证件起始日期")
@ColDefine(type = ColType.VARCHAR, width = 30)
private String beginningDate;
/**
* 有效证件截止日期
*/
@Column
@Comment("有效证件截止日期")
@ColDefine(type = ColType.VARCHAR, width = 30)
private String endDate;
/**
* 户籍类型
*/
@Column
@Comment("户籍类型")
@ColDefine(type = ColType.VARCHAR, width = 30)
private String householdType;
/**
* 微信号
*/
@Column
@Comment("微信号")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String weChat;
/**
* 国籍
*/
@Column
@Comment("国籍")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String nationality;
/**
* 学位
*/
@Column
@Comment("学位")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String academicDegree;
/**
* 个人身份
*/
@Column
@Comment("个人身份")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String personalStatus;
@Column
@Comment("个人简历")
@ColDefine(type = ColType.TEXT)
private String vita;
@Column
@Comment("校区")
@ColDefine(type = ColType.VARCHAR, width = 50)
private String campus;
@Column
@Comment("家庭住址")
@ColDefine(type = ColType.VARCHAR, width = 255)
private String homeAddress;
@Column
@Comment("特长")
@ColDefine(type = ColType.VARCHAR, width = 255)
private String specialty;
@Column
@Comment("家庭主要成员及联系方式")
@ColDefine(type = ColType.MYSQL_JSON)
private List<SysUser.Family> familyInformation;
@Column
@Comment("基金会员状态")
@ColDefine(type = ColType.INT, width = 2)
private Integer aidFundMember;
@Column
@Comment("基金会员加入时间")
@ColDefine(type = ColType.DATETIME)
private Date aidFundMemberJoinTime;
@Column
@Comment("基金会员退出时间")
@ColDefine(type = ColType.DATETIME)
private Date aidFundMemberQuitTime;
@Column
@Comment("是否多单位人员")
@ColDefine(type = ColType.BOOLEAN)
private Boolean isManyUnit;
@Column
@Comment("多单位人员类型")
@ColDefine(type = ColType.VARCHAR,width = 4)
private String manyUnitType;
@Column
@Comment("多单位人员备注")
@ColDefine(type = ColType.VARCHAR,width = 50)
private String manyUnitRemark;
@Column
@Comment("起薪日期")
@ColDefine(type = ColType.DATE)
private Date startingSalaryDate;
@Column
@Comment("退休日期")
@ColDefine(type = ColType.DATE)
private Date retireTime;
@Column
@Comment("是否停薪")
@ColDefine(type = ColType.BOOLEAN)
private Boolean stopSalary;
@Column
@Comment("更新时间")
@ColDefine(type = ColType.DATETIME)
private Date changeTime;
@Column
@Comment("变更类型")
@ColDefine(type = ColType.VARCHAR, width = 10)
private String changeType;
@Column
@Comment("会员申请记录id")
@ColDefine(type = ColType.VARCHAR, width = 32)
private String memberApplyRecordId;
}
@@ -0,0 +1,39 @@
package com.ruoyi.member.api.domain.dto;
import com.ruoyi.common.core.domain.PageForm;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 会员申请审核DTO
*
* @ClassName MemberAuditPageForm
* @Description TODO
* @Author zhaoxinyu
* @Date 2022/12/15 14:02
* @Version 1.0
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class MemberAuditPageForm extends PageForm {
/**
* 申请时间
*/
private String[] dateRange;
/**
* 分工会
*/
private String unionId;
/**
* 0 全部
* 1 已审核
* 2 未审核
*/
private int audit;
private Integer year;
}
@@ -0,0 +1,14 @@
package com.ruoyi.member.api.dto;
import com.ruoyi.member.api.domain.MemberChangeRecord;
import com.ruoyi.system.api.domain.SysUser;
import lombok.Data;
@Data
public class MemberChangeDto {
private SysUser sysUser;
private MemberChangeRecord memberChangeRecord;
}