转换文件编码
diff --git a/supwisdom/protocol/amassprotocol.py b/supwisdom/protocol/amassprotocol.py
index 746abd1..fde1bbe 100644
--- a/supwisdom/protocol/amassprotocol.py
+++ b/supwisdom/protocol/amassprotocol.py
@@ -1,5 +1,5 @@
 # -*- coding: utf-8

-""" »ã¶àЭÒé·â×°

+""" 汇多协议封装

 """

 import codecs

 import struct

@@ -13,7 +13,7 @@
 IFT_STRING = 6

 IFT_LONG = 7

 

-# (0,0,1,IFT_BYTE,0,"msgtype","ÏûÏ¢Âë"),

+# (0,0,1,IFT_BYTE,0,"msgtype","消息码"),

 

 FLD_NO_IDX = 0

 FLD_LENGTH_IDX = 2

@@ -23,34 +23,34 @@
 FLD_DESC_IDX = 6

 

 HDFieldsDef = [

-(1, 0, 0, IFT_NULL, 0, "extend", u"À©Õ¹Óò·ñ"),

-(2, 0, 4, IFT_ULONG, 0, "terminalsn", u" ÖÕ¶ËÐòÁкÅ"),

-(3, 0, 2, IFT_USHORT, 0, "address", u"CANµØÖ·"),

-(4, 0, 4, IFT_ULONG, 0, "cardnumber", u"¿¨ºÅ"),

-(5, 0, 1, IFT_BYTE, 0, "indexofew", u" Ç®°üË÷Òý"),

-(6, 0, 2, IFT_USHORT, 0, "traceofew", u" Ç®°üÁ÷Ë®ºÅ"),

-(7, 0, 4, IFT_LONG, 0, "amount", u" ½»Ò×½ð¶î"),

-(8, 0, 4, IFT_LONG, 0, "additionalamount1", u"¸½¼Ó½ð¶î"),

-(9, 0, 4, IFT_ULONG, 0, "traceofpos", u"POSÁ÷Ë®ºÅ"),

-(10, 0, 4, IFT_ULONG, 0, "orgtranstrace", u"Ô­½»Ò×Á÷Ë®ºÅ"),

-(11, 0, 7, IFT_DATETIME, 0, "datetime", u"½»Ò×ÈÕÆÚºÍʱ¼ä"),

-(12, 0, 1, IFT_BYTE, 0, "responsecode", u"ÏìÓ¦Âë"),

-(13, 0, 2, IFT_USHORT, 0, "terminalid", u"Öն˺Å"),

-(14, 0, 2, IFT_USHORT, 0, "terminaltype", u"ÖÕ¶ËÀàÐÍ"),

-(15, 0, 2, IFT_USHORT, 0, "merchantid", u"ÉÌ»§(Íøµã)ºÅ"),

-(16, 0, 4, IFT_ULONG, 0, "operatorid", u"²Ù×÷Ô±ºÅ"),

-(17, 0, 8, IFT_BUFFER, 0, "pin", u"¸öÈËʶ±ðÂëPIN"),

-(18, 0, 4, IFT_ULONG, 0, "veroflist", u"ºÚÃûµ¥°æ±¾"),

-(19, 0, 4, IFT_ULONG, 0, "managefee", u"½»Ò×Åú´ÎºÅ(Ôݲ»ÓÃ)"),

-(20, 0, 360, IFT_BUFFER, 2, "additionaldata1", u"¸½¼ÓÐÅÏ¢1"),

-(21, 0, 528, IFT_BUFFER, 2, "additionaldata2", u"¸½¼ÓÐÅÏ¢2"),

-(22, 0, 528, IFT_STRING, 2, "additionaldata3", u"¸½¼ÓÐÅÏ¢3"),

-(23, 0, 528, IFT_STRING, 2, "additionaldata4", u"¸½¼ÓÐÅÏ¢4"),

-(24, 0, 2, IFT_USHORT, 0, "mac", u"ÏûÏ¢ÈÏÖ¤Âë")]

+(1, 0, 0, IFT_NULL, 0, "extend", u"扩展域否"),

+(2, 0, 4, IFT_ULONG, 0, "terminalsn", u" 终端序列号"),

+(3, 0, 2, IFT_USHORT, 0, "address", u"CAN地址"),

+(4, 0, 4, IFT_ULONG, 0, "cardnumber", u"卡号"),

+(5, 0, 1, IFT_BYTE, 0, "indexofew", u" 钱包索引"),

+(6, 0, 2, IFT_USHORT, 0, "traceofew", u" 钱包流水号"),

+(7, 0, 4, IFT_LONG, 0, "amount", u" 交易金额"),

+(8, 0, 4, IFT_LONG, 0, "additionalamount1", u"附加金额"),

+(9, 0, 4, IFT_ULONG, 0, "traceofpos", u"POS流水号"),

+(10, 0, 4, IFT_ULONG, 0, "orgtranstrace", u"原交易流水号"),

+(11, 0, 7, IFT_DATETIME, 0, "datetime", u"交易日期和时间"),

+(12, 0, 1, IFT_BYTE, 0, "responsecode", u"响应码"),

+(13, 0, 2, IFT_USHORT, 0, "terminalid", u"终端号"),

+(14, 0, 2, IFT_USHORT, 0, "terminaltype", u"终端类型"),

+(15, 0, 2, IFT_USHORT, 0, "merchantid", u"商户(网点)号"),

+(16, 0, 4, IFT_ULONG, 0, "operatorid", u"操作员号"),

+(17, 0, 8, IFT_BUFFER, 0, "pin", u"个人识别码PIN"),

+(18, 0, 4, IFT_ULONG, 0, "veroflist", u"黑名单版本"),

+(19, 0, 4, IFT_ULONG, 0, "managefee", u"交易批次号(暂不用)"),

+(20, 0, 360, IFT_BUFFER, 2, "additionaldata1", u"附加信息1"),

+(21, 0, 528, IFT_BUFFER, 2, "additionaldata2", u"附加信息2"),

+(22, 0, 528, IFT_STRING, 2, "additionaldata3", u"附加信息3"),

+(23, 0, 528, IFT_STRING, 2, "additionaldata4", u"附加信息4"),

+(24, 0, 2, IFT_USHORT, 0, "mac", u"消息认证码")]

 

 

 class HDPack:

-    ''' »ã¶à 8583 ЭÒé°ü '''

+    ''' 汇多 8583 协议包 '''

     def __init__(self):

         self.msg_type = 0

         self.value = {}

@@ -302,7 +302,7 @@
             fflag = field[FLD_FLAG_IDX]

             #fname = field[FLD_NAME_IDX]

             #print "parse field[%s] [%d]off[%d][%s]" % (fname,fflag,offset,codecs.encode(data[offset:offset+2],'hex'))

-            # ±ä³¤Êý¾Ý

+            # 变长数据

             if fflag == 2:

                 #print "len [%s]" % codecs.encode(data[offset:offset+2],'hex')

                 endpos = self.buffer_2_int(data[offset:offset + 2], IFT_USHORT)