/*
 * Author: wangjian
 * 生成entity
 */
package com.tofly.pojo.plan;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.List;
import java.util.stream.Collectors;


/**
 * 探漏记录表
 *
 * @author admin
 * @date Tue Oct 26 00:00:00 CST 2021
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName(value = "TF_YMPN_LEAK_RECORD_W", resultMap = "leakRecordMap")
@ApiModel
public class LeakRecord extends Model<LeakRecord> {
    private static final long serialVersionUID = 1L;

    /**
     * $column.comments
     */
    @TableId(value = "ID", type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "$column.comments")
    private Long id;
    /**
     * 漏点编号（编号规则：xxxx-xx-xx-3位顺序号）
     */
    @ApiModelProperty(value = "漏点编号（编号规则：xxxx-xx-xx-3位顺序号）")
    private String leakSourceCode;
    /**
     * 地理位置坐标x
     */
    @ApiModelProperty(value = "地理位置坐标x")
    private String x;
    /**
     * 地理位置坐标y
     */
    @ApiModelProperty(value = "地理位置坐标y")
    private String y;
    /**
     * 地址
     */
    @ApiModelProperty(value = "地址")
    private String address;
    /**
     * 管材
     */
    @ApiModelProperty(value = "管材")
    private String pipe;
    /**
     * 管径(mm)
     */
    @ApiModelProperty(value = "管径(mm)")
    private String pipeDiameter;
    /**
     * 管道埋设年代
     */
    @ApiModelProperty(value = "管道埋设年代")
    private String pipelineBurialAge;
    /**
     * 管道埋深（m）
     */
    @ApiModelProperty(value = "管道埋深（m）")
    private String pipelineBuriedDepth;
    /**
     * 管道破损情况
     */
    @ApiModelProperty(value = "管道破损情况")
    private String pipelineDamageCondition;
    /**
     * 地面介质
     */
    @ApiModelProperty(value = "地面介质")
    private String groundMedium;
    /**
     * 探测方法和使用仪器简要说明
     */
    @ApiModelProperty(value = "探测方法和使用仪器简要说明")
    private String detectionNode;
    /**
     * 漏水点简要说明
     */
    @ApiModelProperty(value = "漏水点简要说明")
    private String leakSourceNode;
    /**
     * 漏水点简要说明附件图片
     */
    @ApiModelProperty(value = "漏水点简要说明附件图片")
    private String leakSourceFileId;
    /**
     * 处理情况
     */
    @ApiModelProperty(value = "处理情况")
    private String handlingInformation;
    /**
     * 开挖验证相关说明
     */
    @ApiModelProperty(value = "开挖验证相关说明")
    private String excavationNode;
    /**
     * 巡查人
     */
    @ApiModelProperty(value = "巡查人")
    private String inspectUser;
    /**
     * 巡查上报时间
     */
    @ApiModelProperty(value = "巡查上报时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date inspectTime;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @TableField(value = "CREATE_USER", fill = FieldFill.INSERT)
    private Long createUser;
    @TableField(exist = false)
    @ApiModelProperty(hidden = true)
    private String createUserName;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 子计划id
     */
    @ApiModelProperty(value = "子计划id")
    private Long planChildId;
    /**
     * 开挖验证相关说明附件图片
     */
    @ApiModelProperty(value = "开挖验证相关说明附件图片")
    private String excavationFileId;

    @ApiModelProperty(value = "漏水点简要说明附件图片路径列表")
    @TableField(exist = false)
    private List<String> leakSourceFilePathList;

    @ApiModelProperty(value = "开挖验证相关说明附件图片路径列表")
    @TableField(exist = false)
    private List<String> excavationFilePathList;
}
