diff --git a/DOAN.Model/MES/SmartScreen/Product/DigitalTurntableModel.cs b/DOAN.Model/MES/SmartScreen/Product/DigitalTurntableModel.cs
index d3a861b..3ef4f20 100644
--- a/DOAN.Model/MES/SmartScreen/Product/DigitalTurntableModel.cs
+++ b/DOAN.Model/MES/SmartScreen/Product/DigitalTurntableModel.cs
@@ -19,12 +19,15 @@ namespace DOAN.Model.MES.SmartScreen.Product
///
/// 今日已经完成工单数
///
- public int FinishedWorkorderQuantity { get; set; }
+ //public int FinishedWorkorderQuantity { get; set; }
+
+
///
- /// 今日未完成工单数
+ /// 今日物料领用
///
- public int UnFinishedWorkorderQuantity { get; set; }
+ public int MaterialRequisitionQuantity { get; set; }
+
///
/// 今日生产计划总数
@@ -32,12 +35,13 @@ namespace DOAN.Model.MES.SmartScreen.Product
public int ProductionPlanQuantity { get; set; }
- ///
- /// 今日生产完成总数
- ///
- public int ProductionFinishQuantity { get; set; }
-
+ /////
+ ///// 今日生产完成总数
+ /////
+ //public int ProductionFinishQuantity { get; set; }
+ // 今日出货数量
+ public int ShipmentQuantity { get; set; }
///
/// 今天动用组数
///
diff --git a/DOAN.Service/MES/SmartScreen/Product/ProductSmartScreenService.cs b/DOAN.Service/MES/SmartScreen/Product/ProductSmartScreenService.cs
index fa4f932..b910b1a 100644
--- a/DOAN.Service/MES/SmartScreen/Product/ProductSmartScreenService.cs
+++ b/DOAN.Service/MES/SmartScreen/Product/ProductSmartScreenService.cs
@@ -32,20 +32,22 @@ namespace DOAN.Service.MES.SmartScreen.Product
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.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.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.JobDateTime >= DateTime.Today && it.JobDateTime < DateTime.Today.AddDays(1))
- .Where(it => it.ProcessId == 90).Sum(it => it.FinishNum??0);
+ //digital.ProductionFinishQuantity = Context.Queryable().Where(it => it.JobDateTime >= DateTime.Today && it.JobDateTime < DateTime.Today.AddDays(1))
+ // .Where(it => it.ProcessId == 90).Sum(it => it.FinishNum??0);
+ digital.MaterialRequisitionQuantity = Context.Queryable().Where(it => it.ProcessId == 10 && it.JobDateTime >= DateTime.Today && it.JobDateTime < DateTime.Today.AddDays(1)).Sum(it => it.FinishNum ?? 0);
+ digital.ShipmentQuantity = Context.Queryable().Where(it => it.ProcessId == 90 && it.JobDateTime >= DateTime.Today && it.JobDateTime < DateTime.Today.AddDays(1)).Sum(it => it.FinishNum ?? 0);
digital.GroupQuantity=Context.Queryable().Where(it => it.WorkorderDate == DateTime.Today).Select(it=>it.GroupCode).Distinct().Count();
@@ -336,11 +338,12 @@ namespace DOAN.Service.MES.SmartScreen.Product
.ToArray();
//1 X轴
List DateTimeArray= new List();
-
+
// 定义起始时间和结束时间
- DateTime startTime = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 8, 0, 0);
- DateTime endTime = startTime.AddHours(13); // 8 AM + 12 hours = 8 PM
+ //DateTime startTime = new DateTime(DateTime.Today.Year, DateTime.Today.Month, DateTime.Today.Day, 8, 0, 0);
+ DateTime startTime = DateTime.Today;
+ DateTime endTime = DateTime.Today.AddDays(1); // 8 AM + 12 hours = 8 PM
// 使用循环生成每10分钟的时间戳
for (DateTime currentTime = startTime; currentTime <= endTime; currentTime = currentTime.AddMinutes(10))
@@ -361,7 +364,7 @@ namespace DOAN.Service.MES.SmartScreen.Product
List echartsSeriesDatas = new List();
string sql = "SELECT" +
- " FROM_UNIXTIME( FLOOR( UNIX_TIMESTAMP( job_datetime ) / 600 ) * 600 ) AS time_period," +
+ " FROM_UNIXTIME( FLOOR( UNIX_TIMESTAMP(job_datetime) / 600 ) * 600 ) AS time_period," +
" SUM( finish_num ) AS count " +
" FROM" +
" pro_reportwork " +
@@ -371,8 +374,9 @@ namespace DOAN.Service.MES.SmartScreen.Product
" FLOOR( UNIX_TIMESTAMP( job_datetime ) / 600 )" +
" ORDER BY" +
" time_period";
+ string sql2 = "SELECT time_period, SUM(finish_num) AS count\r\nFROM (\r\n SELECT FROM_UNIXTIME( FLOOR( UNIX_TIMESTAMP( job_datetime ) / 600 ) * 600 ) AS time_period,\r\n finish_num\r\n FROM pro_reportwork\r\n WHERE DATE(job_datetime) = CURDATE() AND @process_id=process_id\r\n) AS subquery\r\nGROUP BY time_period\r\nORDER BY time_period";
- DataTable result = Context.Ado.GetDataTable(sql, new { process_id = processArray[i], });
+ DataTable result = Context.Ado.GetDataTable(sql2, new { process_id = processArray[i], });
int sum = 0;