本设计采用“申请主表 + 员工明细从表”的方式,使一张加班申请单可以同时包含多名员工。
OA_OVERTIME:保存单据编号、申请人、公共申请内容、审核状态。OA_OVERTIME_DETAIL:每行对应一名员工的一次加班申请明细。表名:OA_OVERTIME
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
JB_NO |
NVARCHAR(20) |
✅ | 加班申请单号,主键,格式 JBYYYYMMDDXXX(单据唯一识别码:JB) |
JB_DD |
DATETIME |
✅ | 申请日期 |
SAL_NO |
NVARCHAR(12) |
✅ | 申请人 |
DEP |
NVARCHAR(12) |
所属部门 | |
REASON |
NVARCHAR(1000) |
加班原因 | |
REM |
NVARCHAR(MAX) |
备注 | |
USR |
NVARCHAR(8) |
录入人 | |
RECORD_DD |
DATETIME |
录入日期 | |
CHK_MAN |
NVARCHAR(8) |
审核人 | |
CLS_DATE |
DATETIME |
终审日期 |
表名:OA_OVERTIME_DETAIL
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
JB_NO |
NVARCHAR(20) |
✅ | 加班申请单号,主键 |
ITM |
INT |
✅ | 项次,主键 |
SAL_NO |
NVARCHAR(20) |
✅ | 员工代号,关联SALM表 |
DEP |
NVARCHAR(12) |
员工所属部门 | |
JB_TYPE |
NVARCHAR(30) |
✅ | 加班类型:WORKING_DAY(工作日)、REST_DAY(周末)、PUBLIC_HOLIDAY(法定节假日)、SPECIAL_HOLIDAY(特殊假期)、OTHER(其他) |
JB_DATE |
DATETIME |
✅ | 申请日期:(yyyy-MM-dd) |
START_TIME |
DATETIME |
✅ | 加班开始时间:(yyyy-MM-dd HH:mm:ss),如果申请日期、开始时间、结束时间都在同一天,则只需要显示 HH:mm:ss |
END_TIME |
DATETIME |
✅ | 加班结束时间:(yyyy-MM-dd HH:mm:ss),如果申请日期、开始时间、结束时间都在同一天,则只需要显示 HH:mm:ss |
JB_HOURS |
NUMRIC(28,8) |
加班时长(小时):默认按照加班结束时间与加班开始时间的小时差自动计算,按0.5、1.5、2、2.5...半小时模式向上取整,可手工修改 | |
JB_DAYS |
NUMRIC(28,8) |
加班天数:默认按照加班结束时间与加班开始时间的日期天数差自动计算,按0.5、1.5、2、2.5...半天模式向上取整,可手工修改 | |
ATT_PERIOD |
NVARCHAR(10) |
归属考勤周期:格式yyyy-MM,默认按照加班开始时间抓取所在的年月,如 2026-07,可手工修改 | |
REASON |
NVARCHAR(1000) |
加班事由 | |
COMPENSATION_TYPE |
NVARCHAR(30) |
加班补偿类型:OVERTIME_PAY(加班费)、COMPENSATORY_LEAVE(调休)、NO_COMPENSATION(无补偿)、OTHER(其他) | |
COMPENSATION_COUNT |
NUMRIC(28,8) |
折算补偿次数:当加班补偿类型为“无补偿”则显示空,否则默认取JB_DAYS | |
ADR |
NVARCHAR(200) |
加班地点 | |
REM |
NVARCHAR(1000) |
备注 |
| 字段 | 类型 | 说明 |
|---|---|---|
DAY_OF_WEEK |
NVARCHAR(6) |
星期: 按照加班开始时间自动显示所在的 星期一、星期二、星期三、星期四、星期五、星期六、星期日,放在END_TIME后面 |