加班申请单.md 3.4 KB

加班申请单

1. 设计目标

本设计采用“申请主表 + 员工明细从表”的方式,使一张加班申请单可以同时包含多名员工。

  • 主表 OA_OVERTIME:保存单据编号、申请人、公共申请内容、审核状态。
  • 从表 OA_OVERTIME_DETAIL:每行对应一名员工的一次加班申请明细。
  • 加班时长统一按小时存储,同时按0.5、1.5、2、2.5...半小时模式向上取整。

2. 加班申请单主表

表名:OA_OVERTIME

2.1 主表字段说明

字段 类型 必填 说明
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 终审日期

3. 员工加班申请明细从表

表名:OA_OVERTIME_DETAIL

3.1 从表字段说明

字段 类型 必填 说明
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) 备注

3.2 从表临时栏位说明

字段 类型 说明
DAY_OF_WEEK NVARCHAR(6) 星期: 按照加班开始时间自动显示所在的 星期一、星期二、星期三、星期四、星期五、星期六、星期日,放在END_TIME后面