diff --git a/BBWYB.Server.API/Controllers/PurchaseOrderController.cs b/BBWYB.Server.API/Controllers/PurchaseOrderController.cs
index a42def9..2b4dd1a 100644
--- a/BBWYB.Server.API/Controllers/PurchaseOrderController.cs
+++ b/BBWYB.Server.API/Controllers/PurchaseOrderController.cs
@@ -122,6 +122,16 @@ namespace BBWYB.Server.API.Controllers
purchaseOrderBusiness.ManualSign(request);
}
+ ///
+ /// 批量手动收货
+ ///
+ ///
+ [HttpPost]
+ public void BatchManualSign([FromBody] BatchManualSignRequest request)
+ {
+ purchaseOrderBusiness.BatchManualSign(request);
+ }
+
///
/// 1688回调
///
diff --git a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
index ce91d6f..9dc23e4 100644
--- a/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
+++ b/BBWYB.Server.Business/PurchaseOrder/PurchaseOrderBusiness.cs
@@ -1359,6 +1359,21 @@ namespace BBWYB.Server.Business
taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
}
+ public void BatchManualSign(BatchManualSignRequest request)
+ {
+ if (request.WayBillNoList == null || request.WayBillNoList.Count() == 0)
+ throw new BusinessException("缺少快递单号");
+ if (request.WayBillNoList.Distinct().Count() < request.WayBillNoList.Count())
+ throw new BusinessException("不允许重复的快递单号");
+ Task.Factory.StartNew(() =>
+ {
+ foreach (var waybillNo in request.WayBillNoList)
+ OnExpressOrderChange(waybillNo, "QianShou", DateTime.Now, "手动签收");
+ }, CancellationToken.None,
+ TaskCreationOptions.LongRunning,
+ taskSchedulerManager.PurchaseOrderCallbackTaskScheduler);
+ }
+
/////
///// 手动收货
/////
diff --git a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs
index cf5c972..0a2ed94 100644
--- a/BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs
+++ b/BBWYB.Server.Model/Dto/Request/PurchaseOrder/ManualSignRequest.cs
@@ -18,4 +18,9 @@
public string WayBillNo { get; set; }
}
+
+ public class BatchManualSignRequest
+ {
+ public IList WayBillNoList { get; set; }
+ }
}