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.

58 lines
2.6 KiB

using Audit.View;
using Models;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
/// <summary>
/// 统计机台单料数变换器
/// 输入:原料代码、机台代码、时间区间
/// 输出:机台料单数
/// </summary>
namespace Audit.ConvertMoels
{
internal class MachinesDyelotsNumberConvert : IValueConverter
{
private Dyelots dyelots = new Dyelots();
private DyelotsBulkedRecipe dyelotsBulkedRecipe = new DyelotsBulkedRecipe();
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
string machines = System.Convert.ToString(value);//转换机台号
if (string.IsNullOrWhiteSpace(StatisticsView.query_start)) StatisticsView.query_start = DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd");//默认开始时间当前日期前30天
if (string.IsNullOrWhiteSpace(StatisticsView.query_end)) StatisticsView.query_end = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd");//默认结束时间当前日期后一天
dyelots.Machine = System.Convert.ToString(machines);//传递机台
//dyelots.StartTime = System.Convert.ToString(machines);
//float sum_grams = (float)new DyelotsBulkedRecipeProvider().SelectCode(dyelotsBulkedRecipe).Sum(x => x.DispenseGrams);//查询并返回统计结果
if (string.IsNullOrWhiteSpace(StatisticsView.DataGridStatistics_ProductCode))//原料代码名有效返回数据,无效返回空
{
return null;
}
else
{
dyelotsBulkedRecipe.Dispenser = System.Convert.ToString(machines);//传递机台
dyelotsBulkedRecipe.ProductCode = StatisticsView.DataGridStatistics_ProductCode;
dyelotsBulkedRecipe.DispenseStartTime = System.Convert.ToDateTime(StatisticsView.query_start);
dyelotsBulkedRecipe.DispenseEndTime = System.Convert.ToDateTime(StatisticsView.query_end);
float Machines_Number = (float)new DyelotsBulkedRecipeProvider().SelectMachineSUM(dyelotsBulkedRecipe).Count(t => t.ReDye == 0);//查询并返回统计结果
if (Machines_Number == 0)
{
return null;
}
else
{
return Machines_Number;
}
}
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
}