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; } } }