namespace OASystem.Domain.ViewModels.QiYeWeChat;
///
/// 打卡日报数据响应
///
public class CheckInDayDataView : ResponseBase
{
/// 日报数据列表
public List? datas { get; set; }
}
///
/// 日报单条数据根对象
///
public class CheckInDayRoot
{
/// 基础信息
public BaseInfo? base_info { get; set; }
/// 汇总信息
public SummaryInfo? summary_info { get; set; }
/// 假勤相关信息列表
public List? holiday_infos { get; set; }
/// 校准状态信息列表
public List? exception_infos { get; set; }
/// 加班信息
public OtInfo? ot_info { get; set; }
/// 假勤统计信息列表
public List? sp_items { get; set; }
}
///
/// 假勤相关信息
///
public class HolidayInfo
{
/// 假勤申请id
public string? sp_number { get; set; }
/// 假勤信息摘要-标题信息
public SpTitle? sp_title { get; set; }
/// 假勤信息摘要-描述信息
public SpDescription? sp_description { get; set; }
}
///
/// 假勤标题信息
///
public class SpTitle
{
/// 多语言描述列表
public List? data { get; set; }
}
///
/// 假勤描述信息
///
public class SpDescription
{
/// 多语言描述列表
public List? data { get; set; }
}
///
/// 多语言文本项
///
public class LanguageText
{
/// 文本内容
public string? text { get; set; }
/// 语言类型,如 "zh_CN"
public string? lang { get; set; }
}
///
/// 打卡时段(上班/下班时间)
///
public class CheckinTimeItem
{
/// 上班时间(距离0点秒数)
public int work_sec { get; set; }
/// 下班时间(距离0点秒数)
public int off_work_sec { get; set; }
}
///
/// 打卡规则信息
///
public class RuleInfo
{
/// 规则ID
public uint groupid { get; set; }
/// 规则名称
public string? groupname { get; set; }
/// 班次ID(仅按班次上下班有效)
public int scheduleid { get; set; }
/// 班次名称(仅按班次上下班有效)
public string? schedulename { get; set; }
/// 打卡时间列表(仅固定上下班规则有效)
public List? checkintime { get; set; }
}
///
/// 基础信息
///
public class BaseInfo
{
/// 日报日期(Unix时间戳,秒)
public long date { get; set; }
/// 日报日期(DateTime本地时间)
public DateTime DateDt => DateTimeOffset.FromUnixTimeSeconds(date).LocalDateTime;
///
/// 记录类型
/// 1-固定上下班;2-外出(此报表中不会出现);3-按班次上下班;4-自由签到;5-加班;7-无规则
///
public int record_type { get; set; }
/// 打卡人员姓名
public string? name { get; set; }
/// 打卡人员别名
public string? name_ex { get; set; }
/// 打卡人员所在部门(多个部门用分号分隔)
public string? departs_name { get; set; }
/// 打卡人员账号(userid)
public string? acctid { get; set; }
/// 打卡人员所属规则信息
public RuleInfo? rule_info { get; set; }
/// 日报类型:0-工作日日报;1-休息日日报
public int day_type { get; set; }
}
///
/// 汇总信息
///
public class SummaryInfo
{
/// 当日打卡次数
public int checkin_count { get; set; }
/// 当日实际工作时长(秒)
public int regular_work_sec { get; set; }
/// 当日标准工作时长(秒)
public int standard_work_sec { get; set; }
/// 当日最早打卡时间(秒)
public int earliest_time { get; set; }
/// 当日最晚打卡时间(秒)
public int lastest_time { get; set; }
}
///
/// 校准状态信息(异常打卡)
///
public class ExceptionInfo
{
///
/// 校准状态类型
/// 1-迟到;2-早退;3-缺卡;4-旷工;5-地点异常;6-设备异常
///
public int exception { get; set; }
/// 当日此异常的次数
public int count { get; set; }
/// 当日此异常的时长(秒,迟到/早退/旷工才有值)
public int duration { get; set; }
}
///
/// 加班信息
///
public class OtInfo
{
/// 加班状态:0-无加班;1-正常;2-缺时长
public int ot_status { get; set; }
/// 加班时长(秒)
public int ot_duration { get; set; }
/// 加班不足的时长列表(ot_status=2时有效)
public List? exception_duration { get; set; }
/// 工作日加班记为调休(秒)
public int workday_over_as_vacation { get; set; }
/// 工作日加班记为加班费(秒)
public int workday_over_as_money { get; set; }
/// 休息日加班记为调休(秒)
public int restday_over_as_vacation { get; set; }
/// 休息日加班记为加班费(秒)
public int restday_over_as_money { get; set; }
/// 节假日加班记为调休(秒)
public int holiday_over_as_vacation { get; set; }
/// 节假日加班记为加班费(秒)
public int holiday_over_as_money { get; set; }
}
///
/// 假勤统计项
///
public class SpItem
{
///
/// 类型:1-请假;2-补卡;3-出差;4-外出;15-审批打卡;100-外勤
///
public int type { get; set; }
/// 具体请假类型id(当type为1时有效)
public int vacation_id { get; set; }
/// 当日假勤次数
public int count { get; set; }
/// 当日假勤时长(秒)
public int duration { get; set; }
/// 时长单位:0-按天 1-按小时
public int time_type { get; set; }
/// 统计项名称,如“年假”
public string? name { get; set; }
}