123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- using Newtonsoft.Json.Converters;
- using Newtonsoft.Json;
- using System.Collections.ObjectModel;
- using System.ComponentModel;
- using System.Runtime.Serialization;
- using Venus_Core;
- namespace Venus_MainPages.Roles
- {
- [DataContract]
- public class Menu : INotifyPropertyChanged
- {
- public Menu(string firstmenu, string secondmenu)
- {
- FirstMenu = firstmenu;
- SecondMenu = secondmenu;
- }
- private string m_firstMenu;
- [DataMember]
- public string FirstMenu
- {
- get { return m_firstMenu; }
- set
- {
- m_firstMenu = value;
- OnPropertyChanged("FirstMenu");
- }
- }
- private string m_SecondMenu;
- [DataMember]
- public string SecondMenu
- {
- get { return m_SecondMenu; }
- set
- {
- m_SecondMenu = value;
- OnPropertyChanged("SecondMenu");
- }
- }
- private MenuPermission m_Permission;
- [DataMember]
- [JsonConverter(typeof(StringEnumConverter))]
- public MenuPermission Permission
- {
- get { return m_Permission; }
- set
- {
- m_Permission = value;
- OnPropertyChanged("Permission");
- }
- }
- private string m_View;
- [DataMember]
- public string View
- {
- get { return m_View; }
- set
- {
- m_View = value;
- OnPropertyChanged("View");
- }
- }
- #region INotifyPropertyChanged
- public event PropertyChangedEventHandler PropertyChanged;
- private void OnPropertyChanged(string propertyName)
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
- }
- #endregion INotifyPropertyChanged
- }
- public enum MenuPermission
- {
- None,
- ReadOnly,
- ReadWrite
- }
- [DataContract]
- public class RoleDefine : INotifyPropertyChanged
- {
- private string m_RoleName;
- [DataMember]
- public string RoleName
- {
- get { return m_RoleName; }
- set
- {
- m_RoleName = value;
- OnPropertyChanged("RoleName");
- }
- }
- [DataMember]
- private bool m_IsLocked;
- public bool IsLocked
- {
- get { return m_IsLocked; }
- set
- {
- m_IsLocked = value;
- OnPropertyChanged("IsLocked");
- }
- }
- [DataMember]
- private int m_LockTime;
- public int LockTime
- {
- get { return m_LockTime; }
- set
- {
- if (value < 20)
- {
- m_LockTime = 20;
- }
- else
- {
- m_LockTime = value;
- }
- OnPropertyChanged("LockTime");
- }
- }
- [DataMember]
- public ObservableCollection<Menu> Menus { get; set; }
- public RoleDefine(string roleName, ObservableCollection<Menu> menus)
- {
- RoleName = roleName;
- Menus = menus;
- }
- #region INotifyPropertyChanged
- public event PropertyChangedEventHandler PropertyChanged;
- private void OnPropertyChanged(string propertyName)
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
- }
- #endregion INotifyPropertyChanged
- }
- [DataContract]
- public class User : INotifyPropertyChanged
- {
- public User(string name, string password, Role role)
- {
- Name = name;
- Password = password;
- Role = role;
- }
- private string m_Name;
- [DataMember]
- public string Name
- {
- get { return m_Name; }
- set
- {
- m_Name = value;
- OnPropertyChanged("Name");
- }
- }
- public string m_Password;
- [DataMember]
- public string Password
- {
- get { return m_Password; }
- set
- {
- m_Password = value;
- OnPropertyChanged("Password");
- }
- }
- public Role m_Role;
- [DataMember]
- [JsonConverter(typeof(StringEnumConverter))]
- public Role Role
- {
- get { return m_Role; }
- set
- {
- m_Role = value;
- OnPropertyChanged("Role");
- }
- }
- #region INotifyPropertyChanged
- public event PropertyChangedEventHandler PropertyChanged;
- private void OnPropertyChanged(string propertyName)
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
- }
- #endregion INotifyPropertyChanged
- }
- }
|