public void RunUnitOfWork(string jobKey) { var shipments = _shipmentRepository.FindManhattanShipmentHeaders(new ManhattanShipmentSearchCriteria { ShipTo = ManhattanShipmentSearchCriteria.BrickAndClickShipTo, UnprocessedForAuroraShipmentGeneralLedger = false, UnprocessedForAuroraShipment = true }); if (shipments.Count > 0) { _orderHistoryRepository.Save(shipments.SelectMany(s => s.LineItems.Select(i => new OrderHistory(s.Header.OrderNumber, s.Header.BatchControlNumber, i.PackageBarcode, "Shipment sent to Aurora.", "Aurora Shipment Job")))); _auroraShipmentRepository.ProcessAuroraShipmentBnc(shipments); foreach (var manhattanShipment in shipments) { _auroraShipmentRepository.InsertManhattanShipmentBncProcessing(new ManhattanShipmentBncProcessing { BatchControlNumber = manhattanShipment.OriginalBatchControlNumber, PickticketControlNumber = manhattanShipment.Header.PickticketControlNumber }); } } else { _log.Info("No shipments to process"); } }
private void ProcessBncInventoryDecrements() { var unprocessed = _shipmentRepository.FindManhattanShipmentHeaders(new ManhattanShipmentSearchCriteria { ShipTo = ManhattanShipmentSearchCriteria.BrickAndClickShipTo, UnprocessedForAuroraShipment = false, UnprocessedForAuroraShipmentGeneralLedger = true }); _log.Info(string.Format("{0} bnc shipments records found process...", unprocessed.Count())); if (unprocessed.Count == 0) { return; } _generalLedgerReconcilliationRepository.ProcessBrickAndClickShipments(unprocessed); }