diff --git a/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs b/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs
index 6176426c..ada0fa11 100644
--- a/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs
+++ b/ZR.Admin.WebApi/Controllers/mes/mm/MaterialInputController.cs
@@ -1,5 +1,6 @@
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
+using ZR.Admin.WebApi.Extensions;
using ZR.Model.MES.mm.Dto;
using ZR.Service.mes.mm;
using ZR.Service.mes.mm.IService;
@@ -58,5 +59,22 @@ namespace ZR.Admin.WebApi.Controllers.mes.mm
var response = materialInputService.Getworkorderlist(query.datetimespan);
return SUCCESS(response);
}
+
+
+ ///
+ /// 生成配料任务
+ ///
+ ///
+ [HttpPost("generatetask")]
+ public IActionResult Generatetask([FromBody] IngredientTaskDto task)
+ {
+ if(task==null||task.workorders==null)
+ {
+ SUCCESS(null);
+ }
+ task.ToCreate();
+ int res = materialInputService.Generatetask(task, HttpContext.GetName());
+ return SUCCESS(res);
+ }
}
}
\ No newline at end of file
diff --git a/ZR.Model/MES/mm/Dto/IngredientTaskDto.cs b/ZR.Model/MES/mm/Dto/IngredientTaskDto.cs
new file mode 100644
index 00000000..f400cb67
--- /dev/null
+++ b/ZR.Model/MES/mm/Dto/IngredientTaskDto.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZR.Model.MES.mm.Dto
+{
+ public class IngredientTaskDto
+ {
+
+ public string agv_position { set; get; }
+ public List workorders { set; get; }
+
+ }
+
+ public class Workerorder_Ingredient
+ {
+ public string workorder { set; get; }
+ public string partnumber { set; get; }
+ public int previousNumber { set; get; }
+ public int previousNumbered { set; get; }
+ }
+}
diff --git a/ZR.Model/MES/mm/MmIngredientTask.cs b/ZR.Model/MES/mm/MmIngredientTask.cs
new file mode 100644
index 00000000..af056847
--- /dev/null
+++ b/ZR.Model/MES/mm/MmIngredientTask.cs
@@ -0,0 +1,78 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace ZR.Model.MES.mm
+{
+ ///
+ /// 配料任务清单
+ ///
+ [SugarTable("mm_ingredient_task")]
+ public class MmIngredientTask
+ {
+ ///
+ /// id
+ ///
+ [SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
+ public int Id { get; set; }
+
+ ///
+ /// 站点
+ ///
+ [SugarColumn(ColumnName = "agv_position")]
+ public string AgvPosition { get; set; }
+
+ ///
+ /// 配料任务id
+ ///
+ [SugarColumn(IsPrimaryKey = true, IsIdentity = false, ColumnName = "task_id")]
+ public long TaskId { get; set; }
+
+ ///
+ /// 工单id
+ ///
+ public string Workorder { get; set; }
+
+ ///
+ /// 零件号id
+ ///
+ public string Partnumber { get; set; }
+
+ ///
+ /// 上件数
+ ///
+ public int? PreviousNumber { get; set; }
+
+ ///
+ /// 已经上件数
+ ///
+ public int? PreviousNumbered { get; set; }
+
+ ///
+ /// 创建人
+ ///
+ [SugarColumn(ColumnName = "cREATED_BY")]
+ public string CreatedBy { get; set; }
+
+ ///
+ /// 创建时间
+ ///
+ [SugarColumn(ColumnName = "cREATED_TIME")]
+ public DateTime? CreatedTime { get; set; }
+
+ ///
+ /// 更新人
+ ///
+ [SugarColumn(ColumnName = "uPDATED_BY")]
+ public string UpdatedBy { get; set; }
+
+ ///
+ /// 更新时间
+ ///
+ [SugarColumn(ColumnName = "uPDATED_TIME")]
+ public DateTime? UpdatedTime { get; set; }
+
+ }
+}
diff --git a/ZR.Service/mes/mm/IService/IMaterialInputService.cs b/ZR.Service/mes/mm/IService/IMaterialInputService.cs
index 456503ea..aec9c747 100644
--- a/ZR.Service/mes/mm/IService/IMaterialInputService.cs
+++ b/ZR.Service/mes/mm/IService/IMaterialInputService.cs
@@ -1,8 +1,10 @@
-using System;
+using Microsoft.AspNetCore.Mvc;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using ZR.Model.MES.mm.Dto;
using ZR.Model.MES.pro;
namespace ZR.Service.mes.mm.IService
@@ -13,6 +15,7 @@ namespace ZR.Service.mes.mm.IService
string[] Getend_AGV_points();
List Getworkorderlist(DateTime datetimespan);
+ int Generatetask(IngredientTaskDto task,string name);
}
}
diff --git a/ZR.Service/mes/mm/MaterialInputService.cs b/ZR.Service/mes/mm/MaterialInputService.cs
index 67e4915e..846c4673 100644
--- a/ZR.Service/mes/mm/MaterialInputService.cs
+++ b/ZR.Service/mes/mm/MaterialInputService.cs
@@ -14,6 +14,8 @@ using ZR.Model.MES.mm;
using ZR.Model.MES.pro;
using System.Globalization;
using static System.Runtime.InteropServices.JavaScript.JSType;
+using ZR.Model.MES.mm.Dto;
+using SqlSugar;
namespace ZR.Service.mes.mm
{
@@ -73,10 +75,7 @@ namespace ZR.Service.mes.mm
DayOfWeek dayOfWeek = datetimespan.DayOfWeek;
int dayOfWeekNumber = (int)dayOfWeek + 1; // 将 DayOfWeek 枚举转换为从 1 开始的数字
- Console.WriteLine($"日期:{datetimespan}");
- Console.WriteLine($"年份:{year}");
- Console.WriteLine($"周数:{week}");
- Console.WriteLine($"这一周中的第几天:{dayOfWeekNumber}");
+
List WorkorderList = Context.Queryable()
.Where(it => it.Year == year)
@@ -89,6 +88,36 @@ namespace ZR.Service.mes.mm
return WorkorderList;
}
+ ///
+ /// 生成任务单
+ ///
+ ///
+ ///
+ public int Generatetask(IngredientTaskDto task,string name)
+ {
+ List ingredientTasks=new List ();
+
+ foreach(var item in task.workorders)
+ {
+ MmIngredientTask ingredientTask = new MmIngredientTask();
+ ingredientTask.AgvPosition = task.agv_position;
+ ingredientTask.TaskId = SnowFlakeSingle.Instance.NextId();
+ ingredientTask.Workorder = item.workorder;
+ ingredientTask.Partnumber = item.partnumber;
+ ingredientTask.PreviousNumber = item.previousNumber;
+ ingredientTask.PreviousNumbered=item.previousNumbered;
+ ingredientTask.CreatedBy = name;
+
+
+ ingredientTasks.Add(ingredientTask);
+
+ }
+
+ return Context.Insertable(ingredientTasks).ExecuteCommand();
+
+
+ }
+
}
}