package com.yeejoin.amos.boot.module.jxiop.api.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.Date;
import java.util.List;

/**
 * 户用光伏合同表
 *
 * @author system_generator
 * @date 2023-03-17
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(value = "household_pv_install", autoResultMap = true)
public class HouseholdPvInstall extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 户用光伏id
	 */
	@TableField("household_pv_id")
	private Long householdPvId;

	/**
	 * 所属厂站
	 */
	@TableField("platform_company_id")
	private String platformCompanyId;

	/**
	 * 安装信息描述
	 */
	@TableField(value = "description", updateStrategy = FieldStrategy.IGNORED)
	private String description;

	/**
	 * 基础框架整体安装照片
	 */
	@TableField(value = "foundation_frame_photo", typeHandler = FastjsonTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
	private List<CommonFile> foundationFramePhoto;

	/**
	 * 组件铭牌安装照片
	 */
	@TableField(value = "nameplate_photo", typeHandler = FastjsonTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
	private List<CommonFile> nameplatePhoto;

	/**
	 * 配电箱、逆变器案场安装照片
	 */
	@TableField(value = "distribution_box_inverter_photo", typeHandler = FastjsonTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
	private List<CommonFile> distributionBoxInverterPhoto;

	/**
	 * 电表照片
	 */
	@TableField(value = "electricity_meter_photo", typeHandler = FastjsonTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
	private List<CommonFile> electricityMeterPhoto;

	/**
	 * 其他照片
	 */
	@TableField(value = "other_photo", typeHandler = FastjsonTypeHandler.class, updateStrategy = FieldStrategy.IGNORED)
	private List<CommonFile> otherPhoto;

	/**
	 * 创建时间
	 */
	@TableField("create_time")
	private Date createTime;

}
