From 565c3a3d0e7fb13effb526d2d6014f70a4d23f3b Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期一, 13 一月 2025 22:06:46 +0800 Subject: [PATCH] 板材仓 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs | 63 ++++++++++++++++++++++++++----- 1 files changed, 53 insertions(+), 10 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs" index c449ae2..e360f6f 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_BasicService/Service/MaterielInfoService.cs" @@ -8,7 +8,9 @@ using WIDESEA_Common.MaterielEnum; using WIDESEA_Core; using WIDESEA_Core.BaseServices; +using WIDESEA_Core.Helper; using WIDESEA_DTO.Basic; +using WIDESEA_DTO.ERP; using WIDESEA_IBasicRepository; using WIDESEA_IBasicService; using WIDESEA_Model.Models; @@ -17,16 +19,31 @@ { public partial class MaterielInfoService : ServiceBase<Dt_MaterielInfo, IMaterielInfoRepository>, IMaterielInfoService { + /// <summary> + /// 鍒ゆ柇鐗╂枡鏄惁瀛樺湪 + /// </summary> + /// <param name="materielCode">鐗╂枡缂栧彿</param> + /// <returns></returns> public bool ExsitMateriel(string materielCode) { return BaseDal.QueryFirst(x => x.MaterielCode == materielCode) != null; } + /// <summary> + /// 鍒ゆ柇鐗╂枡鏄惁瀛樺湪 + /// </summary> + /// <param name="materielCodes">鐗╂枡缂栧彿闆嗗悎</param> + /// <returns></returns> public bool ExsitMateriels(List<string> materielCodes) { - return BaseDal.QueryFirst(x => materielCodes.Contains(x.MaterielCode)) != null; + return BaseDal.QueryData(x => materielCodes.Contains(x.MaterielCode)).Count == materielCodes.Count; } + /// <summary> + /// 鑾峰彇鐗╂枡淇℃伅 + /// </summary> + /// <param name="materielCode">鐗╂枡缂栧彿</param> + /// <returns></returns> public Dt_MaterielInfo GetMaterielInfo(string materielCode) { return BaseDal.QueryFirst(x => x.MaterielCode == materielCode); @@ -35,22 +52,48 @@ /// <summary> /// 鏌ヨ鐗╂枡淇℃伅 /// </summary> - /// <param name="materielCodes"></param> + /// <param name="materielCodes">鐗╂枡缂栧彿</param> /// <returns></returns> public List<Dt_MaterielInfo> GetMaterielInfos(List<string> materielCodes) { return BaseDal.QueryData(x => materielCodes.Contains(x.MaterielCode)); } + public WebResponseContent GetWarehouseMaterielInfos(int warehouseId) + { + try + { + List<Dt_MaterielInfo> materielInfos = BaseDal.QueryData(x => x.WarehouseId == warehouseId); + return WebResponseContent.Instance.OK(data: materielInfos); + } + catch (Exception ex) + { + return WebResponseContent.Instance.Error(ex.Message); + } + } + /// <summary> + /// 鎺ユ敹ERP鐗╂枡淇℃伅 + /// </summary> + /// <param name="model"></param> + /// <returns></returns> public WebResponseContent ReceiveMaterial(MaterielInfoDTO model) { try { + Dt_Warehouse? warehouse = null; + if (model.ItemType == MaterielTypeEnum.RawMateriel.ObjToInt()) + { + warehouse = _basicRepository.WarehouseRepository.QueryFirst(x => x.WarehouseCode == model.WaId); + if (warehouse == null) + { + return WebResponseContent.Instance.Error("鏈壘鍒颁粨搴撲俊鎭�"); + } + } if (model.OperateType == 0) { Dt_MaterielInfo materielInfo = new Dt_MaterielInfo() { - IsCheck = (WhetherEnum)model.IsCheck, + IsCheck = warehouse == null ? 0 : (WhetherEnum)model.IsCheck, MaterielCode = model.Code, MaterielInvOrgId = model.InvOrgId, MaterielLength = model.Length, @@ -58,14 +101,14 @@ MaterielName = model.Name, MaterielSize = model.Size, MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType, - MaterielSpec = "model.", + MaterielSpec = warehouse == null ? "绌�" : model.StandType, MaterielState = (EnableEnum)model.State, MaterielThickness = model.Thickness, MaterielType = (MaterielTypeEnum)model.ItemType, - MaterielUnit = model.Unit, + MaterielUnit = model.Unit == null ? "" : model.Unit, MaterielVersion = model.MaterialVersion, MaterielWide = model.Wide, - WarehouseId = model.WaId, + WarehouseId = warehouse == null ? 0 : warehouse.WarehouseId, }; BaseDal.AddData(materielInfo); } @@ -77,7 +120,7 @@ return WebResponseContent.Instance.Error($"鏈壘鍒扮墿鏂欎俊鎭�"); } - materielInfo.IsCheck = (WhetherEnum)model.IsCheck; + materielInfo.IsCheck = warehouse == null ? 0 : (WhetherEnum)model.IsCheck; materielInfo.MaterielCode = model.Code; materielInfo.MaterielInvOrgId = model.InvOrgId; materielInfo.MaterielLength = model.Length; @@ -85,14 +128,14 @@ materielInfo.MaterielName = model.Name; materielInfo.MaterielSize = model.Size; materielInfo.MaterielSourceType = (MaterielSourceTypeEnum)model.ItemSourceType; - materielInfo.MaterielSpec = model.StandType; + materielInfo.MaterielSpec = warehouse == null ? "" : model.StandType; materielInfo.MaterielState = (EnableEnum)model.State; materielInfo.MaterielThickness = model.Thickness; materielInfo.MaterielType = (MaterielTypeEnum)model.ItemType; - materielInfo.MaterielUnit = model.Unit; + materielInfo.MaterielUnit = model.Unit == null ? "" : model.Unit; materielInfo.MaterielVersion = model.MaterialVersion; materielInfo.MaterielWide = model.Wide; - materielInfo.WarehouseId = model.WaId; + materielInfo.WarehouseId = warehouse == null ? 0 : warehouse.WarehouseId; BaseDal.UpdateData(materielInfo); } else if (model.OperateType == 2) -- Gitblit v1.9.3