69 lines
2.1 KiB
C#
69 lines
2.1 KiB
C#
using System.Collections.Generic;
|
|
using System.Windows;
|
|
using DI_Electrical.Event;
|
|
using Prism.Events;
|
|
using Prism.Ioc;
|
|
using SWS.Commons;
|
|
using SWS.Model;
|
|
using SWS.Service;
|
|
using Unity;
|
|
|
|
namespace DI_Electrical.ViewModels
|
|
{
|
|
public class ProjectViewModel : DialogBase
|
|
{
|
|
private List<ec_project> projects;
|
|
public List<ec_project> Projects
|
|
{
|
|
get { return this.projects; }
|
|
set
|
|
{
|
|
this.projects = value;
|
|
RaisePropertyChanged(nameof(Projects));
|
|
|
|
}
|
|
}
|
|
private ec_project _select;
|
|
|
|
public ec_project select
|
|
{
|
|
get { return _select; }
|
|
set { _select = value; RaisePropertyChanged(nameof(select)); }
|
|
}
|
|
ProjectService _Service;
|
|
ConfigService _configService;
|
|
IEventAggregator _eventAggregator;
|
|
public ProjectViewModel() : base()
|
|
{
|
|
title = "项目选择";
|
|
|
|
_Service = GlobalObject.container.Resolve<ProjectService>();
|
|
_configService = GlobalObject.container.Resolve<ConfigService>();
|
|
_eventAggregator= GlobalObject.container.Resolve<IEventAggregator>();
|
|
}
|
|
public async override void onWindow_loaded(object para)
|
|
{
|
|
Projects = (await _Service.GetProjects(1, 200)).Rows;
|
|
base.onWindow_loaded(para);
|
|
}
|
|
public override async void ExecuteOKCommandAsync(object para)
|
|
{
|
|
if (select == null)
|
|
{
|
|
MessageBox.Show("请选择一个项目。");
|
|
return;
|
|
}
|
|
_configService.Save(nameof(ConfigIni.ProjectID), select.ProjectId);
|
|
GlobalObject.curProject = select;
|
|
|
|
IsBusy = true;
|
|
BusyContent = "项目加载中...";
|
|
var userName = _configService.Read(nameof(ConfigIni.UserName));
|
|
var o = await _Service.InitProjInfo(GlobalObject.curProject.ProjectId, userName);
|
|
IsBusy = false;
|
|
_eventAggregator.GetEvent<loginEvent>().Publish(o);
|
|
CloseWindowAction?.Invoke();
|
|
}
|
|
}
|
|
}
|