|
|
@@ -801,7 +801,7 @@ BOOL CARD::Track23( char *strTrack2, char *strTrack3, BOOL bWrite, char* MARGTyp
|
|
|
if( pr50.BPType == 1)
|
|
|
sprintf( this->trackData, "%sA%s", strTrack2, strTrack3);
|
|
|
else
|
|
|
- sprintf( this->trackData, "%s", strTrack3); //二当三!
|
|
|
+ sprintf( this->trackData, "%s", strTrack3); //浜屽綋涓�!
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -875,7 +875,7 @@ BOOL CARD::ISONewcode( char *data)
|
|
|
}
|
|
|
|
|
|
|
|
|
-BOOL CARD::ISONewcode0( char *data) //9字头卡
|
|
|
+BOOL CARD::ISONewcode0( char *data) //9瀛楀ご鍗�
|
|
|
{
|
|
|
NEW_TRACK0 *pdata;
|
|
|
NEW_TRACK2 strTrack2;
|
|
|
@@ -906,11 +906,11 @@ BOOL CARD::ISONewcode0( char *data) //9
|
|
|
return Track23((char*)&strTrack2,(char*)&strTrack3,TRUE);
|
|
|
}
|
|
|
|
|
|
-BOOL CARD::ISONewcode1( char *data) // 6字头卡
|
|
|
-/* BZSL 八转十六项目
|
|
|
- * 函数名:BOOL CARD::ISONewcode1( char *data)
|
|
|
- * 功能: 对6开头的16位卡按照:2磁道为两地通2磁道格式,
|
|
|
- * 3磁道为普通16位卡3磁道格式进行写磁的操作
|
|
|
+BOOL CARD::ISONewcode1( char *data) // 6瀛楀ご鍗�
|
|
|
+/* BZSL 鍏�浆鍗佸叚椤圭洰
|
|
|
+ * 鍑芥暟鍚嶏細BOOL CARD::ISONewcode1( char *data)
|
|
|
+ * 鍔熻兘锛� 瀵�6寮€澶寸殑16浣嶅崱鎸夌収锛�2纾侀亾涓轰袱鍦伴€�2纾侀亾鏍煎紡锛�
|
|
|
+ * 3纾侀亾涓烘櫘閫�16浣嶅崱3纾侀亾鏍煎紡杩涜�鍐欑�鐨勬搷浣�
|
|
|
*/
|
|
|
{
|
|
|
NEW_TRACK0 *pdata;
|
|
|
@@ -940,7 +940,7 @@ BOOL CARD::ISONewcode1( char *data) // 6
|
|
|
sprintf(strTmp,"%05d",(unsigned int)randValue);
|
|
|
memcpy(strTrack2.localCheckMessage,strTmp,5);
|
|
|
|
|
|
- strTrack2.appendData[1]=pdata->cardSerial; //此处做了修改
|
|
|
+ strTrack2.appendData[1]=pdata->cardSerial; //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
randValue = 0;
|
|
|
do
|
|
|
@@ -954,7 +954,7 @@ BOOL CARD::ISONewcode1( char *data) // 6
|
|
|
|
|
|
memcpy(strTrack2.expireDate,pdata->expireDate,sizeof(strTrack2.expireDate));
|
|
|
|
|
|
- memcpy(strTrack2.appendData+2,pdata->SVCD,6); //此处做了修改
|
|
|
+ memcpy(strTrack2.appendData+2,pdata->SVCD,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
memcpy(strTrack2.appendData+2,pdata->SVCD,3);
|
|
|
randValue = 0;
|
|
|
@@ -967,7 +967,7 @@ BOOL CARD::ISONewcode1( char *data) // 6
|
|
|
memcpy(strTrack2.appendData+5,strTmp,3);
|
|
|
*/
|
|
|
|
|
|
- //3磁道采用老的95555卡的3磁道格式
|
|
|
+ //3纾侀亾閲囩敤鑰佺殑95555鍗$殑3纾侀亾鏍煎紡
|
|
|
memcpy(strTrack3.masterAccount,pdata->masterAccount,sizeof(pdata->masterAccount));
|
|
|
memcpy(strTrack3.SVCD,strTrack2.appendData+2,6);
|
|
|
strTrack3.cardSerial=pdata->cardSerial;
|
|
|
@@ -976,12 +976,12 @@ BOOL CARD::ISONewcode1( char *data) // 6
|
|
|
memcpy(strTrack3.expireDate,pdata->expireDate,sizeof(strTrack3.expireDate));
|
|
|
strTrack3.checkNum[0]=getCheckNum(pdata->masterAccount,sizeof(pdata->masterAccount));
|
|
|
|
|
|
-/* //增加IC借记卡,zhanglei,2011.12.15
|
|
|
- 1.621486(银联IC金葵花)(服务代码 220)
|
|
|
- 2.621485(银联IC金卡)(服务代码 220)
|
|
|
- 3.621483(银联IC普卡) (服务代码 220)
|
|
|
+/* //澧炲姞IC鍊熻�鍗★紝zhanglei锛�2011.12.15
|
|
|
+ 1.621486锛堥摱鑱擨C閲戣懙鑺憋級锛堟湇鍔′唬鐮� 220锛�
|
|
|
+ 2.621485锛堥摱鑱擨C閲戝崱锛夛紙鏈嶅姟浠g爜 220锛�
|
|
|
+ 3.621483锛堥摱鑱擨C鏅�崱锛� (鏈嶅姟浠g爜 220锛�
|
|
|
*/
|
|
|
-/* //改用配置文件的方式,zhanglei,20141011
|
|
|
+/* //鏀圭敤閰嶇疆鏂囦欢鐨勬柟寮忥紝zhanglei锛�20141011
|
|
|
if ((strncmp((char*)&strTrack2, "621486", 6) == 0) || (strncmp((char*)&strTrack2, "621485", 6) == 0) ||
|
|
|
(strncmp((char*)&strTrack2, "621483", 6) == 0))
|
|
|
memcpy(strTrack2.serviceCode, "220", 3);
|
|
|
@@ -994,7 +994,7 @@ BOOL CARD::ISONewcode1( char *data) // 6
|
|
|
return Track23((char*)&strTrack2,(char*)&strTrack3,TRUE);
|
|
|
}
|
|
|
|
|
|
-BOOL CARD::ICcode( char *data) // IC磁条卡,逻辑基本copy ISONewcode1,修改处有注释
|
|
|
+BOOL CARD::ICcode( char *data) // IC纾佹潯鍗★紝閫昏緫鍩烘湰copy ISONewcode1锛屼慨鏀瑰�鏈夋敞閲�
|
|
|
{
|
|
|
IC_TRACK0 *pdata;
|
|
|
IC_TRACK2 strTrack2;
|
|
|
@@ -1004,7 +1004,7 @@ BOOL CARD::ICcode( char *data) // IC
|
|
|
char defNew1Track2[]= "0000000000000000000"
|
|
|
"\'"
|
|
|
"4912"
|
|
|
- "620" //服务代码620 zhanglei
|
|
|
+ "620" //鏈嶅姟浠g爜620 zhanglei
|
|
|
"123"
|
|
|
"0888000";
|
|
|
|
|
|
@@ -1023,7 +1023,7 @@ BOOL CARD::ICcode( char *data) // IC
|
|
|
sprintf(strTmp,"%03d",(unsigned int)randValue);
|
|
|
memcpy(strTrack2.localCheckMessage,strTmp,3);
|
|
|
|
|
|
- strTrack2.appendData[0]=pdata->cardSerial; //此处做了修改 zhanglei
|
|
|
+ strTrack2.appendData[0]=pdata->cardSerial; //姝ゅ�鍋氫簡淇�敼 zhanglei
|
|
|
/*
|
|
|
randValue = 0;
|
|
|
do
|
|
|
@@ -1037,7 +1037,7 @@ BOOL CARD::ICcode( char *data) // IC
|
|
|
|
|
|
memcpy(strTrack2.expireDate,pdata->expireDate,sizeof(strTrack2.expireDate));
|
|
|
|
|
|
- memcpy(strTrack2.appendData+1,pdata->SVCD,6); //此处做了修改 zhanglei
|
|
|
+ memcpy(strTrack2.appendData+1,pdata->SVCD,6); //姝ゅ�鍋氫簡淇�敼 zhanglei
|
|
|
/*
|
|
|
memcpy(strTrack2.appendData+2,pdata->SVCD,3);
|
|
|
randValue = 0;
|
|
|
@@ -1050,9 +1050,9 @@ BOOL CARD::ICcode( char *data) // IC
|
|
|
memcpy(strTrack2.appendData+5,strTmp,3);
|
|
|
*/
|
|
|
|
|
|
- //3磁道采用老的95555卡的3磁道格式
|
|
|
+ //3纾侀亾閲囩敤鑰佺殑95555鍗$殑3纾侀亾鏍煎紡
|
|
|
memcpy(strTrack3.masterAccount,pdata->masterAccount,sizeof(pdata->masterAccount));
|
|
|
- memcpy(strTrack3.SVCD,strTrack2.appendData+1,6); //取二磁道SVCD, zhanglei
|
|
|
+ memcpy(strTrack3.SVCD,strTrack2.appendData+1,6); //鍙栦簩纾侀亾SVCD, zhanglei
|
|
|
strTrack3.cardSerial=pdata->cardSerial;
|
|
|
memcpy(strTrack3.SAN1,(pdata->masterAccount)+9,sizeof(strTrack3.SAN1));
|
|
|
memcpy(strTrack3.appendData,pdata->oldRGCD,sizeof(pdata->oldRGCD));
|
|
|
@@ -1068,12 +1068,12 @@ BOOL CARD::ISOHKcode( char *data)
|
|
|
}
|
|
|
|
|
|
BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
-/* 香港一卡通专用
|
|
|
+/* 棣欐腐涓€鍗¢€氫笓鐢�
|
|
|
* Lint
|
|
|
*/
|
|
|
{
|
|
|
HK_TRACK0 *pdata;
|
|
|
- // NEW1_TRACK2 与 HK_TRACK2 相同
|
|
|
+ // NEW1_TRACK2 涓� HK_TRACK2 鐩稿悓
|
|
|
HK_TRACK2 strTrack2;
|
|
|
HK_TRACK3 strTrack3;
|
|
|
|
|
|
@@ -1154,7 +1154,7 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
sprintf(strTmp,"%05d",(unsigned int)randValue);
|
|
|
memcpy(strTrack2.localCheckMessage,strTmp,5);
|
|
|
|
|
|
- strTrack2.appendData[1]=pdata->cardSerial; //此处做了修改
|
|
|
+ strTrack2.appendData[1]=pdata->cardSerial; //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
randValue = 0;
|
|
|
do
|
|
|
@@ -1165,7 +1165,7 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
sprintf(strTmp,"%02d",(unsigned int)randValue);
|
|
|
memcpy(strTrack2.appendData,strTmp,2);
|
|
|
*/
|
|
|
- memcpy(strTrack2.appendData+2,pdata->SVCD,6); //此处做了修改
|
|
|
+ memcpy(strTrack2.appendData+2,pdata->SVCD,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
|
|
|
/*
|
|
|
memcpy(strTrack2.appendData+2,pdata->SVCD,3);
|
|
|
@@ -1184,7 +1184,7 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
|
|
|
|
|
|
// memcpy(strTrack3.masterAccount,pdata->masterAccount+6,10);
|
|
|
-// 此处做了修改
|
|
|
+// 姝ゅ�鍋氫簡淇�敼
|
|
|
memcpy(strTrack3.cardType,pdata->masterAccount,sizeof(pdata->masterAccount));
|
|
|
memcpy(strTrack3.masterAccount+10,"00",2);
|
|
|
memcpy(strTrack3.expireDate,pdata->expireDate,sizeof(strTrack3.expireDate));
|
|
|
@@ -1193,11 +1193,11 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
|
|
|
/************************
|
|
|
|
|
|
-> 子帐号 帐号类型 子帐号限制码 货币代码
|
|
|
-》主账号 : 621299860******* 1 0 1(HKD)
|
|
|
-> 港币子帐户: 860XXXXXXX01 1 0 1(HKD)
|
|
|
-> 人民币子帐户: 860XXXXXXX03 1 0 3(RMB)
|
|
|
-> 其中 XXXXXXX 为PAN号的最后7位。
|
|
|
+> 瀛愬笎鍙� 甯愬彿绫诲瀷 瀛愬笎鍙烽檺鍒剁爜 璐у竵浠g爜
|
|
|
+銆嬩富璐﹀彿 : 621299860******* 1 0 1(HKD)
|
|
|
+> 娓�竵瀛愬笎鎴凤細 860XXXXXXX01 1 0 1(HKD)
|
|
|
+> 浜烘皯甯佸瓙甯愭埛锛� 860XXXXXXX03 1 0 3(RMB)
|
|
|
+> 鍏朵腑 XXXXXXX 涓篜AN鍙风殑鏈€鍚�7浣嶃€�
|
|
|
|
|
|
************************/
|
|
|
|
|
|
@@ -1220,7 +1220,7 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
{
|
|
|
|
|
|
/******************************************
|
|
|
- * 取当前日期的函数需要在DOS进行重新编写
|
|
|
+ * 鍙栧綋鍓嶆棩鏈熺殑鍑芥暟闇€瑕佸湪DOS杩涜�閲嶆柊缂栧啓
|
|
|
******************************************/
|
|
|
#ifdef linux
|
|
|
memset(strTmp,0,128);
|
|
|
@@ -1246,7 +1246,7 @@ BOOL CARD::ISOHKcode_help( char *data, BOOL isIC)
|
|
|
sprintf(strTmp,"%07d",(unsigned int)randValue);
|
|
|
memcpy(strTrack3.appendData+8,strTmp,7);
|
|
|
|
|
|
- //此处做了修改
|
|
|
+ //姝ゅ�鍋氫簡淇�敼
|
|
|
memcpy(strTrack3.appendData+15,pdata->SVCD,6);
|
|
|
randValue = 0;
|
|
|
do
|
|
|
@@ -1300,21 +1300,21 @@ BOOL CARD::ISONewdecode( char *data,char* MARGType)
|
|
|
memcpy(pdata->masterAccount,strTrack3.masterAccount,sizeof(pdata->masterAccount));
|
|
|
pdata->cardSerial=strTrack3.cardSerial;
|
|
|
|
|
|
- memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD)); //此处做了修改
|
|
|
+ memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD)); //姝ゅ�鍋氫簡淇�敼
|
|
|
|
|
|
/*
|
|
|
|
|
|
memcpy(CardBin,pdata->masterAccount,6);
|
|
|
CardBin[6]=0;
|
|
|
CardType=ISONewCardType(CardBin);
|
|
|
- if (CardType==1) //需要后面补零
|
|
|
+ if (CardType==1) //闇€瑕佸悗闈㈣ˉ闆�
|
|
|
{
|
|
|
memcpy(pdata->SVCD,strTrack3.SVCD,3);
|
|
|
memcpy(pdata->SVCD+3,"000",3);
|
|
|
}
|
|
|
else
|
|
|
memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD));
|
|
|
- //八转十六BZSL 以上工作为将6开头的卡号的SVCD码后3位强制置0,其他卡号不变
|
|
|
+ //鍏�浆鍗佸叚BZSL 浠ヤ笂宸ヤ綔涓哄皢6寮€澶寸殑鍗″彿鐨凷VCD鐮佸悗3浣嶅己鍒剁疆0锛屽叾浠栧崱鍙蜂笉鍙�
|
|
|
|
|
|
*/
|
|
|
|
|
|
@@ -1382,21 +1382,21 @@ BOOL CARD::ICdecode( char *data,char* MARGType)
|
|
|
memcpy(pdata->masterAccount,strTrack3.masterAccount,sizeof(pdata->masterAccount));
|
|
|
pdata->cardSerial=strTrack3.cardSerial;
|
|
|
|
|
|
- memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD)); //此处做了修改
|
|
|
+ memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD)); //姝ゅ�鍋氫簡淇�敼
|
|
|
|
|
|
/*
|
|
|
|
|
|
memcpy(CardBin,pdata->masterAccount,6);
|
|
|
CardBin[6]=0;
|
|
|
CardType=ISONewCardType(CardBin);
|
|
|
- if (CardType==1) //需要后面补零
|
|
|
+ if (CardType==1) //闇€瑕佸悗闈㈣ˉ闆�
|
|
|
{
|
|
|
memcpy(pdata->SVCD,strTrack3.SVCD,3);
|
|
|
memcpy(pdata->SVCD+3,"000",3);
|
|
|
}
|
|
|
else
|
|
|
memcpy(pdata->SVCD,strTrack3.SVCD,sizeof(pdata->SVCD));
|
|
|
- //八转十六BZSL 以上工作为将6开头的卡号的SVCD码后3位强制置0,其他卡号不变
|
|
|
+ //鍏�浆鍗佸叚BZSL 浠ヤ笂宸ヤ綔涓哄皢6寮€澶寸殑鍗″彿鐨凷VCD鐮佸悗3浣嶅己鍒剁疆0锛屽叾浠栧崱鍙蜂笉鍙�
|
|
|
|
|
|
*/
|
|
|
|
|
|
@@ -1435,7 +1435,7 @@ BOOL CARD::ISOHKdecode_help( char *data,char* MARGType, BOOL* isIC)
|
|
|
|
|
|
memcpy(pdata->masterAccount,strTrack2.masterAccount,sizeof(pdata->masterAccount));
|
|
|
pdata->cardSerial=strTrack3.cardSerial[1];
|
|
|
- memcpy(pdata->SVCD,strTrack2.appendData+2,6); //此处做了修改
|
|
|
+ memcpy(pdata->SVCD,strTrack2.appendData+2,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
// memcpy(pdata->SVCD,strTrack2.appendData+2,3);
|
|
|
if (pdata->masterAccount[0]=='4')
|
|
|
{
|
|
|
@@ -1445,7 +1445,7 @@ BOOL CARD::ISOHKdecode_help( char *data,char* MARGType, BOOL* isIC)
|
|
|
{
|
|
|
memcpy(pdata->oldRGCD,"0852",sizeof(pdata->oldRGCD));
|
|
|
}
|
|
|
-// memcpy(pdata->oldRGCD,"0755",sizeof(pdata->oldRGCD)); //此处做了修改
|
|
|
+// memcpy(pdata->oldRGCD,"0755",sizeof(pdata->oldRGCD)); //姝ゅ�鍋氫簡淇�敼
|
|
|
|
|
|
memcpy(pdata->expireDate,strTrack3.expireDate,sizeof(strTrack3.expireDate));
|
|
|
pdata->language = strTrack3.language ;
|
|
|
@@ -1499,7 +1499,7 @@ char* CARD::trimstr(char* strSrc)
|
|
|
|
|
|
|
|
|
BOOL CARD::ISOINTERcode( char *data)
|
|
|
-/* 国际借记卡专用
|
|
|
+/* 鍥介檯鍊熻�鍗′笓鐢�
|
|
|
* Lint
|
|
|
*/
|
|
|
{
|
|
|
@@ -1557,7 +1557,7 @@ BOOL CARD::ISOINTERcode( char *data)
|
|
|
sprintf(strTmp,"%05d",(unsigned int)randValue);
|
|
|
memcpy(strTrack2.localCheckMessage,strTmp,5);
|
|
|
|
|
|
- strTrack2.appendData[1]=pdata->cardSerial; //此处做了修改
|
|
|
+ strTrack2.appendData[1]=pdata->cardSerial; //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
randValue = 0;
|
|
|
do
|
|
|
@@ -1569,7 +1569,7 @@ BOOL CARD::ISOINTERcode( char *data)
|
|
|
memcpy(strTrack2.appendData,strTmp,2);
|
|
|
*/
|
|
|
|
|
|
- memcpy(strTrack2.appendData+2,pdata->SVCD,6); //此处做了修改
|
|
|
+ memcpy(strTrack2.appendData+2,pdata->SVCD,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
memcpy(strTrack2.appendData+2,pdata->SVCD,3);
|
|
|
|
|
|
@@ -1596,7 +1596,7 @@ BOOL CARD::ISOINTERcode( char *data)
|
|
|
memcpy(strTrack3.bankSign,pdata->masterAccount+2,4);
|
|
|
memcpy(strTrack3.masterAccount,pdata->masterAccount+6,10);
|
|
|
|
|
|
- memcpy(strTrack3.grantControlCode,pdata->SVCD,6); //此处做了修改
|
|
|
+ memcpy(strTrack3.grantControlCode,pdata->SVCD,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
/*
|
|
|
memcpy(strTrack3.grantControlCode,pdata->SVCD,3);
|
|
|
randValue = 0;
|
|
|
@@ -1618,7 +1618,7 @@ BOOL CARD::ISOINTERcode( char *data)
|
|
|
|
|
|
|
|
|
BOOL CARD::ISOINTERcodetrack1( char *data, char *name, char *parmTrack1)
|
|
|
-/* 国际借记卡一磁道专用
|
|
|
+/* 鍥介檯鍊熻�鍗′竴纾侀亾涓撶敤
|
|
|
* CaiJun
|
|
|
*/
|
|
|
{
|
|
|
@@ -1675,14 +1675,14 @@ BOOL CARD::ISOINTERdecode( char *data,char* MARGType)
|
|
|
|
|
|
memcpy(pdata->masterAccount,strTrack2.masterAccount,sizeof(pdata->masterAccount));
|
|
|
pdata->cardSerial=strTrack3.cardSerial;
|
|
|
- memcpy(pdata->SVCD,strTrack2.appendData+2,6); //此处做了修改
|
|
|
+ memcpy(pdata->SVCD,strTrack2.appendData+2,6); //姝ゅ�鍋氫簡淇�敼
|
|
|
// memcpy(pdata->SVCD,strTrack2.appendData+2,3);
|
|
|
memcpy(pdata->expireDate,strTrack3.expireDate,sizeof(strTrack3.expireDate));
|
|
|
memcpy(pdata->oldRGCD,strTrack3.appendData,sizeof(pdata->oldRGCD));
|
|
|
return TRUE;
|
|
|
}
|
|
|
|
|
|
-BOOL CARD::ISONWPKcode( char *data) //新系统存折
|
|
|
+BOOL CARD::ISONWPKcode( char *data) //鏂扮郴缁熷瓨鎶�
|
|
|
{
|
|
|
NWPK_TRACK0 *pdata;
|
|
|
NWPK_TRACK2 strTrack2;
|
|
|
@@ -1712,7 +1712,7 @@ BOOL CARD::ISONWPKcode( char *data) //
|
|
|
}
|
|
|
|
|
|
|
|
|
-BOOL CARD::ISONWPKdecode( char *data,char* MARGType) //新系统存折
|
|
|
+BOOL CARD::ISONWPKdecode( char *data,char* MARGType) //鏂扮郴缁熷瓨鎶�
|
|
|
{
|
|
|
NWPK_TRACK0 *pdata;
|
|
|
NWPK_TRACK2 strTrack2;
|
|
|
@@ -1737,7 +1737,7 @@ BOOL CARD::ISONWPKdecode( char *data,char* MARGType) //
|
|
|
}
|
|
|
|
|
|
|
|
|
-BOOL CARD::ISONWUScode( char *data) //新系统用户卡
|
|
|
+BOOL CARD::ISONWUScode( char *data) //鏂扮郴缁熺敤鎴峰崱
|
|
|
{
|
|
|
NWUS_TRACK0 *pdata;
|
|
|
NWUS_TRACK2 strTrack2;
|
|
|
@@ -1766,7 +1766,7 @@ BOOL CARD::ISONWUScode( char *data) //
|
|
|
}
|
|
|
|
|
|
|
|
|
-BOOL CARD::ISONWUSdecode( char *data,char* MARGType) //新系统用户卡
|
|
|
+BOOL CARD::ISONWUSdecode( char *data,char* MARGType) //鏂扮郴缁熺敤鎴峰崱
|
|
|
{
|
|
|
NWUS_TRACK0 *pdata;
|
|
|
NWUS_TRACK2 strTrack2;
|
|
|
@@ -1797,14 +1797,14 @@ BOOL CARD::CMBcode( char * type, char * data, char* MagData)
|
|
|
////////////////////////////////
|
|
|
// data struct
|
|
|
|
|
|
-// 1. ODPK 存折
|
|
|
+// 1. ODPK 瀛樻姌
|
|
|
// 0..3 Region Code (RGCD)
|
|
|
// 4..13 Account No (ACNO)
|
|
|
// 14..21 Passbook (PSBK)
|
|
|
// 22..27 SVCD (SVCD)
|
|
|
// total:28
|
|
|
//
|
|
|
-// 2. ODCD 旧一卡通
|
|
|
+// 2. ODCD 鏃т竴鍗¢€�
|
|
|
// 0..3 Region Code (RGCD)
|
|
|
// 4..11 Customer No (CUNO)
|
|
|
// 12..13 99 (99)
|
|
|
@@ -1812,55 +1812,55 @@ BOOL CARD::CMBcode( char * type, char * data, char* MagData)
|
|
|
// 22..27 SVCD (SVCD)
|
|
|
// total:28
|
|
|
//
|
|
|
-// 3.NWCD 新一卡通
|
|
|
-// 0..15 卡号 (EACNBR)
|
|
|
-// 16..16 卡序号 (PSBSEQ)
|
|
|
+// 3.NWCD 鏂颁竴鍗¢€�
|
|
|
+// 0..15 鍗″彿 (EACNBR)
|
|
|
+// 16..16 鍗″簭鍙� (PSBSEQ)
|
|
|
// 17..22 SVCD (CVCCOD)
|
|
|
// 23..26 Region Code (REGCOD)
|
|
|
-// 27..30 有效期 (EXPDAT)
|
|
|
+// 27..30 鏈夋晥鏈� (EXPDAT)
|
|
|
// total 31
|
|
|
//
|
|
|
-// 4.HKCD 香港一卡通
|
|
|
-// 0..15 卡号 (EACNBR)
|
|
|
-// 16..16 卡序号 (PSBSEQ)
|
|
|
+// 4.HKCD 棣欐腐涓€鍗¢€�
|
|
|
+// 0..15 鍗″彿 (EACNBR)
|
|
|
+// 16..16 鍗″簭鍙� (PSBSEQ)
|
|
|
// 17..22 SVCD (CVCCOD)
|
|
|
// 23..26 Region Code (REGCOD)
|
|
|
-// 27..30 有效期 (EXPDAT)
|
|
|
-// 31..31 语言标志 (语言标志)
|
|
|
-// 32..32 校验位 (校验位)
|
|
|
-// 33..37 PIN偏移量 (PIN偏移量)
|
|
|
+// 27..30 鏈夋晥鏈� (EXPDAT)
|
|
|
+// 31..31 璇�█鏍囧織 (璇�█鏍囧織)
|
|
|
+// 32..32 鏍¢獙浣� (鏍¢獙浣�)
|
|
|
+// 33..37 PIN鍋忕Щ閲� (PIN鍋忕Щ閲�)
|
|
|
// total 38
|
|
|
//
|
|
|
-// 5.NWPK 新系统存折
|
|
|
-// 0..14 存折号 (EACNBR)
|
|
|
-// 15..24 凭证号 (PSBNBR)
|
|
|
+// 5.NWPK 鏂扮郴缁熷瓨鎶�
|
|
|
+// 0..14 瀛樻姌鍙� (EACNBR)
|
|
|
+// 15..24 鍑�瘉鍙� (PSBNBR)
|
|
|
// 25..30 SVCD (CVCCOD)
|
|
|
// total 31
|
|
|
//
|
|
|
-// 6.NWUS 新系统用户卡
|
|
|
-// 0..5 用户号 (USRNBR)
|
|
|
-// 6..6 卡序号 (PSBSEQ)
|
|
|
+// 6.NWUS 鏂扮郴缁熺敤鎴峰崱
|
|
|
+// 0..5 鐢ㄦ埛鍙� (USRNBR)
|
|
|
+// 6..6 鍗″簭鍙� (PSBSEQ)
|
|
|
// 7..12 SVCD (CVCCOD)
|
|
|
// total 13
|
|
|
|
|
|
-// 7.INTE 国际借记卡
|
|
|
-// 0..15 卡号 (EACNBR)
|
|
|
-// 16..16 卡序号 (PSBSEQ)
|
|
|
+// 7.INTE 鍥介檯鍊熻�鍗�
|
|
|
+// 0..15 鍗″彿 (EACNBR)
|
|
|
+// 16..16 鍗″簭鍙� (PSBSEQ)
|
|
|
// 17..22 SVCD (CVCCOD)
|
|
|
// 23..26 Region Code (REGCOD)
|
|
|
-// 27..30 有效期 (EXPDAT)
|
|
|
+// 27..30 鏈夋晥鏈� (EXPDAT)
|
|
|
// total 31
|
|
|
|
|
|
-// 8.ICCD IC磁条卡 zhanglei 20100919
|
|
|
-// 0..18 卡号 (EACNBR)
|
|
|
-// 16..16 卡序号 (PSBSEQ)
|
|
|
+// 8.ICCD IC纾佹潯鍗� zhanglei 20100919
|
|
|
+// 0..18 鍗″彿 (EACNBR)
|
|
|
+// 16..16 鍗″簭鍙� (PSBSEQ)
|
|
|
// 17..22 SVCD (CVCCOD)
|
|
|
// 23..26 Region Code (REGCOD)
|
|
|
-// 27..30 有效期 (EXPDAT)
|
|
|
+// 27..30 鏈夋晥鏈� (EXPDAT)
|
|
|
// total 34
|
|
|
|
|
|
-// 9.HKIC HK IC磁条卡 zhanglei 20110721
|
|
|
-// 同HKCD,服务代码为220
|
|
|
+// 9.HKIC HK IC纾佹潯鍗� zhanglei 20110721
|
|
|
+// 鍚孒KCD锛屾湇鍔′唬鐮佷负220
|
|
|
|
|
|
Ret=false;
|
|
|
MagData[0]=0;
|
|
|
@@ -1912,9 +1912,9 @@ BOOL CARD::CMBcode( char * type, char * data, char* MagData)
|
|
|
|
|
|
BOOL CARD::CMBdecode( char* MagData, char * type, char * data)
|
|
|
{
|
|
|
-// CRED 招行信用卡
|
|
|
-// 0..15 卡号 (EACNBR)
|
|
|
-// 16..47 二磁道 (TK2DTA)
|
|
|
+// CRED 鎷涜�淇$敤鍗�
|
|
|
+// 0..15 鍗″彿 (EACNBR)
|
|
|
+// 16..47 浜岀�閬� (TK2DTA)
|
|
|
// total 48
|
|
|
|
|
|
BOOL Ret;
|
|
|
@@ -1932,7 +1932,7 @@ BOOL CARD::CMBdecode( char* MagData, char * type, char * data)
|
|
|
lenTrack2=strlen((char*)&strTrack2);
|
|
|
lenTrack3=strlen((char*)&strTrack3);
|
|
|
|
|
|
- //4-VISA,5-MASTER,6-银联,3-JCB
|
|
|
+ //4-VISA,5-MASTER,6-閾惰仈,3-JCB
|
|
|
if ( ( lenTrack2==sizeof(IC_TRACK2)-1 ) &&
|
|
|
( lenTrack3==sizeof(IC_TRACK3)-1 ) &&
|
|
|
( strncmp((char*)&strTrack3,"99620520",8)==0 ) )
|
|
|
@@ -2087,8 +2087,8 @@ BOOL CARD::CMBcodeEx( char * type, char * data, char* MagData)
|
|
|
if(*ptmp=='\'') *ptmp='=';
|
|
|
ptmp++;
|
|
|
}
|
|
|
-// strcpy(MagData,MagDataBuf); //改为内部处理
|
|
|
- if (strcmp(type,"INTE")==0) //国际卡
|
|
|
+// strcpy(MagData,MagDataBuf); //鏀逛负鍐呴儴澶勭悊
|
|
|
+ if (strcmp(type,"INTE")==0) //鍥介檯鍗�
|
|
|
{
|
|
|
strcpy(name,data+sizeof(INTER_TRACK0)-1);
|
|
|
Ret=ISOINTERcodetrack1(data,name,MagDataBuf1);
|