diff --git a/src/SJZY.Track.Application/Services/TrackNodeServices/TrackNodeService.cs b/src/SJZY.Track.Application/Services/TrackNode/TrackNodeService.cs similarity index 92% rename from src/SJZY.Track.Application/Services/TrackNodeServices/TrackNodeService.cs rename to src/SJZY.Track.Application/Services/TrackNode/TrackNodeService.cs index 7b8f3d3a..76506271 100644 --- a/src/SJZY.Track.Application/Services/TrackNodeServices/TrackNodeService.cs +++ b/src/SJZY.Track.Application/Services/TrackNode/TrackNodeService.cs @@ -54,6 +54,18 @@ namespace SJZY.Track.Application.Services.TrackNodeServices var resultDto = await _trackNodeRepository.GetPageList(queryParam); return resultDto; } + + /// + /// 获取详情 + /// + /// 节点id + /// + [HttpPost("GetDetail")] + public async Task GetDetail(int nodeid) + { + var resultDto = await _trackNodeRepository.GetDetail(nodeid); + return new UnifyResultDto(true,resultDto); + } /// /// 获取分页轨迹字典,下拉框用的 diff --git a/src/SJZY.Track.Domain/Aggregates/TrackNodeAggregate/ITrackNodeRepository.cs b/src/SJZY.Track.Domain/Aggregates/TrackNodeAggregate/ITrackNodeRepository.cs index 10d1cb70..6ab6f473 100644 --- a/src/SJZY.Track.Domain/Aggregates/TrackNodeAggregate/ITrackNodeRepository.cs +++ b/src/SJZY.Track.Domain/Aggregates/TrackNodeAggregate/ITrackNodeRepository.cs @@ -24,4 +24,11 @@ public interface ITrackNodeRepository:IBasicRepository /// /// Task DeleteById(long inputId); + + /// + /// 获取详情 + /// + /// + /// + Task GetDetail(long id); } \ No newline at end of file diff --git a/src/SJZY.Track.Domain/Dtos/TrackNode/TrackNodeDto.cs b/src/SJZY.Track.Domain/Dtos/TrackNode/TrackNodeDto.cs index 185f432f..401ec773 100644 --- a/src/SJZY.Track.Domain/Dtos/TrackNode/TrackNodeDto.cs +++ b/src/SJZY.Track.Domain/Dtos/TrackNode/TrackNodeDto.cs @@ -14,6 +14,11 @@ public class TrackNodeDto /// 子系统id /// public int SubSystemId { get; set; } + + /// + /// 系统名称 + /// + public string? SystemName { get; set; } /// /// 节点名称 diff --git a/src/SJZY.Track.Repository/Repositories/TrackNodeRepository.cs b/src/SJZY.Track.Repository/Repositories/TrackNodeRepository.cs index be340230..9f767780 100644 --- a/src/SJZY.Track.Repository/Repositories/TrackNodeRepository.cs +++ b/src/SJZY.Track.Repository/Repositories/TrackNodeRepository.cs @@ -11,10 +11,11 @@ public class TrackNodeRepository: BasicRepository,ITrackNodeRep var result = await Context.Queryable() .LeftJoin((t,u1)=>t.CreateUserId==u1.Id) .LeftJoin((t,u1,u2)=>t.UpdateUserId==u2.Id) + .LeftJoin((t,u1,u2,u3)=>t.SubSystemId==u3.Id) .Where((t,u1,u2)=>!t.IsDeleted&&!u1.IsDeleted&&!u2.IsDeleted) .WhereIF(!string.IsNullOrEmpty(queryParam.KeyWord), (t,u1,u2)=>t.NodeName!.Contains(queryParam.KeyWord)||t.NodeEnName!.Contains(queryParam.KeyWord)) .WhereIF(queryParam.SystemId.HasValue,(t,u1,u2)=>t.SubSystemId == queryParam.SystemId.Value) - .Select((t, u1, u2) =>new TrackNodeDto() + .Select((t, u1, u2,u3) =>new TrackNodeDto() { Id = t.Id, NodeName = t.NodeName, @@ -24,7 +25,8 @@ public class TrackNodeRepository: BasicRepository,ITrackNodeRep CreateTime = t.CreateTime, UpdateUserId = t.UpdateUserId, UpdateUserName = u2.Name, - CreateUserName = u1.Name + CreateUserName = u1.Name, + SystemName = u3.CnName }).ToPagedListAsync(queryParam.PageIndex, queryParam.PageSize); return result; @@ -50,4 +52,27 @@ public class TrackNodeRepository: BasicRepository,ITrackNodeRep { return Context.Deleteable().Where(val=>val.Id==inputId).ExecuteCommandAsync(); } + + public async Task GetDetail(long id) + { + var result = await Context.Queryable() + .LeftJoin((t, u1) => t.CreateUserId == u1.Id) + .LeftJoin((t, u1, u2) => t.UpdateUserId == u2.Id) + .LeftJoin((t, u1, u2, u3) => t.SubSystemId == u3.Id) + .Where((t, u1, u2) => !t.IsDeleted && !u1.IsDeleted && !u2.IsDeleted) + .Select((t, u1, u2, u3) => new TrackNodeDto() + { + Id = t.Id, + NodeName = t.NodeName, + NodeEnName = t.NodeEnName, + SubSystemId = t.SubSystemId, + UpdateTime = t.UpdateTime, + CreateTime = t.CreateTime, + UpdateUserId = t.UpdateUserId, + UpdateUserName = u2.Name, + CreateUserName = u1.Name, + SystemName = u3.CnName + }).FirstAsync(); + return result; + } } \ No newline at end of file