diff --git a/Cis.Application/Cb/Entity/CbCamera.cs b/Cis.Application/Cb/Entity/CbCamera.cs
index aa6e005..68f6bce 100644
--- a/Cis.Application/Cb/Entity/CbCamera.cs
+++ b/Cis.Application/Cb/Entity/CbCamera.cs
@@ -19,8 +19,8 @@ public class CbCamera : EntityBase
///
/// ip 地址
///
- [SugarColumn(ColumnDescription = "ip地址", Length = 16)]
- [Required, MaxLength(16)]
+ [SugarColumn(ColumnDescription = "ip地址", Length = 15)]
+ [Required, MaxLength(15)]
[DataValidation(ValidationTypes.IPv4)]
public string Ip { get; set; }
diff --git a/Cis.Application/Cb/Entity/CbCameraParams.cs b/Cis.Application/Cb/Entity/CbCameraParams.cs
index ed5187a..af5e06b 100644
--- a/Cis.Application/Cb/Entity/CbCameraParams.cs
+++ b/Cis.Application/Cb/Entity/CbCameraParams.cs
@@ -41,4 +41,11 @@ public class CbCameraParams : EntityBase
[SugarColumn(ColumnDescription = "FocusY")]
[Required]
public double FocusY { get; set; }
+
+ ///
+ /// zoom变化函数
+ ///
+ [SugarColumn(ColumnDescription = "zoom变化函数", Length = 256)]
+ [Required, MaxLength(256)]
+ public string ZoomVaryFunc { get; set; }
}
\ No newline at end of file
diff --git a/Cis.Application/Cb/Service/CbCameraParamsService.cs b/Cis.Application/Cb/Service/CbCameraParamsService.cs
index fb30cf0..3b01438 100644
--- a/Cis.Application/Cb/Service/CbCameraParamsService.cs
+++ b/Cis.Application/Cb/Service/CbCameraParamsService.cs
@@ -40,21 +40,54 @@ public class CbCameraParamsService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// equal:cameraType; like:name; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson = "")
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ 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("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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// equal:cameraType; like:name; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ 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("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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Application/Cb/Service/CbCameraService.cs b/Cis.Application/Cb/Service/CbCameraService.cs
index 2606197..5c70ecf 100644
--- a/Cis.Application/Cb/Service/CbCameraService.cs
+++ b/Cis.Application/Cb/Service/CbCameraService.cs
@@ -40,21 +40,58 @@ public class CbCameraService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// equal:cbCameraParamsId; like:ip,name; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson = "")
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ 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("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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// equal:cbCameraParamsId; like:ip,name; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
- Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+ Pagination pageObj = pagination.ToObject();
+
+ 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("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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Application/Cis.Application.xml b/Cis.Application/Cis.Application.xml
index 8b02e6a..1b4c7d7 100644
--- a/Cis.Application/Cis.Application.xml
+++ b/Cis.Application/Cis.Application.xml
@@ -104,16 +104,51 @@
FocusY
+
+
+ zoom变化函数
+
+
相机参数服务
+
+
+
+
+ equal:cameraType; like:name; between:[startTime,endTime];
+
+
+
+
+
+
+ equal:cameraType; like:name; between:[startTime,endTime];
+ index,size
+
+
相机服务
+
+
+
+
+ equal:cbCameraParamsId; like:ip,name; between:[startTime,endTime];
+
+
+
+
+
+
+ equal:cbCameraParamsId; like:ip,name; between:[startTime,endTime];
+ index,size
+
+
Cm -> Camera mark
@@ -239,11 +274,41 @@
标记分组服务
+
+
+
+
+ like:name; between:[startTime,endTime];
+
+
+
+
+
+
+ like:name; between:[startTime,endTime];
+ index,size
+
+
标签服务
+
+
+
+
+ equal:cbCameraId,cmMarkGroupId; like:name; between:[startTime,endTime];
+
+
+
+
+
+
+ equal:cbCameraId,cmMarkGroupId; like:name; between:[startTime,endTime];
+ index,size
+
+
{cameraId, List(MarkLabelCalcResult)}
@@ -764,7 +829,7 @@
系统字典值表
-
+
字典类型Id
@@ -829,10 +894,40 @@
系统字典值服务
+
+
+
+
+ equal:sysDictTypeId; like:code; between:[startTime,endTime];
+
+
+
+
+
+
+ equal:sysDictTypeId; like:code; between:[startTime,endTime];
+ index,size
+
+
系统字典类型服务
+
+
+
+
+ equal:code; like:name; between:[startTime,endTime];
+
+
+
+
+
+
+ equal:code; like:name; between:[startTime,endTime];
+ index,size
+
+
diff --git a/Cis.Application/Cm/Service/CmMarkGroupService.cs b/Cis.Application/Cm/Service/CmMarkGroupService.cs
index 341bd51..19b77d5 100644
--- a/Cis.Application/Cm/Service/CmMarkGroupService.cs
+++ b/Cis.Application/Cm/Service/CmMarkGroupService.cs
@@ -40,21 +40,50 @@ public class CmMarkGroupService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// like:name; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson)
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// like:name; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Application/Cm/Service/CmMarkLabelService.cs b/Cis.Application/Cm/Service/CmMarkLabelService.cs
index 109591c..a007476 100644
--- a/Cis.Application/Cm/Service/CmMarkLabelService.cs
+++ b/Cis.Application/Cm/Service/CmMarkLabelService.cs
@@ -1,6 +1,4 @@
-using Cis.Application.Core;
-using Cis.Application.Core.Component.CameraSDK;
-using Cis.Application.Core.Component.PtzServer;
+using Cis.Application.Core.Component.PtzServer;
using EC.Helper.CameraSDK;
using Newtonsoft.Json.Linq;
@@ -67,21 +65,58 @@ public class CmMarkLabelService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// equal:cbCameraId,cmMarkGroupId; like:name; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson = "")
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("cbCameraId", StringComparison.OrdinalIgnoreCase, out JToken cbCameraId))
+ exp.And(it => it.CbCameraId.Equals(cbCameraId));
+ if (queryObj.TryGetValue("cmMarkGroupId", StringComparison.OrdinalIgnoreCase, out JToken cmMarkGroupId))
+ exp.And(it => it.CmMarkGroupId.Equals(cmMarkGroupId));
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// equal:cbCameraId,cmMarkGroupId; like:name; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
- Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+ Pagination pageObj = pagination.ToObject();
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("cbCameraId", StringComparison.OrdinalIgnoreCase, out JToken cbCameraId))
+ exp.And(it => it.CbCameraId.Equals(cbCameraId));
+ if (queryObj.TryGetValue("cmMarkGroupId", StringComparison.OrdinalIgnoreCase, out JToken cmMarkGroupId))
+ exp.And(it => it.CmMarkGroupId.Equals(cmMarkGroupId));
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression())
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Application/Sys/Entity/SysDictData.cs b/Cis.Application/Sys/Entity/SysDictData.cs
index ec34f14..b267d65 100644
--- a/Cis.Application/Sys/Entity/SysDictData.cs
+++ b/Cis.Application/Sys/Entity/SysDictData.cs
@@ -12,7 +12,7 @@ public class SysDictData : EntityBase
///
[SugarColumn(ColumnDescription = "字典类型Id")]
[Required]
- public long DictTypeId { get; set; }
+ public long SysDictTypeId { get; set; }
///
/// 值
diff --git a/Cis.Application/Sys/Entity/SysDictType.cs b/Cis.Application/Sys/Entity/SysDictType.cs
index fdd77f8..318e766 100644
--- a/Cis.Application/Sys/Entity/SysDictType.cs
+++ b/Cis.Application/Sys/Entity/SysDictType.cs
@@ -1,6 +1,4 @@
-using Cis.Application.Cm;
-
-namespace Cis.Application.Sys;
+namespace Cis.Application.Sys;
///
/// 系统字典类型表
diff --git a/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs b/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
index 81d4985..5935110 100644
--- a/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
+++ b/Cis.Application/Sys/SeedData/SysDictDataSeedData.cs
@@ -6,13 +6,13 @@ public class SysDictDataSeedData : ISqlSugarEntitySeedData
{
return new SysDictData[]
{
- new(){Id=358769934100001, DictTypeId=358728043100001, Code="HiK", Value="1", Order=100, Remark="海康相机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100002, DictTypeId=358728043100001, Code="DaHua", Value="2", Order=100, Remark="大华相机", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100003, DictTypeId=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, DictTypeId=358728043100002, Code="HiK", Value="8000", Order=100, Remark="海康sdk端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100012, DictTypeId=358728043100002, Code="DaHua", Value="37777", Order=100, Remark="大华sdk端口", Status=StatusEnum.Enable, CreateTime=DateTime.Parse("2022-11-30 00:00:00")},
- new(){Id=358769934100013, DictTypeId=358728043100002, Code="YuShi", Value="8800", Order=100, Remark="宇视sdk端口", 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")},
};
}
}
\ No newline at end of file
diff --git a/Cis.Application/Sys/Service/SysDictDataService.cs b/Cis.Application/Sys/Service/SysDictDataService.cs
index 59b9890..8e737de 100644
--- a/Cis.Application/Sys/Service/SysDictDataService.cs
+++ b/Cis.Application/Sys/Service/SysDictDataService.cs
@@ -40,21 +40,54 @@ public class SysDictDataService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// equal:sysDictTypeId; like:code; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson)
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("sysDictTypeId", StringComparison.OrdinalIgnoreCase, out JToken sysDictTypeId))
+ exp.And(it => it.SysDictTypeId.Equals(sysDictTypeId));
+ if (queryObj.TryGetValue("code", StringComparison.OrdinalIgnoreCase, out JToken code))
+ exp.And(it => it.Code.Equals(code));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression()).OrderBy(it => it.Order)
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// equal:sysDictTypeId; like:code; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
- Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+ Pagination pageObj = pagination.ToObject();
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("sysDictTypeId", StringComparison.OrdinalIgnoreCase, out JToken sysDictTypeId))
+ exp.And(it => it.SysDictTypeId.Equals(sysDictTypeId));
+ if (queryObj.TryGetValue("code", StringComparison.OrdinalIgnoreCase, out JToken code))
+ exp.And(it => it.Code.Equals(code));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression()).OrderBy(it => it.Order)
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Application/Sys/Service/SysDictTypeService.cs b/Cis.Application/Sys/Service/SysDictTypeService.cs
index a6179e0..e0f3f4c 100644
--- a/Cis.Application/Sys/Service/SysDictTypeService.cs
+++ b/Cis.Application/Sys/Service/SysDictTypeService.cs
@@ -40,21 +40,54 @@ public class SysDictTypeService : IDynamicApiController, ITransient
return entity;
}
+ ///
+ ///
+ ///
+ /// equal:code; like:name; between:[startTime,endTime];
+ ///
[HttpGet]
public async Task> GetList(string queryJson)
{
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ if (queryObj.TryGetValue("code", StringComparison.OrdinalIgnoreCase, out JToken code))
+ exp.And(it => it.Code.Equals(code));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression()).OrderBy(it => it.Order)
.ToListAsync();
return list;
}
+ ///
+ ///
+ ///
+ /// equal:code; like:name; between:[startTime,endTime];
+ /// index,size
+ ///
[HttpGet]
public async Task> GetPageList(string queryJson, string pagination)
{
- Pagination pageObj = pagination.ToObject();
JObject queryObj = queryJson.ToJObject();
- List list = await _baseRep.AsQueryable()
+ Pagination pageObj = pagination.ToObject();
+
+ var exp = Expressionable.Create();
+ if (queryObj.TryGetValue("name", StringComparison.OrdinalIgnoreCase, out JToken name))
+ exp.And(it => it.Name.Contains(name.ToString()));
+ if (queryObj.TryGetValue("code", StringComparison.OrdinalIgnoreCase, out JToken code))
+ exp.And(it => it.Code.Equals(code));
+ 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());
+
+ var list = await _baseRep.AsQueryable()
+ .Where(exp.ToExpression()).OrderBy(it => it.Order)
.ToPageListAsync(pageObj.Index, pageObj.Size);
return list;
}
diff --git a/Cis.Core/Common/Extension/ObjectExtension.cs b/Cis.Core/Common/Extension/ObjectExtension.cs
index 4afe194..6f3dcac 100644
--- a/Cis.Core/Common/Extension/ObjectExtension.cs
+++ b/Cis.Core/Common/Extension/ObjectExtension.cs
@@ -125,7 +125,7 @@ public static class ObjectExtension
///
public static JObject ToJObject(this string Json)
{
- return string.IsNullOrEmpty(Json) ? JObject.Parse("{}") : JObject.Parse(Json.Replace(" ", ""));
+ return !string.IsNullOrEmpty(Json) ? JObject.Parse(Json.Replace(" ", "")) : JObject.Parse("{}");
}
///