zoulei 1 gadu atpakaļ
vecāks
revīzija
9ab0768076

+ 5 - 9
Service/CheckServer/AddIns/CheckHelper.cs

@@ -14,7 +14,7 @@ namespace CheckServer
    
     public static class CheckHelper
     {
-        public static async Task<IEnumerable<DmcResult>> DmcCheckAsync(string fileName, double fsHz, DmcType dmcType, double? bandKHz = null)
+        public static async Task<IEnumerable<DmcResult>> DmcCheckAsync(string fileName, double fsHz, EnumSigCheckTypeDto dmcType, double? bandKHz = null)
         {
             if (bandKHz == null || bandKHz.Value <= 0) bandKHz = 25;
             string dmcCmd = "all";
@@ -23,17 +23,17 @@ namespace CheckServer
             string pArguments = string.Empty;
             switch (dmcType)
             {
-                case DmcType.DAMA:
+                case EnumSigCheckTypeDto.DAMA:
                     dmcCmd = "dm";
                     if (fsHz != 96000)
                         throw new Exception("DAMA只支持96K采样率");
                     pArguments = $"{dmcCmd} \"{fileName}\" -c true";//-c包含ccow
                     break;
-                case DmcType.IBS:
+                case EnumSigCheckTypeDto.IBS:
                     dmcCmd = "nd";
                     pArguments = $"{dmcCmd} \"{fileName}\" -w {bandKHz}";// -f {fs}" -c --dmfirst";
                     break;
-                case DmcType.Ky5758:
+                case EnumSigCheckTypeDto.Ky5758:
                     pFileName = Path.Combine(dmp.StartInfo.WorkingDirectory, "AddIns\\enc.exe");
                     //enc.exe enc-test.dat 0.096 5 0全部文件
                     pArguments = $"{fileName} {fsHz * 1e-6} {5} {0}";
@@ -61,7 +61,7 @@ namespace CheckServer
              });
         }
 
-        private static IEnumerable<DmcResult> ConvertDmcResult(DmcType type, string res, double tm)
+        private static IEnumerable<DmcResult> ConvertDmcResult(EnumSigCheckTypeDto type, string res, double tm)
         {
             var lines = res.Split(Environment.NewLine.ToArray(), StringSplitOptions.RemoveEmptyEntries);
             foreach (var line in lines)
@@ -74,10 +74,6 @@ namespace CheckServer
                 if (items.Length >= 3)
                     userName = items[2];
                 var item = new DmcResult(start, length, userName, (int)tm);
-                if (type == DmcType.DAMA)
-                    item.ModType = "BPSK";
-                else
-                    item.ModType = string.Empty;
                 item.DmcType = type.GetEnumDisplayName();
                 yield return item;
             }

+ 6 - 6
Service/CheckServer/Controllers/CheckController.cs

@@ -29,19 +29,19 @@ namespace CheckServer.Controllers
                 dto.file1 = GetLocalFile(dto.file1);
                 List<DetectResDto> list = new List<DetectResDto>();
                 List<DmcResult> dmcResults = new List<DmcResult>();
-                if (dto.dmcType.HasFlag(DmcType.DAMA))
+                if (dto.dmcType.HasFlag(EnumSigCheckTypeDto.DAMA))
                 {
-                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, DmcType.DAMA, dto.band);
+                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, EnumSigCheckTypeDto.DAMA, dto.band);
                     dmcResults.AddRange(dmcResult);
                 }
-                if (dto.dmcType.HasFlag(DmcType.IBS))
+                if (dto.dmcType.HasFlag(EnumSigCheckTypeDto.IBS))
                 {
-                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, DmcType.IBS, dto.band);
+                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, EnumSigCheckTypeDto.IBS, dto.band);
                     dmcResults.AddRange(dmcResult);
                 }
-                if (dto.dmcType.HasFlag(DmcType.Ky5758))
+                if (dto.dmcType.HasFlag(EnumSigCheckTypeDto.Ky5758))
                 {
-                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, DmcType.Ky5758, dto.band);
+                    var dmcResult = await CheckHelper.DmcCheckAsync(dto.file1, dto.fsHz, EnumSigCheckTypeDto.Ky5758, dto.band);
                     dmcResults.AddRange(dmcResult);
                 }
 

+ 1 - 1
Service/X2D1NoRefTaskServer/App.config

@@ -9,7 +9,7 @@
 		<add key="SvrID" value="001" />
 
 		<!--本地http端口-->
-		<add key="LocalHttpPort" value="8920" />
+		<add key="LocalHttpPort" value="8930" />
 
 		<!--融合定位平台Http地址-->
 		<add key="PosPlatformAddr" value="http://127.0.0.1:8091" />

+ 2 - 2
Service/X2D1NoRefTaskServer/Service/HistoryTaskService.cs

@@ -175,10 +175,10 @@ namespace X2D1NoRefTaskServer.Service
                                 DetectDto detectDto = new DetectDto()
                                 {
                                     file1 = cdbFile,//11局使用上行泄露信号进行检测
-                                    dmcType = (DmcType)freqInfo.SigType,//上行信号检测目前的算法只能使用基于能量的KY或IBS检测
+                                    dmcType =freqInfo.SigType,//上行信号检测目前的算法只能使用基于能量的KY或IBS检测
                                     fsHz = minfo.FsHz,
                                 };
-                                detectDto.dmcType = detectDto.dmcType & ~DmcType.DAMA;//DAMA不支持上行信号检测,在这里移除掉
+                                detectDto.dmcType = detectDto.dmcType & ~EnumSigCheckTypeDto.DAMA;//DAMA不支持上行信号检测,在这里移除掉
                                 var deteResp = await HttpHelper.PostRequestAsync<List<DetectResDto>>(baseUrl + "DetectCg/DetectCalc", detectDto, token: cts.Token);
                                 if (deteResp.code != 200)
                                 {

+ 1 - 1
Service/X2D1TaskServer54/App.config

@@ -5,7 +5,7 @@
 		<add key="SvrID" value="001" />
 
 		<!--本地http端口-->
-		<add key="LocalHttpPort" value="8920" />
+		<add key="LocalHttpPort" value="8940" />
 
 		<!--定位平台Http地址-->
 		<add key="PosPlatformAddr" value="http://127.0.0.1:8091" />

+ 5 - 5
XdCxRhDW.App/CorTools/DetectToolForm.cs

@@ -197,22 +197,22 @@ namespace XdCxRhDW.App.CorTools
             {
                 return;
             }
-            DmcType dmcType = DmcType.DAMA;
+            EnumSigCheckTypeDto dmcType = EnumSigCheckTypeDto.DAMA;
             if (ckKY.Checked)
             {
-                dmcType |= DmcType.Ky5758;
+                dmcType |= EnumSigCheckTypeDto.Ky5758;
             }
             if (ckIBS.Checked)
             {
-                dmcType |= DmcType.IBS;
+                dmcType |= EnumSigCheckTypeDto.IBS;
             }
             if (chkDama.Checked)
             {
-                dmcType |= DmcType.DAMA;
+                dmcType |= EnumSigCheckTypeDto.DAMA;
             }
             else
             {
-                dmcType = dmcType & ~DmcType.DAMA;
+                dmcType = dmcType & ~EnumSigCheckTypeDto.DAMA;
             }
             DetectDto dto = new DetectDto();
             dto.dmcType = dmcType;

+ 8 - 28
XdCxRhDw.Dto/DetectDto.cs

@@ -23,7 +23,7 @@ namespace XdCxRhDW.Dto
         /// <summary>
         /// 检测类型
         /// </summary>
-        public DmcType dmcType { get; set; }
+        public EnumSigCheckTypeDto dmcType { get; set; }
 
         /// <summary>
         /// 采样率 Hz
@@ -44,7 +44,7 @@ namespace XdCxRhDW.Dto
         /// <returns></returns>
         public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
         {
-            var fields = typeof(DmcType).GetFields().Where(p => p.FieldType.IsEnum);
+            var fields = typeof(EnumSigCheckTypeDto).GetFields().Where(p => p.FieldType.IsEnum);
             bool hasError = true;
             foreach (var field in fields)
             {
@@ -59,11 +59,15 @@ namespace XdCxRhDW.Dto
                 yield return new ValidationResult("检测类型错误", new[] { nameof(this.dmcType) });
             else
             {
-                if (dmcType.HasFlag(DmcType.DAMA) && fsHz != 96000)
+                if (dmcType.HasFlag(EnumSigCheckTypeDto.Normal))
+                {
+                    yield return new ValidationResult("常规信号不需要检测", new[] { nameof(this.dmcType) });
+                }
+                if (dmcType.HasFlag(EnumSigCheckTypeDto.DAMA) && fsHz != 96000)
                 {
                     yield return new ValidationResult("DAMA检测采样率只支持96K", new[] { nameof(this.fsHz) });
                 }
-                if (dmcType.HasFlag(DmcType.IBS) && band != 5 && band != 25)
+                if (dmcType.HasFlag(EnumSigCheckTypeDto.IBS) && band != 5 && band != 25)
                 {
                     yield return new ValidationResult("IBS检测信号带宽只支持5K、25K两种", new[] { nameof(this.band) });
                 }
@@ -71,28 +75,4 @@ namespace XdCxRhDW.Dto
             yield return null;
         }
     }
-    /// <summary>
-    /// 检测类型
-    /// </summary>
-    [Flags]
-    public enum DmcType
-    {
-        /// <summary>
-        /// DAMA检测
-        /// </summary>
-        [Display(Name = "DAMA检测")]
-        DAMA = 1,
-
-        /// <summary>
-        /// IBS检测
-        /// </summary>
-        [Display(Name = "IBS检测")]
-        IBS = 2,
-
-        /// <summary>
-        /// 能量检测
-        /// </summary>
-        [Display(Name = "能量检测")]
-        Ky5758 = 4
-    }
 }