diff --git a/EquipMgr/Tnb.EquipMgr.Entities/Dto/MaintainInfoQueryinput.cs b/EquipMgr/Tnb.EquipMgr.Entities/Dto/MaintainInfoQueryinput.cs new file mode 100644 index 00000000..55b6bc50 --- /dev/null +++ b/EquipMgr/Tnb.EquipMgr.Entities/Dto/MaintainInfoQueryinput.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tnb.EquipMgr.Entities.Dto +{ + public class MaintainInfoQueryinput + { + public string? sort { get; set; } + public string? keyword { get; set; } + + public string? status { get; set; } + } +} diff --git a/EquipMgr/Tnb.EquipMgr/ToolMoldMaintainRunService.cs b/EquipMgr/Tnb.EquipMgr/ToolMoldMaintainRunService.cs index e2587d04..389be602 100644 --- a/EquipMgr/Tnb.EquipMgr/ToolMoldMaintainRunService.cs +++ b/EquipMgr/Tnb.EquipMgr/ToolMoldMaintainRunService.cs @@ -100,10 +100,21 @@ namespace Tnb.EquipMgr } [HttpGet] - public async Task GetMaintainInfo() + [AllowAnonymous] + public async Task GetMaintainInfo([FromQuery] MaintainInfoQueryinput input) { + Dictionary dicstatus = new Dictionary(); + dicstatus.Add("UnMaintain", "待保养"); + dicstatus.Add("Completed", "已完成"); + string status = string.Empty; + if (!string.IsNullOrEmpty(input.status)) + { + status = dicstatus.Where(p => p.Value == input.status).Any() ? dicstatus.Where(p => p.Value == input.status).First().Key : ""; + } List result = new(); - var plans = await _db.Queryable().ToListAsync(); + var plans = await _db.Queryable() + .WhereIF(!string.IsNullOrEmpty(status), p => p.status == status) + .ToListAsync(); var ToolMolds = await _db.Queryable().ToListAsync(); var ToolMoldsEquipments = await _db.Queryable().ToListAsync(); var EqpEquipments = await _db.Queryable().ToListAsync(); @@ -123,7 +134,9 @@ namespace Tnb.EquipMgr if (planMoldRelations?.Count > 0) { var mids = planMoldRelations.Select(x => x.mold_id).ToList(); - var molds = ToolMolds.Where(it => mids.Contains(it.id)).ToList(); + var molds = ToolMolds.Where(it => mids.Contains(it.id)) + .WhereIF(!string.IsNullOrEmpty(input.keyword), p => p.mold_code!.Contains(input.keyword!) || p.mold_name!.Contains(input.keyword!)) + .ToList(); if (molds?.Count > 0) { List infos = new List { }; @@ -136,7 +149,7 @@ namespace Tnb.EquipMgr info.mold_name = mold.mold_name; info.mold_status = dic.Where(p => p.Id == mold.mold_status).Any() ? dic.Where(p => p.Id == mold.mold_status).First().FullName : ""; info.maintain_qty = mold.maintain_qty; - info.plan_start_time = planMoldRelations[i].plan_start_time == null ? "" : ((DateTime)planMoldRelations[i].plan_start_time).ToString("yyyy-MM-dd"); + info.plan_start_time = planMoldRelations[i].plan_start_time == null ? "" : ((DateTime)planMoldRelations[i].plan_start_time!).ToString("yyyy-MM-dd"); info.createtime = plan.create_time == null ? "" : ((DateTime)plan.create_time).ToString("yyyy-MM-dd"); info.status = plan.status == "UnMaintain" ? "待保养" : "已完成"; info.createuser = string.IsNullOrEmpty(plan.create_id) ? "" : users.Where(p => p.Id == plan.create_id).First().RealName; @@ -155,7 +168,13 @@ namespace Tnb.EquipMgr } } } - + } + if (!string.IsNullOrEmpty(input.sort)) + { + if (input.sort == "createtime") + result = result.OrderByDescending(p => p.createtime).ToList(); + if (input.sort == "plan_start_time") + result = result.OrderByDescending(p => p.plan_start_time).ToList(); ; } return result; } diff --git a/ProductionMgr/Tnb.ProductionMgr.Interfaces/IAndonService.cs b/ProductionMgr/Tnb.ProductionMgr.Interfaces/IAndonService.cs index 4f296f36..31e453dc 100644 --- a/ProductionMgr/Tnb.ProductionMgr.Interfaces/IAndonService.cs +++ b/ProductionMgr/Tnb.ProductionMgr.Interfaces/IAndonService.cs @@ -9,8 +9,7 @@ namespace Tnb.ProductionMgr.Interfaces { public interface IAndonService { - public Task GetPrdTask(string stationId); - - public Task SaveData(AndonRecordInput AndonRecordInput); + Task GetPrdTask(string stationId); + Task SaveData(AndonRecordInput AndonRecordInput); } } diff --git a/ProductionMgr/Tnb.ProductionMgr/AndonService.cs b/ProductionMgr/Tnb.ProductionMgr/AndonService.cs index c1bfbf66..24c38703 100644 --- a/ProductionMgr/Tnb.ProductionMgr/AndonService.cs +++ b/ProductionMgr/Tnb.ProductionMgr/AndonService.cs @@ -68,6 +68,7 @@ namespace Tnb.ProductionMgr info.plan_end_date = data.estimated_end_date == null ? "" : ((DateTime)data.estimated_end_date!).ToString("yyyy-MM-dd"); result.Add(info); } + result.OrderByDescending(p => p.plan_start_date); return result; } [HttpPost]