diff --git a/WcsMain/ApiServe/Controllers/Dto/WcsDto/ElTag/QueryLocationWithPageRequest.cs b/WcsMain/ApiServe/Controllers/Dto/WcsDto/ElTag/QueryLocationWithPageRequest.cs
new file mode 100644
index 0000000..ba57b80
--- /dev/null
+++ b/WcsMain/ApiServe/Controllers/Dto/WcsDto/ElTag/QueryLocationWithPageRequest.cs
@@ -0,0 +1,35 @@
+using System.Text.Json.Serialization;
+
+namespace WcsMain.ApiServe.Controllers.Dto.WcsDto.ElTag;
+
+public class QueryLocationWithPageRequest
+{
+ ///
+ /// 查询的字符串
+ ///
+ [JsonPropertyName("searchStr")]
+ public string? SearchStr { get; set; }
+
+ ///
+ /// 分页信息
+ ///
+ [JsonPropertyName("page")]
+ public ElTagLocationPage? Page { get; set; }
+}
+
+public class ElTagLocationPage
+{
+ ///
+ /// 每页大小
+ ///
+ [JsonPropertyName("pageSize")]
+ public int PageSize { get; set; }
+
+ ///
+ /// 当前页数
+ ///
+ [JsonPropertyName("pageIndex")]
+ public int PageIndex { get; set; }
+
+}
+
diff --git a/WcsMain/ApiServe/Controllers/WcsController/ElTagController.cs b/WcsMain/ApiServe/Controllers/WcsController/ElTagController.cs
index f8d4df1..4cb4045 100644
--- a/WcsMain/ApiServe/Controllers/WcsController/ElTagController.cs
+++ b/WcsMain/ApiServe/Controllers/WcsController/ElTagController.cs
@@ -67,6 +67,15 @@ public class ElTagController(ElTagService elTagService) : ControllerBase
return _elTagService.AddTaskInfo(request);
}
-
+ ///
+ /// 分页查询电子标签库位表
+ ///
+ ///
+ ///
+ [HttpPost("queryLocationWithPage")]
+ public WcsApiResponse> QueryLocationWithPage([FromBody] QueryLocationWithPageRequest request)
+ {
+ return _elTagService.QueryLocationWithPage(request);
+ }
}
diff --git a/WcsMain/ApiServe/Service/WcsService/ElTagService.cs b/WcsMain/ApiServe/Service/WcsService/ElTagService.cs
index a7a415a..cac5c6f 100644
--- a/WcsMain/ApiServe/Service/WcsService/ElTagService.cs
+++ b/WcsMain/ApiServe/Service/WcsService/ElTagService.cs
@@ -11,10 +11,11 @@ using WcsMain.WcsAttribute.AutoFacAttribute;
namespace WcsMain.ApiServe.Service.WcsService;
[Service]
-public class ElTagService(AppElTagTaskDao tagTaskDao, DataBaseData dataBaseData)
+public class ElTagService(AppElTagTaskDao tagTaskDao, DataBaseData dataBaseData, AppElTagLocationDao tagLocationDao)
{
private readonly DataBaseData _dataBaseData = dataBaseData;
private readonly AppElTagTaskDao _tagTaskDao = tagTaskDao;
+ private readonly AppElTagLocationDao _tagLocationDao = tagLocationDao;
///
/// 展示电子标签的数字
@@ -41,6 +42,24 @@ public class ElTagService(AppElTagTaskDao tagTaskDao, DataBaseData dataBaseData)
return WcsApiResponseFactory.Success(totalRows, elTagTasks);
}
+
+ ///
+ /// 分页查询电子标签库位
+ ///
+ ///
+ ///
+ public WcsApiResponse> QueryLocationWithPage(QueryLocationWithPageRequest request)
+ {
+ (List? elTagLocations, int totalRows) = _tagLocationDao.QueryWithPage(request);
+ if (elTagLocations == default)
+ {
+ return WcsApiResponseFactory.DataBaseErr>();
+ }
+ return WcsApiResponseFactory.Success(totalRows, elTagLocations);
+ }
+
+
+
///
/// 编辑电子标签任务信息
///
diff --git a/WcsMain/Business/CirculationTask/ElTag/LightElTag.cs b/WcsMain/Business/CirculationTask/ElTag/LightElTag.cs
index 0377360..a8c8b14 100644
--- a/WcsMain/Business/CirculationTask/ElTag/LightElTag.cs
+++ b/WcsMain/Business/CirculationTask/ElTag/LightElTag.cs
@@ -13,12 +13,12 @@ namespace WcsMain.Business.CirculationTask.ElTag;
[Circulation]
-public class LightElTag(AppElTagTaskDao tagTaskDao, AtopOperation atopOperation, AppElTagBaseDao elTagBaseDao)
+public class LightElTag(AppElTagTaskDao tagTaskDao, AtopOperation atopOperation, AppElTagLocationDao elTagBaseDao)
{
private readonly AppElTagTaskDao _tagTaskDao = tagTaskDao;
private readonly AtopOperation _atopOperation = atopOperation;
- private readonly AppElTagBaseDao _elTagBaseDao = elTagBaseDao;
+ private readonly AppElTagLocationDao _elTagBaseDao = elTagBaseDao;
///
/// 点亮电子标签
@@ -81,7 +81,7 @@ public class LightElTag(AppElTagTaskDao tagTaskDao, AtopOperation atopOperation,
TaskStatus = (int)ElTagTaskStatusEnum.Lighting,
LightTime = DateTime.Now,
}); // 更新任务状态
- _elTagBaseDao.Update(new AppElTagBase { Location = tagTask.Location, TaskId = tagTask.TaskId, LastLightTime = DateTime.Now }); // 更新点位状态,绑定任务
+ _elTagBaseDao.Update(new AppElTagLocation { Location = tagTask.Location, TaskId = tagTask.TaskId, LastLightTime = DateTime.Now }); // 更新点位状态,绑定任务
return;
}
ConsoleLog.Warning($"【警告】点亮电子标签失败,点位:{tagTask.Location},数据:{tagTask.NeedNum},载具号:{tagTask.VehicleNo},标签号:{tagInfo.TagId},异常信息:{resultException.Message}");
diff --git a/WcsMain/Common/CommonData.cs b/WcsMain/Common/CommonData.cs
index da5a300..490f087 100644
--- a/WcsMain/Common/CommonData.cs
+++ b/WcsMain/Common/CommonData.cs
@@ -39,7 +39,7 @@ public static class CommonData
/// 电子标签基础资料
///
[NotNull]
- public static List? AppElTags { get; set; }
+ public static List? AppElTags { get; set; }
///
/// 输送线的站台
diff --git a/WcsMain/DataBase/Dao/AppElTagBaseDao.cs b/WcsMain/DataBase/Dao/AppElTagLocationDao.cs
similarity index 60%
rename from WcsMain/DataBase/Dao/AppElTagBaseDao.cs
rename to WcsMain/DataBase/Dao/AppElTagLocationDao.cs
index 2d000b3..7122d28 100644
--- a/WcsMain/DataBase/Dao/AppElTagBaseDao.cs
+++ b/WcsMain/DataBase/Dao/AppElTagLocationDao.cs
@@ -1,11 +1,12 @@
-using WcsMain.Common;
+using WcsMain.ApiServe.Controllers.Dto.WcsDto.ElTag;
+using WcsMain.Common;
using WcsMain.DataBase.TableEntity;
using WcsMain.WcsAttribute.AutoFacAttribute;
namespace WcsMain.DataBase.Dao;
[Component]
-public class AppElTagBaseDao
+public class AppElTagLocationDao
{
///
@@ -13,11 +14,11 @@ public class AppElTagBaseDao
///
///
///
- public List? Query(AppElTagBase queryData)
+ public List? Query(AppElTagLocation queryData)
{
try
{
- var sqlFuc = CommonTool.DbServe.Queryable()
+ var sqlFuc = CommonTool.DbServe.Queryable()
.WhereIF(queryData.Location != default, w => w.Location == queryData.Location)
.WhereIF(queryData.TagName != default, w => w.TagName == queryData.TagName)
.WhereIF(queryData.TagId != default, w => w.TagId == queryData.TagId)
@@ -40,14 +41,14 @@ public class AppElTagBaseDao
/// 查询所有
///
///
- public List? Query() => Query(new AppElTagBase());
+ public List? Query() => Query(new AppElTagLocation());
///
/// 根据主键更新,不更新null值
///
///
///
- public int Update(AppElTagBase appElTag)
+ public int Update(AppElTagLocation appElTag)
{
try
{
@@ -59,9 +60,33 @@ public class AppElTagBaseDao
-
-
-
+ ///
+ /// 分页查询 电子标签库位表
+ ///
+ ///
+ ///
+ public (List? elTagLocations, int totalRows) QueryWithPage(QueryLocationWithPageRequest request)
+ {
+ try
+ {
+ int totalRows = 0;
+ var sqlFuc = CommonTool.DbServe.Queryable()
+ .WhereIF(!string.IsNullOrEmpty(request.SearchStr),
+ w => w.TaskId!.Contains(request.SearchStr!)
+ || w.Location!.Contains(request.SearchStr!)
+ || w.TagName!.Contains(request.SearchStr!)
+ || w.ControllerDisplayName!.Contains(request.SearchStr!)
+ || w.Remark!.Contains(request.SearchStr!));
+ sqlFuc.OrderBy(o => new { o.Location });
+ var queryResult = sqlFuc.ToPageList(request.Page!.PageIndex, request.Page!.PageSize, ref totalRows);
+ return (queryResult, totalRows);
+ }
+ catch (Exception ex)
+ {
+ _ = ex;
+ return default;
+ }
+ }
@@ -79,7 +104,7 @@ public class AppElTagBaseDao
{
try
{
- var sqlFuc = CommonTool.DbServe.Updateable()
+ var sqlFuc = CommonTool.DbServe.Updateable()
.SetColumns(s => s.LastLightTime == null)
.SetColumns(s => s.TaskId == null)
.Where(w => w.Location == location);
diff --git a/WcsMain/DataBase/TableEntity/AppElTagBase.cs b/WcsMain/DataBase/TableEntity/AppElTagLocation.cs
similarity index 77%
rename from WcsMain/DataBase/TableEntity/AppElTagBase.cs
rename to WcsMain/DataBase/TableEntity/AppElTagLocation.cs
index 7621545..4611483 100644
--- a/WcsMain/DataBase/TableEntity/AppElTagBase.cs
+++ b/WcsMain/DataBase/TableEntity/AppElTagLocation.cs
@@ -1,69 +1,80 @@
using SqlSugar;
+using System.Text.Json.Serialization;
namespace WcsMain.DataBase.TableEntity;
-[SugarTable("tbl_app_eltag_base")]
-public class AppElTagBase
+[SugarTable("tbl_app_eltag_location")]
+public class AppElTagLocation
{
///
/// 点位
///
[SugarColumn(ColumnName = "location", IsPrimaryKey = true)]
+ [JsonPropertyName("location")]
public string? Location { get; set; }
///
/// 标签的名称
///
[SugarColumn(ColumnName = "tag_name")]
+ [JsonPropertyName("tagName")]
public string? TagName { get; set; }
///
/// 标签的ID
///
[SugarColumn(ColumnName = "tag_id")]
+ [JsonPropertyName("tagId")]
public int? TagId { get; set; }
///
/// 标签类型
///
[SugarColumn(ColumnName = "tag_type")]
+ [JsonPropertyName("tagType")]
public int? TagType { get; set; }
///
/// 控制器的别称
///
[SugarColumn(ColumnName = "controller_diaplay_name")]
+ [JsonPropertyName("controllerDisplayName")]
public string? ControllerDisplayName { get; set;}
///
/// 所属区域
///
[SugarColumn(ColumnName = "area")]
+ [JsonPropertyName("area")]
public string? Area { get; set; }
///
/// LED灯的默认状态
///
[SugarColumn(ColumnName = "led_status")]
+ [JsonPropertyName("ledStatus")]
public int? LedStatus { get; set; }
///
/// 上次点亮的时间
///
[SugarColumn(ColumnName = "last_light_time")]
+ [JsonPropertyName("lastLightTime")]
public DateTime? LastLightTime { get; set; }
///
/// 当前点亮的任务号
///
[SugarColumn(ColumnName = "task_id")]
+ [JsonPropertyName("taskId")]
public string? TaskId { get; set; }
///
/// 备注
///
[SugarColumn(ColumnName = "remark")]
+ [JsonPropertyName("remark")]
public string? Remark { get; set; }
diff --git a/WcsMain/ElTag/Atop/BaseOprDataHandler.cs b/WcsMain/ElTag/Atop/BaseOprDataHandler.cs
index 194da9d..baf0e4c 100644
--- a/WcsMain/ElTag/Atop/BaseOprDataHandler.cs
+++ b/WcsMain/ElTag/Atop/BaseOprDataHandler.cs
@@ -14,10 +14,10 @@ namespace WcsMain.ElTag.Atop;
/// 电子标签收到数据的数据处理类
///
[Component]
-public class BaseOprDataHandler(AppElTagBaseDao tagBaseDao, AppElTagTaskDao tagTaskDao, AtopOperation atopOperation)
+public class BaseOprDataHandler(AppElTagLocationDao tagBaseDao, AppElTagTaskDao tagTaskDao, AtopOperation atopOperation)
{
- private readonly AppElTagBaseDao _tagBaseDao = tagBaseDao;
+ private readonly AppElTagLocationDao _tagBaseDao = tagBaseDao;
private readonly AppElTagTaskDao _tagTaskDao = tagTaskDao;
private readonly AtopOperation _atopOperation = atopOperation;
@@ -59,7 +59,7 @@ public class BaseOprDataHandler(AppElTagBaseDao tagBaseDao, AppElTagTaskDao tagT
{
// _atopOperation.ShowMsgOnly(tcpServe.ControllerDisplayName, tcpServe.TagId, tcpServe.Data); // 重新点亮标签,仅显示字符
/* 找出这个标签最新点亮的那条记录 */
- List? eltags = _tagBaseDao.Query(new AppElTagBase { ControllerDisplayName = tcpServe.ControllerDisplayName, TagId = tcpServe.TagId });
+ List? eltags = _tagBaseDao.Query(new AppElTagLocation { ControllerDisplayName = tcpServe.ControllerDisplayName, TagId = tcpServe.TagId });
if(eltags == default)
{
ConsoleLog.Exception($"【异常】电子标签确认查询数据库标签信息失败,与数据库服务器连连接中断,控制器:{tcpServe.ControllerDisplayName},标签号:{tcpServe.TagId},数据:{tcpServe.Data}");
diff --git a/WcsMain/StartAction/ServiceStart.cs b/WcsMain/StartAction/ServiceStart.cs
index 796a55d..51a68f2 100644
--- a/WcsMain/StartAction/ServiceStart.cs
+++ b/WcsMain/StartAction/ServiceStart.cs
@@ -19,7 +19,7 @@ namespace WcsMain.StartAction;
[Component]
public class ServiceStart(WcsCirculation wcsCirculation, ConnectPLCs connectPLCs, SocketOperation socketOperation,
AppStackerDao appStackerDao, AppLocationDao appLocationDao, AppConfigDao appConfigDao, ConnectPlcServe connectPlcServe,
- ConnectOprServe connectOprServe, AppElTagBaseDao appElTagBaseDao, AppConveyStandDao conveyStandDao)
+ ConnectOprServe connectOprServe, AppElTagLocationDao appElTagBaseDao, AppConveyStandDao conveyStandDao)
{
private readonly AppConfigDao _appconfigDao = appConfigDao;
private readonly AppLocationDao _applocationDao = appLocationDao;
@@ -29,7 +29,7 @@ public class ServiceStart(WcsCirculation wcsCirculation, ConnectPLCs connectPLCs
private readonly WcsCirculation _wcsCirculation = wcsCirculation;
private readonly ConnectPlcServe _connectPlcServe = connectPlcServe;
private readonly ConnectOprServe _connectOprServe = connectOprServe;
- private readonly AppElTagBaseDao _appElTagBaseDao = appElTagBaseDao;
+ private readonly AppElTagLocationDao _appElTagBaseDao = appElTagBaseDao;
private readonly AppConveyStandDao _conveyStandDao = conveyStandDao;
private static string _errMsg = string.Empty;
@@ -206,7 +206,7 @@ public class ServiceStart(WcsCirculation wcsCirculation, ConnectPLCs connectPLCs
{
if (!string.IsNullOrEmpty(_errMsg)) return;
//ConsoleLog.Info("正在电子标签基础资料信息...");
- List? eltags = _appElTagBaseDao.Query();
+ List? eltags = _appElTagBaseDao.Query();
if (eltags == default)
{
_errMsg = "加载电子标签基础信息失败,请检查数据库服务器连接是否正常";