考勤功能完成

This commit is contained in:
2024-11-05 18:55:58 +08:00
parent fee5e4edb7
commit 36d06eeb53
16 changed files with 942 additions and 1 deletions

View File

@@ -0,0 +1,57 @@
package com.ruoyi.oa.domain;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 人员考勤对象 sys_oa_attendance
*
* @author hdka
* @date 2024-11-05
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sys_oa_attendance")
public class SysOaAttendance extends BaseEntity {
private static final long serialVersionUID=1L;
/**
* 主键id
*/
@TableId(value = "id")
private Long id;
/**
* 员工id
*/
private Long userId;
/**
* 签到日
*/
private Long attendanceDay;
/**
* 项目id
*/
private Long projectId;
/**
* 时长1|0.5
*/
private Long dayLength;
/**
* 时长(小时)
*/
private Long hour;
/**
* 备注
*/
private String remark;
/**
* 删除标志
*/
@TableLogic
private Long delFlag;
}

View File

@@ -129,4 +129,9 @@ public class SysOaProject extends BaseEntity {
* 延期至
*/
private Date postponeTime;
/**
* 项目代表色
*/
private String color;
}

View File

@@ -0,0 +1,60 @@
package com.ruoyi.oa.domain.bo;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* 人员考勤业务对象 sys_oa_attendance
*
* @author hdka
* @date 2024-11-05
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class SysOaAttendanceBo extends BaseEntity {
/**
* 主键id
*/
private Long id;
/**
* 员工id
*/
private Long userId;
/**
* 签到日
*/
@NotNull(message = "签到日不能为空", groups = { AddGroup.class, EditGroup.class })
private Long attendanceDay;
/**
* 项目id
*/
@NotNull(message = "项目id不能为空", groups = { AddGroup.class, EditGroup.class })
private Long projectId;
/**
* 时长1|0.5
*/
private Double dayLength;
/**
* 时长(小时)
*/
private Double hour;
/**
* 备注
*/
private String remark;
}

View File

@@ -156,4 +156,10 @@ public class SysOaProjectBo extends BaseEntity {
*/
private Date postponeTime;
/**
* 项目代表色
*/
private String color;
}

View File

@@ -0,0 +1,75 @@
package com.ruoyi.oa.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyi.common.annotation.ExcelDictFormat;
import com.ruoyi.common.convert.ExcelDictConvert;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.oa.domain.SysOaProject;
import lombok.Data;
/**
* 人员考勤视图对象 sys_oa_attendance
*
* @author hdka
* @date 2024-11-05
*/
@Data
@ExcelIgnoreUnannotated
public class SysOaAttendanceVo {
private static final long serialVersionUID = 1L;
/**
* 主键id
*/
@ExcelProperty(value = "主键id")
private Long id;
/**
* 员工id
*/
@ExcelProperty(value = "员工id")
private Long userId;
/**
* 签到日
*/
@ExcelProperty(value = "签到日")
private Long attendanceDay;
/**
* 项目id
*/
@ExcelProperty(value = "项目id")
private Long projectId;
/**
* 时长1|0.5
*/
@ExcelProperty(value = "时长", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "天=")
private Long dayLength;
/**
* 时长(小时)
*/
@ExcelProperty(value = "时长", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "小=时")
private Long hour;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
private SysUser sysUser;
private SysOaProjectVo sysOaProjectVo;
private String color;
}

View File

@@ -180,4 +180,10 @@ public class SysOaProjectVo {
*/
private Date postponeTime;
/**
* 项目代表色
*/
private String color;
}

View File

@@ -0,0 +1,15 @@
package com.ruoyi.oa.domain.vo;
import com.ruoyi.common.core.domain.entity.SysUser;
import lombok.Data;
import java.util.List;
@Data
public class SysUserVo extends SysUser {
private List<SysOaAttendanceVo> attendances;
private List<SysOaProjectVo> projects;
}