电梯下发逻辑变更

This commit is contained in:
2024-07-17 22:50:24 +08:00
parent c6ae917bc9
commit 019651b023
10 changed files with 246 additions and 144 deletions

View File

@@ -59,7 +59,7 @@ namespace Tnb.WarehouseMgr
/// <param name="input"></param>
/// <returns></returns>
[HttpPost, NonUnify, AllowAnonymous]
public async Task<dynamic> PrdReturn(PrdReturnInput input)
public async Task<Result> PrdReturn(PrdReturnInput input)
{
WmsPrdReturnH wmsPrdReturnH = await _db.Queryable<WmsPrdReturnH>().Where(r => r.id == input.source_id).FirstAsync();
if (wmsPrdReturnH == null)
@@ -93,12 +93,12 @@ namespace Tnb.WarehouseMgr
else
{
Logger.LogError($"【PrdReturn】当前载具的规格id是{wmsCarryH.carrystd_id} 无法处理此类型的载具!");
return Oops.Bah($"【PrdReturn】当前载具的规格id是{wmsCarryH.carrystd_id} 无法处理此类型的载具!");
return await ToApiResult(HttpStatusCode.InternalServerError, $"【PrdReturn】当前载具的规格id是{wmsCarryH.carrystd_id} 无法处理此类型的载具!");
}
}
async Task<dynamic> Return_到暂存仓(PrdReturnInput input, WmsCarryH wmsCarryH, WmsPrdReturnH wmsPrdReturnH)
async Task<Result> Return_到暂存仓(PrdReturnInput input, WmsCarryH wmsCarryH, WmsPrdReturnH wmsPrdReturnH)
{
try
{
@@ -134,15 +134,15 @@ namespace Tnb.WarehouseMgr
BasLocation endlocation = rackEndLocations.First();
var memberCarryCodes = _db.Queryable<WmsCarryH>()
.InnerJoin<WmsCarryCode>((a, b) => a.id == b.carry_id)
.Where((a, b) => input.details.Select(r => r.carry_code).Contains(a.carry_code)).Select((a, b) => new
{
carry_code = a.carry_code,
barcode = b.barcode,
material_id = b.material_id,
material_code = b.material_code,
}).ToList();
var memberCarryCodes = _db.Queryable<WmsCarryH>()
.InnerJoin<WmsCarryCode>((a, b) => a.id == b.carry_id)
.Where((a, b) => input.details.Select(r => r.carry_code).Contains(a.carry_code)).Select((a, b) => new
{
carry_code = a.carry_code,
barcode = b.barcode,
material_id = b.material_id,
material_code = b.material_code,
}).ToList();
List<string> matIds = memberCarryCodes.Select(r => r.material_id).Distinct().ToList();
@@ -177,7 +177,7 @@ namespace Tnb.WarehouseMgr
await _db.Ado.BeginTranAsync();
// 标记为退料
int row2= await _db.Updateable<WmsCarryH>().SetColumns(r => r.carry_status == ((int)(EnumCarryStatus.退)).ToString()).Where(r => r.carry_code == wmsCarryH.carry_code).ExecuteCommandAsync();
int row2 = await _db.Updateable<WmsCarryH>().SetColumns(r => r.carry_status == ((int)(EnumCarryStatus.退)).ToString()).Where(r => r.carry_code == wmsCarryH.carry_code).ExecuteCommandAsync();
if (row2 == 0)
{
throw new AppFriendlyException($"【PrdReturn】 料架 {wmsCarryH.carry_code} 退料状态回写失败", 500);
@@ -228,12 +228,12 @@ namespace Tnb.WarehouseMgr
Logger.LogError("【PrdReturn】" + ex.Message);
Logger.LogError("【PrdReturn】" + ex.StackTrace);
await _db.Ado.RollbackTranAsync();
throw Oops.Bah(ex.Message);
return await ToApiResult(HttpStatusCode.InternalServerError, ex.Message);
}
return await Task.FromResult(true);
return await ToApiResult(HttpStatusCode.OK, "成功");
}
async Task<dynamic> Return_到缓存仓(PrdReturnInput input, WmsCarryH wmsCarryH, WmsPrdReturnH wmsPrdReturnH)
async Task<Result> Return_到缓存仓(PrdReturnInput input, WmsCarryH wmsCarryH, WmsPrdReturnH wmsPrdReturnH)
{
try
{
@@ -304,7 +304,7 @@ namespace Tnb.WarehouseMgr
await _db.Ado.BeginTranAsync();
// 标记为退料
int row2 =await _db.Updateable<WmsCarryH>().SetColumns(r => r.carry_status == ((int)(EnumCarryStatus.退)).ToString()).Where(r => r.id == wmsCarryH.id).ExecuteCommandAsync();
int row2 = await _db.Updateable<WmsCarryH>().SetColumns(r => r.carry_status == ((int)(EnumCarryStatus.退)).ToString()).Where(r => r.id == wmsCarryH.id).ExecuteCommandAsync();
if (row2 == 0)
{
throw new AppFriendlyException($"【PrdReturn】 料架 {wmsCarryH.carry_code} 退料状态回写失败", 500);
@@ -335,9 +335,9 @@ namespace Tnb.WarehouseMgr
Logger.LogError("【PrdReturn】" + ex.Message);
Logger.LogError("【PrdReturn】" + ex.StackTrace);
await _db.Ado.RollbackTranAsync();
throw Oops.Bah(ex.Message);
return await ToApiResult(HttpStatusCode.InternalServerError, ex.Message);
}
return await Task.FromResult(true);
return await ToApiResult(HttpStatusCode.OK, "成功");
}
public override async Task ModifyAsync(WareHouseUpInput input)