From 0de2dc108b9bb1b6ff3692741362a3da5cb7a068 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期四, 07 八月 2025 10:29:19 +0800 Subject: [PATCH] fix:bug --- FlexJobApi.Application/Dictionaries/Commands/DictionaryDataCommandHandler.cs | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/FlexJobApi.Application/Dictionaries/Commands/DictionaryDataCommandHandler.cs b/FlexJobApi.Application/Dictionaries/Commands/DictionaryDataCommandHandler.cs index a480570..64ebaff 100644 --- a/FlexJobApi.Application/Dictionaries/Commands/DictionaryDataCommandHandler.cs +++ b/FlexJobApi.Application/Dictionaries/Commands/DictionaryDataCommandHandler.cs @@ -1,7 +1,10 @@ 锘縰sing FlexJobApi.Core; +using Furion.DatabaseAccessor; +using Mapster; using MediatR; using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -25,11 +28,26 @@ public Task<Guid> Handle(SaveDictionaryDataCommand request, CancellationToken cancellationToken) { return request.SaveData<DictionaryData, SaveDictionaryDataCommand>( - (q, e, r) => q.Any(it => + null, + it => it.CategoryId == request.CategoryId && it.ParentId == request.ParentId && it.Code == request.Code - && it.Content == request.Content), cancellationToken); + && it.Content == request.Content + && it.Id != request.Id, + (entity) => + { + entity.Path = DbUtils.GetTreeDataPath<DictionaryData>(request.ParentId, cancellationToken).Result; + if (request.Id.HasValue) + { + DbUtils.UpdateTreeDataChildrenPath<DictionaryData>( + $"{entity.Path}/{entity.Code}/", + $"{entity.Path}/{request.Code}/", + cancellationToken).Wait(); + } + request.Adapt(entity); + }, + cancellationToken); } /// <summary> @@ -40,7 +58,7 @@ /// <returns></returns> public Task<int> Handle(SetDictionaryDataIsDisabledCommand request, CancellationToken cancellationToken) { - return request.SetIsDisable<DictionaryData>(cancellationToken: cancellationToken); + return request.SetIsDisabled<DictionaryData>(cancellationToken: cancellationToken); } } } -- Gitblit v1.9.1