pushLoftModel.cs 7.26 KB
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hh.Mes.POJO.ApiEntity
{
    /// <summary>
    /// 激光切割零件推送Model
    /// </summary>
    public class pushLoftModel
    {
        public List<Part> PartList { get; set; }
    }

    public class Part
    {
        /// <summary>
        /// 零件编号
        /// </summary>
        public string PartID { get; set; }

        /// <summary>
        /// 零件物料号
        /// </summary>
        public string MaterialID { get; set; }

        /// <summary>
        /// 零件图纸JSON
        /// </summary>
        public string FileJson { get; set; }

        /// <summary>
        /// 材质
        /// </summary>
        public string Texture { get; set; }

        /// <summary>
        /// 规格
        /// </summary>
        public string Norm { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }
    }


    /// <summary>
    /// 激光套料零件图纸JSON
    /// </summary>
    public class NestingJsonModel
    {
        /// <summary>
        /// 条形码
        /// </summary>
        public string bar_code { get; set; }

        /// <summary>
        /// 管子件号
        /// </summary>
        public string part_name { get; set; }

        /// <summary>
        /// 材质
        /// </summary>
        public string material { get; set; }

        /// <summary>
        /// 外径
        /// </summary>
        public string diameter { get; set; }

        /// <summary>
        /// 管壁厚
        /// </summary>
        public string thickness { get; set; }

        /// <summary>
        /// 管长
        /// </summary>
        public string length { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        public int quantity { get; set; }

        /// <summary>
        /// 左端的平面
        /// </summary>
        public List<End1Item> end1 { get; set; }

        /// <summary>
        /// 右端的平面
        /// </summary>
        public List<End2Item> end2 { get; set; }

        /// <summary>
        /// 孔(包含左右端的支管)
        /// </summary>
        public List<HolesItem> holes { get; set; }

    }

    public class Point
    {
        /// <summary>
        /// 
        /// </summary>
        public string x { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string y { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string z { get; set; }

    }


    public class Normal
    {
        /// <summary>
        /// 
        /// </summary>
        public string x { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string y { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string z { get; set; }

    }

    public class End1Item
    {
        /// <summary>
        /// 坡口字符串
        /// </summary>
        public string bevelString { get; set; }

        /// <summary>
        /// 平面上的点
        /// </summary>
        public Point point { get; set; }

        /// <summary>
        /// 平面法向量
        /// </summary>
        public Normal normal { get; set; }

    }

    public class End2Item
    {
        /// <summary>
        ///  坡口字符串
        /// </summary>
        public string bevelString { get; set; }

        /// <summary>
        /// 平面上的点
        /// </summary>
        public Point point { get; set; }

        /// <summary>
        /// 平面法向量
        /// </summary>
        public Normal normal { get; set; }

    }

    public class StartPoint
    {
        /// <summary>
        /// 
        /// </summary>
        public string x { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string y { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string z { get; set; }

    }


    public class EndPoint
    {
        /// <summary>
        /// 
        /// </summary>
        public string x { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string y { get; set; }

        /// <summary>
        /// 
        /// </summary>
        public string z { get; set; }

    }


    public class HolesItem
    {
        /// <summary>
        /// 坡口字符串
        /// </summary>
        public string bevelString { get; set; }

        /// <summary>
        /// 外径
        /// </summary>
        public int diameter { get; set; }

        /// <summary>
        /// 支管轴线起点
        /// </summary>
        public StartPoint startPoint { get; set; }

        /// <summary>
        /// 支管轴线终点
        /// </summary>
        public EndPoint endPoint { get; set; }

    }

    /// <summary>
    /// 套料需求Model
    /// </summary>
    public class pushNestPlanModel
    {
        /// <summary>
        /// 套料计划ID
        /// </summary>
        public string NestPlanID { get; set; }

        /// <summary>
        /// 切割机代码控制类型 默认1
        /// </summary>
        public string CutControlType { get; set; }

        /// <summary>
        /// 可用零件list
        /// </summary>
        public List<PartItem> PartList { get; set; }

        /// <summary>
        /// 可使用料
        /// </summary>
        public List<PlateItem> PlateList { get; set; }
    }

    /// <summary>
    /// 零件
    /// </summary>
    public class PartItem 
    {
        /// <summary>
        /// 零件编号
        /// </summary>
        public string PartID { get; set; }

        /// <summary>
        /// 零件物料号
        /// </summary>
        public string MaterialID { get; set; }

        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }

        /// <summary>
        /// 排版优先级
        /// </summary>
        public string Priority { get; set; }

        /// <summary>
        /// 计划数量
        /// </summary>
        public string PlanQuantity { get; set; }
    }

    /// <summary>
    /// 使用料
    /// </summary>
    public class PlateItem 
    {
        /// <summary>
        /// 材料编号
        /// </summary>
        public string StockListNo { get; set; }

        /// <summary>
        /// 上料顺序
        /// </summary>
        public string PlateIndex { get; set; }

        /// <summary>
        /// 零件物料号
        /// </summary>
        public string MaterialID { get; set; }

        /// <summary>
        /// 材质
        /// </summary>
        public string Texture { get; set; }

        /// <summary>
        /// 规格
        /// </summary>
        public string Norm { get; set; }

        /// <summary>
        /// 长度
        /// </summary>
        public string Length { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        public string Amount { get; set; }

        /// <summary>
        /// 打标区域宽度
        /// </summary>
        public string MarkWidth { get; set; }

        /// <summary>
        /// 打标区域长度
        /// </summary>
        public string MarkLength { get; set; }
        
    }
}