package com.cf.imes.module.executor.controller.admin.order.vo.order;

import com.cf.imes.framework.excel.core.annotations.DictFormat;
import com.cf.imes.module.system.enums.DictTypeConstants;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

/**
 * 生产单 Excel 导入 VO
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = false) // 设置 chain = false，避免生产单导入有问
public class OrderPlateImportExcelVO {
    @ExcelProperty(value = "序号")
    private int ordinal;

    @ExcelProperty(value = "类型")
    private String type;

    @ExcelProperty(value = "物料编码")
    private String rawGoodsId;

    @ExcelProperty(value = "商品名称")
    private String goodsName;

    @ExcelProperty(value = "材质")
    private String material;

    @ExcelProperty(value = "颜色")
    private String color;

    @ExcelProperty(value = "厂家")
    private String factory;

    @ExcelProperty(value = "品牌")
    private String brand;

    @ExcelProperty(value = "规格")
    private String goodsModel;

    @ExcelProperty(value = "型号")
    private String goodsSpecs;

    @ExcelProperty(value = "单位")
    private String goodsUnit;

    @ExcelProperty(value = "数量")
    private BigDecimal goodsNumber;

    @ExcelProperty(value = "房间")
    private String roomsName;

    @ExcelProperty(value = "柜体")
    private String cabinetsName;

    @ExcelProperty(value = "板名称")
    private String platesName;

    @ExcelProperty(value = "板号")
    private String platesNumber;

    @ExcelProperty(value = "成品长")
    private BigDecimal productLength;

    @ExcelProperty(value = "成品宽")
    private BigDecimal productWidth;

    @ExcelProperty(value = "开料长")
    private BigDecimal actualLength;

    @ExcelProperty(value = "开料宽")
    private BigDecimal actualWidth;

    @ExcelProperty(value = "厚")
    private BigDecimal thickness;

    @ExcelProperty(value = "左封边")
    private BigDecimal sealLeft;

    @ExcelProperty(value = "右封边")
    private BigDecimal sealRight;

    @ExcelProperty(value = "上封边")
    private BigDecimal sealAbove;

    @ExcelProperty(value = "下封边")
    private BigDecimal sealUnder;

    @ExcelProperty(value = "组合类型")
    private String synthesis;

    @ExcelProperty(value = "组合名称")
    private String combinationName;

    @ExcelProperty(value = "排版面")
    private int typographicFace;

    @ExcelProperty(value = "纹路")
    private int grain;

    @ExcelProperty(value = "开门方向")
    @DictFormat(DictTypeConstants.USER_SEX)
    private int openingDirections;

    @ExcelProperty(value = "备注1")
    private String remark1;

    @ExcelProperty(value = "备注2")
    private String remark2;

    @ExcelProperty(value = "备注3")
    private String remark3;

    @ExcelProperty(value = "备注4")
    private String remark4;

    @ExcelProperty(value = "备注5")
    private String remark5;

    @ExcelProperty(value = "备注6")
    private String remark6;

    @ExcelProperty(value = "备注7")
    private String remark7;

    @ExcelProperty(value = "备注8")
    private String remark8;

    @ExcelProperty(value = "备注9")
    private String remark9;

    @ExcelProperty(value = "备注10")
    private String remark10;

}
