库存报表,日志完善

This commit is contained in:
2024-07-09 14:06:59 +08:00
parent d333b62dfa
commit d39859c105
12 changed files with 549 additions and 13 deletions

View File

@@ -13,6 +13,7 @@ using Microsoft.Extensions.Logging;
using NPOI.POIFS.Storage;
using SqlSugar;
using Tnb.BasicData.Entities;
using Tnb.ProductionMgr.Entities;
using Tnb.WarehouseMgr.Entities;
using Tnb.WarehouseMgr.Entities.Attributes;
using Tnb.WarehouseMgr.Entities.Consts;
@@ -53,7 +54,7 @@ namespace Tnb.WarehouseMgr
}
/// <summary>
/// 从产线呼叫装料架到暂存仓/缓存仓
/// 从产线呼叫装料架到暂存仓/缓存仓(退料)
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
@@ -350,6 +351,9 @@ namespace Tnb.WarehouseMgr
{
WmsCarryH wmsCarryH = await _db.Queryable<WmsCarryH>().Where(r => r.id == input.carryIds[0]).FirstAsync();
// 用于回写prd_material_receipt_d is_all_feeding
List<WmsCarryH> carryHs = new List<WmsCarryH>();
List<WmsCarryCode> wmsCarryCodes = null;
// 料架到暂存仓
if (wmsCarryH.carrystd_id == "26037267399717")
@@ -358,28 +362,37 @@ namespace Tnb.WarehouseMgr
.InnerJoin<WmsCarryH>((a, b) => a.membercarry_id == b.id)
.InnerJoin<WmsCarryCode>((a, b, c) => b.id == c.carry_id)
.Where((a, b, c) => a.carry_id == wmsCarryH.id).Select((a, b, c) => c).ToList();
carryHs = _db.Queryable<WmsCarryD>()
.InnerJoin<WmsCarryH>((a, b) => a.membercarry_id == b.id)
.Where((a, b) => a.carry_id == wmsCarryH.id).Select((a, b) => b).ToList();
}
// 载运小车和载运料架到缓存仓
else if (wmsCarryH.carrystd_id == "26103233723941" || wmsCarryH.carrystd_id == "34995839046677")
{
carryHs.Add(wmsCarryH);
wmsCarryCodes = _db.Queryable<WmsCarryH>()
.InnerJoin<WmsCarryCode>((a, b) => a.id == b.carry_id)
.Where((a, b) => a.id == wmsCarryH.id).Select((a, b) => b).ToList();
}
else
{
Logger.LogError($"【WmsPrdReturnService ModifyAsync】当前载具的规格id是{wmsCarryH.carrystd_id} 无法处理此类型的载具!");
return;
throw new Exception($"【WmsPrdReturnService ModifyAsync】当前载具的规格id是{wmsCarryH.carrystd_id} 无法处理此类型的载具!");
}
if (wmsCarryCodes.Count == 0)
{
Logger.LogWarning($"【WmsPrdReturnService ModifyAsync】载具{input.carryIds[0]}没有绑定物料条码");
return;
throw new Exception($"【WmsPrdReturnService ModifyAsync】载具{input.carryIds[0]}没有绑定物料条码");
}
await _db.Ado.BeginTranAsync();
int row_is_all_feeding = await _db.Updateable<PrdMaterialReceiptD>().SetColumns(r => r.is_all_feeding == 1)
.Where(r => r.is_all_feeding == 0 && carryHs.Select(x => x.id).Contains(r.member_carry_id)).ExecuteCommandAsync();
Logger.LogInformation($"【WmsPrdReturnService ModifyAsync】更新签收表is_all_feeding 影响记录条数 {row_is_all_feeding}条 影响载具为{string.Join(',', carryHs.Select(x => x.carry_code).ToList())}");
// 更新已转数量
List<WmsPrdReturnD> wmsPrdReturnDs = _db.Queryable<WmsPrdReturnD>().Where(r => r.bill_id == input.source_id).ToList();
foreach (WmsPrdReturnD wmsPrdReturnD in wmsPrdReturnDs)