package com.njcn.harmonic.pojo.param.upload;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.njcn.web.pojo.param.BaseParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotBlank;
import java.time.LocalDateTime;

/**
 * <p>
 * 电能质量全过程跟踪数据
 * </p>
 *
 * @author cdf
 * @since 2024-10-09
 */
@Getter
@Setter
public class PmsTemProcessApprovalParam {


    /**
     * 主键
     */
    private String objId;

    /**
     * 关联临时用户档案主键
     */
    @NotBlank(message = "关联临时用户档案不可为空")
    private String tempUserDossierId;

    private String tempUserDossierName;

    /**
     * 验收参与人
     */
    @NotBlank(message = "验收参与人不可为空")
    private String approvalJoinUserId;

    /**
     * 验收参与人名称
     */
    private String approvalJoinUserName;

    /**
     * 验收建议
     */
    private String approvalAdvise;


    /**
     * 遗留问题
     */
    @NotBlank(message = "遗留问题不可为空")
    private String legacyProblem;

    /**
     * 整改状态（是否整改）
     */
    @NotBlank(message = "整改状态不可为空")
    private String rectificationStatus;

    /**
     * 整改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime rectificationTime;

    /**
     * 整改人
     */
    private String rectificationUserId;

    /**
     * 整改人名称
     */
    private String rectificationUserName;

    /**
     * 整改措施
     */
    private String rectificationMeasure;

    @Data
    @EqualsAndHashCode(callSuper = true)
    public static class QueryPmsTemProcessApprovalParam extends BaseParam {

        private String objId;

        private String tempUserDossierId;

        /**
         * 运维单位
         */
        private String maintOrg;
    }


}
