From 36230cd4dd0ebe5d21eede3eff6216908f7f7a8e Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期三, 06 十一月 2024 16:48:32 +0800 Subject: [PATCH] AGV任务下发,AGV任务状态更新 --- 项目代码/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Base/InboundOrderService.cs | 45 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 42 insertions(+), 3 deletions(-) diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Base/InboundOrderService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Base/InboundOrderService.cs" index 9da56d3..64c2a2b 100644 --- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Base/InboundOrderService.cs" +++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/Base/InboundOrderService.cs" @@ -73,7 +73,7 @@ #endregion Dt_InboundOrder inboundOrder = _mapper.Map<Dt_InboundOrder>(orderAddDTO); - inboundOrder.OrderNo=DateTime.Now.ToString("yyMMddHHmmss"); + inboundOrder.OrderNo = DateTime.Now.ToString("yyMMddHHmmss"); inboundOrder.OrderStatus = InboundStatusEnum.鏈紑濮�.ObjToInt(); bool a = BaseDal.Db.InsertNav(inboundOrder).Include(x => x.Details).ExecuteCommand(); content = WebResponseContent.Instance.OK(); @@ -91,12 +91,51 @@ public override WebResponseContent UpdateData(SaveModel saveModel) { - return base.UpdateData(saveModel); + WebResponseContent content = new WebResponseContent(); + try + { + if (saveModel.DetailData == null || saveModel.DetailData.Count == 0) throw new Exception($"鍏ュ簱鍗曟槑缁嗕笉鑳戒负绌�"); + List<InboundOrderDetailAddDTO> inboundOrderDetail = saveModel.DetailData.DicToIEnumerable<InboundOrderDetailAddDTO>(); + if (inboundOrderDetail.FirstOrDefault(x => x.OrderDetailStatus > 0) != null) throw new Exception($"璁㈠崟宸插紑濮嬬粍鐩樺叆搴�"); + var inboundOrderDetails = _inboundOrderDetailService.Db.Queryable<Dt_InboundOrderDetail>().Where(x => saveModel.DelKeys.Contains(x.Id)).ToList(); + if (inboundOrderDetails.Count > 0) + { + if (inboundOrderDetails.FirstOrDefault(x => x.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt()) != null) + throw new Exception($"瀛樺湪宸茬粍鐩樺伐鍗曪紝宸插厛瑙g洏"); + } + content = base.UpdateData(saveModel); + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; } public override WebResponseContent DeleteData(object[] keys) { - return base.DeleteData(keys); + WebResponseContent content = new WebResponseContent(); + try + { + var inboundOrders = BaseDal.QueryData(x => keys.Contains(x.Id)); + if (inboundOrders.FirstOrDefault(x => x.OrderStatus != InboundStatusEnum.鏈紑濮�.ObjToInt()) != null) + throw new Exception($"鍏ュ簱鍗曞瓨鍦ㄧ粍鐩樺叆搴撲俊鎭�"); + foreach (var inboundOrder in inboundOrders) + { + var inboundOrderDetails = BaseDal.Db.Queryable<Dt_InboundOrder>().Includes(x => x.Details).First(x => x.OrderNo == inboundOrder.OrderNo).Details; + if (inboundOrderDetails != null || inboundOrderDetails.Count > 0) + { + if (inboundOrderDetails.FirstOrDefault(x => x.OrderDetailStatus != OrderDetailStatusEnum.New.ObjToInt()) != null) + throw new Exception($"鍏ュ簱鍗曘�恵inboundOrder.OrderNo}銆戝瓨鍦ㄧ粍鐩樺叆搴撲俊鎭�"); + } + } + content = base.DeleteData(keys); + } + catch (Exception ex) + { + content.Error(ex.Message); + } + return content; } /// <summary> /// 楠岃瘉鍗曟嵁娣诲姞DTO瀵硅薄 -- Gitblit v1.9.3