|
|
|
|
using CommunityToolkit.Mvvm.ComponentModel;
|
|
|
|
|
using LiveCharts.Defaults;
|
|
|
|
|
using LiveCharts.Wpf;
|
|
|
|
|
using LiveCharts;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using System.Windows.Media;
|
|
|
|
|
using System.Collections.ObjectModel;
|
|
|
|
|
|
|
|
|
|
namespace Aucma.Core.BoxFoam.ViewModels
|
|
|
|
|
{
|
|
|
|
|
public partial class FoamMonitorPageViewModel : ObservableObject
|
|
|
|
|
{
|
|
|
|
|
public FoamMonitorPageViewModel()
|
|
|
|
|
{
|
|
|
|
|
Task.WaitAll(InitEveryDayMethod());
|
|
|
|
|
InitStatus();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void InitStatus()
|
|
|
|
|
{
|
|
|
|
|
for (int i = 0; i < 12; i++)
|
|
|
|
|
{
|
|
|
|
|
Color.Add("Red");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#region 日产量
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 每日生产
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
private Task InitEveryDayMethod()
|
|
|
|
|
{
|
|
|
|
|
#region 按时间统计
|
|
|
|
|
ChartValues<ObservablePoint> achievement = new ChartValues<ObservablePoint>
|
|
|
|
|
{
|
|
|
|
|
new ObservablePoint(0, 12),
|
|
|
|
|
new ObservablePoint(1, 14),
|
|
|
|
|
new ObservablePoint(2, 28),
|
|
|
|
|
new ObservablePoint(3, 2),
|
|
|
|
|
new ObservablePoint(4, 29),
|
|
|
|
|
new ObservablePoint(5, 29),
|
|
|
|
|
new ObservablePoint(6, 7),
|
|
|
|
|
new ObservablePoint(7, 31),
|
|
|
|
|
new ObservablePoint(8, 13),
|
|
|
|
|
new ObservablePoint(9, 11),
|
|
|
|
|
new ObservablePoint(10, 8),
|
|
|
|
|
new ObservablePoint(11, 5)
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var column = new ColumnSeries();
|
|
|
|
|
column.DataLabels = true;
|
|
|
|
|
column.Title = "当日小时产量统计";
|
|
|
|
|
column.Values = achievement;
|
|
|
|
|
column.Foreground = Brushes.White;
|
|
|
|
|
//柱子宽度
|
|
|
|
|
//column.Width = 30;
|
|
|
|
|
//column.MaxColumnWidth = 30;
|
|
|
|
|
//column.LabelsPosition = BarLabelPosition.Perpendicular;
|
|
|
|
|
//column.Fill = new SolidColorBrush(Color.FromRgb(34, 139, 34)); //柱状图颜色填充
|
|
|
|
|
//column.LabelPoint = p => p.Y.ToString(); //柱状图数据显示位置
|
|
|
|
|
|
|
|
|
|
ProductionHourList = new List<string>()
|
|
|
|
|
{
|
|
|
|
|
"7:30", "8:30", "9:30", "10:30", "11:30", "12:30", "13:30", "14:30", "15:30", "16:30", "17:30", "18:30"
|
|
|
|
|
};
|
|
|
|
|
//Formatter = value => value.ToString("N");
|
|
|
|
|
Achievement.Add(column);
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 按类型统计
|
|
|
|
|
ChartValues<double> achievement2 = new ChartValues<double>();
|
|
|
|
|
Random random2 = new Random();
|
|
|
|
|
for (int i = 0; i < 2; i++)
|
|
|
|
|
{
|
|
|
|
|
achievement2.Add(random2.Next(0,50));
|
|
|
|
|
}
|
|
|
|
|
var column2 = new ColumnSeries();
|
|
|
|
|
column2.DataLabels = true;
|
|
|
|
|
column2.Title = "当日型号产量统计";
|
|
|
|
|
column2.Values = achievement2;
|
|
|
|
|
column2.Foreground = Brushes.White;
|
|
|
|
|
ModelStatistics.Add(column2);
|
|
|
|
|
|
|
|
|
|
MaterialNameList = new List<string>()
|
|
|
|
|
{
|
|
|
|
|
"玻璃门,SC-439", "玻璃门,SC-439,AC"
|
|
|
|
|
};
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//await InitExecMethod();
|
|
|
|
|
return Task.CompletedTask;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 日产量柱状图X轴日期
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 日产量柱状图X轴日期
|
|
|
|
|
/// </summary>
|
|
|
|
|
private List<string> productionHourList;
|
|
|
|
|
|
|
|
|
|
public List<string> ProductionHourList
|
|
|
|
|
{
|
|
|
|
|
get { return productionHourList; }
|
|
|
|
|
set { productionHourList = value; }
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 型号统计
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region 型号统计柱状图x轴物料类型
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 型号统计柱状图x轴物料类型
|
|
|
|
|
/// </summary>
|
|
|
|
|
private List<string> materialNameList;
|
|
|
|
|
|
|
|
|
|
public List<string> MaterialNameList
|
|
|
|
|
{
|
|
|
|
|
get { return materialNameList; }
|
|
|
|
|
set { materialNameList = value; }
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 型号统计柱状图
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 型号统计柱状图
|
|
|
|
|
/// </summary>
|
|
|
|
|
private SeriesCollection modelStatistics = new SeriesCollection();
|
|
|
|
|
|
|
|
|
|
public SeriesCollection ModelStatistics
|
|
|
|
|
{
|
|
|
|
|
get { return modelStatistics; }
|
|
|
|
|
set { modelStatistics = value; }
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 日产量柱状图
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 日产量柱状图
|
|
|
|
|
/// </summary>
|
|
|
|
|
private SeriesCollection achievement = new SeriesCollection();
|
|
|
|
|
|
|
|
|
|
public SeriesCollection Achievement
|
|
|
|
|
{
|
|
|
|
|
get { return achievement; }
|
|
|
|
|
set { achievement = value; }
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
#region 颜色
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 颜色
|
|
|
|
|
/// </summary>
|
|
|
|
|
private ObservableCollection<string> _color = new ObservableCollection<string>();
|
|
|
|
|
public ObservableCollection<string> Color
|
|
|
|
|
{
|
|
|
|
|
get => _color;
|
|
|
|
|
set => SetProperty(ref _color, value);
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
}
|
|
|
|
|
}
|