package org.dromara.domain.assets;

import org.dromara.common.tenant.core.TenantEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serial;

/**
 * 社区资产对象 community_assets
 *
 * @author boman
 * @date 2025-04-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("community_assets")
public class CommunityAssets extends TenantEntity {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 资产ID
     */
    @TableId(value = "community_asset_id")
    private Long communityAssetId;

    /**
     * 资产类型id
     */
    private Long assetId;

    /**
     * 资产类型，如设备、车辆等
     */
    private String assetName;

    /**
     * 设备名称
     */
    private String equipmentName;

    /**
     * 设备封面照片的存储路径
     */
    private String equipmentCoverPhoto;

    /**
     * 设备编号，唯一标识
     */
    private String equipmentNumber;

    /**
     * 设备二维码的存储路径或内容
     */
    private String equipmentQrCode;

    /**
     * 设备状态，如1正常、2维修中、3报废等
     */
    private String equipmentStatus;

    /**
     * 设备型号
     */
    private String equipmentModel;

    /**
     * 设备购买时间
     */
    private Date purchaseDate;

    /**
     * 设备用途描述
     */
    private String equipmentPurpose;

    /**
     * 设备存放位置或使用位置
     */
    private String equipmentLocation;

    /**
     * 设备购买价格
     */
    private Long equipmentPrice;

    /**
     * 设备入库时间
     */
    private Date storageTime;

    /**
     * 入库操作人
     */
    private String storagePerson;

    /**
     * 设备出库时间
     */
    private Date outboundTime;

    /**
     * 出库操作人
     */
    private String outboundPerson;

    /**
     * 车牌号（如果是车辆类资产）
     */
    private String plateNumber;

    /**
     * 设备照片的存储路径（多个路径用逗号分隔）
     */
    private String equipmentPhotos;

    /**
     * 最近维护日期
     */
    private Date maintenanceDate;

    /**
     * 维护操作人
     */
    private String maintenancePerson;

    /**
     * 保修期（月）
     */
    private String warrantyPeriod;

    /**
     * 折旧率（百分比）
     */
    private String depreciationRate;

    /**
     * 备注
     */
    private String remark;


}
