diff --git a/src/SJZY.Track.Application/Services/TrackPush/TrackPushService.cs b/src/SJZY.Track.Application/Services/TrackPush/TrackPushService.cs
index f303cc4c..a862e224 100644
--- a/src/SJZY.Track.Application/Services/TrackPush/TrackPushService.cs
+++ b/src/SJZY.Track.Application/Services/TrackPush/TrackPushService.cs
@@ -57,4 +57,15 @@ public class TrackPushService : ApplicationService, ITransientDependency
{
return await _trackPushConfigRepository.GetDetailAsync(id);
}
+
+ ///
+ /// 轨迹推送配置内容详情
+ ///
+ ///
+ ///
+ [HttpGet("GetContentDetail")]
+ public async Task GetContentDetailAsync(int id)
+ {
+ return await _trackPushConfigRepository.GetContentDetailAsync(id);
+ }
}
\ No newline at end of file
diff --git a/src/SJZY.Track.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs b/src/SJZY.Track.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
index 9050f090..39b19ad2 100644
--- a/src/SJZY.Track.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
+++ b/src/SJZY.Track.Domain/Aggregates/TrackPushAggregate/ITrackPushConfigRepository.cs
@@ -10,4 +10,6 @@ public interface ITrackPushConfigRepository : IBasicRepository> GetContentPageAsync(GetTrackPushContentPageInputVO input);
Task GetDetailAsync(int id);
+
+ Task GetContentDetailAsync(int id);
}
\ No newline at end of file
diff --git a/src/SJZY.Track.Domain/Dtos/TrackPush/GetTrackPushContentDetailOutputVO.cs b/src/SJZY.Track.Domain/Dtos/TrackPush/GetTrackPushContentDetailOutputVO.cs
new file mode 100644
index 00000000..2bad0d5a
--- /dev/null
+++ b/src/SJZY.Track.Domain/Dtos/TrackPush/GetTrackPushContentDetailOutputVO.cs
@@ -0,0 +1,61 @@
+namespace SJZY.Track.Domain.Dtos.TrackPush;
+
+public class GetTrackPushContentDetailOutputVO
+{
+ ///
+ /// 轨迹内容代码
+ ///
+ public string Code { get; set; }
+
+ ///
+ /// 推送扩展字段
+ ///
+ public string ExpandFieldsValue { get; set; }
+
+ public int Id { get; set; }
+
+ ///
+ /// 推送单号类型
+ ///
+ public int OrderNoType { get; set; }
+
+ ///
+ /// 推送轨迹排序
+ ///
+ public int Sort { get; set; }
+
+ ///
+ /// 推送轨迹内容代码
+ ///
+ public string TrackContentCodeValue { get; set; }
+
+ ///
+ /// 轨迹内容id
+ ///
+ public int TrackContentId { get; set; }
+
+ ///
+ /// 推送轨迹内容
+ ///
+ public string TrackContentValue { get; set; }
+
+ ///
+ /// 推送轨迹内容英文
+ ///
+ public string TrackEnContentValue { get; set; }
+
+ ///
+ /// 轨迹推送配置id
+ ///
+ public int TrackPullConfigId { get; set; }
+
+ ///
+ /// 推送轨迹状态
+ ///
+ public string TrackStatusValue { get; set; }
+
+ ///
+ /// 推送轨迹时区
+ ///
+ public string TrackTimeZone { get; set; }
+}
\ No newline at end of file
diff --git a/src/SJZY.Track.Infrastructure/Repositories/TrackPushConfigRepository.cs b/src/SJZY.Track.Infrastructure/Repositories/TrackPushConfigRepository.cs
index d5180da1..d1ce352b 100644
--- a/src/SJZY.Track.Infrastructure/Repositories/TrackPushConfigRepository.cs
+++ b/src/SJZY.Track.Infrastructure/Repositories/TrackPushConfigRepository.cs
@@ -69,4 +69,17 @@ public class TrackPushConfigRepository : BasicRepository,
}, true)
.SingleAsync();
}
+
+ public async Task GetContentDetailAsync(int id)
+ {
+ return await Context.Queryable()
+ .InnerJoin((pushContent, trackContent) => pushContent.TrackContentId == trackContent.Id)
+ .Where(pushContent => pushContent.Id == id)
+ .Select((pushContent, trackContent) => new GetTrackPushContentDetailOutputVO
+ {
+ Id = pushContent.Id,
+ Code = trackContent.Code + "-" + trackContent.Content,
+ }, true)
+ .SingleAsync();
+ }
}
\ No newline at end of file