diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/MESCarrySignInput.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/MESCarrySignInput.cs
index 8c6ae151..f6b0af2f 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/MESCarrySignInput.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/MESCarrySignInput.cs
@@ -12,7 +12,7 @@
///
/// 载具Id
///
- public string? carry_id { get; set;}
+ public string? carry_code { get; set;}
///
/// 创建热Id
///
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/SignForDeliveryInput.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/SignForDeliveryInput.cs
index c4069841..6ab920ac 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/SignForDeliveryInput.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Dto/Inputs/SignForDeliveryInput.cs
@@ -19,6 +19,7 @@ namespace Tnb.WarehouseMgr.Entities.Dto.Inputs
/// 载具ID
///
public string carryId { get; set; }
+ public string carry_code { get; set; }
public string new_carry_code { get; set; }
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Mapper/Mapper.cs b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Mapper/Mapper.cs
index 8cffe67e..80715f36 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Entities/Mapper/Mapper.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Entities/Mapper/Mapper.cs
@@ -14,7 +14,7 @@ namespace Tnb.WarehouseMgr.Entities.Mapper
.Map(dest => dest.pretask_code, src => src.bill_code);
config.ForType()
- .Map(dest => dest.carryId, src => src.carry_id)
+ .Map(dest => dest.carryId, src => src.carry_code)
;
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs
index 84fdc879..dd623785 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr.Interfaces/IWmsSignForDeliveryService.cs
@@ -16,6 +16,6 @@ namespace Tnb.WarehouseMgr.Interfaces
///
///
///
- public Task MESCarrySign(MESCarrySignInput input);
+ public Task MESCarrySign(MESCarrySignInput input);
}
}
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
index 7a401299..c02d3280 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs
@@ -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.DeepCopy(carryCodesPart[i]);
+ curCarryCode.codeqty = os.pr_qty;
+ curCarryCodes.Add(curCarryCode);
break;
}
}
var partCarryMats = curCarryCodes.Adapt>();
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.DeepCopy(carryCodesPart[i]);
+ tmp.codeqty = os.pr_qty;
+ curCarryCodes.Add(tmp);
break;
}
}
var partCarryMats = curCarryCodes.Adapt>();
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().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.全部出).ToString() }).Where(it => allOutIds.Contains(it.id)).ExecuteCommandAsync();
await _db.Updateable().SetColumns(it => new WmsCarryH { out_status = ((int)EnumOutStatus.分拣出).ToString() }).Where(it => sortingOutIds.Contains(it.id)).ExecuteCommandAsync();
+
}
var carrys = await _db.Queryable().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().SetColumns(it => new WmsOutstockH { status = WmsWareHouseConst.BILLSTATUS_COMPLETE_ID }).Where(it => it.id == input.requireId).ExecuteCommandAsync();
//如果是自动单据,需要回更上层系统
+ await _db.Updateable().SetColumns(it => new WmsOutstockH { status = WmsWareHouseConst.BILLSTATUS_COMPLETE_ID }).Where(it => it.id == input.requireId).ExecuteCommandAsync();
}
else
{
diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs
index f9cacdac..366b22d5 100644
--- a/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs
+++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsSignForDeliveryService.cs
@@ -65,8 +65,15 @@ namespace Tnb.WarehouseMgr
try
{
await _db.Ado.BeginTranAsync();
-
- var carry = await _db.Queryable().SingleAsync(it => it.id == input.carryId);
+ WmsCarryH? carry = null;
+ if (!input.carryId.IsNullOrWhiteSpace())
+ {
+ carry = await _db.Queryable().SingleAsync(it => it.id == input.carryId);
+ }
+ else
+ {
+ carry = await _db.Queryable().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().FirstAsync(it => it.carry_id == input.carryId && it.is_sign == 0);
}
+ else if (!input.carry_code.IsNullOrEmpty())
+ {
+ disTask = await _db.Queryable().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
///
///
///
- [HttpPost]
- public async Task MESCarrySign(MESCarrySignInput input)
+ [HttpPost, NonUnify]
+ public async Task MESCarrySign(MESCarrySignInput input)
{
if (input.IsNull()) throw new ArgumentNullException("input");
var signInput = input.Adapt();
- await SignForDelivery(signInput);
+ try
+ {
+ await SignForDelivery(signInput);
+ }
+ catch (Exception)
+ {
+ return ToApiResult(HttpStatusCode.InternalServerError, "签收失败");
+ }
+ return ToApiResult();
}
-
-
}
}