/**
 * Copyright (c) 2018-2099, Chill Zhuang 庄骞 (bladejava@qq.com).
 * <p>
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * <p>
 * http://www.apache.org/licenses/LICENSE-2.0
 * <p>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.xiaoniu.subsystem.business.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xiaoniu.common.core.resdata.BaseQueryDTO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serial;
import java.util.Date;

/**
 * 培训计划管理表实体类
 *
 * @author sst
 * @since 2024-11-26
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class ProjectPageDTO extends BaseQueryDTO {

    @Serial
    private static final long serialVersionUID = 1L;
    /**
     * 计划ID
     */
    @Schema(description = "计划ID")
    private Long projectId;

    /**
     * 专业（班次）ID
     */
    @Schema(description = "专业（班次）ID")
    private Long flightId;
    /**
     * 专业（班次）名称
     */
    @Schema(description = "专业（班次）名称")
    private String flightName;

    @Schema(description = "培训批次")
    private String trainingBatch;

    @Schema(description = "专业类型")
    private String majorType;

    /**
     * 承训单位ID
     */
    @Schema(description = "承训单位ID")
    private Long trainingUnitId;
    /**
     * 承训单位名称
     */
    @Schema(description = "承训单位名称")
    private String trainingUnitName;
    /**
     * 培训地点
     */
    @Schema(description = "培训地点")
    private String trainingSite;
    /**
     * 联系人
     */
    @Schema(description = "联系人")
    private String contactPerson;
    /**
     * 联系电话
     */
    @Schema(description = "联系电话")
    private String phonenumber;


    @Schema(description = "年度（示例：yyyy")
    private String year;

    /**
     * 状态[1:正常]
     */
    @Schema(description = "状态(0未审核 1审核通过 2审核不通过)")
    private Integer status;


    @Schema(description = "开训时间1")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date trainingTime1;

    @Schema(description = "开训时间2")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date trainingTime2;

    @Schema(description = "学制1（天）")
    private Integer educationalSystem1;

    @Schema(description = "学制2（天）")
    private Integer educationalSystem2;


    /**
     * 主键集合
     */
    @Schema(description = "主键集合")
    private String ids;


}
