using DOAN.Model.MES.product;
using DOAN.Service.MES.product.IService;
using Infrastructure.Attribute;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DOAN.Service.MES.SmartScreen.Product.IService;
using DOAN.Model.MES.SmartScreen.Product;
namespace DOAN.Service.MES.SmartScreen.Product
{
///
/// 生产智慧屏
///
[AppService(ServiceType = typeof(IProductSmartScreenService), ServiceLifetime = LifeTime.Transient)]
public class ProductSmartScreenService : BaseService, IProductSmartScreenService
{
///
/// 数字翻牌器
///
///
public DigitalTurntableModel DigitalTurntable()
{
DigitalTurntableModel digital=new DigitalTurntableModel();
digital.WorkorderQuantity = Context.Queryable().Where(it=>it.WorkorderDate==DateTime.Today).Count();
digital.FinishedWorkorderQuantity=Context.Queryable().Where(it => it.WorkorderDate == DateTime.Today)
.Where(it=>it.Status==2)
.Count();
digital.UnFinishedWorkorderQuantity = Context.Queryable().Where(it => it.WorkorderDate == DateTime.Today)
.Where(it => it.Status <2)
.Count();
digital.ProductionPlanQuantity = Context.Queryable().Where(it => it.WorkorderDate == DateTime.Today).Sum(it=>it.PlanNum??0);
digital.ProductionFinishQuantity = Context.Queryable().Where(it => it.JobDate >= DateTime.Today && it.JobDate < DateTime.Today.AddDays(1))
.Where(it => it.ProcessId == 90).Sum(it => it.FinishNum??0);
digital.GroupQuantity=Context.Queryable().Where(it => it.WorkorderDate == DateTime.Today).GroupBy(it=>it.GroupCode).Count();
return digital;
}
}
}