From 8449a1a53dc3ce66817b86a9400bc6768c43c506 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期一, 25 二月 2019 11:40:58 +0800
Subject: [PATCH] 6250 【后端】【2.0】拍卖行开发单(封包)
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py | 315 ++++++++++++++++++++++++++--
ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py | 315 ++++++++++++++++++++++++++--
2 files changed, 578 insertions(+), 52 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
index 8bfb261..3b7dc92 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/ChPyNetSendPack.py
@@ -6849,12 +6849,57 @@
#------------------------------------------------------
-# B5 04 拍卖行新上架拍品 #tagGCAddAuctionItem
+# B5 04 拍卖行新上架拍品 #tagGCAddAuctionItemInfo
class tagGCAddAuctionItem(Structure):
- Head = tagHead()
ItemGUID = "" #(char ItemGUID[40])
ItemID = 0 #(DWORD ItemID)
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ self.ItemID = 0
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+ length += 4
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteDWORD(data, self.ItemID)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s,
+ ItemID:%d
+ '''\
+ %(
+ self.ItemGUID,
+ self.ItemID
+ )
+ return DumpString
+
+
+class tagGCAddAuctionItemInfo(Structure):
+ Head = tagHead()
+ AddCount = 0 #(BYTE AddCount)
+ AddAuctionItemList = list() #(vector<tagGCAddAuctionItem> AddAuctionItemList)
data = None
def __init__(self):
@@ -6866,8 +6911,11 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
- self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
- self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.AddCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AddCount):
+ temAddAuctionItemList = tagGCAddAuctionItem()
+ _pos = temAddAuctionItemList.ReadData(_lpData, _pos)
+ self.AddAuctionItemList.append(temAddAuctionItemList)
return _pos
def Clear(self):
@@ -6875,41 +6923,43 @@
self.Head.Clear()
self.Head.Cmd = 0xB5
self.Head.SubCmd = 0x04
- self.ItemGUID = ""
- self.ItemID = 0
+ self.AddCount = 0
+ self.AddAuctionItemList = list()
return
def GetLength(self):
length = 0
length += self.Head.GetLength()
- length += 40
- length += 4
+ length += 1
+ for i in range(self.AddCount):
+ length += self.AddAuctionItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.ItemGUID)
- data = CommFunc.WriteDWORD(data, self.ItemID)
+ data = CommFunc.WriteBYTE(data, self.AddCount)
+ for i in range(self.AddCount):
+ data = CommFunc.WriteString(data, self.AddAuctionItemList[i].GetLength(), self.AddAuctionItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
Head:%s,
- ItemGUID:%s,
- ItemID:%d
+ AddCount:%d,
+ AddAuctionItemList:%s
'''\
%(
self.Head.OutputString(),
- self.ItemGUID,
- self.ItemID
+ self.AddCount,
+ "..."
)
return DumpString
-m_NAtagGCAddAuctionItem=tagGCAddAuctionItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCAddAuctionItem.Head.Cmd,m_NAtagGCAddAuctionItem.Head.SubCmd))] = m_NAtagGCAddAuctionItem
+m_NAtagGCAddAuctionItemInfo=tagGCAddAuctionItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCAddAuctionItemInfo.Head.Cmd,m_NAtagGCAddAuctionItemInfo.Head.SubCmd))] = m_NAtagGCAddAuctionItemInfo
#------------------------------------------------------
@@ -7375,11 +7425,213 @@
#------------------------------------------------------
-# B5 09 拍卖行清除拍品 #tagGCClearAuctionItem
+# B5 10 拍卖行玩家竞价中的物品信息 #tagGCBiddingItemInfo
+
+class tagGCBiddingItem(Structure):
+ ItemGUID = "" #(char ItemGUID[40])
+ FamilyID = 0 #(DWORD FamilyID)//有值时为仙盟拍品
+ ItemID = 0 #(DWORD ItemID)
+ ItemCount = 0 #(WORD ItemCount)
+ AddTime = "" #(char AddTime[19])//上架时间 yyyy-MM-dd hh:mm:ss
+ BidderPrice = 0 #(WORD BidderPrice)//竞拍玩家出价
+ UserDataLen = 0 #(WORD UserDataLen)
+ UserData = "" #(String UserData)//自定义数据
+ CanGetMoney = 0 #(BYTE CanGetMoney)//可否获得收益
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.FamilyID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.ItemCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.AddTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
+ self.BidderPrice,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
+ self.CanGetMoney,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ self.FamilyID = 0
+ self.ItemID = 0
+ self.ItemCount = 0
+ self.AddTime = ""
+ self.BidderPrice = 0
+ self.UserDataLen = 0
+ self.UserData = ""
+ self.CanGetMoney = 0
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+ length += 4
+ length += 4
+ length += 2
+ length += 19
+ length += 2
+ length += 2
+ length += len(self.UserData)
+ length += 1
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteDWORD(data, self.FamilyID)
+ data = CommFunc.WriteDWORD(data, self.ItemID)
+ data = CommFunc.WriteWORD(data, self.ItemCount)
+ data = CommFunc.WriteString(data, 19, self.AddTime)
+ data = CommFunc.WriteWORD(data, self.BidderPrice)
+ data = CommFunc.WriteWORD(data, self.UserDataLen)
+ data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
+ data = CommFunc.WriteBYTE(data, self.CanGetMoney)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s,
+ FamilyID:%d,
+ ItemID:%d,
+ ItemCount:%d,
+ AddTime:%s,
+ BidderPrice:%d,
+ UserDataLen:%d,
+ UserData:%s,
+ CanGetMoney:%d
+ '''\
+ %(
+ self.ItemGUID,
+ self.FamilyID,
+ self.ItemID,
+ self.ItemCount,
+ self.AddTime,
+ self.BidderPrice,
+ self.UserDataLen,
+ self.UserData,
+ self.CanGetMoney
+ )
+ return DumpString
+
+
+class tagGCBiddingItemInfo(Structure):
+ Head = tagHead()
+ AuctionItemCount = 0 #(BYTE AuctionItemCount)//拍品数量
+ AuctionItemList = list() #(vector<tagGCBiddingItem> AuctionItemList)//拍品列表
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xB5
+ self.Head.SubCmd = 0x10
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.AuctionItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AuctionItemCount):
+ temAuctionItemList = tagGCBiddingItem()
+ _pos = temAuctionItemList.ReadData(_lpData, _pos)
+ self.AuctionItemList.append(temAuctionItemList)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xB5
+ self.Head.SubCmd = 0x10
+ self.AuctionItemCount = 0
+ self.AuctionItemList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ for i in range(self.AuctionItemCount):
+ length += self.AuctionItemList[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.AuctionItemCount)
+ for i in range(self.AuctionItemCount):
+ data = CommFunc.WriteString(data, self.AuctionItemList[i].GetLength(), self.AuctionItemList[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ AuctionItemCount:%d,
+ AuctionItemList:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.AuctionItemCount,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagGCBiddingItemInfo=tagGCBiddingItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCBiddingItemInfo.Head.Cmd,m_NAtagGCBiddingItemInfo.Head.SubCmd))] = m_NAtagGCBiddingItemInfo
+
+
+#------------------------------------------------------
+# B5 09 拍卖行清除拍品 #tagGCClearAuctionItemInfo
class tagGCClearAuctionItem(Structure):
- Head = tagHead()
ItemGUID = "" #(char ItemGUID[40])
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s
+ '''\
+ %(
+ self.ItemGUID
+ )
+ return DumpString
+
+
+class tagGCClearAuctionItemInfo(Structure):
+ Head = tagHead()
+ ClearCount = 0 #(BYTE ClearCount)
+ ClearAuctionItemList = list() #(vector<tagGCClearAuctionItem> ClearAuctionItemList)
data = None
def __init__(self):
@@ -7391,7 +7643,11 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
- self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.ClearCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.ClearCount):
+ temClearAuctionItemList = tagGCClearAuctionItem()
+ _pos = temClearAuctionItemList.ReadData(_lpData, _pos)
+ self.ClearAuctionItemList.append(temClearAuctionItemList)
return _pos
def Clear(self):
@@ -7399,36 +7655,43 @@
self.Head.Clear()
self.Head.Cmd = 0xB5
self.Head.SubCmd = 0x09
- self.ItemGUID = ""
+ self.ClearCount = 0
+ self.ClearAuctionItemList = list()
return
def GetLength(self):
length = 0
length += self.Head.GetLength()
- length += 40
+ length += 1
+ for i in range(self.ClearCount):
+ length += self.ClearAuctionItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteBYTE(data, self.ClearCount)
+ for i in range(self.ClearCount):
+ data = CommFunc.WriteString(data, self.ClearAuctionItemList[i].GetLength(), self.ClearAuctionItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
Head:%s,
- ItemGUID:%s
+ ClearCount:%d,
+ ClearAuctionItemList:%s
'''\
%(
self.Head.OutputString(),
- self.ItemGUID
+ self.ClearCount,
+ "..."
)
return DumpString
-m_NAtagGCClearAuctionItem=tagGCClearAuctionItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCClearAuctionItem.Head.Cmd,m_NAtagGCClearAuctionItem.Head.SubCmd))] = m_NAtagGCClearAuctionItem
+m_NAtagGCClearAuctionItemInfo=tagGCClearAuctionItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCClearAuctionItemInfo.Head.Cmd,m_NAtagGCClearAuctionItemInfo.Head.SubCmd))] = m_NAtagGCClearAuctionItemInfo
#------------------------------------------------------
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
index 8bfb261..3b7dc92 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/ChPyNetSendPack.py
@@ -6849,12 +6849,57 @@
#------------------------------------------------------
-# B5 04 拍卖行新上架拍品 #tagGCAddAuctionItem
+# B5 04 拍卖行新上架拍品 #tagGCAddAuctionItemInfo
class tagGCAddAuctionItem(Structure):
- Head = tagHead()
ItemGUID = "" #(char ItemGUID[40])
ItemID = 0 #(DWORD ItemID)
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ self.ItemID = 0
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+ length += 4
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteDWORD(data, self.ItemID)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s,
+ ItemID:%d
+ '''\
+ %(
+ self.ItemGUID,
+ self.ItemID
+ )
+ return DumpString
+
+
+class tagGCAddAuctionItemInfo(Structure):
+ Head = tagHead()
+ AddCount = 0 #(BYTE AddCount)
+ AddAuctionItemList = list() #(vector<tagGCAddAuctionItem> AddAuctionItemList)
data = None
def __init__(self):
@@ -6866,8 +6911,11 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
- self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
- self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.AddCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AddCount):
+ temAddAuctionItemList = tagGCAddAuctionItem()
+ _pos = temAddAuctionItemList.ReadData(_lpData, _pos)
+ self.AddAuctionItemList.append(temAddAuctionItemList)
return _pos
def Clear(self):
@@ -6875,41 +6923,43 @@
self.Head.Clear()
self.Head.Cmd = 0xB5
self.Head.SubCmd = 0x04
- self.ItemGUID = ""
- self.ItemID = 0
+ self.AddCount = 0
+ self.AddAuctionItemList = list()
return
def GetLength(self):
length = 0
length += self.Head.GetLength()
- length += 40
- length += 4
+ length += 1
+ for i in range(self.AddCount):
+ length += self.AddAuctionItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.ItemGUID)
- data = CommFunc.WriteDWORD(data, self.ItemID)
+ data = CommFunc.WriteBYTE(data, self.AddCount)
+ for i in range(self.AddCount):
+ data = CommFunc.WriteString(data, self.AddAuctionItemList[i].GetLength(), self.AddAuctionItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
Head:%s,
- ItemGUID:%s,
- ItemID:%d
+ AddCount:%d,
+ AddAuctionItemList:%s
'''\
%(
self.Head.OutputString(),
- self.ItemGUID,
- self.ItemID
+ self.AddCount,
+ "..."
)
return DumpString
-m_NAtagGCAddAuctionItem=tagGCAddAuctionItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCAddAuctionItem.Head.Cmd,m_NAtagGCAddAuctionItem.Head.SubCmd))] = m_NAtagGCAddAuctionItem
+m_NAtagGCAddAuctionItemInfo=tagGCAddAuctionItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCAddAuctionItemInfo.Head.Cmd,m_NAtagGCAddAuctionItemInfo.Head.SubCmd))] = m_NAtagGCAddAuctionItemInfo
#------------------------------------------------------
@@ -7375,11 +7425,213 @@
#------------------------------------------------------
-# B5 09 拍卖行清除拍品 #tagGCClearAuctionItem
+# B5 10 拍卖行玩家竞价中的物品信息 #tagGCBiddingItemInfo
+
+class tagGCBiddingItem(Structure):
+ ItemGUID = "" #(char ItemGUID[40])
+ FamilyID = 0 #(DWORD FamilyID)//有值时为仙盟拍品
+ ItemID = 0 #(DWORD ItemID)
+ ItemCount = 0 #(WORD ItemCount)
+ AddTime = "" #(char AddTime[19])//上架时间 yyyy-MM-dd hh:mm:ss
+ BidderPrice = 0 #(WORD BidderPrice)//竞拍玩家出价
+ UserDataLen = 0 #(WORD UserDataLen)
+ UserData = "" #(String UserData)//自定义数据
+ CanGetMoney = 0 #(BYTE CanGetMoney)//可否获得收益
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.FamilyID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.ItemID,_pos = CommFunc.ReadDWORD(_lpData, _pos)
+ self.ItemCount,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.AddTime,_pos = CommFunc.ReadString(_lpData, _pos,19)
+ self.BidderPrice,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.UserDataLen,_pos = CommFunc.ReadWORD(_lpData, _pos)
+ self.UserData,_pos = CommFunc.ReadString(_lpData, _pos,self.UserDataLen)
+ self.CanGetMoney,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ self.FamilyID = 0
+ self.ItemID = 0
+ self.ItemCount = 0
+ self.AddTime = ""
+ self.BidderPrice = 0
+ self.UserDataLen = 0
+ self.UserData = ""
+ self.CanGetMoney = 0
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+ length += 4
+ length += 4
+ length += 2
+ length += 19
+ length += 2
+ length += 2
+ length += len(self.UserData)
+ length += 1
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteDWORD(data, self.FamilyID)
+ data = CommFunc.WriteDWORD(data, self.ItemID)
+ data = CommFunc.WriteWORD(data, self.ItemCount)
+ data = CommFunc.WriteString(data, 19, self.AddTime)
+ data = CommFunc.WriteWORD(data, self.BidderPrice)
+ data = CommFunc.WriteWORD(data, self.UserDataLen)
+ data = CommFunc.WriteString(data, self.UserDataLen, self.UserData)
+ data = CommFunc.WriteBYTE(data, self.CanGetMoney)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s,
+ FamilyID:%d,
+ ItemID:%d,
+ ItemCount:%d,
+ AddTime:%s,
+ BidderPrice:%d,
+ UserDataLen:%d,
+ UserData:%s,
+ CanGetMoney:%d
+ '''\
+ %(
+ self.ItemGUID,
+ self.FamilyID,
+ self.ItemID,
+ self.ItemCount,
+ self.AddTime,
+ self.BidderPrice,
+ self.UserDataLen,
+ self.UserData,
+ self.CanGetMoney
+ )
+ return DumpString
+
+
+class tagGCBiddingItemInfo(Structure):
+ Head = tagHead()
+ AuctionItemCount = 0 #(BYTE AuctionItemCount)//拍品数量
+ AuctionItemList = list() #(vector<tagGCBiddingItem> AuctionItemList)//拍品列表
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ self.Head.Cmd = 0xB5
+ self.Head.SubCmd = 0x10
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ _pos = self.Head.ReadData(_lpData, _pos)
+ self.AuctionItemCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.AuctionItemCount):
+ temAuctionItemList = tagGCBiddingItem()
+ _pos = temAuctionItemList.ReadData(_lpData, _pos)
+ self.AuctionItemList.append(temAuctionItemList)
+ return _pos
+
+ def Clear(self):
+ self.Head = tagHead()
+ self.Head.Clear()
+ self.Head.Cmd = 0xB5
+ self.Head.SubCmd = 0x10
+ self.AuctionItemCount = 0
+ self.AuctionItemList = list()
+ return
+
+ def GetLength(self):
+ length = 0
+ length += self.Head.GetLength()
+ length += 1
+ for i in range(self.AuctionItemCount):
+ length += self.AuctionItemList[i].GetLength()
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
+ data = CommFunc.WriteBYTE(data, self.AuctionItemCount)
+ for i in range(self.AuctionItemCount):
+ data = CommFunc.WriteString(data, self.AuctionItemList[i].GetLength(), self.AuctionItemList[i].GetBuffer())
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ Head:%s,
+ AuctionItemCount:%d,
+ AuctionItemList:%s
+ '''\
+ %(
+ self.Head.OutputString(),
+ self.AuctionItemCount,
+ "..."
+ )
+ return DumpString
+
+
+m_NAtagGCBiddingItemInfo=tagGCBiddingItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCBiddingItemInfo.Head.Cmd,m_NAtagGCBiddingItemInfo.Head.SubCmd))] = m_NAtagGCBiddingItemInfo
+
+
+#------------------------------------------------------
+# B5 09 拍卖行清除拍品 #tagGCClearAuctionItemInfo
class tagGCClearAuctionItem(Structure):
- Head = tagHead()
ItemGUID = "" #(char ItemGUID[40])
+ data = None
+
+ def __init__(self):
+ self.Clear()
+ return
+
+ def ReadData(self, _lpData, _pos=0, _Len=0):
+ self.Clear()
+ self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ return _pos
+
+ def Clear(self):
+ self.ItemGUID = ""
+ return
+
+ def GetLength(self):
+ length = 0
+ length += 40
+
+ return length
+
+ def GetBuffer(self):
+ data = ''
+ data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ return data
+
+ def OutputString(self):
+ DumpString = '''
+ ItemGUID:%s
+ '''\
+ %(
+ self.ItemGUID
+ )
+ return DumpString
+
+
+class tagGCClearAuctionItemInfo(Structure):
+ Head = tagHead()
+ ClearCount = 0 #(BYTE ClearCount)
+ ClearAuctionItemList = list() #(vector<tagGCClearAuctionItem> ClearAuctionItemList)
data = None
def __init__(self):
@@ -7391,7 +7643,11 @@
def ReadData(self, _lpData, _pos=0, _Len=0):
self.Clear()
_pos = self.Head.ReadData(_lpData, _pos)
- self.ItemGUID,_pos = CommFunc.ReadString(_lpData, _pos,40)
+ self.ClearCount,_pos = CommFunc.ReadBYTE(_lpData, _pos)
+ for i in range(self.ClearCount):
+ temClearAuctionItemList = tagGCClearAuctionItem()
+ _pos = temClearAuctionItemList.ReadData(_lpData, _pos)
+ self.ClearAuctionItemList.append(temClearAuctionItemList)
return _pos
def Clear(self):
@@ -7399,36 +7655,43 @@
self.Head.Clear()
self.Head.Cmd = 0xB5
self.Head.SubCmd = 0x09
- self.ItemGUID = ""
+ self.ClearCount = 0
+ self.ClearAuctionItemList = list()
return
def GetLength(self):
length = 0
length += self.Head.GetLength()
- length += 40
+ length += 1
+ for i in range(self.ClearCount):
+ length += self.ClearAuctionItemList[i].GetLength()
return length
def GetBuffer(self):
data = ''
data = CommFunc.WriteString(data, self.Head.GetLength(), self.Head.GetBuffer())
- data = CommFunc.WriteString(data, 40, self.ItemGUID)
+ data = CommFunc.WriteBYTE(data, self.ClearCount)
+ for i in range(self.ClearCount):
+ data = CommFunc.WriteString(data, self.ClearAuctionItemList[i].GetLength(), self.ClearAuctionItemList[i].GetBuffer())
return data
def OutputString(self):
DumpString = '''
Head:%s,
- ItemGUID:%s
+ ClearCount:%d,
+ ClearAuctionItemList:%s
'''\
%(
self.Head.OutputString(),
- self.ItemGUID
+ self.ClearCount,
+ "..."
)
return DumpString
-m_NAtagGCClearAuctionItem=tagGCClearAuctionItem()
-ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCClearAuctionItem.Head.Cmd,m_NAtagGCClearAuctionItem.Head.SubCmd))] = m_NAtagGCClearAuctionItem
+m_NAtagGCClearAuctionItemInfo=tagGCClearAuctionItemInfo()
+ChNetPackDict[eval("0x%02x%02x"%(m_NAtagGCClearAuctionItemInfo.Head.Cmd,m_NAtagGCClearAuctionItemInfo.Head.SubCmd))] = m_NAtagGCClearAuctionItemInfo
#------------------------------------------------------
--
Gitblit v1.8.0