protected override void OnSucc() { //54域 CommonData.Amount = double.Parse(RecvPackage.GetString(54)) / 100; //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); QueryTraceNo = handler.GetStringValue("BF05"); QueryCount = handler.GetStringValue("BF06"); QueryContent = handler.GetStringValue("FF48"); }
protected override void OnSucc() { //37域 系统参考号 PayEntity.PayReferenceNo = RecvPackage.GetString(37); //38域 PayEntity.RecvField38 = RecvPackage.ExistValue(38) ? RecvPackage.GetString(38) : ""; //55域 PayEntity.RecvField55 = RecvPackage.ExistValue(55) ? RecvPackage.GetArrayData(55) : new byte[0]; //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); PayEntity.PayFlowNo = handler.GetStringValue("BF05"); }
protected override void OnSucc() { //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); PayEntity.TPQueryTraceNo = handler.GetStringValue("BF05"); PayEntity.TPUserName = handler.GetStringValue("1F1B"); PayEntity.TPUserID = handler.GetStringValue("1F2B"); PayEntity.TPPrinAmount = double.Parse(handler.GetStringValue("1F3B")) / 100; PayEntity.TPFeeAmount = double.Parse(handler.GetStringValue("1F4B")) / 100; PayEntity.TPPayAmount = double.Parse(handler.GetStringValue("1F5B")) / 100; }
private byte[] PacketField48() { string field48 = "C0v22901510000" + UserID.PadLeft(40, ' ') + "000000" + "2"; byte[] tmp = Encoding.Default.GetBytes(field48); TLVHandler handler = new TLVHandler(); handler.AddTag("BF12", SelectRecordInfo[0]); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); return(result); }
private void WaterOnSucc() { //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); PayEntity.QueryTraceNo = handler.GetStringValue("BF05"); PayEntity.UserName = handler.GetStringValue("1F1B"); PayEntity.UserAddress = handler.GetStringValue("1F2B"); PayEntity.QueryAmount = double.Parse(handler.GetStringValue("1F3B")) / 100; PayEntity.WaterFee = double.Parse(handler.GetStringValue("1F4B")) / 100; PayEntity.WaterTotalAmount = double.Parse(handler.GetStringValue("1F5B")) / 100; }
private void TVOnSucc() { //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); PayEntity.QueryTraceNo = handler.GetStringValue("BF05"); PayEntity.UserName = handler.GetStringValue("1F1B"); PayEntity.QueryAmount = double.Parse(handler.GetStringValue("1F2B")) / 100; PayEntity.QueryDateEnd = handler.GetStringValue("1F3B"); PayEntity.Price1 = double.Parse(handler.GetStringValue("1F4B")) / 100; PayEntity.Price2 = double.Parse(handler.GetStringValue("1F5B")) / 100; PayEntity.PriceInfo = handler.GetStringValue("1F6B"); }
private byte[] PacketField48() { string temp = "B0V2560265200000" + PayEntity.PowerCardNo.PadRight(50, ' ') + "000000"; byte[] tmp = Encoding.Default.GetBytes(temp); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); if (m_process == 1) { handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); handler.AddTag("1F3A", PayEntity.PowerCardData.EF1); handler.AddTag("1F4A", PayEntity.PowerCardData.EF2); handler.AddTag("1F5A", PayEntity.PowerCardData.EF5); } else if (m_process == 2) { handler.AddTag("BF05", PayEntity.ConfirmTraceNo); //handler.AddTag("1F4A", PayEntity.PowerCardData.EF5); } handler.AddTag("BF15", PayEntity.PayFlowNo); handler.AddTag("FF01", m_process.ToString()); handler.AddTag("1F1A", PayEntity.PowerBusiness.ToString()); handler.AddTag("1F2A", PayEntity.CityPowerNo); //handler.AddTag("FF54", PayEntity.EleFeeNum); //handler.AddTag("FF55", PayEntity.EleFeeAccountNum); //handler.AddTag("1F20", Utility.AmountToString(CommonData.Amount.ToString())); //handler.AddTag("1F21", DateTime.Now.ToString("yyyyMMdd")); //handler.AddTag("1F22", PayEntity.PowerCardData.CardNo); //handler.AddTag("1F23", PayEntity.PowerCardData.Random); //handler.AddTag("1F24", PayEntity.PowerCardData.CardInfo); //handler.AddTag("1F25", PayEntity.PowerIdentity); //handler.AddTag("FF30", GetBranchNo()); //handler.AddTag("FF31",GetOperatorNo()); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }
protected override void OnSucc() { //48域 UserID = Encoding.Default.GetString(RecvPackage.GetArrayData(48), 14, 40); TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); UserName = handler.GetStringValue("2F1A"); UserNo = handler.GetStringValue("BF06"); UserTel = handler.GetStringValue("BF07"); IDCard = handler.GetStringValue("BF08"); Sex = handler.GetStringValue("BF09") == "0" ? "男" : "女"; RecordCount = int.Parse(handler.GetStringValue("BF10")); RecordInfo = handler.GetStringValue("BF11"); }
protected override void OnSucc() { SetBatchNo(RecvPackage.GetString(60).Substring(2, 6)); //记录批次号 byte[] bField63 = RecvPackage.GetArrayData(63); if (bField63[0] == 0x31) { BCA = new byte[bField63.Length - 1]; Array.Copy(bField63, 1, BCA, 0, bField63.Length - 1); Dictionary <string, byte[]> ht = new Dictionary <string, byte[]>(); TLVHandler.ParseTLV(BCA, ht); if (!ValidatorCA(ht)) { SetResult(TransResult.E_UNPACKET_FAIL); } } }
protected override void OnSucc() { //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); if (_mProcess == 1) { PayEntity.ReWriteCardTraceNo1 = handler.GetStringValue("BF05"); } else if (_mProcess == 2) { PayEntity.ReWriteCardTraceNo2 = handler.GetStringValue("BF05"); PayEntity.ReWriteCardReturnMsg = handler.GetStringValue("3F1B"); PayEntity.PowerCardData.W_EF1 = handler.GetStringValue("3F2B"); PayEntity.PowerCardData.W_EF2 = handler.GetStringValue("3F3B"); PayEntity.PowerCardData.W_EF5 = handler.GetStringValue("3F4B"); if (string.IsNullOrEmpty(handler.GetStringValue("3F5B"))) { PayEntity.PowerPayCount = int.Parse(handler.GetStringValue("3F5B")); } PayEntity.ReWriteCardAmount = handler.GetStringValue("3F6B"); PayEntity.ReWriteUserAmount = handler.GetStringValue("3F7B"); } //PayEntity.ConfirmTraceNo = handler.GetStringValue("BF05"); //PayEntity.PowerCardData.W_EF2 = handler.GetStringValue("1F38"); //PayEntity.PowerCardData.W_EF5 = handler.GetStringValue("1F39"); if (_mProcess != 1) { byte[] tmp = RecvPackage.GetArrayData(57); string temp57 = Encoding.Default.GetString(tmp);// PubFunc.ByteArrayToHexString(tmp, tmp.Length).Trim(); Log.Debug(temp57); if (_mProcess == 2) { PayEntity.PowerCardData.W_EF31 = CalcuMsg(temp57.Substring(0, 130)); PayEntity.PowerCardData.W_EF32 = CalcuMsg(temp57.Substring(130, 30)); PayEntity.PowerCardData.W_EF41 = CalcuMsg(temp57.Substring(160, 130)); PayEntity.PowerCardData.W_EF42 = CalcuMsg(temp57.Substring(290, 30)); PayEntity.PowerCardData.CertDes = temp57.Substring(320, 16); PayEntity.PowerCardData.LimitDes = temp57.Substring(336, 16); PayEntity.PowerCardData.ExtDes = temp57.Substring(352, 16); } } }
private byte[] PacketField48() { byte[] tmp = HeandField48(); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }
protected override void OnHostFail(string returnCode, string returnMessage) { base.OnHostFail(returnCode, returnMessage); try { TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); ReturnMessage = handler.GetStringValue("FF52"); if (ReturnCode == "TH") { ReturnMessage = handler.GetStringValue("1F1B"); } } catch (Exception ex) { Log.Debug("Query HostFail" + ex.Message); } }
private byte[] PacketField48() { string temp = "B1V2560265200000" + PayEntity.PowerCardNo.PadRight(50, ' ') + "000000"; byte[] tmp = Encoding.Default.GetBytes(temp); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); //handler.AddTag("3F2B", "51401"); handler.AddTag("3F2B", PayEntity.PowerPayConfirmCode); if (_mProcess == 1) { handler.AddTag("1F3A", PayEntity.PowerCardData.EF1); handler.AddTag("1F4A", PayEntity.PowerCardData.EF2); handler.AddTag("1F5A", PayEntity.PowerCardData.EF5); //handler.AddTag("1F3A", "680100270280000000010000000000120000500000000000000001000001000000647890000445177640029316"); //handler.AddTag("1F4A", "0000006400000007"); //handler.AddTag("1F5A", "6811002B02000001000001000000647890000445177640000075F800000007000000000100040100000015010218016D16"); } else if (_mProcess == 2) { handler.AddTag("BF05", PayEntity.ReWriteCardTraceNo1); } //else if (_mProcess == 3) //{ // handler.AddTag("BF05", PayEntity.ReWriteCardTraceNo2); //} handler.AddTag("FF01", _mProcess.ToString()); handler.AddTag("1F1A", PayEntity.PowerBusiness.ToString()); handler.AddTag("1F2A", PayEntity.CityPowerNo); //handler.AddTag("1F2A", "51401"); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }
private byte[] PacketField48() { string temp = "U6V2560265000000" + PayEntity.DBNo.PadLeft(50, ' ') + "000000"; byte[] tmp = Encoding.Default.GetBytes(temp); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); handler.AddTag("BF05", PayEntity.QueryTraceNo); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }
/// <summary> /// 冲正使用的55域 /// </summary> protected byte[] GetICAutoField55(byte[] _field55, int fieldLen) { //95 9F1E 9F10 9F36 DF31 var field55 = new byte[fieldLen]; Array.Copy(_field55, field55, fieldLen); var tlv = new TLVHandler(); var handler = new TLVHandler(); handler.ParseTLV(field55); var value = new byte[0]; #region 打包Field55 if ((value = handler.GetBytesValue("95")) != null) { tlv.AddTag("95", value); } if ((value = handler.GetBytesValue("9F1E")) != null) { tlv.AddTag("9F1E", value); } if ((value = handler.GetBytesValue("9F10")) != null) { tlv.AddTag("9F10", value); } if ((value = handler.GetBytesValue("9F36")) != null) { tlv.AddTag("9F36", value); } if ((value = handler.GetBytesValue("DF31")) != null) { tlv.AddTag("DF31", value); } #endregion return(tlv.GetTLV()); }
protected override void OnSucc() { //48域 TLVHandler handler = new TLVHandler(); handler.ParseTLV(Get48TLVBytes()); if (_currentIndex == 1) { PayEntity.CheckTraceNo = handler.GetStringValue("BF05"); PayEntity.CheckReturnMsg = handler.GetStringValue("1F1B"); PayEntity.CheckRechargeAmount = handler.GetStringValue("1F2B"); PayEntity.CheckRemuneration = handler.GetStringValue("1F3B"); PayEntity.CheckOrderStatus = handler.GetStringValue("1F4B"); //PayEntity.PowerCardData.EF1 = handler.GetStringValue("3F5B"); //PayEntity.PowerCardData.EF2 = handler.GetStringValue("3F6B"); //PayEntity.PowerCardData.EF5 = handler.GetStringValue("3F7B"); //PayEntity.CheckBuyEleTimes = handler.GetStringValue("3F8B"); //PayEntity.CheckWriteAmount = handler.GetStringValue("3F9B"); //PayEntity.CheckUserAmount = handler.GetStringValue("3F10"); } //byte[] tmp = RecvPackage.GetArrayData(57); //string temp57 = PubFunc.ByteArrayToHexString(tmp, tmp.Length).Trim(); //Log.Debug(temp57); //if (_currentIndex == 1) //{ // PayEntity.CheckBF31 = temp57.Substring(0, 256); //} //else if (_currentIndex == 2) //{ // PayEntity.CheckBF32 = temp57.Substring(0, 256); // PayEntity.CheckBF41 = temp57.Substring(256, 256); // PayEntity.CheckBF42 = temp57.Substring(512, 256); // PayEntity.Check57sKey1 = temp57.Substring(768, 16); // PayEntity.Check57sKey2 = temp57.Substring(784, 16); // PayEntity.Check57sKey3 = temp57.Substring(800, 16); //} }
private byte[] PacketField48() { string field48 = "C3v22901510000" + "".PadLeft(40, ' ') + "000000" + "2"; byte[] tmp = Encoding.Default.GetBytes(field48); string loginName = LoginName; string loginPsd = LoginPsd; string loginNewPsd = LoginNewPsd; #if DEBUG loginName = "FW010101Z00501010" + LoginName; #endif TLVHandler handler = new TLVHandler(); handler.AddTag("FF44", loginName); handler.AddTag("FF45", loginPsd); handler.AddTag("FF46", loginNewPsd); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); return(result); }
private byte[] PacketField48() { string temp = "C3V2571165010000" + "".PadLeft(50, ' ') + "000000"; byte[] tmp = Encoding.Default.GetBytes(temp); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); handler.AddTag("2F1A", _index); handler.AddTag("2F2A", _cjjgid); handler.AddTag("2F3A", PayEntity.LicenseNo); byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }
private byte[] PacketField48() { byte[] tmp = HeandField48(); TLVHandler handler = new TLVHandler(); handler.AddTag("1F50", "0004"); handler.AddTag("FF28", GetMerchantNo()); handler.AddTag("FF29", GetTerminalNo()); handler.AddTag("BF05", PayEntity.QueryTraceNo); if (PayEntity.PublishPayType == Entity.YaPublishPayType.TV) { handler.AddTag("2F1A", PayEntity.SelectMonth.ToString()); handler.AddTag("2F2A", Utility.AmountToString(PayEntity.SelectPrice.ToString()).TrimStart('0')); } byte[] content = handler.GetTLVWithLength(3); byte[] result = new byte[tmp.Length + content.Length + 1]; Array.Copy(tmp, result, tmp.Length); Array.Copy(content, 0, result, tmp.Length, content.Length); Array.Copy(Encoding.Default.GetBytes("#"), 0, result, tmp.Length + content.Length, 1); return(result); }