11213
This commit is contained in:
parent
f88400eb00
commit
88c342751e
@ -68,11 +68,10 @@ namespace ZR.Admin.WebApi.Controllers.mes.mm
|
||||
[HttpPost("generatetask")]
|
||||
public IActionResult Generatetask([FromBody] IngredientTaskDto task)
|
||||
{
|
||||
if(task==null||task.workorders==null)
|
||||
if(task==null||task.workorders==null|| task.workorders.Count==0)
|
||||
{
|
||||
SUCCESS(null);
|
||||
return SUCCESS(null);
|
||||
}
|
||||
task.ToCreate();
|
||||
int res = materialInputService.Generatetask(task, HttpContext.GetName());
|
||||
return SUCCESS(res);
|
||||
}
|
||||
|
||||
@ -16,6 +16,7 @@ using System.Globalization;
|
||||
using static System.Runtime.InteropServices.JavaScript.JSType;
|
||||
using ZR.Model.MES.mm.Dto;
|
||||
using SqlSugar;
|
||||
using Microsoft.Extensions.Hosting;
|
||||
|
||||
namespace ZR.Service.mes.mm
|
||||
{
|
||||
@ -83,9 +84,31 @@ namespace ZR.Service.mes.mm
|
||||
.Where(it => it.Date == dayOfWeekNumber)
|
||||
.Where(it=>it.Remark3=="是")
|
||||
.ToList();
|
||||
string[] workorderArray=new string[WorkorderList.Count];
|
||||
for(int i = 0; i< WorkorderList.Count; i++)
|
||||
{
|
||||
workorderArray[i] = WorkorderList[i].ClientWorkorder;
|
||||
}
|
||||
// 配料list
|
||||
List<MmFkWorkorderIngredient> ingredients=Context.Queryable<MmFkWorkorderIngredient>()
|
||||
.Where(it=> workorderArray.Contains(it.FkWorkorder))
|
||||
.Where(it=> it.Isingredient==0)
|
||||
.ToList();
|
||||
for (int i = 0; i < WorkorderList.Count; i++)
|
||||
{
|
||||
for (int j = 0; j < ingredients.Count; j++)
|
||||
{
|
||||
if (ingredients[j].FkWorkorder == WorkorderList[i].ClientWorkorder)
|
||||
{
|
||||
WorkorderList[i].PreviousNumber = ingredients[j].Remian ?? 0;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
return WorkorderList;
|
||||
return WorkorderList;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@ -96,17 +119,45 @@ namespace ZR.Service.mes.mm
|
||||
public int Generatetask(IngredientTaskDto task,string name)
|
||||
{
|
||||
List<MmIngredientTask> ingredientTasks=new List<MmIngredientTask> ();
|
||||
|
||||
foreach(var item in task.workorders)
|
||||
long taskid= SnowFlakeSingle.Instance.NextId();
|
||||
foreach (var item in task.workorders)
|
||||
{
|
||||
//TODO 处理 未完成的工单
|
||||
//1 判断为未完成的工单
|
||||
if (item.previousNumber > item.previousNumbered)
|
||||
{
|
||||
int remain = item.previousNumber - item.previousNumbered;
|
||||
|
||||
//插入或者修改
|
||||
MmFkWorkorderIngredient ingredient=new MmFkWorkorderIngredient();
|
||||
ingredient.FkWorkorder=item.workorder;
|
||||
ingredient.Isingredient=0;
|
||||
ingredient.Remian = remain;
|
||||
ingredient.CreatedTime=DateTime.Now;
|
||||
ingredient.UpdatedTime=DateTime.Now;
|
||||
|
||||
var x = Context.Storageable(ingredient).ToStorage();
|
||||
x.AsInsertable.ExecuteCommand();//不存在插入
|
||||
x.AsUpdateable.IgnoreColumns(z => z.CreatedTime).ExecuteCommand();//存在更新
|
||||
|
||||
}
|
||||
else if (item.previousNumber==item.previousNumbered)
|
||||
{
|
||||
Context.Updateable<MmFkWorkorderIngredient>()
|
||||
.SetColumns(it => it.Isingredient == 1)
|
||||
.SetColumns(it => it.Remian == 0)
|
||||
.Where(it => it.FkWorkorder == item.workorder).ExecuteCommand();
|
||||
}
|
||||
|
||||
MmIngredientTask ingredientTask = new MmIngredientTask();
|
||||
ingredientTask.AgvPosition = task.agv_position;
|
||||
ingredientTask.TaskId = SnowFlakeSingle.Instance.NextId();
|
||||
ingredientTask.TaskId = taskid;
|
||||
ingredientTask.Workorder = item.workorder;
|
||||
ingredientTask.Partnumber = item.partnumber;
|
||||
ingredientTask.PreviousNumber = item.previousNumber;
|
||||
ingredientTask.PreviousNumbered=item.previousNumbered;
|
||||
ingredientTask.CreatedBy = name;
|
||||
ingredientTask.CreatedTime=DateTime.Now;
|
||||
|
||||
|
||||
ingredientTasks.Add(ingredientTask);
|
||||
|
||||
63
ZR.Service/mes/mm/MmFkWorkorderIngredient.cs
Normal file
63
ZR.Service/mes/mm/MmFkWorkorderIngredient.cs
Normal file
@ -0,0 +1,63 @@
|
||||
using SqlSugar;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace ZR.Service.mes.mm
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
[SugarTable("mm_fk_workorder_ingredient")]
|
||||
public class MmFkWorkorderIngredient
|
||||
{
|
||||
/// <summary>
|
||||
/// Id
|
||||
/// </summary>
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
||||
public int Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 工单号
|
||||
/// </summary>
|
||||
[SugarColumn(IsPrimaryKey = true, IsIdentity = false, ColumnName = "fk_workorder")]
|
||||
public string FkWorkorder { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否完成配料
|
||||
/// </summary>
|
||||
public int? Isingredient { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 剩余的待上件数量
|
||||
/// </summary>
|
||||
public int? Remian { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CreatedBy
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "cREATED_BY")]
|
||||
public string CreatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// CreatedTime
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "cREATED_TIME")]
|
||||
public DateTime? CreatedTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// UpdatedBy
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "uPDATED_BY")]
|
||||
public string UpdatedBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// UpdatedTime
|
||||
/// </summary>
|
||||
[SugarColumn(ColumnName = "uPDATED_TIME")]
|
||||
public DateTime? UpdatedTime { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user