package jnpf.model.attendance.dto;

import jnpf.model.workflow.dto.AttendanceBaseForOa;
import lombok.Data;
import lombok.ToString;

/**
 * @Author huanglinpan
 * @Date 2024/11/7 10:18
 * @Version 1.0 （版本号）
 */
@Data
@ToString(callSuper = true)
public class LeaveQueryForOaDto extends AttendanceBaseForOa {

    /** 考勤请假类型的Id */
    private String typeId;
    /** 审批id */
    private String applyId;

    /**当请假类型为天时开始时间选择的班次信息 同ftb_attendance_shift_setting_period表F_Type类型：1 上半天 2 下半天 （半天制班次使用）当请假类型单位为半天时生效 */
    private Integer startTimeType;

    /**当请假类型为天时结束时间选择的班次信息 同ftb_attendance_shift_setting_period表F_Type类型：1 上半天 2 下半天 （半天制班次使用）当请假类型单位为半天时生效 */
    private Integer endTimeType;

    public Integer getStartTimeType() {
        if (getTime() != null && getTime().length > 1 && null != getUnit() && 3 == getUnit()) {
            //半天时 time ['2024-1-1 上午','2024-1-1 下午']
            try {
                return getTime()[0].split(" ")[1].contains("上午") ? 1 : 2;
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
        }
        return startTimeType;
    }

    public Integer getEndTimeType() {
        if (getTime() != null && getTime().length > 1 && null != getUnit() && 3 == getUnit()) {
            //半天时 time ['2024-1-1 上午','2024-1-1 下午']
            try {
                return getTime()[1].split(" ")[1].contains("上午") ? 1 : 2;
            } catch (Exception e) {
                throw new RuntimeException(e);
            }
        }
        return endTimeType;
    }
}
