From 0e42f871905f207658d822fcbe29aeb57b2156af Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周三, 21 5月 2025 16:18:01 +0800 Subject: [PATCH] 修复查询bug --- PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/CallMaterialOrderAppService.cs | 103 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 79 insertions(+), 24 deletions(-) diff --git a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/CallMaterialOrderAppService.cs b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/CallMaterialOrderAppService.cs index 6be99b8..bf336a6 100644 --- a/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/CallMaterialOrderAppService.cs +++ b/PipeLineLems/server/src/CMS.Plugin.PipeLineLems.Application/Implements/CallMaterialOrderAppService.cs @@ -10,6 +10,7 @@ using Volo.Abp.Data; using Volo.Abp.ObjectExtending; using Volo.Abp.ObjectMapping; +using CmsQueryExtensions.Entitys; namespace CMS.Plugin.PipeLineLems.Application.Implements; @@ -18,15 +19,15 @@ /// </summary> public class CallMaterialOrderAppService : CMSPluginAppService, ICallMaterialOrderAppService { - private readonly ICallMaterialOrderRepository callMaterialOrderRepository; + private readonly ICallMaterialOrderRepository _callMaterialOrderRepository; /// <summary> /// Initializes a new instance of the <see cref="CallMaterialOrderAppService"/> class. /// </summary> /// <param name="CallMaterialOrderRepository">The task job repository.</param> - public CallMaterialOrderAppService(ICallMaterialOrderRepository _CallMaterialOrderRepository) + public CallMaterialOrderAppService(ICallMaterialOrderRepository callMaterialOrderRepository) { - callMaterialOrderRepository = _CallMaterialOrderRepository; + _callMaterialOrderRepository = callMaterialOrderRepository; } /// <summary> @@ -36,7 +37,7 @@ /// <returns></returns> public virtual async Task<CallMaterialOrderDto> GetAsync(Guid id) { - return ObjectMapper.Map<CallMaterialOrder, CallMaterialOrderDto>(await callMaterialOrderRepository.GetAsync(id)); + return ObjectMapper.Map<CallMaterialOrder, CallMaterialOrderDto>(await _callMaterialOrderRepository.GetAsync(id)); } /// <summary> @@ -60,8 +61,8 @@ #endregion - var count = await callMaterialOrderRepository.GetCountAsync(whereConditions); - var list = await callMaterialOrderRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); + var count = await _callMaterialOrderRepository.GetCountAsync(whereConditions); + var list = await _callMaterialOrderRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); return new PagedResultDto<CallMaterialOrderDto>(count, ObjectMapper.Map<List<CallMaterialOrder>, List<CallMaterialOrderDto>>(list)); } @@ -99,20 +100,21 @@ { await CheckCreateOrUpdateDtoAsync(input); - var exist = await callMaterialOrderRepository.NameExistAsync(input.DataIdentifier); + var exist = await _callMaterialOrderRepository.NameExistAsync(input.DataIdentifier); if (exist) { throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.DataIdentifier]); } - var maxSort = await callMaterialOrderRepository.GetMaxSortAsync(); + var maxSort = await _callMaterialOrderRepository.GetMaxSortAsync(); var sort = input.Sort ?? maxSort; var insertObj = ObjectMapper.Map<CallMaterialOrderCreateDto, CallMaterialOrder>(input); insertObj.Sort = sort; input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); - await callMaterialOrderRepository.InsertAsync(insertObj); + insertObj.CreatorName = input.CreatorName;//鍒涘缓浜� + await _callMaterialOrderRepository.InsertAsync(insertObj); //if (input.Sort.HasValue && insertObj.Sort != maxSort) //{ @@ -133,8 +135,8 @@ { await CheckCreateOrUpdateDtoAsync(input); - var updateObj = await callMaterialOrderRepository.GetAsync(id); - var exist = await callMaterialOrderRepository.NameExistAsync(input.DataIdentifier, updateObj.Id); + var updateObj = await _callMaterialOrderRepository.GetAsync(id); + var exist = await _callMaterialOrderRepository.NameExistAsync(input.DataIdentifier, updateObj.Id); if (exist) { throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.DataIdentifier]); @@ -145,6 +147,7 @@ updateObj.DataIdentifier = input.DataIdentifier; updateObj.MaterialMode = input.MaterialMode; + updateObj.MaterialBatch = input.MaterialBatch; updateObj.CallMaterialStatus = input.CallMaterialStatus; updateObj.Quantity = input.Quantity; updateObj.WmsRetResult = input.WmsRetResult; @@ -152,7 +155,9 @@ updateObj.Remark = input.Remark; - await callMaterialOrderRepository.UpdateAsync(updateObj); + updateObj.LastModifierName = input.LastModifierName;//淇敼浜� + + await _callMaterialOrderRepository.UpdateAsync(updateObj); return ObjectMapper.Map<CallMaterialOrder, CallMaterialOrderDto>(updateObj); } @@ -162,22 +167,22 @@ /// </summary> /// <param name="ids"></param> /// <returns></returns> - public async Task<List<CallMaterialOrderDto>> CloneAsync(IEnumerable<Guid> ids) + public async Task<List<CallMaterialOrderDto>> CloneAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser) { //var callMaterialOrders = new List<CallMaterialOrder>(); //if (ids != null) //{ - // var sort = await callMaterialOrderRepository.GetMaxSortAsync(); + // var sort = await _callMaterialOrderRepository.GetMaxSortAsync(); // foreach (var id in ids) // { - // var CallMaterialOrder = await callMaterialOrderRepository.FindAsync(id); + // var CallMaterialOrder = await _callMaterialOrderRepository.FindAsync(id); // if (CallMaterialOrder != null) // { // var name = CallMaterialOrder.Name + CallMaterialOrderConsts.CloneTag; // var notExist = false; // while (!notExist) // { - // var exist = await callMaterialOrderRepository.NameExistAsync(name); + // var exist = await _callMaterialOrderRepository.NameExistAsync(name); // if (exist || callMaterialOrders.Any(x => x.Name == name)) // { // name += CallMaterialOrderConsts.CloneTag; @@ -187,7 +192,7 @@ // notExist = true; // } - // //CallMaterialOrder = await callMaterialOrderRepository.InsertAsync(CallMaterialOrder.Clone(GuidGenerator.Create(), name, sort++)); + // //CallMaterialOrder = await _callMaterialOrderRepository.InsertAsync(CallMaterialOrder.Clone(GuidGenerator.Create(), name, sort++)); // callMaterialOrders.Add(CallMaterialOrder); // } // } @@ -204,7 +209,7 @@ /// <returns></returns> public virtual Task DeleteAsync(Guid id) { - return callMaterialOrderRepository.DeleteAsync(id); + return _callMaterialOrderRepository.DeleteAsync(id); } /// <summary> @@ -212,12 +217,34 @@ /// </summary> /// <param name="ids"></param> /// <returns></returns> - public async Task DeleteManyAsync(IEnumerable<Guid> ids) + public async Task DeleteManyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser) { foreach (var id in ids) { await DeleteAsync(id); } + } + + /// <summary> + /// 鐗╃悊鍒犻櫎鍙枡鍗曡〃 + /// </summary> + /// <param name="id">涓婚敭ID</param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + public virtual async Task DeletePermanentlyAsync(Guid id, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default) + { + _callMaterialOrderRepository.DeletePermanentlyAsync(id); + } + + /// <summary> + /// 鎵归噺鐗╃悊鍒犻櫎鍙枡鍗曡〃锛堢洿鎺ュ垹闄わ紝涓嶈蒋鍒犻櫎锛� + /// </summary> + /// <param name="ids">瑕佸垹闄ょ殑涓婚敭ID鍒楄〃</param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + public virtual async Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default) + { + _callMaterialOrderRepository.BatchDeletePermanentlyAsync(ids); } /// <summary> @@ -228,7 +255,7 @@ /// <returns></returns> public virtual async Task AdjustSortAsync(Guid id, int sort) { - var list = await callMaterialOrderRepository.GetListAsync(null, nameof(CallMaterialOrder.Sort)); + var list = await _callMaterialOrderRepository.GetListAsync(null, nameof(CallMaterialOrder.Sort)); if (list != null && list.Any()) { var initSort = 1; @@ -255,7 +282,7 @@ } } - await callMaterialOrderRepository.UpdateManyAsync(list); + await _callMaterialOrderRepository.UpdateManyAsync(list); } /// <summary> @@ -264,7 +291,7 @@ /// <param name="input"></param> /// <returns></returns> /// <exception cref="UserFriendlyException"></exception> - public async Task ImportAsync(CallMaterialOrdersImportModel input) + public async Task ImportAsync(CallMaterialOrdersImportModel input, MyCurrentUser myCurrentUser) { Check.NotNull(input, nameof(input)); @@ -300,13 +327,14 @@ throw new UserFriendlyException(errorMsg); } - var oldCallMaterialOrder = await callMaterialOrderRepository.FindByNameAsync(impItem.DataIdentifier); + var oldCallMaterialOrder = await _callMaterialOrderRepository.FindByNameAsync(impItem.DataIdentifier); if (oldCallMaterialOrder != null) { var callMaterialOrderUpdateDto = new CallMaterialOrderUpdateDto { DataIdentifier = impItem.DataIdentifier, MaterialMode = impItem.MaterialMode, +MaterialBatch = impItem.MaterialBatch, CallMaterialStatus = impItem.CallMaterialStatus, Quantity = impItem.Quantity, WmsRetResult = impItem.WmsRetResult, @@ -323,6 +351,7 @@ { DataIdentifier = impItem.DataIdentifier, MaterialMode = impItem.MaterialMode, +MaterialBatch = impItem.MaterialBatch, CallMaterialStatus = impItem.CallMaterialStatus, Quantity = impItem.Quantity, WmsRetResult = impItem.WmsRetResult, @@ -341,6 +370,7 @@ { try { + callMaterialOrderDto.Item.CreatorName = myCurrentUser.UserAccount;//鍒涘缓浜� await CreateAsync(callMaterialOrderDto.Item); } catch (Exception e) @@ -355,6 +385,7 @@ { try { + callMaterialOrderDto.Item.LastModifierName = myCurrentUser.UserAccount;//淇敼浜� await UpdateAsync(callMaterialOrderDto.Id, callMaterialOrderDto.Item); } catch (Exception e) @@ -387,7 +418,7 @@ #endregion - var list = await callMaterialOrderRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); + var list = await _callMaterialOrderRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); var result = ObjectMapper.Map<List<CallMaterialOrder>, List<CallMaterialOrderDto>>(list); var sheets = new Dictionary<string, object> @@ -413,4 +444,28 @@ return Task.CompletedTask; } + + /// <summary> + /// 鏍规嵁鏉′欢鑾峰彇鍙枡鍗曡〃鍒楄〃 + /// </summary> + /// <param name="whereConditions"></param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + public async Task<List<CallMaterialOrder>> GetListByFilterAsync(Expression<Func<CallMaterialOrder, bool>> whereConditions, CancellationToken cancellationToken = default) + { + return await _callMaterialOrderRepository.GetListByFilterAsync(whereConditions); + } + + /// <summary> + /// 鏍规嵁鏉′欢鑾峰彇鍗曚釜鍙枡鍗曡〃 + /// </summary> + /// <param name="whereConditions"></param> + /// <param name="isMultipleThrowException">鏄惁鏌ヨ鍑哄鏉″氨鎶ラ敊</param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + /// <exception cref="UserFriendlyException"></exception> + public async Task<CallMaterialOrder> GetSingleByFilterAsync(Expression<Func<CallMaterialOrder, bool>> whereConditions, bool is鈥婱ultipleThrowException = false, CancellationToken cancellationToken = default) + { + return await _callMaterialOrderRepository.GetSingleByFilterAsync(whereConditions, is鈥婱ultipleThrowException); + } } -- Gitblit v1.9.3