From b73b7a1f0ab02184f7959e87aa2a911461052127 Mon Sep 17 00:00:00 2001 From: "qianhao.xu" Date: Tue, 14 May 2024 14:01:18 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AF=9B=E5=9D=AF=E5=BA=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mes/mm/MaterialInputController.cs | 1 + .../mes/wms/WmBlankRecordController.cs | 53 +++++++++++ ZR.Service/mes/mm/MaterialInputService.cs | 39 ++++++-- .../mes/wms/IService/IWmBlankRecordService.cs | 3 + ZR.Service/mes/wms/WmBlankRecordService.cs | 91 +++++++++++++++++++ 5 files changed, 179 insertions(+), 8 deletions(-) diff --git a/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs b/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs index 23cbac1c..05a8d69d 100644 --- a/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs +++ b/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs @@ -175,6 +175,7 @@ namespace ZR.Admin.WebApi.Controllers.mes.mm /// 1.更改站点托盘 ?? /// 2.完成的配料任务不可见 /// 3.生产上线 + /// 4.扣除毛坯库 /// /// [HttpGet("finishBatchingTask")] diff --git a/ZR.Admin.WebApi/Controllers/mes/wms/WmBlankRecordController.cs b/ZR.Admin.WebApi/Controllers/mes/wms/WmBlankRecordController.cs index 4f5275dc..6fb054ed 100644 --- a/ZR.Admin.WebApi/Controllers/mes/wms/WmBlankRecordController.cs +++ b/ZR.Admin.WebApi/Controllers/mes/wms/WmBlankRecordController.cs @@ -72,6 +72,59 @@ namespace ZR.Admin.WebApi.Controllers return SUCCESS(response); } + /// + /// 1.增加库存 + /// + /// + /// + /// + /// + [HttpGet("add_inventory")] + public IActionResult AddInventory(string id,string blank,int change_quantity) + { + if(string.IsNullOrEmpty(blank)) + { + return SUCCESS(null); + } + if (string.IsNullOrEmpty(id)) + { + return SUCCESS(null); + } + if (string.IsNullOrEmpty(blank)) + { + return SUCCESS(null); + } + + var response = _WmBlankRecordService.AddInventory(id, blank, change_quantity, HttpContext.GetName()); + return SUCCESS(response); + } + + /// + /// 2.减少库存 + /// + /// + /// + /// + /// + [HttpGet("delete_inventory")] + public IActionResult DeleteInventory(string id, string blank, int change_quantity) + { + if (string.IsNullOrEmpty(blank)) + { + return SUCCESS(null); + } + if (string.IsNullOrEmpty(id)) + { + return SUCCESS(null); + } + if (string.IsNullOrEmpty(blank)) + { + return SUCCESS(null); + } + var response = _WmBlankRecordService.DeleteInventory(id, blank, change_quantity, HttpContext.GetName()); + return SUCCESS(response); + + } /// /// 更新毛坯库存库存变动记录表 /// diff --git a/ZR.Service/mes/mm/MaterialInputService.cs b/ZR.Service/mes/mm/MaterialInputService.cs index e2ab2190..1b869366 100644 --- a/ZR.Service/mes/mm/MaterialInputService.cs +++ b/ZR.Service/mes/mm/MaterialInputService.cs @@ -120,7 +120,7 @@ namespace ZR.Service.mes.mm ingredient.FkWorkorder = workorder.ClientWorkorder ?? ("调试:" + workorder.Id); ingredient.FkBlanknumber = workorder.BlankNumber; ingredient.Isingredient = 0; - ingredient.Previous_numbered =0; + ingredient.Previous_numbered = 0; ingredient.CreatedTime = DateTime.Now; Context.Insertable(ingredient).ExecuteCommand(); } @@ -168,13 +168,13 @@ namespace ZR.Service.mes.mm int remian = item.previousNumber - item.previousNumbered; if (remian == 0) { - int result= Context.Updateable() - .Where(it => it.FkWorkorder == item.workorder) - .Where(it => it.FkBlanknumber == item.blanknumber) - .SetColumns(it => it.Previous_numbered == item.previousNumbered) - .SetColumns(it => it.Isingredient == 1) - .SetColumns(it => it.UpdatedTime == DateTime.Now) - .ExecuteCommand(); + int result = Context.Updateable() + .Where(it => it.FkWorkorder == item.workorder) + .Where(it => it.FkBlanknumber == item.blanknumber) + .SetColumns(it => it.Previous_numbered == item.previousNumbered) + .SetColumns(it => it.Isingredient == 1) + .SetColumns(it => it.UpdatedTime == DateTime.Now) + .ExecuteCommand(); } else @@ -366,6 +366,29 @@ namespace ZR.Service.mes.mm } } + //查询毛坯号 + List TO_blankList = Context.Queryable().Where(it => it.TaskId == taskId).ToList(); + foreach (var task in TO_blankList) + { + if (!string.IsNullOrEmpty(task.Blanknumber)) + { + //1 扣除库存 + Context.Updateable().SetColumns(it=>it.Quantity== it.Quantity-task.PreviousNumbered) + .Where(it=>it.BlankNum==task.Blanknumber).ExecuteCommand(); + //2 增加库存记录 + WmBlankRecord res = new WmBlankRecord(); + res.Id = SnowFlakeSingle.Instance.NextId().ToString(); + res.FkBlankInventoryId = task.Blanknumber; + res.ChangeQuantity = task.PreviousNumbered; + res.Type = 3; + res.Status = 1; + res.CreatedBy = "仓库人员"; + res.CreatedTime = DateTime.Now; + + //填写库存记录 + Context.Insertable(res).ExecuteCommand(); + } + } }); diff --git a/ZR.Service/mes/wms/IService/IWmBlankRecordService.cs b/ZR.Service/mes/wms/IService/IWmBlankRecordService.cs index fe4cda6b..d7a7cc9b 100644 --- a/ZR.Service/mes/wms/IService/IWmBlankRecordService.cs +++ b/ZR.Service/mes/wms/IService/IWmBlankRecordService.cs @@ -20,5 +20,8 @@ namespace ZR.Service.mes.wms.IService int UpdateWmBlankRecord(WmBlankRecord parm); + int AddInventory(string id, string fk_blank_inventory_id, int change_quantity,string username); + int DeleteInventory(string id, string fk_blank_inventory_id, int change_quantity, string username); + } } diff --git a/ZR.Service/mes/wms/WmBlankRecordService.cs b/ZR.Service/mes/wms/WmBlankRecordService.cs index 1a8279b2..9d96b1ee 100644 --- a/ZR.Service/mes/wms/WmBlankRecordService.cs +++ b/ZR.Service/mes/wms/WmBlankRecordService.cs @@ -83,5 +83,96 @@ namespace ZR.Service.mes.wms return Update(model, true); } + /// + /// 增加库存 + /// + /// + /// + /// + /// + public int AddInventory(string id, string fk_blank_inventory_id, int change_quantity,string username) + { + // 增加库存 + int result=Context.Updateable() + .SetColumns(it => it.Quantity == it.Quantity + change_quantity) + .Where(it => it.Id == id) + .Where(it => it.BlankNum == fk_blank_inventory_id) + .ExecuteCommand(); + if(result==1) + { + WmBlankRecord res = new WmBlankRecord(); + res.Id= SnowFlakeSingle.Instance.NextId().ToString(); + res.FkBlankInventoryId=fk_blank_inventory_id; + res.ChangeQuantity = change_quantity; + res.Type = 1; + res.Status = 1; + res.CreatedBy = username; + res.CreatedTime = DateTime.Now; + + //填写库存记录 + Context.Insertable(res).ExecuteCommand(); + + } + + + return result; + } + + /// + /// 删除库存 + /// + /// + /// + /// + /// + public int DeleteInventory(string id, string fk_blank_inventory_id, int change_quantity, string username) + { + int resut = 0; + UseTran2(() => + { + WmBlankInventory record = Context.Queryable() + .Where(it => it.Id == id) + .Where(it => it.BlankNum == fk_blank_inventory_id).First(); + + + if (record != null && record.Quantity < change_quantity) + { + resut = 0 - change_quantity; + } + else if (record == null) + { + resut = -1; + } + else + { + resut = Context.Updateable() + .SetColumns(it => it.Quantity == it.Quantity - change_quantity) + .Where(it => it.Id == id) + .Where(it => it.FkPaintId == fk_blank_inventory_id) + .ExecuteCommand(); + + if (resut == 1) + { + WmBlankRecord res = new WmBlankRecord(); + res.Id = SnowFlakeSingle.Instance.NextId().ToString(); + res.FkBlankInventoryId = fk_blank_inventory_id; + res.ChangeQuantity = change_quantity; + res.Type = 2; + res.Status = 1; + res.CreatedBy = username; + res.CreatedTime = DateTime.Now; + + //填写库存记录 + Context.Insertable(res).ExecuteCommand(); + + } + + + } + + }); + return resut; + } + } } \ No newline at end of file