This commit is contained in:
2024-10-31 09:39:54 +08:00
5 changed files with 77 additions and 43 deletions

View File

@@ -1873,6 +1873,7 @@ namespace Tnb.WarehouseMgr
wmsTransferInstockD.xf_qty = 0; wmsTransferInstockD.xf_qty = 0;
wmsTransferInstockD.pr_qty = detail.qty; wmsTransferInstockD.pr_qty = detail.qty;
wmsTransferInstockD.lineno = detail.lineno; wmsTransferInstockD.lineno = detail.lineno;
wmsTransferInstockD.udi_code = detail.udi_code;
var material = await db.Queryable<BasMaterial>().Where(p => p.code == detail.material_code).FirstAsync(); var material = await db.Queryable<BasMaterial>().Where(p => p.code == detail.material_code).FirstAsync();
if (material != null) if (material != null)
{ {

View File

@@ -98,7 +98,7 @@ namespace Tnb.WarehouseMgr
JObject jobject = new JObject(); JObject jobject = new JObject();
jobject["code"] = "200"; jobject["code"] = "200";
List<WmsTransferInstockD> wmsTransferInstockDs = _db.Queryable<WmsTransferInstockD>().Where(r => r.bill_id == input.id && r.status != WmsWareHouseConst.TASK_BILL_STATUS_COMPLE_ID).ToList(); List<WmsTransferInstockD> wmsTransferInstockDs = _db.Queryable<WmsTransferInstockD>().Where(r => r.bill_id == input.id).ToList();
jobject["data"] = JArray.Parse(JsonConvert.SerializeObject(wmsTransferInstockDs)); jobject["data"] = JArray.Parse(JsonConvert.SerializeObject(wmsTransferInstockDs));

View File

@@ -1175,8 +1175,8 @@ namespace Tnb.WarehouseMgr
getdic.Add("ZZ-01-02", new string[] { "外包装箱码垛线", "WBZX_x1_take_mtp", "true" }); getdic.Add("ZZ-01-02", new string[] { "外包装箱码垛线", "WBZX_x1_take_mtp", "true" });
getdic.Add("ZZ-02-02", new string[] { "外包装箱码垛线", "WBZX_x2_take_mtp", "true" }); getdic.Add("ZZ-02-02", new string[] { "外包装箱码垛线", "WBZX_x2_take_mtp", "true" });
getdic.Add("ZZ-01-01", new string[] { "外包装箱码垛线", "WBZX_x1_put_mtp", "true" }); putdic.Add("ZZ-01-01", new string[] { "外包装箱码垛线", "WBZX_x1_put_mtp", "true" });
getdic.Add("ZZ-02-01", new string[] { "外包装箱码垛线", "WBZX_x2_put_mtp", "true" }); putdic.Add("ZZ-02-01", new string[] { "外包装箱码垛线", "WBZX_x2_put_mtp", "true" });
getdic.Add("ZSSSXCTU02", new string[] { "YTCS", "右输送线上层允许出箱3", "true" }); getdic.Add("ZSSSXCTU02", new string[] { "YTCS", "右输送线上层允许出箱3", "true" });
@@ -3141,11 +3141,23 @@ namespace Tnb.WarehouseMgr
clearCarryIds.AddRange(memberCarryIds); clearCarryIds.AddRange(memberCarryIds);
} }
// await db.Updateable<WmsCarryH>()
// .SetColumns(x => x.carry_status == carryStatus)
// .SetColumns(x => x.is_check == isCheck)
// .Where(x => clearCarryIds.Contains(x.id))
// .ExecuteCommandAsync();
await db.Updateable<WmsCarryH>() await db.Updateable<WmsCarryH>()
.SetColumns(x => x.carry_status == carryStatus) .SetColumns(x => x.carry_status == carryStatus)
.Where(x => clearCarryIds.Contains(x.id))
.ExecuteCommandAsync();
Logger.Information($"【TaskComplate FloorCallMaterial】 更新载具状态 {JsonConvert.SerializeObject(clearCarryIds)}成功");
await db.Updateable<WmsCarryH>()
.SetColumns(x => x.is_check == isCheck) .SetColumns(x => x.is_check == isCheck)
.Where(x => clearCarryIds.Contains(x.id)) .Where(x => clearCarryIds.Contains(x.id))
.ExecuteCommandAsync(); .ExecuteCommandAsync();
Logger.Information($"【TaskComplate FloorCallMaterial】 更新载具检验 {JsonConvert.SerializeObject(clearCarryIds)}成功");
//await QTRK2BIP(dt, db); //await QTRK2BIP(dt, db);
// require_code是任务单 // require_code是任务单
@@ -3167,11 +3179,23 @@ namespace Tnb.WarehouseMgr
memberCarryIds = await db.Queryable<WmsCarryD>().Where(x=>x.carry_id==carry.id).Select(x=>x.membercarry_id).ToListAsync(); memberCarryIds = await db.Queryable<WmsCarryD>().Where(x=>x.carry_id==carry.id).Select(x=>x.membercarry_id).ToListAsync();
clearCarryIds.AddRange(memberCarryIds); clearCarryIds.AddRange(memberCarryIds);
// await db.Updateable<WmsCarryH>()
// .SetColumns(x => x.carry_status == carryStatus)
// .SetColumns(x => x.is_check == isCheck)
// .Where(x => clearCarryIds.Contains(x.id))
// .ExecuteCommandAsync();
await db.Updateable<WmsCarryH>() await db.Updateable<WmsCarryH>()
.SetColumns(x => x.carry_status == carryStatus) .SetColumns(x => x.carry_status == carryStatus)
.SetColumns(x => x.is_check == isCheck) .Where(x => clearCarryIds.Contains(x.id))
.Where(x => clearCarryIds.Contains(x.id)) .ExecuteCommandAsync();
.ExecuteCommandAsync(); Logger.Information($"【TaskComplate 长管签收】 更新载具状态 {JsonConvert.SerializeObject(clearCarryIds)}成功");
await db.Updateable<WmsCarryH>()
.SetColumns(x => x.is_check == isCheck)
.Where(x => clearCarryIds.Contains(x.id))
.ExecuteCommandAsync();
Logger.Information($"【TaskComplate 长管签收】 更新载具检验 {JsonConvert.SerializeObject(clearCarryIds)}成功");
} }
@@ -4166,11 +4190,13 @@ namespace Tnb.WarehouseMgr
if (sPoint == null) if (sPoint == null)
{ {
throw new Exception($"库位{input.startlocation_id} 的起点点位未维护"); BasLocation _loc = await db.Queryable<BasLocation>().FirstAsync(it => it.id == input.startlocation_id);
throw new Exception($"起点库位{_loc.location_code} 的点位未维护");
} }
if (ePoint == null) if (ePoint == null)
{ {
throw new Exception($"库位{input.endlocation_id} 的终点点位未维护"); BasLocation _loc = await db.Queryable<BasLocation>().FirstAsync(it => it.id == input.endlocation_id);
throw new Exception($"终点库位{_loc.location_code} 的点位未维护");
} }

View File

@@ -341,20 +341,24 @@ namespace Tnb.WarehouseMgr
{ {
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】不使用事务"); Logger.LogInformation($"【CarryCodeUnbindWithoutTran】不使用事务");
} }
int row = await db.Deleteable<WmsCarryD>().Where(r => r.carry_id == input.carry_id).ExecuteCommandAsync();
//isOk = row > 0;
//if (!isOk) if (await db.Queryable<WmsCarryD>().Where(r => r.carry_id == input.carry_id).AnyAsync())
//{
// throw new Exception($"料架id{input.carry_id}载具解绑失败");
//}
Logger.LogInformation($"【CarryUnbindWithoutTran】料架{carry.carry_code}已解绑,解绑条数{row}");
if (tranFlag)
{ {
Logger.LogInformation($"【CarryUnbindWithoutTran】提交事务"); int row = await db.Deleteable<WmsCarryD>().Where(r => r.carry_id == input.carry_id).ExecuteCommandAsync();
await db.Ado.CommitTranAsync(); //isOk = row > 0;
//if (!isOk)
//{
// throw new Exception($"料架id{input.carry_id}载具解绑失败");
//}
Logger.LogInformation($"【CarryUnbindWithoutTran】料架{carry.carry_code}已解绑,解绑条数{row}");
if (tranFlag)
{
Logger.LogInformation($"【CarryUnbindWithoutTran】提交事务");
await db.Ado.CommitTranAsync();
}
} }
} }
else else
@@ -416,19 +420,23 @@ namespace Tnb.WarehouseMgr
{ {
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】不使用事务"); Logger.LogInformation($"【CarryCodeUnbindWithoutTran】不使用事务");
} }
int row = await db.Deleteable<WmsCarryCode>().Where(r => r.carry_id == input.carry_id).ExecuteCommandAsync();
if (tranFlag)
{
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】提交事务");
await db.Ado.CommitTranAsync();
}
isOk = row > 0;
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】载具{carry.carry_code}已解绑,解绑条数{row}"); if (await db.Queryable<WmsCarryCode>().Where(r => r.carry_id == input.carry_id).AnyAsync())
//if (!isOk) {
//{ int row = await db.Deleteable<WmsCarryCode>().Where(r => r.carry_id == input.carry_id).ExecuteCommandAsync();
// throw Oops.Oh(ErrorCode.COM1001); if (tranFlag)
//} {
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】提交事务");
await db.Ado.CommitTranAsync();
}
isOk = row > 0;
Logger.LogInformation($"【CarryCodeUnbindWithoutTran】载具{carry.carry_code}已解绑,解绑条数{row}");
//if (!isOk)
//{
// throw Oops.Oh(ErrorCode.COM1001);
//}
}
} }
else else
{ {

View File

@@ -498,7 +498,7 @@ namespace Tnb.WarehouseMgr
if (string.IsNullOrEmpty(input.source_id)) if (string.IsNullOrEmpty(input.source_id))
{ {
throw new AppFriendlyException("来源单据id不可为空", 500); throw new Exception("来源单据id不可为空");
} }
WmsMaterialTransfer wmsMaterialTransfer = await _db.Queryable<WmsMaterialTransfer>().FirstAsync(it => it.id == input.source_id); WmsMaterialTransfer wmsMaterialTransfer = await _db.Queryable<WmsMaterialTransfer>().FirstAsync(it => it.id == input.source_id);
@@ -507,7 +507,7 @@ namespace Tnb.WarehouseMgr
if (wmsMaterialTransfer == null) if (wmsMaterialTransfer == null)
{ {
throw new AppFriendlyException($"不存在id为{input.source_id}的转库单", 500); throw new Exception($"不存在id为{input.source_id}的转库单");
} }
await _db.Ado.BeginTranAsync(); await _db.Ado.BeginTranAsync();
@@ -535,7 +535,7 @@ namespace Tnb.WarehouseMgr
decimal canOutstockQty = items_pretask.Sum(r => r.Item3.codeqty).ParseToDecimal(); decimal canOutstockQty = items_pretask.Sum(r => r.Item3.codeqty).ParseToDecimal();
if (canOutstockQty != needOut) if (canOutstockQty != needOut)
{ {
throw new AppFriendlyException($@"当前可出库数量与需要出库数量不一致时无法出库! 当前可出库数量为 {canOutstockQty.ToString("G")},需要出库数量为{needOut.ToString("G")}", 500); throw new Exception($@"当前可出库数量与需要出库数量不一致时无法出库! 当前可出库数量为 {canOutstockQty.ToString("G")},需要出库数量为{needOut.ToString("G")}");
} }
InStockStrategyQuery inStockStrategyInput = new() { warehouse_id = WmsWareHouseConst.WAREHOUSE_CP_ID, Size = items_pretask.Count, Region_id = WmsWareHouseConst.REGION_CPOutstock_ID }; InStockStrategyQuery inStockStrategyInput = new() { warehouse_id = WmsWareHouseConst.WAREHOUSE_CP_ID, Size = items_pretask.Count, Region_id = WmsWareHouseConst.REGION_CPOutstock_ID };
@@ -617,8 +617,8 @@ namespace Tnb.WarehouseMgr
var res = await _wareHouseService.CommonCreatePretask(commonCreatePretaskInput, _db); var res = await _wareHouseService.CommonCreatePretask(commonCreatePretaskInput, _db);
if (res.code != JNPF.Common.Enums.HttpStatusCode.OK) if (res.code != JNPF.Common.Enums.HttpStatusCode.OK)
{ {
Logger.LogInformation($"【DistributeF4JXC】生成预任务失败 载具 {wmsMaterialTransferCarry.carry_code}"); Logger.LogInformation($"【DistributeF4JXC】生成预任务失败 载具 {wmsMaterialTransferCarry.carry_code} {res.msg}");
throw new AppFriendlyException($"生成预任务失败 载具 {wmsMaterialTransferCarry.carry_code}", 500); throw new Exception($"生成预任务失败 载具 {wmsMaterialTransferCarry.carry_code} {res.msg}");
} }
JObject keyValuePairs = JObject.Parse(res.data.ToString()); JObject keyValuePairs = JObject.Parse(res.data.ToString());
JArray array = JArray.Parse(keyValuePairs["pretaskids"].ToString()); JArray array = JArray.Parse(keyValuePairs["pretaskids"].ToString());
@@ -636,7 +636,7 @@ namespace Tnb.WarehouseMgr
if (xfCarrysCount == 0) if (xfCarrysCount == 0)
{ {
throw new AppFriendlyException($"可下发数量为0", 500); throw new Exception($"可下发数量为0");
} }
await _db.Ado.CommitTranAsync(); await _db.Ado.CommitTranAsync();
@@ -646,7 +646,7 @@ namespace Tnb.WarehouseMgr
await _db.Ado.RollbackTranAsync(); await _db.Ado.RollbackTranAsync();
Logger.LogError("【DistributeF4JXC】" + ex.Message); Logger.LogError("【DistributeF4JXC】" + ex.Message);
Logger.LogError("【DistributeF4JXC】" + ex.StackTrace); Logger.LogError("【DistributeF4JXC】" + ex.StackTrace);
return await ToApiResult(HttpStatusCode.InternalServerError, ex.Message); throw new AppFriendlyException(ex.Message, 500);
} }
finally finally
{ {
@@ -654,8 +654,7 @@ namespace Tnb.WarehouseMgr
semaphoreSlim_CPK.Release(); semaphoreSlim_CPK.Release();
} }
return "成功";
return await ToApiResult(HttpStatusCode.OK, "成功");
} }