فهرست منبع

返回录音地址

qinchaoyue 6 ماه پیش
والد
کامیت
b1989ecd82

+ 7 - 0
src/Hotline.Application/StatisticalReport/CallReport/CallReportApplicationBase.cs

@@ -117,6 +117,7 @@ public abstract class CallReportApplicationBase : ICallReportApplication
     /// <returns></returns>
     public virtual async Task<(int, List<CallRecordOutDto>)> QueryCallsDetailInTotalAsync(BiQueryCallsDto dto, bool isAll)
     {
+        var recordPrefix = _systemSettingCacheManager.RecordPrefix;
         var query = _callNativeRepository.Queryable()
                 .LeftJoin<Order>((p, o) => p.Id == o.CallId)
                 .Where((p, o) => p.CreationTime >= dto.StartTime && p.CreationTime <= dto.EndTime && p.Direction == ECallDirection.In)
@@ -128,6 +129,12 @@ public abstract class CallReportApplicationBase : ICallReportApplication
                      OrderId = o.Id,
                      OrderNo = o.No,
                      OrderTitle = o.Title,
+                     Cdpn = p.ToNo,
+                     Cpn = p.FromNo,
+                     RecordingFileUrl = recordPrefix + p.AudioFile,
+                     RecordingFileName = p.AudioFile,
+                     RecordingBaseAddress = recordPrefix,
+                     RecordingAbsolutePath = p.AudioFile
                  }, true);
 
         if (isAll)

+ 4 - 1
src/Hotline.Share/Dtos/TrCallCenter/TrTelDao.cs

@@ -779,11 +779,14 @@ namespace Hotline.Share.Dtos.TrCallCenter
 
     public class CallRecordOutDto 
     {
-
         /// <summary>
         /// 可直接访问的通话录音地址
         /// </summary>
         public string? RecordingFileUrl { get; set; }
+        /// <summary>
+        /// 通话录音绝对路径
+        /// </summary>
+        public string? RecordingFileName { get; set; }
         public string? RecordingBaseAddress { get; set; }
         public string? RecordingAbsolutePath { get; set; }
 

+ 1 - 0
src/Hotline/Caching/Interfaces/ISystemSettingCacheManager.cs

@@ -12,5 +12,6 @@ namespace Hotline.Caching.Interfaces
         int CallInOverConnRingTime { get; }
         int SeatChaoTime { get; }
         int RingTimes { get; }
+        string RecordPrefix { get; }
     }
 }

+ 2 - 0
src/Hotline/Caching/Services/SystemSettingCacheManager.cs

@@ -49,5 +49,7 @@ namespace Hotline.Caching.Services
         public int SeatChaoTime => int.Parse(GetSetting(SettingConstants.SeatChaoTime)?.SettingValue[0]);
 
         public int RingTimes => int.Parse(GetSetting(SettingConstants.RingTimes)?.SettingValue[0]);
+
+        public string RecordPrefix => GetSetting(SettingConstants.RecordPrefix)?.SettingValue[0].Trim().ToString();
     }
 }