package com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import jakarta.xml.bind.annotation.*;
import java.io.Serializable;

@Data
@AllArgsConstructor
@NoArgsConstructor
@XmlRootElement(name = "Hole")
@XmlAccessorType(XmlAccessType.FIELD)
public class HoleXmlVO implements Serializable {

    // 孔类型
    @XmlAttribute(name = "type")
    private String type;

    // 拆单名/商品名
    @XmlAttribute(name = "name")
    private String name;

    // 加工面——正面、反面、左侧面、右侧面、上侧面、下侧面、斜面
    @XmlAttribute(name = "face")
    private String face;

    // 方向——向后Z-、向前Z+、向右X+、向左X-、向下Y-、向上Y+、斜O 孔加工面
    @XmlAttribute(name = "direction")
    private String direction;

    // 直径/沉头孔外直径
    @XmlAttribute(name = "diameter")
    private String diameter;

    // 沉头孔内直径
    @XmlAttribute(name = "diameterInner")
    private String diameterInner;

    // 深度/沉头孔浅孔深度
    @XmlAttribute(name = "depth")
    private String depth;

    // 沉头孔深孔深度
    @XmlAttribute(name = "depthInner")
    private String depthInner;

    // 孔组数量
    @XmlAttribute(name = "groupNumber")
    private String groupNumber;

    // 孔组X坐标偏移
    @XmlAttribute(name = "groupXoffset")
    private String groupXoffset;

    // 孔组Y坐标偏移
    @XmlAttribute(name = "groupYoffset")
    private String groupYoffset;

    // 孔组Z坐标偏移
    @XmlAttribute(name = "groupZoffset")
    private String groupZoffset;

    // 刀名称
    @XmlAttribute(name = "toolName")
    private String toolName;

    // 刀号
    @XmlAttribute(name = "toolNo")
    private String toolNo;

    // 起点坐标X
    @XmlAttribute(name = "startX")
    private String startX;

    // 起点坐标Y
    @XmlAttribute(name = "startY")
    private String startY;

    // 起点坐标Z
    @XmlAttribute(name = "startZ")
    private String startZ;

    // 刀具起点X轴旋转角度
    @XmlAttribute(name = "toolStartRotateX")
    private String toolStartRotateX;

    // 刀具起点Y轴旋转角度
    @XmlAttribute(name = "toolStartRotateY")
    private String toolStartRotateY;

    // 刀具起点Z轴旋转角度
    @XmlAttribute(name = "toolStartRotateZ")
    private String toolStartRotateZ;

    // 终点坐标X
    @XmlAttribute(name = "endX")
    private String endX;

    // 终点坐标Y
    @XmlAttribute(name = "endY")
    private String endY;

    // 终点坐标Z
    @XmlAttribute(name = "endZ")
    private String endZ;

    // 刀具终点X轴旋转角度
    @XmlAttribute(name = "toolEndRotateX")
    private String toolEndRotateX;

    // 刀具终点Y轴旋转角度
    @XmlAttribute(name = "toolEndRotateY")
    private String toolEndRotateY;

    // 刀具终点Z轴旋转角度
    @XmlAttribute(name = "toolEndRotateZ")
    private String toolEndRotateZ;





    // 是否不要
//    @XmlElement(name = "Begin")
//    private PointBeginXmlVO pointBeginXmlVO;
//
//    @XmlElement(name = "End")
//    private PointEndXmlVO pointEndXmlVO;
}
