| | |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using WIDESEAWCS_Common.TaskEnum; |
| | | using WIDESEAWCS_Core.Enums; |
| | | using WIDESEAWCS_Core.Helper; |
| | | using WIDESEAWCS_DTO; |
| | | using WIDESEAWCS_Model.Models; |
| | | using WIDESEAWCS_QuartzJob; |
| | | using WIDESEAWCS_QuartzJob.DTO; |
| | | |
| | | namespace WIDESEAWCS_Tasks |
| | | { |
| | |
| | | /// </summary> |
| | | public void SendNewTask() |
| | | { |
| | | //try |
| | | //{ |
| | | // var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.New).ToList(); |
| | | // if (newTasks.Count > 0) |
| | | // { |
| | | // #region æ¥æ¾å¯ä¹å£«ä»»å¡ |
| | | // //var Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.MLInbound || x.TaskType == (int)TaskTypeEnum.MLOutbound).OrderByDescending(x => x.Grade).ToList(); |
| | | // //if (Tasks.Count > 0) SendGALAXISTask(Tasks); |
| | | // #endregion |
| | | try |
| | | { |
| | | var newTasks = _taskService.Db.Queryable<Dt_Task>().Where(x => x.TaskState == (int)TaskStatusEnum.New).ToList(); |
| | | if (newTasks.Count > 0) |
| | | { |
| | | #region æ¥æ¾å¯ä¹å£«ä»»å¡ |
| | | //var Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.MLInbound || x.TaskType == (int)TaskTypeEnum.MLOutbound).OrderByDescending(x => x.Grade).ToList(); |
| | | //if (Tasks.Count > 0) SendGALAXISTask(Tasks); |
| | | #endregion |
| | | |
| | | // #region æ¥æ¾RGVä»»å¡ |
| | | // var Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPInbound).OrderByDescending(x => x.Grade).ToList(); |
| | | // if (Tasks.Count > 0) SendRGVNewInTask(Tasks); |
| | | // Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPOutbound).OrderByDescending(x => x.Grade).ToList(); |
| | | // if (Tasks.Count > 0) IsMoveTask(Tasks); |
| | | // #endregion |
| | | #region æ¥æ¾RGVä»»å¡ |
| | | var Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPInbound).OrderByDescending(x => x.Grade).ToList(); |
| | | if (Tasks.Count > 0) SendRGVNewInTask(Tasks); |
| | | Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.CPOutbound).OrderByDescending(x => x.Grade).ToList(); |
| | | if (Tasks.Count > 0) IsMoveTask(Tasks); |
| | | #endregion |
| | | |
| | | // #region æ¥æ¾æµ·åº·AGVä»»å¡ |
| | | // Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.F01 || x.TaskType == (int)TaskTypeEnum.RK3F || x.TaskType == (int)TaskTypeEnum.CK3F || x.TaskType == (int)TaskTypeEnum.Q1TSJ4 || x.TaskType == (int)TaskTypeEnum.STU0003 || x.TaskType == (int)TaskTypeEnum.F02 || x.TaskType == (int)TaskTypeEnum.CHUKU1 || x.TaskType == (int)TaskTypeEnum.Q3RK || x.TaskType == (int)TaskTypeEnum.Q3CK).OrderByDescending(x => x.Grade).ToList(); |
| | | // if (Tasks.Count > 0) HIKROBOTTask(Tasks); |
| | | // #endregion |
| | | // } |
| | | //} |
| | | //catch (Exception ex) |
| | | //{ |
| | | // WriteError(nameof(TaskJob), ex.Message, ex); |
| | | //} |
| | | //#region æ¥æ¾æµ·åº·AGVä»»å¡ |
| | | //Tasks = newTasks.Where(x => x.TaskType == (int)TaskTypeEnum.F01 || x.TaskType == (int)TaskTypeEnum.RK3F || x.TaskType == (int)TaskTypeEnum.CK3F || x.TaskType == (int)TaskTypeEnum.Q1TSJ4 || x.TaskType == (int)TaskTypeEnum.STU0003 || x.TaskType == (int)TaskTypeEnum.F02 || x.TaskType == (int)TaskTypeEnum.CHUKU1 || x.TaskType == (int)TaskTypeEnum.Q3RK || x.TaskType == (int)TaskTypeEnum.Q3CK).OrderByDescending(x => x.Grade).ToList(); |
| | | //if (Tasks.Count > 0) HIKROBOTTask(Tasks); |
| | | //#endregion |
| | | |
| | | #region ä¸å海康1å°6楼çAGVä»»å¡/ä¸å海康6å°1楼çAGVä»»å¡ |
| | | Tasks = newTasks.Where(x => (x.TaskType == (int)TaskTypeEnum.Q3CK) || x.TaskType == (int)TaskTypeEnum.Q3RK || x.TaskType == (int)TaskTypeEnum.F01).OrderByDescending(x => x.Grade).ToList(); |
| | | if (Tasks.Count > 0) SendAGVTask(Tasks); |
| | | |
| | | |
| | | #endregion |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | WriteError(nameof(TaskJob), ex.Message, ex); |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | |
| | | //Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.CheckPalletCodeFinish).OrderByDescending(x => x.Grade).ToList(); |
| | | //if (Tasks.Count > 0) SendAGVWaitToExecuteTask(Tasks); |
| | | #endregion |
| | | |
| | | |
| | | #region å¤çagvå¾
空车æ¬è¿ä»»å¡ |
| | | Tasks = ExecutTasks.Where(x => x.TaskState == (int)TaskStatusEnum.HkTransportCompleted).OrderByDescending(x => x.Grade).ToList(); |
| | | if (Tasks.Count > 0) SendHKWaitTask(Tasks); |
| | | #endregion |
| | | |
| | | |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | /// <summary> |
| | | /// å¤çåå
¥è®¾å¤ä¿¡å·å¼å¸¸ä»»å¡ |
| | | /// </summary> |
| | | public void HandleTasks() |
| | | { |
| | | #region |
| | | var tasks = _taskService.Repository.QueryData(x => x.TaskState == TaskStatusEnum.Finish.ObjToInt() && !string.IsNullOrEmpty(x.Remark)); |
| | | if (tasks.Count > 0) |
| | | { |
| | | List<Dt_Task> list = new List<Dt_Task>(); |
| | | foreach (var item in tasks) |
| | | { |
| | | var infos = item.Remark.Split("_"); |
| | | var device = Storage.Devices.FirstOrDefault(x => x.DeviceCode == infos[0]) as OtherDevice; |
| | | if (device != null && device.IsConnected) |
| | | { |
| | | DeviceProDTO? devicePro = device.DeviceProDTOs.FirstOrDefault(x => x.DeviceProParamName == infos[1] && x.DeviceChildCode == infos[3]); |
| | | if (devicePro != null) |
| | | { |
| | | var W = device.Communicator.WriteObj(devicePro.DeviceProAddress, devicePro.DeviceDataType, infos[2]); |
| | | if (W) list.Add(item); |
| | | } |
| | | } |
| | | } |
| | | _taskService.Repository.DeleteAndMoveIntoHty(list, OperateTypeEnum.èªå¨å é¤); |
| | | } |
| | | #endregion |
| | | } |
| | | } |
| | | } |