Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
@@ -13,6 +13,6 @@ namespace Tnb.WarehouseMgr.Interfaces
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
Task<int> UpdateNullCarry(WmsCarryH carryObj, Func<WmsCarryH, Task<int>> updateTask=null, [CallerMemberName] string original = "");
|
||||
Task<Task<int>> UpdateNullCarry(WmsCarryH carryObj, Func<WmsCarryH, Task<int>> updateTask = null, [CallerMemberName] string original = "");
|
||||
}
|
||||
}
|
||||
@@ -243,7 +243,7 @@ namespace Tnb.WarehouseMgr
|
||||
}
|
||||
}
|
||||
foreach (var (i, v) in dic)
|
||||
{
|
||||
{
|
||||
foreach (var it in v)
|
||||
{
|
||||
it.groups = groupCode;
|
||||
|
||||
@@ -128,7 +128,7 @@ namespace Tnb.WarehouseMgr
|
||||
wmsCarryReplaceH.modify_id = null;
|
||||
wmsCarryReplaceH.modify_time = null;
|
||||
row = await _db.Insertable(wmsCarryReplaceH).ExecuteCommandAsync();
|
||||
row = await UpdateNullCarry(oldCarry);
|
||||
row = await UpdateNullCarry(oldCarry).Unwrap();
|
||||
isOk = (row > 0);
|
||||
if (!isOk) throw Oops.Oh(ErrorCode.COM1001);
|
||||
}
|
||||
@@ -156,9 +156,10 @@ namespace Tnb.WarehouseMgr
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public async Task<int> UpdateNullCarry(WmsCarryH carryObj, Func<WmsCarryH, Task<int>> updateTask = null, [CallerMemberName] string original = "")
|
||||
public async Task<Task<int>> UpdateNullCarry(WmsCarryH carryObj, Func<WmsCarryH, Task<int>> updateTask = null, [CallerMemberName] string original = "")
|
||||
{
|
||||
var row = -1;
|
||||
var row = 1;
|
||||
Task<int> resTask = Task.FromResult(row);
|
||||
try
|
||||
{
|
||||
carryObj.status = 0;
|
||||
@@ -173,16 +174,8 @@ namespace Tnb.WarehouseMgr
|
||||
carryObj.collocation_scheme_code = null;
|
||||
carryObj.source_id = null;
|
||||
carryObj.source_code = null;
|
||||
if (updateTask != null)
|
||||
{
|
||||
updateTask(carryObj);
|
||||
}
|
||||
else
|
||||
{
|
||||
row = await _db.CopyNew().Updateable(carryObj).ExecuteCommandAsync();
|
||||
}
|
||||
//Task<int>.Run(() => _db.CopyNew().Updateable(carryObj).ExecuteCommandAsync());
|
||||
//删除对应明细表
|
||||
resTask = updateTask?.Invoke(carryObj) ?? _db.CopyNew().Updateable(carryObj).ExecuteCommandAsync();
|
||||
//*****删除对应明细表
|
||||
//删除载具明细
|
||||
await _db.CopyNew().Deleteable<WmsCarryD>().Where(it => it.carry_id == carryObj.id).ExecuteCommandHasChangeAsync();
|
||||
//删除载具分拣物料明细
|
||||
@@ -193,10 +186,11 @@ namespace Tnb.WarehouseMgr
|
||||
catch (Exception ex)
|
||||
{
|
||||
row = 0;
|
||||
resTask = Task.FromResult(row);
|
||||
Log.Error("更新空载具出错", ex);
|
||||
throw;
|
||||
}
|
||||
return row;
|
||||
return resTask;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -169,7 +169,7 @@ namespace Tnb.WarehouseMgr
|
||||
var isOk = await _db.Updateable<WmsOutbale>().SetColumns(it => new WmsOutbale { status = WmsWareHouseConst.BILLSTATUS_COMPLETE_ID }).Where(it => it.id == input.requireId).ExecuteCommandHasChangeAsync();
|
||||
var carryId = input.carryIds[^input.carryIds.Count];
|
||||
var carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.id == carryId);
|
||||
var row = await _wmsCarryService.UpdateNullCarry(carry);
|
||||
var row = await _wmsCarryService.UpdateNullCarry(carry).Unwrap();
|
||||
isOk = row > 0;
|
||||
if (!isOk) throw Oops.Oh(ErrorCode.COM1001);
|
||||
|
||||
|
||||
@@ -626,7 +626,7 @@ namespace Tnb.WarehouseMgr
|
||||
//如果没有完成,修改为工作中
|
||||
await _db.Updateable<WmsOutstockH>().SetColumns(it => new WmsOutstockH { status = WmsWareHouseConst.BILLSTATUS_ON_ID }).Where(it => it.id == input.requireId).ExecuteCommandAsync();
|
||||
}
|
||||
await _wareCarryService.UpdateNullCarry(carry);
|
||||
await _wareCarryService.UpdateNullCarry(carry).Unwrap();
|
||||
}
|
||||
else if (outStatus == EnumOutStatus.分拣出)
|
||||
{
|
||||
|
||||
@@ -91,16 +91,17 @@ namespace Tnb.WarehouseMgr
|
||||
feedBox.modify_id = _userManager.UserId;
|
||||
feedBox.modify_time = DateTime.Now;
|
||||
var row = await _db.Updateable(feedBox)
|
||||
.UpdateColumns(it => new {
|
||||
.UpdateColumns(it => new
|
||||
{
|
||||
it.material_id,
|
||||
it.material_code,
|
||||
it.qty,
|
||||
it.batch,
|
||||
it.modify_id,
|
||||
it.modify_id,
|
||||
it.modify_time
|
||||
}).ExecuteCommandAsync();
|
||||
//更新载具
|
||||
row = await _carryService.UpdateNullCarry(carry);
|
||||
row = await _carryService.UpdateNullCarry(carry).Unwrap();
|
||||
isOk = (row > 0);
|
||||
if (!isOk) throw Oops.Oh(ErrorCode.COM1001);
|
||||
}
|
||||
|
||||
@@ -306,17 +306,17 @@ namespace Tnb.WarehouseMgr
|
||||
if (carrys?.Count > 0)
|
||||
{
|
||||
await _db.Ado.BeginTranAsync();
|
||||
var tasks = new List<Task<int>>();
|
||||
var tasks = new List<Task<Task<int>>>();
|
||||
foreach (var carryIt in carrys)
|
||||
{
|
||||
tasks.Add(_carryService.UpdateNullCarry(carryIt, carryIt => Task.Run(() => _db.CopyNew().Updateable(carryIt).ExecuteCommandAsync())));
|
||||
}
|
||||
var all = await Task.WhenAll(tasks);
|
||||
await _db.Ado.CommitTranAsync();
|
||||
var all = await Task.WhenAll(tasks.Select(t => t.Unwrap()));
|
||||
if (all.All(x => x > 0))
|
||||
{
|
||||
isOk = all?.Length > 0;
|
||||
}
|
||||
await _db.Ado.CommitTranAsync();
|
||||
}
|
||||
}
|
||||
if (!isOk) throw Oops.Oh(ErrorCode.COM1001);
|
||||
|
||||
Reference in New Issue
Block a user