/// <summary> /// POS download softpin in template /// ChungNN 03/2009 /// </summary> /// <param name="Pos_ID"></param> /// <param name="Merchant_ID"></param> /// <param name="RequestID"></param> /// <param name="SoftpinStock"></param> /// <returns></returns> public BatchBuyObject PosDownloadSoftpinTemplate(int Pos_ID, int Merchant_ID, string RequestID, object[] SoftpinStock) { BatchBuyObject buyObj = new BatchBuyObject(); string strTopupInterfaceToken = ServiceSessionManager.GetSessionInstance().GetSession("TopupInterfaceToken"); buyObj = srvObj.PosDownloadSoftpinTemplate(Pos_ID, Merchant_ID, RequestID, SoftpinStock, strTopupInterfaceToken); Thread.Sleep(AppConfiguration.TopupInterface_TimeOut); return(buyObj); //transObj.WriteLog("PosDownloadSingleSoftpin, Errorcode = " + buyObj.ErrorCode.ToString()); }
/// <summary> /// POS download some softpins /// ChungNN 03/2009 /// </summary> /// <param name="Pos_ID"></param> /// <param name="Merchant_ID"></param> /// <param name="RequestID"></param> /// <param name="CategoryName"></param> /// <param name="ServiceProviderName"></param> /// <param name="ProductValue"></param> /// <param name="StockQuantity"></param> /// <param name="DownloadQuantity"></param> /// <returns></returns> public BatchBuyObject PosDownloadSingleSoftpin(int Pos_ID, int Merchant_ID, string RequestID, string CategoryName, string ServiceProviderName, int ProductValue, int StockQuantity, int DownloadQuantity) { BatchBuyObject buyObj = new BatchBuyObject(); string strTopupInterfaceToken = ServiceSessionManager.GetSessionInstance().GetSession("TopupInterfaceToken"); //string RequestID = Guid.NewGuid().ToString().Substring(0, 19); buyObj = srvObj.PosDownloadSingleSoftpin(Pos_ID, Merchant_ID, RequestID, CategoryName, ServiceProviderName, ProductValue, StockQuantity, DownloadQuantity, strTopupInterfaceToken); Thread.Sleep(AppConfiguration.TopupInterface_TimeOut); //buyObj = srvObj.PosDownloadSingleSoftpin(Pos_ID, Merchant_ID, RequestID, CategoryName, ServiceProviderName, ProductValue, StockQuantity, strTopupInterfaceToken); return(buyObj); //transObj.WriteLog("PosDownloadSingleSoftpin, Errorcode = " + buyObj.ErrorCode.ToString()); }
/// <summary> /// POS download softpin /// ChungNN 03/2009 /// </summary> /// <param name="request">IsoMessage</param> /// <returns>IsoMessage</returns> public IsoMessage Download(IsoMessage request) { topupObj = new TopupInterface(); //create response message mfact = new MessageFactory(); mfact = ConfigParser.CreateFromFile(AppConfiguration.App_Path + AppConfiguration.POSConfig_ISOFile); IsoMessage response = mfact.CreateResponse(request); bool blnDownloadTemplate = !request.HasField(48); string strRequest = request.GetField(11).Value.ToString(); int nMerchant_ID = int.Parse(request.GetField(2).Value.ToString()); int nPos_ID = int.Parse(request.GetField(52).Value.ToString()); //if exist session if (!Common.ServiceSessionManager.GetSessionInstance().IsExistedSession(nPos_ID.ToString(), strRequest)) { mfact.Setfield(39, "01", ref response); transObj.WriteLog("->download fail, session not exist"); } else { //Download template if (blnDownloadTemplate) { try { //get request values topupObj = new TopupInterface(); BatchBuyObject buyObj = new BatchBuyObject(); //String[] arrRequestValues = request.GetField(48).Value.ToString().Split(AppConfiguration.POS_Seperator_Char); //string strCategoryName = arrRequestValues[0]; //string strServiceProviderName = arrRequestValues[1]; //int nProductValue = int.Parse(arrRequestValues[2]); //int nStockQuantity = int.Parse(arrRequestValues[3]); //int nDownloadQuantity = int.Parse(arrRequestValues[4]); object[] SoftpinStock = new object[1]; StockObject stockObj = new StockObject(); stockObj.ProductValue = 10000; stockObj.CategoryName = "Thẻ ĐTDĐ"; stockObj.ServiceProviderName = "Vinaphone"; stockObj.StockQuantity = 0; SoftpinStock[0] = stockObj; buyObj = topupObj.PosDownloadSoftpinTemplate(nPos_ID, nMerchant_ID, strRequest, SoftpinStock); if (buyObj.ErrorCode == 0) { mfact.Setfield(39, "00", ref response); transObj.WriteLog("->download template successfull"); } else { mfact.Setfield(39, "01", ref response); transObj.WriteLog("->download template fail"); } } catch (Exception ex) { transObj.WriteLog("->download template execption =" + ex.ToString()); throw (ex); } } //Download single else { try { //get request values topupObj = new TopupInterface(); BatchBuyObject buyObj = new BatchBuyObject(); String[] arrRequestValues = request.GetField(48).Value.ToString().Split(AppConfiguration.POS_Seperator_Char); string strCategoryName = arrRequestValues[0]; string strServiceProviderName = arrRequestValues[1]; int nProductValue = int.Parse(arrRequestValues[2]); int nStockQuantity = int.Parse(arrRequestValues[3]); int nDownloadQuantity = int.Parse(arrRequestValues[4]); buyObj = topupObj.PosDownloadSingleSoftpin(nPos_ID, nMerchant_ID, strRequest, strCategoryName, strServiceProviderName, nProductValue, nStockQuantity, nDownloadQuantity); if (buyObj.ErrorCode == 0) { mfact.Setfield(39, "00", ref response); transObj.WriteLog("->download single successfull"); } else { mfact.Setfield(39, "01", ref response); transObj.WriteLog("->download single fail"); } //create response message mfact = new MessageFactory(); mfact = ConfigParser.CreateFromFile(AppConfiguration.App_Path + AppConfiguration.POSConfig_ISOFile); response = mfact.CreateResponse(request); } catch (Exception ex) { transObj.WriteLog("->download single execption =" + ex.ToString()); throw (ex); } } } return(response); }