protected override IMonitorEntity_MsgTgt CreateMonitorTarget(IMonitorEntity parent, IFreeformEntity_MsgTgt request)
 {
     FFTgt_G2H_Ticket_Redemption_Close tgtSrc = request as FFTgt_G2H_Ticket_Redemption_Close;
     if (tgtSrc != null)
     {
         MonTgt_G2H_Ticket_Redemption_Close tgtDest = new MonTgt_G2H_Ticket_Redemption_Close()
         {
             Barcode = tgtSrc.Barcode,
             Amount = tgtSrc.Amount,
             Type = tgtSrc.Type,
             Status = tgtSrc.Status,
         };
         return tgtDest;
     }
     return null;
 }
Example #2
0
        protected override IMonitorEntity_MsgTgt CreateMonitorTarget(IMonitorEntity parent, IFreeformEntity_MsgTgt request)
        {
            FFTgt_G2H_Ticket_Redemption_Close tgtSrc = request as FFTgt_G2H_Ticket_Redemption_Close;

            if (tgtSrc != null)
            {
                MonTgt_G2H_Ticket_Redemption_Close tgtDest = new MonTgt_G2H_Ticket_Redemption_Close()
                {
                    Barcode = tgtSrc.Barcode,
                    Amount  = tgtSrc.Amount,
                    Type    = tgtSrc.Type,
                    Status  = tgtSrc.Status,
                };
                return(tgtDest);
            }
            return(null);
        }
 private void TicketReedeemFail(MonTgt_G2H_Ticket_Redemption_Close tgtSrc, MonMsg_G2H msgSrc, ICallWebService ticketService, ref int? voucherID)
 {
     using (ILogMethod method = Log.LogMethod(this.DYN_MODULE_NAME, "TicketReedeemFail"))
     {
         try
         {
             long retCode = 0;
             if (tgtSrc.Status != FF_AppId_TicketRedemption_Close_Status.CouponRejectedbySystem)
             {
                 if (_configStore.IsCrossTicketingEnabled)
                 {
                     if ((string.Equals(HandlerHelper.Current.LocalSiteCode, msgSrc.SiteCode)) || 
                         ticketService.IsTISPrintedTicketPrefix(tgtSrc.Barcode))
                     {
                         if (!ExCommsDataContext.Current.RedeemTicketComplete(tgtSrc.Barcode, msgSrc.Asset, ref voucherID, msgSrc.SiteCode, msgSrc.CardNumber))
                         {
                             Log.Info("TICKET_REDEEM_CLOSE_FAIL (TIS or LOCAL SITE): No proper Ticket Redeemption!!");
                         }
                     }
                     else
                     {
                         Log.Info("TICKET_REDEEM_CLOSE_FAIL (CROSS SITE): Foreign Ticket Rdm Cmpt cancel");
                         if (msgSrc.InstallationNo == 0 || 
                             string.IsNullOrEmpty(msgSrc.Asset))
                         {
                             Log.Info("TICKET_REDEEM_CLOSE_FAIL (CROSS SITE): Installation detail in " + msgSrc.InstallationNo.ToString() + " lID DeviceID " + msgSrc.Asset);
                             if (ticketService.TicketRedeemCancel(tgtSrc.Barcode, msgSrc.Asset, 0, out retCode) != 0)
                             {
                                 Log.Info("TICKET_REDEEM_CLOSE_FAIL (CROSS SITE): Problem while sending the Ticket Redeem complete msg to DB!");
                             }
                         }
                         else
                         {
                             Log.Info("TICKET_REDEEM_CLOSE_FAIL (CROSS SITE): Stored Installation detail in " + msgSrc.InstallationNo.ToString() + " lID DeviceID " + msgSrc.Asset);
                             if (ticketService.TicketRedeemCancel(tgtSrc.Barcode, msgSrc.Asset, 0, out retCode) != 0)
                             {
                                 Log.Info("TICKET_REDEEM_CLOSE_FAIL (CROSS SITE): Problem while sending the Ticket Redeem complete msg to DB!");
                             }
                         }
                     }
                 }
                 else
                 {
                     if (!ExCommsDataContext.Current.RedeemTicketComplete(tgtSrc.Barcode, msgSrc.Asset, ref voucherID, msgSrc.SiteCode, msgSrc.CardNumber))
                     {
                         Log.Info("TICKET_REDEEM_CLOSE_FAIL (LOCAL SITE): No proper Ticket Redeemption!!");
                     }
                 }
             }
         }
         catch (Exception ex)
         {
             method.Exception(ex);
         }
     }
 }