using WcsMain.DataBase.Dao; using WcsMain.DataBase.TableEntity; using WcsMain.StaticData; using WcsMain.WcsAttribute.AutoFacAttribute; namespace WcsMain.Business.CommonAction; [Component] public class WmsTaskAction(AppWmsTaskDao wmsTaskDao, SendWmsTaskStatus sendWmsTaskStatus) { private readonly SendWmsTaskStatus _sendWmsTaskStatus = sendWmsTaskStatus; private readonly AppWmsTaskDao _wmsTaskDao = wmsTaskDao; /// /// 重置WMS任务 /// /// /// /// /// public string ResetWmsTaskStatus(string? taskId, string? newDestination, string systemName) { string resetErrMessage = _wmsTaskDao.ResetTaskWithTaskId(taskId, newDestination, $"任务被{systemName}重置"); if (string.IsNullOrEmpty(resetErrMessage)) return string.Empty; // 重置成功 // 重置失败,返回错误信息 return $"重置状态失败:任务号:{taskId},参考异常信息:{resetErrMessage}"; } /// /// 完成WMS任务 /// /// /// /// public string CompleteWmsTaskStatus(string? taskId, string sysName) { List? wmsTasks = _wmsTaskDao.Select(new AppWmsTask() { TaskId = taskId }); if (wmsTasks != default && wmsTasks.Count > 0) { AppWmsTask wmsTask = wmsTasks[0]; if (sysName != StaticString.WMS && wmsTask.CreatePerson == StaticString.WMS) { _sendWmsTaskStatus.SendTaskComplete(taskId); } } string resetErrMessage = _wmsTaskDao.CompleteTaskWithTaskId(taskId, $"【{sysName}】完成"); if (string.IsNullOrEmpty(resetErrMessage)) return string.Empty; // 完成成功 return $"完成任务失败。任务号:{taskId},参考异常信息:{resetErrMessage}"; } /// /// 删除WMS任务 /// /// /// /// public string DeleteWmsTaskStatus(string? taskId, string sysName) { List? wmsTasks = _wmsTaskDao.Select(new AppWmsTask() { TaskId = taskId }); if (wmsTasks != default && wmsTasks.Count > 0) { AppWmsTask wmsTask = wmsTasks[0]; if (sysName != StaticString.WMS && wmsTask.CreatePerson == StaticString.WMS) { _sendWmsTaskStatus.SendTaskErr(taskId, $"{sysName} 删除/取消"); } } string resetErrMessage = _wmsTaskDao.DeleteTaskWithTaskId(taskId, $"【{sysName}】删除/取消"); if (string.IsNullOrEmpty(resetErrMessage)) return string.Empty; // 删除成功 return $"删除/取消任务失败。任务号:{taskId},参考异常信息:{resetErrMessage}"; } }