wcs_server_kate_suzhou/WcsMain/ApiServe/Service/WcsService/WcsTaskService.cs

93 lines
3.0 KiB
C#
Raw Normal View History

2024-05-14 16:30:56 +08:00
using DataCheck;
using Microsoft.AspNetCore.Mvc;
using WcsMain.ApiServe.Controllers.Dto;
using WcsMain.ApiServe.Controllers.Dto.WcsDto.WcsTask;
using WcsMain.ApiServe.Factory;
using WcsMain.DataBase.Dao;
using WcsMain.DataBase.TableEntity;
using WcsMain.WcsAttribute.AutoFacAttribute;
namespace WcsMain.ApiServe.Service.WcsService;
[Service]
public class WcsTaskService(AppWcsTaskDao wcsTaskDao)
{
/// <summary>
/// 查询所有的Wcs任务列表
/// </summary>
/// <returns></returns>
public WcsApiResponse<List<AppWcsTask>> GetWcsTask()
{
List<AppWcsTask>? wcsTasks = wcsTaskDao.Select();
2024-05-14 16:30:56 +08:00
if(wcsTasks == default)
{
return WcsApiResponseFactory.DataBaseErr<List<AppWcsTask>>();
}
return WcsApiResponseFactory.Success(wcsTasks, "查询成功");
}
/// <summary>
/// 根据任务号获取任务信息,包括运行表和备份表
/// </summary>
/// <param name="taskId"></param>
/// <returns></returns>
public WcsApiResponse<List<AppWcsTask>> GetWcsTaskWithTaskId(string taskId)
{
List<AppWcsTask>? wcsTasks = wcsTaskDao.GetAllTasksWithBakData(taskId);
2024-05-14 16:30:56 +08:00
if (wcsTasks == default)
{
return WcsApiResponseFactory.DataBaseErr<List<AppWcsTask>>();
}
return WcsApiResponseFactory.Success(wcsTasks, "查询成功");
}
/// <summary>
/// 分页查询正在运行的任务
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public WcsApiResponse<List<AppWcsTask>> GetWcsTaskWithPage([FromBody] GetWcsTaskWithPageRequest request)
{
(List<AppWcsTask>? wcsTasks, int totalRows) = wcsTaskDao.SelectPage(request);
2024-05-14 16:30:56 +08:00
if (wcsTasks == default)
{
return WcsApiResponseFactory.DataBaseErr<List<AppWcsTask>>();
}
return WcsApiResponseFactory.Success(wcsTasks, totalRows.ToString());
}
/// <summary>
/// 更新任务信息
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
public WcsApiResponse UpdateWcsTaskStatus(UpdateWcsTaskStatusRequest request)
{
bool checkData = CheckData.CheckDataRules(request);
if (!checkData)
{
return WcsApiResponseFactory.RequestErr();
}
var taskData = wcsTaskDao.Select(new AppWcsTask() { PlcId = request.PlcId });
2024-05-14 16:30:56 +08:00
if (taskData == default)
{
return WcsApiResponseFactory.DataBaseErr();
}
if (taskData.Count < 1)
{
return WcsApiResponseFactory.Fail("找不到该任务,可能该任务不存在或者已经完结");
}
int updateRows = wcsTaskDao.Update(new AppWcsTask()
2024-05-14 16:30:56 +08:00
{
PlcId = request.PlcId,
TaskStatus = request.TaskStatus,
Priority = request.Priority,
Remark = $"{DateTime.Now:yyyy-MM-dd HH:mm:ss},手动修改信息"
});
return updateRows > 0 ? WcsApiResponseFactory.Success() : WcsApiResponseFactory.DataBaseErr();
}
}