From 733c975cd8647f6d006736f1863bad731e32e6fb Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期日, 26 十月 2025 17:15:52 +0800
Subject: [PATCH] 上传最新代码,ERP接口,MES接口优化,WMS业务优化等
---
项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs | 588 ++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 368 insertions(+), 220 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs"
index ac89d7e..992fc25 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs"
@@ -27,299 +27,447 @@
{
public class ConveyorLineTaskCommand : DeviceCommand
{
- public ushort InteractiveSignal { get; set; }
-
- [DataLength(25)]
- public string Barcode { get; set; }
-
- public int TargetAddress { get; set; }
-
- public int TaskNum { get; set; }
- }
-
-
- public class R_ConveyorLineInfo : DeviceCommand
- {
- /// <summary>
- /// 绔欏彴缂栧彿
- /// </summary>
- public short ConveyorNo { get; set; }
-
- /// <summary>
- /// 鐘舵��
- /// </summary>
- public byte Status { get; set; }
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public byte Undefined { get; set; }
-
- /// <summary>
+ // <summary>
/// 浠诲姟鍙�
/// </summary>
public int TaskNum { get; set; }
-
/// <summary>
- /// 璧峰鍦板潃
+ /// 鐩爣绔欏彴
/// </summary>
- public short StartPos { get; set; }
-
- /// <summary>
- /// 鐩爣鍦板潃
- /// </summary>
- public short EndPos { get; set; }
-
+ public short TargetAddress { get; set; }
/// <summary>
/// 閲嶉噺
/// </summary>
- public short GoodsWeight { get; set; }
+ public short Weight { get; set; }
+ /// <summary>
+ /// 骞呭
+ /// </summary>
+ public short Width { get; set; }
+ /// <summary>
+ /// 鐩村緞/楂樺害
+ /// </summary>
+ public short Height { get; set; }
/// <summary>
- /// 璐х墿绫诲瀷
+ /// 鐢宠<br/>
+ /// 86涓虹敵璇�
/// </summary>
- public short GoodsType { get; set; }
+ public short InteractiveSignal { get; set; }
/// <summary>
- /// 0闈欐1鍓嶈繘2鍚庨��3涓婂崌/椤烘椂閽堟棆杞�4涓嬮檷/閫嗘椂閽堟棆杞�
+ /// 鐢宠鍙嶉 86鎴愬姛
/// </summary>
- public short RunStatus { get; set; }
+ public short ResponState { get; set; }
private string _barcode;
/// <summary>
/// 鏉$爜
/// </summary>
- [DataLength(20)]
+ /// <summary>
+ [DataLength(40)]
public string Barcode
{
get { return _barcode; }
set { _barcode = value.Replace("\0", "").Replace("\\0", ""); }
}
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public short Spare1 { get; set; }
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public short Spare2 { get; set; }
-
- /// <summary>
- /// 浜や簰淇″彿
- /// </summary>
- public byte Signal { get; set; }
-
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public byte Undefined2 { get; set; }
}
public class R_ConveyorLineCPInfo : DeviceCommand
{
/// <summary>
- /// 鍒颁綅鎸囦护
+ /// 蹇冭烦
/// </summary>
- public short ConveyArrivaled { get; set; }
-
+ public short Heart { get; set; }
/// <summary>
- /// 璧峰鍦板潃
+ /// 棰勭暀
/// </summary>
- public short StartPos { get; set; }
-
+ public short Reserve { get; set; }
/// <summary>
- /// 缁堢偣鍦板潃
+ /// 鐘舵��
/// </summary>
- public short EndPos { get; set; }
-
+ public short StatusPV { get; set; }
+ /// <summary>
+ /// 鍛戒护
+ /// 0锛氭棤鍛戒护
+ ///1锛氶潪灏辩华锛堜笉鎵ц涓嬪彂鍛戒护锛�
+ ///2锛氬彇璐х珯鍙板伐浣嶅氨缁紙鏈夋枡锛�
+ ///3锛氭斁璐х珯鍙板伐浣嶅氨缁紙鏃犳枡锛�
+ ///4锛氭斁璐х珯鍙板伐浣嶅氨缁紙鏈夋枡锛�
+ ///5锛氭壂鐮佸伐浣嶅氨缁紙宸叉壂鐮侊紝绛夊緟涓婁綅鏈轰笅鍙戜换鍔″強鍛戒护锛�
+ ///6锛氫换鍔″伐浣嶅氨缁紙涓婁綅鏈洪�氳繃浠诲姟鍙疯鍙栨墭鐩樹俊鎭苟涓嬪彂浠诲姟锛�
+ ///7锛氱敵璇锋枡妗�
+ ///8锛氭枡妗嗗埌浣�
+ ///9锛氭墽琛屽懡浠や腑
+ ///10锛氱┖鐩樺噯澶�
+ ///11锛氭弧鐩樺噯澶�
+ /// </summary>
+ public short Command { get; set; }
+ /// <summary>
+ /// 浠诲姟鍙�
+ /// </summary>
+ public int TaskNo { get; set; }
+ private string _barcode;
/// <summary>
/// 鎵樼洏鍙�
/// </summary>
/// <summary>
-
- [DataLength(20)]
- public string Barcode { get; set; }
-
+ [DataLength(10)]
+ public string PalletCode
+ {
+ get { return _barcode; }
+ set { _barcode = value.Replace("\0", "").Replace("\\0", ""); }
+ }
+ }
+ public class R_CLineCPHInfo : DeviceCommand
+ {
+ /// <summary>
+ /// 宸ヤ綅鍙�
+ /// </summary>
+ public short R_ReadID { get; set; }
+ /// <summary>
+ /// 宸ヤ綅鐘舵��
+ /// 0:鑴辨満<br/>
+ /// 1:鎵嬪姩<br/>
+ /// 2:鑷姩<br/>
+ /// 3:鑷姩杩愯<br/>
+ /// 4:鏁呴殰<br/>
+ /// </summary>
+ public short R_State { get; set; }
/// <summary>
/// 浠诲姟鍙�
/// </summary>
- [DataLength(20)]
- public string TaskNum { get; set; }
-
+ public int R_TaskNo { get; set; }
/// <summary>
- /// 绫诲瀷
+ /// 鐩殑鍦板潃
/// </summary>
- public short WorkType { get; set; }
-
- /// <summary>
- /// 妯″紡
- /// </summary>
- public short WorkMode { get; set; }
-
- /// <summary>
- /// 鏍¢獙浣�
- /// </summary>
- public short CheckPos { get; set; }
- }
- public class R_ConveyorLineGMInfo : DeviceCommand
- {
- /// <summary>
- /// 绠卞彿
- /// </summary>
- /// <summary>
- [DataLength(120)]
- public string Boxcode { get; set; }
- }
- public class R_ConveyorLineFLInfo : DeviceCommand
- {
- /// <summary>
- /// 鎵樼洏鍙�
- /// </summary>
- /// <summary>
-
- [DataLength(20)]
- public string Barcode { get; set; }
-
- /// <summary>
- /// 浠诲姟鍙�
- /// </summary>
- [DataLength(20)]
- public string TaskNum { get; set; }
- }
- public class R_ConveyorLineStatus
- {
- /// <summary>
- /// 鎻℃墜淇″彿
- /// </summary>
- [BoolIndex(0)]
- public bool HandShake { get; set; }
-
- /// <summary>
- /// 1鑱旀満 0鑴辨満
- /// </summary>
- [BoolIndex(1)]
- public bool Online { get; set; }
-
- /// <summary>
- /// 1绌洪棽 0绻佸繖
- /// </summary>
- [BoolIndex(2)]
- public bool Free { get; set; }
-
- /// <summary>
- /// 1鏈夎揣 0鏃犺揣
- /// </summary>
- [BoolIndex(3)]
- public bool Goods { get; set; }
-
- /// <summary>
- /// 1鏁呴殰 0姝e父
- /// </summary>
- [BoolIndex(4)]
- public bool Alarm { get; set; }
-
- /// <summary>
- /// 1璇锋眰琛ョ洏 0鏃�
- /// </summary>
- [BoolIndex(5)]
- public bool RequestPakcPallet { get; set; }
-
- /// <summary>
- /// 1璇锋眰鎷嗙洏 0鏃�
- /// </summary>
- [BoolIndex(6)]
- public bool RequestUnpackPellet { get; set; }
- }
-
- public class ConveyorLineSignal
- {
+ public short R_TargetAddress { get; set; }
/// <summary>
/// 璇锋眰淇″彿
+ /// 0:鏃�<br/>
+ /// 1:浠诲姟璇锋眰<br/>
+ /// 2:璇锋眰缁撴潫<br/>
+ /// 3:浠诲姟娓呴櫎<br/>
+ /// 4:娓呴櫎缁撴潫<br/>
/// </summary>
- [BoolIndex(0)]
- public bool STB { get; set; }
-
+ public short R_Request { get; set; }
+ private string _barcode;
/// <summary>
- /// 鍝嶅簲淇″彿
+ /// 绠辩爜
/// </summary>
- [BoolIndex(1)]
- public bool ACK { get; set; }
+ [DataLength(30)]
+ public string R_BoxCode
+ {
+ get { return _barcode; }
+ set { _barcode = value.Replace("\0", "").Replace("\\0", ""); }
+ }
}
-
- public class W_ConveyorLineInfo : DeviceCommand
+ public class R_RGVCPInfo : DeviceCommand
{
-
/// <summary>
- /// 绔欏彴缂栧彿
+ /// 妯″紡<br/>
+ /// 1鎵嬪姩<br/>
+ /// 2缁翠慨<br/>
+ /// 3鍗婅嚜鍔�<br/>
+ /// 4鑷姩<br/>
+ /// 5鑱旀満鑷姩<br/>
/// </summary>
- public short ConveyorNo { get; set; }
-
- public byte Operate { get; set; }
-
- public byte Undefined { get; set; }
-
+ public short Mode { get; set; }
+ /// <summary>
+ /// 鐘舵��<br/>
+ /// 0绌洪棽<br/>
+ /// 1鏈変换鍔�<br/>
+ /// </summary>
+ public short State { get; set; }
+ /// <summary>
+ /// RGV鎺ユ敹浠诲姟鍙�<br/>
+ /// </summary>
+ public int RgvTask { get; set; }
+ /// <summary>
+ /// RGV缁撴潫浠诲姟鍙�<br/>
+ /// </summary>
+ public int RgvEndTask { get; set; }
+ /// <summary>
+ /// RGV涓婃浠诲姟鍙�<br/>
+ /// </summary>
+ public int RgvLastTask { get; set; }
+ /// <summary>
+ /// 浠诲姟鐘舵�佸弽棣�<br/>
+ /// </summary>
+ public short TaskDone { get; set; }
+ /// <summary>
+ /// 蹇冭烦<br/>
+ /// </summary>
+ public short HeartBeat { get; set; }
+ }
+ /// <summary>
+ /// 鎻愬崌鏈哄啓鍏�
+ /// </summary>
+ public class W_HoisterInfo : DeviceCommand
+ {
+ /// <summary>
+ /// 鎻愬崌鏈轰换鍔″彿
+ /// </summary>
+ public int W_HoisterTask { get; set; }
+ /// <summary>
+ /// 鎻愬崌鏈虹洰鐨勫眰
+ /// </summary>
+ public short W_HoisterTarget { get; set; }
+ /// <summary>
+ /// 鎻愬崌鏈烘帴閫佽溅
+ /// </summary>
+ public short W_HoisterType { get; set; }
+ /// <summary>
+ /// 鎻愬崌鏈哄紑鍏抽棬<br/>
+ /// 1寮�闂�<br/>
+ /// 2鍏抽棬<br/>
+ /// </summary>
+ public short W_HoisterDoorStatus { get; set; }
+ }
+ /// <summary>
+ /// 鎻愬崌鏈鸿鍙�
+ /// </summary>
+ public class R_HoisterInfo : DeviceCommand
+ {
+ /// <summary>
+ /// 绯荤粺鐘舵��<br/>
+ /// 1鍗婅嚜鍔�<br/>
+ /// 2鎵嬪姩<br/>
+ /// 3鑷姩<br/>
+ /// </summary>
+ public short R_HoisterSysStatus { get; set; }
+ /// <summary>
+ /// 杩愯鐘舵��<br/>
+ /// 1鏃犺揣寰呭懡<br/>
+ /// 2绉诲姩涓�<br/>
+ /// 3鏈夎揣寰呭懡<br/>
+ /// </summary>
+ public short R_HoisterRunStatus { get; set; }
+ /// <summary>
+ /// 鍐欏叆鐘舵��<br/>
+ /// 1鍙啓<br/>
+ /// 2鍐欏叆鎴愬姛<br/>
+ /// 3鍐欏叆闈炴硶<br/>
+ /// </summary>
+ public short R_HoisterRecStatus { get; set; }
/// <summary>
/// 浠诲姟鍙�
/// </summary>
- public int TaskNum { get; set; }
-
+ public int R_HoisterTask { get; set; }
/// <summary>
- /// 璧峰鍦板潃
+ /// 鐩殑灞�
/// </summary>
- public short StartPos { get; set; }
-
+ public short R_HoisterTarget { get; set; }
/// <summary>
- /// 鐩爣鍦板潃
+ /// 褰撳墠灞�
/// </summary>
- public short EndPos { get; set; }
-
+ public short R_HoisterCurrent { get; set; }
/// <summary>
- /// 璐х墿绫诲瀷
+ /// 褰撳墠灞傞棬鐘舵��<br/>
+ /// 1寮�闂ㄥ埌浣�<br/>
+ /// 2鍏抽棬鍒颁綅<br/>
/// </summary>
- public short GoodsType { get; set; }
-
+ public short R_HoisterDoorStatus { get; set; }
/// <summary>
- /// 棰勭暀
+ /// 鏈夋棤杞︾姸鎬�<br/>
+ /// 1鏈夎溅<br/>
+ /// 2鏃犺溅<br/>
/// </summary>
- public short Spare1 { get; set; }
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public short Spare2 { get; set; }
-
- /// <summary>
- /// 浜や簰淇″彿
- /// </summary>
- public byte Signal { get; set; }
-
-
- /// <summary>
- /// 棰勭暀
- /// </summary>
- public byte Undefined2 { get; set; }
+ public short R_HoisterLoadStatus { get; set; }
}
-
- public class W_ConveyorLineOperate
+ public class R_ConveyorLineYLInfo : DeviceCommand
{
/// <summary>
- /// 鎻℃墜淇″彿
+ /// 浠诲姟鍙�
+ /// </summary>
+ public int WR_Task { get; set; }
+ /// <summary>
+ /// 鐩爣绔欏彴
+ /// </summary>
+ public short WR_ToHode { get; set; }
+ /// <summary>
+ /// 閲嶉噺
+ /// </summary>
+ public short WR_Weight { get; set; }
+ /// <summary>
+ /// 骞呭
+ /// </summary>
+ public short WR_Width { get; set; }
+ /// <summary>
+ /// 鐩村緞/楂樺害
+ /// </summary>
+ public short WR_Height { get; set; }
+
+ /// <summary>
+ /// 鐢宠<br/>
+ /// 86涓虹敵璇�
+ /// </summary>
+ public short WR_Request { get; set; }
+
+ /// <summary>
+ /// 鐢宠鍙嶉 86鎴愬姛
+ /// </summary>
+ public short WR_Reresult { get; set; }
+
+ private string _barcode;
+ /// <summary>
+ /// 鏉$爜
+ /// </summary>
+ /// <summary>
+ [DataLength(40)]
+ public string WR_TMID
+ {
+ get { return _barcode; }
+ set { _barcode = value.Replace("\0", "").Replace("\\0", ""); }
+ }
+ }
+ public class W_RGVCPInfo : DeviceCommand
+ {
+ /// <summary>
+ /// 浠诲姟鍙�1<br/>
+ /// </summary>
+ public int WcsTask1 { get; set; }
+ /// <summary>
+ /// 浠诲姟鍙�2<br/>
+ /// </summary>
+ public int WcsTask2 { get; set; }
+ /// <summary>
+ /// 浠诲姟鍙�3<br/>
+ /// </summary>
+ public int WcsTask3 { get; set; }
+ /// <summary>
+ /// 浠诲姟绫诲瀷<br/>
+ /// 1瀹氫綅<br/>
+ /// 2鍙栬揣<br/>
+ /// 3鏀捐揣<br/>
+ /// 4鍙栨斁璐�<br/>
+ /// </summary>
+ public short TaskType { get; set; }
+ /// <summary>
+ /// 鎵ц宸ヤ綅<br/>
+ /// 1:1宸ヤ綅<br/>
+ /// 2:2宸ヤ綅<br/>
+ /// 3:3宸ヤ綅<br/>
+ /// 4:12宸ヤ綅<br/>
+ /// 5:13宸ヤ綅<br/>
+ /// 6:23宸ヤ綅<br/>
+ /// 7:123宸ヤ綅<br/>
+ /// </summary>
+ public short WorkStation { get; set; }
+ /// <summary>
+ /// 鍙栬揣鍦板潃1<br/>
+ /// </summary>
+ public short Qu1 { get; set; }
+ /// <summary>
+ /// 鍙栬揣鍦板潃2<br/>
+ /// </summary>
+ public short Qu2 { get; set; }
+ /// <summary>
+ /// 鍙栬揣鍦板潃3<br/>
+ /// </summary>
+ public short Qu3 { get; set; }
+ /// <summary>
+ /// 鏀捐揣鍦板潃1<br/>
+ /// </summary>
+ public short Fang1 { get; set; }
+ /// <summary>
+ /// 鏀捐揣鍦板潃2<br/>
+ /// </summary>
+ public short Fang2 { get; set; }
+ /// <summary>
+ /// 鏀捐揣鍦板潃3<br/>
+ /// </summary>
+ public short Fang3 { get; set; }
+ /// <summary>
+ /// 蹇冭烦<br/>
+ /// </summary>
+ public short HearBeat { get; set; }
+ /// <summary>
+ /// 涓嬪彂/瀹屾垚浠诲姟鏍囪瘑<br/>
+ /// 1纭浠诲姟涓嬪彂<br/>
+ /// 2纭浠诲姟瀹屾垚<br/>
+ /// </summary>
+ public short TaskReceivedDone { get; set; }
+ }
+
+ /// <summary>
+ /// 鎺ラ┏鍙版湁鏃犺揣
+ /// </summary>
+ public class C_RequestTakeStatus
+ {
+ /// <summary>
+ /// 鏈敵璇峰彇鏂�
/// </summary>
[BoolIndex(0)]
- public bool HandShake { get; set; }
+ public bool NoTakeRequest { get; set; }
/// <summary>
- /// 澶嶄綅鎶ヨ
+ /// 宸茬敵璇峰彇鏂�
/// </summary>
[BoolIndex(1)]
- public bool ClearAlarm { get; set; }
+ public bool OkTakeRequest { get; set; }
+ }
+ public class CoveryorInfo : DeviceCommand
+ {
/// <summary>
- /// 閫�鍥�
+ /// 鏈夋棤璐х姸鎬�
/// </summary>
- [BoolIndex(2)]
- public bool Return { get; set; }
+ public byte C_GoodsStatus { get; set; }
+ /// <summary>
+ /// 鏁呴殰鐘舵��
+ /// </summary>
+ public short C_Error { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鐢宠鏀捐揣
+ /// </summary>
+ public byte C_RequestPut { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鏀捐揣瀹屾垚
+ /// </summary>
+ public byte C_PutFinish { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鍏佽鏀捐揣
+ /// </summary>
+ public byte C_AllowFinish { get; set; }
+ /// <summary>
+ /// 鍑哄簱鐢宠鍙栬揣
+ /// </summary>
+ public byte C_RequestTake { get; set; }
+ /// <summary>
+ /// 鍑哄簱鍏佽鍙栬揣
+ /// </summary>
+ public byte C_AllowTake { get; set; }
+ /// <summary>
+ /// 鍑哄簱浠诲姟鍙�
+ /// </summary>
+ public int C_OutTaskNum { get; set; }
+ /// <summary>
+ /// 鍑哄簱鐢宠鍥炲簲
+ /// </summary>
+ public byte C_OutResponse { get; set; }
+ /// <summary>
+ /// 鍑哄簱鍙栨枡瀹屾垚
+ /// </summary>
+ public byte C_TakeFinish { get; set; }
+ /// <summary>
+ /// 鍏ュ簱浠诲姟鍙�
+ /// </summary>
+ public int C_InTaskNum { get; set; }
+ }
+
+
+ public class ConveyorLineTaskCommandWrite : DeviceCommand
+ {
+ public ushort ResponState { get; set; } = 86;
+
+ [DataLength(25)]
+ public string Barcode { get; set; }
+
+ public short TargetAddress { get; set; }
+
+ public short TaskNum { get; set; }
+
+ public short Width { get; set; }
+ public short Height { get; set; }
+
}
}
--
Gitblit v1.9.3