package com.ruoyi.system.domain.propertyRepair;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 物业报修对象 property_repair
 * 
 * @author boman
 * @date 2025-02-14
 */
public class PropertyRepair extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 报修ID */
    private Long repairId;
    private Long userId;

    /** 门户id */
    @Excel(name = "门户id")
    private Long portalId;

    /** 详细门牌号 */
    @Excel(name = "详细门牌号")
    private String houseAddress;

    /** 报修时间，记录报修提交的时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "报修时间，记录报修提交的时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date repairTime;

    /** 报修用户手机号码 */
    @Excel(name = "报修用户手机号码")
    private String phoneNumber;

    /** 报修标题，简要描述报修内容 */
    @Excel(name = "报修标题，简要描述报修内容")
    private String repairTitle;

    /** 报修类别，如水电维修、门窗维修等 */
    @Excel(name = "报修类别，如水电维修、门窗维修等")
    private String maintenanceCategory;

    /** 报修详情，详细描述报修问题 */
    @Excel(name = "报修详情，详细描述报修问题")
    private String repairDetails;

    /** 报修详情图片，存储图片路径或URL */
    @Excel(name = "报修详情图片，存储图片路径或URL")
    private String repairImages;

    /** 报修状态：1：待分派 2：待上门 3：处理中 4：已完成 */
    @Excel(name = "报修状态：1：待分派 2：待上门 3：处理中 4：已完成")
    private String repairStatus;

    /** 维修人员姓名 */
    @Excel(name = "维修人员姓名")
    private String staffName;

    /** 维修人员ID */
    @Excel(name = "维修人员ID")
    private Long staffId;
    /** 维修人员手机号 */
    @Excel(name = "维修人员手机号")
    private String staffPhone;

    /** 上门时间，记录维修人员上门的时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "上门时间，记录维修人员上门的时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date visitTime;

    /** 上门拍照，存储图片路径或URL */
    @Excel(name = "上门拍照，存储图片路径或URL")
    private String visitPhoto;

    /** 维修结束时间，记录维修完成的时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "维修结束时间，记录维修完成的时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date completionTime;

    /** 维修结束拍照，存储图片路径或URL */
    @Excel(name = "维修结束拍照，存储图片路径或URL")
    private String completionPhoto;

    /** 维修详情，记录维修的具体过程和结果 */
    @Excel(name = "维修详情，记录维修的具体过程和结果")
    private String repairCompletionDetails;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public void setRepairId(Long repairId)
    {
        this.repairId = repairId;
    }

    public Long getRepairId() 
    {
        return repairId;
    }
    public void setPortalId(Long portalId) 
    {
        this.portalId = portalId;
    }

    public Long getPortalId() 
    {
        return portalId;
    }
    public void setHouseAddress(String houseAddress) 
    {
        this.houseAddress = houseAddress;
    }

    public String getHouseAddress() 
    {
        return houseAddress;
    }
    public void setRepairTime(Date repairTime) 
    {
        this.repairTime = repairTime;
    }

    public Date getRepairTime() 
    {
        return repairTime;
    }
    public void setPhoneNumber(String phoneNumber) 
    {
        this.phoneNumber = phoneNumber;
    }

    public String getPhoneNumber() 
    {
        return phoneNumber;
    }
    public void setRepairTitle(String repairTitle) 
    {
        this.repairTitle = repairTitle;
    }

    public String getRepairTitle() 
    {
        return repairTitle;
    }
    public void setMaintenanceCategory(String maintenanceCategory) 
    {
        this.maintenanceCategory = maintenanceCategory;
    }

    public String getMaintenanceCategory() 
    {
        return maintenanceCategory;
    }
    public void setRepairDetails(String repairDetails) 
    {
        this.repairDetails = repairDetails;
    }

    public String getRepairDetails() 
    {
        return repairDetails;
    }
    public void setRepairImages(String repairImages) 
    {
        this.repairImages = repairImages;
    }

    public String getRepairImages() 
    {
        return repairImages;
    }
    public void setRepairStatus(String repairStatus) 
    {
        this.repairStatus = repairStatus;
    }

    public String getRepairStatus() 
    {
        return repairStatus;
    }
    public void setStaffName(String staffName) 
    {
        this.staffName = staffName;
    }

    public String getStaffName() 
    {
        return staffName;
    }
    public void setStaffId(Long staffId) 
    {
        this.staffId = staffId;
    }

    public Long getStaffId() 
    {
        return staffId;
    }
    public void setStaffPhone(String staffPhone) 
    {
        this.staffPhone = staffPhone;
    }

    public String getStaffPhone() 
    {
        return staffPhone;
    }
    public void setVisitTime(Date visitTime) 
    {
        this.visitTime = visitTime;
    }

    public Date getVisitTime() 
    {
        return visitTime;
    }
    public void setVisitPhoto(String visitPhoto) 
    {
        this.visitPhoto = visitPhoto;
    }

    public String getVisitPhoto() 
    {
        return visitPhoto;
    }
    public void setCompletionTime(Date completionTime) 
    {
        this.completionTime = completionTime;
    }

    public Date getCompletionTime() 
    {
        return completionTime;
    }
    public void setCompletionPhoto(String completionPhoto) 
    {
        this.completionPhoto = completionPhoto;
    }

    public String getCompletionPhoto() 
    {
        return completionPhoto;
    }
    public void setRepairCompletionDetails(String repairCompletionDetails) 
    {
        this.repairCompletionDetails = repairCompletionDetails;
    }

    public String getRepairCompletionDetails() 
    {
        return repairCompletionDetails;
    }

    @Override
    public String toString() {
        return "PropertyRepair{" +
                "repairId=" + repairId +
                ", userId=" + userId +
                ", portalId=" + portalId +
                ", houseAddress='" + houseAddress + '\'' +
                ", repairTime=" + repairTime +
                ", phoneNumber='" + phoneNumber + '\'' +
                ", repairTitle='" + repairTitle + '\'' +
                ", maintenanceCategory='" + maintenanceCategory + '\'' +
                ", repairDetails='" + repairDetails + '\'' +
                ", repairImages='" + repairImages + '\'' +
                ", repairStatus='" + repairStatus + '\'' +
                ", staffName='" + staffName + '\'' +
                ", staffId=" + staffId +
                ", staffPhone='" + staffPhone + '\'' +
                ", visitTime=" + visitTime +
                ", visitPhoto='" + visitPhoto + '\'' +
                ", completionTime=" + completionTime +
                ", completionPhoto='" + completionPhoto + '\'' +
                ", repairCompletionDetails='" + repairCompletionDetails + '\'' +
                '}';
    }
}
