Exemple #1
0
 public void OnInputChanged(InputChangedEventArgs dateChangedEventArgs)
 {
     LoadAsyncBookingsBeetweenDate(dateChangedEventArgs.EmployeeId, dateChangedEventArgs.From, dateChangedEventArgs.Till);
     LoadBookingsByDay(dateChangedEventArgs.EmployeeId, dateChangedEventArgs.From, dateChangedEventArgs.Till);
     calculateHours();
     calculateTargetHours(dateChangedEventArgs);
 }
Exemple #2
0
        private void calculateTargetHours(InputChangedEventArgs dateChangedEventArgs)
        {
            DateChecker dc = new DateChecker();

            TargetHours = TimeSpan.Zero;
            TimeSpan duration = dateChangedEventArgs.Till - dateChangedEventArgs.From;

            foreach (var day in EachDay(dateChangedEventArgs.From, dateChangedEventArgs.Till))
            {
                if (dc.IsWorkday(day))
                {
                    TargetHours = TargetHours.Add(TimeSpan.FromHours(8));
                }
            }
        }
Exemple #3
0
        public void ProcessInput(InputChangedEventArgs e)
        {
            if (_state == State.Idle)
            {
                _state = State.Processing;

                _calcResultsVM.ProfitPercentage = e.ProfitPercentage;
                _calcResultsVM.IsTextToggled    = e.ProfitPercentage == null || e.ProfitPercentage == 0 ? false : true;

                if (_calcResultsVM.IsTextToggled)
                {
                    _calcResultsVM.DisplayText = string.Format(CalculatorStrings.FinalShareReturnText, e.ProfitPercentage);
                }
                else
                {
                    _calcResultsVM.DisplayText = CalculatorStrings.BreakEvenText;
                }

                double?proceeds        = CalculateProceeds(e.FinalSharePrice, e.Allotment);
                double?cost            = CalculateCost(e.InitialSharePrice, e.FinalSharePrice, e.TakerFee, e.MakerFee, e.Allotment, e.TakerFeePercentageChecked, e.MakerFeePercentageChecked);
                double?netProfit       = CalculateNetProfit(proceeds, cost, e.InitialSharePrice, e.Allotment);
                double?roi             = CalculateRoI(netProfit, cost, e.InitialSharePrice, e.Allotment);
                double?finalSharePrice = CalculateDisplayedFinalSharePrice(e.InitialSharePrice, e.FinalSharePrice, e.ProfitPercentage, e.TakerFee, e.MakerFee, e.Allotment, e.TakerFeePercentageChecked, e.MakerFeePercentageChecked);

                _calcResultsVM.Proceeds  = proceeds;
                _calcResultsVM.Cost      = cost;
                _calcResultsVM.NetProfit = netProfit;

                if (roi != null)
                {
                    _calcResultsVM.RoI = Math.Round((double)roi, 2);
                }
                else
                {
                    _calcResultsVM.RoI = roi;
                }

                if (finalSharePrice != null)
                {
                    _calcResultsVM.FinalSharePrice = finalSharePrice;
                }

                _state = State.Idle;
            }
        }
Exemple #4
0
        void _ioCard_OnReceiveData(object sender, InputChangedEventArgs args)
        {
            if ((args.devicest.swstatus & 3) != 2)
            {
                return;
            }

            if (_magazinePresent == MagazinePresenceEnum.Unknown)
            {
                _magazinePresent = args.devicest.input_2 ? MagazinePresenceEnum.MagazinePresent : MagazinePresenceEnum.MagazineNotPresent;
            }
            else if (_magazinePresent == MagazinePresenceEnum.MagazinePresent && !args.devicest.input_2)
            {
                // Magazine Ejected
                _magazinePresent = MagazinePresenceEnum.MagazineNotPresent;
                this.OnMagazineUnloaded();
            }
            else if (_magazinePresent == MagazinePresenceEnum.MagazineNotPresent && args.devicest.input_2)
            {
                // Magazine Loaded
                _magazinePresent = MagazinePresenceEnum.MagazinePresent;
            }
        }
Exemple #5
0
        void _ioCard_OnReceiveData(object sender, InputChangedEventArgs args)
        {
            if ((args.devicest.swstatus & 3) != 2)
            {
                return;
            }

            if (_unloaderPresent == UnloaderPresenceEnum.Unknown)
            {
                _unloaderPresent = args.devicest.input_1 ? UnloaderPresenceEnum.UnloaderEmpty : UnloaderPresenceEnum.UnloaderNotEmpty;
            }
            else if (_unloaderPresent == UnloaderPresenceEnum.UnloaderNotEmpty && args.devicest.input_1)
            {
                // UnLoad Buffer Empty
                _unloaderPresent = UnloaderPresenceEnum.UnloaderEmpty;
                this.OnUnloadBufferEmpty();
            }
            else if (_unloaderPresent == UnloaderPresenceEnum.UnloaderEmpty && !args.devicest.input_1)
            {
                // UnLoad buffer Not Empty
                _unloaderPresent = UnloaderPresenceEnum.UnloaderNotEmpty;
                this.OnUnloadBufferNotEmpty();
            }
        }
        void _ioCard_OnReceiveData(object sender, InputChangedEventArgs args)
        {
            if ((args.devicest.swstatus & 3) != 2)
            {
                return;
            }

            if (_cassettePresent == CassettePresenceEnum.Unknown)
            {
                _cassettePresent = args.devicest.input_3 ? CassettePresenceEnum.CassetteAbsent : CassettePresenceEnum.CassettePresent;
            }
            else if (_cassettePresent == CassettePresenceEnum.CassettePresent && args.devicest.input_3)
            {
                // Cassette Empty
                _cassettePresent = CassettePresenceEnum.CassetteAbsent;
                this.OnCassetteAbsent();
            }
            else if (_cassettePresent == CassettePresenceEnum.CassetteAbsent && !args.devicest.input_3)
            {
                // Cassette Not Empty
                _cassettePresent = CassettePresenceEnum.CassettePresent;
                this.OnCassettePresent();
            }
        }
Exemple #7
0
 private void CalcInputVM_InputChanged(object sender, InputChangedEventArgs e)
 {
     Processor.ProcessInput(e);
 }