package com.zg.project.information.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zg.framework.aspectj.lang.annotation.Excel;
import com.zg.framework.web.domain.BaseEntity;

/**
 * 库位明细对象 pcde_detail
 *
 * @author zg
 * @date 2025-05-29
 */
public class PcdeDetail extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 库位编号 */
    @Excel(name = "库位编号")
    private String pcode;

    /** 所属场景 */
    @Excel(name = "所属场景名称")
    private String scene;

    /** 所属场景名称 */
    private String sceneName;

    /** 所属仓库 */
    @Excel(name = "所属仓库")
    private String warehouse;

    /** 所属仓库名称 */
    @Excel(name = "所属仓库名称")
    private String warehouseName;

    /** 编码后ID */
    @Excel(name = "编码后ID")
    private String encodedId;

    /** 标签 */
    @Excel(name = "标签")
    private String tag;

    /** 备注 */
    @Excel(name = "备注")
    private String remark;

    /** 是否删除（0 正常，1 删除） */
    private String isDelete;

    /** 创建人 */
    private String createdBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createdAt;

    /** 修改人 */
    private String updatedBy;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updatedAt;

    // Getter & Setter

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public String getPcode() {
        return pcode;
    }

    public void setPcode(String pcode) {
        this.pcode = pcode;
    }

    public void setScene(String scene) {
        this.scene = scene;
    }

    public String getScene() {
        return scene;
    }

    public void setSceneName(String sceneName) {
        this.sceneName = sceneName;
    }

    public String getSceneName() {
        return sceneName;
    }

    public void setWarehouse(String warehouse) {
        this.warehouse = warehouse;
    }

    public String getWarehouse() {
        return warehouse;
    }

    public void setWarehouseName(String warehouseName) {
        this.warehouseName = warehouseName;
    }

    public String getWarehouseName() {
        return warehouseName;
    }

    public void setEncodedId(String encodedId) {
        this.encodedId = encodedId;
    }

    public String getEncodedId() {
        return encodedId;
    }

    public void setTag(String tag) {
        this.tag = tag;
    }

    public String getTag() {
        return tag;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getRemark() {
        return remark;
    }

    public void setIsDelete(String isDelete) {
        this.isDelete = isDelete;
    }

    public String getIsDelete() {
        return isDelete;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setUpdatedBy(String updatedBy) {
        this.updatedBy = updatedBy;
    }

    public String getUpdatedBy() {
        return updatedBy;
    }

    public void setUpdatedAt(Date updatedAt) {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("pcode", getPcode())
                .append("scene", getScene())
                .append("sceneName", getSceneName())
                .append("warehouse", getWarehouse())
                .append("warehouseName", getWarehouseName())
                .append("encodedId", getEncodedId())
                .append("tag", getTag())
                .append("remark", getRemark())
                .append("isDelete", getIsDelete())
                .append("createdBy", getCreatedBy())
                .append("createdAt", getCreatedAt())
                .append("updatedBy", getUpdatedBy())
                .append("updatedAt", getUpdatedAt())
                .toString();
    }
}
