using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using log4net; using System.Windows; using Admin.Core.Common; using Admin.Core.IService; using Admin.Core.Service; using Microsoft.Extensions.DependencyInjection; using System.Collections.ObjectModel; using Admin.Core.Model.Model_New; using StackExchange.Profiling.Internal; using System; using System.Text.Json; using System.Windows.Input; using MaterialDesignThemes.Wpf; using NPOI.Util.Collections; using Aucma.Core.OldBoxFoam.Config; using Aucma.Core.OldBoxFoam.Models; using Aucma.Core.OldBoxFoam.Views; namespace Aucma.Core.OldBoxFoam.ViewModels { public partial class LoginPageViewModel : ObservableObject { private static readonly log4net.ILog log = LogManager.GetLogger(typeof(LoginPageViewModel)); protected readonly IBaseTeamMembersServices _baseTeamMembersServices; private AppConfig appConfig = AppConfig.Instance; public LoginPageViewModel() { _baseTeamMembersServices = App.ServiceProvider.GetService(); AddTeamData(); } #region 登录 /// /// 登录 /// /// 选择的班组信息 /// 用户名 /// 密码 public void Login(BaseTeamMembers team, string userName, string passWord,object parameter) { try { //获取Token string url = $"http://10.100.72.10:8080/login"; var content = new { username = userName, password = passWord }; var loginResult = HttpHelper.Post(url, content.ToJson());//发送用户名密码给API Result result = JsonSerializer.Deserialize(loginResult); if (result == null) { MessageBox.Show("登录失败!", "系统提醒"); return; } if (result.code == 200) { // 存储账号信息 appConfig.TeamCode = team.TeamCode; appConfig.TeamName = team.TeamName; appConfig.Account = userName; //跳转 var window = parameter as LoginPageView; if (window == null) return; window.Hide(); MainWindow indexPage = new MainWindow(); indexPage.Show(); window.Close(); } else { MessageBox.Show($"登录失败!{result.msg}", "系统提醒"); return; } } catch (Exception ex) { log.Error($"登录异常:{ex.Message}"); } } #endregion #region 关闭当前界面 /// /// 关闭当前界面 /// /// public void CloseWindow(object parameter) { var window = parameter as Window; if (window == null) return; window.Close(); } #endregion #region 班组数据 /// /// 班组数据 /// private ObservableCollection _teamMembersList = new ObservableCollection(); public ObservableCollection TeamMembersList { get { return this._teamMembersList; } set { SetProperty(ref _teamMembersList, value); } } #endregion #region 班组添加到集合中 public void AddTeamData() { var baseTeamMembersList = _baseTeamMembersServices.QueryAsync(d => d.ProductLineCode == appConfig.ProductlineCode && d.TeamCode.Contains(appConfig.TeamConfig)).Result; if (baseTeamMembersList == null) return; foreach (var item in baseTeamMembersList) { TeamMembersList.Add(item); } } #endregion } }