´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/06dccb41-87b3-48ce-b00c-0fc37ecc3657.vsidxBinary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/16db4c6a-3f42-45b5-b9ef-df469de7deae.vsidxBinary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/.vs/WIDESEAWCS_Server/FileContentIndex/18a53365-4699-4a05-a22d-52202ffc28c5.vsidxBinary files differ
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/²âÊԼܲÖ/StackerCraneJob_CSJ.cs
@@ -113,8 +113,9 @@ CommonStackerCrane? commonStackerCrane = sender as CommonStackerCrane; if (commonStackerCrane != null) { if (commonStackerCrane.GetValue<StackerCraneDBName, short>(StackerCraneDBName.WorkType) != 5) if (e.TaskNum != 0) { WriteDebug(commonStackerCrane.DeviceCode, $"读åå°ä»»å¡å®æ,ä»»å¡å·:{e.TaskNum}"); StackerCraneTaskCompleted(e.TaskNum, commonStackerCrane.DeviceCode); commonStackerCrane.SetValue(StackerCraneDBName.WorkType, 5); } ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/abd54a07-f45e-4ca1-84da-81eadaf42b49.vsidxBinary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/fdd7913b-53cb-4968-b953-7b7a7fdaa3e3.vsidxBinary files differ
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/.vs/WIDESEA_WMSServer/FileContentIndex/read.lock
´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs
@@ -81,7 +81,7 @@ try { Dt_Warehouse? warehouse = null; if (model.ItemType == MaterielTypeEnum.RawMateriel.ObjToInt()) if (model.ItemType.ObjToInt() == MaterielTypeEnum.RawMateriel.ObjToInt()) { warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == model.WaId); if (warehouse == null) @@ -89,7 +89,7 @@ return WebResponseContent.Instance.Error("æªæ¾å°ä»åºä¿¡æ¯"); } } if (model.OperateType == 0) if (model.OperateType.ObjToInt() == 0) { Dt_MaterielInfo materielInfo = new Dt_MaterielInfo() { @@ -100,11 +100,11 @@ MaterielModel = model.Model, MaterielName = model.Name, MaterielSize = model.Size, MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType, MaterielSourceType = (MaterielSourceTypeEnum)(model.ItemSourceType.ObjToInt()), MaterielSpec = warehouse == null ? "空" : model.StandType, MaterielState = (EnableEnum)model.State, MaterielState = (EnableEnum)(model.State.ObjToInt()), MaterielThickness = model.Thickness, MaterielType = (MaterielTypeEnum)model.ItemType, MaterielType = (MaterielTypeEnum)(model.ItemType.ObjToInt()), MaterielUnit = model.Unit == null ? "" : model.Unit, MaterielVersion = model.MaterialVersion, MaterielWide = model.Wide, @@ -112,7 +112,7 @@ }; BaseDal.AddData(materielInfo); } else if (model.OperateType == 1) else if (model.OperateType.ObjToInt() == 1) { Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code); if (materielInfo == null) @@ -127,18 +127,18 @@ materielInfo.MaterielModel = model.Model; materielInfo.MaterielName = model.Name; materielInfo.MaterielSize = model.Size; materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType; materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType.ObjToInt(); materielInfo.MaterielSpec = warehouse == null ? "" : model.StandType; materielInfo.MaterielState = (EnableEnum)model.State; materielInfo.MaterielState = (EnableEnum)model.State.ObjToInt(); materielInfo.MaterielThickness = model.Thickness; materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType; materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType.ObjToInt(); materielInfo.MaterielUnit = model.Unit == null ? "" : model.Unit; materielInfo.MaterielVersion = model.MaterialVersion; materielInfo.MaterielWide = model.Wide; materielInfo.WarehouseId = warehouse == null ? 0 : warehouse.WarehouseId; BaseDal.UpdateData(materielInfo); } else if (model.OperateType == 2) else if (model.OperateType.ObjToInt() == 2) { Dt_MaterielInfo materielInfo = BaseDal.QueryFirst(x => x.MaterielCode == model.Code); if (materielInfo == null) @@ -152,7 +152,7 @@ } catch (Exception ex) { return WebResponseContent.Instance.Error(ex.Message); return WebResponseContent.Instance.OK(ex.Message); } } } ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/MaterielInfoDTO.cs
@@ -31,7 +31,7 @@ /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int ItemType { get; set; } public string ItemType { get; set; } /// <summary> /// @@ -42,7 +42,7 @@ /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int ItemSourceType { get; set; } public string ItemSourceType { get; set; } /// <summary> /// @@ -53,7 +53,6 @@ /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public string MaterialVersion { get; set; } /// <summary> @@ -66,30 +65,28 @@ /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int Length { get; set; } public float Length { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int Thickness { get; set; } public float Thickness { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int Wide { get; set; } public float Wide { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public string Model { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public string Color { get; set; } /// <summary> @@ -98,41 +95,36 @@ [PropertyValidate("", NotNullAndEmpty = true)] public string MaterialTG { get; set; } ///// <summary> ///// ///// </summary> //[PropertyValidate("", NotNullAndEmpty = true)] //public string Spare1 { get; set; } /// <summary> /// /// </summary> public string Spare1 { get; set; } ///// <summary> ///// ///// </summary> //[PropertyValidate("", NotNullAndEmpty = true)] //public string Spare2 { get; set; } /// <summary> /// /// </summary> public string Spare2 { get; set; } ///// <summary> ///// ///// </summary> //[PropertyValidate("", NotNullAndEmpty = true)] //public string Spare3 { get; set; } /// <summary> /// /// </summary> public string Spare3 { get; set; } ///// <summary> ///// ///// </summary> //[PropertyValidate("", NotNullAndEmpty = true)] //public string Spare4 { get; set; } /// <summary> /// /// </summary> public string Spare4 { get; set; } ///// <summary> ///// ///// </summary> //[PropertyValidate("", NotNullAndEmpty = true)] //public string Spare5 { get; set; } /// <summary> /// /// </summary> public string Spare5 { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int State { get; set; } public string State { get; set; } /// <summary> /// @@ -143,19 +135,19 @@ /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] public int OperateType { get; set; } [PropertyValidate("", NotNullAndEmpty = false)] public string OperateType { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] [PropertyValidate("", NotNullAndEmpty = false)] public string UserDef01 { get; set; } /// <summary> /// /// </summary> [PropertyValidate("", NotNullAndEmpty = true)] [PropertyValidate("", NotNullAndEmpty = false)] public string UserDef04 { get; set; } /// <summary> ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_DTO/ERP/Root.cs
@@ -21,6 +21,10 @@ /// <summary> /// /// </summary> public string Message { get; set; } /// <summary> /// /// </summary> [PropertyValidate("å 容", NotNullAndEmpty = true)] public T Content { get; set; } } ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/InboundOrderService.cs
@@ -752,28 +752,33 @@ { return WebResponseContent.Instance.Error($"æªæ¾å°åºåæç»ä¿¡æ¯"); } List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.QueryData(x => stockInfoDetails.Select(x => x.StockId).ToList().Contains(x.Id)); //è·åè¯¥å ¥åºåææåºå List<Dt_StockInfo> stockInfos = _stockRepository.StockInfoRepository.Db.Queryable<Dt_StockInfo>().Where(x => stockInfoDetails.GroupBy(x => x.StockId).Select(x => x.Key).Contains(x.Id)).Includes(x => x.Details).ToList(); Dt_Warehouse warehouse = _warehouseService.Repository.QueryFirst(x => x.WarehouseId == inboundOrder.WarehouseId); if (warehouse == null) { return WebResponseContent.Instance.Error($"æªæ¾å°ä»åºä¿¡æ¯"); } List<ERPInboundDetailModel>? detailModels = new List<ERPInboundDetailModel>(); foreach (var item in stockInfoDetails) foreach (var stockInfo in stockInfos) { ERPInboundDetailModel detailModel = new ERPInboundDetailModel() foreach (var item in stockInfo.Details.GroupBy(x=>x.InboundOrderRowNo).Select(x=>x.Key)) { ExpiryDate = item.EffectiveDate ?? "", LocationCode = warehouse.WarehouseCode, MaterialsCode = item.MaterielCode, MfgDate = item.ProductionDate ?? "", QtyCustoms = "0", Quantity = item.StockQuantity.ToString(), Rack = stockInfos.FirstOrDefault(x => x.Id == item.StockId).LocationCode, ReceiptCode = inboundOrder.UpperOrderNo, ReceiptSerNo = item.InboundOrderRowNo.ToString() }; detailModels.Add(detailModel); Dt_StockInfoDetail? dt_StockInfoDetail = stockInfo.Details.Where(x => x.InboundOrderRowNo == item).FirstOrDefault(); ERPInboundDetailModel detailModel = new ERPInboundDetailModel() { ExpiryDate = dt_StockInfoDetail?.EffectiveDate ?? "", LocationCode = warehouse.WarehouseCode, MaterialsCode = dt_StockInfoDetail.MaterielCode, MfgDate = dt_StockInfoDetail.ProductionDate ?? "", QtyCustoms = "0", Quantity = stockInfo.Details.Where(x => x.InboundOrderRowNo == item).Sum(x => x.StockQuantity).ToString(), Rack = stockInfo.LocationCode, ReceiptCode = inboundOrder.UpperOrderNo, ReceiptSerNo = item.ToString() }; detailModels.Add(detailModel); } } ERPInboundModel model = new ERPInboundModel() { ´úÂë¹ÜÀí/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/TaskService.cs
@@ -198,15 +198,20 @@ stockInfo.LocationCode = locationInfo.LocationCode; #region ç©ºç®±å ¥åº/æ£éååº if (task.TaskType == TaskTypeEnum.InEmpty.ObjToInt() || task.TaskType == TaskTypeEnum.InPick.ObjToInt()) #region ç©ºç®±å ¥åº/æ£éååº/çäº§éæ if (task.TaskType == TaskTypeEnum.InEmpty.ObjToInt() || task.TaskType == TaskTypeEnum.InPick.ObjToInt() || task.TaskType==TaskTypeEnum.ProductionReturn.ObjToInt()) { stockInfo.StockStatus = StockStatusEmun.å ¥åºå®æ.ObjToInt(); task.TaskStatus = TaskStatusEnum.Finish.ObjToInt(); stockInfo.Details.ForEach(x => { x.Status = StockStatusEmun.å ¥åºå®æ.ObjToInt(); }); _unitOfWorkManage.BeginTran(); BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.äººå·¥å®æ : OperateTypeEnum.èªå¨å®æ); _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.InStock, stockInfo.WarehouseId); _stockRepository.StockInfoRepository.UpdateData(stockInfo); _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details); _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted); _unitOfWorkManage.CommitTran(); return WebResponseContent.Instance.OK(); @@ -214,51 +219,54 @@ #endregion Dt_InboundOrder? inboundOrder = _inboundRepository.InboundOrderRepository.Db.Queryable<Dt_InboundOrder>().Where(x => x.InboundOrderNo == stockInfo.Details.FirstOrDefault().OrderNo).Includes(x => x.Details).First(); if (inboundOrder == null) { return WebResponseContent.Instance.Error($"对åºå ¥åºåä¸åå¨"); } //æ¥è¯¢å宿çå ¥åºæç»æ°é int overCount = inboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).ToList().Count; Dt_InboundOrderDetail? inboundOrderDetail = null; if (stockInfo.StockStatus == StockStatusEmun.å ¥åºç¡®è®¤.ObjToInt()) //æ åå ¥åºæµç¨æ¥æ¾å ¥åºåæ® if (inboundOrder != null && stockInfo.StockStatus == StockStatusEmun.å ¥åºç¡®è®¤.ObjToInt()) { inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.RowNo == stockInfo.Details.FirstOrDefault()?.InboundOrderRowNo); foreach (var item in stockInfo.Details) //æ¥è¯¢å宿çå ¥åºæç»æ°é int overCount = inboundOrder.Details.Where(x => x.OrderDetailStatus == OrderDetailStatusEnum.Over.ObjToInt()).ToList().Count; if (stockInfo.StockStatus == StockStatusEmun.å ¥åºç¡®è®¤.ObjToInt()) { if (inboundOrderDetail == null) inboundOrderDetail = inboundOrder.Details.FirstOrDefault(x => x.RowNo == stockInfo.Details.FirstOrDefault()?.InboundOrderRowNo); foreach (var item in stockInfo.Details) { continue; } ERPInboundDetailModel detailModel = new ERPInboundDetailModel() { ExpiryDate = item.EffectiveDate ?? "", LocationCode = warehouse.WarehouseCode, MaterialsCode = item.MaterielCode, MfgDate = item.ProductionDate ?? "", QtyCustoms = "0", Quantity = item.StockQuantity.ToString(), Rack = stockInfo.LocationCode, ReceiptCode = inboundOrder.UpperOrderNo, ReceiptSerNo = item.InboundOrderRowNo.ToString() }; inboundOrderDetail.OverInQuantity += item.StockQuantity; if (inboundOrderDetail.OverInQuantity == inboundOrderDetail.OrderQuantity) { inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt(); overCount += 1; } else if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt()) { inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Inbounding.ObjToInt(); if (inboundOrderDetail == null) { continue; } ERPInboundDetailModel detailModel = new ERPInboundDetailModel() { ExpiryDate = item.EffectiveDate ?? "", LocationCode = warehouse.WarehouseCode, MaterialsCode = item.MaterielCode, MfgDate = item.ProductionDate ?? "", QtyCustoms = "0", Quantity = item.StockQuantity.ToString(), Rack = stockInfo.LocationCode, ReceiptCode = inboundOrder.UpperOrderNo, ReceiptSerNo = item.InboundOrderRowNo.ToString() }; inboundOrderDetail.OverInQuantity += item.StockQuantity; if (inboundOrderDetail.OverInQuantity == inboundOrderDetail.OrderQuantity) { inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Over.ObjToInt(); overCount += 1; } else if (inboundOrderDetail.OrderDetailStatus == OrderDetailStatusEnum.New.ObjToInt()) { inboundOrderDetail.OrderDetailStatus = OrderDetailStatusEnum.Inbounding.ObjToInt(); } } } if (inboundOrder.Details.Count == overCount) { inboundOrder.OrderStatus = InOrderStatusEnum.å ¥åºå®æ.ObjToInt(); } if (inboundOrder.OrderStatus == InOrderStatusEnum.æªå¼å§.ObjToInt()) { inboundOrder.OrderStatus = InOrderStatusEnum.å ¥åºä¸.ObjToInt(); } } if (inboundOrder.Details.Count == overCount) { inboundOrder.OrderStatus = InOrderStatusEnum.å ¥åºå®æ.ObjToInt(); } if ((stockInfo.StockStatus == StockStatusEmun.å ¥åºç¡®è®¤.ObjToInt() || stockInfo.StockStatus == StockStatusEmun.æå¨ç»çå ¥åºç¡®è®¤.ObjToInt()) && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString()) { foreach (var model in stockInfo.Details) @@ -266,7 +274,6 @@ TestSynStock(new TestToolSynInfo() { ToolCode = model.BatchNo, MaterialName = model.MaterielName, Life = int.TryParse(model.Remark, out int val) ? val : 1000 }); } } //æµè¯æ¶å ¥åºåºåç¶æ if (task.TaskType == TaskTypeEnum.Inbound.ObjToInt() && warehouse.WarehouseCode == WarehouseEnum.HA64.ToString() && stockInfo.StockStatus != StockStatusEmun.æå¨ç»çå ¥åºç¡®è®¤.ObjToInt()) { @@ -275,14 +282,13 @@ else { stockInfo.StockStatus = StockStatusEmun.å ¥åºå®æ.ObjToInt(); } stockInfo.Details.ForEach(x => { x.Status = StockStatusEmun.å ¥åºå®æ.ObjToInt(); }); //æ´æ°ä»»å¡ç¶æ task.TaskStatus = (int)TaskStatusEnum.Finish; task.TaskStatus = TaskStatusEnum.Finish.ObjToInt(); _unitOfWorkManage.BeginTran(); BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId > 0 ? OperateTypeEnum.äººå·¥å®æ : OperateTypeEnum.èªå¨å®æ); _basicService.LocationInfoService.UpdateLocationStatus(locationInfo, stockInfo.PalletType, LocationStatusEnum.InStock, stockInfo.WarehouseId); @@ -290,13 +296,14 @@ _stockRepository.StockInfoDetailRepository.UpdateData(stockInfo.Details); _recordService.LocationStatusChangeRecordSetvice.AddLocationStatusChangeRecord(locationInfo, lastStatus, LocationStatusEnum.InStock, LocationChangeType.InboundCompleted); _recordService.StockQuantityChangeRecordService.AddStockChangeRecord(stockInfo, stockInfo.Details, stockInfo.Details.Sum(x => x.StockQuantity), stockInfo.Details.Sum(x => x.StockQuantity), StockChangeTypeEnum.Inbound, taskNum); _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder); if (inboundOrderDetail != null) if (inboundOrder != null) { _inboundRepository.InboundOrderRepository.UpdateData(inboundOrder); _inboundRepository.InboundOrderDetailRepository.UpdateData(inboundOrderDetail); } _unitOfWorkManage.CommitTran(); if (inboundOrder.OrderStatus == InOrderStatusEnum.å ¥åºå®æ.ObjToInt()) //åå¨å ¥åºåå¹¶ç¶æä¸ºå®æç¶ææ¨éè³ERP if (inboundOrder != null && inboundOrder.OrderStatus == InOrderStatusEnum.å ¥åºå®æ.ObjToInt()) _inboundOrderService.FeedbackInboundOrder(inboundOrder); return WebResponseContent.Instance.OK(); }