From 00e346af99d35244ee22d4e7cf268c0d1cfa18ea Mon Sep 17 00:00:00 2001 From: huanghongfeng <huanghongfeng@hnkhzn.com> Date: 星期五, 21 六月 2024 21:10:10 +0800 Subject: [PATCH] 工业大屏 --- 代码管理/PCS/WCS_Server/WIDESEA_WebApi/Controllers/ReadplcController.cs | 38 +++++++++++++++++++ 代码管理/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs | 78 +++++++++++++++++++++++++++++--------- 2 files changed, 97 insertions(+), 19 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WebApi/Controllers/ReadplcController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WebApi/Controllers/ReadplcController.cs" new file mode 100644 index 0000000..d49784a --- /dev/null +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/PCS/WCS_Server/WIDESEA_WebApi/Controllers/ReadplcController.cs" @@ -0,0 +1,38 @@ +锘縰sing Microsoft.AspNetCore.Mvc; +using System.Linq; +using WIDESEA_Core.EFDbContext; +using WIDESEA_Core.Extensions; +using WIDESEA_WCS.IRepositories; +using WIDESEA_WCS.Repositories; +using WIDESEA_WMS.IRepositories; +using WIDESEA_WMS.Repositories; + +namespace WIDESEA_WebApi.Controllers +{ + [Route("api/[controller]")] + [ApiController] + public class ReadplcController : Controller + { + #region 绗簲鏉垮潡锛堟柊澧炲唴瀹癸級 + /// <summary> + /// 宸ュ崟淇℃伅VV_Workinfo + /// </summary> + /// <returns></returns> + [HttpPost("Workinfo_information")] + public object Workinfo_information() + { + VOLContext volContext = new VOLContext(); + Idt_mes_headRepository db = new dt_mes_headRepository(volContext); + Idt_mes_detailRepository dbs = new dt_mes_detailRepository(volContext); + var data = db.Find(_ => true).Where(x => x.processCode == "28").OrderByDescending(x => x.CreateTime).Take(10).ToList(); + var dataList = data.Select(x => new { + jobID = x.jobID, + drawingNo = x.drawingNo, + quantity = x.quantity, + heatID = string.Join(", ", dbs.Find(d => d.jobID == x.jobID).Select(d => d.heatID).Distinct()) + }).ToList(); + return Ok(dataList); + } + #endregion + } +} diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs" index e55686b..06bc158 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WMS_Server/WIDESEA_WebApi/Controllers/LargescreenController.cs" @@ -1,19 +1,24 @@ 锘縰sing Microsoft.AspNetCore.Mvc; +using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Numeric; +using System; using System.Collections.Generic; using System.Linq; -using System; +using System.Security.Cryptography; +using System.Xml.Linq; using WIDESEA_Core.EFDbContext; +using WIDESEA_Entity.DomainModels; using WIDESEA_WMS.IRepositories; using WIDESEA_WMS.Repositories; -using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime; namespace WIDESEA_WebApi.Controllers { + [Route("api/[controller]")] [ApiController] public class LargescreenController : Controller //澶у睆骞曟暟鎹� { - #region 绗竴鏉垮潡缁熻鍥� + #region 绗竴鏉垮潡缁熻鍥撅紝鏈娇鐢� /// <summary> /// 鏈堬紝鏃ュ嚭鍏ュ簱鏁伴噺缁熻 /// </summary> @@ -93,6 +98,8 @@ var data2 = db.Find(x => x.agv_createtime >= startDate && x.agv_createtime <= endDate); + var data3 = db.Find(x => x.agv_createtime >= today && x.agv_createtime < today.AddDays(1)).ToList(); + // 缁熻杩欐湀鐨勫叆搴撴暟閲� var monthlyInventory = data2.Where(x => x.agv_tasktype == "TaskType_Inbound").Sum(x => x.agv_qty); @@ -100,10 +107,10 @@ var monthlyOutbound = data2.Where(x => x.agv_tasktype == "TaskType_Outbound").Sum(x => x.agv_qty); // 缁熻浠婃棩鍏ュ簱鏁伴噺 - var dayInventory = data2.Where(x => x.agv_tasktype == "TaskType_Inbound").Sum(x => x.agv_qty); + var dayInventory = data3.Where(x => x.agv_tasktype == "TaskType_Inbound").Sum(x => x.agv_qty); // 缁熻浠婃棩鍑哄簱鏁伴噺 - var dayOutbound = data2.Where(x => x.agv_tasktype == "TaskType_Outbound").Sum(x => x.agv_qty); + var dayOutbound = data3.Where(x => x.agv_tasktype == "TaskType_Outbound").Sum(x => x.agv_qty); var data = new { @@ -125,8 +132,7 @@ [HttpPost("Outbound_inventory")] public object Outbound_inventory() { - - + #region 浣跨敤涓殑鍐呭 VOLContext volContext = new VOLContext(); Idt_agvtask_htyRepository db = new dt_agvtask_htyRepository(volContext); Idt_stationinfoRepository db2 = new dt_stationinfoRepository(volContext); @@ -147,8 +153,22 @@ //绌烘墭鏁伴噺 var dayTaskType_EmptyPallet = data2.Where(x => x.agv_tasktype == "TaskType_EmptyPallet").Sum(x => x.agv_qty); + //缁熻鏈堝叆搴撴�婚噺 + var startDate = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); + var endDate = startDate.AddMonths(1).AddDays(-1); + var data4 = db.Find(x => x.agv_createtime >= startDate && x.agv_createtime <= endDate); + // 缁熻杩欐湀鐨勫叆搴撴暟閲� + var monthlyInventory = data4.Where(x => x.agv_tasktype == "TaskType_Inbound").Sum(x => x.agv_qty); + // 缁熻杩欐湀鐨勫嚭搴撴暟閲� + var monthlyOutbound = data4.Where(x => x.agv_tasktype == "TaskType_Outbound").Sum(x => x.agv_qty); + // 缁熻浠婃棩鍏ュ簱鏁伴噺 + var dayInventory = data2.Where(x => x.agv_tasktype == "TaskType_Inbound").Sum(x => x.agv_qty); - var data3 = db2.Find(_ => true).ToList(); + // 缁熻浠婃棩鍑哄簱鏁伴噺 + var dayOutbound = data2.Where(x => x.agv_tasktype == "TaskType_Outbound").Sum(x => x.agv_qty); + + + var data3 = db2.Find(_ => true).Where(x => x.stationCode.Contains("A") || x.stationCode.Contains("B") || x.stationCode.Contains("C") || x.stationCode.Contains("D01")).ToList(); //搴撳尯鍥惧彿鏁伴噺,澶栧姞绌烘墭鏁伴噺 var Number_wheels = data3.Where(_ => true) @@ -163,6 +183,10 @@ tray_type = g.Key.tray_type }).ToList(); + #endregion + + + #region 鏈娇鐢ㄧ殑鍐呭 //缁熻涓嬫枡鍙e悎鏍肩巼涓庝笉鍚堟牸鐜�1鍗曞厓 var dayTaskType_Inbound2 = data2.Where(x => x.agv_tasktype == "TaskType_Inbound" && (x.agv_fromaddress == "X01001001" || x.agv_fromaddress == "X01001002") && x.agv_createtime >= today && x.agv_createtime < today.AddDays(1)).Sum(x => x.agv_qty); //澶栧崗搴撳叆搴�1鍗曞厓 @@ -184,6 +208,10 @@ var sumkw = data3.Where(a => a.stationCode.Contains("B") || a.stationCode.Contains("C") || a.stationCode.Contains("D01")).Count(); //鑾峰彇搴撳尯搴撲綅 var sumzy = data3.Where(a => (a.stationCode.Contains("B") || a.stationCode.Contains("C") || a.stationCode.Contains("D01")) && a.location_state == "Stroge").Count(); //鑾峰彇琚崰鐢ㄧ殑 var areaper = ((double)sumzy / sumkw).ToString("P0"); + #endregion + + + var data = new @@ -198,6 +226,10 @@ qualified2, areaper, Number_wheels, + monthlyInventory, + monthlyOutbound, + dayInventory, + dayOutbound, }; return Ok(data); } @@ -243,7 +275,7 @@ #region 绗洓鏉垮潡 /// <summary> - /// 15鏃ュ唴鐨勫嚭鍏ュ簱 + /// 5鏃ュ唴鐨勫嚭鍏ュ簱 /// </summary> /// <returns></returns> [HttpPost("fifteenTotal_quantityndex")] @@ -251,9 +283,9 @@ { VOLContext volContext = new VOLContext(); Idt_agvtask_htyRepository db = new dt_agvtask_htyRepository(volContext); - var startDate = DateTime.Today.AddDays(-15); // 鑾峰彇褰撳墠鏃ユ湡涔嬪墠15澶╃殑鏃ユ湡 + var startDate = DateTime.Today.AddDays(-5); // 鑾峰彇褰撳墠鏃ユ湡涔嬪墠15澶╃殑鏃ユ湡 var today = DateTime.Today; - var dateRange = Enumerable.Range(0, 15).Select(offset => today.AddDays(-offset)); // 鑾峰彇鏈�杩�15澶╃殑鏃ユ湡鑼冨洿 + var dateRange = Enumerable.Range(0, 5).Select(offset => today.AddDays(-offset)); // 鑾峰彇鏈�杩�15澶╃殑鏃ユ湡鑼冨洿 var data2 = db.Find(x => x.agv_createtime >= startDate && x.agv_createtime < today.AddDays(1)).ToList(); @@ -281,7 +313,7 @@ } #endregion - #region 绗簲鏉垮潡 + #region 绗叚鏉垮潡 /// <summary> /// 褰撳墠agv浠诲姟 /// </summary> @@ -293,14 +325,10 @@ Idt_agvtaskRepository db = new dt_agvtaskRepository(volContext); var dataList = db.Find(_ => true).OrderByDescending(x => x.agv_createtime).ToList(); - var data = dataList.Where(x => x.agv_taskstate != "闃熷垪" && x.agv_taskstate != "Queue" && x.agv_taskstate != "浠诲姟鏆傚仠" && x.agv_taskstate != "Pause").ToList(); - - if (data.Count < 10) + var data = dataList.Where(x => x.agv_tasktype != "Queue").Take(15).ToList(); + if (data.Count <= 15) { - var additionalData = dataList.Where(x => x.agv_taskstate == "闃熷垪" || x.agv_taskstate == "Queue") - .Take(10 - data.Count) - .ToList(); - data.AddRange(additionalData); + data = dataList.Take(15).ToList(); } foreach (var item in data) { @@ -363,5 +391,17 @@ } #endregion + + #region 绗竷鏉垮潡锛堟柊澧炲唴瀹癸級 + /// <summary> + /// 宸ュ崟淇℃伅VV_Workinfo + /// </summary> + /// <returns></returns> + /*[HttpPost("Workinfo_information")] + public object Workinfo_information() + { + + }*/ + #endregion } } -- Gitblit v1.9.3