From 9bd425125ca962cf44d292916fc7089d41015db8 Mon Sep 17 00:00:00 2001
From: wxw <Administrator@DESKTOP-5BIMHQ3>
Date: 星期六, 14 九月 2024 09:46:02 +0800
Subject: [PATCH] 任务管理新增功能增加分配拆垛工位功能
---
Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs | 43 ++++++++++++++-----------------------------
Admin.NET/WCS.Application/Service/WcsTask/Dto/TaskPortDto.cs | 15 +++++++++++++++
Admin.NET/WCS.Application/Entity/WcsCheckTask.cs | 2 +-
3 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/Admin.NET/WCS.Application/Entity/WcsCheckTask.cs b/Admin.NET/WCS.Application/Entity/WcsCheckTask.cs
index 4e618f3..127350a 100644
--- a/Admin.NET/WCS.Application/Entity/WcsCheckTask.cs
+++ b/Admin.NET/WCS.Application/Entity/WcsCheckTask.cs
@@ -30,7 +30,7 @@
/// 鏈哄櫒浜虹被鍨�
/// </summary>
[SugarColumn(ColumnName = "RoboatType", ColumnDescription = "鏈哄櫒浜虹被鍨�", Length = 5)]
- public string? RoboatType { get; set; }
+ public PLCTypeEnum? RoboatType { get; set; }
/// <summary>
/// 鏈哄櫒浜虹紪鍙�
diff --git a/Admin.NET/WCS.Application/Service/WcsTask/Dto/TaskPortDto.cs b/Admin.NET/WCS.Application/Service/WcsTask/Dto/TaskPortDto.cs
new file mode 100644
index 0000000..42a113c
--- /dev/null
+++ b/Admin.NET/WCS.Application/Service/WcsTask/Dto/TaskPortDto.cs
@@ -0,0 +1,15 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace WCS.Application.Service.WcsTask.Dto
+{
+ public class TaskPortDto
+ {
+ public string LineNO { get; set; }
+ public string Port { get; set; }
+ public int PortCount { get; set; }
+ }
+}
diff --git a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
index d0e0afe..deb8a45 100644
--- a/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
+++ b/Admin.NET/WCS.Application/Service/WcsTask/WcsTaskService.cs
@@ -4,6 +4,7 @@
using Furion.DatabaseAccessor;
using Microsoft.AspNetCore.SignalR;
using WCS.Application.Entity;
+using WCS.Application.Service.WcsTask.Dto;
namespace WCS.Application;
@@ -73,38 +74,25 @@
}
var entity = input.Adapt<WcsTask>();
entity.Origin = "WCS";
- await _wcsTaskRep.InsertAsync(entity);
- #region 缁戝畾鍨涙満
-
- //鐗╂枡鍝佺淇℃伅
- var skuInfo = await _wcsMateialPzInfoRep.Context.Queryable<WcsMateialPzInfo>().Where(w => w.SkuNo == input.SkuNo).FirstAsync();
- if (skuInfo == null)
- {
- throw Oops.Oh("鐗╂枡鍝佺淇℃伅涓嶅瓨鍦�");
- }
+ #region 鍒嗛厤鎷嗗灈宸ヤ綅
//鍒嗘嫞浠诲姟淇℃伅
- var checkTaskInfo = await _wcsCheckTaskRep.Context.Queryable<WcsCheckTask>().Where(w => w.Status == "0" && w.RoboatType == "0").OrderBy(o => o.LineNo).FirstAsync();
- if (checkTaskInfo == null)
+ List<TaskPortDto> taskPortList = await _wcsCheckTaskRep.Context.Queryable<WcsCheckTask>().Where(w => w.RoboatType == PLCTypeEnum.StackingRobot).Select<TaskPortDto>().ToListAsync();
+ if (taskPortList.Count<=0)
{
- throw Oops.Oh("鍒嗘嫞浠诲姟淇℃伅涓嶅瓨鍦�");
+ throw Oops.Bah("鎷嗗灈宸ヤ綅寮傚父");
}
- if (checkTaskInfo.Status != "0")
- {
- throw Oops.Oh("璇ュ伐浣嶅凡缁戝畾浠诲姟锛岃鍕垮啀娆$粦瀹�");
+ var taskList = await _wcsTaskRep.Context.Queryable<WcsTask>().Where(w => w.Status == 0 && w.IsBind == 0 && w.TaskType == TaskTypeEnum.Out).ToListAsync();
+ foreach (var item in taskPortList)
+ {
+ item.PortCount= taskList.Where(w=>w.StationNum==item.Port).Count();
}
- checkTaskInfo.OrderNo = "";
- checkTaskInfo.TaskNo = entity.TaskNo;
- checkTaskInfo.LotNo = entity.LotNo;
- checkTaskInfo.SkuNo = entity.SkuNo;
- checkTaskInfo.SkuName = entity.SkuName;
- checkTaskInfo.BoxType = "";
- checkTaskInfo.Qty = entity.Qty;
- checkTaskInfo.Status = "1";//宸茬粦瀹�
- checkTaskInfo.PZNo = skuInfo.PZNo;
- //鏇存柊鍒嗘嫞浠诲姟
- await _wcsCheckTaskRep.AsUpdateable(checkTaskInfo).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
+ var portInfo = taskPortList.OrderBy(o => o.PortCount).ThenBy(o => o.LineNO).First();
+ //鎷嗗灈宸ヤ綅鍙�
+ entity.StationNum = portInfo.Port;
#endregion
+
+ await _wcsTaskRep.InsertAsync(entity);
return entity.Id;
}
@@ -232,7 +220,4 @@
throw Oops.Oh("浠诲姟鐘舵�佸紓甯�");
}
}
-
-
-
}
--
Gitblit v1.8.0