public void UpdateFlexibilityFromUIToCE(double valueKW, FlexibilityIncDec incOrDec, long gid)
        {
            // POZOVI METODU ZA RACUNANJE FLEXIBILITY
            DataToUI data = new DataToUI();

            data.Flexibility       = valueKW;
            data.Gid               = gid;
            data.FlexibilityIncDec = incOrDec;
            CalculationEngineCache.Instance.CalculateNewFlexibility(data);
        }
Example #2
0
        public void Command(double valueKW, FlexibilityIncDec incdec, long gid)
        {
            //ProxyCE.UpdateThroughUI(valueKW, incOrDec);
            string text = "";

            try
            {
                bool canManualCommand = false;

                if (incdec.Equals(FlexibilityIncDec.Increase))
                {
                    if (valueKW > 0)
                    {
                        if (valueKW > Inc)
                        {
                            if (Inc == 0)
                            {
                                text = "It's impossible to increase flexibility any more.";
                            }
                            else
                            {
                                text = "Please enter value between\n0 and " + String.Format("{0:0.00}", Inc);
                            }
                            canManualCommand = false;
                        }
                        else
                        {
                            canManualCommand = true;
                        }
                    }
                    else
                    {
                        text             = "Please enter positive value.";
                        canManualCommand = false;
                    }
                }
                else
                {
                    if (valueKW < 0)
                    {
                        if (-1 * valueKW > Dec)
                        {
                            if (Dec == 0)
                            {
                                text = "It's impossible to decrease flexibility any more.";
                            }
                            else
                            {
                                text = "Please enter value between\n0 and " + String.Format("{0:0.00}", Dec);
                            }
                            canManualCommand = false;
                        }
                        else
                        {
                            canManualCommand = true;
                        }
                    }
                    else
                    {
                        text             = "Please enter positive value.";
                        canManualCommand = false;
                    }
                }


                if (canManualCommand)
                {
                    ProxyCE.UpdateFlexibilityFromUIToCE(valueKW, incdec, gid);

                    Event        e  = new Event("Manual optimization was performed. ", Enums.Component.CalculationEngine, DateTime.Now);
                    EventsLogger el = new EventsLogger();

                    el.WriteToFile(e);
                }
                else
                {
                    PopUpWindow popUpWindow = new PopUpWindow(text);
                    popUpWindow.ShowDialog();
                }
            }
            catch (Exception e)
            {
                MessageBox.Show("ManualCommandingViewModel 34: " + e.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }