123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- using AutoServiceVika.Entites;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Data;
- using System.Windows.Documents;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Imaging;
- using System.Windows.Navigation;
- using System.Windows.Shapes;
- namespace AutoServiceVika.Pages
- {
- /// <summary>
- /// Логика взаимодействия для ServicePage.xaml
- /// </summary>
- public partial class ServicePage : Page
- {
- public ServicePage()
- {
- InitializeComponent();
- if(App.CurrentUser.Role_ID == 1)
- {
- btnAddNewService.Visibility = Visibility.Visible;
- } else
- {
- btnAddNewService.Visibility = Visibility.Collapsed;
- }
-
- ComboDiscount.SelectedIndex = 0;
- ComboSortBy.SelectedIndex = 0;
- UpdateService();
- }
- private void UpdateService()
- {
- var services = App.context.Service.ToList();
- if (ComboSortBy.SelectedIndex == 0)
- {
- services = services.OrderBy(i => i.CostWithDiscount).ToList();
- }
- else
- {
- services = services.OrderByDescending(i => i.CostWithDiscount).ToList();
- }
- //По скидке
- switch (ComboDiscount.SelectedIndex)
- {
- case 1:
- services = services.Where(i => i.Discount >= 0 && i.Discount < 0.05).ToList();
- break;
- case 2:
- services = services.Where(i => i.Discount >= 0.05 && i.Discount < 0.15).ToList();
- break;
- case 3:
- services = services.Where(i => i.Discount >= 0.15 && i.Discount < 0.30).ToList();
- break;
- case 4:
- services = services.Where(i => i.Discount >= 0.30 && i.Discount < 0.70).ToList();
- break;
- case 5:
- services = services.Where(i => i.Discount >= 0.70 && i.Discount <= 1).ToList();
- break;
- }
- //По тексту
- services = services.Where(i => i.Title.ToLower().Contains(tbSearch.Text.ToLower())).ToList();
- lvSevice.ItemsSource = services;
- }
- private void ComboSortBy_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- UpdateService();
- }
- private void ComboDiscount_SelectionChanged(object sender, SelectionChangedEventArgs e)
- {
- UpdateService();
- }
- private void tbSearch_TextChanged(object sender, TextChangedEventArgs e)
- {
- UpdateService();
- }
- private void Page_Loaded(object sender, RoutedEventArgs e)
- {
- UpdateService();
- }
- private void btnAddNewService_Click(object sender, RoutedEventArgs e)
- {
- App.MainFrame.Navigate(new AddEditPage());
- }
- private void btnEdit_Click(object sender, RoutedEventArgs e)
- {
- var currentSerivce = (sender as Button).DataContext as Service;
- App.MainFrame.Navigate(new AddEditPage(currentSerivce));
- }
- private void btnRemove_Click(object sender, RoutedEventArgs e)
- {
- var currentService = (sender as Button).DataContext as Service;
- if (MessageBox.Show($"Вы уверены, что хотите удалить услугу {currentService.Title}?", "Внимание", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
- {
- App.context.Service.Remove(currentService);
- App.context.SaveChanges();
- UpdateService();
- }
- }
- }
- }
|