diff --git a/Cis.Application/Cb/Entity/BO/CbCameraBO.cs b/Cis.Application/Cb/Entity/BO/CbCameraBO.cs
new file mode 100644
index 0000000..7194737
--- /dev/null
+++ b/Cis.Application/Cb/Entity/BO/CbCameraBO.cs
@@ -0,0 +1,27 @@
+namespace Cis.Application.Cb;
+
+///
+/// 相机 BO
+///
+public class CbCameraBO
+{
+ ///
+ /// cbCameraId
+ ///
+ public long Id { get; set; }
+
+ ///
+ /// cbCamera 实体类
+ ///
+ public CbCamera CbCamera { get; set; }
+
+ ///
+ /// cbCameraParams 实体类
+ ///
+ public CbCameraParams CbCameraParams { get; set; }
+
+ public static CbCameraBO New(long cbCameraId, CbCamera cbCamera, CbCameraParams cbCameraParams)
+ {
+ return new() { Id = cbCameraId, CbCamera = cbCamera, CbCameraParams = cbCameraParams };
+ }
+}
\ No newline at end of file
diff --git a/Cis.Application/Cb/Entity/CbCameraParams.cs b/Cis.Application/Cb/Entity/CbCameraParams.cs
index af5e06b..8a47e72 100644
--- a/Cis.Application/Cb/Entity/CbCameraParams.cs
+++ b/Cis.Application/Cb/Entity/CbCameraParams.cs
@@ -15,11 +15,11 @@ public class CbCameraParams : EntityBase
public string Name { get; set; }
///
- /// 相机类型
+ /// 相机厂商
///
- [SugarColumn(ColumnDescription = "相机类型")]
+ [SugarColumn(ColumnDescription = "相机厂商")]
[Required]
- public int CameraType { get; set; }
+ public int Manufactor { get; set; }
///
/// sdk 端口
@@ -28,6 +28,13 @@ public class CbCameraParams : EntityBase
[Required]
public int SdkPort { get; set; }
+ ///
+ /// 相机类型
+ ///
+ [SugarColumn(ColumnDescription = "相机类型")]
+ [Required]
+ public int Type { get; set; }
+
///
/// FocusX
///
diff --git a/Cis.Application/Cb/Service/CbCameraParamsService.cs b/Cis.Application/Cb/Service/CbCameraParamsService.cs
index f13dae9..8fe4161 100644
--- a/Cis.Application/Cb/Service/CbCameraParamsService.cs
+++ b/Cis.Application/Cb/Service/CbCameraParamsService.cs
@@ -16,18 +16,20 @@ public class CbCameraParamsService : ServiceBase, ITransient
///
/// 获取实体类
///
- /// equal:cameraType,id,isDelete; like:name; between:[startTime,endTime];
+ /// equal:manufactor,type,id,isDelete; like:name; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
var exp = Expressionable.Create();
if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
exp.And(it => it.Name.Contains(name.ToString()));
- if (queryObj.TryGetValue("cameraType", StringComparison.OrdinalIgnoreCase, out JToken cameraType))
- exp.And(it => it.CameraType.Equals(cameraType));
+ if (queryObj.TryGetValue("manufactor", StringComparison.OrdinalIgnoreCase, out JToken manufactor))
+ exp.And(it => it.Manufactor.Equals(manufactor));
+ if (queryObj.TryGetValue("type", StringComparison.OrdinalIgnoreCase, out JToken type))
+ exp.And(it => it.Type.Equals(type));
if (queryObj.TryGetValue("Id", StringComparison.OrdinalIgnoreCase, out JToken Id))
exp.And(it => it.Id.Equals(Id));
if (queryObj.TryGetValue("IsDelete", StringComparison.OrdinalIgnoreCase, out JToken isDelete))
@@ -45,7 +47,7 @@ public class CbCameraParamsService : ServiceBase, ITransient
///
/// 批量获取实体类
///
- /// equal:cameraType,isDelete; like:name; between:[startTime,endTime];
+ /// equal:manufactor,type,isDelete; like:name; between:[startTime,endTime];
///
[HttpGet]
public override async Task> GetList(string queryJson = "")
@@ -55,8 +57,10 @@ public class CbCameraParamsService : ServiceBase, ITransient
var exp = Expressionable.Create();
if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
exp.And(it => it.Name.Contains(name.ToString()));
- if (queryObj.TryGetValue("cameraType", StringComparison.OrdinalIgnoreCase, out JToken cameraType))
- exp.And(it => it.CameraType.Equals(cameraType));
+ if (queryObj.TryGetValue("manufactor", StringComparison.OrdinalIgnoreCase, out JToken manufactor))
+ exp.And(it => it.Manufactor.Equals(manufactor));
+ if (queryObj.TryGetValue("type", StringComparison.OrdinalIgnoreCase, out JToken type))
+ exp.And(it => it.Type.Equals(type));
if (queryObj.TryGetValue("IsDelete", StringComparison.OrdinalIgnoreCase, out JToken isDelete))
exp.And(it => it.IsDelete.Equals(isDelete));
if (queryObj.TryGetValue("StartTime", StringComparison.OrdinalIgnoreCase, out JToken startTime)
@@ -72,11 +76,11 @@ public class CbCameraParamsService : ServiceBase, ITransient
///
/// 批量获取分页实体类
///
- /// equal:cameraType,isDelete; like:name; between:[startTime,endTime];
+ /// equal:manufactor,type,isDelete; like:name; between:[startTime,endTime];
/// index,size
///
[HttpGet]
- public override async Task> GetPageList([Required] string pagination, string queryJson="")
+ public override async Task> GetPageList([Required] string pagination, string queryJson = "")
{
Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
@@ -84,8 +88,10 @@ public class CbCameraParamsService : ServiceBase, ITransient
var exp = Expressionable.Create();
if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
exp.And(it => it.Name.Contains(name.ToString()));
- if (queryObj.TryGetValue("cameraType", StringComparison.OrdinalIgnoreCase, out JToken cameraType))
- exp.And(it => it.CameraType.Equals(cameraType));
+ if (queryObj.TryGetValue("manufactor", StringComparison.OrdinalIgnoreCase, out JToken manufactor))
+ exp.And(it => it.Manufactor.Equals(manufactor));
+ if (queryObj.TryGetValue("type", StringComparison.OrdinalIgnoreCase, out JToken type))
+ exp.And(it => it.Type.Equals(type));
if (queryObj.TryGetValue("IsDelete", StringComparison.OrdinalIgnoreCase, out JToken isDelete))
exp.And(it => it.IsDelete.Equals(isDelete));
if (queryObj.TryGetValue("StartTime", StringComparison.OrdinalIgnoreCase, out JToken startTime)
diff --git a/Cis.Application/Cb/Service/CbCameraService.cs b/Cis.Application/Cb/Service/CbCameraService.cs
index c9157ec..2fb41c7 100644
--- a/Cis.Application/Cb/Service/CbCameraService.cs
+++ b/Cis.Application/Cb/Service/CbCameraService.cs
@@ -9,8 +9,11 @@ namespace Cis.Application.Cb;
[ApiDescriptionSettings(CbInfo.GroupName, Order = CbInfo.CbCameraGroupOrder)]
public class CbCameraService : ServiceBase, ITransient
{
- public CbCameraService(SqlSugarRepository baseRep) : base(baseRep)
+ protected readonly SqlSugarRepository _cbCameraParamsRep;
+
+ public CbCameraService(SqlSugarRepository baseRep, SqlSugarRepository cbCameraParamsRep) : base(baseRep)
{
+ _cbCameraParamsRep = cbCameraParamsRep;
}
///
@@ -19,7 +22,7 @@ public class CbCameraService : ServiceBase, ITransient
/// equal:cbCameraParamsId,id,isDelete; like:ip,name; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
@@ -103,4 +106,66 @@ public class CbCameraService : ServiceBase, ITransient
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
+
+ #region BO
+
+ ///
+ /// 获取实体类 BO
+ ///
+ /// 实体类 id
+ ///
+ [HttpGet]
+ public async Task GetBO([Required] long id)
+ {
+ CbCamera camera = await _baseRep.GetByIdAsync(id);
+ if (camera == null) return null;
+ CbCameraParams cameraParams = await _cbCameraParamsRep.GetByIdAsync(camera.CbCameraParamsId);
+ if (cameraParams == null) return null;
+ CbCameraBO bo = CbCameraBO.New(camera.Id, camera, cameraParams);
+ return bo;
+ }
+
+ ///
+ /// 批量获取实体类 BO
+ ///
+ /// equal:cbCameraParamsId,isDelete; like:ip,name; between:[startTime,endTime];
+ ///
+ [HttpGet]
+ public async Task> GetBOList(string queryJson = "")
+ {
+ JObject queryObj = queryJson.ToJObject();
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("cbCameraParamsId", StringComparison.OrdinalIgnoreCase, out JToken cbCameraParamsId))
+ exp.And(it => it.CbCameraParamsId.Equals(cbCameraParamsId));
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ if (queryObj.TryGetValue("ip", StringComparison.OrdinalIgnoreCase, out JToken ip))
+ exp.And(it => it.Ip.Contains(ip.ToString()));
+ if (queryObj.TryGetValue("IsDelete", StringComparison.OrdinalIgnoreCase, out JToken isDelete))
+ exp.And(it => it.IsDelete.Equals(isDelete));
+ if (queryObj.TryGetValue("StartTime", StringComparison.OrdinalIgnoreCase, out JToken startTime)
+ && queryObj.TryGetValue("EndTime", StringComparison.OrdinalIgnoreCase, out JToken endTime))
+ exp.And(it => it.CreateTime >= startTime.ToDateTime() && it.CreateTime <= endTime.ToDateTime());
+ List cameraList = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
+ .ToListAsync();
+
+ HashSet paramsIdSet = new();
+ foreach (var item in cameraList)
+ paramsIdSet.Add(item.CbCameraParamsId);
+ List paramsList = await _cbCameraParamsRep.AsQueryable()
+ .Where(it => paramsIdSet.ToList().Contains(it.Id))
+ .ToListAsync();
+ Dictionary paramsDict = new();
+ foreach (var item in paramsList)
+ paramsDict.Add(item.Id, item);
+
+ List boList = new();
+ foreach (var item in cameraList)
+ boList.Add(CbCameraBO.New(item.Id, item, paramsDict[item.CbCameraParamsId]));
+
+ return boList;
+ }
+
+ #endregion BO
}
\ No newline at end of file
diff --git a/Cis.Application/Cis.Application.csproj b/Cis.Application/Cis.Application.csproj
index d795dc6..f6b8deb 100644
--- a/Cis.Application/Cis.Application.csproj
+++ b/Cis.Application/Cis.Application.csproj
@@ -18,10 +18,6 @@
-
-
-
-
@@ -31,4 +27,8 @@
+
+
+
+
diff --git a/Cis.Application/Cis.Application.xml b/Cis.Application/Cis.Application.xml
index 0c28f39..c3a0a17 100644
--- a/Cis.Application/Cis.Application.xml
+++ b/Cis.Application/Cis.Application.xml
@@ -49,6 +49,26 @@
CbCameraParams 表描述
+
+
+ 相机 BO
+
+
+
+
+ cbCameraId
+
+
+
+
+ cbCamera 实体类
+
+
+
+
+ cbCameraParams 实体类
+
+
相机表
@@ -89,9 +109,9 @@
名称
-
+
- 相机类型
+ 相机厂商
@@ -99,6 +119,11 @@
sdk 端口
+
+
+ 相机类型
+
+
FocusX
@@ -119,25 +144,25 @@
相机参数服务
-
+
获取实体类
- equal:cameraType,id,isDelete; like:name; between:[startTime,endTime];
+ equal:manufactor,type,id,isDelete; like:name; between:[startTime,endTime];
批量获取实体类
- equal:cameraType,isDelete; like:name; between:[startTime,endTime];
+ equal:manufactor,type,isDelete; like:name; between:[startTime,endTime];
批量获取分页实体类
- equal:cameraType,isDelete; like:name; between:[startTime,endTime];
+ equal:manufactor,type,isDelete; like:name; between:[startTime,endTime];
index,size
@@ -146,7 +171,7 @@
相机服务
-
+
获取实体类
@@ -168,6 +193,20 @@
index,size
+
+
+ 获取实体类 BO
+
+ 实体类 id
+
+
+
+
+ 批量获取实体类 BO
+
+ equal:cbCameraParamsId,isDelete; like:ip,name; between:[startTime,endTime];
+
+
Cm -> Camera mark
@@ -298,7 +337,7 @@
标记分组服务
-
+
获取实体类
@@ -339,14 +378,14 @@
实体类
-
+
批量添加实体类
- 实体类数组
+ 实体类列表
-
+
获取实体类
@@ -955,6 +994,11 @@
{cameraId, OnvifClient}
+
+
+ 标签追踪服务
+
+
激活 Searcher
@@ -1007,6 +1051,11 @@
cbCameraId
+
+
+ onvif 服务
+
+
注册 onvifClient
@@ -1244,7 +1293,7 @@
系统字典值服务
-
+
获取实体类
@@ -1271,7 +1320,7 @@
系统字典类型服务
-
+
获取实体类
diff --git a/Cis.Application/Cm/Service/CmMarkGroupService.cs b/Cis.Application/Cm/Service/CmMarkGroupService.cs
index 1830acb..ba9395b 100644
--- a/Cis.Application/Cm/Service/CmMarkGroupService.cs
+++ b/Cis.Application/Cm/Service/CmMarkGroupService.cs
@@ -19,7 +19,7 @@ public class CmMarkGroupService : ServiceBase, ITransient
/// equal:id,isDelete; like:name; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
@@ -72,7 +72,7 @@ public class CmMarkGroupService : ServiceBase, ITransient
/// index,size
///
[HttpGet]
- public override async Task> GetPageList([Required] string pagination, string queryJson="")
+ public override async Task> GetPageList([Required] string pagination, string queryJson = "")
{
Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
diff --git a/Cis.Application/Cm/Service/CmMarkLabelService.cs b/Cis.Application/Cm/Service/CmMarkLabelService.cs
index d6cee92..9e2b73a 100644
--- a/Cis.Application/Cm/Service/CmMarkLabelService.cs
+++ b/Cis.Application/Cm/Service/CmMarkLabelService.cs
@@ -54,12 +54,12 @@ public class CmMarkLabelService : ServiceBase, ITransient
///
/// 批量添加实体类
///
- /// 实体类数组
+ /// 实体类列表
///
[HttpPost]
- public override async Task AddArray([Required][FromForm] CmMarkLabel[] array)
+ public override async Task AddList([Required][FromForm] List list)
{
- foreach (CmMarkLabel item in array)
+ foreach (CmMarkLabel item in list)
{
bool ret = _cameraSdk.TryGetPtzInfoById(item.CbCameraId.ToString(), out PtzInfo ptzInfo);
if (!ret) return false;
@@ -67,7 +67,7 @@ public class CmMarkLabelService : ServiceBase, ITransient
item.TiltPosition = ptzInfo.Tilt;
item.ZoomPosition = ptzInfo.Zoom;
}
- return await _baseRep.InsertRangeAsync(array);
+ return await _baseRep.InsertRangeAsync(list);
}
///
@@ -76,7 +76,7 @@ public class CmMarkLabelService : ServiceBase, ITransient
/// equal:cbCameraId,cmMarkGroupId,id,isDelete; like:name; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
diff --git a/Cis.Application/Core/Center/CameraDataCenter.cs b/Cis.Application/Core/Center/CameraDataCenter.cs
index 4b1db50..b724202 100644
--- a/Cis.Application/Core/Center/CameraDataCenter.cs
+++ b/Cis.Application/Core/Center/CameraDataCenter.cs
@@ -86,13 +86,19 @@ public class CameraDataCenter : ISingleton
///
private async Task RefreshCameraPtzInfos()
{
- string[] cameraIpList = await _cache.HKeysAsync(CacheInfo.CameraIpCounts);
- List tasks = new();
- foreach (string cameraIp in cameraIpList)
+ try
+ {
+ string[] cameraIpList = await _cache.HKeysAsync(CacheInfo.CameraIpCounts);
+ List tasks = new();
+ foreach (string cameraIp in cameraIpList)
+ {
+ tasks.Add(RefreshCameraPtzInfo(cameraIp));
+ }
+ await Task.WhenAny(Task.WhenAll(tasks), Task.Delay(_options.CameraPtz.Timeout));
+ }
+ catch (Exception e)
{
- tasks.Add(RefreshCameraPtzInfo(cameraIp));
}
- await Task.WhenAny(Task.WhenAll(tasks), Task.Delay(_options.CameraPtz.Timeout));
}
///
@@ -112,13 +118,19 @@ public class CameraDataCenter : ISingleton
///
private async Task RefreshMarkSearchers()
{
- string[] cameraIdList = await _cache.HKeysAsync(CacheInfo.CameraId2Ip);
- List tasks = new();
- foreach (string cameraId in cameraIdList)
+ try
+ {
+ string[] cameraIdList = await _cache.HKeysAsync(CacheInfo.CameraId2Ip);
+ List tasks = new();
+ foreach (string cameraId in cameraIdList)
+ {
+ tasks.Add(RefreshMarkSearcher(cameraId.ToLong()));
+ }
+ await Task.WhenAny(Task.WhenAll(tasks), Task.Delay(_options.CameraPtz.Timeout));
+ }
+ catch (Exception e)
{
- tasks.Add(RefreshMarkSearcher(cameraId.ToLong()));
}
- await Task.WhenAny(Task.WhenAll(tasks), Task.Delay(_options.CameraPtz.Timeout));
}
///
diff --git a/Cis.Application/Core/Center/InstanceCenter.cs b/Cis.Application/Core/Center/InstanceCenter.cs
new file mode 100644
index 0000000..17ef255
--- /dev/null
+++ b/Cis.Application/Core/Center/InstanceCenter.cs
@@ -0,0 +1,16 @@
+namespace Cis.Application.Core;
+
+public static class InstanceCenter
+{
+ static InstanceCenter()
+ {
+ // 静态构造函数只执行一次
+ // 主动注册全局单例服务
+ App.GetService(App.RootServices);
+ }
+
+ public static void Init()
+ {
+ // 空函数,意在初始化静态构造函数
+ }
+}
\ No newline at end of file
diff --git a/Cis.Application/Core/Common/Extension.cs b/Cis.Application/Core/Common/Extension.cs
index e2746c8..1b0cd40 100644
--- a/Cis.Application/Core/Common/Extension.cs
+++ b/Cis.Application/Core/Common/Extension.cs
@@ -6,24 +6,24 @@ namespace Cis.Application.Core;
[SuppressSniffer]
public static class Extension
{
- public static ICameraSDK CreateCameraSDK(this CameraType cameraType, CameraInfo cameraInfo)
+ public static ICameraSDK CreateCameraSDK(this CameraManufactor cameraManufactor, CameraInfo cameraInfo)
{
- return cameraType switch
+ return cameraManufactor switch
{
- CameraType.HiK => new HiKSDK(cameraInfo),
- CameraType.DaHua => new DaHuaSDK(cameraInfo),
- CameraType.YuShi => new YuShiSDK(cameraInfo),
+ CameraManufactor.HiK => new HiKSDK(cameraInfo),
+ CameraManufactor.DaHua => new DaHuaSDK(cameraInfo),
+ CameraManufactor.YuShi => new YuShiSDK(cameraInfo),
_ => null,
};
}
- public static MarkSearcherBase CreateMarkSearcher(this CameraType cameraType, CameraCalcParams cameraCalcParams)
+ public static MarkSearcherBase CreateMarkSearcher(this CameraManufactor cameraManufactor, CameraCalcParams cameraCalcParams)
{
- return cameraType switch
+ return cameraManufactor switch
{
- CameraType.HiK => new HiKMarkSearcher(cameraCalcParams),
- CameraType.DaHua => new DaHuaMarkSearcher(cameraCalcParams),
- CameraType.YuShi => new YuShiMarkSearcher(cameraCalcParams),
+ CameraManufactor.HiK => new HiKMarkSearcher(cameraCalcParams),
+ CameraManufactor.DaHua => new DaHuaMarkSearcher(cameraCalcParams),
+ CameraManufactor.YuShi => new YuShiMarkSearcher(cameraCalcParams),
_ => null
};
}
diff --git a/Cis.Application/Core/Component/CameraSDK/CameraSdkServer.cs b/Cis.Application/Core/Component/CameraSDK/CameraSdkServer.cs
index e5cf7cd..258ab73 100644
--- a/Cis.Application/Core/Component/CameraSDK/CameraSdkServer.cs
+++ b/Cis.Application/Core/Component/CameraSDK/CameraSdkServer.cs
@@ -32,7 +32,7 @@ public class CameraSdkServer : ICameraSdkServer, ISingleton
{
bool ret = CameraSdkDict.ContainsKey(cameraInfo.Ip);
if (ret) return false;
- ICameraSDK cameraSDK = ((CameraType)cameraInfo.Type).CreateCameraSDK(cameraInfo);
+ ICameraSDK cameraSDK = ((CameraManufactor)cameraInfo.Manufactor).CreateCameraSDK(cameraInfo);
if (cameraSDK == null) return false;
ret = cameraSDK.Init();
if (!ret) return false;
diff --git a/Cis.Application/Core/Component/MarkSeacher/MarkSearcherServer.cs b/Cis.Application/Core/Component/MarkSeacher/MarkSearcherServer.cs
index 39fa255..8c8fbac 100644
--- a/Cis.Application/Core/Component/MarkSeacher/MarkSearcherServer.cs
+++ b/Cis.Application/Core/Component/MarkSeacher/MarkSearcherServer.cs
@@ -87,7 +87,7 @@ public class MarkSearcherServer : IMarkSearcherServer, ISingleton
ret = _cameraSdkServer.IsExists(cbCamera.Ip);
if (!ret)
{
- CameraInfo cameraInfo = CameraInfo.New(cbCameraParams.CameraType, cbCamera.Ip, cbCamera.UserName, cbCamera.Password);
+ CameraInfo cameraInfo = CameraInfo.New(cbCameraParams.Manufactor, cbCamera.Ip, cbCamera.UserName, cbCamera.Password);
ret = _cameraSdkServer.Register(cameraInfo);
if (!ret)
{
@@ -105,7 +105,7 @@ public class MarkSearcherServer : IMarkSearcherServer, ISingleton
// 创建相机计算参数
CameraCalcParams cameraCalcParams = CameraCalcParams.New(cbCamera.Id, ptzInfo, cbCameraParams.FocusX, cbCameraParams.FocusY, zoomVaryExpr);
// 创建 markSearcher
- MarkSearcherBase markSearcher = ((CameraType)cbCameraParams.CameraType).CreateMarkSearcher(cameraCalcParams);
+ MarkSearcherBase markSearcher = ((CameraManufactor)cbCameraParams.Manufactor).CreateMarkSearcher(cameraCalcParams);
if (markSearcher == null) return false;
// 获取标签列表
List cmMarkLabelList = _cmMarkLableRep.GetList(u => u.CbCameraId == cameraId);
diff --git a/Cis.Application/Core/Component/Onvif/OnvifServer.cs b/Cis.Application/Core/Component/Onvif/OnvifServer.cs
index 53e2658..7023d33 100644
--- a/Cis.Application/Core/Component/Onvif/OnvifServer.cs
+++ b/Cis.Application/Core/Component/Onvif/OnvifServer.cs
@@ -38,7 +38,7 @@ public class OnvifServer : IOnvifServer, ISingleton
if (ret) return false;
OnvifClient client = new(camera.Ip, camera.UserName, camera.Password);
ret = await client.Init();
- if(!ret) return false;
+ if (!ret) return false;
ret = OnvifClientDict.TryAdd(camera.Id, client);
return ret;
}
diff --git a/Cis.Application/Core/Service/MarkSearchService.cs b/Cis.Application/Core/Service/MarkSearchService.cs
index 48484ff..2dde3cb 100644
--- a/Cis.Application/Core/Service/MarkSearchService.cs
+++ b/Cis.Application/Core/Service/MarkSearchService.cs
@@ -2,6 +2,9 @@
namespace Cis.Application.Core;
+///
+/// 标签追踪服务
+///
[ApiDescriptionSettings(CoreInfo.GroupName, Order = CoreInfo.MarkSearchGroupOrder)]
public class MarkSearchService : IDynamicApiController, ITransient
{
diff --git a/Cis.Application/Core/Service/OnvifService.cs b/Cis.Application/Core/Service/OnvifService.cs
index b1484a8..b4687b1 100644
--- a/Cis.Application/Core/Service/OnvifService.cs
+++ b/Cis.Application/Core/Service/OnvifService.cs
@@ -4,6 +4,9 @@ using EC.Helper.Onvif;
namespace Cis.Application.Core;
+///
+/// onvif 服务
+///
[ApiDescriptionSettings(CoreInfo.GroupName, Order = CoreInfo.OnvifGroupOrder)]
public class OnvifService : IDynamicApiController, ITransient
{
diff --git a/Cis.Application/Startup.cs b/Cis.Application/Startup.cs
index a4049ab..c68d577 100644
--- a/Cis.Application/Startup.cs
+++ b/Cis.Application/Startup.cs
@@ -33,5 +33,6 @@ public class Startup : AppStartup
///
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
+ InstanceCenter.Init();
}
}
\ No newline at end of file
diff --git a/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs b/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
index 5935110..420c4a5 100644
--- a/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
+++ b/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
@@ -6,13 +6,17 @@ public class SysDictDataSeedData : ISqlSugarEntitySeedData
{
return new SysDictData[]
{
- new(){Id=358769934100001, SysDictTypeId=358728043100001, Code="HiK", Value="1", Order=100, Remark="海康相机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100002, SysDictTypeId=358728043100001, Code="DaHua", Value="2", Order=100, Remark="大华相机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100003, SysDictTypeId=358728043100001, Code="YuShi", Value="3", Order=100, Remark="宇视相机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){Id=358769934100001, SysDictTypeId=358728043100001, Code="HiK", Value="1", Order=100, Remark="海康", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){Id=358769934100002, SysDictTypeId=358728043100001, Code="DaHua", Value="2", Order=100, Remark="大华", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){Id=358769934100003, SysDictTypeId=358728043100001, Code="YuShi", Value="3", Order=100, Remark="宇视", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
new(){Id=358769934100011, SysDictTypeId=358728043100002, Code="HiK", Value="8000", Order=100, Remark="海康sdk端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
new(){Id=358769934100012, SysDictTypeId=358728043100002, Code="DaHua", Value="37777", Order=100, Remark="大华sdk端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
new(){Id=358769934100013, SysDictTypeId=358728043100002, Code="YuShi", Value="8800", Order=100, Remark="宇视sdk端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+
+ new(){Id=358769934100021, SysDictTypeId=358728043100001, Code="BulletCamera", Value="1", Order=100, Remark="枪机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){Id=358769934100022, SysDictTypeId=358728043100001, Code="DomeCamera", Value="2", Order=100, Remark="半球机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){Id=358769934100023, SysDictTypeId=358728043100001, Code="SpeedDomeCamera", Value="3", Order=100, Remark="球机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
};
}
}
\ No newline at end of file
diff --git a/Cis.Application/Sys/SeedData/SysDictTypeSeedData.cs b/Cis.Application/Sys/SeedData/SysDictTypeSeedData.cs
index 387e590..6c99b5d 100644
--- a/Cis.Application/Sys/SeedData/SysDictTypeSeedData.cs
+++ b/Cis.Application/Sys/SeedData/SysDictTypeSeedData.cs
@@ -6,8 +6,9 @@ public class SysDictTypeSeedData : ISqlSugarEntitySeedData
{
return new SysDictType[]
{
- new(){ Id=358728043100001, Name="相机类型", Code="camera_type", Order=100, Remark="相机类型", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){ Id=358728043100001, Name="相机厂商", Code="camera_manufactor", Order=100, Remark="相机厂商", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
new(){ Id=358728043100002, Name="相机SDK端口", Code="camera_sdk_port", Order=100, Remark="相机SDK端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
+ new(){ Id=358728043100003, Name="相机类型", Code="camera_type", Order=100, Remark="相机类型", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
};
}
}
\ No newline at end of file
diff --git a/Cis.Application/Sys/Service/SysDictDataService.cs b/Cis.Application/Sys/Service/SysDictDataService.cs
index a5729d2..dea558e 100644
--- a/Cis.Application/Sys/Service/SysDictDataService.cs
+++ b/Cis.Application/Sys/Service/SysDictDataService.cs
@@ -19,7 +19,7 @@ public class SysDictDataService : ServiceBase, ITransient
/// equal:sysDictTypeId,code,id,isDelete; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
diff --git a/Cis.Application/Sys/Service/SysDictTypeService.cs b/Cis.Application/Sys/Service/SysDictTypeService.cs
index d3a2b1e..bc72eb2 100644
--- a/Cis.Application/Sys/Service/SysDictTypeService.cs
+++ b/Cis.Application/Sys/Service/SysDictTypeService.cs
@@ -19,7 +19,7 @@ public class SysDictTypeService : ServiceBase, ITransient
/// equal:code,id,isDelete; like:name; between:[startTime,endTime];
///
[HttpGet]
- public override async Task GetQ([Required] string queryJson)
+ public override async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
@@ -76,7 +76,7 @@ public class SysDictTypeService : ServiceBase, ITransient
/// index,size
///
[HttpGet]
- public override async Task> GetPageList([Required] string pagination, string queryJson="")
+ public override async Task> GetPageList([Required] string pagination, string queryJson = "")
{
JObject queryObj = queryJson.ToJObject();
Pagination pageObj = pagination.ToObject();
diff --git a/Cis.Core/Cache/CacheSetup.cs b/Cis.Core/Cache/CacheSetup.cs
index 513f8a8..e76a944 100644
--- a/Cis.Core/Cache/CacheSetup.cs
+++ b/Cis.Core/Cache/CacheSetup.cs
@@ -10,12 +10,9 @@ public static class CacheSetup
///
public static void AddCache(this IServiceCollection services)
{
- services.AddSingleton(options =>
- {
- var redisOptions = App.GetOptions();
- RedisClient cache = new(redisOptions.ConnectionString);
- cache.FlushDb();
- return cache;
- });
+ var redisOptions = App.GetOptions();
+ RedisClient cache = new(redisOptions.ConnectionString);
+ cache.FlushDb();
+ services.AddSingleton(cache);
}
}
\ No newline at end of file
diff --git a/Cis.Core/Cis.Core.csproj b/Cis.Core/Cis.Core.csproj
index 27d689b..0a2984b 100644
--- a/Cis.Core/Cis.Core.csproj
+++ b/Cis.Core/Cis.Core.csproj
@@ -34,6 +34,6 @@
-
+
diff --git a/Cis.Core/Cis.Core.xml b/Cis.Core/Cis.Core.xml
index 049df6b..dd0ecea 100644
--- a/Cis.Core/Cis.Core.xml
+++ b/Cis.Core/Cis.Core.xml
@@ -208,11 +208,11 @@
实体类
-
+
批量添加实体类
- 实体类数组
+ 实体类列表
@@ -222,6 +222,13 @@
实体类
+
+
+ 批量更新实体类
+
+ 实体类列表
+
+
删除实体类
@@ -229,6 +236,13 @@
实体类 id
+
+
+ 批量删除实体类
+
+ 实体类数组
+
+
假删除实体类
@@ -244,7 +258,7 @@
实体类 id
-
+
获取实体类
@@ -339,6 +353,14 @@
字串
+
+
+ 字符串拆分转 object[]
+
+
+ 默认英文逗号隔开
+
+
排除SqlSugar忽略的列
diff --git a/Cis.Core/Common/Entity/ServiceBase.cs b/Cis.Core/Common/Entity/ServiceBase.cs
index a2c2b81..f151b77 100644
--- a/Cis.Core/Common/Entity/ServiceBase.cs
+++ b/Cis.Core/Common/Entity/ServiceBase.cs
@@ -40,12 +40,12 @@ public class ServiceBase : IDynamicApiController where T : EntityBase, new()
///
/// 批量添加实体类
///
- /// 实体类数组
+ /// 实体类列表
///
[HttpPost]
- public virtual async Task AddArray([Required][FromForm] T[] array)
+ public virtual async Task AddList([Required][FromForm] List list)
{
- return await _baseRep.InsertRangeAsync(array);
+ return await _baseRep.InsertRangeAsync(list);
}
///
@@ -62,12 +62,12 @@ public class ServiceBase : IDynamicApiController where T : EntityBase, new()
///
/// 批量更新实体类
///
- /// 实体类数组
+ /// 实体类列表
///
[HttpPost]
- public virtual async Task UpdateArray([Required][FromForm] T[] array)
+ public virtual async Task UpdateList([Required][FromForm] List list)
{
- return await _baseRep.UpdateRangeAsync(array);
+ return await _baseRep.UpdateRangeAsync(list);
}
///
@@ -84,12 +84,13 @@ public class ServiceBase : IDynamicApiController where T : EntityBase, new()
///
/// 批量删除实体类
///
- /// 实体类数组
+ /// 实体类数组
///
[HttpPost]
- public virtual async Task DeleteArray([Required][FromForm] T[] array)
+ public virtual async Task DeleteArray([Required][FromForm] string ids)
{
- return await _baseRep.DeleteByIdsAsync(array);
+ object[] objects = ids.ToSplitObjects();
+ return await _baseRep.DeleteByIdsAsync(objects);
}
///
@@ -124,7 +125,7 @@ public class ServiceBase : IDynamicApiController where T : EntityBase, new()
/// equal:id,isDelete; between:[startTime,endTime];
///
[HttpGet]
- public virtual async Task GetQ([Required] string queryJson)
+ public virtual async Task GetByQ([Required] string queryJson)
{
JObject queryObj = queryJson.ToJObject();
diff --git a/Cis.Core/Common/Extension/ObjectExtension.cs b/Cis.Core/Common/Extension/ObjectExtension.cs
index 6f3dcac..3d1b0fb 100644
--- a/Cis.Core/Common/Extension/ObjectExtension.cs
+++ b/Cis.Core/Common/Extension/ObjectExtension.cs
@@ -128,6 +128,23 @@ public static class ObjectExtension
return !string.IsNullOrEmpty(Json) ? JObject.Parse(Json.Replace(" ", "")) : JObject.Parse("{}");
}
+ ///
+ /// 字符串拆分转 object[]
+ ///
+ ///
+ /// 默认英文逗号隔开
+ ///
+ public static object[] ToSplitObjects(this string str, string trimstr = ",")
+ {
+ var list = str.Split(trimstr.ToArray());
+ object[] result = new object[list.Length];
+ for (int i = 0; i < list.Length; i++)
+ {
+ result[i] = list[i];
+ }
+ return result;
+ }
+
///
/// 排除SqlSugar忽略的列
///
diff --git a/Cis.Core/CoreConfig.json b/Cis.Core/CoreConfig.json
index da4d820..2559961 100644
--- a/Cis.Core/CoreConfig.json
+++ b/Cis.Core/CoreConfig.json
@@ -4,7 +4,7 @@
{
"ConfigId": "Cis",
"DbType": "MySql", // MySql、SqlServer、Sqlite、Oracle、PostgreSQL、Dm、Kdbndp、Oscar、MySqlConnector、Access
- "ConnectionString": "Data Source=127.0.0.1;port=3306;User ID=root;Password=123456;Database=Cis;pooling=true;sslmode=none;CharSet=utf8;",
+ "ConnectionString": "Data Source=192.168.1.119;port=3306;User ID=root;Password=123456;Database=Cis;pooling=true;sslmode=none;CharSet=utf8;",
//"DbType": "Sqlite",
//"ConnectionString": "DataSource=./cis.db",
//"DbType": "PostgreSQL",
@@ -14,7 +14,7 @@
]
},
"Redis": {
- "ConnectionString": "127.0.0.1:6379,password=123456,defaultDatabase=2"
+ "ConnectionString": "192.168.1.119:6379,password=123456,defaultDatabase=2"
},
"AppSettings": {
"InjectSpecificationDocument": true // 生产环境是否开启Swagger
diff --git a/Cis.Web.Entry/Program.cs b/Cis.Web.Entry/Program.cs
index c19f1b5..e0edba2 100644
--- a/Cis.Web.Entry/Program.cs
+++ b/Cis.Web.Entry/Program.cs
@@ -5,7 +5,7 @@ AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler
// webServer
Serve.Run(RunOptions.Default.AddWebComponent().WithArgs(args));
-static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
+void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
Log.Error(sender?.ToString(), e);
}
diff --git a/Cis.sln b/Cis.sln
index 06430c8..cbb9209 100644
--- a/Cis.sln
+++ b/Cis.sln
@@ -13,11 +13,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Cis.Web.Entry", "Cis.Web.En
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EC.Helper", "EC.Helper\EC.Helper.csproj", "{C2A5AEC8-F4FB-4D57-AE32-80502979FB9E}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{5D70EBD8-D86C-4F6B-9231-3ED720842298}"
- ProjectSection(SolutionItems) = preProject
- .editorconfig = .editorconfig
- EndProjectSection
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
diff --git a/EC.Helper/CameraSDK/Common/CameraException.cs b/EC.Helper/CameraSDK/Common/CameraException.cs
index 7b4853c..e2a392e 100644
--- a/EC.Helper/CameraSDK/Common/CameraException.cs
+++ b/EC.Helper/CameraSDK/Common/CameraException.cs
@@ -19,7 +19,7 @@ public class CameraException : Exception
protected class CameraExceptionObj
{
- public CameraType Type { get; set; }
+ public CameraManufactor Manufactor { get; set; }
public int ErrCode { get; set; }
@@ -27,25 +27,25 @@ public class CameraException : Exception
public override string? ToString()
{
- return $"Type:{Type}, ErrCode:{ErrCode}, ErrMsg:{ErrMsg}";
+ return $"Manufactor:{Manufactor}, ErrCode:{ErrCode}, ErrMsg:{ErrMsg}";
}
}
- public static CameraException New(CameraType type, int errCode)
+ public static CameraException New(CameraManufactor manufactor, int errCode)
{
CameraExceptionObj obj = new()
{
- Type = type,
+ Manufactor = manufactor,
ErrCode = errCode
};
return new CameraException(obj.ToString());
}
- public static CameraException New(CameraType type, int errCode, string errMsg)
+ public static CameraException New(CameraManufactor manufactor, int errCode, string errMsg)
{
CameraExceptionObj obj = new()
{
- Type = type,
+ Manufactor = manufactor,
ErrCode = errCode,
ErrMsg = errMsg
};
diff --git a/EC.Helper/CameraSDK/Common/CameraStruct.cs b/EC.Helper/CameraSDK/Common/CameraStruct.cs
index d4b0a97..4e3d37c 100644
--- a/EC.Helper/CameraSDK/Common/CameraStruct.cs
+++ b/EC.Helper/CameraSDK/Common/CameraStruct.cs
@@ -8,9 +8,9 @@ public class CameraInfo
#region Attr
///
- /// 相机类型
+ /// 相机厂商
///
- public int Type { get; set; }
+ public int Manufactor { get; set; }
///
/// ip 地址
@@ -34,35 +34,35 @@ public class CameraInfo
#endregion Attr
- public static CameraInfo New(int type, string ip, int port, string userName, string password)
+ public static CameraInfo New(int manufactor, string ip, int port, string userName, string password)
{
- CameraInfo info = new() { Type = type, Ip = ip, Port = port, UserName = userName, Password = password };
+ CameraInfo info = new() { Manufactor = manufactor, Ip = ip, Port = port, UserName = userName, Password = password };
if (port <= 0)
- throw new Exception("Camera type not support.");
+ throw new Exception("Camera manufactor not support.");
return info;
}
- public static CameraInfo New(int type, string ip, string userName, string password)
+ public static CameraInfo New(int manufactor, string ip, string userName, string password)
{
- CameraInfo info = new() { Type = type, Ip = ip, UserName = userName, Password = password };
- int port = (CameraType)type switch
+ CameraInfo info = new() { Manufactor = manufactor, Ip = ip, UserName = userName, Password = password };
+ int port = (CameraManufactor)manufactor switch
{
- CameraType.HiK => (int)CameraPort.HiK,
- CameraType.DaHua => (int)CameraPort.DaHua,
- CameraType.YuShi => (int)CameraPort.YuShi,
+ CameraManufactor.HiK => (int)CameraPort.HiK,
+ CameraManufactor.DaHua => (int)CameraPort.DaHua,
+ CameraManufactor.YuShi => (int)CameraPort.YuShi,
_ => -1,
};
info.Port = port;
if (port <= 0)
- throw new Exception("Camera type not support.");
+ throw new Exception("Camera manufactor not support.");
return info;
}
}
///
-/// 相机类型
+/// 相机厂商
///
-public enum CameraType : int
+public enum CameraManufactor : int
{
HiK = 1,
DaHua,
diff --git a/EC.Helper/CameraSDK/DaHua/DaHuaSDK.cs b/EC.Helper/CameraSDK/DaHua/DaHuaSDK.cs
index fd3a94d..828c244 100644
--- a/EC.Helper/CameraSDK/DaHua/DaHuaSDK.cs
+++ b/EC.Helper/CameraSDK/DaHua/DaHuaSDK.cs
@@ -62,7 +62,7 @@ public class DaHuaSDK : ICameraSDK
uint errCode = (uint)DaHuaOriSDK.CLIENT_GetLastError();
if (errCode == 0) return;
errCode -= 0x80000000;
- throw CameraException.New(CameraType.DaHua, (int)errCode);
+ throw CameraException.New(CameraManufactor.DaHua, (int)errCode);
}
#endregion Base Method
diff --git a/EC.Helper/CameraSDK/HiK/HiKSDK.cs b/EC.Helper/CameraSDK/HiK/HiKSDK.cs
index 517a28d..c9600ef 100644
--- a/EC.Helper/CameraSDK/HiK/HiKSDK.cs
+++ b/EC.Helper/CameraSDK/HiK/HiKSDK.cs
@@ -48,7 +48,7 @@ public class HiKSDK : ICameraSDK
{
uint errCode = HiKOriSDK.NET_DVR_GetLastError();
if (errCode == 0) return;
- throw CameraException.New(CameraType.HiK, (int)errCode);
+ throw CameraException.New(CameraManufactor.HiK, (int)errCode);
}
#endregion Base Method
diff --git a/EC.Helper/CameraSDK/YuShi/YuShiSDK.cs b/EC.Helper/CameraSDK/YuShi/YuShiSDK.cs
index 6ff5959..43764a4 100644
--- a/EC.Helper/CameraSDK/YuShi/YuShiSDK.cs
+++ b/EC.Helper/CameraSDK/YuShi/YuShiSDK.cs
@@ -51,7 +51,7 @@ public class YuShiSDK : ICameraSDK
{
int errCode = YuShiOriSDK.NETDEV_GetLastError();
if (errCode == 0) return;
- throw CameraException.New(CameraType.YuShi, (int)errCode);
+ throw CameraException.New(CameraManufactor.YuShi, (int)errCode);
}
#endregion Base Method
diff --git a/EC.Helper/Onvif/OnvifClient.cs b/EC.Helper/Onvif/OnvifClient.cs
index b3e060d..9c5b50a 100644
--- a/EC.Helper/Onvif/OnvifClient.cs
+++ b/EC.Helper/Onvif/OnvifClient.cs
@@ -120,7 +120,7 @@ public class OnvifClient
if (string.IsNullOrEmpty(SteamUrl))
{
MediaUri mediaUri = await Media.GetStreamUriAsync(RtspStreamSetup, ProfileToken);
- SteamUrl = mediaUri.Uri;
+ SteamUrl = mediaUri.Uri.Replace("://", $"://{Username}:{Password}@");
}
return SteamUrl;
}
@@ -130,7 +130,7 @@ public class OnvifClient
if (string.IsNullOrEmpty(SnapshotUrl))
{
MediaUri mediaUri = await Media.GetSnapshotUriAsync(ProfileToken);
- SnapshotUrl = mediaUri.Uri;
+ SnapshotUrl = mediaUri.Uri.Replace("://", $"://{Username}:{Password}@");
}
return SnapshotUrl;
}
diff --git a/Frontend/src/api/cameraMark/markSearchApi.ts b/Frontend/src/api/cameraMark/markSearchApi.ts
index 4c22de0..fbca488 100644
--- a/Frontend/src/api/cameraMark/markSearchApi.ts
+++ b/Frontend/src/api/cameraMark/markSearchApi.ts
@@ -5,7 +5,7 @@ import qs from 'qs';
enum Api {
ActivateSearcher = '/markSearch/activateSearcher',
DeActiveSearcher = '/markSearch/deActiveSearcher',
- IsExistSearcher = '/markSearch/isExistSearcher',
+ IsExistsSearcher = '/markSearch/isExistsSearcher',
ActivateMarkLabel = '/markSearch/activateMarkLabel',
DeactivateMarkLabel = '/markSearch/deactivateMarkLabel',
IsExistMarkLabel = '/markSearch/isExistMarkLabel',
@@ -18,7 +18,7 @@ export const ActiveSearcher = (params?: any) => axios.post(CisApiUrl + Api.Activ
export const DeActiveSearcher = (params?: any) => axios.post(CisApiUrl + Api.DeActiveSearcher, qs.stringify(params))
-export const IsExistSearcher = (params?: any) => axios.get(CisApiUrl + Api.IsExistSearcher, {params: params})
+export const IsExistSearcher = (params?: any) => axios.get(CisApiUrl + Api.IsExistsSearcher, {params: params})
export const ActivateMarkLabel = (params?: any) => axios.post(CisApiUrl + Api.ActivateMarkLabel, qs.stringify(params))