Beispiel #1
0
        private void UpdateTender(decimal amountEntered)
        {
            if (SelectedTenderList.Any(x => x.TenderCode == SelectedTender.TenderCode))
            {
                SelectedTenderList.First(x => x.TenderCode == SelectedTender.TenderCode).AmountEntered =
                    amountEntered.ToString(CultureInfo.InvariantCulture);
            }
            else
            {
                SelectedTender.AmountEntered = amountEntered.ToString(CultureInfo.InvariantCulture);
                SelectedTenderList.Add(SelectedTender);
            }

            var tenders = new List <Tender>();

            foreach (var tender in SelectedTenderList)
            {
                tenders.Add(new Tender
                {
                    AmountEntered = tender.AmountEntered,
                    TenderCode    = tender.TenderCode
                });
            }

            var updatedTenders = new UpdateTenderPost
            {
                Tenders    = tenders,
                DropReason = _reason
            };

            PerformAction(async() =>
            {
                try
                {
                    var response       = await _cashBussinessLogic.UpdateTender(updatedTenders);
                    SelectedTenderList = MapTendersWithUITender(response.Tenders);
                    TenderTotalAmount  = response.TenderedAmount;
                }
                catch (ApiDataException)
                {
                    SelectedTenderList.Remove(SelectedTender);
                    throw;
                }
                finally
                {
                    IsSelectedTenderEmpty = SelectedTenderList.Count > 0;
                    NavigateService.Instance.SecondFrameBackNavigation();
                }
            });
        }
Beispiel #2
0
        private void OpenNumberPadForTenderItem(dynamic s)
        {
            SelectedTender = SelectedTenderList.FirstOrDefault(x => x.TenderCode == s);
            if (SelectedTender == null)
            {
                SelectedTender = TenderList.FirstOrDefault(x => x.TenderCode == s);
            }
            NavigateService.Instance.NavigateToTenderNumberPad();

            var amountEntered = 0M;

            decimal.TryParse(SelectedTender?.AmountEntered, NumberStyles.Any, CultureInfo.InvariantCulture, out amountEntered);
            MessengerInstance.Send(true, "ResetNumberPadVM");
            MessengerInstance.Send(amountEntered.ToString(CultureInfo.InvariantCulture), "SetQuantiyUsingNumberPad");
        }