质量bug

This commit is contained in:
2024-08-28 10:05:02 +08:00
parent be5bdc46e3
commit 687ea79f41
3 changed files with 44 additions and 6 deletions

View File

@@ -60,5 +60,12 @@ namespace Tnb.ProductionMgr.Interfaces
/// <param name="input"></param>
/// <returns></returns>
Task<string> ReportInstock(CheckCompleteInput input,PrdReport report = null,ISqlSugarClient db = null);
/// <summary>
/// /生产任务下发,开始 、结束、完成
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
Task<dynamic> PrdTaskRelease(PrdTaskReleaseUpInput input, ISqlSugarClient db = null);
}
}

View File

@@ -1110,7 +1110,7 @@ namespace Tnb.ProductionMgr
/// <exception cref="ArgumentNullException"></exception>
/// <exception cref="NotImplementedException"></exception>
[HttpPost]
public async Task<dynamic> PrdTaskRelease(PrdTaskReleaseUpInput input)
public async Task<dynamic> PrdTaskRelease(PrdTaskReleaseUpInput input,ISqlSugarClient db = null)
{
int row = -1;
if (input is null)
@@ -1126,10 +1126,17 @@ namespace Tnb.ProductionMgr
{
throw new ArgumentException($"{nameof(input.Behavior)} not be null or empty");
}
ISqlSugarClient db = _repository.AsSugarClient();
bool tranFlag = true;
if (db==null)
{
tranFlag = false;
db = _repository.AsSugarClient();
}
try
{
await db.Ado.BeginTranAsync();
if(tranFlag) await db.Ado.BeginTranAsync();
List<PrdMoTask> prdTaskList = new List<PrdMoTask>();
//var taskList = await _db.Queryable<PrdMoTask>().Where(it => input.TaskIds.Contains(it.id) && it.mo_task_status == DictConst.ToBeScheduledEncode).ToListAsync();
//if (taskList?.Count > 0)
@@ -1606,12 +1613,12 @@ namespace Tnb.ProductionMgr
}
await db.Ado.CommitTranAsync();
if(tranFlag) await db.Ado.CommitTranAsync();
}
catch (Exception e)
{
Log.Error(e.Message,e);
await db.Ado.RollbackTranAsync();
if(tranFlag) await db.Ado.RollbackTranAsync();
throw Oops.Bah(e.Message);
}

View File

@@ -24,6 +24,7 @@ using Tnb.WarehouseMgr.Entities.Dto.Inputs;
using Tnb.WarehouseMgr.Interfaces;
using Tnb.ProductionMgr.Interfaces;
using Tnb.ProductionMgr.Entities;
using Tnb.ProductionMgr.Entities.Dto;
using Tnb.WarehouseMgr.Entities.Enums;
using Tnb.ProductionMgr.Entities.Dto.PrdManage;
using Tnb.WarehouseMgr.Entities;
@@ -151,7 +152,11 @@ namespace Tnb.QcMgr
// }
BasMaterial basMaterial = await db.Queryable<BasMaterial>().Where(x=>x.id==moTask.material_id).FirstAsync();
PrdReport prdReport = await db.Queryable<PrdReport>().SingleAsync(x => x.id == QcCheckExecH.report_id);
UserEntity userEntity = await db.Queryable<UserEntity>().SingleAsync(x => x.Id == prdReport.create_id);
UserEntity userEntity = null;
if (prdReport != null)
{
userEntity = await db.Queryable<UserEntity>().SingleAsync(x => x.Id == prdReport.create_id);
}
CheckTaskOut CheckTaskOut = new()
{
mainid = id,
@@ -382,7 +387,25 @@ namespace Tnb.QcMgr
check_result = ((EnumCheckConclusion)dic[CheckTaskInput.result]).ToString(),
},prdReport,db);
}
}else if (QcCheckExecH.checktype == WmsWareHouseConst.XUNJIAN_ID)
{
if (CheckTaskInput.result == "no")
{
PrdMoTask prdMoTask = await db.Queryable<PrdMoTask>().Where(x=>x.mo_task_code==QcCheckExecH.mo_task_code && x.id!=null).FirstAsync();
await _prdMoTaskService.PrdTaskRelease(new PrdTaskReleaseUpInput()
{
TaskIds = NPOI.Util.Arrays.AsList(prdMoTask.id),
Behavior = "Pause",
PauseReeson = "巡检不合格"
});
List<string> carryCodes = await db.Queryable<PrdReport>().Where(x=>x.mo_task_id==prdMoTask.id).Select(x=>x.material_box_code).Distinct().ToListAsync();
await db.Updateable<WmsCarryH>()
.SetColumns(x => x.is_check == ((int)EnumCheckConclusion.).ToString())
.Where(x => carryCodes.Contains(x.carry_code))
.ExecuteCommandAsync();
}
}
await db.Ado.CommitTranAsync();
}
catch (Exception e)
@@ -420,6 +443,7 @@ namespace Tnb.QcMgr
.Select((a, b, c, d, e, f, g, h) => new Result
{
mainid = a.id,
bill_code = a.bill_code,
material_name = b.name,
material_code = b.code,
material_standard = b.material_standard,