浏览代码

Начал делать страницу с оплатой..
Осталось совсем чуть чуть

Rhomios 2 年之前
父节点
当前提交
27073faef1

二进制
.vs/MyMoviesWPF/DesignTimeBuild/.dtbcache.v2


二进制
.vs/MyMoviesWPF/v17/.suo


+ 0 - 6
MyMoviesWPF/MVVM/Models/ActorList.cs

@@ -5,16 +5,10 @@ namespace MyMoviesWPF
 {
     public partial class ActorList
     {
-        public ActorList()
-        {
-            //Movies = new HashSet<Movie>();
-        }
-
         public int IdactorList { get; set; }
         public int Idactor { get; set; }
         public int ListNum { get; set; }
 
         public virtual Actor IdactorNavigation { get; set; } = null!;
-        //public virtual ICollection<Movie> Movies { get; set; }
     }
 }

+ 3 - 7
MyMoviesWPF/MVVM/Models/Movie.cs

@@ -8,10 +8,7 @@ namespace MyMoviesWPF
         public Movie()
         {
             Catalogs = new HashSet<Catalog>();
-        }
-        public Movie(Microsoft.EntityFrameworkCore.Query.IIncludableQueryable<Movie, string> includableQueryable)
-        {
-            Catalogs = new HashSet<Catalog>();
+            Orders = new HashSet<Order>();
         }
 
         public int Idmovie { get; set; }
@@ -22,13 +19,12 @@ namespace MyMoviesWPF
         public int? IdactorList { get; set; }
         public string? Description { get; set; }
         public decimal Price { get; set; }
-        public int? Idorder { get; set; }
         public string? Trailer { get; set; }
         public string? Image { get; set; }
+        public string? Full { get; set; }
 
-        //public virtual ActorList? IdactorListNavigation { get; set; }
         public virtual Genre? IdgenreNavigation { get; set; }
-        public virtual Order? IdorderNavigation { get; set; }
         public virtual ICollection<Catalog> Catalogs { get; set; }
+        public virtual ICollection<Order> Orders { get; set; }
     }
 }

+ 18 - 16
MyMoviesWPF/MVVM/Models/MyMoviesDBContext.cs

@@ -56,6 +56,8 @@ namespace MyMoviesWPF.Models
 
                 entity.ToTable("ActorList");
 
+                entity.HasIndex(e => e.Idactor, "IX_ActorList_IDActor");
+
                 entity.Property(e => e.IdactorList).HasColumnName("IDActorList");
 
                 entity.Property(e => e.Idactor).HasColumnName("IDActor");
@@ -71,6 +73,8 @@ namespace MyMoviesWPF.Models
             {
                 entity.ToTable("Catalog");
 
+                entity.HasIndex(e => e.Idmovie, "IX_Catalog_IDMovie");
+
                 entity.Property(e => e.CatalogId).HasColumnName("CatalogID");
 
                 entity.Property(e => e.Idmovie).HasColumnName("IDMovie");
@@ -99,6 +103,8 @@ namespace MyMoviesWPF.Models
 
                 entity.ToTable("Movie");
 
+                entity.HasIndex(e => e.Idgenre, "IX_Movie_IDGenre");
+
                 entity.Property(e => e.Idmovie).HasColumnName("IDMovie");
 
                 entity.Property(e => e.Description).HasMaxLength(200);
@@ -107,10 +113,6 @@ namespace MyMoviesWPF.Models
 
                 entity.Property(e => e.Idgenre).HasColumnName("IDGenre");
 
-                entity.Property(e => e.Idorder).HasColumnName("IDOrder");
-
-                entity.Property(e => e.Image).HasMaxLength(255);
-
                 entity.Property(e => e.Languages).HasMaxLength(100);
 
                 entity.Property(e => e.Name).HasMaxLength(50);
@@ -119,22 +121,10 @@ namespace MyMoviesWPF.Models
 
                 entity.Property(e => e.ProductYear).HasColumnType("date");
 
-                entity.Property(e => e.Trailer).HasMaxLength(255);
-
-                //entity.HasOne(d => d.IdactorListNavigation)
-                //    .WithMany(p => p.Movies)
-                //    .HasForeignKey(d => d.IdactorList)
-                //    .HasConstraintName("FK_Movie_ActorList");
-
                 entity.HasOne(d => d.IdgenreNavigation)
                     .WithMany(p => p.Movies)
                     .HasForeignKey(d => d.Idgenre)
                     .HasConstraintName("FK_Movie_Genres1");
-
-                entity.HasOne(d => d.IdorderNavigation)
-                    .WithMany(p => p.Movies)
-                    .HasForeignKey(d => d.Idorder)
-                    .HasConstraintName("FK_Movie_Order");
             });
 
             modelBuilder.Entity<Order>(entity =>
@@ -143,10 +133,16 @@ namespace MyMoviesWPF.Models
 
                 entity.ToTable("Order");
 
+                entity.HasIndex(e => e.Idpayment, "IX_Order_IDPayment");
+
+                entity.HasIndex(e => e.Iduser, "IX_Order_IDUser");
+
                 entity.Property(e => e.Idorder).HasColumnName("IDOrder");
 
                 entity.Property(e => e.Date).HasColumnType("date");
 
+                entity.Property(e => e.Idmovie).HasColumnName("IDMovie");
+
                 entity.Property(e => e.Idpayment).HasColumnName("IDPayment");
 
                 entity.Property(e => e.Iduser).HasColumnName("IDUser");
@@ -155,6 +151,11 @@ namespace MyMoviesWPF.Models
 
                 entity.Property(e => e.Status).HasMaxLength(50);
 
+                entity.HasOne(d => d.IdmovieNavigation)
+                    .WithMany(p => p.Orders)
+                    .HasForeignKey(d => d.Idmovie)
+                    .HasConstraintName("FK_Order_Movie");
+
                 entity.HasOne(d => d.IdpaymentNavigation)
                     .WithMany(p => p.Orders)
                     .HasForeignKey(d => d.Idpayment)
@@ -214,3 +215,4 @@ namespace MyMoviesWPF.Models
         partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
     }
 }
+

+ 2 - 6
MyMoviesWPF/MVVM/Models/Order.cs

@@ -5,20 +5,16 @@ namespace MyMoviesWPF
 {
     public partial class Order
     {
-        public Order()
-        {
-            Movies = new HashSet<Movie>();
-        }
-
         public int Idorder { get; set; }
         public int Iduser { get; set; }
+        public int? Idmovie { get; set; }
         public string? Status { get; set; }
         public decimal? Price { get; set; }
         public DateTime? Date { get; set; }
         public int? Idpayment { get; set; }
 
+        public virtual Movie? IdmovieNavigation { get; set; }
         public virtual Payment? IdpaymentNavigation { get; set; }
         public virtual User IduserNavigation { get; set; } = null!;
-        public virtual ICollection<Movie> Movies { get; set; }
     }
 }

+ 24 - 0
MyMoviesWPF/MVVM/View/Pages/OrderPage.xaml

@@ -0,0 +1,24 @@
+<Page x:Class="MyMoviesWPF.MVVM.View.Pages.OrderPage"
+      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
+      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
+      xmlns:local="clr-namespace:MyMoviesWPF.MVVM.View.Pages"
+      mc:Ignorable="d" 
+      d:DesignHeight="900" d:DesignWidth="1600"
+      Title="OrderPage">
+
+    <Grid>
+        <Grid.RowDefinitions>
+            <RowDefinition Height="64*"/>
+            <RowDefinition Height="11*"/>
+        </Grid.RowDefinitions>
+
+        <Button Content="Продолжить" 
+                HorizontalAlignment="Left" VerticalAlignment="Center"
+                Grid.Row="1" Grid.Column="1" Height="75" Width="250"/>
+        <Button Content="Отмена" 
+                HorizontalAlignment="Right" VerticalAlignment="Center"
+                Grid.Row="1" Grid.Column="1" Height="75" Width="250"/>
+    </Grid>
+</Page>

+ 28 - 0
MyMoviesWPF/MVVM/View/Pages/OrderPage.xaml.cs

@@ -0,0 +1,28 @@
+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 MyMoviesWPF.MVVM.View.Pages
+{
+    /// <summary>
+    /// Логика взаимодействия для OrderPage.xaml
+    /// </summary>
+    public partial class OrderPage : Page
+    {
+        public OrderPage()
+        {
+            InitializeComponent();
+        }
+    }
+}

+ 1 - 0
MyMoviesWPF/MVVM/ViewModel/Core/Service.cs

@@ -12,6 +12,7 @@ namespace MyMoviesWPF.MVVM.ViewModel.Core
     {
         public static MyMoviesDBContext db = new MyMoviesDBContext();
 
+        public static User LoggedUser = new User();
         public static ObservableCollection<Movie> CartMoviesCollection { get; set; } = new ObservableCollection<Movie>();
         public static MainViewModel MainViewModel { get; set; }
         public static Movie movie { get; set; }

+ 6 - 35
MyMoviesWPF/MVVM/ViewModel/MainViewModel.cs

@@ -1,4 +1,6 @@
-using System.Windows.Controls;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Windows.Controls;
 using Microsoft.Toolkit.Mvvm.Input;
 using MvvmHelpers;
 using MvvmHelpers.Commands;
@@ -12,6 +14,8 @@ namespace MyMoviesWPF.MVVM.ViewModel
     {
         private string str;
 
+        ObservableCollection<User> user = new ObservableCollection<User>(Service.db.Users.ToList());
+
         private RelayCommand _openCart;
         public Page _currentPage;
         public Page CurrentPage
@@ -44,6 +48,7 @@ namespace MyMoviesWPF.MVVM.ViewModel
 
         public MainViewModel()
         {
+            Service.LoggedUser = user[0];
             UpdateCartStr();
             Service.MainViewModel = this;
             _currentPage = new CatalogPage();
@@ -84,39 +89,5 @@ namespace MyMoviesWPF.MVVM.ViewModel
             }
         }
 
-
-
-
-
-
-
-
-
-        //UserViewModel _userViewModel = new UserViewModel();
-
-        //private BaseViewModel _toolbar = new UserViewModel();
-        //private BaseViewModel _view    = new CatalogViewModel();
-
-
-        //public BaseViewModel CurrentToolbar
-        //{
-        //    get { return _toolbar; }
-        //    set
-        //    {
-        //        _toolbar = value;
-        //        OnPropertyChanged();
-        //    }
-        //}
-        //public BaseViewModel CurrentView
-        //{
-        //    get { return _view; }
-        //    set
-        //    {
-        //        _view = value;
-        //        OnPropertyChanged();
-        //    }
-        //}
-
-
     }
 }

+ 1 - 1
MyMoviesWPF/obj/Debug/net6.0-windows/MVVM/View/Pages/CartPage.g.i.cs

@@ -53,7 +53,7 @@ namespace MyMoviesWPF.MVVM.View.Pages {
                 return;
             }
             _contentLoaded = true;
-            System.Uri resourceLocater = new System.Uri("/MyMoviesWPF;component/mvvm/view/pages/cartpage.xaml", System.UriKind.Relative);
+            System.Uri resourceLocater = new System.Uri("/MyMoviesWPF;V1.0.0.0;component/mvvm/view/pages/cartpage.xaml", System.UriKind.Relative);
             
             #line 1 "..\..\..\..\..\..\MVVM\View\Pages\CartPage.xaml"
             System.Windows.Application.LoadComponent(this, resourceLocater);

+ 76 - 0
MyMoviesWPF/obj/Debug/net6.0-windows/MVVM/View/Pages/OrderPage.g.i.cs

@@ -0,0 +1,76 @@
+#pragma checksum "..\..\..\..\..\..\MVVM\View\Pages\OrderPage.xaml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "EC5FF475BB8A3DA78C64D8DDEA56614FB3111EA3"
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     Этот код создан программой.
+//     Исполняемая версия:4.0.30319.42000
+//
+//     Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
+//     повторной генерации кода.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+using MyMoviesWPF.MVVM.View.Pages;
+using System;
+using System.Diagnostics;
+using System.Windows;
+using System.Windows.Automation;
+using System.Windows.Controls;
+using System.Windows.Controls.Primitives;
+using System.Windows.Controls.Ribbon;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Ink;
+using System.Windows.Input;
+using System.Windows.Markup;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Media.Effects;
+using System.Windows.Media.Imaging;
+using System.Windows.Media.Media3D;
+using System.Windows.Media.TextFormatting;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+using System.Windows.Shell;
+
+
+namespace MyMoviesWPF.MVVM.View.Pages {
+    
+    
+    /// <summary>
+    /// OrderPage
+    /// </summary>
+    public partial class OrderPage : System.Windows.Controls.Page, System.Windows.Markup.IComponentConnector {
+        
+        private bool _contentLoaded;
+        
+        /// <summary>
+        /// InitializeComponent
+        /// </summary>
+        [System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "6.0.3.0")]
+        public void InitializeComponent() {
+            if (_contentLoaded) {
+                return;
+            }
+            _contentLoaded = true;
+            System.Uri resourceLocater = new System.Uri("/MyMoviesWPF;V1.0.0.0;component/mvvm/view/pages/orderpage.xaml", System.UriKind.Relative);
+            
+            #line 1 "..\..\..\..\..\..\MVVM\View\Pages\OrderPage.xaml"
+            System.Windows.Application.LoadComponent(this, resourceLocater);
+            
+            #line default
+            #line hidden
+        }
+        
+        [System.Diagnostics.DebuggerNonUserCodeAttribute()]
+        [System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "6.0.3.0")]
+        [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
+        [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
+        [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
+        [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
+        void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
+            this._contentLoaded = true;
+        }
+    }
+}
+

+ 3 - 3
MyMoviesWPF/obj/Debug/net6.0-windows/MyMoviesWPF_MarkupCompile.i.cache

@@ -10,11 +10,11 @@ none
 false
 TRACE;DEBUG;NET;NET6_0;NETCOREAPP
 C:\Users\Rhomaios\source\repos\MyMovies\MyMoviesWPF\App.xaml
-9595679470
+10-863432109
 
-301513085515
+311002901099
 2241283754979
-Dictionary_1.xaml;MainWindow.xaml;MVVM\View\Controls\UserView.xaml;MVVM\View\LogInControl.xaml;MVVM\View\Pages\CartPage.xaml;MVVM\View\Pages\CatalogPage.xaml;MVVM\View\Pages\MoviePage.xaml;MVVM\View\UserInit\LogInView.xaml;MVVM\View\UserInit\SignUpView.xaml;
+Dictionary_1.xaml;MainWindow.xaml;MVVM\View\Controls\UserView.xaml;MVVM\View\LogInControl.xaml;MVVM\View\Pages\CartPage.xaml;MVVM\View\Pages\CatalogPage.xaml;MVVM\View\Pages\MoviePage.xaml;MVVM\View\Pages\OrderPage.xaml;MVVM\View\UserInit\LogInView.xaml;MVVM\View\UserInit\SignUpView.xaml;
 
 False