public void PrintActionProcessing() { var orderHistoryService = new OrderHistoryService(_log, _time, _dbFactory); var batchManager = new BatchManager(_log, _time, orderHistoryService, _weightService); var actionService = new SystemActionService(_log, _time); var serviceFactory = new ServiceFactory(); var labelBatchService = new LabelBatchService(_dbFactory, actionService, _log, _time, _weightService, serviceFactory, _emailService, batchManager, _pdfMaker, AddressService.Default, orderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config(), AppSettings.IsSampleLabels); labelBatchService.ProcessPrintBatchActions(null); }
public void RePrintBatch(long batchId) { var actionService = new SystemActionService(_log, _time); var serviceFactory = new ServiceFactory(); var orderHistoryService = new OrderHistoryService(_log, _time, _dbFactory); var batchManager = new BatchManager(_log, _time, orderHistoryService, _weightService); var batchService = new LabelBatchService(_dbFactory, actionService, _log, _time, _weightService, serviceFactory, _emailService, batchManager, _pdfMaker, AddressService.Default, orderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config(), AppSettings.IsSampleLabels); var result = batchService.PrintBatch(batchId, _company.Id, null); _log.Info("Success: " + result.Success.ToString()); }
protected override void RunCallback() { var dbFactory = new DbFactory(); var time = new TimeService(dbFactory); var log = GetLogger(); var actionService = new SystemActionService(GetLogger(), time); var orderHistoryService = new OrderHistoryService(log, time, dbFactory); var serviceFactory = new ServiceFactory(); var weightService = new WeightService(); var pdfMaker = new PdfMakerByIText(GetLogger()); var batchManager = new BatchManager(log, time, orderHistoryService, weightService); CompanyDTO company = null; using (var db = dbFactory.GetRDb()) { company = db.Companies.GetByIdWithSettingsAsDto(CompanyId); } var addressService = AddressService.Default; var emailSmtpSettings = SettingsBuilder.GetSmtpSettingsFromCompany(company, AppSettings.IsDebug, AppSettings.IsSampleLabels); var emailService = new EmailService(GetLogger(), emailSmtpSettings, addressService); var labelBatchService = new LabelBatchService(dbFactory, actionService, GetLogger(), time, weightService, serviceFactory, emailService, batchManager, pdfMaker, addressService, orderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config() { PrintErrorsToEmails = new[] { company.SellerEmail, company.SellerWarehouseEmailAddress }, PrintErrorsCCEmails = new[] { EmailHelper.RaananEmail, EmailHelper.SupportDgtexEmail }, }, AppSettings.IsSampleLabels); labelBatchService.ProcessPrintBatchActions(null); }
public virtual ActionResult GetLabel(long orderId) { var log = LogService.Info("GetLabel"); log.Info("begin, orderId=" + orderId); var companyId = AccessManager.CompanyId; if (!companyId.HasValue) { throw new ArgumentNullException("CompanyId"); } var printBatchService = new LabelBatchService(DbFactory, ActionService, LogService, Time, WeightService, ServiceFactory, EmailService, BatchManager, PdfMaker, new AddressService(null, null, null), OrderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config(), AppSettings.IsSampleLabels); var result = printBatchService.PrintLabel(orderId, companyId.Value, AccessManager.UserId); if (result.PrintPackId.HasValue) { result.Url = Models.UrlHelper.GetPrintLabelPathById(result.PrintPackId); log.Info("end, result.url=" + result.Url); return(Redirect(result.Url)); } var printMessage = "-" + String.Join("<br/>- ", result.Messages.Select(m => m.Text).ToList()); var message = printMessage + "<br/>" + result.FailedSummary; log.Info("end, message=" + message); return(RedirectToAction("Message", "Home", new { Message = HttpUtility.UrlEncode(message.Replace("<br />", Environment.NewLine)) })); }
public void AutoBuyAmazonNextDay() { var orderHistoryService = new OrderHistoryService(_log, _time, _dbFactory); var batchManager = new BatchManager(_log, _time, orderHistoryService, _weightService); var actionService = new SystemActionService(_log, _time); var serviceFactory = new ServiceFactory(); var labelBatchService = new LabelBatchService(_dbFactory, actionService, _log, _time, _weightService, serviceFactory, _emailService, batchManager, _pdfMaker, AddressService.Default, orderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config(), AppSettings.IsSampleLabels); var autoPurchaseService = new LabelAutoBuyService(_dbFactory, _log, _time, batchManager, labelBatchService, actionService, _emailService, _weightService, _company.Id); autoPurchaseService.PurchaseAmazonNextDay(); }
protected override void RunCallback() { CompanyDTO company = null; var dbFactory = new DbFactory(); var time = new TimeService(dbFactory); var log = GetLogger(); var now = time.GetAppNowTime(); if (!time.IsBusinessDay(now)) { return; } using (var db = dbFactory.GetRDb()) { company = db.Companies.GetByIdWithSettingsAsDto(CompanyId); } var fromAddressList = new CompanyAddressService(company); var serviceFactory = new ServiceFactory(); var pdfMaker = new PdfMakerByIText(GetLogger()); var actionService = new SystemActionService(log, time); var addressService = new AddressService(null, fromAddressList.GetReturnAddress(MarketIdentifier.Empty()), fromAddressList.GetPickupAddress(MarketIdentifier.Empty())); var emailSmtpSettings = SettingsBuilder.GetSmtpSettingsFromCompany(company, AppSettings.IsDebug, AppSettings.IsSampleLabels); var emailService = new EmailService(GetLogger(), emailSmtpSettings, addressService); var weightService = new WeightService(); var orderHistoryService = new OrderHistoryService(log, time, dbFactory); var batchManager = new BatchManager(log, time, orderHistoryService, weightService); var labelBatchService = new LabelBatchService(dbFactory, actionService, log, time, weightService, serviceFactory, emailService, batchManager, pdfMaker, AddressService.Default, orderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config() { PrintErrorsToEmails = new[] { company.SellerEmail, company.SellerWarehouseEmailAddress }, PrintErrorsCCEmails = new[] { EmailHelper.RaananEmail, EmailHelper.SupportDgtexEmail }, }, AppSettings.IsSampleLabels); var autoPurchaseService = new LabelAutoBuyService(dbFactory, log, time, batchManager, labelBatchService, actionService, emailService, weightService, company.Id); autoPurchaseService.PurchaseAmazonNextDay(); }
public virtual ActionResult PrintLabelsForBatch(long batchId) { LogI("PrintLabelsForBatch, batchId=" + batchId); try { var companyId = AccessManager.CompanyId; if (!companyId.HasValue) { throw new ArgumentNullException("CompanyId"); } var when = Time.GetAppNowTime(); var by = AccessManager.UserId; var actionId = ActionService.AddAction(Db, SystemActionType.PrintBatch, batchId.ToString(), new PrintBatchInput() { BatchId = batchId, CompanyId = companyId.Value, UserId = by }, null, by); LogI("PrintLabelsForBatch, actionId=" + actionId); if (AppSettings.IsDebug) { var labelBatchService = new LabelBatchService(DbFactory, ActionService, LogService, Time, WeightService, ServiceFactory, EmailService, BatchManager, new PdfMakerByIText(LogService), new AddressService(null, null, null), OrderHistoryService, AppSettings.DefaultCustomType, AppSettings.LabelDirectory, AppSettings.ReserveDirectory, AppSettings.TemplateDirectory, new LabelBatchService.Config(), AppSettings.IsSampleLabels); _debugPrintLabelThread = new Thread(() => { labelBatchService.ProcessPrintBatchActions(null); }); _debugPrintLabelThread.Start(); } return(JsonGet(MessageResult.Success("", actionId.ToString()))); } catch (Exception ex) { LogE("PrintLabelsForBatch error", ex); return(JsonGet(MessageResult.Error("Print Error: " + ex.Message))); } }