wangxinhui
2025-11-30 f2b85c65234e0dcdd3fcce4dafbe16933b7f1b48
ÏîÄ¿´úÂë/WCSServices/WIDESEAWCS_DTO/Agv/AgvTaskSendDTO.cs
@@ -6,44 +6,121 @@
namespace WIDESEAWCS_DTO.Agv
{
    public class MissionDataItem
    {
        /// <summary>
        /// æ¬è¿æ–™ç®±åºå·ä»Ž1开始
        /// </summary>
        public int Sequence { get; set; } = 1;
        /// <summary>
        /// æ–™ç®±å·
        /// </summary>
        public string BinCode { get; set; }
        /// <summary>
        /// æ–™ç®±æ‰€åœ¨çš„起始点位
        /// </summary>
        public string StartPosition { get; set; }
        /// <summary>
        /// æ–™ç®±æ‰€åœ¨çš„起始槽位
        /// </summary>
        public string StartSlotCode { get; set; }
        /// <summary>
        /// å–料箱时之前是否需要确认
        /// </summary>
        public bool TakeActionConfirm { get; set; }
        /// <summary>
        /// å–料箱后是否需要通知
        /// </summary>
        public bool TakeActionInform { get; set; }
        /// <summary>
        /// æ–™ç®±æ‰€åœ¨çš„目标点位
        /// </summary>
        public string EndPosition { get; set; }
        /// <summary>
        /// æ–™ç®±æ‰€åœ¨çš„目标槽位
        /// </summary>
        public string EndSlotCode { get; set; }
        /// <summary>
        /// æ”¾æ–™ç®±æ—¶ä¹‹å‰æ˜¯å¦éœ€è¦ç¡®è®¤
        /// </summary>
        public bool PutActionConfirm { get; set; }
        /// <summary>
        /// æ”¾æ–™ç®±åŽæ˜¯å¦éœ€è¦é€šçŸ¥
        /// </summary>
        public bool PutActionInform { get; set; }
    }
    /// <summary>
    /// AGV任务发送
    /// </summary>
    public class AgvTaskSendDTO
    {
        /// <summary>
        /// å¤–接系统标识
        /// åº“存组织ID
        /// </summary>
        public string SysToken { get; set; }
        public string OrgId { get; set; } = "HF";
        /// <summary>
        /// ä»»åŠ¡æ¨¡ç‰ˆ
        /// è¯·æ±‚ id
        /// </summary>
        public string TaskCode { get; set; } = "DUIGAO1";
        public string RequestId { get; set; }
        /// <summary>
        /// æŽ¥æ”¶ä»»åŠ¡
        /// ä»»åŠ¡ç¼–ç 
        /// </summary>
        public string ReceiveTaskID { get; set; }
        public string MissionCode { get; set; }
        /// <summary>
        /// â»‹è¾†ç¼–码
        /// ä»»åŠ¡ç±»åž‹ï¼šPICKER_MOVE
        /// </summary>
        public string AgvCode { get; set; }
        public string MissionType { get; set; } = "PICKER_MOVE";
        /// <summary>
        /// åœ°å›¾ç¼–码
        /// ä»»åŠ¡çœ‹æ¿å±•ç¤ºä»»åŠ¡ç±»åž‹
        /// </summary>
        public string MapCode { get; set; } = "01";
        public string ViewBoardType { get; set; }
        /// <summary>
        /// è½¦è¾†é›†ç¾¤
        /// æœºå™¨äººå…·ä½“型号
        /// </summary>
        public string AgvGroupCode { get; set; }
        public List<string> RobotModels { get; set; }
        /// <summary>
        /// ä»»åŠ¡ä¼˜å…ˆ
        /// æœºå™¨äººç¼–号
        /// </summary>
        public List<string> RobotIds { get; set; }
        /// <summary>
        /// æœºå™¨äººåŠŸèƒ½ç±»åž‹PICKER
        /// </summary>
        public string RobotType { get; set; } = "PICKER";
        /// <summary>
        /// ä½œä¸šä¼˜å…ˆçº§
        /// </summary>
        public int Priority { get; set; }
        /// <summary>
        /// ç«™ç‚¹å‚æ•°
        /// å®¹å™¨æ¨¡åž‹ç¼–码
        /// </summary>
        public List<PointDetail> Variables { get; set; }
    }
    public class PointDetail
    {
        public string Code { get; set; }
        public string? Value { get; set; }
        public string ContainerModelCode { get; set; }
        /// <summary>
        /// å®¹å™¨ç¼–号
        /// </summary>
        public string ContainerCode { get; set; }
        /// <summary>
        /// ä½œä¸šæµç¨‹æ¨¡æ¿ç¼–号
        /// </summary>
        public string TemplateCode { get; set; }
        /// <summary>
        ///
        /// </summary>
        public bool LockRobotAfterFinish { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string UnlockRobotId { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string UnlockMissionCode { get; set; }
        /// <summary>
        ///
        /// </summary>
        public string IdleNode { get; set; }
        /// <summary>
        ///
        /// </summary>
        public List<MissionDataItem> MissionData { get; set; }
    }
}