コード例 #1
0
        // D e t a i l   R e p o r t


        DetailReportInformation ITransactionService.DetailReport(
            String MerchantID, String ClerkID, char WhereFrom,
            String MerchSeqNum, String TerminalID, DateTime LocalTime)
        {
            DetailReportInformation DRI = new DetailReportInformation();
            IHistoryDAO             HistoryRepositoryInstance = new HistoryDAO();

            DetailHistory DHI = HistoryRepositoryInstance.DetailReport(MerchantID, ClerkID,
                                                                       Convert.ToString(WhereFrom), MerchSeqNum,
                                                                       TerminalID, LocalTime);

            DRI.When               = DateTime.Now;
            DRI.ResponseCode       = (char)DHI.ResponseCode;
            DRI.ErrorCode          = (string)DHI.ErrorCode;
            DRI.SummaryInformation = DHI.Summary;


            DRI.Details = new List <TransactionDetailInformation>();
            foreach (CardHistory ch in DHI.DetailItems)
            {
                TransactionDetailInformation TDI = new TransactionDetailInformation();
                TDI.CardNumber = ch.CardNumber;
                TDI.Amount     = ch.Amount.ToString();
                TDI.ID         = ch.ID.ToString();
                if (ch.LocalTime != null)
                {
                    TDI.When = ch.LocalTime.ToString();
                }
                else
                {
                    TDI.When = ch.When.ToString();
                }
                TDI.Clerk       = ch.Clerk;
                TDI.TransType   = ch.TransType;
                TDI.Transaction = ch.Transaction;
                TDI.MerchWhere  = ch.MerchWhere;
                if (ch.Text != null)
                {
                    if (ch.Text.Trim().Length > 0)
                    {
                        TDI.Text = ch.Text;
                    }
                }
                if (ch.InvoiceNumber != null)
                {
                    TDI.InvoiceNumber = ch.InvoiceNumber.Trim();
                }
                else
                {
                    TDI.InvoiceNumber = "";
                }
                DRI.Details.Add(TDI);
            }
            return(DRI);
        }
コード例 #2
0
 public IList <DetailHistoryData> GetAllHistory(int id)
 {
     return(DetailHistory.ToJavaScriptDetailHistory(_eventStoreRepository.All(id)));
 }
コード例 #3
0
        // Yes, there was a stored procedure to do the detail report,
        // but it returns two result sets and the second one can have
        // a bunch of records in it.
        DetailHistory IHistoryDAO.DetailReport(String MerchantID, String ClerkID, String WhereFrom, String MerchSeqNum, String TerminalID, DateTime LocalTime)
        {
            InitializeConnection();
            // need to resolve any merchant sequence number issues



            DetailHistory Results = new DetailHistory();

            Results.DetailItems = new List <CardHistory>();


            gp_DailyReport_Result Res = GiftEntity.gp_DailyReport(MerchantID, ClerkID, "E", WhereFrom, MerchSeqNum, TerminalID, LocalTime).FirstOrDefault();

            if (Res.ResponseCode == "A")
            {
                Results.When         = DateTime.Now;
                Results.ResponseCode = Res.ResponseCode[0];
                Results.ErrorCode    = (string)Res.ErrorCode;
                Results.Summary      = new DailySalesInformation();
                DailyReportToWeb(Res, Results.Summary, LocalTime);


                // now get the details

                Merchant Merch = GiftEntity.Merchants.FirstOrDefault(d => d.MerchantID == MerchantID);

                var LastRun = (from h in GiftEntity.Histories
                               where h.WhichMerchantGUID == Merch.MerchantGUID &&
                               h.TransType == "CLOS"
                               orderby h.ID descending
                               select h.ID).FirstOrDefault();
                //if (LastRun == null)
                //    LastRun = 0;

                var DailyHistories = from h in GiftEntity.Histories
                                     where h.WhichMerchantGUID == Merch.MerchantGUID &&
                                     h.ID > LastRun &&
                                     h.ErrorCode == "APP  " &&
                                     h.TransType != "DYRP" && // keep the daily report out of this
                                     h.TransType != "SHIP"    // keep the card shipments out of the report
                                     orderby h.ID
                                                              //c.Card2 == WhichCard.ID
                                     select new
                {
                    ID               = h.ID,
                    CardGUID         = h.CardGUID,
                    TransType        = h.TransType,
                    When             = h.WhenHappened,
                    LocalTime        = h.LocalTime,
                    Amount           = h.Amount,
                    PointsGranted    = 0,
                    MerchWhere       = h.WhichMerchantGUID,
                    Clrk             = h.Clerk,
                    Text             = h.TransactionText,
                    CardGUID2        = h.CardGUID2,
                    CouponUsed       = 0,
                    CouponIssued     = 0,
                    PrizeAwardedGUID = Guid.NewGuid(),
                    InvoiceNumber    = h.InvoiceNumber
                };
                foreach (var his in DailyHistories)
                {
                    CardHistory nHistory = new CardHistory();
                    nHistory.ID         = his.ID;
                    nHistory.CardNumber = (from c in GiftEntity.Cards
                                           where c.CardGUID == his.CardGUID
                                           select c.CardNumLast4).FirstOrDefault().ToString();
                    nHistory.Amount     = his.Amount;
                    nHistory.Clerk      = his.Clrk;
                    nHistory.MerchWhere = (from m in GiftEntity.Merchants
                                           where m.MerchantGUID == his.MerchWhere
                                           select m.MerchantName).FirstOrDefault();
                    nHistory.TransType   = his.TransType;
                    nHistory.Transaction = ConvertTransactionType(his.TransType);
                    nHistory.When        = his.When;
                    if (his.LocalTime.HasValue)
                    {
                        nHistory.LocalTime = his.LocalTime.Value;
                    }
                    nHistory.Text          = his.Text;
                    nHistory.PointsGranted = his.PointsGranted;
                    if (his.CardGUID2 != null)
                    {
                        nHistory.Card2 = GiftEntity.Cards
                                         .FirstOrDefault(c => c.CardGUID == his.CardGUID2).CardNumLast4;
                    }
                    nHistory.InvoiceNumber = his.InvoiceNumber;

                    Results.DetailItems.Add(nHistory);
                }
            }
            else
            {
                Results.ResponseCode = Res.ResponseCode[0];
                Results.ErrorCode    = (string)Res.ErrorCode;
            }
            return(Results);
        }