From 3006f2574f2e10aa94bcfc69845674224e405f23 Mon Sep 17 00:00:00 2001 From: quowingwang Date: Wed, 26 Nov 2025 14:21:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=AB=E7=A0=81=E5=88=9B=E5=BB=BA=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WorkOrderInfo/WorkOrderItemController.cs | 4 +- .../WorkOrderInfo/IWorkOrderItemService.cs | 2 +- .../Mes/WorkOrderInfo/WorkOrderItemService.cs | 100 +++++++++++------- .../Mes/WorkOrderInfo/WorkOrderService.cs | 15 ++- 4 files changed, 78 insertions(+), 43 deletions(-) diff --git a/RIZO.Admin.WebApi/Controllers/Mes/WorkOrderInfo/WorkOrderItemController.cs b/RIZO.Admin.WebApi/Controllers/Mes/WorkOrderInfo/WorkOrderItemController.cs index 876a2e2..e379f05 100644 --- a/RIZO.Admin.WebApi/Controllers/Mes/WorkOrderInfo/WorkOrderItemController.cs +++ b/RIZO.Admin.WebApi/Controllers/Mes/WorkOrderInfo/WorkOrderItemController.cs @@ -131,10 +131,10 @@ namespace RIZO.Admin.WebApi.Controllers.Mes.WorkOrderInfo /// [HttpPost("createWorkOrderItemBySacnCode")] [Log(Title = "扫码新增工单主表", BusinessType = BusinessType.INSERT)] - public IActionResult CreateWorkOrderItemBySacnCode(string json) + public ApiResult CreateWorkOrderItemBySacnCode(string json) { var response = _WorkOrderItemService.CreateWorkOrderItemBySacnCode(json); - return SUCCESS(response); + return response; } } } \ No newline at end of file diff --git a/RIZO.Service/Mes/IMesService/WorkOrderInfo/IWorkOrderItemService.cs b/RIZO.Service/Mes/IMesService/WorkOrderInfo/IWorkOrderItemService.cs index a900301..3468024 100644 --- a/RIZO.Service/Mes/IMesService/WorkOrderInfo/IWorkOrderItemService.cs +++ b/RIZO.Service/Mes/IMesService/WorkOrderInfo/IWorkOrderItemService.cs @@ -20,7 +20,7 @@ namespace RIZO.Service.Mes.IMesService.WorkOrderInfo WorkOrderItem AddWorkOrderItem(WorkOrderItem parm); int UpdateWorkOrderItem(WorkOrderItem parm); - WorkOrderItem CreateWorkOrderItemBySacnCode(string json); + ApiResult CreateWorkOrderItemBySacnCode(string json); } diff --git a/RIZO.Service/Mes/WorkOrderInfo/WorkOrderItemService.cs b/RIZO.Service/Mes/WorkOrderInfo/WorkOrderItemService.cs index 0d65330..ba2417f 100644 --- a/RIZO.Service/Mes/WorkOrderInfo/WorkOrderItemService.cs +++ b/RIZO.Service/Mes/WorkOrderInfo/WorkOrderItemService.cs @@ -1,5 +1,6 @@ using Infrastructure.Attribute; using Infrastructure.Extensions; +using Infrastructure.Model; using RIZO.Model.Mes.Dto.WorkOrderInfo; using RIZO.Model.Mes.MasterData; using RIZO.Model.Mes.WorkOrderInfo; @@ -120,47 +121,74 @@ namespace RIZO.Service.Mes.WorkOrderInfo return predicate; } - public WorkOrderItem CreateWorkOrderItemBySacnCode(string json) + public ApiResult CreateWorkOrderItemBySacnCode(string json) { - PartsBasketCard partsBasketCard = JsonConvert.DeserializeObject(json); - string plcCode = ""; - PlcFirstCode plcFirstCode = plcFirstCodeService.Queryable() - .Where(it => it.Character == partsBasketCard.Character).First(); - string strPlcFirstCode = ""; - if (plcFirstCode != null) + try { - strPlcFirstCode = plcFirstCode.FirstCode; + if (string.IsNullOrWhiteSpace(json)) + { + return ApiResult.Error(400, "扫码数据为空,请重新扫码"); + } + //字符串转对象 + PartsBasketCard partsBasketCard = new PartsBasketCard(); + try + { + partsBasketCard = JsonConvert.DeserializeObject(json); + } + catch (Exception ex) + { + return ApiResult.Error(400, "扫码数据格式错误,无法解析"); + } + string plcCode = ""; + PlcFirstCode plcFirstCode = plcFirstCodeService.Queryable() + .Where(it => it.Character == partsBasketCard.Character).First(); + string strPlcFirstCode = ""; + if (plcFirstCode != null) + { + strPlcFirstCode = plcFirstCode.FirstCode; + } + int Sequcence = 1; + WorkOrderItem workOrderItem = Queryable() + .Where(it => it.WorkOrderCode == partsBasketCard.WorkOrderCode).OrderByDescending(it => it.Sequcence).First(); + if (workOrderItem != null) + { + Sequcence = workOrderItem.Sequcence; + Sequcence += 1; + } + string formattedSequence = Sequcence.ToString("D2"); + string strWorkOrderItemCode = partsBasketCard.WorkOrderCode + formattedSequence; + plcCode = strPlcFirstCode + strWorkOrderItemCode; + WorkOrderItem workOrderItem1 = new WorkOrderItem(); + workOrderItem1.WorkOrderCode = partsBasketCard.WorkOrderCode; + workOrderItem1.WorkOrderItemCode = strWorkOrderItemCode; + workOrderItem1.PlcCode = plcCode; + workOrderItem1.LineCode = partsBasketCard.LineCode; + workOrderItem1.LineName = partsBasketCard.LineName; + workOrderItem1.ProcessCode = partsBasketCard.ProcessCode; + workOrderItem1.ProcessName = partsBasketCard.ProcessName; + workOrderItem1.Character = partsBasketCard.Character; + workOrderItem1.IfClean = partsBasketCard.IfClean; + workOrderItem1.CreateBy = partsBasketCard.UserId; + workOrderItem1.CreateName = partsBasketCard.UserName; + workOrderItem1.UpdateBy = partsBasketCard.UserId; + workOrderItem1.UpdateName = partsBasketCard.UserName; + workOrderItem1.CreateTime = DateTime.Now; + workOrderItem1.UpdateTime = DateTime.Now; + workOrderItem1.Sequcence = Sequcence; + int iFlag = Insert(workOrderItem1); + if (iFlag > 0) + { + return ApiResult.Success(workOrderItem1); + } + else + { + return ApiResult.Error("工单明细创建失败"); + } } - int Sequcence = 1; - WorkOrderItem workOrderItem = Queryable() - .Where(it => it.WorkOrderCode == partsBasketCard.WorkOrderCode).OrderByDescending(it => it.Sequcence).First(); - if (workOrderItem != null) + catch (Exception ex) { - Sequcence = workOrderItem.Sequcence; - Sequcence += 1; + return ApiResult.Error("工单明细创建失败" + ex.ToString()); } - string formattedSequence = Sequcence.ToString("D2"); - string strWorkOrderItemCode = partsBasketCard.WorkOrderCode + formattedSequence; - plcCode = strPlcFirstCode + strWorkOrderItemCode; - WorkOrderItem workOrderItem1 = new WorkOrderItem(); - workOrderItem1.WorkOrderCode = partsBasketCard.WorkOrderCode; - workOrderItem1.WorkOrderItemCode = strWorkOrderItemCode; - workOrderItem1.PlcCode = plcCode; - workOrderItem1.LineCode = partsBasketCard.LineCode; - workOrderItem1.LineName = partsBasketCard.LineName; - workOrderItem1.ProcessCode = partsBasketCard.ProcessCode; - workOrderItem1.ProcessName = partsBasketCard.ProcessName; - workOrderItem1.Character = partsBasketCard.Character; - workOrderItem1.IfClean = partsBasketCard.IfClean; - workOrderItem1.CreateBy = partsBasketCard.UserId; - workOrderItem1.CreateName = partsBasketCard.UserName; - workOrderItem1.UpdateBy = partsBasketCard.UserId; - workOrderItem1.UpdateName = partsBasketCard.UserName; - workOrderItem1.CreateTime = DateTime.Now; - workOrderItem1.UpdateTime = DateTime.Now; - workOrderItem1.Sequcence = Sequcence; - int iFlag = Insert(workOrderItem1); - return workOrderItem1; } } diff --git a/RIZO.Service/Mes/WorkOrderInfo/WorkOrderService.cs b/RIZO.Service/Mes/WorkOrderInfo/WorkOrderService.cs index 62ca20b..83599dd 100644 --- a/RIZO.Service/Mes/WorkOrderInfo/WorkOrderService.cs +++ b/RIZO.Service/Mes/WorkOrderInfo/WorkOrderService.cs @@ -197,17 +197,24 @@ namespace RIZO.Service.Mes.WorkOrderInfo //orderInfoNew.UpdateName = parm.UserName; orderInfoNew.CreateTime = DateTime.Now; orderInfoNew.UpdateTime = DateTime.Now; - int iFlag = Update(orderInfoNew); + int iFlag = Insert(orderInfoNew); + if (iFlag > 0) + { + return ApiResult.Success(orderInfoNew); + } + else + { + return ApiResult.Error("工单创建失败" ); + } } else { - orderInfoNew = WorkOrder; + return ApiResult.Success(WorkOrder); } - return ApiResult.Success(orderInfoNew); } catch (Exception ex) { - return ApiResult.Error("工单创建失败"); + return ApiResult.Error("工单创建失败"+ex.ToString()); } }