private void ButtonAddPanel_Click(object sender, RoutedEventArgs e) { if (Validate(textBoxName) && Validate(textBoxMaxPower)) { double maxPower = 0; bool uspelo = false; uspelo = double.TryParse(textBoxMaxPower.Text, out maxPower); if (uspelo && maxPower > 0) { SolarPanelViewModel.solarPanels.Add(new SolarPanelModel(textBoxName.Text, maxPower, (SHES.sunPower * maxPower) / 100)); using (dbSHESEntities entity = new dbSHESEntities()) { SolarPanelTable spmt = new SolarPanelTable() { Name = textBoxName.Text, MaxPower = maxPower, CurrentPower = 0 }; entity.SolarPanelTables.Add(spmt); entity.SaveChanges(); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void BtnAdd_Click(object sender, RoutedEventArgs e) { if (Validate(textBoxName) && Validate(textBoxConsumption)) { double result = 0; bool uspelo = false; uspelo = double.TryParse(textBoxConsumption.Text, out result); if (uspelo && result >= 0) { ConsumerViewModel.consumers.Add(new ConsumerModel(textBoxName.Text, Double.Parse(textBoxConsumption.Text))); using (dbSHESEntities entity = new dbSHESEntities()) { ConsumerTable cmt = new ConsumerTable() { Name = textBoxName.Text, Consumption = Double.Parse(textBoxConsumption.Text), State = Enums.ConsumerEnum.OFF.ToString() }; entity.ConsumerTables.Add(cmt); entity.SaveChanges(); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
public void loadVehicles() { Vehicles = new ObservableCollection <eVehicleChargerModel>(); using (dbSHESEntities entity = new dbSHESEntities()) { List <eVehicleTable> lista = entity.eVehicleTables.ToList <eVehicleTable>(); foreach (var item in lista) { eVehicleChargerModel vehicle = new eVehicleChargerModel(item.Name, (double)item.MaxPower, (double)item.Capacity, (double)item.MaxCapacity); Vehicles.Add(vehicle); } } }
public void Execute() { ConsumerViewModel.consumers.Remove(consumerToDelete); using (dbSHESEntities entity = new dbSHESEntities()) { ConsumerTable cmt = entity.ConsumerTables.Where(x => x.Name == consumerToDelete.Name).SingleOrDefault(); if (cmt != null) { entity.ConsumerTables.Remove(cmt); entity.SaveChanges(); } }; }
public void Execute() { SolarPanelViewModel.solarPanels.Remove(panelToDelete); using (dbSHESEntities entity = new dbSHESEntities()) { SolarPanelTable spmt = entity.SolarPanelTables.Where(x => x.Name == panelToDelete.Name).SingleOrDefault(); if (spmt != null) { entity.SolarPanelTables.Remove(spmt); entity.SaveChanges(); } }; }
private void loadConsumers() { consumers = new ObservableCollection <ConsumerModel>(); using (dbSHESEntities entity = new dbSHESEntities()) { List <ConsumerTable> cons = entity.ConsumerTables.ToList <ConsumerTable>(); foreach (var c in cons) { ConsumerModel consumer = new ConsumerModel(c.Name, (double)c.Consumption); consumer.State = (ConsumerEnum)Enum.Parse(typeof(ConsumerEnum), c.State); consumers.Add(consumer); } }; }
public void loadBatteries() { Batteries = new ObservableCollection <BatteryModel>(); using (dbSHESEntities entity = new dbSHESEntities()) { List <BatteryTable> bateries = entity.BatteryTables.ToList <BatteryTable>(); foreach (var bat in bateries) { BatteryModel battery = new BatteryModel(bat.Name, (double)bat.MaxPower, (double)bat.Capacity, (double)bat.CurrentCapacity); battery.CapacityMin = (double)bat.CapacityMin; battery.State = (BatteryEnum)Enum.Parse(typeof(BatteryEnum), bat.State); Batteries.Add(battery); } }; }
public void Execute() { lock (BatteryViewModel.Batteries) { BatteryViewModel.Batteries.Remove(batteryToDelete); //program ne dodje dovde using (dbSHESEntities entity = new dbSHESEntities()) { BatteryTable bmt = entity.BatteryTables.Where(x => x.Name == batteryToDelete.Name).SingleOrDefault(); if (bmt != null) { entity.BatteryTables.Remove(bmt); entity.SaveChanges(); } }; } }
public void loadSolarPanels() { solarPanels = new ObservableCollection <SolarPanelModel>(); using (dbSHESEntities entity = new dbSHESEntities()) { List <SolarPanelTable> cons = entity.SolarPanelTables.ToList <SolarPanelTable>(); if (cons != null) { foreach (var c in cons) { SolarPanelModel consumer = new SolarPanelModel(c.Name, (double)c.MaxPower, (double)c.CurrentPower); solarPanels.Add(consumer); } } }; }
private void ButtonAdd_Click(object sender, RoutedEventArgs e) { if (Validate(textBoxName) && Validate(textBoxMaxPower) && Validate(textBoxCapacity)) { bool p = false, c = false; double pp = 0, cc = 0; p = double.TryParse(textBoxMaxPower.Text, out pp); c = double.TryParse(textBoxCapacity.Text, out cc); if (p && c && pp >= 0 && cc >= 0) { lock (BatteryViewModel.Batteries) { BatteryViewModel.Batteries.Add(new BatteryModel(textBoxName.Text, Double.Parse(textBoxMaxPower.Text), Double.Parse(textBoxCapacity.Text), 0)); using (dbSHESEntities entity = new dbSHESEntities()) { BatteryTable bmt = new BatteryTable() { Name = textBoxName.Text, MaxPower = Double.Parse(textBoxMaxPower.Text), Capacity = Double.Parse(textBoxCapacity.Text), CurrentCapacity = 0, CapacityMin = 0, State = Enums.BatteryEnum.IDLE.ToString() }; entity.BatteryTables.Add(bmt); entity.SaveChanges(); } BatteryViewModel.Refresh(); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBox.Show("Incorrect input", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void loadCharts() { Chart = new Dictionary <DateTime, ChartModel>(); using (dbSHESEntities entity = new dbSHESEntities()) { List <ChartTable> charts = entity.ChartTables.ToList <ChartTable>(); foreach (var c in charts) { ChartModel ch = new ChartModel() { SolarPanel = (double)c.SolarPanel, BatteryConsumption = (double)c.BatteryConsumption, BatteryProduction = (double)c.BaterryProduction, ExchangePositive = (double)c.ExchangePositive, ExchangeNegative = (double)c.ExchangeNegative, Consumer = (double)c.Consumer, Price = (double)c.Price }; Chart.Add(new DateTime(2020, 6, int.Parse(c.Date)), ch); } }; }
public void CalculateChartProduction() { int date = DateTime.Now.Date.Day; double panels = 0; double product = 0; double cons = 0; double batteryPositive = 0; double batteryNegative = 0; double exhangePositive = 0; double exhangeNegative = 0; double consumers = 0; double price = 0; double temp = 0; double cnt = 0; new Thread(() => { while (true) { if (temp == 60) { temp = 0; cnt++; } else { temp += ClockModel.Time.Minute; } if (cnt == 23) { cnt = 0; temp = 0; using (dbSHESEntities entity = new dbSHESEntities()) { ChartTable ct = new ChartTable() { Date = date.ToString(), SolarPanel = price, BaterryProduction = batteryPositive, BatteryConsumption = batteryNegative, ExchangePositive = exhangePositive, ExchangeNegative = exhangeNegative, Consumer = consumers, Price = price }; entity.ChartTables.Add(ct); entity.SaveChanges(); } date++; } panels += SolarPanelViewModel.SolarPanelProduction(); product = SolarPanelViewModel.SolarPanelProduction() + BatteryViewModel.BatteryProduction(); cons = ConsumerViewModel.ConsumerConsumption() + BatteryViewModel.BatteryConsumption() + eVehicleChargerViewModel.VehicleConsumption(); exhangePositive += product; exhangeNegative += cons; batteryPositive += BatteryViewModel.BatteryProduction(); batteryNegative += BatteryViewModel.BatteryConsumption(); consumers += ConsumerViewModel.ConsumerConsumption(); price = price + (product - cons) * 0.2; Thread.Sleep(1000); } }).Start(); }