From 9d23331a1bdb4b4d38216d61cd9707ef13f30aa4 Mon Sep 17 00:00:00 2001 From: zs <zhousong@weben-smart.com> Date: 周四, 15 5月 2025 14:59:44 +0800 Subject: [PATCH] 修改物料类型 --- HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsEnumAppService.cs | 40 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 39 insertions(+), 1 deletions(-) diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsEnumAppService.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsEnumAppService.cs index 2e8431a..5bb3deb 100644 --- a/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsEnumAppService.cs +++ b/HIAWms/server/src/CMS.Plugin.HIAWms.Application/Implements/WmsEnumAppService.cs @@ -1,18 +1,23 @@ 锘縰sing CMS.Plugin.HIAWms.Application.Contracts.Dtos.CommonDto; using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsEnumDto; +using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialType; using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsStore; using CMS.Plugin.HIAWms.Application.Contracts.Services; using CMS.Plugin.HIAWms.Domain.Shared.Enums; using CMS.Plugin.HIAWms.Domain.WmsAreas; using CMS.Plugin.HIAWms.Domain.WmsMaterials; +using CMS.Plugin.HIAWms.Domain.WmsMaterialTypes; using CMS.Plugin.HIAWms.Domain.WmsPlaces; using CMS.Plugin.HIAWms.Domain.WmsStores; using CmsQueryExtensions; +using CmsQueryExtensions.Extension; using System; using System.Collections.Generic; using System.Linq; +using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; +using CMS.Plugin.HIAWms.Domain.WmsMaterialTypes; using static CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsArea.WmsAreaCreateOrUpdateDtoBase; using static CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsPlace.WmsPlaceCreateOrUpdateDtoBase; @@ -27,13 +32,15 @@ private readonly IWmsAreaRepository _wmsAreaRepository; private readonly IWmsPlaceRepository _wmsPlaceRepository; private readonly IWmsMaterialRepository _wmsMaterialRepository; + private readonly IWmsMaterialTypeRepository _WmsMaterialTypeRepository; - public WmsEnumAppService(IWmsStoreRepository storeRepository, IWmsAreaRepository wmsAreaRepository, IWmsPlaceRepository wmsPlaceRepository, IWmsMaterialRepository wmsMaterialRepository) + public WmsEnumAppService(IWmsStoreRepository storeRepository, IWmsAreaRepository wmsAreaRepository, IWmsPlaceRepository wmsPlaceRepository, IWmsMaterialRepository wmsMaterialRepository, IWmsMaterialTypeRepository wmsMaterialTypeRepository) { _storeRepository = storeRepository; _wmsAreaRepository = wmsAreaRepository; _wmsPlaceRepository = wmsPlaceRepository; _wmsMaterialRepository = wmsMaterialRepository; + _WmsMaterialTypeRepository = wmsMaterialTypeRepository; } public List<EnumItem> GetEnumDataList(WmsEnumInput enumInput) @@ -126,5 +133,36 @@ PlaceNoDesc = place.PlaceNo }).ToList(); } + + /// <summary> + /// 鑾峰彇绫诲瀷鍒楄〃 + /// </summary> + /// <returns></returns> + public async Task<List<MaterialTypeOutput>> GetMaterialTypeListAsync() + { + var queryInput = new GetWmsMaterialTypeInput(); + var whereConditions = DynamicGetQueryParams(queryInput); + var list = await _WmsMaterialTypeRepository.GetListAsync(whereConditions); + + return ObjectMapper.Map<List<WmsMaterialType>, List<MaterialTypeOutput>>(list); + } + + private FunReturnResultModel<Expression<Func<WmsMaterialType, bool>>> DynamicGetQueryParams(GetWmsMaterialTypeInput input) + { + //鍔ㄦ�佹瀯閫犳煡璇㈡潯浠� + var whereConditions = WhereConditionsExtensions.GetWhereConditions<WmsMaterialType, GetWmsMaterialTypeInput>(input); + if (!whereConditions.IsSuccess) + { + throw new Exception("鍔ㄦ�佹瀯閫犳煡璇㈡潯浠跺け璐�:" + whereConditions.ErrMsg); + } + + //涔熷彲鍐嶆鑷畾涔夋瀯寤烘煡璇㈡潯浠� + Expression<Func<WmsMaterialType, bool>> extendExpression = a => a.IsDeleted == false; + // 浣跨敤 System.Linq.PredicateBuilder 鐨� And + var pres = (System.Linq.Expressions.Expression<Func<WmsMaterialType, bool>>)(whereConditions.data); + whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression); + + return whereConditions; + } } } -- Gitblit v1.9.3