Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using Location.Model;
- using System.Windows.Controls;
- namespace Location.ViewModel
- {
- public class LocationViewModel: INotifyPropertyChanged
- {
- public LocationViewModel()
- {
- SetEfficiency();
- }
- private DateTime _mDate = DateTime.Now;
- public DateTime MDate
- {
- get { return _mDate; }
- set
- {
- _mDate = value;
- OnPropertyChanged("MDate");
- SetEfficiency();
- }
- }
- decimal efficiency;
- public decimal Efficiency
- {
- get { return efficiency; }
- set
- {
- efficiency = value;
- OnPropertyChanged("Efficiency");
- }
- }
- DailyEntities db = new DailyEntities();
- private void SetEfficiency()
- {
- var month;
- int.TryParse(MDate.ToString("MM"), out month);
- Efficiency = Convert.ToDecimal(db.LocationKPI.Where(a => a.sMonth == month).Select(a => a.Efficiency).FirstOrDefault());
- }
- public event PropertyChangedEventHandler PropertyChanged;
- protected virtual void OnPropertyChanged(string propertyName = null)
- {
- if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
- }
- }
- }
- public MainWindow()
- {
- InitializeComponent();
- DataContext = new LocationViewModel();
- string connectionString = "datasource=xx.xx.xxx.xxx;port=xxx;username=xxxxx;password=xxxxx";
- string sMonth = DateTime.Now.ToString("MM");
- string sYear = DateTime.Now.ToString("yyyy");
- MySqlConnection connection = new MySqlConnection(connectionString);
- MySqlCommand cmd = new MySqlCommand("Select * from MyTable where MONTH(Date) = @sMonth AND YEAR(Date) = @sYear", connection);
- try
- {
- connection.Open();
- cmd.Parameters.Add(new MySqlParameter("sMonth", sMonth));
- cmd.Parameters.Add(new MySqlParameter("sYear", sYear));
- DataTable dt = new DataTable();
- dt.Load(cmd.ExecuteReader());
- dtGrid.DataContext = dt;
- connection.Close();
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- private void vDatePick_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
- {
- string connectionString = "datasource=xx.xx.xxx.xxx;port=xxx;username=xxxxx;password=xxxxx";
- string sMonth = DateTime.Parse(vDatePick.Text).ToString("MM");
- string sYear = DateTime.Parse(vDatePick.Text).ToString("yyyy");
- string vDate = DateTime.Parse(vDatePick.Text).ToString("yyyy-MM-dd");
- MySqlConnection connection = new MySqlConnection(connectionString);
- MySqlCommand cmd = new MySqlCommand("Select * from MyTable where MONTH(Date) = @sMonth AND YEAR(Date) = @sYear", connection);
- try
- {
- connection.Open();
- cmd.Parameters.Add(new MySqlParameter("sMonth", sMonth));
- cmd.Parameters.Add(new MySqlParameter("sYear", sYear));
- DataTable dt = new DataTable();
- dt.Load(cmd.ExecuteReader());
- connection.Close();
- dtGrid.DataContext = dt;
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.Message);
- }
- }
- private void dtGrid_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
- {
- DataRowView row_selected = dtGrid.SelectedItem as DataRowView;
- if (row_selected == null) return;
- vDatePick.Text = row_selected["Date"].ToString();
- txtHours.Text = row_selected["Hours"].ToString();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement