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

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.njcn.harmonic.pojo.po.upload.PmsTemProcessTestRun;
import com.njcn.harmonic.utils.TimestampAsLongSerializer;
import com.njcn.web.pojo.param.BaseParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.sql.Timestamp;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 
 * </p>
 *
 * @author cdf
 * @since 2024-11-04
 */
@Data
public class PmsTemProcessTestRunParam {

    private static final long serialVersionUID = 1L;

    private String objId;

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

    /**
     * 测试结论
     */
    @NotBlank(message = "测试结论不可为空")
    private String testResult;

    /**
     * 越限详情多个指标需要用英文逗号拼接
     */
    private String ovIndexs;

    private String issueOrg;

    /**
     * 出具单位名称
     */
    @NotBlank(message = "出具单位名称不可为空")
    private String issueOrgName;

    /**
     * 操作人名称
     */
    private String operateUserName;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate monitorDate;

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

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime rectificationTime;

    private String rectificationUserId;

    private String rectificationUserName;

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






    @Data
    @EqualsAndHashCode(callSuper = true)
    public static class UpdatePmsTemProcessTestRunParamParam extends PmsTemProcessTestRunParam {

        private String objId;
    }

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

        private String objId;

        private String tempUserDossierId;

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

    


}
