This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package jnpf.annotation;
|
||||
|
||||
import jnpf.enums.SensitiveTypeEnum;
|
||||
|
||||
import java.lang.annotation.*;
|
||||
|
||||
/**
|
||||
* 脱敏注解
|
||||
*
|
||||
* @author wcx
|
||||
* @date 2024/2/3
|
||||
*/
|
||||
@Target(ElementType.FIELD)
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@Documented
|
||||
public @interface Sensitive {
|
||||
/**
|
||||
* 脱敏数据类型
|
||||
*/
|
||||
SensitiveTypeEnum type() default SensitiveTypeEnum.CUSTOMER;
|
||||
|
||||
/**
|
||||
* 前置不需要打码的长度
|
||||
*/
|
||||
int prefixNoMaskLen() default 0;
|
||||
|
||||
/**
|
||||
* 后置不需要打码的长度
|
||||
*/
|
||||
int suffixNoMaskLen() default 0;
|
||||
|
||||
/**
|
||||
* 用什么打码
|
||||
*/
|
||||
String symbol() default "*";
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package jnpf.annotation.check;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
@Target({ElementType.FIELD})
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
public @interface CheckLength {
|
||||
|
||||
String message() default "non err";
|
||||
|
||||
int max();
|
||||
|
||||
int min() default 0;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package jnpf.annotation.check;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
@Target({ElementType.FIELD})
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
public @interface CheckListSize {
|
||||
|
||||
String message();
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package jnpf.annotation.check;
|
||||
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
|
||||
@Target({ElementType.FIELD})
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
public @interface CheckNull {
|
||||
|
||||
String message() default "non err";
|
||||
}
|
||||
@@ -0,0 +1,318 @@
|
||||
package jnpf.constants;
|
||||
|
||||
import jnpf.util.DateUtil;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
public class AttendanceConstant {
|
||||
public final static String APPLY_FAIL_RESULT1 = "申请时间与原%s时间冲突,请重新选择";
|
||||
public final static String SCHEDULING_FAIL_RESULT2 = "用户%s %s已存在%s,不能进行%s";
|
||||
public final static String LEAVE = "请假";
|
||||
public final static String REST = "排休";
|
||||
public final static String ORDINARY = "上班";
|
||||
public final static String WORKOVERTIME = "加班";
|
||||
public final static String STEP_OUT = "外出、出差";
|
||||
|
||||
public final static String HOLIDAYS_COLOR = "31,192,138";
|
||||
|
||||
public static final String FTB_ATTENDANCE_NOTICE_CONFIRM_KEY = "ftb:attendance:notice:confirm:%s:%s";
|
||||
//考勤模块头像
|
||||
public final static String ATTENDANCE_APP_LOGO = "https://jnpf-resource-1304460613.cos.ap-chengdu.myqcloud.com/jnpf-resources/WebAnnexFile/66b96888e4b0ac7b700b2ef3.png";
|
||||
//考勤通知-确认接口
|
||||
public final static String ATTENDANCE_NOTICE_CONFIRM_URL = "/api/ftb/attendance/notice/confirm/%s";
|
||||
//考勤小程序id
|
||||
public final static String MP_ID = "__UNI__748697E";
|
||||
//确认列表页面地址
|
||||
public final static String ATTENDANCE_NOTICE_CONFIRM_LIST_VIEW_URL = "/pages/clockingInV2/InfoPush/ConfirmList?id=%s";
|
||||
//确认列表页面地址
|
||||
public final static String ATTENDANCE_NOTICE_CONFIRM_LIST_BUTTON_NAME = "确认人员名单";
|
||||
public final static String ATTENDANCE_NOTICE_CONFIRM = "确认收到";
|
||||
public final static String ATTENDANCE_NOTICE_CONFIRMED = "已收到";
|
||||
public final static String ATTENDANCE_NOTICE_DETAIL_BUTTON_NAME = "查看详情";
|
||||
//出勤规则页面
|
||||
public final static String ATTENDANCE_NOTICE_RULE_URL = "/pages/clockingInV2/AttendanceRules";
|
||||
public final static String ATTENDANCE_NOTICE_GROUP_CHANGES_URL = "/pages/clockingInV2/InfoPush/AttendanceGroupChanges?id=%s";
|
||||
//详情页面
|
||||
public final static String ATTENDANCE_NOTICE_SHIFT_CHANGE_DETAIL_URL = "/pages/clockingInV2/InfoPush/ShiftChanges?id=%s";
|
||||
public final static String BTN_SCHEDULE_URL = "/pages/clockingInV2/schedulingPage/index?AttendanceGroup=%s";
|
||||
public final static String BTN_LINE_SCHEDULE_URL = "/pages/clockingInV2/lineScheduling/index?AttendanceGroup=%s";
|
||||
public final static String BTN_SCHEDULE_GO = "去排班";
|
||||
/** 跳转按钮-查看详情 */
|
||||
public static final String BTN_NAME_TO_DETAIL = "查看详情";
|
||||
/** URL-极速打卡详情 */
|
||||
public static final String BTN_FAST_DETAIL_URL = "/pages/clockingInV2/MyAttendance/index";
|
||||
/** URL- 连续旷工查看详情 */
|
||||
public static final String BTN_CONSECUTIVE_ABSENCE_URL = "/pages/clockingInV2/InfoPush/ContinuousAbsenceNotice?id=%s";
|
||||
/** 跳转按钮-极速更新打卡 */
|
||||
public static final String BTN_NAME_FAST_UPDATE = "更新打卡";
|
||||
/** URL-极速更新打卡 */
|
||||
public static final String BTN_FAST_UPDATE_URL = "/pages/clockingInV2/index";
|
||||
/** 跳转按钮-申请补卡 */
|
||||
public static final String BTN_NAME_REPAIR = "申请补卡";
|
||||
/** URL-申请补卡 */
|
||||
public static final String BTN_REPAIR_URL = "/pages/oaApproval/manage/template?flowId=%s&templateId=%s&internalLink=%s";
|
||||
/** 跳转按钮-去打卡 */
|
||||
public static final String BTN_NAME_GO = "去打卡";
|
||||
/** URL-考勤规则 */
|
||||
public static final String BTN_RULE_URL = "/pages/clockingInV2/AttendanceRules";
|
||||
/** 标题-极速打卡成功 */
|
||||
public static final String TITLE_FAST = "%s极速打卡成功";
|
||||
/** 标题-连续旷工通知 */
|
||||
public static final String TITLE_CONSECUTIVE_ABSENCE = "成员连续旷工通知";
|
||||
public static final String TITLE_ABSENCE = "班次旷工提醒";
|
||||
public static final String TITLE_ON_WORK = "上班缺卡提醒";
|
||||
public static final String TITLE_OFF_WORK = "下班缺卡提醒";
|
||||
public static final String TITLE_BEFORE_ON_WORK = "上班打卡提醒";
|
||||
public static final String TITLE_BEFORE_OFF_WORK = "下班打卡提醒";
|
||||
public static final String TITLE_CLOCK_IN_CHANGE = "您的出勤结果已被管理员变更";
|
||||
/** 上班 */
|
||||
public static final String ON_WORK = "上班";
|
||||
/** 下班 */
|
||||
public static final String OFF_WORK = "下班";
|
||||
|
||||
public final static String ATTENDANCE_NOTICE_TO_CLICK = "去打卡";
|
||||
public final static String ATTENDANCE_NOTICE_SHIFT_CHANGE_TITLE = "您的班次已被修改";
|
||||
public final static String ATTENDANCE_NOTICE_CONSEC_UNSCHEDULED_TITLE = "多天未排班提醒";
|
||||
public final static String ATTENDANCE_NOTICE_LINE_SHIFT_CHANGE_TITLE = "划线排班提醒通知";
|
||||
public final static String ATTENDANCE_NOTICE_LINE_SCHEDULED_TITLE = "划线排班定时提醒";
|
||||
|
||||
public final static String ATTENDANCE_NOTICE_JOIN_GROUP_CHANGE_TITLE = "加入考勤组提示";
|
||||
public final static String ATTENDANCE_NOTICE_GROUP_CHANGE_TITLE = "考勤组变动提示";
|
||||
public final static String ATTENDANCE_NOTICE_REMOVE_USER_TITLE = "考勤组离组提示";
|
||||
|
||||
public final static String ATTENDANCE_NOTICE_RULE_CHANGE_TITLE = "当前考勤组规则变动";
|
||||
public final static String ATTENDANCE_NOTICE_ADMIN_RULE_CHANGE_TITLE = "管理考勤组规则变动";
|
||||
//打卡页面
|
||||
public final static String ATTENDANCE_NOTICE_CLICK_URL = "/pages/clockingInV2/index";
|
||||
|
||||
//打卡前提醒
|
||||
public final static String BEFORE_CLOCK_IN = "BEFORE_CLOCK_IN";
|
||||
//缺卡/旷工提醒
|
||||
public final static String WORK_MISSING = "WORK_MISSING";
|
||||
//极速打卡
|
||||
public final static String FAST_CLOCK_IN = "FAST_CLOCK_IN";
|
||||
//连续旷工
|
||||
public final static String CONSECUTIVE_ABSENCE = "CONSECUTIVE_ABSENCE";
|
||||
//考勤组锁定
|
||||
public final static String GROUP_LOCK = "GROUP_LOCK";
|
||||
public final static String TITLE_GROUP_LOCK = "当前考勤组被锁定提示";
|
||||
public final static String GROUP_LOCK_URL1 = "/pages/message/userDetail/index?userId=%s";
|
||||
public final static String GROUP_LOCK_BUTTON_NAME1 = "联系管理员";
|
||||
public final static String GROUP_LOCK_BUTTON_NAME2 = "查看详情";
|
||||
public final static String GROUP_LOCK_URL2 = "/pages/clockingInV2/InfoPush/attendanceLockedUnlocked?type=1&id=%s";
|
||||
//考勤组解锁
|
||||
public final static String GROUP_UNLOCK = "GROUP_UNLOCK";
|
||||
public final static String TITLE_GROUP_UNLOCK = "当前考勤组解锁提示";
|
||||
public final static String GROUP_UNLOCK_URL = "/pages/clockingInV2/InfoPush/attendanceLockedUnlocked?type=2&id=%s";
|
||||
//出勤换算比变动
|
||||
public final static String RULE_CHANGE_RATIO = "RULE_CHANGE_RATIO";
|
||||
//外勤打卡规则变动
|
||||
public final static String RULE_CHANGE_FIELD = "RULE_CHANGE_FIELD";
|
||||
//补卡规则变动
|
||||
public final static String RULE_CHANGE_CARD_MAKEUP = "RULE_CHANGE_CARD_MAKEUP";
|
||||
//GPS打卡开关变动
|
||||
public final static String RULE_CHANGE_GPS_SWIFT = "RULE_CHANGE_GPS_SWIFT";
|
||||
//班制变动
|
||||
public final static String RULE_CHANGE_SHIFT_SYSTEM = "RULE_CHANGE_SHIFT_SYSTEM";
|
||||
//管理员变动
|
||||
public final static String ADMINISTRATOR_CHANGE = "ADMINISTRATOR_CHANGE";
|
||||
public final static String ADMINISTRATOR_CHANGE_BUTTON_NAME1 = "查看详情";
|
||||
public final static String ADMINISTRATOR_CHANGE_URL1 = "/pages/clockingInV2/InfoPush/AttendanceGroupAdministratorChange?id=%s";
|
||||
public final static String ADMINISTRATOR_CHANGE_BUTTON_NAME2 = "进入团队考勤";
|
||||
public final static String ADMINISTRATOR_CHANGE_URL2 = "/pages/clockingInV2/TeamAttendance/index?groupId=%s";
|
||||
public final static String ADMINISTRATOR_CHANGE_TITLE1 = "您已成为【%s】的管理员";
|
||||
public final static String ADMINISTRATOR_CHANGE_TITLE2 = "您已不是【%s】的管理员";
|
||||
public final static String ADMINISTRATOR_CHANGE_URL3 = "/pages/message/userDetail/index?userId=%s";
|
||||
public final static String ADMINISTRATOR_CHANGE_NAME3 = "联系管理员";
|
||||
//出勤结果变动
|
||||
public final static String CHECK_RESULT_CHANGE = "CHECK_RESULT_CHANGE";
|
||||
//个人考勤日报
|
||||
public final static String INDIVIDUAL_DAILY_STATISTICS = "INDIVIDUAL_DAILY_STATISTICS";
|
||||
public final static String INDIVIDUAL_DAILY_STATISTICS_BUTTON_NAME1 = "查看报表";
|
||||
public final static String INDIVIDUAL_DAILY_STATISTICS_URL1 = "/pages/clockingInV2/InfoPush/AttendanceReport?type=1&id=%s";
|
||||
public final static String INDIVIDUAL_DAILY_STATISTICS_BUTTON_NAME2 = "我的考勤";
|
||||
public final static String INDIVIDUAL_DAILY_STATISTICS_URL2 = "/pages/clockingInV2/MyAttendance/index";
|
||||
//个人统计月报
|
||||
public final static String INDIVIDUAL_MONTHLY_STATISTICS = "INDIVIDUAL_MONTHLY_STATISTICS";
|
||||
public final static String INDIVIDUAL_MONTHLY_STATISTICS_BUTTON_NAME1 = "查看报表";
|
||||
public final static String INDIVIDUAL_MONTHLY_STATISTICS_URL1 = "/pages/clockingInV2/InfoPush/AttendanceReport?type=2&id=%s";
|
||||
public final static String INDIVIDUAL_MONTHLY_STATISTICS_BUTTON_NAME2 = "查看详情";
|
||||
public final static String INDIVIDUAL_MONTHLY_STATISTICS_URL2 = "/pages/clockingInV2/MyAttendance/AttendanceDataStatistics";
|
||||
//团队统计月报
|
||||
public final static String TEAM_MONTHLY_STATISTICS = "TEAM_MONTHLY_STATISTICS";
|
||||
public final static String TEAM_MONTHLY_STATISTICS_BUTTON_NAME1 = "查看报表";
|
||||
public final static String TEAM_MONTHLY_STATISTICS_URL1 = "/pages/clockingInV2/InfoPush/AttendanceReport?type=3&id=%s";
|
||||
public final static String TEAM_MONTHLY_STATISTICS_BUTTON_NAME2 = "进入团队考勤";
|
||||
public final static String TEAM_MONTHLY_STATISTICS_URL2 = "/pages/clockingInV2/TeamAttendance/index";
|
||||
//加入考勤组
|
||||
public final static String JOIN_GROUP = "JOIN_GROUP";
|
||||
//考勤组解散加入新组
|
||||
public final static String GROUP_CHANGE_REMOVE_JOIN_GROUP = "GROUP_CHANGE_REMOVE_JOIN_GROUP";
|
||||
//借调-考勤组变动
|
||||
public final static String GROUP_CHANGE_SECONDMENT = "GROUP_CHANGE_SECONDMENT";
|
||||
//调岗/晋升考勤组变动
|
||||
public final static String GROUP_CHANGE_TRANSFER_OR_PROMOTION = "GROUP_CHANGE_TRANSFER_OR_PROMOTION";
|
||||
//班次变动
|
||||
public final static String SHIFT_CHANG = "SHIFT_CHANG";
|
||||
public final static String LINE_SHIFT_CHANG = "LINE_SHIFT_CHANG";
|
||||
public final static String LINE_SHIFT_NOT_SCHEDUING = "LINE_SHIFT_NOT_SCHEDUING";
|
||||
//连续未排班
|
||||
public final static String CONSEC_UNSCHEDULED = "CONSEC_UNSCHEDULED";
|
||||
public final static String APPROVE = "APPROVE";
|
||||
// 被借调人员查看到的审批页面
|
||||
public final static String APPROVE_SECONDED_URL = "/pages/clockingInV2/InfoPush/AttendanceApproval?id=%s";
|
||||
|
||||
public final static String APPROVE_URL = "/pages/workFlow/flowBefore/index?config=";
|
||||
//黑色
|
||||
public final static String COLOR_BLACK = "#1A1A1A";
|
||||
//蓝色
|
||||
public final static String COLOR_BLUE = "#3C6DF8";
|
||||
|
||||
|
||||
public static String getApplyResult(String realName, String oldTypeStr) {
|
||||
return String.format(APPLY_FAIL_RESULT1, oldTypeStr);
|
||||
}
|
||||
public static String getSchedulingResult(String realName, Date date, String oldTypeStr, String currTypeStr) {
|
||||
return String.format(SCHEDULING_FAIL_RESULT2, realName, DateUtil.daFormat(date), oldTypeStr,currTypeStr);
|
||||
}
|
||||
|
||||
// ==================== 考勤本导入相关常量 ====================
|
||||
|
||||
/**
|
||||
* 导入错误:考勤本配置不存在
|
||||
*/
|
||||
public static final String ERR_IMPORT_CONFIG_NOT_FOUND = "考勤本配置不存在";
|
||||
/**
|
||||
* 导入错误:考勤本配置已禁用
|
||||
*
|
||||
*/
|
||||
public static final String ERR_IMPORT_CONFIG_DISABLED = "当前考勤本已被禁用";
|
||||
|
||||
/**
|
||||
* 导入错误:导入数据为空
|
||||
*/
|
||||
public static final String ERR_IMPORT_DATA_EMPTY = "导入数据为空,请检查Excel文件内容";
|
||||
|
||||
/**
|
||||
* 导入错误:表头日期与月份不匹配
|
||||
*/
|
||||
public static final String ERR_IMPORT_HEADER_DATE_MISMATCH = "表头日期与所选月份不匹配";
|
||||
|
||||
/**
|
||||
* 导入错误:数据行超过上限(不含表头)
|
||||
*/
|
||||
public static final String ERR_IMPORT_EXCEED_MAX_ROWS = "导入数据已超过500行上限(不含表头),最多支持500行,请分批导入";
|
||||
/**
|
||||
* 导入错误:考勤本名称(首列)为空
|
||||
*/
|
||||
public static final String ERR_IMPORT_BOOK_NAME_EMPTY = "考勤本名称不能为空,请填写与所选考勤本一致的名称";
|
||||
|
||||
/**
|
||||
* 导入错误:数据行考勤本名称与根据所选考勤本 ID 解析出的名称不一致
|
||||
*/
|
||||
public static final String ERR_IMPORT_BOOK_NAME_ROW_MISMATCH = "考勤本名称与所选考勤本「%s」不一致";
|
||||
|
||||
/**
|
||||
* 导入错误:手机号不能为空
|
||||
*/
|
||||
public static final String ERR_IMPORT_PHONE_EMPTY = "手机号不能为空";
|
||||
|
||||
/**
|
||||
* 导入错误:手机号重复
|
||||
*/
|
||||
public static final String ERR_IMPORT_PHONE_DUPLICATE = "手机号[%s]重复";
|
||||
|
||||
/**
|
||||
* 导入错误:手机号未找到对应员工
|
||||
*/
|
||||
public static final String ERR_IMPORT_PHONE_NOT_FOUND = "手机号[%s]未在考勤本中找到对应员工";
|
||||
|
||||
/**
|
||||
* 导入错误:考勤状态不合法
|
||||
*/
|
||||
public static final String ERR_IMPORT_STATUS_INVALID = "考勤状态不合法[%s],允许值:正常、公休、迟到、早退、缺卡、请假、出差、外出、外勤、旷工,或系统中配置的请假类型名称";
|
||||
|
||||
/**
|
||||
* 导入错误:日期不在月份范围内
|
||||
*/
|
||||
public static final String ERR_IMPORT_DATE_OUT_OF_RANGE = "日期不在%s月范围内";
|
||||
|
||||
/**
|
||||
* 导入错误:日期解析失败
|
||||
*/
|
||||
public static final String ERR_IMPORT_DATE_PARSE_FAILED = "日期解析失败";
|
||||
|
||||
/**
|
||||
* 导入错误:数据解析失败
|
||||
*/
|
||||
public static final String ERR_IMPORT_DATA_PARSE_FAILED = "数据解析失败";
|
||||
|
||||
/**
|
||||
* 导入失败前缀
|
||||
*/
|
||||
public static final String ERR_IMPORT_FAILED_PREFIX = "导入失败:";
|
||||
|
||||
// ==================== 考勤本导出相关常量 ====================
|
||||
|
||||
/**
|
||||
* 导出模板表头:班次列名
|
||||
*/
|
||||
public static final String HEADER_SHIFT = "班次";
|
||||
|
||||
/**
|
||||
* 上半天显示文本
|
||||
*/
|
||||
public static final String PERIOD_MORNING = "上";
|
||||
|
||||
/**
|
||||
* 下半天显示文本
|
||||
*/
|
||||
public static final String PERIOD_AFTERNOON = "下";
|
||||
|
||||
// ==================== 考勤本操作日志相关常量 ====================
|
||||
|
||||
/**
|
||||
* HTML红色标记开始标签
|
||||
*/
|
||||
public static final String RED_MARK_START = "<span style=\"color:red\">";
|
||||
|
||||
/**
|
||||
* HTML红色标记结束标签
|
||||
*/
|
||||
public static final String RED_MARK_END = "</span>";
|
||||
/**
|
||||
* 操作日志:更新考勤记录
|
||||
*/
|
||||
public static final String LOG_OPERATION_CLEAN = "清空考勤本记录";
|
||||
/**
|
||||
* 操作日志:更新考勤记录
|
||||
*/
|
||||
public static final String LOG_OPERATION_UPDATE = "更新考勤本记录";
|
||||
|
||||
/**
|
||||
* 操作日志:新增考勤记录
|
||||
*/
|
||||
public static final String LOG_OPERATION_ADD = "新增考勤本记录";
|
||||
|
||||
// ==================== 考勤本配置相关常量 ====================
|
||||
|
||||
/**
|
||||
* 考勤本名称已存在错误提示
|
||||
*/
|
||||
public static final String ERR_BOOK_NAME_EXISTS = "考勤本名称已存在,请使用其他名称";
|
||||
|
||||
/**
|
||||
* 未查询到考勤本配置错误提示
|
||||
*/
|
||||
public static final String ERR_CONFIG_NOT_FOUND = "未查询到考勤本配置";
|
||||
|
||||
/**
|
||||
* 未找到考勤本配置错误提示
|
||||
*/
|
||||
public static final String ERR_CONFIG_NOT_EXIST = "未找到考勤本配置";
|
||||
|
||||
/**
|
||||
* 考勤本已存在记录时不允许变更使用范围(组织/成员)
|
||||
*/
|
||||
public static final String ERR_BOOK_SCOPE_CHANGE_HAS_RECORDS = "该考勤本已存在考勤记录,不允许变更使用范围(组织)";
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package jnpf.constants;
|
||||
|
||||
/**
|
||||
* 权限字典常量
|
||||
*/
|
||||
public class AttendancePermissionConstant {
|
||||
|
||||
public static final String ATTENDANCE_RESULT = "调整出勤结果";
|
||||
public static final String SCHEDULING = "排班";
|
||||
public static final String ADD_CHILD_GROUP = "添加子组";
|
||||
public static final String BINDING_ORG = "绑定组织";
|
||||
public static final String RENAME = "重命名";
|
||||
public static final String DELETE = "删除";
|
||||
|
||||
/** 查看*/
|
||||
public static final String VIEW = "查看";
|
||||
/** 管理*/
|
||||
public static final String MANAGER = "管理";
|
||||
|
||||
/** 考勤组排班页面*/
|
||||
public static final String BALANCE_MANAGER = "余额管理";
|
||||
public static final String USER_MANAGER = "成员管理";
|
||||
public static final String ATTENDANCE_CONFIGURATION = "考勤配置";
|
||||
public static final String PERMISSION_CONFIGURATION = "权限设置";
|
||||
public static final String PERMISSION_LOCKED = "锁定";
|
||||
|
||||
/** 自定义考勤配置*/
|
||||
public static final String BASE = "出勤基础设置";
|
||||
public static final String ATTENDANCE_POINTS = "考勤点";
|
||||
public static final String ATTENDANCE_CLASS = "考勤班制";
|
||||
public static final String LEAVE_TYPE = "请假类型设置";
|
||||
public static final String FESTIVAL = "节日设置";
|
||||
public static final String HOLIDAY = "假日设置";
|
||||
|
||||
/** 审批权限*/
|
||||
public static final String SECONDED_APPROVAL = "借调审批";
|
||||
/** 借调成员*/
|
||||
public static final String SECONDED_USER = "借调成员";
|
||||
|
||||
/** 子考勤组权限*/
|
||||
/** 下级考勤组调整出勤审批*/
|
||||
public static final String CHILD_ADJUST_ATTENDANCE_RESULTS = "下级考勤组调整出勤审批";
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
package jnpf.constants;
|
||||
|
||||
/**
|
||||
* 消息队列topic
|
||||
*
|
||||
* @author wangchunxiang
|
||||
* @date 2024/12/05
|
||||
*/
|
||||
public interface MessageTopicConstants {
|
||||
|
||||
// 字符建议:字母a~z或A~Z、数字0~9以及下划线()、短划线(-)和百分号(%)。长度建议:1~64个字符。
|
||||
|
||||
/**
|
||||
* 任务消费主题
|
||||
*/
|
||||
String PERSONNEL_SECONDMENT_TOPIC = "secondment-consumer-output";
|
||||
String PERSONNEL_SECONDMENT_FAIL_TOPIC = "personnel-onboarding-fail-topic";
|
||||
String PERMISSION_TOPIC = "permission-topic";
|
||||
//创建借调
|
||||
String PERSONNEL_ONBOARDING_TOPIC = "personnel-onboarding-topic";
|
||||
//取消借调
|
||||
String SECONDMENT_WITHDRAWAL_OUTPUT = "secondment-withdrawal-topic";
|
||||
//借调延迟
|
||||
String SECONDMENT_WITHDRAWAL_DELAY_OUTPUT = "secondment-withdrawal-delay-topic";
|
||||
//借调提前结束
|
||||
String SECONDMENT_WITHDRAWAL_EARLY_END_OUTPUT = "secondment-withdrawal-early-end-topic";
|
||||
|
||||
//考勤统计清除(为了等待调用事务的全量提交,发送的延迟消息(等级是2(5秒后发送))
|
||||
String ATTENDANCE_STATISTICS_BATCH_CLEAR_TOPIC = "attendance-statistics-batch-clear-topic";
|
||||
String ATTENDANCE_STATISTICS_BATCH_CLEAR_CONSUMER_GROUP = "attendance-statistics-batch-clear-consumer-group";
|
||||
|
||||
//考勤统计单个生成(为了等待调用事务的全量提交,发送的延迟消息(等级是2(5秒后发送))
|
||||
String ATTENDANCE_STATISTICS_SINGLE_TOPIC = "attendance-statistics-single-topic";
|
||||
String ATTENDANCE_STATISTICS_SINGLE_CONSUMER_GROUP = "attendance-statistics-single--consumer-group";
|
||||
|
||||
String ATTENDANCE_NOTIFICATION_CLOCK_TOPIC = "attendance-notification-clock-topic";
|
||||
String ATTENDANCE_NOTIFICATION_CLOCK_CONSUMER_GROUP = "attendance-notification-clock-consumer-group";
|
||||
//考勤统计单个生成(为了等待调用事务的全量提交,发送的延迟消息(等级是2(5秒后发送))
|
||||
String ATTENDANCE_STATISTICS_SINGLE_HISTORY_TOPIC = "attendance-statistics-single-history-topic";
|
||||
String ATTENDANCE_STATISTICS_SINGLE_HISTORY_CONSUMER_GROUP = "attendance-statistics-single-history-consumer-group";
|
||||
|
||||
// 加班发券
|
||||
String ATTENDANCE_OVERTIME_TOPIC = "attendance-overtime-topic";
|
||||
String ATTENDANCE_OVERTIME_CONSUMER_GROUP = "attendance-overtime-consumer-group";
|
||||
|
||||
// 绩效
|
||||
String AUDIT_RANKING_TOPIC = "audit-ranking-topic";
|
||||
String AUDIT_RANKING_TOPIC_CONSUMER_GROUP = "audit-ranking-consumer-group";
|
||||
/**
|
||||
* 任务消费组
|
||||
*/
|
||||
String SECONDMENT_GROUP = "jnpf-ftb-secondment-group_1";
|
||||
String SECONDMENT_WITHDRAWAL_GROUP = "jnpf-ftb-secondment-withdrawal-group_1";
|
||||
String JNPF_GROUP = "jnpf-ftb-permission-group_1";
|
||||
String JNPF_USER_GROUP = "jnpf-ftb-permission-user-group_1";
|
||||
String ONBOARDING_GROUP = "jnpf-ftb-onboarding-group_1";
|
||||
String ONBOARDING_FAIL_GROUP = "jnpf-ftb-onboarding-fail-group_1";
|
||||
|
||||
String TAG_ORGANIZE = "TAG_ORGANIZE";
|
||||
String ORGANIZE_RELATION_USER = "TAG_ORGANIZE_RELATION_USER";
|
||||
|
||||
|
||||
//培训topic
|
||||
String CULTIVATE_TOPIC = "jnpf-ftb-cultivate-topic";
|
||||
//培训消费者组
|
||||
String CULTIVATE_CONSUMER_GROUP_SELF = "jnpf-ftb-cultivate-consumer-group-self";
|
||||
String CULTIVATE_CONSUMER_GROUP = "jnpf-ftb-cultivate-consumer-group";
|
||||
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package jnpf.constants;
|
||||
|
||||
/**
|
||||
* 任职资格标准静态字段
|
||||
*
|
||||
* @author Flynn Chan
|
||||
* @create 2024-03-14
|
||||
*/
|
||||
public class QualificationsConstant {
|
||||
public final static String NONE_FIELD = "未知标准字段";
|
||||
public final static String NONE_FIELD_CATEGORY = "未知标准字段分类";
|
||||
public final static String NONE_ITEM = "未知注释项";
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package jnpf.constants;
|
||||
|
||||
/**
|
||||
* redis常量类
|
||||
*/
|
||||
public class RedisConstant {
|
||||
|
||||
public static final String CACHE_GROUP = "cache_group:";
|
||||
public static final String GROUP_JOIN_USERS_KEY = "cache_group:join:Users:%s";
|
||||
public static final String GROUP_ONBOARDING_KEY = "cache_group:onboarding:%s";
|
||||
public static final String ATTENDANCE_SET_SCHEDULES= "fbt:attendance:set_schedules:%s:%s";
|
||||
public static final String ATTENDANCE_BASE_SETTING_CACHE_KEY = "fbt:attendance:base_setting:cache:%s";
|
||||
//fbt:attendance:user:set_schedules:租户:考勤组id:用户id
|
||||
public static final String ATTENDANCE_USER_SET_SCHEDULES= "fbt:attendance:user:set_schedules:%s:%s:%s";
|
||||
public static final String ATTENDANCE_CHANGE_SHIFT_STATUS= "fbt:attendance:change_shift_status:%s:%s";
|
||||
public static final String ATTENDANCE_CHANGE_GROUP_STATUS= "fbt:attendance:change_group_status:%s:%s";
|
||||
public static final String ATTENDANCE_UPDATE_FIXED_CLASS= "fbt:attendance:update_fixed_class:%s:%s";
|
||||
public static final String ATTENDANCE_UPDATE_SHIFT_CONFIG= "fbt:attendance:update_shift_config:%s:%s";
|
||||
public static final String ATTENDANCE_LATE_IN_LATE_OUT = "fbt:attendance:late_in_late_out:%s:%s";
|
||||
public static final String ATTENDANCE_LINE_SCHEDULING_NOTICE = "ftb:attendance:line_scheduling_notice:%s";
|
||||
|
||||
// 考勤自动封账配置信息缓存
|
||||
public static final String ATTENDANCE_SEAL_SETTING = "fbt:attendance:seal_setting:%s";
|
||||
|
||||
|
||||
public static final String ATTENDANCE_NOTIFICATION_CLOCK_USER = "fbt:attendance:user:notification:clock:%s:%s";
|
||||
|
||||
/**
|
||||
* 智能排班预排班主表暂存:租户、考勤组、排班区间(yyyy-MM-dd_yyyy-MM-dd)。
|
||||
*/
|
||||
public static final String ATTENDANCE_SMART_PRE_SCHEDULE = "fbt:attendance:smart_pre_schedule:%s:%s:%s";
|
||||
|
||||
/**
|
||||
* 智能排班预排班按员工视图 Redis key 固定前缀;后缀为 {@code 租户:考勤组:yyyy-MM-dd_yyyy-MM-dd}。
|
||||
*/
|
||||
public static final String ATTENDANCE_SMART_PRE_SCHEDULE_BY_EMPLOYEE_PREFIX =
|
||||
"fbt:attendance:smart_pre_schedule_by_employee:%s:%s";
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package jnpf.constants;
|
||||
|
||||
public class ShareMsgConstant {
|
||||
public static String LIKE_REPLY = "%s点赞了你的分享";
|
||||
public static String COMMENT_REPLY = "%s评论了你的分享";
|
||||
public static String COMMENT_COMMENT_REPLY = "%s评论了你的评论";
|
||||
|
||||
public static String SHARE_TITLE = "广场通知";
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package jnpf.easyexcel;
|
||||
|
||||
import com.alibaba.excel.write.handler.SheetWriteHandler;
|
||||
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
|
||||
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
|
||||
import lombok.Data;
|
||||
import org.apache.poi.ss.usermodel.Cell;
|
||||
import org.apache.poi.ss.usermodel.Row;
|
||||
import org.apache.poi.ss.usermodel.Sheet;
|
||||
|
||||
import java.util.List;
|
||||
@Data
|
||||
public class DynamicHeaderHandler implements SheetWriteHandler {
|
||||
private List<String> columnNames;
|
||||
|
||||
public DynamicHeaderHandler(List<String> columnNames) {
|
||||
this.columnNames = columnNames;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
|
||||
Sheet sheet = writeSheetHolder.getSheet();
|
||||
Row headerRow = sheet.createRow(0);
|
||||
// 假设根据某些条件动态添加列
|
||||
// 根据需要添加更多列
|
||||
for (int i = 0; i < columnNames.size(); i++) {
|
||||
Cell cell = headerRow.createCell(i);
|
||||
cell.setCellValue(columnNames.get(i));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package jnpf.easyexcel;
|
||||
|
||||
public interface EasyEnumNames {
|
||||
/**
|
||||
* 获取枚举名称
|
||||
*/
|
||||
String getName();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package jnpf.easyexcel;
|
||||
|
||||
import com.alibaba.excel.converters.Converter;
|
||||
import com.alibaba.excel.enums.CellDataTypeEnum;
|
||||
import com.alibaba.excel.metadata.GlobalConfiguration;
|
||||
import com.alibaba.excel.metadata.data.WriteCellData;
|
||||
import com.alibaba.excel.metadata.property.ExcelContentProperty;
|
||||
|
||||
public class EasyEnumNamesConverter implements Converter<EasyEnumNames> {
|
||||
@Override
|
||||
public Class<?> supportJavaTypeKey() {
|
||||
return EasyEnumNames.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CellDataTypeEnum supportExcelTypeKey() {
|
||||
return CellDataTypeEnum.STRING;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WriteCellData<?> convertToExcelData(EasyEnumNames value, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) throws Exception {
|
||||
if (contentProperty == null) {
|
||||
return null;
|
||||
} else {
|
||||
return new WriteCellData<>(value.getName());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package jnpf.easyexcel;
|
||||
|
||||
import com.alibaba.fastjson.serializer.JSONSerializer;
|
||||
import com.alibaba.fastjson.serializer.ObjectSerializer;
|
||||
import jnpf.util.ReflectionUtil;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.lang.reflect.Type;
|
||||
|
||||
public class FastJsonEnumConverter implements ObjectSerializer {
|
||||
|
||||
@Override
|
||||
public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException {
|
||||
if (object == null) {
|
||||
serializer.write(null);
|
||||
return;
|
||||
}
|
||||
if (object instanceof Enum) {
|
||||
try {
|
||||
Object resultName = ReflectionUtil.invokeGetterMethod(object, "code");
|
||||
serializer.write(resultName);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
package jnpf.easyexcel;
|
||||
|
||||
import com.alibaba.excel.converters.Converter;
|
||||
import com.alibaba.excel.enums.CellDataTypeEnum;
|
||||
import com.alibaba.excel.metadata.GlobalConfiguration;
|
||||
import com.alibaba.excel.metadata.data.ReadCellData;
|
||||
import com.alibaba.excel.metadata.data.WriteCellData;
|
||||
import com.alibaba.excel.metadata.property.ExcelContentProperty;
|
||||
import com.alibaba.excel.util.DateUtils;
|
||||
import com.alibaba.excel.util.StringUtils;
|
||||
import org.apache.poi.ss.usermodel.DateUtil;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.text.ParseException;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
public class StaffDateStringConverter implements Converter<Date> {
|
||||
@Override
|
||||
public Class<?> supportJavaTypeKey() {
|
||||
return Date.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CellDataTypeEnum supportExcelTypeKey() {
|
||||
return CellDataTypeEnum.STRING;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Date convertToJavaData(ReadCellData<?> cellData, ExcelContentProperty contentProperty,
|
||||
GlobalConfiguration globalConfiguration) throws ParseException {
|
||||
String format = switchDateFormat(cellData.getStringValue());
|
||||
if(StringUtils.isEmpty(format)){
|
||||
BigDecimal numberValue = cellData.getNumberValue();
|
||||
if (numberValue == null){
|
||||
return null;
|
||||
}
|
||||
double v = numberValue.doubleValue();
|
||||
return DateUtil.getJavaDate(v,
|
||||
globalConfiguration.getUse1904windowing(), null);
|
||||
}
|
||||
if (contentProperty == null || format.isEmpty()) {
|
||||
return null;
|
||||
} else {
|
||||
return DateUtils.parseDate(cellData.getStringValue(), format);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public WriteCellData<?> convertToExcelData(Date value, ExcelContentProperty contentProperty,
|
||||
GlobalConfiguration globalConfiguration) {
|
||||
if (contentProperty == null || contentProperty.getDateTimeFormatProperty() == null) {
|
||||
return new WriteCellData<>(DateUtils.format(value, null));
|
||||
} else {
|
||||
return new WriteCellData<>(DateUtils.format(value, contentProperty.getDateTimeFormatProperty().getFormat()));
|
||||
}
|
||||
}
|
||||
|
||||
private static final String param2 = "yyyy-MM-dd";
|
||||
private static final String param5 = "yyyy/MM/dd";
|
||||
private static final String param6 = "yyyyMMdd";
|
||||
private static final String param7 = "yyyy.MM.dd";
|
||||
private static final String MINUS = "-";
|
||||
private static final String MINUSD = ".";
|
||||
|
||||
private String switchDateFormat(String dateString) {
|
||||
if (dateString == null) {
|
||||
return "";
|
||||
}
|
||||
int length = dateString.length();
|
||||
switch (length) {
|
||||
case 10:
|
||||
if (dateString.contains(MINUS)) {
|
||||
return param2;
|
||||
}else if (dateString.contains(MINUSD)){
|
||||
return param7;
|
||||
}else {
|
||||
return param5;
|
||||
}
|
||||
case 8:
|
||||
return param6;
|
||||
default:
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 接口调用日志表
|
||||
* @author yanwenfu
|
||||
* @create 2026-01-28
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_api_call_log" )
|
||||
public class ApiCallLog extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5134795939132551720L;
|
||||
|
||||
/** 接口名称 */
|
||||
@TableField(value = "F_ApiName")
|
||||
private String apiName;
|
||||
|
||||
/** 接口路径 */
|
||||
@TableField(value = "F_ApiPath")
|
||||
private String apiPath;
|
||||
|
||||
/** HTTP方法 */
|
||||
@TableField(value = "F_HttpMethod")
|
||||
private String httpMethod;
|
||||
|
||||
/** 请求参数(JSON) */
|
||||
@TableField(value = "F_RequestBody")
|
||||
private String requestBody;
|
||||
|
||||
/** 返回结果(JSON) */
|
||||
@TableField(value = "F_ResponseBody")
|
||||
private String responseBody;
|
||||
|
||||
/** 是否成功(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Success")
|
||||
private Integer success;
|
||||
|
||||
/** 异常信息 */
|
||||
@TableField(value = "F_ErrorMsg")
|
||||
private String errorMsg;
|
||||
|
||||
/** 耗时(ms) */
|
||||
@TableField(value = "F_CostTime")
|
||||
private Integer costTime;
|
||||
|
||||
/** 调用ip */
|
||||
@TableField(value = "F_Ip")
|
||||
private String ip;
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* banner
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-10-10
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value ="ftb_app_banner")
|
||||
public class AppBanner extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
/** 图标标题 */
|
||||
@TableField(value = "F_Icon_Title")
|
||||
private String iconTitle;
|
||||
/** 图标描述 */
|
||||
@TableField(value = "F_Icon_Description")
|
||||
private String iconDescription;
|
||||
/** 图片地址 */
|
||||
@TableField(value = "F_Icon_Url")
|
||||
private String iconUrl;
|
||||
/** 跳转地址 */
|
||||
@TableField(value = "F_Jump_To")
|
||||
private String jumpTo;
|
||||
/** 排序 */
|
||||
@TableField(value = "F_Sort")
|
||||
private Integer sort;
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤审批设置表
|
||||
* </p>
|
||||
*
|
||||
* @author Auto-generator
|
||||
* @since 2023-11-21
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_approval_setting")
|
||||
public class AttendanceApprovalSetting {
|
||||
|
||||
/**
|
||||
* 自然主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
/**
|
||||
* 审批类型 1.常规补卡审批 2.调整出勤结果审批 3.外勤审批 4.请假审批 5.加班审批
|
||||
*/
|
||||
@TableField("F_type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 审批权限设置 1.考勤超级管理员 2.上级考勤管理员 3.当前组管理员 0.无需审批
|
||||
*/
|
||||
@TableField("F_Permission")
|
||||
private Integer permission;
|
||||
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
public AttendanceApprovalSetting(String groupId, Integer type, Integer permission) {
|
||||
this.groupId = groupId;
|
||||
this.type = type;
|
||||
this.permission = permission;
|
||||
}
|
||||
|
||||
public AttendanceApprovalSetting() {
|
||||
}
|
||||
|
||||
public AttendanceApprovalSetting(String id, String groupId, Integer type, Integer permission, String tenantId) {
|
||||
this.id = id;
|
||||
this.groupId = groupId;
|
||||
this.type = type;
|
||||
this.permission = permission;
|
||||
this.tenantId = tenantId;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.sql.Timestamp;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤-自定义报表设置
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2024-09-03
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_customize_table")
|
||||
public class AttendanceCustomizeTable implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 字段名称
|
||||
*/
|
||||
@TableField("F_FieldName")
|
||||
private String fieldName;
|
||||
/**
|
||||
* 字段
|
||||
*/
|
||||
@TableField("F_Field")
|
||||
private String field;
|
||||
/**
|
||||
* 表头字段名
|
||||
*/
|
||||
@TableField("F_HeadName")
|
||||
private String headName;
|
||||
/**
|
||||
* 表头宽带
|
||||
*/
|
||||
@TableField("F_Width")
|
||||
private Integer width;
|
||||
/**
|
||||
* 是否勾选(0-未勾选 1-勾选)
|
||||
*/
|
||||
@TableField("F_Status")
|
||||
private Integer status;
|
||||
/**
|
||||
* 类型(1-日度统计 2-月度统计 3-日度计薪统计 4-月度计薪统计)
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField("F_Sort")
|
||||
private Integer sort;
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField("F_CustomLeaveJson")
|
||||
private String customLeaveJson;
|
||||
/**
|
||||
* 变更时间
|
||||
*/
|
||||
@TableField("F_UpdatorTime")
|
||||
private Timestamp updatorTime;
|
||||
/**
|
||||
* 变更人
|
||||
*/
|
||||
@TableField("F_UpdatorUserId")
|
||||
private String updatorUserId;
|
||||
}
|
||||
@@ -0,0 +1,151 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤组表
|
||||
* </p>
|
||||
* @author yier
|
||||
* @since 2023-11-21
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_group")
|
||||
public class AttendanceGroup {
|
||||
|
||||
/**
|
||||
* 自然主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 考勤组名称
|
||||
*/
|
||||
@TableField("F_GroupName")
|
||||
private String groupName;
|
||||
/**
|
||||
* 父节点id
|
||||
*/
|
||||
@TableField("F_ParentId")
|
||||
private String parentId;
|
||||
/**
|
||||
* 组织id
|
||||
*/
|
||||
@TableField("F_OrgId")
|
||||
private String orgId;
|
||||
/**
|
||||
* 层级编码
|
||||
*/
|
||||
@TableField("F_LevelCode")
|
||||
private String levelCode;
|
||||
/**
|
||||
* 考勤组详细名称树
|
||||
*/
|
||||
@TableField("F_DetailName")
|
||||
private String detailName;
|
||||
/**
|
||||
* 考勤组负责人
|
||||
*/
|
||||
@TableField("F_ManagerId")
|
||||
private String managerId;
|
||||
/**
|
||||
* 出勤基础设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_BaseSetting")
|
||||
private Integer baseSetting;
|
||||
/**
|
||||
* 考勤班制设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_AttendanceClassSetting")
|
||||
private Integer attendanceClassSetting;
|
||||
/**
|
||||
* 考勤点设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_AttendancePointsSetting")
|
||||
private Integer attendancePointsSetting;
|
||||
/**
|
||||
* 请假设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_LeaveSetting")
|
||||
private Integer leaveSetting;
|
||||
/**
|
||||
* 节假日设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_FestivalSetting")
|
||||
private Integer festivalSetting;
|
||||
/**
|
||||
* 假期设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_HolidaySetting")
|
||||
private Integer holidaySetting;
|
||||
/**
|
||||
* 假期设置 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_LineSchedulingSetting")
|
||||
private Integer lineSchedulingSetting;
|
||||
/**
|
||||
* 考勤点是否启用GPS
|
||||
*/
|
||||
@TableField("F_GpsEnable")
|
||||
private Integer gpsEnable;
|
||||
/**
|
||||
*考勤点是否启用WiFi
|
||||
*/
|
||||
@TableField("F_WifiEnable")
|
||||
private Integer wifiEnable;
|
||||
/**
|
||||
*考勤点是否启用考勤机
|
||||
*/
|
||||
@TableField("F_MachineEnable")
|
||||
private Integer machineEnable;
|
||||
/**
|
||||
*考勤组锁定
|
||||
*/
|
||||
@TableField("F_LockedDate")
|
||||
private Date lockedDate;
|
||||
/**
|
||||
* 是否开启月报通知 1.开启 0.关闭
|
||||
*/
|
||||
@TableField("F_MonthlyReportNotice")
|
||||
private Integer monthlyReportNotice;
|
||||
/**
|
||||
* 创建用户id
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
/**
|
||||
* 删除标志 1.是
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
/**
|
||||
* 删除用户id
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 最后修改用户id
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤组成员管理表
|
||||
* </p>
|
||||
*
|
||||
* @author yier
|
||||
* @since 2023-11-21
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_group_user")
|
||||
public class AttendanceGroupUser {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 自然主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
/**
|
||||
* 1.当前考勤组 2.借调考勤组
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField(value = "F_Sort",updateStrategy = FieldStrategy.IGNORED)
|
||||
private Integer sort;
|
||||
|
||||
/**
|
||||
* 1.当前考勤组 2.借调考勤组
|
||||
*/
|
||||
@TableField("F_UserGroupType")
|
||||
private Integer userGroupType;
|
||||
/**
|
||||
* 借调开始时间
|
||||
*/
|
||||
// @TableField("F_StartTime")
|
||||
// private Date startTime;
|
||||
/**
|
||||
* 借调结束时间
|
||||
*/
|
||||
// @TableField("F_EndTime")
|
||||
// private Date endTime;
|
||||
|
||||
@TableField("F_TimeJson")
|
||||
private String timeJson;
|
||||
/**
|
||||
* 创建用户id
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 移除考勤组时间
|
||||
*/
|
||||
@TableField(value = "F_RemoveTime", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Date removeTime;
|
||||
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤管理员权限设置
|
||||
* </p>
|
||||
*
|
||||
* @author Auto-generator
|
||||
* @since 2023-11-21
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_manager_permission")
|
||||
public class AttendanceManagerPermission {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 权限类型 1.当前考勤组 2.子考勤组 0.考勤超级管理员
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
/**
|
||||
* 权限菜单id
|
||||
*/
|
||||
@TableField("F_PermissionId")
|
||||
private String permissionId;
|
||||
/**
|
||||
* 创建用户id
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
/**
|
||||
* 删除标志 1.是
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
/**
|
||||
* 删除用户id
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 最后修改用户id
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author Created by wyr on 2023/7/20.
|
||||
**/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class BaseEntity extends BaseInsertEntity{
|
||||
|
||||
@Schema(description = "有效标识")
|
||||
@TableField("F_EnabledMark")
|
||||
private Integer enabledMark;
|
||||
|
||||
@Schema(description = "修改用户")
|
||||
@TableField(value = "F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
@Schema(description = "修改时间")
|
||||
@TableField(value = "F_LastModifyTime", fill = FieldFill.UPDATE)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm")
|
||||
private Date lastModifyTime;
|
||||
|
||||
@Schema(description = "删除用户")
|
||||
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
@Schema(description = "删除时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@TableField(value = "F_DeleteTime", fill = FieldFill.UPDATE)
|
||||
private Date deleteTime;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author Created by wyr on 2023/7/20.
|
||||
**/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
public class BaseInsertEntity {
|
||||
|
||||
@Schema(description = "主键")
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
@Schema(description = "创建用户")
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@TableField(value = "F_CreatorTime", fill = FieldFill.INSERT)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date creatorTime;
|
||||
|
||||
@Schema(description = "租户id")
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* 公共配置
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-07-20
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
public class CommonConfig {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 名称备注
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 编码(informationRecycleBin)
|
||||
*/
|
||||
private String code;
|
||||
|
||||
/**
|
||||
* 配置JSON
|
||||
*/
|
||||
private Object dataJson;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
*
|
||||
* Contract
|
||||
* 版本: V3.0.0
|
||||
* 版权: 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
||||
* 作者: JNPF开发平台组
|
||||
* 日期: 2020-12-31
|
||||
*/
|
||||
@Data
|
||||
@TableName("test_contract")
|
||||
public class ContractEntity extends SuperBaseEntity.SuperTBaseEntity<String> implements Serializable {
|
||||
|
||||
@TableField("F_CONTRACTNAME")
|
||||
private String contractName;
|
||||
|
||||
@TableField("F_MYTELEPHONE")
|
||||
private String mytelePhone;
|
||||
|
||||
@TableField("F_FILEJSON")
|
||||
private String fileJson;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class Information {
|
||||
|
||||
/** 主键id */
|
||||
private String id;
|
||||
|
||||
/** 文件名称 */
|
||||
private String fileName;
|
||||
|
||||
/** 文件大小 */
|
||||
private Double filesize;
|
||||
|
||||
/** 文件链接 */
|
||||
private String fileUrl;
|
||||
|
||||
/** 文件拥有者id */
|
||||
private String owner;
|
||||
|
||||
/** 文件后缀 */
|
||||
private String fileSuffix;
|
||||
|
||||
/** 文件类型 1.空间 2.文件夹 3.文档 4.文件 */
|
||||
private Integer classification;
|
||||
|
||||
/** 文件种类型 文档 表格..用于web种类搜索 */
|
||||
private String fileType;
|
||||
|
||||
/** 文件路径 */
|
||||
private String filePath;
|
||||
|
||||
/** 文件父级id */
|
||||
private String filePid;
|
||||
|
||||
/** 创建时间 */
|
||||
private Date creatorTime;
|
||||
|
||||
/** 创建用户 */
|
||||
private String creatorUserId;
|
||||
|
||||
/** 修改时间 */
|
||||
private Date lastModifyTime;
|
||||
|
||||
/** 修改用户 */
|
||||
private String lastModifyUserId;
|
||||
|
||||
/** 删除时间 */
|
||||
private Date deleteTime;
|
||||
|
||||
/** 删除用户 */
|
||||
private String deleteUserId;
|
||||
|
||||
/** 删除标志(1.删除 0未删除) */
|
||||
private Integer enabledMark;
|
||||
|
||||
/** 租户id */
|
||||
private String tenantId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,66 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class InformationAuthority {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 空间/文件夹/资料的id
|
||||
*/
|
||||
private String informationId;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 权限管理(1..管理员 2.可编辑 3.可上传下载 4.可下载 5.仅预览)
|
||||
*/
|
||||
private Integer limitsOfAuthority;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
private String tenantId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class InformationLog {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 资料id
|
||||
*/
|
||||
private String informationId;
|
||||
|
||||
/**
|
||||
* 动作(创建 , 上传 , 邀请 ....)
|
||||
*/
|
||||
private String action;
|
||||
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class InformationRubbish {
|
||||
|
||||
/** 主键id */
|
||||
private String id;
|
||||
|
||||
/** 文件id */
|
||||
private String informationId;
|
||||
|
||||
/** 创建时间 */
|
||||
private Date creatorTime;
|
||||
|
||||
/** 创建用户 */
|
||||
private String creatorUserId;
|
||||
|
||||
/** 租户id */
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
public class InfornationRecentlyViewed {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 空间/文件夹/资料的id
|
||||
*/
|
||||
private String informationId;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 巡店任务
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_patrol_task")
|
||||
public class PatrolTaskEntity {
|
||||
@TableId("F_ID")
|
||||
private String id;
|
||||
|
||||
@TableField("F_ConfigId")
|
||||
private String configId;
|
||||
|
||||
@TableField("F_TaskConfigId")
|
||||
private String taskConfigId;
|
||||
|
||||
@TableField("F_State")
|
||||
private Integer state;
|
||||
|
||||
@TableField("F_OverseeUserId")
|
||||
private String overseeUserId;
|
||||
|
||||
@TableField("F_OverseeUserName")
|
||||
private String overseeUserName;
|
||||
|
||||
@TableField("F_OrgId")
|
||||
private String orgId;
|
||||
|
||||
@TableField("F_StoreId")
|
||||
private String storeId;
|
||||
|
||||
@TableField("F_StartTime")
|
||||
private Date startTime;
|
||||
|
||||
@TableField("F_EndTime")
|
||||
private Date endTime;
|
||||
|
||||
|
||||
@TableField("F_EnabledMark")
|
||||
private Integer enabledMark;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 权限字典表
|
||||
* </p>
|
||||
*
|
||||
* @author Auto-generator
|
||||
* @since 2023-11-21
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_permission_dict")
|
||||
public class PermissionDict {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 权限名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
/**
|
||||
* 权限请求路径
|
||||
*/
|
||||
@TableField("F_Path")
|
||||
private String path;
|
||||
/**
|
||||
* 权限类型 1.目录 2.功能 3.菜单
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 权限模块 1.考勤
|
||||
*/
|
||||
@TableField("F_ModuleType")
|
||||
private Integer moduleType;
|
||||
/**
|
||||
* 关联父级id
|
||||
*/
|
||||
@TableField("F_Parent")
|
||||
private String parent;
|
||||
/**
|
||||
* 权限编码
|
||||
*/
|
||||
@TableField("F_PermissionCode")
|
||||
private String permissionCode;
|
||||
/**
|
||||
* 创建用户id
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
/**
|
||||
* 删除标志 1.是
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
/**
|
||||
* 删除用户id
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 最后修改用户id
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 轮播图
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-10-10
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value ="ftb_roll_image")
|
||||
public class RollImage extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
/** 图片地址 */
|
||||
@TableField(value = "F_Image_Url")
|
||||
private String imageUrl;
|
||||
/** 跳转地址 */
|
||||
@TableField(value = "F_Jump_To")
|
||||
private String jumpTo;
|
||||
/** 图片类型 */
|
||||
@TableField(value = "F_Image_Type")
|
||||
private Integer imageType;
|
||||
/** 是否发布(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Published")
|
||||
private Integer published;
|
||||
/** 排序 */
|
||||
@TableField(value = "F_Sort")
|
||||
private Integer sort;
|
||||
/**
|
||||
* banner类型0app1pc
|
||||
*/
|
||||
@TableField(value = "F_BannerType")
|
||||
private Integer bannerType;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class SharingSquareVO {
|
||||
|
||||
private String id;
|
||||
}
|
||||
@@ -0,0 +1,110 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*
|
||||
* 门店管理
|
||||
* @版本: V3.1.0
|
||||
* @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
||||
* @作者: JNPF开发平台组
|
||||
* @日期: 2023-07-11
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_store")
|
||||
public class StoreEntity {
|
||||
@TableId("F_ID")
|
||||
private String id;
|
||||
|
||||
@TableField("F_ORGANIZEID")
|
||||
private String organizeid;
|
||||
|
||||
@TableField("F_STOREHEADUSERID")
|
||||
private String storeheaduserid;
|
||||
|
||||
@TableField("F_STORENAME")
|
||||
private String storename;
|
||||
|
||||
@TableField("F_STOREPIC")
|
||||
private String storepic;
|
||||
|
||||
@TableField("F_LONGITUDE")
|
||||
private String longitude;
|
||||
|
||||
@TableField("F_LATITUDE")
|
||||
private String latitude;
|
||||
|
||||
@TableField("F_ADDRESS")
|
||||
private String address;
|
||||
|
||||
@TableField("F_DISABLED")
|
||||
private Integer disabled;
|
||||
|
||||
@TableField("F_SortCode")
|
||||
private BigDecimal sortCode;
|
||||
|
||||
/**
|
||||
* 面积(㎡)
|
||||
*/
|
||||
@TableField("F_AreaNum")
|
||||
private BigDecimal areaNum;
|
||||
/**
|
||||
* 是否设置区域(1: 是, 0: 否)
|
||||
*/
|
||||
@TableField("F_SetRegion")
|
||||
private Integer setRegion;
|
||||
|
||||
/** 第三方平台id; */
|
||||
@TableField(value = "F_ThirdPartyPlatformId")
|
||||
private String thirdPartyPlatformId;
|
||||
|
||||
@TableField(value = "F_StoreTag")
|
||||
private String storeTag;
|
||||
|
||||
@TableField(value = "F_FranchiseeId")
|
||||
private String franchiseeId;
|
||||
|
||||
/**
|
||||
* 收银门店id;
|
||||
*/
|
||||
@TableField(value = "F_CashierStoreId")
|
||||
private String cashierStoreId;
|
||||
|
||||
/** 收银门店编码; */
|
||||
@TableField(value = "F_CashierStoreEnCode")
|
||||
private String cashierStoreEnCode;
|
||||
|
||||
@TableField("F_CREATORUSERID")
|
||||
private String creatoruserid;
|
||||
|
||||
@TableField("F_CREATORTIME")
|
||||
private Date creatortime;
|
||||
|
||||
@TableField("F_LASTMODIFYUSERID")
|
||||
private String lastmodifyuserid;
|
||||
|
||||
@TableField("F_LASTMODIFYTIME")
|
||||
private Date lastmodifytime;
|
||||
|
||||
@TableField("F_DELETEMARK")
|
||||
private boolean deletemark;
|
||||
|
||||
@TableField("F_DELETETIME")
|
||||
private Date deletetime;
|
||||
|
||||
@TableField("F_DELETEUSERID")
|
||||
private String deleteuserid;
|
||||
|
||||
@TableField("F_TENANTID")
|
||||
private String tenantid;
|
||||
|
||||
@TableField(exist = false)
|
||||
private List<StoreUserEntity> users;
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 门店区域管理表
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_store_region")
|
||||
public class StoreRegion {
|
||||
/**
|
||||
* 自增id
|
||||
*/
|
||||
@TableId("F_ID")
|
||||
private String id;
|
||||
/**
|
||||
* 门店id
|
||||
*/
|
||||
@TableField("F_StoreId")
|
||||
private String storeId;
|
||||
/**
|
||||
* 是否默认数据(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_IsDefault")
|
||||
private Integer isDefault;
|
||||
/**
|
||||
* 区域名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
/**
|
||||
* 桌台数
|
||||
*/
|
||||
@TableField("F_DeskCount")
|
||||
private Integer deskCount;
|
||||
/**
|
||||
* 座位数
|
||||
*/
|
||||
@TableField("F_SeatCount")
|
||||
private Integer seatCount;
|
||||
/**
|
||||
* 创建用户id
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 最后修改用户id
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
/**
|
||||
* 删除标志 1.是
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
/**
|
||||
* 删除用户id
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 门店管理, 值班人员表
|
||||
*
|
||||
* @版本: V3.1.0
|
||||
* @版权: 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
||||
* @作者: JNPF开发平台组
|
||||
* @日期: 2023-07-11
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_store_user")
|
||||
public class StoreUserEntity {
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
@TableField("F_StoreId")
|
||||
private String storeId;
|
||||
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
|
||||
@TableField("F_OrganizeId")
|
||||
private String organizeId;
|
||||
|
||||
@TableField("F_PositionId")
|
||||
private String positionId;
|
||||
|
||||
@TableField("F_GradeId")
|
||||
private String gradeId;
|
||||
|
||||
@TableField("F_TargetType")
|
||||
private String targetType;
|
||||
|
||||
// 过时, 实际业务流程未用
|
||||
@TableField("F_SHIFTSMARKS")
|
||||
private Boolean shiftsmarks;
|
||||
|
||||
@TableField("F_CREATORUSERID")
|
||||
private String creatorUserId;
|
||||
|
||||
@TableField("F_CREATORTIME")
|
||||
private Date creatorTime;
|
||||
|
||||
@TableField("F_LASTMODIFYUSERID")
|
||||
private String lastModifyUserId;
|
||||
|
||||
@TableField("F_LASTMODIFYTIME")
|
||||
private Date lastModifyTime;
|
||||
|
||||
@TableField("F_DELETEMARK")
|
||||
private Integer deleteMark;
|
||||
|
||||
@TableField("F_DELETETIME")
|
||||
private Date deleteTime;
|
||||
|
||||
@TableField("F_DELETEUSERID")
|
||||
private String deleteUserId;
|
||||
|
||||
@TableField("F_TENANTID")
|
||||
private String tenantTd;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 用户门店关联表
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_store_user_relation")
|
||||
public class StoreUserRelation {
|
||||
@TableId("F_ID")
|
||||
private String id;
|
||||
|
||||
@TableField("F_StoreId")
|
||||
private String storeId;
|
||||
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
|
||||
@TableField("F_OrganizeId")
|
||||
private String organizeId;
|
||||
|
||||
|
||||
@TableField("F_PositionId")
|
||||
private String positionId;
|
||||
|
||||
|
||||
@TableField("F_RankId")
|
||||
private String rankId;
|
||||
|
||||
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,122 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤工作站配置表
|
||||
* </p>
|
||||
* @author AI Generated
|
||||
* @since 2026-05-11
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_workstation")
|
||||
public class Workstation {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 工作站名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 门店ID
|
||||
*/
|
||||
@TableField("F_StoreId")
|
||||
private String storeId;
|
||||
|
||||
/**
|
||||
* 门店名称
|
||||
*/
|
||||
@TableField("F_StoreName")
|
||||
private String storeName;
|
||||
|
||||
/**
|
||||
* 岗位ID
|
||||
*/
|
||||
@TableField("F_PositionId")
|
||||
private String positionId;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
@TableField("F_PositionName")
|
||||
private String positionName;
|
||||
|
||||
/**
|
||||
* 排序码
|
||||
*/
|
||||
@TableField("F_SortCode")
|
||||
private Integer sortCode;
|
||||
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
@TableField("F_Description")
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 创建人ID
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 修改人ID
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 删除标记(0正常/1删除)
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 删除人ID
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 有效标记(0禁用/1启用)
|
||||
*/
|
||||
@TableField("F_EnabledMark")
|
||||
private Integer enabledMark;
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
package jnpf.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤工作站人员关联表
|
||||
* </p>
|
||||
* @author AI Generated
|
||||
* @since 2026-05-11
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_workstation_user")
|
||||
public class WorkstationUser {
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 工作站ID
|
||||
*/
|
||||
@TableField("F_WorkstationId")
|
||||
private String workstationId;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 创建人ID
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 删除标记(0正常/1删除)
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 删除人ID
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import jnpf.enums.attendance.AttendanceTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
/**
|
||||
* 申请参数类,用于封装申请相关的信息
|
||||
*/
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class ApplyParam {
|
||||
|
||||
// 考勤组ID
|
||||
private String groupId;
|
||||
// 用户ID
|
||||
private String userId;
|
||||
// 申请ID
|
||||
private String applyId;
|
||||
// 申请开始时间
|
||||
private Date start;
|
||||
// 申请结束时间
|
||||
private Date end;
|
||||
// 有效时长,以小时为单位
|
||||
private BigDecimal validDuration;
|
||||
// 出勤类型,如请假、加班等
|
||||
private AttendanceTypeEnum attendanceType;
|
||||
//开始时间类型 1 上半天 2 下半天
|
||||
private Integer startTimeType;
|
||||
//结束时间类型 1 上半天 2 下半天
|
||||
private Integer endTimeType;
|
||||
//请假类型单位 1 小时 2 天 3 半天
|
||||
private Integer leaveUnit;
|
||||
// 有效时长,以小时为单位
|
||||
private BigDecimal validDay;
|
||||
|
||||
public ApplyParam(String userId, Date start, Date end, AttendanceTypeEnum attendanceType){
|
||||
this.userId = userId;
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
this.attendanceType = attendanceType;
|
||||
}
|
||||
public ApplyParam(String userId, String applyId, Date start, Date end, BigDecimal validDuration, AttendanceTypeEnum attendanceType){
|
||||
this.userId = userId;
|
||||
this.applyId = applyId;
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
this.validDuration = validDuration;
|
||||
this.attendanceType = attendanceType;
|
||||
}
|
||||
|
||||
public ApplyParam(String userId, Date start, Date end, AttendanceTypeEnum attendanceType, Integer startTimeType, Integer endTimeType, Integer leaveUnit) {
|
||||
this.userId = userId;
|
||||
this.start = start;
|
||||
this.end = end;
|
||||
this.attendanceType = attendanceType;
|
||||
this.startTimeType = startTimeType;
|
||||
this.endTimeType = endTimeType;
|
||||
this.leaveUnit = leaveUnit;
|
||||
}
|
||||
|
||||
public ApplyParam(String userId, String applyId, Date startTime, Date endTime, BigDecimal validDuration, AttendanceTypeEnum attendanceTypeEnum, Integer startTimeType, Integer endTimeType, Integer leaveUnit, BigDecimal validDay) {
|
||||
this.userId = userId;
|
||||
this.applyId = applyId;
|
||||
this.start = startTime;
|
||||
this.end = endTime;
|
||||
this.validDuration = validDuration;
|
||||
this.attendanceType = attendanceTypeEnum;
|
||||
this.startTimeType = startTimeType;
|
||||
this.endTimeType = endTimeType;
|
||||
this.leaveUnit = leaveUnit;
|
||||
this.validDay = validDay;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Author huanglinpan
|
||||
* @Date 2024/11/19 14:21
|
||||
* @Version 1.0 (版本号)
|
||||
*/
|
||||
@Data
|
||||
public class AppointPermission {
|
||||
|
||||
/** 考勤组Id */
|
||||
private String groupId;
|
||||
|
||||
/** 考勤组权限code */
|
||||
private String permissionCode = "adjustResult";
|
||||
}
|
||||
@@ -0,0 +1,78 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤App设置表
|
||||
* @author yanwenfu
|
||||
* @create 2024-08-08
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_app_setting" )
|
||||
public class AttendanceAppSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5470565812422104769L;
|
||||
|
||||
|
||||
|
||||
/** 设置名称 */
|
||||
@TableField(value = "F_SettingName")
|
||||
private String settingName;
|
||||
|
||||
/** 编码 */
|
||||
@TableField(value = "F_Code")
|
||||
private String code;
|
||||
|
||||
/** 父级Id */
|
||||
@TableField(value = "F_PId")
|
||||
private String pId;
|
||||
|
||||
/** 路径 */
|
||||
@TableField(value = "F_Path")
|
||||
private String path;
|
||||
|
||||
/** 排序 */
|
||||
@TableField(value = "F_Sort")
|
||||
private Long sort;
|
||||
|
||||
/** 创建用户id */
|
||||
@TableField(value = "F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/** 创建时间 */
|
||||
@TableField(value = "F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/** 租户id */
|
||||
@TableField(value = "F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
/** 删除标志 1.是 */
|
||||
@TableField(value = "F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/** 删除用户id */
|
||||
@TableField(value = "F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/** 最后修改时间 */
|
||||
@TableField(value = "F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/** 最后修改用户id */
|
||||
@TableField(value = "F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用户及考勤组设置详情
|
||||
* @author yanwenfu
|
||||
* @create 2024-08-08
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@TableName(value = "ftb_attendance_app_user_setting")
|
||||
public class AttendanceAppUserSetting implements Serializable {
|
||||
private static final long serialVersionUID = 341450761466292067L;
|
||||
|
||||
/** 设置主表Id */
|
||||
@TableField(value = "F_SettingId")
|
||||
private String settingId;
|
||||
|
||||
/** 类型 1:个人设置,2:考勤组设置 */
|
||||
@TableField(value = "F_Type")
|
||||
private Integer type;
|
||||
|
||||
/** 关联Id(与类型一起使用,个人时表示用户Id,考勤组时表示考勤组Id) */
|
||||
@TableField(value = "F_AssociationId")
|
||||
private String associationId;
|
||||
|
||||
/** 状态 1:启用 0:关闭 */
|
||||
@TableField(value = "F_Status")
|
||||
private Integer status;
|
||||
|
||||
/** 值: 涉及定时时间时使用 */
|
||||
@TableField(value = "F_Value")
|
||||
private Integer value;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import jnpf.model.attendance.vo.AttendanceUserVo;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class AttendanceApprovalAdminVo {
|
||||
|
||||
/** 是否需要审批*/
|
||||
private Boolean isApproval;
|
||||
|
||||
/** 管理员*/
|
||||
private List<AttendanceUserVo> userList;
|
||||
}
|
||||
@@ -0,0 +1,116 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@ToString
|
||||
@TableName("ftb_attendance_balance_record")
|
||||
public class AttendanceBalanceRecordEntity extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 节假日名称(2.0字段失效动态查)
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 类型 : 1.节日 2.假日 3.加班(存休)
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type ;
|
||||
|
||||
/**
|
||||
* 关联id和Type联合使用
|
||||
*/
|
||||
@TableField("F_Object_Id")
|
||||
private String objectId;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField("F_User_Id")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 余额
|
||||
*/
|
||||
@TableField("F_Balance")
|
||||
private BigDecimal balance;
|
||||
|
||||
/**
|
||||
* 加班类型: 1=工作日, 2=公休日, 3=节假日
|
||||
*/
|
||||
@TableField("F_OverTime")
|
||||
private Integer overTime;
|
||||
|
||||
/**
|
||||
* 加班日期
|
||||
*/
|
||||
@TableField("F_OverTimeDay")
|
||||
private Date overTimeDay;
|
||||
|
||||
/**
|
||||
* 总额
|
||||
*/
|
||||
@TableField("F_Total")
|
||||
private BigDecimal total;
|
||||
|
||||
/**
|
||||
* 单位 : 1 :小时 2: 天 (暂定只有天的劵)
|
||||
*/
|
||||
@TableField("F_Unit")
|
||||
private Integer unit;
|
||||
|
||||
/**
|
||||
* 过期时间
|
||||
*/
|
||||
@TableField("F_Expire_Time")
|
||||
private Date expireTime;
|
||||
|
||||
/**
|
||||
* 发放方式 0.自动发放 1.手动发放 2.审批发放(2.0字段失效)
|
||||
*/
|
||||
@TableField("F_Grant_Way")
|
||||
private Integer grantWay;
|
||||
|
||||
/**
|
||||
* 状态 0 正常 1 过期 2已停用
|
||||
*/
|
||||
@TableField("F_State")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 是否使用完 0未使用完 1使用完
|
||||
*/
|
||||
@TableField("F_Over")
|
||||
private Integer isOver;
|
||||
|
||||
/**
|
||||
* 发券类型(1兑换券 2抵扣券)
|
||||
*/
|
||||
@TableField("F_Paid")
|
||||
private Integer paid;
|
||||
|
||||
/**
|
||||
* 节日名称 多个使用@分割
|
||||
*/
|
||||
@TableField("F_FestivalStr")
|
||||
private String festivalStr;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@ToString
|
||||
@TableName("ftb_attendance_balance_use_record")
|
||||
@AllArgsConstructor
|
||||
@Builder
|
||||
public class AttendanceBalanceUseRecord extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 考勤余额记录id
|
||||
*/
|
||||
@TableField("F_Balance_Id")
|
||||
private String balanceId;
|
||||
|
||||
/**
|
||||
* 使用额度
|
||||
*/
|
||||
@TableField("F_Quota")
|
||||
private BigDecimal quota;
|
||||
|
||||
/**
|
||||
* 单位 : 1 :小时 2: 天
|
||||
*/
|
||||
@TableField("F_Unit")
|
||||
private Integer unit;
|
||||
|
||||
/**
|
||||
* 使用方式 0: 审批 ,1:排班
|
||||
*/
|
||||
@TableField("F_Use_Type")
|
||||
private Integer useType;
|
||||
|
||||
/**
|
||||
* 关联id和useType联合使用
|
||||
*/
|
||||
@TableField("F_Object_Id")
|
||||
private String objectId;
|
||||
|
||||
/**
|
||||
* 使用开始时间
|
||||
*/
|
||||
@TableField("F_Start_Time")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 使用结束时间
|
||||
*/
|
||||
@TableField("F_End_Time")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 锁定: 1锁定 2已消费
|
||||
*/
|
||||
@TableField("F_Lock")
|
||||
private Integer lock;
|
||||
}
|
||||
@@ -0,0 +1,153 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 考勤基础设置表
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-23
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_base_setting" )
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
public class AttendanceBaseSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 2176483918810305559L;
|
||||
|
||||
/**
|
||||
* 出勤换算比(n小时换算为一天)
|
||||
*/
|
||||
@TableField(value = "F_AttendanceRatio")
|
||||
private BigDecimal attendanceRatio;
|
||||
|
||||
/**
|
||||
* 加班是否发放余额(1不发 2天发 3小时发)
|
||||
*/
|
||||
@TableField(value = "F_OvertimeGrantType")
|
||||
private Integer overtimeGrantType;
|
||||
|
||||
/**
|
||||
* 加班换算比(n小时换算为一天)
|
||||
*/
|
||||
@TableField(value = "F_OvertimeRatio")
|
||||
private BigDecimal overtimeRatio;
|
||||
|
||||
/**
|
||||
* 内勤是否需要拍照 1:是, 0: 否)
|
||||
*/
|
||||
@TableField(value = "F_AttendancePhoto")
|
||||
private Integer attendancePhoto;
|
||||
|
||||
/**
|
||||
* 是否需要人脸识别 1:是 , 0:否
|
||||
*/
|
||||
@TableField(value = "F_Face")
|
||||
private Integer face;
|
||||
|
||||
/**
|
||||
* 是否允许晚走晚到(0-否 1-是)
|
||||
*/
|
||||
@TableField(value = "F_LateEarly")
|
||||
private Integer lateEarly;
|
||||
|
||||
/**
|
||||
* 晚走分钟数
|
||||
*/
|
||||
@TableField(value = "F_LateMinis")
|
||||
private Integer lateMinis;
|
||||
|
||||
/**
|
||||
* 晚到分钟数
|
||||
*/
|
||||
@TableField(value = "F_EarlyMinis")
|
||||
private Integer earlyMinis;
|
||||
|
||||
/**
|
||||
* 是否允许外勤打卡(1是 0否)
|
||||
*/
|
||||
@TableField(value = "F_FieldClockStatus")
|
||||
private Integer fieldClockStatus;
|
||||
|
||||
/**
|
||||
* 外勤是否需要审批(1: 是, 0: 否)
|
||||
*/
|
||||
@TableField(value = "F_ApproveEnable")
|
||||
private Integer approveEnable;
|
||||
|
||||
/**
|
||||
* 外勤是否需要拍照 1:是(默认), 0: 否)
|
||||
*/
|
||||
@TableField(value = "F_ShouldTakePhoto")
|
||||
private Integer shouldTakePhoto;
|
||||
|
||||
/**
|
||||
* 是否允许补卡(1是 0否)
|
||||
*/
|
||||
@TableField(value = "F_PatchClockStatus")
|
||||
private Integer patchClockStatus;
|
||||
|
||||
/**
|
||||
* 每月可以提交补卡次数
|
||||
*/
|
||||
@TableField(value = "F_PatchClockNumber")
|
||||
private Integer patchClockNumber;
|
||||
|
||||
/**
|
||||
* 补卡次数刷新日
|
||||
*/
|
||||
@TableField(value = "F_PatchRefreshDay")
|
||||
private Integer patchRefreshDay;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 是否启用(0不启用 1启用)
|
||||
*/
|
||||
@TableField(value = "F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 补卡周期天数
|
||||
*/
|
||||
@TableField(value = "F_PatchCycleDay")
|
||||
private Integer patchCycleDay;
|
||||
|
||||
/**
|
||||
* 补卡类型(1: 迟到, 2: 早退, 3: 缺卡, 4: 旷工) 例:1,2,3
|
||||
*/
|
||||
@TableField(value = "F_PatchType")
|
||||
private String patchType;
|
||||
|
||||
/**
|
||||
* 未排班是否可选择班次(0不可选 1可选)
|
||||
*/
|
||||
@TableField(value = "F_SelectRuleEnable")
|
||||
private Integer selectRuleEnable;
|
||||
|
||||
/**
|
||||
* 调整出勤是否需要审批(0不需要审批 1需要审批 2无法打卡)
|
||||
*/
|
||||
@TableField(value = "F_ModifyClockApplyEnable")
|
||||
private Integer modifyClockApplyEnable;
|
||||
|
||||
/**
|
||||
* 外勤人员选择类型:1.全部 2.指定人员(ftb_attendance_field_personnel表)
|
||||
*/
|
||||
@TableField(value = "F_FilePersonnelType")
|
||||
private Integer filePersonnelType;
|
||||
}
|
||||
@@ -0,0 +1,123 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤本配置表
|
||||
*
|
||||
* 设计说明:
|
||||
* 1. 考勤本配置独立管理,包含名称、使用范围、负责人等信息
|
||||
* 2. 考勤记录表通过F_BookId关联到本配置表
|
||||
* 3. 负责人和可排假期都支持多选,用逗号拼接存储
|
||||
*
|
||||
* @author Generated
|
||||
* @create 2026-04-15
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_book_config")
|
||||
public class AttendanceBookConfigEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 考勤本名称
|
||||
*/
|
||||
@TableField("F_BookName")
|
||||
private String bookName;
|
||||
|
||||
/**
|
||||
* 使用范围类型(0:全部 1:指定组织/成员)
|
||||
*/
|
||||
@TableField("F_ScopeType")
|
||||
private Integer scopeType;
|
||||
|
||||
/**
|
||||
* 考勤本负责人ID列表(多个用逗号拼接)
|
||||
*/
|
||||
@TableField("F_ManagerIds")
|
||||
private String managerIds;
|
||||
|
||||
/**
|
||||
* 可排假期范围类型(1:全部假期 2:指定假期)
|
||||
*/
|
||||
@TableField("F_HolidayScopeType")
|
||||
private Integer holidayScopeType;
|
||||
|
||||
/**
|
||||
* 可排假期ID列表(多个用逗号拼接)
|
||||
*/
|
||||
@TableField("F_HolidayIds")
|
||||
private String holidayIds;
|
||||
|
||||
/**
|
||||
* 启用状态(1:启用 0:禁用)
|
||||
*/
|
||||
@TableField("F_EnabledMark")
|
||||
private Integer enabledMark;
|
||||
|
||||
/**
|
||||
* 创建人ID
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 最后修改人ID
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 删除标识(0:未删除 1:已删除)
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除人ID
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,86 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤本操作日志表
|
||||
*
|
||||
* @author Generated
|
||||
* @create 2026-04-15
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_book_operation_log")
|
||||
public class AttendanceBookOperationLogEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 考勤本ID
|
||||
*/
|
||||
@TableField("F_BookId")
|
||||
private String bookId;
|
||||
|
||||
/**
|
||||
* 月份(格式:yyyy-MM)
|
||||
*/
|
||||
@TableField("F_Month")
|
||||
private String month;
|
||||
|
||||
/**
|
||||
* 考勤记录ID(关联ftb_attendance_book_record表)
|
||||
*/
|
||||
@TableField("F_RecordId")
|
||||
private String recordId;
|
||||
|
||||
/**
|
||||
* 员工ID
|
||||
*/
|
||||
@TableField("F_EmployeeId")
|
||||
private String employeeId;
|
||||
|
||||
/**
|
||||
* 操作内容描述
|
||||
*/
|
||||
@TableField("F_OperationContent")
|
||||
private String operationContent;
|
||||
|
||||
/**
|
||||
* 操作人ID
|
||||
*/
|
||||
@TableField("F_OperatorId")
|
||||
private String operatorId;
|
||||
|
||||
/**
|
||||
* 操作人姓名
|
||||
*/
|
||||
@TableField("F_OperatorName")
|
||||
private String operatorName;
|
||||
|
||||
/**
|
||||
* 操作时间
|
||||
*/
|
||||
@TableField("F_OperationTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date operationTime;
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤本记录表(轻量级手动标记)
|
||||
*
|
||||
* 设计原则:
|
||||
* 1. 考勤本信息通过F_BookId关联,去除删除标记(逻辑删除由业务控制)
|
||||
* 2. 一天两条记录(上班卡、下班卡),独立标记状态
|
||||
* 3. 纯状态标记,不记录具体打卡时间
|
||||
* 4. 无审批关联,无未标记状态
|
||||
* 5. 新增F_Month月份字段,便于按月查询和统计
|
||||
* 6. 新增F_LeaveType请假类型字段,记录请假具体类型
|
||||
* 7. 新增F_Remark备注字段,记录额外说明信息
|
||||
*
|
||||
* @author Generated
|
||||
* @create 2026-04-15
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_book_record")
|
||||
public class AttendanceBookRecordEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 考勤本ID
|
||||
*/
|
||||
@TableField("F_BookId")
|
||||
private String bookId;
|
||||
|
||||
/**
|
||||
* 考勤月份(格式:yyyy-MM)
|
||||
*/
|
||||
@TableField("F_Month")
|
||||
private String month;
|
||||
|
||||
/**
|
||||
* 员工ID
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 考勤日期
|
||||
*/
|
||||
@TableField("F_Day")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
private Date day;
|
||||
|
||||
/**
|
||||
* 时段类型(1:上班卡 2:下班卡)
|
||||
*/
|
||||
@TableField("F_PeriodType")
|
||||
private Integer periodType;
|
||||
|
||||
/**
|
||||
* 考勤状态(1:正常 2:迟到 3:早退 4:缺卡 5:请假 6:出差 7:外出 8:加班)
|
||||
* <p>insert/update 均使用 {@link FieldStrategy#IGNORED}:允许显式写入 NULL(清空状态),
|
||||
* 避免被全局默认的 NOT_NULL 策略过滤掉。</p>
|
||||
*/
|
||||
@TableField(value = "F_AttendanceStatus", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Integer attendanceStatus;
|
||||
|
||||
/**
|
||||
* 请假类型(如:事假、病假、年假、婚假、产假等)
|
||||
* <p>insert/update 均使用 {@link FieldStrategy#IGNORED}:允许显式写入 NULL(清空请假类型),
|
||||
* 避免被全局默认的 NOT_NULL 策略过滤掉。</p>
|
||||
*/
|
||||
@TableField(value = "F_LeaveType", updateStrategy = FieldStrategy.IGNORED)
|
||||
private String leaveType;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@TableField("F_Remark")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤组-打卡记录-外勤照片表
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-22
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_clockin_pic" )
|
||||
public class AttendanceClockInPic extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8654200286159016717L;
|
||||
|
||||
/**
|
||||
* 打卡id
|
||||
*/
|
||||
@TableField(value = "F_ClockInId")
|
||||
private String clockInId;
|
||||
|
||||
/**
|
||||
* 图片地址
|
||||
*/
|
||||
@TableField(value = "F_PicUrl")
|
||||
private String picUrl;
|
||||
/**
|
||||
* 审批ID
|
||||
*/
|
||||
@TableField(value = "F_ApprovalCode")
|
||||
private String approvalCode;
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 打卡结果实体类
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-09-18
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value ="ftb_attendance_clock_in_result")
|
||||
@ToString
|
||||
public class AttendanceClockInResult extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
/** 出勤规则id */
|
||||
@TableField(value = "F_RuleId")
|
||||
private String ruleId;
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
/** 打卡id */
|
||||
@TableField(value = "F_ClockInId")
|
||||
private String clockInId;
|
||||
/** 有效时间(工时计算时间) */
|
||||
@TableField(value = "F_EffectiveTime")
|
||||
private Date effectiveTime;
|
||||
/** 打卡类型(1: 上班, 2: 下班) */
|
||||
@TableField(value = "F_ClockInType")
|
||||
private Integer clockInType;
|
||||
/** 打卡状态(-2: 无需打卡, -1: 缺卡, 1: 正常, 2: 迟到, 3: 早退) */
|
||||
@TableField(value = "F_ClockInStatus")
|
||||
private Integer clockInStatus;
|
||||
/** 打卡种类(1: 普通打卡, 2: 外勤打卡) */
|
||||
@TableField(value = "F_ClockInKind")
|
||||
private Integer clockInKind;
|
||||
/** 是否补卡(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Repaired")
|
||||
private Integer repaired;
|
||||
/** 审批类型(1: 补卡, 2: 出勤变更, 3: 外勤) */
|
||||
@TableField(value = "F_ApplyType")
|
||||
private Integer applyType;
|
||||
/** 审批id */
|
||||
@TableField(value = "F_ApplyId")
|
||||
private String applyId;
|
||||
/** 是否缺勤(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Absence")
|
||||
private Integer absence;
|
||||
/** 打卡记录变更人 */
|
||||
@TableField(value = "F_AbsenceLeader")
|
||||
private String absenceLeader;
|
||||
/** 上次打卡记录变更人 */
|
||||
@TableField(value = "F_LastAbsenceLeader")
|
||||
private String lastAbsenceLeader;
|
||||
/** 休息时间(分钟) */
|
||||
@TableField(value = "F_RestMinute")
|
||||
private Integer restMinute;
|
||||
/** 异常时长(秒) */
|
||||
@TableField(value = "F_AbnormalMinute")
|
||||
private Integer abnormalMinute;
|
||||
/** 审批状态(0: 通过, 1: 审批中, 2: 拒绝) */
|
||||
@TableField(exist = false)
|
||||
private Integer approvalStatus;
|
||||
@TableField(exist = false)
|
||||
private String groupId;
|
||||
@TableField(exist = false)
|
||||
/** 旧结果id 用于重新匹配打卡记录时重新关联审批记录 */
|
||||
private String oldResultId;
|
||||
@TableField(exist = false)
|
||||
private Date day;
|
||||
@TableField(exist = false)
|
||||
private Integer attendanceType;
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @Description: 考勤云相册表
|
||||
* @Author: shiTou(他是小石头)
|
||||
* @Date: 2024-10-30 10:26
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value = "ftb_attendance_cloud_album")
|
||||
public class AttendanceCloudAlbum extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016717L;
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 相册类型(1-外勤打卡图片)
|
||||
*/
|
||||
@TableField(value = "T_Type")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 图片地址
|
||||
*/
|
||||
@TableField(value = "F_PicUrl")
|
||||
private String picUrl;
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤通用配置表
|
||||
* @author yanwenfu
|
||||
* @create 2025-09-17
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_common_setting" )
|
||||
public class AttendanceCommonSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 3820781190273568554L;
|
||||
|
||||
/** 配置组 */
|
||||
@TableField(value = "F_SettingGroup")
|
||||
private String settingGroup;
|
||||
|
||||
/** 配置key */
|
||||
@TableField(value = "F_SettingKey")
|
||||
private String settingKey;
|
||||
|
||||
/** 配置值 */
|
||||
@TableField(value = "F_SettingValue")
|
||||
private String settingValue;
|
||||
|
||||
public AttendanceCommonSetting(String id, String settingGroup, String settingKey, String settingValue, String userId) {
|
||||
super.setId(id);
|
||||
this.settingGroup = settingGroup;
|
||||
this.settingKey = settingKey;
|
||||
this.settingValue = settingValue;
|
||||
super.setCreatorUserId(userId);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,90 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤确认
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-11-07 09:33:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_confirm")
|
||||
public class AttendanceConfirm implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 确认年份
|
||||
*/
|
||||
@TableField("F_Year")
|
||||
private Integer year;
|
||||
/**
|
||||
* 确认月份(1~12)
|
||||
*/
|
||||
@TableField("F_Month")
|
||||
private Integer month;
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
/**
|
||||
* 确认状态(0-未查看 1-已查看未确认 2-已确认)
|
||||
*/
|
||||
@TableField("F_Status")
|
||||
private Integer status;
|
||||
/**
|
||||
* 逾期结果(0-未逾期 1-自动确认 2-不可确认)
|
||||
*/
|
||||
@TableField("F_SlippageResult")
|
||||
private Integer slippageResult;
|
||||
/**
|
||||
* 温馨提示是否关闭(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_TipsStatus")
|
||||
private Integer tipsStatus;
|
||||
/**
|
||||
* 开始确认时间
|
||||
*/
|
||||
@TableField("F_StartTime")
|
||||
private Date startTime;
|
||||
/**
|
||||
* 结束确认时间
|
||||
*/
|
||||
@TableField("F_EndTime")
|
||||
private Date endTime;
|
||||
/**
|
||||
* 确认详情数据
|
||||
*/
|
||||
@TableField("F_DetailData")
|
||||
private String detailDataJson;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreateTime")
|
||||
private Date createTime;
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@TableField("F_UpdateTime")
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,280 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 考勤确认详情
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-11-07 09:33:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_confirm_details")
|
||||
public class AttendanceConfirmDetails implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private String userId;
|
||||
/**
|
||||
* 确认单ID
|
||||
*/
|
||||
@TableField("F_ConfirmId")
|
||||
private String confirmId;
|
||||
/**
|
||||
* 存休天数
|
||||
*/
|
||||
@TableField("F_SaveRest")
|
||||
private BigDecimal saveRest;
|
||||
/**
|
||||
* 使用假时长(小时)
|
||||
*/
|
||||
@TableField("F_LeaveDurationHours")
|
||||
private BigDecimal leaveDurationHours;
|
||||
/**
|
||||
* 使用假时长(天)
|
||||
*/
|
||||
@TableField("F_LeaveDurationDays")
|
||||
private BigDecimal leaveDurationDays;
|
||||
/**
|
||||
* 应出勤天数(天)
|
||||
*/
|
||||
@TableField("F_ShouldAttendDays")
|
||||
private BigDecimal shouldAttendDays;
|
||||
/**
|
||||
* 应出勤工时(小时)
|
||||
*/
|
||||
@TableField("F_ShouldAttendHours")
|
||||
private BigDecimal shouldAttendHours;
|
||||
/**
|
||||
* 实际出勤天数(天)
|
||||
*/
|
||||
@TableField("F_ActualAttendDays")
|
||||
private BigDecimal actualAttendDays;
|
||||
/**
|
||||
* 实际出勤工时(小时)
|
||||
*/
|
||||
@TableField("F_ActualAttendHours")
|
||||
private BigDecimal actualAttendHours;
|
||||
/**
|
||||
* 有效出勤工时(小时)
|
||||
*/
|
||||
@TableField("F_EffectiveAttendDays")
|
||||
private BigDecimal effectiveAttendDays;
|
||||
/**
|
||||
* 有效出勤工时(小时)
|
||||
*/
|
||||
@TableField("F_EffectiveAttendHours")
|
||||
private BigDecimal effectiveAttendHours;
|
||||
/**
|
||||
* 迟到次数(次数)
|
||||
*/
|
||||
@TableField("F_LateTimes")
|
||||
private Integer lateTimes;
|
||||
/**
|
||||
* 迟到分钟数(分钟)
|
||||
*/
|
||||
@TableField("F_LateMinutes")
|
||||
private BigDecimal lateMinutes;
|
||||
/**
|
||||
* 早退次数(次数)
|
||||
*/
|
||||
@TableField("F_EarlyLeaveTimes")
|
||||
private Integer earlyLeaveTimes;
|
||||
/**
|
||||
* 早退分钟数(分钟)
|
||||
*/
|
||||
@TableField("F_EarlyLeaveMinutes")
|
||||
private BigDecimal earlyLeaveMinutes;
|
||||
/**
|
||||
* 缺卡次数(次数)
|
||||
*/
|
||||
@TableField("F_AbsenceCardTimes")
|
||||
private Integer absenceCardTimes;
|
||||
/**
|
||||
* 缺卡小时数(小时)
|
||||
*/
|
||||
@TableField("F_AbsenceCardHours")
|
||||
private BigDecimal absenceCardHours;
|
||||
/**
|
||||
* 缺勤次数(次数)
|
||||
*/
|
||||
@TableField("F_AbsenceTimes")
|
||||
private Integer absenceTimes;
|
||||
/**
|
||||
* 缺勤小时数(小时)
|
||||
*/
|
||||
@TableField("F_AbsenceHours")
|
||||
private BigDecimal absenceHours;
|
||||
/**
|
||||
* 加班时长(小时)
|
||||
*/
|
||||
@TableField("F_OvertimeHours")
|
||||
private BigDecimal overtimeHours;
|
||||
/**
|
||||
* 出差时长(天)
|
||||
*/
|
||||
@TableField("F_BusDays")
|
||||
private BigDecimal busDays;
|
||||
/**
|
||||
* 外出时长(小时)
|
||||
*/
|
||||
@TableField("F_OutHours")
|
||||
private BigDecimal outHours;
|
||||
/**
|
||||
* 外出时长(天)
|
||||
*/
|
||||
@TableField("F_OutDays")
|
||||
private BigDecimal outDays;
|
||||
/**
|
||||
* 请假时长(小时)
|
||||
*/
|
||||
@TableField("F_LeaveHours")
|
||||
private BigDecimal leaveHours;
|
||||
/**
|
||||
* 请假时长(天)
|
||||
*/
|
||||
@TableField("F_LeaveDays")
|
||||
private BigDecimal leaveDays;
|
||||
/**
|
||||
* 未抵扣请假时长(小时)
|
||||
*/
|
||||
@TableField("F_UnDeductedLeaveHours")
|
||||
private BigDecimal unDeductedLeaveHours;
|
||||
/**
|
||||
* 未抵扣请假时长(天)
|
||||
*/
|
||||
@TableField("F_UnDeductedLeaveDays")
|
||||
private BigDecimal unDeductedLeaveDays;
|
||||
/**
|
||||
* 事假时长(小时)
|
||||
*/
|
||||
@TableField("F_ThingLeaveHours")
|
||||
private BigDecimal thingLeaveHours;
|
||||
/**
|
||||
* 事假时长(天)
|
||||
*/
|
||||
@TableField("F_ThingLeaveDays")
|
||||
private BigDecimal thingLeaveDays;
|
||||
/**
|
||||
* 病假时长(小时)
|
||||
*/
|
||||
@TableField("F_IllnessLeaveHours")
|
||||
private BigDecimal illnessLeaveHours;
|
||||
/**
|
||||
* 病假时长(天)
|
||||
*/
|
||||
@TableField("F_IllnessLeaveDays")
|
||||
private BigDecimal illnessLeaveDays;
|
||||
/**
|
||||
* 工伤假时长(小时)
|
||||
*/
|
||||
@TableField("F_InjuryLeaveHours")
|
||||
private BigDecimal injuryLeaveHours;
|
||||
/**
|
||||
* 工伤假时长(天)
|
||||
*/
|
||||
@TableField("F_InjuryLeaveDays")
|
||||
private BigDecimal injuryLeaveDays;
|
||||
/**
|
||||
* 年假时长(小时)
|
||||
*/
|
||||
@TableField("F_AnnualLeaveHours")
|
||||
private BigDecimal annualLeaveHours;
|
||||
/**
|
||||
* 年假时长(天)
|
||||
*/
|
||||
@TableField("F_AnnualLeaveDays")
|
||||
private BigDecimal annualLeaveDays;
|
||||
/**
|
||||
* 婚假时长(小时)
|
||||
*/
|
||||
@TableField("F_MarriageLeaveHours")
|
||||
private BigDecimal marriageLeaveHours;
|
||||
/**
|
||||
* 婚假时长(天)
|
||||
*/
|
||||
@TableField("F_MarriageLeaveDays")
|
||||
private BigDecimal marriageLeaveDays;
|
||||
/**
|
||||
* 产假时长(小时)
|
||||
*/
|
||||
@TableField("F_MaternityLeaveHours")
|
||||
private BigDecimal maternityLeaveHours;
|
||||
/**
|
||||
* 产假时长(天)
|
||||
*/
|
||||
@TableField("F_MaternityLeaveDays")
|
||||
private BigDecimal maternityLeaveDays;
|
||||
/**
|
||||
* 陪产假时长(小时)
|
||||
*/
|
||||
@TableField("F_PaternityLeaveHours")
|
||||
private BigDecimal paternityLeaveHours;
|
||||
/**
|
||||
* 陪产假时长(天)
|
||||
*/
|
||||
@TableField("F_PaternityLeaveDays")
|
||||
private BigDecimal paternityLeaveDays;
|
||||
/**
|
||||
* 丧假时长(小时)
|
||||
*/
|
||||
@TableField("F_FuneralLeaveHours")
|
||||
private BigDecimal funeralLeaveHours;
|
||||
/**
|
||||
* 丧假时长(天)
|
||||
*/
|
||||
@TableField("F_FuneralLeaveDays")
|
||||
private BigDecimal funeralLeaveDays;
|
||||
/**
|
||||
* 探亲假时长(小时)
|
||||
*/
|
||||
@TableField("F_HomeLeaveHours")
|
||||
private BigDecimal homeLeaveHours;
|
||||
/**
|
||||
* 探亲假时长(天)
|
||||
*/
|
||||
@TableField("F_HomeLeaveDays")
|
||||
private BigDecimal homeLeaveDays;
|
||||
/**
|
||||
* 小儿照护假时长(小时)
|
||||
*/
|
||||
@TableField("F_ChildcareLeaveHours")
|
||||
private BigDecimal childcareLeaveHours;
|
||||
/**
|
||||
* 小儿照护假时长(天)
|
||||
*/
|
||||
@TableField("F_ChildcareLeaveDays")
|
||||
private BigDecimal childcareLeaveDays;
|
||||
/**
|
||||
* 其他假时长(小时)
|
||||
*/
|
||||
@TableField("F_OtherLeaveHours")
|
||||
private BigDecimal otherLeaveHours;
|
||||
/**
|
||||
* 其他假时长(天)
|
||||
*/
|
||||
@TableField("F_OtherLeaveDays")
|
||||
private BigDecimal otherLeaveDays;
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤确认设置
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-11-07 09:33:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_confirm_setting")
|
||||
public class AttendanceConfirmSetting implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 确认月份(1-当前月份 2-上个月)
|
||||
*/
|
||||
@TableField("F_ConfirmMonth")
|
||||
private Integer confirmMonth;
|
||||
/**
|
||||
* 每月几号允许确认
|
||||
*/
|
||||
@TableField("F_AllowConfirm")
|
||||
private Integer allowConfirm;
|
||||
/**
|
||||
* 开始确认后几天内可确认
|
||||
*/
|
||||
@TableField("F_ConfirmDuration")
|
||||
private Integer confirmDuration;
|
||||
/**
|
||||
* 逾期结果(1-自动确认 2-不可确认)
|
||||
*/
|
||||
@TableField("F_SlippageResult")
|
||||
private Integer slippageResult;
|
||||
/**
|
||||
* 是否下次应用数据(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_NextData")
|
||||
private Integer nextData;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,387 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤日度统计表
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-06-24 09:33:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_day_statistics")
|
||||
public class AttendanceDayStatistics implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@TableField("F_Date")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
private Date date;
|
||||
/**
|
||||
* 出勤换算比(n小时换算为一天)
|
||||
*/
|
||||
@TableField("F_AttendanceRatio")
|
||||
private BigDecimal attendanceRatio;
|
||||
/**
|
||||
* 应出勤天数
|
||||
*/
|
||||
@TableField("F_ShouldAttendDays")
|
||||
private BigDecimal shouldAttendDays;
|
||||
/**
|
||||
* 应出勤小时数
|
||||
*/
|
||||
@TableField("F_ShouldAttendHours")
|
||||
private BigDecimal shouldAttendHours;
|
||||
/**
|
||||
* 应计薪小时数
|
||||
*/
|
||||
@TableField("F_ShouldAttendPayrollHours")
|
||||
private BigDecimal shouldAttendPayrollHours;
|
||||
/**
|
||||
* 有效出勤天数
|
||||
*/
|
||||
@TableField("F_EffectiveAttendDays")
|
||||
private BigDecimal effectiveAttendDays;
|
||||
/**
|
||||
* 有效出勤小时数
|
||||
*/
|
||||
@TableField("F_EffectiveAttendHours")
|
||||
private BigDecimal effectiveAttendHours;
|
||||
/**
|
||||
* 有效出勤计薪小时数
|
||||
*/
|
||||
@TableField("F_EffectiveAttendPayrollHours")
|
||||
private BigDecimal effectiveAttendPayrollHours;
|
||||
/**
|
||||
* 实际出勤天数
|
||||
*/
|
||||
@TableField("F_ActualAttendDays")
|
||||
private BigDecimal actualAttendDays;
|
||||
/**
|
||||
* 实际出勤小时数
|
||||
*/
|
||||
@TableField("F_ActualAttendHours")
|
||||
private BigDecimal actualAttendHours;
|
||||
/**
|
||||
* 实际出勤计薪小时数
|
||||
*/
|
||||
@TableField("F_ActualAttendPayrollHours")
|
||||
private BigDecimal actualAttendPayrollHours;
|
||||
/**
|
||||
* 迟到次数
|
||||
*/
|
||||
@TableField("F_LateTimes")
|
||||
private Integer lateTimes;
|
||||
/**
|
||||
* 迟到分钟数
|
||||
*/
|
||||
@TableField("F_LateMinutes")
|
||||
private BigDecimal lateMinutes;
|
||||
/**
|
||||
* 早退次数
|
||||
*/
|
||||
@TableField("F_EarlyLeaveTimes")
|
||||
private Integer earlyLeaveTimes;
|
||||
/**
|
||||
* 早退分钟数
|
||||
*/
|
||||
@TableField("F_EarlyLeaveMinutes")
|
||||
private BigDecimal earlyLeaveMinutes;
|
||||
/**
|
||||
* 缺卡次数
|
||||
*/
|
||||
@TableField("F_AbsenceCardTimes")
|
||||
private Integer absenceCardTimes;
|
||||
/**
|
||||
* 缺卡天数
|
||||
*/
|
||||
@TableField("F_AbsenceCardDays")
|
||||
private BigDecimal absenceCardDays;
|
||||
/**
|
||||
* 缺卡小时数
|
||||
*/
|
||||
@TableField("F_AbsenceCardHours")
|
||||
private BigDecimal absenceCardHours;
|
||||
/**
|
||||
* 缺卡计薪小时数
|
||||
*/
|
||||
@TableField("F_AbsenceCardPayrollHours")
|
||||
private BigDecimal absenceCardPayrollHours;
|
||||
/**
|
||||
* 旷工次数
|
||||
*/
|
||||
@TableField("F_AbsenceTimes")
|
||||
private Integer absenceTimes;
|
||||
/**
|
||||
* 旷工天数
|
||||
*/
|
||||
@TableField("F_AbsenceDays")
|
||||
private BigDecimal absenceDays;
|
||||
/**
|
||||
* 旷工小时数
|
||||
*/
|
||||
@TableField("F_AbsenceHours")
|
||||
private BigDecimal absenceHours;
|
||||
/**
|
||||
* 旷工计薪小时数
|
||||
*/
|
||||
@TableField("F_AbsencePayrollHours")
|
||||
private BigDecimal absencePayrollHours;
|
||||
/**
|
||||
* 补卡次数
|
||||
*/
|
||||
@TableField("F_MakeUpCardTimes")
|
||||
private Integer makeUpCardTimes;
|
||||
/**
|
||||
* 外勤次数
|
||||
*/
|
||||
@TableField("F_OutworkTimes")
|
||||
private Integer outworkTimes;
|
||||
/**
|
||||
* 外勤天数
|
||||
*/
|
||||
@TableField("F_OutworkDays")
|
||||
private BigDecimal outworkDays;
|
||||
/**
|
||||
* 外勤小时数
|
||||
*/
|
||||
@TableField("F_OutworkHours")
|
||||
private BigDecimal outworkHours;
|
||||
/**
|
||||
* 外勤计薪小时数
|
||||
*/
|
||||
@TableField("F_OutworkPayrollHours")
|
||||
private BigDecimal outworkPayrollHours;
|
||||
/**
|
||||
* 加班次数
|
||||
*/
|
||||
@TableField("F_OvertimeTimes")
|
||||
private Integer overtimeTimes;
|
||||
/**
|
||||
* 加班小时数
|
||||
*/
|
||||
@TableField("F_OvertimeHours")
|
||||
private BigDecimal overtimeHours;
|
||||
/**
|
||||
* 加班天数
|
||||
*/
|
||||
@TableField("F_OvertimeDays")
|
||||
private BigDecimal overtimeDays;
|
||||
/**
|
||||
* 工作日加班次数
|
||||
*/
|
||||
@TableField("F_WeekdayOvertimeTimes")
|
||||
private Integer weekdayOvertimeTimes;
|
||||
/**
|
||||
* 工作日加班天数
|
||||
*/
|
||||
@TableField("F_WeekdayOvertimeDays")
|
||||
private BigDecimal weekdayOvertimeDays;
|
||||
/**
|
||||
* 工作日加班小时数
|
||||
*/
|
||||
@TableField("F_WeekdayOvertimeHours")
|
||||
private BigDecimal weekdayOvertimeHours;
|
||||
/**
|
||||
* 节假日加班次数
|
||||
*/
|
||||
@TableField("F_HolidaysOvertimeTimes")
|
||||
private Integer holidaysOvertimeTimes;
|
||||
/**
|
||||
* 节假日加班天数
|
||||
*/
|
||||
@TableField("F_HolidaysOvertimeDays")
|
||||
private BigDecimal holidaysOvertimeDays;
|
||||
/**
|
||||
* 节假日加班小时数
|
||||
*/
|
||||
@TableField("F_HolidaysOvertimeHours")
|
||||
private BigDecimal holidaysOvertimeHours;
|
||||
/**
|
||||
* 公休日加班次数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysOvertimeTimes")
|
||||
private Integer publicHolidaysOvertimeTimes;
|
||||
/**
|
||||
* 公休日加班天数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysOvertimeDays")
|
||||
private BigDecimal publicHolidaysOvertimeDays;
|
||||
/**
|
||||
* 公休日加班小时数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysOvertimeHours")
|
||||
private BigDecimal publicHolidaysOvertimeHours;
|
||||
/**
|
||||
* 公休天数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysDays")
|
||||
private BigDecimal publicHolidaysDays;
|
||||
/**
|
||||
* 公休小时数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysHours")
|
||||
private BigDecimal publicHolidaysHours;
|
||||
/**
|
||||
* 公休计薪小时数
|
||||
*/
|
||||
@TableField("F_PublicHolidaysPayrollHours")
|
||||
private BigDecimal publicHolidaysPayrollHours;
|
||||
/**
|
||||
* 调休次数
|
||||
*/
|
||||
@TableField("F_CompensationTimes")
|
||||
private Integer compensationTimes;
|
||||
/**
|
||||
* 调休天数
|
||||
*/
|
||||
@TableField("F_CompensationDays")
|
||||
private BigDecimal compensationDays;
|
||||
/**
|
||||
* 调休小时数
|
||||
*/
|
||||
@TableField("F_CompensationHours")
|
||||
private BigDecimal compensationHours;
|
||||
/**
|
||||
* 调休计薪小时数
|
||||
*/
|
||||
@TableField("F_CompensationPayrollHours")
|
||||
private BigDecimal compensationPayrollHours;
|
||||
/**
|
||||
* 出差批次号
|
||||
*/
|
||||
@TableField("F_BusBatchNumber")
|
||||
private String busBatchNumber;
|
||||
/**
|
||||
* 出差小时数
|
||||
*/
|
||||
@TableField("F_BusHours")
|
||||
private BigDecimal busHours;
|
||||
/**
|
||||
* 出差天数
|
||||
*/
|
||||
@TableField("F_BusDays")
|
||||
private BigDecimal busDays;
|
||||
/**
|
||||
* 外出批次号
|
||||
*/
|
||||
@TableField("F_OutBatchNumber")
|
||||
private String outBatchNumber;
|
||||
/**
|
||||
* 外出小时数
|
||||
*/
|
||||
@TableField("F_OutHours")
|
||||
private BigDecimal outHours;
|
||||
/**
|
||||
* 外出天数
|
||||
*/
|
||||
@TableField("F_OutDays")
|
||||
private BigDecimal outDays;
|
||||
/**
|
||||
* 请假批次号
|
||||
*/
|
||||
@TableField("F_LeaveBatchNumber")
|
||||
private String leaveBatchNumber;
|
||||
/**
|
||||
* 请假天数
|
||||
*/
|
||||
@TableField("F_LeaveDays")
|
||||
private BigDecimal leaveDays;
|
||||
/**
|
||||
* 请假小时数
|
||||
*/
|
||||
@TableField("F_LeaveHours")
|
||||
private BigDecimal leaveHours;
|
||||
/**
|
||||
* 请假计薪小时数
|
||||
*/
|
||||
@TableField("F_LeavePayrollHours")
|
||||
private BigDecimal leavePayrollHours;
|
||||
/**
|
||||
* 班次json
|
||||
*/
|
||||
@TableField("F_ShiftsJson")
|
||||
private String shiftsJson;
|
||||
/**
|
||||
* 是否借调(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_SelfGroup")
|
||||
private Integer selfGroup;
|
||||
/**
|
||||
* 是否排班(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_IsScheduling")
|
||||
private Integer isScheduling;
|
||||
/**
|
||||
* 是否需要打卡(0-否 1-是)
|
||||
*/
|
||||
@TableField("F_IsClocked")
|
||||
private Integer isClocked;
|
||||
/**
|
||||
* 是否封账(0-未封账 1-已封账)
|
||||
*/
|
||||
@TableField("F_Seal")
|
||||
private Integer seal;
|
||||
/**
|
||||
* 人员加入考勤组时间
|
||||
*/
|
||||
@TableField("F_JoinTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private Date joinTime;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private Date lastModifyTime;
|
||||
/**
|
||||
* 提醒时间
|
||||
*/
|
||||
@TableField("F_RemindTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
|
||||
private Date remindTime;
|
||||
/**
|
||||
* 自定义假期Json
|
||||
*/
|
||||
@TableField("F_CustomLeaveJson")
|
||||
private String customLeaveJson;
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 加班余额记录[不存休,仅记录]
|
||||
* @author yanwenfu
|
||||
* @create 2025-10-03
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_enable_balance" )
|
||||
public class AttendanceEnableBalance extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1115377435113592131L;
|
||||
|
||||
/** 考勤组 */
|
||||
@TableField(value = "F_RuleId")
|
||||
private String ruleId;
|
||||
|
||||
/** 加班类型: 1=工作日, 2=公休日, 3=节假日 */
|
||||
@TableField(value = "F_OvertimeType")
|
||||
private Integer overtimeType;
|
||||
|
||||
/** 用户 */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 日期 */
|
||||
@TableField(value = "F_Day")
|
||||
private Date day;
|
||||
|
||||
/** 余额(小时) */
|
||||
@TableField(value = "F_Balance")
|
||||
private BigDecimal balance;
|
||||
|
||||
/**
|
||||
* 节日名称 多个使用@分割
|
||||
*/
|
||||
@TableField("F_FestivalStr")
|
||||
private String festivalStr;
|
||||
|
||||
@Builder
|
||||
public AttendanceEnableBalance(String id, String ruleId, Integer overtimeType, String userId, Date day, BigDecimal balance, String festivalStr) {
|
||||
super.setId(id);
|
||||
this.ruleId = ruleId;
|
||||
this.overtimeType = overtimeType;
|
||||
this.userId = userId;
|
||||
this.day = day;
|
||||
this.balance = balance;
|
||||
this.festivalStr = festivalStr;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
* @description 考勤节日表
|
||||
* @version V2.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_festival_rules")
|
||||
public class AttendanceFestivalRules extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8654200286159016797L;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 开始日期
|
||||
*/
|
||||
@TableField("F_StartDate")
|
||||
private Date startDate;
|
||||
|
||||
/**
|
||||
* 结束日期
|
||||
*/
|
||||
@TableField("F_EndDate")
|
||||
private Date endDate;
|
||||
|
||||
/**
|
||||
* 节日日期
|
||||
*/
|
||||
@TableField("F_FestivalDate")
|
||||
private String festivalDate;
|
||||
|
||||
/**
|
||||
* 调休上班日期
|
||||
*/
|
||||
@TableField("F_CompensateInDate")
|
||||
private String compensateInDate;
|
||||
|
||||
/**
|
||||
* 每年同日自动更新(开启时元旦更新)1:是 0:否
|
||||
*/
|
||||
@TableField("F_UpdateState")
|
||||
private Integer updateState;
|
||||
|
||||
/**
|
||||
* 适配范围:0.全部1.指定组织/成员
|
||||
*/
|
||||
@TableField("F_ScopeOfAdaptation")
|
||||
private Integer scopeOfAdaptation;
|
||||
|
||||
|
||||
/**
|
||||
* 是否自动排班 0.否 1.是
|
||||
*/
|
||||
@TableField("F_AutoScheduling")
|
||||
private Integer autoScheduling;
|
||||
|
||||
|
||||
/**
|
||||
* 状态 0 未启用 1 启用
|
||||
*/
|
||||
@TableField("F_State")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 年份
|
||||
*/
|
||||
@TableField("F_Year")
|
||||
private String year;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,189 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤配置-节日配置
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-29
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_festival_setting")
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class AttendanceFestivalSettingEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 开始日期
|
||||
*/
|
||||
@TableField("F_StartDate")
|
||||
private Date startDate;
|
||||
|
||||
/**
|
||||
* 结束日期
|
||||
*/
|
||||
@TableField("F_EndDate")
|
||||
private Date endDate;
|
||||
|
||||
/**
|
||||
* 节日日期
|
||||
*/
|
||||
@TableField("F_FestivalDate")
|
||||
private String festivalDate;
|
||||
|
||||
/**
|
||||
* 调休上班日期
|
||||
*/
|
||||
@TableField("F_CompensateInDate")
|
||||
private String compensateInDate;
|
||||
|
||||
/**
|
||||
* 时长
|
||||
*/
|
||||
@TableField("F_Day")
|
||||
private Integer day;
|
||||
|
||||
/**
|
||||
* 发放方式(0自动排班 1自动充值 2手动充值)
|
||||
*/
|
||||
@TableField("F_DistributeType")
|
||||
private Integer distributeType;
|
||||
|
||||
/**
|
||||
* 是否带薪(1带薪 2非带薪)
|
||||
*/
|
||||
@TableField("F_PaidSalaryEnable")
|
||||
private Integer paidSalaryEnable;
|
||||
|
||||
/**
|
||||
* 发放日期方式(1每月 2每年指定日期)
|
||||
*/
|
||||
@TableField("F_GiveType")
|
||||
private Integer giveType;
|
||||
|
||||
/**
|
||||
* 发放日期-月
|
||||
*/
|
||||
@TableField("F_GiveMonth")
|
||||
private Integer giveMonth;
|
||||
|
||||
/**
|
||||
* 发放日期-日
|
||||
*/
|
||||
@TableField("F_GiveDay")
|
||||
private Integer giveDay;
|
||||
|
||||
/**
|
||||
* 过期方式(1过期天数 2每年指定日期 3永久)
|
||||
*/
|
||||
@TableField("F_ExpiresType")
|
||||
private Integer expiresType;
|
||||
|
||||
/**
|
||||
* 过期设置-过期天数
|
||||
*/
|
||||
@TableField("F_ExpiresDayNumber")
|
||||
private Integer expiresDayNumber;
|
||||
|
||||
/**
|
||||
* 过期设置-月
|
||||
*/
|
||||
@TableField("F_ExpiresMonth")
|
||||
private Integer expiresMonth;
|
||||
|
||||
/**
|
||||
* 过期设置-日
|
||||
*/
|
||||
@TableField("F_ExpiresDay")
|
||||
private Integer expiresDay;
|
||||
|
||||
/**
|
||||
* 状态(1启用 2停用)
|
||||
*/
|
||||
@TableField("F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 是否法定(1法定 2非法定)
|
||||
*/
|
||||
@TableField("F_StatutoryEnable")
|
||||
private Integer statutoryEnable;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤组允许外勤人员名单
|
||||
* @author yanwenfu
|
||||
* @create 2025-02-17
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_field_personnel" )
|
||||
public class AttendanceFieldPersonnel extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1190925471047105327L;
|
||||
|
||||
/** 主键Id */
|
||||
@TableField(value = "F_Id")
|
||||
private String id;
|
||||
|
||||
/** 考勤组id */
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/** 可以外勤的用户Id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 固定班关联表
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2024-05-10
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Builder
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_fixed_class")
|
||||
public class AttendanceFixedClassEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 考勤配置id
|
||||
*/
|
||||
@TableField("F_SettingId")
|
||||
private String settingId;
|
||||
/**
|
||||
* 考勤配置id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 周几(1-7)
|
||||
*/
|
||||
@TableField("F_Num")
|
||||
private Integer num;
|
||||
|
||||
/**
|
||||
* 班次表Id
|
||||
*/
|
||||
@TableField(value = "F_ShiftNameId",updateStrategy = FieldStrategy.IGNORED)
|
||||
private String shiftNameId;
|
||||
|
||||
/**
|
||||
* 类型:1:组合班 0:单独班
|
||||
*/
|
||||
@TableField("F_ShiftType")
|
||||
private Integer shiftType;
|
||||
|
||||
/**
|
||||
* 排序(上下顺序)
|
||||
*/
|
||||
@TableField("F_Sort")
|
||||
private Integer sort;
|
||||
|
||||
/**
|
||||
* 类型:1 休 2 正常排班
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.sql.Timestamp;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤配置-假日设置
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-29
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_holiday_setting")
|
||||
public class AttendanceHolidaySettingEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 假期名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 计算时长方式(1指定天数 2成员工龄司龄)
|
||||
*/
|
||||
@TableField("F_DayType")
|
||||
private Integer dayType;
|
||||
|
||||
/**
|
||||
* 时长(当计算方式为成员工龄时则为基础天数)
|
||||
*/
|
||||
@TableField("F_DayNumber")
|
||||
private Integer dayNumber;
|
||||
|
||||
/**
|
||||
* 工龄倍数
|
||||
*/
|
||||
@TableField("F_YoeMultiple")
|
||||
private Integer yoeMultiple;
|
||||
|
||||
/**
|
||||
* 司龄倍数
|
||||
*/
|
||||
@TableField("F_YosMultiple")
|
||||
private Integer yosMultiple;
|
||||
|
||||
/**
|
||||
* 发放方式(1自动充值 2手动充值)
|
||||
*/
|
||||
@TableField("F_GiveType")
|
||||
private Integer giveType;
|
||||
|
||||
/**
|
||||
* 是否带薪(1带薪 2非带薪)
|
||||
*/
|
||||
@TableField("F_PaidSalaryEnable")
|
||||
private Integer paidSalaryEnable;
|
||||
|
||||
/**
|
||||
* 发放日期方式(1每月 2每年指定日期,3成员生日 4成员入职日期)
|
||||
*/
|
||||
@TableField("F_GiveDateType")
|
||||
private Integer giveDateType;
|
||||
|
||||
/**
|
||||
* 发放日期-月
|
||||
*/
|
||||
@TableField("F_GiveDateMonth")
|
||||
private Integer giveDateMonth;
|
||||
|
||||
/**
|
||||
* 发放日期-日
|
||||
*/
|
||||
@TableField("F_GiveDateDay")
|
||||
private Integer giveDateDay;
|
||||
|
||||
/**
|
||||
* 过期方式(1过期天数 2每年指定日期 3永久)
|
||||
*/
|
||||
@TableField("F_ExpiresType")
|
||||
private Integer expiresType;
|
||||
|
||||
/**
|
||||
* 过期设置-过期天数
|
||||
*/
|
||||
@TableField("F_ExpiresDayNumber")
|
||||
private Integer expiresDayNumber;
|
||||
|
||||
/**
|
||||
* 过期设置-月
|
||||
*/
|
||||
@TableField("F_ExpiresMonth")
|
||||
private Integer expiresMonth;
|
||||
|
||||
/**
|
||||
* 过期设置-日
|
||||
*/
|
||||
@TableField("F_ExpiresDay")
|
||||
private Integer expiresDay;
|
||||
|
||||
/**
|
||||
* 状态(1启用 2停用)
|
||||
*/
|
||||
@TableField("F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 晚走晚到记录实体类
|
||||
* 用于记录员工晚走晚到的考勤情况
|
||||
*
|
||||
* @author lingma
|
||||
* @create 2025-09-22
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
public class AttendanceLateInLateOut implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 开始时间(下班时间)
|
||||
*/
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间(下次上班时间)
|
||||
*/
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 晚到分钟数
|
||||
*/
|
||||
private Integer lateMinis;
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
* @description 考勤假期发放设置表
|
||||
* @version V2.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_leave_grant_setting")
|
||||
public class AttendanceLeaveGrantSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016797L;
|
||||
|
||||
/**
|
||||
* 假期规则表主键Id
|
||||
*/
|
||||
@TableField("F_LeaveRulesId")
|
||||
private String leaveRulesId;
|
||||
|
||||
/**
|
||||
* 2.0假期类型Id
|
||||
*/
|
||||
@TableField("F_LeaveTypeId")
|
||||
private String leaveTypeId;
|
||||
|
||||
/**
|
||||
* 发放方式:0.自动发放 1.手动发放
|
||||
*/
|
||||
@TableField("F_GrantType")
|
||||
private Integer grantType;
|
||||
|
||||
/**
|
||||
* 发放方式:1.每月发放2.每年指定日期发放3.每年成员生日发放4.每年成员入职日期发放
|
||||
*/
|
||||
@TableField("F_GrantTimeType")
|
||||
private Integer grantTimeType;
|
||||
|
||||
/**
|
||||
* F_GrantTimeType=1使用,每月发放的日期
|
||||
*/
|
||||
@TableField("F_MonthDay")
|
||||
private Integer monthDay;
|
||||
|
||||
/**
|
||||
* F_GrantTimeType=2使用,每年指定日期发放 示列:1-1
|
||||
*/
|
||||
@TableField("F_SpecifyDay")
|
||||
private String specifyDay;
|
||||
|
||||
/**
|
||||
* 发放时长类型:1.指定天数 、2.成员司龄
|
||||
*/
|
||||
@TableField("F_GrantDurationType")
|
||||
private Integer grantDurationType;
|
||||
|
||||
/**
|
||||
* F_GrantDurationType=1,指定天数
|
||||
*/
|
||||
@TableField("F_SpecifyDayNum")
|
||||
private Integer specifyDayNum;
|
||||
|
||||
/**
|
||||
* F_GrantDurationType=2/3,对应的公式json
|
||||
*/
|
||||
@TableField("F_FormulaJson")
|
||||
private String formulaJson;
|
||||
|
||||
/**
|
||||
* 过期类型:0.永久1.自发放1月2.自发放1年
|
||||
*/
|
||||
@TableField("F_ExpiredType")
|
||||
private Integer expiredType;
|
||||
|
||||
/**
|
||||
* F_ExpiredType=1指定日期1月传30 F_ExpiredType=2一年传365
|
||||
*/
|
||||
@TableField("F_ExpiredDayNum")
|
||||
private Integer expiredDayNum;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
* @description 考勤假期规则表
|
||||
* @version V2.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_leave_rules")
|
||||
public class AttendanceLeaveRules extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016798L;
|
||||
/**
|
||||
* 假期名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 2.0假期类型Id
|
||||
*/
|
||||
@TableField("F_LeaveTypeId")
|
||||
private String leaveTypeId;
|
||||
|
||||
/**
|
||||
* 单位 : 1 :小时 2: 天 3:半天
|
||||
*/
|
||||
@TableField("F_Unit")
|
||||
private Integer unit;
|
||||
|
||||
/**
|
||||
* 类型编码 0 :其他 1:事假 2:病假 3:工伤假 4:年假 5:婚假 6:产假 7:陪产假 8:丧假 9:探亲假 10:小儿照护假
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 单次最大时长(天)
|
||||
*/
|
||||
@TableField("F_Duration")
|
||||
private Integer duration;
|
||||
|
||||
/**
|
||||
* 是否发放余额 0:不发放 1:发放余额
|
||||
*/
|
||||
@TableField("F_DistributeBalance")
|
||||
private Integer distributeBalance;
|
||||
|
||||
/**
|
||||
* 存休抵扣:0.不能使用1.可以使用
|
||||
*/
|
||||
@TableField("F_RetirementLeave")
|
||||
private Integer retirementLeave;
|
||||
|
||||
|
||||
/**
|
||||
* 适配范围:0.全部1.指定组织/成员 -1 表示被其他规则挤后被其他规则占用
|
||||
*/
|
||||
@TableField("F_ScopeOfAdaptation")
|
||||
private Integer scopeOfAdaptation;
|
||||
|
||||
/**
|
||||
* 状态 0 未启用 1 启用
|
||||
*/
|
||||
@TableField("F_State")
|
||||
private Integer state;
|
||||
|
||||
/**
|
||||
* 内置 0:非内置 1:内置
|
||||
*/
|
||||
@TableField("F_BuiltIn")
|
||||
private Integer builtIn;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_leave_type")
|
||||
public class AttendanceLeaveType extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016999L;
|
||||
/**
|
||||
* 假期类型名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 内置 0:非内置 1:内置
|
||||
*/
|
||||
@TableField("F_BuiltIn")
|
||||
private Integer builtIn;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,102 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import jnpf.util.ConstantUtil;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤组-考勤点配置表
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-23
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value = "ftb_attendance_location_setting")
|
||||
public class AttendanceLocationSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 544929660727500368L;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 打卡方式(1GPS打卡 2WIFI打卡 3考勤机打卡)
|
||||
*/
|
||||
@TableField(value = "F_Type")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 考勤点名称
|
||||
*/
|
||||
@TableField(value = "F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 考勤地址/MAC地址/考勤机ID
|
||||
*/
|
||||
@TableField(value = "F_Address")
|
||||
private String address;
|
||||
|
||||
/**
|
||||
* 厂商code(考勤机使用)
|
||||
*/
|
||||
@TableField(value = "F_FactoryCode")
|
||||
private String factoryCode;
|
||||
|
||||
/**
|
||||
* 范围(米)
|
||||
*/
|
||||
@TableField(value = "F_Range")
|
||||
private Integer clockRange;
|
||||
|
||||
/**
|
||||
* 是否启用
|
||||
*/
|
||||
@TableField(value = "F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 经度
|
||||
*/
|
||||
@TableField(value = "F_Lng")
|
||||
private String lng;
|
||||
|
||||
/**
|
||||
* 维度
|
||||
*/
|
||||
@TableField(value = "F_Lat")
|
||||
private String lat;
|
||||
/**
|
||||
* 门店id
|
||||
*/
|
||||
@TableField(value = "F_StoreId")
|
||||
private String storeId;
|
||||
|
||||
@TableField(value = "F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
public AttendanceLocationSetting(String id, String groupId, String name, String address, String factoryCode) {
|
||||
// id为考勤机管理的id
|
||||
super.setId(id);
|
||||
this.groupId = groupId;
|
||||
this.type = ConstantUtil.DEVICE_MACHINE;
|
||||
this.name = name;
|
||||
this.address = address;
|
||||
this.factoryCode = factoryCode;
|
||||
this.enable = 1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤机日志
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2024-07-30
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@TableName(value ="ftb_attendance_machine_log")
|
||||
public class AttendanceMachineLog {
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
@TableField(value = "F_FactoryCode")
|
||||
private String factoryCode;
|
||||
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
@TableField(value = "F_UserName")
|
||||
private String userName;
|
||||
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
@TableField(value = "F_GroupName")
|
||||
private String groupName;
|
||||
|
||||
@TableField(value = "F_Action")
|
||||
private String action;
|
||||
|
||||
@TableField(value = "F_ParamJson")
|
||||
private String paramJson;
|
||||
|
||||
@TableField(value = "F_MethodResult")
|
||||
private String methodResult;
|
||||
|
||||
@TableField(value = "F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
public AttendanceMachineLog(String id, String factoryCode, String userId, String userName, String groupId, String groupName, String action, String paramJson, Date creatorTime) {
|
||||
this.id = id;
|
||||
this.factoryCode = factoryCode;
|
||||
this.userId = userId;
|
||||
this.userName = userName;
|
||||
this.groupId = groupId;
|
||||
this.groupName = groupName;
|
||||
this.action = action;
|
||||
this.paramJson = paramJson;
|
||||
this.creatorTime = creatorTime;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,51 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤机管理
|
||||
* @author yanwenfu
|
||||
* @create 2024-09-10
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_machine_manage" )
|
||||
public class AttendanceMachineManage extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1201653095205863967L;
|
||||
|
||||
/** 考勤机名称 */
|
||||
@TableField(value = "F_Name")
|
||||
private String name;
|
||||
|
||||
/** mac地址 */
|
||||
@TableField(value = "F_Mac")
|
||||
private String mac;
|
||||
|
||||
/** 考勤机类型(enCode) */
|
||||
@TableField(value = "F_Type")
|
||||
private String type;
|
||||
|
||||
/** 类型名称 */
|
||||
@TableField(value = "F_TypeName")
|
||||
private String typeName;
|
||||
|
||||
/** 绑定考勤组(英文逗号分隔) */
|
||||
@TableField(value = "F_GroupIds")
|
||||
private String groupIds;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Integer orgCount;
|
||||
@TableField(exist = false)
|
||||
private Integer userCount;
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤机人脸库同步
|
||||
* @author yanwenfu
|
||||
* @create 2024-10-24
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@TableName ( value ="ftb_attendance_machine_sync" )
|
||||
public class AttendanceMachineSync implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 4022100422009659108L;
|
||||
|
||||
/** 主键 */
|
||||
@TableId(value = "F_Id")
|
||||
private String id;
|
||||
|
||||
/** mac地址 */
|
||||
@TableField(value = "F_Mac")
|
||||
private String mac;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 用户编号 */
|
||||
@TableField(value = "F_UserNo")
|
||||
private String userNo;
|
||||
|
||||
/** 用户名称 */
|
||||
@TableField(value = "F_UserName")
|
||||
private String userName;
|
||||
|
||||
/** 创建时间 */
|
||||
@TableField(value = "F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/** 修改时间 */
|
||||
@TableField(value = "F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/** 租户id */
|
||||
@TableField(value = "F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤消息通知
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-08-08 10:49:41
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_notice")
|
||||
public class AttendanceNoticeEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_ID")
|
||||
private String id;
|
||||
/**
|
||||
* 通知类型
|
||||
*/
|
||||
@TableField(value = "F_Type")
|
||||
private Integer type;
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
@TableField(value = "F_Title")
|
||||
private String title;
|
||||
/**
|
||||
* 数据json
|
||||
*/
|
||||
@TableField(value = "F_DataJson")
|
||||
private String dataJson;
|
||||
/**
|
||||
* 是否需要确认(0-否 1-是)
|
||||
*/
|
||||
@TableField(value = "F_IsConfirm")
|
||||
private Integer isConfirm;
|
||||
/**
|
||||
* 确认列表({"用户ID":确认状态(0未确认 1已确认)})
|
||||
*/
|
||||
@TableField(value = "F_ConfirmList")
|
||||
private String confirmList;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField(value = "F_CreatorTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
private Date creatorTime;
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField(value = "F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField(value = "F_TenantId")
|
||||
private String tenantId;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 加班规则表
|
||||
* @author yanwenfu
|
||||
* @create 2025-09-17
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_overtime_rule" )
|
||||
public class AttendanceOvertimeRule extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5520399653852253646L;
|
||||
|
||||
/** 规则名称 */
|
||||
@TableField(value = "F_RuleName")
|
||||
private String ruleName;
|
||||
|
||||
/** 适配范围(0: 全部, 1: 指定组织/成员) */
|
||||
@TableField(value = "F_RuleScope")
|
||||
private Integer ruleScope;
|
||||
|
||||
/** 是否启用: 0=停用, 1=启用 */
|
||||
@TableField(value = "F_Enabled")
|
||||
private Integer enabled;
|
||||
}
|
||||
@@ -0,0 +1,60 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 加班规则明细表
|
||||
* @author yanwenfu
|
||||
* @create 2025-09-17
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_overtime_rule_detail" )
|
||||
public class AttendanceOvertimeRuleDetail extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 4158553649730184629L;
|
||||
|
||||
/** 规则ID */
|
||||
@TableField(value = "F_RuleId")
|
||||
private String ruleId;
|
||||
|
||||
/** 加班类型: 1=工作日, 2=公休日, 3=节假日 */
|
||||
@TableField(value = "F_OvertimeType")
|
||||
private Integer overtimeType;
|
||||
|
||||
/** 该类型是否启用: 0=停用, 1=启用 */
|
||||
@TableField(value = "F_Enabled")
|
||||
private Integer enabled;
|
||||
|
||||
/** 时长单位: 1=小时, 2=半天, 3=天 */
|
||||
@TableField(value = "F_TimeUnit")
|
||||
private Integer timeUnit;
|
||||
|
||||
/** 计算方式: 1=按审批申请时长, 2=按审批时段打卡时长, 3=无需审批按打卡时长 */
|
||||
@TableField(value = "F_CalcMethod")
|
||||
private Integer calcMethod;
|
||||
|
||||
/** 加班存休: 1=根据加班时长, 2=不结算存休(仅记录/结算薪酬) */
|
||||
@TableField(value = "F_CompensateType")
|
||||
private Integer compensateType;
|
||||
|
||||
/** 时长换算存休倍数 */
|
||||
@TableField(value = "F_CompensateRatio")
|
||||
private BigDecimal compensateRatio;
|
||||
|
||||
/** 最小加班时间 */
|
||||
@TableField(value = "F_MinOvertimeMinute", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Integer minOvertimeMinute;
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
* @description 考勤公休规则表
|
||||
* @version V2.0
|
||||
*/
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_public_holiday_rules")
|
||||
public class AttendancePublicHolidayRules extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016799L;
|
||||
|
||||
/**
|
||||
* 公休规则名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 公休天数类型0:固定时长,1:按出勤时长
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* type为0时固定时长天数、1时可公休天数
|
||||
*/
|
||||
@TableField("F_DayNum")
|
||||
private Integer dayNum;
|
||||
|
||||
/**
|
||||
* type=1时使用,出勤天数
|
||||
*/
|
||||
@TableField("F_AttendanceDay")
|
||||
private Integer attendanceDay;
|
||||
|
||||
/**
|
||||
* 月末未用完转化类型:0 转化为存休1 仅记录/发放薪资
|
||||
*/
|
||||
@TableField("F_TransformationType")
|
||||
private Integer transformationType;
|
||||
|
||||
/**
|
||||
* 有效期:0.永久有效 1.固定天数过期2.指定日期过期
|
||||
*/
|
||||
@TableField("F_LifespanType")
|
||||
private Integer lifespanType;
|
||||
|
||||
/**
|
||||
* 固定过期天数
|
||||
*/
|
||||
@TableField("F_FixedDay")
|
||||
private Integer fixedDay;
|
||||
|
||||
/**
|
||||
* 指定过期时间 有效期为2时必填 格式MM-dd
|
||||
*/
|
||||
@TableField("F_SpecifyDay")
|
||||
private String specifyDay;
|
||||
|
||||
/**
|
||||
* 适配范围:0.全部1.指定组织/成员
|
||||
*/
|
||||
@TableField("F_ScopeOfAdaptation")
|
||||
private Integer scopeOfAdaptation;
|
||||
|
||||
/**
|
||||
* 状态:0.禁用1.启用
|
||||
*/
|
||||
@TableField("F_State")
|
||||
private Integer state;
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Builder;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤配置-快速模板
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-28
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_quick_template")
|
||||
@Builder
|
||||
public class AttendanceQuickTemplateEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 模板名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String LastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import java.io.Serializable;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 快速模板-单天模板
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-28
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_quick_template_item")
|
||||
@Builder
|
||||
public class AttendanceQuickTemplateItemEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 时段集合[{"type":"类型","name":"时段名称","periodId":"时段id"}]
|
||||
*/
|
||||
@TableField("F_Periods")
|
||||
private String periods;
|
||||
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField("F_Sort")
|
||||
private Integer sort;
|
||||
|
||||
/**
|
||||
* 快速模板id
|
||||
*/
|
||||
@TableField("F_TemplateId")
|
||||
private String templateId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import jnpf.util.FtbUtil;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* null
|
||||
* @author yanwenfu
|
||||
* @create 2024-07-02
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_repair" )
|
||||
public class AttendanceRepair extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 7621635660780352707L;
|
||||
|
||||
/** 考勤组id */
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 生成年 */
|
||||
@TableField(value = "F_GenerateYear")
|
||||
private Integer generateYear;
|
||||
|
||||
/** 生成月 */
|
||||
@TableField(value = "F_GenerateMonth")
|
||||
private Integer generateMonth;
|
||||
|
||||
/** 生成日(刷新日) */
|
||||
@TableField(value = "F_GenerateDay")
|
||||
private Integer generateDay;
|
||||
|
||||
/** 补卡总次数 */
|
||||
@TableField(value = "F_TotalNum")
|
||||
private Integer totalNum;
|
||||
|
||||
/** 补卡次数 */
|
||||
@TableField(value = "F_RepairNum")
|
||||
private Integer repairNum;
|
||||
|
||||
/** 补卡记录(结果id英文逗号分隔) */
|
||||
@TableField(value = "F_RepairRecord")
|
||||
private String repairRecord;
|
||||
|
||||
/** 过期日期 */
|
||||
@TableField(value = "F_ExpireDate")
|
||||
private Date expireDate;
|
||||
|
||||
public AttendanceRepair(String groupId, String userId, Integer generateYear, Integer generateMonth, Integer generateDay, Integer totalNum, Date expireDate) {
|
||||
super.setId(FtbUtil.getId());
|
||||
this.groupId = groupId;
|
||||
this.userId = userId;
|
||||
this.generateYear = generateYear;
|
||||
this.generateMonth = generateMonth;
|
||||
this.generateDay = generateDay;
|
||||
this.totalNum = totalNum;
|
||||
this.repairNum = totalNum;
|
||||
this.expireDate = expireDate;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤组-打卡结果回滚表
|
||||
* @author yanwenfu
|
||||
* @create 2024-11-11
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value ="ftb_attendance_result_rollback")
|
||||
public class AttendanceResultRollback extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 4096425765263025521L;
|
||||
|
||||
/** 出勤规则id */
|
||||
@TableField(value = "F_RuleId")
|
||||
private String ruleId;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 打卡id */
|
||||
@TableField(value = "F_ClockInId")
|
||||
private String clockInId;
|
||||
|
||||
/** 有效时间(工时计算时间) */
|
||||
@TableField(value = "F_EffectiveTime")
|
||||
private Date effectiveTime;
|
||||
|
||||
/** 打卡类型(1: 上班, 2: 下班) */
|
||||
@TableField(value = "F_ClockInType")
|
||||
private Integer clockInType;
|
||||
|
||||
/** 打卡状态(-2: 无需打卡, -1: 缺卡, 1: 正常, 2: 迟到, 3: 早退) */
|
||||
@TableField(value = "F_ClockInStatus")
|
||||
private Integer clockInStatus;
|
||||
|
||||
/** 打卡种类(1: 普通打卡, 2: 外勤打卡) */
|
||||
@TableField(value = "F_ClockInKind")
|
||||
private Integer clockInKind;
|
||||
|
||||
/** 是否补卡(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Repaired")
|
||||
private Integer repaired;
|
||||
|
||||
/** 审批类型(1: 补卡, 2: 出勤变更, 3: 外勤) */
|
||||
@TableField(value = "F_ApplyType")
|
||||
private Integer applyType;
|
||||
|
||||
/** 审批id */
|
||||
@TableField(value = "F_ApplyId")
|
||||
private String applyId;
|
||||
|
||||
/** 是否缺勤(1: 是, 0: 否) */
|
||||
@TableField(value = "F_Absence")
|
||||
private Integer absence;
|
||||
|
||||
/** 手动变更结果的用户id */
|
||||
@TableField(value = "F_AbsenceLeader")
|
||||
private String absenceLeader;
|
||||
|
||||
/** 上次手动变更结果的用户id */
|
||||
@TableField(value = "F_LastAbsenceLeader")
|
||||
private String lastAbsenceLeader;
|
||||
|
||||
/** 休息时间(分钟) */
|
||||
@TableField(value = "F_RestMinute")
|
||||
private Long restMinute;
|
||||
|
||||
/** 异常时长(秒) */
|
||||
@TableField(value = "F_AbnormalMinute")
|
||||
private Long abnormalMinute;
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 规则适用范围
|
||||
* @author yanwenfu
|
||||
* @create 2025-09-18
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value = "ftb_attendance_rule_scope")
|
||||
public class AttendanceRuleScope extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 6372861354152546594L;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(exist = false)
|
||||
private String userId;
|
||||
|
||||
/** 业务类型(ScopeBizType) */
|
||||
@TableField(value = "F_BizType")
|
||||
private String bizType;
|
||||
|
||||
/** 业务对应的规则/配置ID */
|
||||
@TableField(value = "F_RuleId")
|
||||
private String ruleId;
|
||||
|
||||
/** 1=个人, 2=组织, 3=全部 */
|
||||
@TableField(value = "F_ScopeType")
|
||||
private Integer scopeType;
|
||||
|
||||
/** 组织id/用户id */
|
||||
@TableField(value = "F_ScopeValue")
|
||||
private String scopeValue;
|
||||
|
||||
/** 优先级(数值越小越优先) */
|
||||
@TableField(value = "F_Priority")
|
||||
private Integer priority;
|
||||
/** 扩展字段 */
|
||||
@TableField(value = "F_Expand")
|
||||
private String expand;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤月度封账设置
|
||||
*
|
||||
* @author shitou
|
||||
* @email shitou@niujiekeji.com
|
||||
* @date 2024-06-24 09:33:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("ftb_attendance_seal_setting")
|
||||
public class AttendanceSealSetting extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016797L;
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 月度自动封账设置开关(0-关 1-开)
|
||||
*/
|
||||
@TableField("F_AutoSeal")
|
||||
private Integer autoSeal;
|
||||
/**
|
||||
* 每月封账日期
|
||||
*/
|
||||
@TableField("F_SealDay")
|
||||
private Integer sealDay;
|
||||
/**
|
||||
* 封账时间点(HH:mm)
|
||||
*/
|
||||
@TableField("F_SealTime")
|
||||
private String sealTime;
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 班次表
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2024-05-10
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_shift_name")
|
||||
public class AttendanceShiftNameEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键Id
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 班次名称
|
||||
*/
|
||||
@TableField("F_Name")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 简称
|
||||
*/
|
||||
@TableField("F_ShortName")
|
||||
private String shortName;
|
||||
|
||||
/**
|
||||
* 颜色
|
||||
*/
|
||||
@TableField("F_Colour")
|
||||
private String colour;
|
||||
|
||||
/**
|
||||
* 班制:1全天制 2半天制
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer shiftType;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 考勤配置id
|
||||
*/
|
||||
@TableField("F_SettingId")
|
||||
private String settingId;
|
||||
|
||||
/**
|
||||
* 状态(1启用 2停用)
|
||||
*/
|
||||
@TableField("F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date LastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String LastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date DeleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String DeleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer DeleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String TenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,119 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤组配置-考勤配置
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-22
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_shift_setting")
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class AttendanceShiftSettingEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 班制类型(1固定班 2排班)
|
||||
*/
|
||||
@TableField("F_SystemType")
|
||||
private Integer systemType;
|
||||
|
||||
/**
|
||||
* 周期(1周一,2周二,3周三,4周四,5周五,6周六,7周日)
|
||||
*/
|
||||
@TableField("F_Cycle")
|
||||
private String cycle;
|
||||
|
||||
/**
|
||||
* 生效日期
|
||||
*/
|
||||
@TableField("F_EnableTime")
|
||||
private Date enableTime;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 状态(1启用 2停用)
|
||||
*/
|
||||
@TableField("F_Enable")
|
||||
private Integer enable;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,253 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.Max;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 考勤组-考勤配置-时段
|
||||
* </p>
|
||||
*
|
||||
* @author ahua
|
||||
* @since 2023-11-22
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName("ftb_attendance_shift_setting_period")
|
||||
public class AttendanceShiftSettingPeriodEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
/**
|
||||
* 时段工时(天 保留一位小数)
|
||||
*/
|
||||
@TableField("F_TimeSlotDay")
|
||||
private BigDecimal timeSlotDay;
|
||||
/**
|
||||
* 计薪工时(小时 保留4位小数)
|
||||
*/
|
||||
@TableField("F_PayrollHours")
|
||||
private BigDecimal payrollHours;
|
||||
|
||||
/**
|
||||
* 班制类型(1固定班 2排班)
|
||||
*/
|
||||
@TableField("F_SystemType")
|
||||
private Integer systemType;
|
||||
/**
|
||||
* 允许迟到(0否 1是)
|
||||
*/
|
||||
@TableField("F_LateEnable")
|
||||
private Integer lateEnable;
|
||||
|
||||
/**
|
||||
* 允许早退(0否 1是)
|
||||
*/
|
||||
@TableField("F_EarlyEnable")
|
||||
private Integer earlyEnable;
|
||||
|
||||
/**
|
||||
* 允许休息時間(0否 1是)
|
||||
*/
|
||||
@TableField("F_BreakEnable")
|
||||
private Integer breakEnable;
|
||||
|
||||
/**
|
||||
* 允许次日下班(0否 1是)
|
||||
*/
|
||||
@TableField("F_NextDayEnable")
|
||||
private Integer nextDayEnable;
|
||||
|
||||
/**
|
||||
* 打卡开始时间点
|
||||
*/
|
||||
@TableField("F_ClockStartPoint")
|
||||
private String clockStartPoint;
|
||||
|
||||
/**
|
||||
* 打卡开始时间点 当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_ClockStartPointType")
|
||||
private Integer clockStartPointType;
|
||||
|
||||
/**
|
||||
* 上班时间点
|
||||
*/
|
||||
@TableField("F_InPoint")
|
||||
private String inPoint;
|
||||
|
||||
/**
|
||||
* 迟到时间点
|
||||
*/
|
||||
@TableField("F_LatePoint")
|
||||
private String latePoint;
|
||||
|
||||
/**
|
||||
* 迟到当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_LateType")
|
||||
private Integer lateType;
|
||||
|
||||
/**
|
||||
* 上班缺卡时间点
|
||||
*/
|
||||
@TableField("F_InLackPoint")
|
||||
private String inLackPoint;
|
||||
|
||||
/**
|
||||
* 上班缺卡 当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_InLackPointType")
|
||||
private Integer inLackPointType;
|
||||
|
||||
/**
|
||||
* 休息开始时间点
|
||||
*/
|
||||
@TableField("F_BreakStartPoint")
|
||||
private String breakStartPoint;
|
||||
|
||||
/**
|
||||
* 休息结束时间点
|
||||
*/
|
||||
@TableField("F_BreakEndPoint")
|
||||
private String breakEndPoint;
|
||||
|
||||
/**
|
||||
* 早退时间点
|
||||
*/
|
||||
@TableField("F_EarlyPoint")
|
||||
private String earlyPoint;
|
||||
|
||||
/**
|
||||
* 下班时间点
|
||||
*/
|
||||
@TableField("F_OutPoint")
|
||||
private String outPoint;
|
||||
|
||||
/**
|
||||
* 下班缺卡时间点
|
||||
*/
|
||||
@TableField("F_OutLackPoint")
|
||||
private String outLackPoint;
|
||||
|
||||
/**
|
||||
* 考勤配置id
|
||||
*/
|
||||
@TableField("F_SettingId")
|
||||
private String settingId;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 创建用户
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 修改用户
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
|
||||
/**
|
||||
* 删除时间
|
||||
*/
|
||||
@TableField("F_DeleteTime")
|
||||
private Date deleteTime;
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@TableField("F_DeleteUserId")
|
||||
private String deleteUserId;
|
||||
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 租户id
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 休息开始时间当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_BreakStartType")
|
||||
private Integer breakStartType;
|
||||
|
||||
/**
|
||||
* 休息结束时间当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_BreakEndType")
|
||||
private Integer breakEndType;
|
||||
|
||||
/**
|
||||
* 早退时间当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_EarlyType")
|
||||
private Integer earlyType;
|
||||
|
||||
/**
|
||||
* 上班当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_InType")
|
||||
private Integer inType;
|
||||
|
||||
/**
|
||||
* 下班当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_OutType")
|
||||
private Integer outType;
|
||||
|
||||
/**
|
||||
* 下班缺卡当日还是次日,1当日 2次日
|
||||
*/
|
||||
@TableField("F_OutLackType")
|
||||
private Integer outLackType;
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField("F_Sort")
|
||||
private Integer sort;
|
||||
|
||||
/**
|
||||
* 类型:1 上半天 2 下半天 (半天制班次使用)
|
||||
*/
|
||||
@TableField("F_Type")
|
||||
private Integer type;
|
||||
|
||||
|
||||
@TableField("F_ShiftId")
|
||||
private String shiftId;
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤每月存休表
|
||||
* @author yanwenfu
|
||||
* @create 2024-07-01
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_storage_rest" )
|
||||
public class AttendanceStorageRest extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 7493170924458007750L;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 存休数字 */
|
||||
@TableField(value = "F_Num")
|
||||
private BigDecimal num;
|
||||
|
||||
/** 年月 */
|
||||
@TableField(value = "F_YearMonth")
|
||||
private String yearMonth;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* @author panpan
|
||||
* @description 考勤存休详情表
|
||||
* @version V2.0
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@TableName("ftb_attendance_user_balance_detail")
|
||||
public class AttendanceUserBalanceDetail extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
private static final long serialVersionUID = 8654200286159016795L;
|
||||
|
||||
/**
|
||||
* 假日类型Id(ftb_attendance_leave_rules)(存休时为空)
|
||||
*/
|
||||
@TableField("F_ObjectId")
|
||||
private String objectId;
|
||||
|
||||
/**
|
||||
* 余额记录文本
|
||||
*/
|
||||
@TableField("F_Content")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 使用额度(分正负:负数时为使用,正数时为加余额)
|
||||
*/
|
||||
@TableField("F_Quota")
|
||||
private BigDecimal quota;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤机人脸数据
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-30
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@ToString
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_user_face" )
|
||||
public class AttendanceUserFace extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1200303221087971700L;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 人脸数据 */
|
||||
@TableField(value = "F_FaceData")
|
||||
private String faceData;
|
||||
|
||||
/** 人脸数据 - 缩略 */
|
||||
@TableField(value = "F_FaceDataThumbnail")
|
||||
private String faceDataThumbnail;
|
||||
|
||||
/** 人脸特征 */
|
||||
@TableField(value = "F_FaceFeature")
|
||||
private String faceFeature;
|
||||
|
||||
/** 同步状态(1: 成功, 0: 失败) */
|
||||
@TableField(value = "F_SyncStatus")
|
||||
private Integer syncStatus;
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 考勤机指纹数据
|
||||
* @author yanwenfu
|
||||
* @create 2024-03-04
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_user_fingerprint" )
|
||||
public class AttendanceUserFingerprint extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1689834591082631467L;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 指纹id */
|
||||
@TableField(value = "F_DataId")
|
||||
private String dataId;
|
||||
|
||||
/** 指纹数据 */
|
||||
@TableField(value = "F_Data")
|
||||
private String data;
|
||||
|
||||
/** 指纹名称 */
|
||||
@TableField(value = "F_DataName")
|
||||
private String dataName;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用户常用设备
|
||||
* @author yanwenfu
|
||||
* @create 2025-09-17
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_user_phone" )
|
||||
public class AttendanceUserPhone extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 424794400235021133L;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 设备名称 */
|
||||
@TableField(value = "F_PhoneName")
|
||||
private String phoneName;
|
||||
|
||||
/** 设备编号 */
|
||||
@TableField(value = "F_PhoneCode")
|
||||
private String phoneCode;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import jnpf.util.FtbUtil;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 出勤规则变更
|
||||
* @author yanwenfu
|
||||
* @create 2026-05-20
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_daily_rule_change" )
|
||||
@Builder
|
||||
@AllArgsConstructor
|
||||
public class DailyRuleChange extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 5750485520731810904L;
|
||||
|
||||
/** 考勤组id */
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/** 用户id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 日期 */
|
||||
@TableField(value = "F_Day")
|
||||
private Date day;
|
||||
|
||||
public DailyRuleChange(String groupId, String userId, Date day, String tenantId) {
|
||||
super.setId(FtbUtil.getId());
|
||||
this.groupId = groupId;
|
||||
this.userId = userId;
|
||||
this.day = day;
|
||||
super.setTenantId(tenantId);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import jnpf.enums.attendance.ApplyTypeEnum;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤组-打卡记录表
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-22
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_clock_in" )
|
||||
public class FtbAttendanceClockIn extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 8654200286159016717L;
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@TableField(value = "F_Day")
|
||||
private Date day;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 打卡时间
|
||||
*/
|
||||
@TableField(value = "F_ClockInTime")
|
||||
private Date clockInTime;
|
||||
|
||||
/**
|
||||
* 审批编码
|
||||
*/
|
||||
@TableField(value = "F_ApprovalCode")
|
||||
private String approvalCode;
|
||||
|
||||
/**
|
||||
* 审批类型
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private ApplyTypeEnum applyType;
|
||||
|
||||
/**
|
||||
* 审批状态(0: 通过, 1: 审批中, 2: 拒绝)
|
||||
*/
|
||||
@TableField(value = "F_ApprovalStatus")
|
||||
private Integer approvalStatus;
|
||||
|
||||
/**
|
||||
* 关联id(审批通过后删除关联记录)
|
||||
*/
|
||||
@TableField(value = "F_RelationId")
|
||||
private String relationId;
|
||||
|
||||
/**
|
||||
* 地址
|
||||
*/
|
||||
@TableField(value = "F_Address")
|
||||
private String address;
|
||||
|
||||
/**
|
||||
* 经度
|
||||
*/
|
||||
@TableField(value = "F_Lng")
|
||||
private String lng;
|
||||
|
||||
/**
|
||||
* 维度
|
||||
*/
|
||||
@TableField(value = "F_Lat")
|
||||
private String lat;
|
||||
|
||||
/**
|
||||
* 打卡种类(1: 普通打卡, 2: 外勤打卡)
|
||||
*/
|
||||
@TableField(value = "F_ClockInKind")
|
||||
private Integer clockInKind;
|
||||
|
||||
/**
|
||||
* 设备类型(1: 地点打卡, 2: 考勤机, 3: wifi)
|
||||
*/
|
||||
@TableField(value = "F_DeviceType")
|
||||
private Integer deviceType;
|
||||
|
||||
/**
|
||||
* 设备id(考勤机id/WiFi id)
|
||||
*/
|
||||
@TableField(value = "F_DeviceId")
|
||||
private String deviceId;
|
||||
|
||||
/**
|
||||
* 设备名称
|
||||
*/
|
||||
@TableField(value = "F_DeviceName")
|
||||
private String deviceName;
|
||||
|
||||
/** 备注 */
|
||||
@TableField(value = "F_Remark")
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,441 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import jnpf.enums.attendance.AttendanceTypeEnum;
|
||||
import jnpf.model.attendance.vo.attendance.OvertimeRuleDetailVo;
|
||||
import jnpf.util.DateDetail;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.util.Date;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* 考勤组-每日出勤规则
|
||||
*
|
||||
* @author yanwenfu
|
||||
* @create 2023-11-22
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName(value = "ftb_attendance_daily_rule")
|
||||
public class FtbAttendanceDailyRule extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 7692755431988353300L;
|
||||
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 班次类型 0全天班次 1上午班次 2下午班次
|
||||
*/
|
||||
@TableField(value = "F_SchedulesType")
|
||||
private Integer schedulesType;
|
||||
/**
|
||||
* 是否自己的考勤组(0未产生借调 1被借调 2借调)
|
||||
*/
|
||||
@TableField(value = "F_SelfGroup")
|
||||
private Integer selfGroup;
|
||||
|
||||
/**
|
||||
* 班次时段id
|
||||
*/
|
||||
@TableField(value = "F_PeriodId")
|
||||
private String periodId;
|
||||
/**
|
||||
* 班次时段信息
|
||||
*/
|
||||
@TableField(value = "F_PeriodInfo")
|
||||
private String periodInfo;
|
||||
/**
|
||||
* 班次id
|
||||
*/
|
||||
@TableField(value = "F_ShiftId")
|
||||
private String shiftId;
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@TableField(value = "F_Day")
|
||||
private Date day;
|
||||
|
||||
/**
|
||||
* 用户id
|
||||
*/
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 允许迟到(0否 1是)
|
||||
*/
|
||||
@TableField(value = "F_LateEnable")
|
||||
private Integer lateEnable;
|
||||
|
||||
/**
|
||||
* 允许早退(0否 1是)
|
||||
*/
|
||||
@TableField(value = "F_EarlyEnable")
|
||||
private Integer earlyEnable;
|
||||
|
||||
/**
|
||||
* 允许休息时间(0否 1是)
|
||||
*/
|
||||
@TableField(value = "F_BreakEnable")
|
||||
private Integer breakEnable;
|
||||
|
||||
/**
|
||||
* 允许次日下班(0否 1是)
|
||||
*/
|
||||
@TableField(value = "F_NextDayEnable")
|
||||
private Integer nextDayEnable;
|
||||
|
||||
/**
|
||||
* 打卡开始时间点
|
||||
*/
|
||||
@TableField(value = "F_ClockStartPoint")
|
||||
private Date clockStartPoint;
|
||||
|
||||
/**
|
||||
* 上班时间点
|
||||
*/
|
||||
@TableField(value = "F_InPoint")
|
||||
private Date inPoint;
|
||||
/**
|
||||
* 是否上班边界覆盖(0未覆盖 1加班覆盖 2借调覆盖 3请假覆盖)
|
||||
*/
|
||||
@TableField(value = "F_InUnbounded")
|
||||
private Integer inUnbounded;
|
||||
/**
|
||||
* 上班是否被外出覆盖(0未覆盖 1覆盖)
|
||||
*/
|
||||
@TableField(value = "F_InStepOutType")
|
||||
private Integer inStepOutType;
|
||||
/**
|
||||
* 上班被外出覆盖申请id
|
||||
*/
|
||||
@TableField(value = "F_InStepOutApplyId")
|
||||
private String inStepOutApplyId;
|
||||
/**
|
||||
* 原上班时间点
|
||||
*/
|
||||
@TableField(value = "F_OriginInPoint")
|
||||
private Date originInPoint;
|
||||
|
||||
/**
|
||||
* 迟到时间点
|
||||
*/
|
||||
@TableField(value = "F_LatePoint")
|
||||
private Date latePoint;
|
||||
/**
|
||||
* 是否晚走晚到
|
||||
*/
|
||||
@TableField(value = "F_IsLateOutLateIn")
|
||||
private Integer isLateOutLateIn;
|
||||
/**
|
||||
* 原始迟到时间点
|
||||
*/
|
||||
@TableField(value = "F_OriginalLatePoint")
|
||||
private Date originalLatePoint;
|
||||
|
||||
|
||||
/**
|
||||
* 上班缺卡时间点
|
||||
*/
|
||||
@TableField(value = "F_InLackPoint")
|
||||
private Date inLackPoint;
|
||||
|
||||
public Date getOriginBreakStartPoint() {
|
||||
return Objects.nonNull(originBreakStartPoint) ? originBreakStartPoint : breakStartPoint;
|
||||
}
|
||||
|
||||
public Date getOriginBreakEndPoint() {
|
||||
return Objects.nonNull(originBreakEndPoint)? originBreakEndPoint : breakEndPoint;
|
||||
}
|
||||
|
||||
public Date getOriginOutPoint() {
|
||||
return Objects.nonNull(originOutPoint)? originOutPoint : outPoint;
|
||||
}
|
||||
|
||||
public Date getOriginInPoint() {
|
||||
return Objects.nonNull(originInPoint)? originInPoint : inPoint;
|
||||
}
|
||||
|
||||
/**
|
||||
* 休息开始时间点
|
||||
*/
|
||||
@TableField(value = "F_BreakStartPoint", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Date breakStartPoint;
|
||||
/**
|
||||
* 休息开始时间点
|
||||
*/
|
||||
@TableField(value = "F_OriginBreakStartPoint", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Date originBreakStartPoint;
|
||||
|
||||
/**
|
||||
* 休息结束时间点
|
||||
*/
|
||||
@TableField(value = "F_BreakEndPoint", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Date breakEndPoint;
|
||||
/**
|
||||
* 休息结束时间点
|
||||
*/
|
||||
@TableField(value = "F_OriginBreakEndPoint", updateStrategy = FieldStrategy.IGNORED)
|
||||
private Date originBreakEndPoint;
|
||||
|
||||
/**
|
||||
* 早退时间点
|
||||
*/
|
||||
@TableField(value = "F_EarlyPoint")
|
||||
private Date earlyPoint;
|
||||
|
||||
/**
|
||||
* 下班时间点
|
||||
*/
|
||||
@TableField(value = "F_OutPoint")
|
||||
private Date outPoint;
|
||||
/**
|
||||
* 是否下班边界覆盖(0未覆盖 1加班覆盖 2借调覆盖 3请假覆盖)
|
||||
*/
|
||||
@TableField(value = "F_OutUnbounded")
|
||||
private Integer outUnbounded;
|
||||
/**
|
||||
* 下班是否被外出覆盖(0未覆盖 1覆盖)
|
||||
*/
|
||||
@TableField(value = "F_OutStepOutType")
|
||||
private Integer outStepOutType;
|
||||
/**
|
||||
* 下班被外出覆盖申请id
|
||||
*/
|
||||
@TableField(value = "F_OutStepOutApplyId")
|
||||
private String outStepOutApplyId;
|
||||
/**
|
||||
* 原下班时间点
|
||||
*/
|
||||
@TableField(value = "F_OriginOutPoint")
|
||||
private Date originOutPoint;
|
||||
|
||||
/**
|
||||
* 下班缺卡时间点
|
||||
*/
|
||||
@TableField(value = "F_OutLackPoint")
|
||||
private Date outLackPoint;
|
||||
|
||||
/**
|
||||
* 出勤类型(1: 普班, 2: 休, 3: 假, 4: 假(带薪), 5: 加班)
|
||||
*/
|
||||
@TableField(value = "F_AttendanceType")
|
||||
private Integer attendanceType;
|
||||
/**
|
||||
* 申请id
|
||||
*/
|
||||
@TableField(value = "F_ApplyId")
|
||||
private String applyId;
|
||||
/**
|
||||
* 审核数据展示标识(1 起效,0 失效,2 打卡不展示,3 考勤组剔除人员待删除,9 标识出差,10 标识外出)
|
||||
*/
|
||||
@TableField(value = "F_ApplyViewEnable")
|
||||
private Integer applyViewEnable;
|
||||
/**
|
||||
* 申请事件开始时间
|
||||
*/
|
||||
@TableField(value = "F_ApplyStart")
|
||||
private Date applyStart;
|
||||
/**
|
||||
* 请假天数
|
||||
*/
|
||||
@TableField(value = "F_LeaveDay")
|
||||
private BigDecimal leaveDay;
|
||||
/**
|
||||
* 申请单位(1小时 2日 3半日)
|
||||
*/
|
||||
@TableField(value = "F_ApplyUnit")
|
||||
private Integer applyUnit;
|
||||
/**
|
||||
* 请假申请参数
|
||||
*/
|
||||
@TableField(value = "F_LeaveParam")
|
||||
private String leaveParam;
|
||||
|
||||
|
||||
public void setInPoint(Date inPoint) {
|
||||
this.inPoint = inPoint;
|
||||
calValidDuration();
|
||||
}
|
||||
|
||||
public void calInLackPoint(Date inLackPoint) {
|
||||
if (Objects.isNull(inLackPoint)) {
|
||||
return;
|
||||
}
|
||||
this.inLackPoint = inLackPoint.after(this.outPoint) ? this.outPoint : inLackPoint;
|
||||
}
|
||||
|
||||
public void calLatePoint(Date latePoint) {
|
||||
if (Objects.isNull(latePoint)) {
|
||||
return;
|
||||
}
|
||||
this.latePoint = latePoint.after(this.outPoint) ? this.outPoint : latePoint;
|
||||
}
|
||||
|
||||
public void setBreakStartPoint(Date breakStartPoint) {
|
||||
this.breakStartPoint = breakStartPoint;
|
||||
calValidDuration();
|
||||
}
|
||||
|
||||
public void setBreakEndPoint(Date breakEndPoint) {
|
||||
this.breakEndPoint = breakEndPoint;
|
||||
calValidDuration();
|
||||
}
|
||||
|
||||
public void setOutPoint(Date outPoint) {
|
||||
this.outPoint = outPoint;
|
||||
calValidDuration();
|
||||
}
|
||||
|
||||
/**
|
||||
* 申请事件结束时间
|
||||
*/
|
||||
@TableField(value = "F_ApplyEnd")
|
||||
private Date applyEnd;
|
||||
/**
|
||||
* 有效时长
|
||||
*/
|
||||
@TableField(value = "F_ValidDuration")
|
||||
private Integer validDuration;
|
||||
/**
|
||||
* 时段工时
|
||||
*/
|
||||
@TableField(value = "F_PeriodWorkDay")
|
||||
private BigDecimal periodWorkDay;
|
||||
/**
|
||||
* 计薪工时
|
||||
*/
|
||||
@TableField(value = "F_PayrollHours")
|
||||
private BigDecimal payrollHours;
|
||||
/**
|
||||
* 原始有效时长
|
||||
*/
|
||||
@TableField(value = "F_OriginValidDuration")
|
||||
private Integer originValidDuration;
|
||||
|
||||
public BigDecimal getPayrollHours() {
|
||||
if(Objects.nonNull(payrollHours)) {
|
||||
return payrollHours;
|
||||
}
|
||||
if (Objects.isNull(validDuration)) {
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
return BigDecimal.valueOf(validDuration).divide(BigDecimal.valueOf(60), 4, RoundingMode.HALF_UP);
|
||||
}
|
||||
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@TableField(value = "F_Sort")
|
||||
private Integer sort;
|
||||
/**
|
||||
* 是否固定班 3自动排休调休上班 2为划线排班
|
||||
*/
|
||||
@TableField(value = "F_FixedMark")
|
||||
private Integer fixedMark;
|
||||
|
||||
/** 隐藏(0:不隐藏, 1:上班隐藏) */
|
||||
@TableField(exist = false)
|
||||
private String inHideStatus = "0";
|
||||
/** 隐藏(0:不隐藏, 1:下班隐藏) */
|
||||
@TableField(exist = false)
|
||||
private String outHideStatus = "0";
|
||||
/** 上班无需打卡(true:是, false:否) */
|
||||
@TableField(exist = false)
|
||||
private boolean onWorkIgnore = false;
|
||||
/** 下班无需打卡(true:是, false:否) */
|
||||
@TableField(exist = false)
|
||||
private boolean offWorkIgnore = false;
|
||||
/** 行号 */
|
||||
@TableField(exist = false)
|
||||
private Integer rn;
|
||||
/** 消息(离岗、回岗) */
|
||||
@TableField(exist = false)
|
||||
private String msg;
|
||||
/** 加班规则 */
|
||||
@TableField(exist = false)
|
||||
private OvertimeRuleDetailVo overtimeRuleDetail;
|
||||
/** 无审批加班 */
|
||||
@TableField(exist = false)
|
||||
private Integer overtime = 0;
|
||||
/** 目标日期 */
|
||||
@TableField(exist = false)
|
||||
private String targetDate;
|
||||
/** 实际日期(目标日期/目标日期-1) */
|
||||
@TableField(exist = false)
|
||||
private String queryDate;
|
||||
|
||||
@TableField(exist = false)
|
||||
private Boolean isInsert = Boolean.FALSE;
|
||||
@TableField(exist = false)
|
||||
private Boolean isDelete = Boolean.FALSE;
|
||||
public void delete(){
|
||||
this.isDelete = true;
|
||||
}
|
||||
|
||||
public void calValidDuration() {
|
||||
if (Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.LEAVE.getCode()) || Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.ORDINARY.getCode())|| Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.REST.getCode()) || Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.WORKOVERTIME.getCode())) {
|
||||
if (Objects.isNull(this.getInPoint())) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getOutPoint())) {
|
||||
return;
|
||||
}
|
||||
this.setValidDuration(DateDetail.calculateMinuteDiff(this.getInPoint(), this.getOutPoint()));
|
||||
if (Objects.isNull(this.getBreakEnable()) || this.getBreakEnable() == 0) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getBreakStartPoint())) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getBreakEndPoint())) {
|
||||
return;
|
||||
}
|
||||
this.setValidDuration(this.getValidDuration() - DateDetail.calculateMinuteDiff(this.getBreakStartPoint(), this.getBreakEndPoint()));
|
||||
}
|
||||
}
|
||||
public void calOriginValidDuration() {
|
||||
if (Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.LEAVE.getCode()) || Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.ORDINARY.getCode())|| Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.REST.getCode()) || Objects.equals(this.getAttendanceType(), AttendanceTypeEnum.WORKOVERTIME.getCode())) {
|
||||
if (Objects.isNull(this.getOriginInPoint())) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getOriginOutPoint())) {
|
||||
return;
|
||||
}
|
||||
this.setOriginValidDuration(DateDetail.calculateMinuteDiff(this.getOriginInPoint(), this.getOriginOutPoint()));
|
||||
if (Objects.isNull(this.getBreakEnable()) || this.getBreakEnable() == 0) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getOriginBreakStartPoint())) {
|
||||
return;
|
||||
}
|
||||
if (Objects.isNull(this.getOriginBreakEndPoint())) {
|
||||
return;
|
||||
}
|
||||
this.setOriginValidDuration(this.getOriginValidDuration() - DateDetail.calculateMinuteDiff(this.getOriginBreakStartPoint(), this.getOriginBreakEndPoint()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void insertTrue() {
|
||||
this.isInsert = Boolean.TRUE;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import jnpf.base.entity.SuperBaseEntity;
|
||||
import lombok.*;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 人脸变动记录
|
||||
* @author yanwenfu
|
||||
* @create 2025-04-14
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName ( value ="ftb_attendance_face_change_log" )
|
||||
public class FtbAttendanceFaceChangeLog extends SuperBaseEntity.SuperCUDBaseEntity<String> implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 7895549838561202615L;
|
||||
|
||||
/** 被变动人id */
|
||||
@TableField(value = "F_UserId")
|
||||
private String userId;
|
||||
|
||||
/** 人脸id */
|
||||
@TableField(value = "F_FaceId")
|
||||
private String faceId;
|
||||
|
||||
/** 操作内容 */
|
||||
@TableField(value = "F_Content")
|
||||
private String content;
|
||||
|
||||
public FtbAttendanceFaceChangeLog(String userId, String content, String createBy) {
|
||||
this.userId = userId;
|
||||
this.content = content;
|
||||
super.setCreatorUserId(createBy);
|
||||
}
|
||||
|
||||
public FtbAttendanceFaceChangeLog(String userId, String faceId, String content, String createBy) {
|
||||
this.userId = userId;
|
||||
this.faceId = faceId;
|
||||
this.content = content;
|
||||
super.setCreatorUserId(createBy);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,147 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import jnpf.model.attendance.vo.AttendanceGroupUserVo;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 划线排班配置
|
||||
*
|
||||
* @author ahua
|
||||
* @version 2.1
|
||||
* @copyright 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
||||
* @date 2025-12-30
|
||||
*/
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
@TableName(value = "ftb_attendance_line_scheduling_config")
|
||||
public class FtbAttendanceLineSchedulingConfig implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
@TableId("F_Id")
|
||||
public String id;
|
||||
/**
|
||||
* 考勤组id
|
||||
*/
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 划线排班员工类型
|
||||
*/
|
||||
@TableField(value = "F_EmployeeType")
|
||||
private String employeeType;
|
||||
|
||||
/**
|
||||
* 划线排班员工工作性质
|
||||
*/
|
||||
@TableField(value = "F_WorkNature")
|
||||
private String workNature;
|
||||
|
||||
/**
|
||||
* 划线排班员工岗位
|
||||
*/
|
||||
@TableField(value = "F_Position")
|
||||
private String position;
|
||||
/**
|
||||
* 划线排班成员标识 0全部 1指定
|
||||
*/
|
||||
@TableField(value = "F_MembersType")
|
||||
private Integer membersType = 1;
|
||||
/**
|
||||
* 划线排班成员
|
||||
*/
|
||||
@TableField(value = "F_Members")
|
||||
private String members;
|
||||
/**
|
||||
* 划线排班成员列表
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private List<AttendanceGroupUserVo> memberList;
|
||||
/**
|
||||
* 上班打卡限制时间(小时)
|
||||
*/
|
||||
@TableField(value = "F_StartCheckInLimit")
|
||||
private BigDecimal startCheckInLimit;
|
||||
|
||||
/**
|
||||
* 下班打卡限制时间(小时)
|
||||
*/
|
||||
@TableField(value = "F_EndCheckInLimit")
|
||||
private BigDecimal endCheckInLimit;
|
||||
/**
|
||||
* 1当日 2次日
|
||||
*/
|
||||
@TableField(value = "F_StartType")
|
||||
private Integer startType;
|
||||
/**
|
||||
* 开始时间
|
||||
*/
|
||||
@TableField(value = "F_StartTime")
|
||||
private String startTime;
|
||||
/**
|
||||
* 1当日 2次日
|
||||
*/
|
||||
@TableField(value = "F_EndType")
|
||||
private Integer endType;
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@TableField(value = "F_EndTime")
|
||||
private String endTime;
|
||||
|
||||
/**
|
||||
* 员工消息通知(是/否)
|
||||
*/
|
||||
@TableField(value = "F_EmployeeNotify")
|
||||
private Integer employeeNotify;
|
||||
|
||||
/**
|
||||
* 划线排班提前通知岗位
|
||||
*/
|
||||
@TableField(value = "F_NotifyPosition")
|
||||
private String notifyPosition;
|
||||
|
||||
/**
|
||||
* 划线排班提前通知人员
|
||||
*/
|
||||
@TableField(value = "F_NotifyPerson")
|
||||
private String notifyPerson;
|
||||
|
||||
/**
|
||||
* 划线排班提前通知人员列表
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
private List<AttendanceGroupUserVo> notifyPersonList;
|
||||
|
||||
/**
|
||||
* 划线排班提前通知时间类型(1每天/2每周/3每月)
|
||||
*/
|
||||
@TableField(value = "F_NotifyTimeType")
|
||||
private Integer notifyTimeType;
|
||||
|
||||
/**
|
||||
* 划线排班提前通知时间
|
||||
*/
|
||||
@TableField(value = "F_NotifyTime", insertStrategy = FieldStrategy.IGNORED, updateStrategy = FieldStrategy.IGNORED)
|
||||
private String notifyTime;
|
||||
@TableField(
|
||||
value = "F_LastModifyTime",
|
||||
fill = FieldFill.UPDATE
|
||||
)
|
||||
private Date lastModifyTime;
|
||||
@TableField(
|
||||
value = "F_LastModifyUserId",
|
||||
fill = FieldFill.UPDATE
|
||||
)
|
||||
private String lastModifyUserId;
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 划线排班计薪工时表
|
||||
*
|
||||
* @author jnpf
|
||||
* @since 2026-02-27
|
||||
*/
|
||||
@Data
|
||||
@TableName("ftb_attendance_line_scheduling_payroll_hours")
|
||||
@Builder
|
||||
public class FtbAttendanceLineSchedulingPayrollHours implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId("F_Id")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 用户ID
|
||||
*/
|
||||
@TableField("F_UserId")
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 考勤组ID
|
||||
*/
|
||||
@TableField("F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
/**
|
||||
* 日期
|
||||
*/
|
||||
@TableField("F_Day")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||
private Date day;
|
||||
|
||||
/**
|
||||
* 计薪工时(小时)
|
||||
*/
|
||||
@TableField("F_PayrollHours")
|
||||
private BigDecimal payrollHours;
|
||||
|
||||
/**
|
||||
* 创建用户ID
|
||||
*/
|
||||
@TableField("F_CreatorUserId")
|
||||
private String creatorUserId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("F_CreatorTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date creatorTime;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@TableField("F_TenantId")
|
||||
private String tenantId;
|
||||
|
||||
/**
|
||||
* 删除标志(0-未删除,1-已删除)
|
||||
*/
|
||||
@TableField("F_DeleteMark")
|
||||
private Integer deleteMark;
|
||||
|
||||
/**
|
||||
* 最后修改时间
|
||||
*/
|
||||
@TableField("F_LastModifyTime")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date lastModifyTime;
|
||||
|
||||
/**
|
||||
* 最后修改用户ID
|
||||
*/
|
||||
@TableField("F_LastModifyUserId")
|
||||
private String lastModifyUserId;
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤组划线排班参数。
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName(value = "ftb_attendance_group_drawing_param")
|
||||
public class FtbScheduleGroupDrawingParamEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value = "F_Id")
|
||||
private String id;
|
||||
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
@TableField(value = "F_MaxDailySegmentsEnabled")
|
||||
private Boolean maxDailySegmentsEnabled;
|
||||
|
||||
@TableField(value = "F_MaxDailySegmentsValue")
|
||||
private Integer maxDailySegmentsValue;
|
||||
|
||||
@TableField(value = "F_MaxDailySegmentsPriority")
|
||||
private Byte maxDailySegmentsPriority;
|
||||
|
||||
@TableField(value = "F_MaxSingleSegmentHoursEnabled")
|
||||
private Boolean maxSingleSegmentHoursEnabled;
|
||||
|
||||
@TableField(value = "F_MaxSingleSegmentHoursValue")
|
||||
private Integer maxSingleSegmentHoursValue;
|
||||
|
||||
@TableField(value = "F_MaxSingleSegmentHoursPriority")
|
||||
private Byte maxSingleSegmentHoursPriority;
|
||||
|
||||
@TableField(value = "F_MinSingleSegmentHoursEnabled")
|
||||
private Boolean minSingleSegmentHoursEnabled;
|
||||
|
||||
@TableField(value = "F_MinSingleSegmentHoursValue")
|
||||
private BigDecimal minSingleSegmentHoursValue;
|
||||
|
||||
@TableField(value = "F_MinSingleSegmentHoursPriority")
|
||||
private Byte minSingleSegmentHoursPriority;
|
||||
|
||||
@TableField(value = "F_CreateTime")
|
||||
private Date createTime;
|
||||
|
||||
@TableField(value = "F_UpdateTime")
|
||||
private Date updateTime;
|
||||
|
||||
@TableField(value = "F_Creator")
|
||||
private String creator;
|
||||
|
||||
@TableField(value = "F_Updater")
|
||||
private String updater;
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
package jnpf.entity.attendance;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 考勤组固定排班核心参数。
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName(value = "ftb_attendance_group_fixed_param")
|
||||
public class FtbScheduleGroupFixedParamEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId(value = "F_Id")
|
||||
private String id;
|
||||
|
||||
@TableField(value = "F_GroupId")
|
||||
private String groupId;
|
||||
|
||||
@TableField(value = "F_DailyWorkHoursEnabled")
|
||||
private Boolean dailyWorkHoursEnabled;
|
||||
|
||||
@TableField(value = "F_DailyWorkHoursValue")
|
||||
private Integer dailyWorkHoursValue;
|
||||
|
||||
@TableField(value = "F_DailyWorkHoursPriority")
|
||||
private Byte dailyWorkHoursPriority;
|
||||
|
||||
@TableField(value = "F_ConsecutiveWorkDaysEnabled")
|
||||
private Boolean consecutiveWorkDaysEnabled;
|
||||
|
||||
@TableField(value = "F_ConsecutiveWorkDaysValue")
|
||||
private Integer consecutiveWorkDaysValue;
|
||||
|
||||
@TableField(value = "F_ConsecutiveWorkDaysPriority")
|
||||
private Byte consecutiveWorkDaysPriority;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkDaysEnabled")
|
||||
private Boolean weeklyWorkDaysEnabled;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkDaysValue")
|
||||
private Integer weeklyWorkDaysValue;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkDaysPriority")
|
||||
private Byte weeklyWorkDaysPriority;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkHoursEnabled")
|
||||
private Boolean weeklyWorkHoursEnabled;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkHoursValue")
|
||||
private Integer weeklyWorkHoursValue;
|
||||
|
||||
@TableField(value = "F_WeeklyWorkHoursPriority")
|
||||
private Byte weeklyWorkHoursPriority;
|
||||
|
||||
@TableField(value = "F_MinRestBetweenShiftsEnabled")
|
||||
private Boolean minRestBetweenShiftsEnabled;
|
||||
|
||||
@TableField(value = "F_MinRestBetweenShiftsValue")
|
||||
private Integer minRestBetweenShiftsValue;
|
||||
|
||||
@TableField(value = "F_MinRestBetweenShiftsPriority")
|
||||
private Byte minRestBetweenShiftsPriority;
|
||||
|
||||
@TableField(value = "F_CreateTime")
|
||||
private Date createTime;
|
||||
|
||||
@TableField(value = "F_UpdateTime")
|
||||
private Date updateTime;
|
||||
|
||||
@TableField(value = "F_Creator")
|
||||
private String creator;
|
||||
|
||||
@TableField(value = "F_Updater")
|
||||
private String updater;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user