提报报废数量反写到工单

This commit is contained in:
2023-08-14 10:48:05 +08:00
parent 06fdf932b3
commit a9461977ee
2 changed files with 91 additions and 1 deletions

View File

@@ -1364,6 +1364,7 @@ namespace Tnb.ProductionMgr
var row = -1;
var report = await db.Queryable<PrdReport>().FirstAsync(it => it.mo_task_id == input.mo_task_id);
var prdMoTask = await db.Queryable<PrdMoTask>().SingleAsync(x => x.id == input.mo_task_id);
var prdMo = await db.Queryable<PrdMo>().SingleAsync(x => x.id == prdMoTask.mo_id);
var mbomProcess = await db.Queryable<BasMbomProcess>().SingleAsync(x => x.id == prdMoTask.mbom_process_id);
if (prdMoTask.mo_task_status == DictConst.MoStatusPauseCode)
@@ -1444,6 +1445,35 @@ namespace Tnb.ProductionMgr
.Where(x => x.id == input.mo_task_id).ExecuteCommandAsync();
}
if (prdMoTask.schedule_type==1)
{
if (prdMo.reported_work_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.reported_work_qty == input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.reported_work_qty == x.reported_work_qty + input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
if (prdMo.complete_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == x.complete_qty + input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
}
if (prdMoTask.schedule_type == 2 && !string.IsNullOrEmpty(prdMoTask.mbom_process_id))
{
if (mbomProcess.is_last==1 && prdMoTask != null && !string.IsNullOrEmpty(prdMoTask.parent_id))
@@ -1462,6 +1492,32 @@ namespace Tnb.ProductionMgr
// .SetColumnsIF(flag,x=>x.mo_task_status==DictConst.ComplatedEnCode)
.Where(x => x.id == prdMoTask.parent_id).ExecuteCommandAsync();
}
if (prdMo.reported_work_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.reported_work_qty == input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.reported_work_qty == x.reported_work_qty + input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
if (prdMo.complete_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == x.complete_qty + input.reported_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
}
}
@@ -1595,6 +1651,7 @@ namespace Tnb.ProductionMgr
{
List<PrdMoTaskDefect> destDefects = new();
var batch = DateTime.Now.ToString("yyyyMMddHHmmss");
var prdMoTask = await db.Queryable<PrdMoTask>().SingleAsync(x => x.id == input.mo_task_id);
foreach (var categoryItem in input.categoryItems)
{
@@ -1619,7 +1676,7 @@ namespace Tnb.ProductionMgr
{
#region
//质检模块
var prdMoTask = await db.Queryable<PrdMoTask>().SingleAsync(x => x.id == input.mo_task_id);
TriggerPlanEntity entity = new TriggerPlanEntity();
entity.materialid = prdMoTask.material_id;
entity.processid = prdMoTask.process_id;
@@ -1640,6 +1697,34 @@ namespace Tnb.ProductionMgr
await db.Updateable(defectRecord).ExecuteCommandAsync();
}
var reportMaster = await db.Queryable<PrdReportRecord>().FirstAsync(it => it.mo_task_id == input.mo_task_id);
var prdMo = await db.Queryable<PrdMo>().SingleAsync(x => x.id == prdMoTask.mo_id);
if (prdMo.reported_work_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.scrap_qty == input.scrap_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.scrap_qty == x.scrap_qty + input.scrap_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
if (prdMo.complete_qty == null)
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == input.scrap_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
else
{
await db.Updateable<PrdMo>()
.SetColumns(x => x.complete_qty == x.complete_qty + input.scrap_qty)
.Where(x => x.id == prdMo.id).ExecuteCommandAsync();
}
if (reportMaster != null)
{
reportMaster.completed_qty += input.scrap_qty;