protected override void Packet() { bool bIsIC = false; if (CommonData.UserCardType == UserBankCardType.ICCard || CommonData.UserCardType == UserBankCardType.IcMagCard) { bIsIC = true; } SendPackage.SetString(0, "0200"); if (!string.IsNullOrEmpty(CommonData.BankCardNum) && CommonData.BankCardNum.Length != 0) { SendPackage.SetString(2, CommonData.BankCardNum); } SendPackage.SetString(3, "190000"); SendPackage.SetString(4, Utility.AmountToString(CommonData.Amount.ToString())); PayTraceNo = GetTraceNo(); SendPackage.SetString(11, PayTraceNo); if (!string.IsNullOrEmpty(CommonData.BankCardExpDate) && CommonData.BankCardExpDate.Length != 0)//卡有效期 { SendPackage.SetString(14, CommonData.BankCardExpDate); } if (bIsIC)//22 { SendPackage.SetString(22, "051"); } else { SendPackage.SetString(22, "021"); } if (!string.IsNullOrEmpty(CommonData.BankCardSeqNum) && CommonData.BankCardSeqNum.Length != 0)//卡序列号 { SendPackage.SetString(23, CommonData.BankCardSeqNum); } SendPackage.SetString(25, "81"); //服务点条件代码 SendPackage.SetString(26, "06"); if (!string.IsNullOrEmpty(CommonData.Track2) && CommonData.Track2.Length != 0) { SendPackage.SetString(35, CommonData.Track2.Replace('=', 'D')); } if (!string.IsNullOrEmpty(CommonData.Track3) && CommonData.Track3.Length != 0) { SendPackage.SetString(36, CommonData.Track3.Replace('=', 'D')); } SendPackage.SetArrayData(48, PacketField48()); SendPackage.SetString(49, "156"); SendPackage.SetArrayData(52, Utility.str2Bcd(CommonData.BankPassWord)); switch (DType) { case DesType.Des: SendPackage.SetString(53, "2000000000000000"); break; case DesType.TripleDes: SendPackage.SetString(53, "2600000000000000"); break; } //55 if (SendField55 != null && SendField55.Length != 0) { SendPackage.SetArrayData(55, SendField55, 0, SendField55.Length); } if (bIsIC) { SendPackage.SetString(60, "00" + GetBatchNo() + "00050"); } else { SendPackage.SetString(60, "00" + GetBatchNo() + "000"); } //创建冲正文件 98 96 06 CReverse_YAPaymentPay cr = new CReverse_YAPaymentPay(this); cr.CreateReverseFile("98"); }
protected override void Packet() { bool bIsIC = false; if (CommonData.UserCardType == UserBankCardType.ICCard || CommonData.UserCardType == UserBankCardType.IcMagCard) { bIsIC = true; } SendPackage.SetString(0, "0200"); SendPackage.SetString(3, "190000"); SendPackage.SetString(4, Utility.AmountToString(PayEntity.TotalAmount.ToString())); PayEntity.PayTraceNo = GetTraceNo(); SendPackage.SetString(11, PayEntity.PayTraceNo); if (!string.IsNullOrEmpty(CommonData.BankCardExpDate) && CommonData.BankCardExpDate.Length != 0)//卡有效期 { SendPackage.SetString(14, CommonData.BankCardExpDate); } if (bIsIC)//22 { SendPackage.SetString(22, "051"); } else { SendPackage.SetString(22, "021"); } if (!string.IsNullOrEmpty(CommonData.BankCardSeqNum) && CommonData.BankCardSeqNum.Length != 0)//卡序列号 { SendPackage.SetString(23, CommonData.BankCardSeqNum); } SendPackage.SetString(25, "00"); SendPackage.SetString(26, "06"); if (!string.IsNullOrEmpty(CommonData.Track2) && CommonData.Track2.Length != 0) { SendPackage.SetString(35, CommonData.Track2.Replace('=', 'D')); } if (!string.IsNullOrEmpty(CommonData.Track3)) { SendPackage.SetString(36, CommonData.Track3.Replace('=', 'D')); } //SendPackage.SetString(48, "PA" + "08" + PayEntity.CreditcardNum.PadRight(20, ' ') + "N" + "0".PadRight(11, '0') + "#"); string f48 = "PA" + "08" + PayEntity.CreditcardNum.PadRight(20, ' ') + "N" + "0".PadRight(11, '0') + "#"; SendPackage.SetArrayData(48, Encoding.Default.GetBytes(f48)); SendPackage.SetArrayData(52, Utility.str2Bcd(CommonData.BankPassWord)); SendPackage.SetString(49, "156"); switch (DType) { case DesType.Des: SendPackage.SetString(53, "2000000000000000"); break; case DesType.TripleDes: SendPackage.SetString(53, "2600000000000000"); break; } //55 if (bIsIC && PayEntity.SendField55 != null && PayEntity.SendField55.Length != 0) { SendPackage.SetArrayData(55, PayEntity.SendField55); } if (PayEntity.UseICCard) { SendPackage.SetString(60, "00" + GetBatchNo() + "00050"); } else { SendPackage.SetString(60, "00" + GetBatchNo() + "000"); } //创建冲正文件 98 96 06 CReverse_YAPaymentPay cr = new CReverse_YAPaymentPay(this); cr.CreateReverseFile("98"); }