This commit is contained in:
qianjiawei
2023-07-12 17:27:53 +08:00
6 changed files with 38 additions and 17 deletions

View File

@@ -12,7 +12,7 @@
/// <summary>
/// 载具Id
/// </summary>
public string? carry_id { get; set;}
public string? carry_code { get; set;}
/// <summary>
/// 创建热Id
/// </summary>

View File

@@ -19,6 +19,7 @@ namespace Tnb.WarehouseMgr.Entities.Dto.Inputs
/// 载具ID
/// </summary>
public string carryId { get; set; }
public string carry_code { get; set; }
public string new_carry_code { get; set; }

View File

@@ -14,7 +14,7 @@ namespace Tnb.WarehouseMgr.Entities.Mapper
.Map(dest => dest.pretask_code, src => src.bill_code);
config.ForType<MESCarrySignInput, SignForDeliveryInput>()
.Map(dest => dest.carryId, src => src.carry_id)
.Map(dest => dest.carryId, src => src.carry_code)
;
}
}

View File

@@ -16,6 +16,6 @@ namespace Tnb.WarehouseMgr.Interfaces
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public Task MESCarrySign(MESCarrySignInput input);
public Task<dynamic> MESCarrySign(MESCarrySignInput input);
}
}

View File

@@ -120,15 +120,16 @@ namespace Tnb.WarehouseMgr
}
else if (os.pr_qty <= carryCodesPart[i].codeqty)
{
carryCodesPart[i].codeqty = os.pr_qty;
curCarryCodes.Add(carryCodesPart[i]);
WmsCarryCode curCarryCode = DeepCopyHelper<WmsCarryCode>.DeepCopy(carryCodesPart[i]);
curCarryCode.codeqty = os.pr_qty;
curCarryCodes.Add(curCarryCode);
break;
}
}
var partCarryMats = curCarryCodes.Adapt<List<WmsCarryMat>>();
for (int i = 0; i < partCarryMats.Count; i++)
{
partCarryMats[i].need_qty = carryCodesPart[i].codeqty;
partCarryMats[i].need_qty = curCarryCodes[i].codeqty;
}
carryMats.AddRange(partCarryMats);
}
@@ -361,15 +362,16 @@ namespace Tnb.WarehouseMgr
}
else if (os.pr_qty <= carryCodesPart[i].codeqty)
{
carryCodesPart[i].codeqty = os.pr_qty;
curCarryCodes.Add(carryCodesPart[i]);
var tmp = DeepCopyHelper<WmsCarryCode>.DeepCopy(carryCodesPart[i]);
tmp.codeqty = os.pr_qty;
curCarryCodes.Add(tmp);
break;
}
}
var partCarryMats = curCarryCodes.Adapt<List<WmsCarryMat>>();
for (int i = 0; i < partCarryMats.Count; i++)
{
partCarryMats[i].need_qty = carryCodesPart[i].codeqty;
partCarryMats[i].need_qty = curCarryCodes[i].codeqty;
}
carryMats.AddRange(partCarryMats);
}
@@ -407,6 +409,7 @@ namespace Tnb.WarehouseMgr
carryIds = allOutIds.Concat(sortingOutIds).ToList();
await _db.Updateable<WmsCarryH>().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.).ToString() }).Where(it => allOutIds.Contains(it.id)).ExecuteCommandAsync();
await _db.Updateable<WmsCarryH>().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.).ToString() }).Where(it => sortingOutIds.Contains(it.id)).ExecuteCommandAsync();
}
var carrys = await _db.Queryable<WmsCarryH>().Where(it => carryIds.Contains(it.id)).ToListAsync();
if (carrys?.Count > 0)
@@ -609,8 +612,8 @@ namespace Tnb.WarehouseMgr
await _db.Updateable(curOutstockDetails).ExecuteCommandAsync();
if (otds.All(x => x.line_status == WmsWareHouseConst.BILLSTATUS_COMPLETE_ID))
{
await _db.Updateable<WmsOutstockH>().SetColumns(it => new WmsOutstockH { status = WmsWareHouseConst.BILLSTATUS_COMPLETE_ID }).Where(it => it.id == input.requireId).ExecuteCommandAsync();
//如果是自动单据,需要回更上层系统
await _db.Updateable<WmsOutstockH>().SetColumns(it => new WmsOutstockH { status = WmsWareHouseConst.BILLSTATUS_COMPLETE_ID }).Where(it => it.id == input.requireId).ExecuteCommandAsync();
}
else
{

View File

@@ -65,8 +65,15 @@ namespace Tnb.WarehouseMgr
try
{
await _db.Ado.BeginTranAsync();
var carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.id == input.carryId);
WmsCarryH? carry = null;
if (!input.carryId.IsNullOrWhiteSpace())
{
carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.id == input.carryId);
}
else
{
carry = await _db.Queryable<WmsCarryH>().SingleAsync(it => it.carry_code == input.carry_code);
}
if (carry != null)
{
if (carry!.location_id!.IsNotEmptyOrNull())
@@ -87,6 +94,10 @@ namespace Tnb.WarehouseMgr
{
disTask = await _db.Queryable<WmsDistaskH>().FirstAsync(it => it.carry_id == input.carryId && it.is_sign == 0);
}
else if (!input.carry_code.IsNullOrEmpty())
{
disTask = await _db.Queryable<WmsDistaskH>().FirstAsync(it => it.carry_code == input.carry_code && it.is_sign == 0);
}
if (disTask != null)
{
if (_dicBizType.ContainsKey(disTask.biz_type))
@@ -118,14 +129,20 @@ namespace Tnb.WarehouseMgr
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost]
public async Task MESCarrySign(MESCarrySignInput input)
[HttpPost, NonUnify]
public async Task<dynamic> MESCarrySign(MESCarrySignInput input)
{
if (input.IsNull()) throw new ArgumentNullException("input");
var signInput = input.Adapt<SignForDeliveryInput>();
await SignForDelivery(signInput);
try
{
await SignForDelivery(signInput);
}
catch (Exception)
{
return ToApiResult(HttpStatusCode.InternalServerError, "签收失败");
}
return ToApiResult();
}
}
}