You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
185 lines
6.0 KiB
185 lines
6.0 KiB
using Container.Model;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using Microsoft.Practices.Prism.ViewModel;
|
|
using Microsoft.Practices.Prism.Commands;
|
|
using System.ComponentModel;
|
|
using System.Windows;
|
|
using Container.Services;
|
|
|
|
namespace Container.Viewmodel
|
|
{
|
|
public class BuildingViewModel : NotificationObject
|
|
{
|
|
//public event PropertyChangedEventHandler PropertyChanged;
|
|
///
|
|
/// 当ComboBox选中项更改时发生
|
|
///
|
|
//public BuildingModel BuildingModel { set; get; }
|
|
|
|
private string Code;
|
|
|
|
public string code
|
|
{
|
|
get { return Code; }
|
|
set
|
|
{
|
|
Code = value;
|
|
this.RaisePropertyChanged("Code");
|
|
}
|
|
}
|
|
|
|
private string NAME;
|
|
|
|
public string name
|
|
{
|
|
get { return NAME; }
|
|
set
|
|
{
|
|
NAME = value;
|
|
this.RaisePropertyChanged("ID");
|
|
}
|
|
}
|
|
private bool isSelected;
|
|
|
|
public bool IsSelected
|
|
{
|
|
get { return isSelected; }
|
|
set
|
|
{
|
|
isSelected = value;
|
|
this.RaisePropertyChanged("isSelected");
|
|
}
|
|
}
|
|
|
|
//private BuildingModel _selectLocation;
|
|
//public BuildingModel SelectLocation
|
|
//{
|
|
// get
|
|
// {
|
|
// return this._selectLocation;
|
|
// }
|
|
// set
|
|
// {
|
|
// this._selectLocation = value;
|
|
// if (this.PropertyChanged != null)
|
|
// PropertyChanged(this, new PropertyChangedEventArgs("SelectLocation"));
|
|
// }
|
|
//}
|
|
|
|
//private ObservableCollection _locationRoad = null;
|
|
}
|
|
|
|
public class BuildingOperate : NotificationObject
|
|
{
|
|
public DelegateCommand DetailPlaceOrderCom { get; set; }
|
|
public DelegateCommand SelectMenuItemCom { get; set; }
|
|
private List<BuildingViewModel> buildingMenu;
|
|
|
|
public List<BuildingViewModel> BuildingMenu
|
|
{
|
|
get { return buildingMenu; }
|
|
set
|
|
{
|
|
buildingMenu = value;
|
|
this.RaisePropertyChanged("buildingMenu");
|
|
}
|
|
}
|
|
private string buildingid;
|
|
|
|
public string BuildingID
|
|
{
|
|
get { return buildingid; }
|
|
set
|
|
{
|
|
buildingid = value;
|
|
this.RaisePropertyChanged("buildingid");
|
|
}
|
|
}
|
|
|
|
public BuildingOperate(int type)
|
|
{
|
|
LoadBuilding(type);
|
|
}
|
|
public void LoadBuilding(int type)
|
|
{
|
|
App app = ((App)Application.Current);
|
|
if (type == 1)
|
|
{
|
|
this.BuildingMenu = new List<BuildingViewModel>();
|
|
for (int i = 0; i < app.Buildinginfo.Count; i++)
|
|
{
|
|
BuildingViewModel Buildinginfo = new BuildingViewModel();
|
|
Building BuildingsInfo = (Building)app.Buildinginfo[i];
|
|
Buildinginfo.code = BuildingsInfo.code;
|
|
Buildinginfo.name = BuildingsInfo.buildingName;
|
|
Buildinginfo.IsSelected = false;
|
|
BuildingMenu.Add(Buildinginfo);
|
|
//app.Buildings.FindAll(p => p.BNAME == "");
|
|
}
|
|
}
|
|
else
|
|
if (type == 2)
|
|
{
|
|
this.BuildingMenu = new List<BuildingViewModel>();
|
|
for (int i = 0; i < app.Floors.Count; i++)
|
|
{
|
|
BuildingViewModel Building = new BuildingViewModel();
|
|
Floor BuildingsInfo = (Floor)app.Floors[i];
|
|
Building.code = BuildingsInfo.code;
|
|
Building.name = BuildingsInfo.floorName;
|
|
Building.IsSelected = false;
|
|
BuildingMenu.Add(Building);
|
|
|
|
}
|
|
}
|
|
else if (type == 3)
|
|
{
|
|
this.BuildingMenu = new List<BuildingViewModel>();
|
|
for (int i = 0; i < app.DeviceTypeList.Count; i++)
|
|
{
|
|
BuildingViewModel Buildinginfo = new BuildingViewModel();
|
|
DeviceType BuildingsInfo = (DeviceType)app.DeviceTypeList[i];
|
|
Buildinginfo.code = BuildingsInfo.code;
|
|
Buildinginfo.name = BuildingsInfo.dictValue;
|
|
Buildinginfo.IsSelected = false;
|
|
BuildingMenu.Add(Buildinginfo);
|
|
//app.Buildings.FindAll(p => p.BNAME == "");
|
|
}
|
|
}
|
|
else if (type == 4) {
|
|
this.BuildingMenu = new List<BuildingViewModel>();
|
|
BuildingViewModel Buildinginfo = new BuildingViewModel();
|
|
Buildinginfo.code = "本地部署";
|
|
Buildinginfo.IsSelected = false;
|
|
BuildingMenu.Add(Buildinginfo);
|
|
|
|
BuildingViewModel Buildinginfo1 = new BuildingViewModel();
|
|
Buildinginfo1.code = "前置离线";
|
|
Buildinginfo1.IsSelected = false;
|
|
BuildingMenu.Add(Buildinginfo1);
|
|
|
|
BuildingViewModel Buildinginfo2 = new BuildingViewModel();
|
|
Buildinginfo2.code = "直联云";
|
|
Buildinginfo2.IsSelected = false;
|
|
BuildingMenu.Add(Buildinginfo2);
|
|
}
|
|
this.DetailPlaceOrderCom = new DelegateCommand(new Action(this.BuildingNAMEOrderComExecute));
|
|
this.SelectMenuItemCom = new DelegateCommand(new Action(this.SelectMenuItemComExecute));
|
|
|
|
}
|
|
|
|
private void BuildingNAMEOrderComExecute()
|
|
{
|
|
var selectedDishes = this.BuildingMenu.Where(i => i.IsSelected == true).Select(i => i.name).ToList();
|
|
}
|
|
private void SelectMenuItemComExecute()
|
|
{
|
|
this.BuildingID = this.BuildingMenu.Where(i => i.IsSelected == true).Select(i => i.code).ToString();
|
|
}
|
|
|
|
}
|
|
}
|
|
|