public ActionResult Search(string paymentCapturedTrue, string paymentCapturedFalse, string orderShippedTrue, string orderShippedFalse, DateTime?orderPlacedFrom, DateTime?orderPlacedTo, string email, string firstName, string lastName, int?numberToQuery) { try { if (numberToQuery != null) { CustomerInfo CustInfo = new CustomerInfo(); CustInfo.Email = email; CustInfo.FirstName = firstName; CustInfo.LastName = lastName; bool?PaymentCaptured = null; bool?OrderShipped = null; if (!string.IsNullOrWhiteSpace(paymentCapturedTrue) && string.IsNullOrWhiteSpace(paymentCapturedFalse)) { PaymentCaptured = true; } else if (string.IsNullOrWhiteSpace(paymentCapturedTrue) && !string.IsNullOrWhiteSpace(paymentCapturedFalse)) { PaymentCaptured = false; } if (!string.IsNullOrWhiteSpace(orderShippedTrue) && string.IsNullOrWhiteSpace(orderShippedFalse)) { OrderShipped = true; } else if (string.IsNullOrWhiteSpace(orderShippedTrue) && !string.IsNullOrWhiteSpace(orderShippedFalse)) { OrderShipped = false; } ViewBag.paymentCapturedTrue = paymentCapturedTrue; ViewBag.paymentCapturedFalse = paymentCapturedFalse; ViewBag.orderShippedTrue = orderShippedTrue; ViewBag.orderShippedFalse = orderShippedFalse; ViewBag.orderPlacedFrom = orderPlacedFrom; ViewBag.orderPlacedTo = orderPlacedTo; ViewBag.email = email; ViewBag.firstName = firstName; ViewBag.lastName = lastName; ViewBag.numberToQuery = numberToQuery; ViewBag.PurchasedOrderList = PurchaseOrderDetailsDAO.Search(PaymentCaptured != null ? PaymentCaptured.Value.ToString() : "", OrderShipped != null ? OrderShipped.Value.ToString() : "", orderPlacedFrom != null ? orderPlacedFrom.Value : DateTime.MinValue, orderPlacedTo != null ? orderPlacedTo.Value : DateTime.MinValue, CustInfo, numberToQuery != null ? numberToQuery.Value : 0); } else { ViewBag.PurchasedOrderList = PurchaseOrderDetailsDAO.Search("", "", DateTime.MinValue, DateTime.MinValue, new CustomerInfo(), 10); } } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Areas.Admin.Controllers.PurchaseOrdersController.Search()" + e.Message); AddWebUserMessageToSession(Request, String.Format("The server is having some difficulties performing searches, please contact administrator if error continues."), FAILED_MESSAGE_TYPE); } return(View()); }
public StoreSupervisorController() { this._stockRecordDAO = new StockRecordDAO(); this._itemDAO = new ItemDAO(); this._purchaseOrderDAO = new PurchaseOrderDAO(); this._purchaseOrderDetailsDAO = new PurchaseOrderDetailsDAO(); _notificationChannelDAO = new NotificationChannelDAO(); _categoryDAO = new CategoryDAO(); _departmentDAO = new DepartmentDAO(); }
public ActionResult Edit(string id) { try { ViewBag.PurchaseOrderDetail = PurchaseOrderDetailsDAO.LoadByBsonId(id); } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Areas.Admin.Controllers.PurchaseOrdersController.Edit()" + e.Message); } return(View()); }
public StoreManagerController() { _itemDAO = new ItemDAO(); _supplieritemDAO = new SupplierItemDAO(); _purchaseOrderDAO = new PurchaseOrderDAO(); _purchaseOrderDetailsDAO = new PurchaseOrderDetailsDAO(); _disbursementDAO = new DisbursementDAO(); _disbursementItemDAO = new DisbursementItemDAO(); _stockRecordDAO = new StockRecordDAO(); _notificationChannelDAO = new NotificationChannelDAO(); _requisitionDAO = new RequisitionDAO(); _requisitionItemDAO = new RequisitionItemDAO(); _categoryDAO = new CategoryDAO(); _departmentDAO = new DepartmentDAO(); }
public ActionResult ShipOrder(string id, string trackingNumber) { try { PurchaseOrderDetails PurchaseOrderDetail = PurchaseOrderDetailsDAO.LoadByBsonId(id); PurchaseOrderDetail.PayPalOrderDetails.ShippingTrackingNumber = trackingNumber; PurchaseOrderDetail.PayPalOrderDetails.OrderShippedDateUtc = DateTime.UtcNow; if (PurchaseOrderDetailsDAO.Save(PurchaseOrderDetail)) { Chimera.Core.Notifications.PurchaseOrder.ProcessPurchaseOrderShipped(PurchaseOrderDetail); try { List <SettingGroup> SettingGroupList = SettingGroupDAO.LoadByMultipleGroupNames(new List <string> { SettingGroupKeys.TEMPLATE_CUSTOM_SETTINGS, SettingGroupKeys.EMAIL_SETTINGS }); SettingGroup EmailSettings = SettingGroupList.Where(e => e.GroupKey.Equals(SettingGroupKeys.EMAIL_SETTINGS)).FirstOrDefault(); SettingGroup TemplateSettings = SettingGroupList.Where(e => e.GroupKey.Equals(SettingGroupKeys.TEMPLATE_CUSTOM_SETTINGS)).FirstOrDefault(); Chimera.Emails.Ecommerce.SendOrderShippedEmail(PurchaseOrderDetail, EmailSettings.GetSettingVal(EmailSettingKeys.CustomerOrderShippedEmail), EmailSettings.GetSettingVal(EmailSettingKeys.SenderEmailAddress), TemplateSettings.GetSettingVal("WebsiteTitle")); } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Areas.Admin.Controllers.PurchaseOrdersController.ShipOrder.SendEmail()" + e.Message); } AddWebUserMessageToSession(Request, String.Format("Tracking # added and user notified order shipped!"), SUCCESS_MESSAGE_TYPE); } else { AddWebUserMessageToSession(Request, String.Format("Unable to add tracking # and email user of shipped order."), FAILED_MESSAGE_TYPE); } } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Areas.Admin.Controllers.PurchaseOrdersController.ShipOrder()" + e.Message); } return(RedirectToAction("Search", "PurchaseOrders")); }
//private readonly NotificationChannelDAO _notificationChannelDAO; //private readonly EmployeeDAO _employeeDAO; public StoreClerkController() { this._disbursementDAO = new DisbursementDAO(); this._requisitionDAO = new RequisitionDAO(); this._requisitionItemDAO = new RequisitionItemDAO(); this._stockRecordDAO = new StockRecordDAO(); this._disbursementItemDAO = new DisbursementItemDAO(); this._purchaseOrderDAO = new PurchaseOrderDAO(); this._itemDAO = new ItemDAO(); this._statusDAO = new StatusDAO(); this._purchaseOrderDetailsDAO = new PurchaseOrderDetailsDAO(); this._employeeDAO = new EmployeeDAO(); this._collectionpointDAO = new CollectionPointDAO(); this._notificationChannelDAO = new NotificationChannelDAO(); this._notificationDAO = new NotificationDAO(); this._supplierItemDAO = new SupplierItemDAO(); //this._notificationChannelDAO = new NotificationChannelDAO(); //this._employeeDAO = new EmployeeDAO(); }
public ActionResult CapturePayment(string id) { try { PurchaseOrderDetails PurchaseOrderDetail = PurchaseOrderDetailsDAO.LoadByBsonId(id); SettingGroup PayPalSettings = SettingGroupDAO.LoadSettingGroupByName(SettingGroupKeys.PAYPAL_PURCHASE_SETTINGS); //create auth header obj AuthHeader PayPalAuthHeader = Chimera.Core.PurchaseOrders.PayPalAuthHeader.GetAuthHeaderFromSetting(PayPalSettings); OrderDetails CapturedOrderDetails = CompanyCommons.Ecommerce.PayPal.Functions.Execute.CapturePayment(PayPalAuthHeader, PurchaseOrderDetail.PayPalOrderDetails); if (CapturedOrderDetails != null) { PurchaseOrderDetail.PayPalOrderDetails = CapturedOrderDetails; if (PurchaseOrderDetailsDAO.Save(PurchaseOrderDetail)) { Chimera.Core.Notifications.PurchaseOrder.ProcessPurchaseOrderPaymentCaptured(PurchaseOrderDetail); AddWebUserMessageToSession(Request, String.Format("PayPal payment successfully captured!"), SUCCESS_MESSAGE_TYPE); } else { AddWebUserMessageToSession(Request, String.Format("Unable to capture PayPal payment at this time."), FAILED_MESSAGE_TYPE); } } } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Areas.Admin.Controllers.PurchaseOrdersController.CapturePayment()" + e.Message); } return(RedirectToAction("Search", "PurchaseOrders")); }
/// <summary> /// Called after the user reviews their order on our side right and wishes to finalize the purchase /// </summary> /// <returns></returns> public ActionResult FinalCheckout() { SiteContext.RecordPageView("Ecommerce_FinalCheckout"); try { PurchaseOrderDetails PayPalPurchaseOrder = SiteContext.PayPalPurchaseOrder; if (PayPalPurchaseOrder != null && !string.IsNullOrWhiteSpace(PayPalPurchaseOrder.PayPalOrderDetails.PaypalInfo.Token)) { List <SettingGroup> SettingGroupList = SettingGroupDAO.LoadByMultipleGroupNames(new List <string> { SettingGroupKeys.TEMPLATE_CUSTOM_SETTINGS, SettingGroupKeys.EMAIL_SETTINGS, SettingGroupKeys.ECOMMERCE_SETTINGS, SettingGroupKeys.PAYPAL_PURCHASE_SETTINGS }); SettingGroup PayPalSettings = SettingGroupList.Where(e => e.GroupKey.Equals(SettingGroupKeys.PAYPAL_PURCHASE_SETTINGS)).FirstOrDefault(); //create auth header obj AuthHeader PayPalAuthHeader = Chimera.Core.PurchaseOrders.PayPalAuthHeader.GetAuthHeaderFromSetting(PayPalSettings); OrderDetails FinalOrderDetails = CompanyCommons.Ecommerce.PayPal.Functions.Execute.FinalConfirmedAuthorization(PayPalAuthHeader, PayPalPurchaseOrder.PayPalOrderDetails); if (FinalOrderDetails != null) { PayPalPurchaseOrder.PayPalOrderDetails = FinalOrderDetails; //generate a new id so we can give the user a confirmation # PayPalPurchaseOrder.Id = ObjectId.GenerateNewId().ToString(); //save to the database as an order PurchaseOrderDetailsDAO.Save(PayPalPurchaseOrder); //clear session cart SiteContext.ClearShoppingCart(); //subtract stock from current products Chimera.Core.PurchaseOrders.ProductStock.ProcessNewOrderStockLevels(PayPalSettings, PayPalPurchaseOrder); //send emails Chimera.Core.PurchaseOrders.Email.SendNewEcommerceOrderEmails(SettingGroupList, PayPalPurchaseOrder); //add admin notification Chimera.Core.Notifications.PurchaseOrder.ProcessNewPurchaseOrder(PayPalPurchaseOrder); //return view SettingGroup EcommerceSettings = SettingGroupList.Where(e => e.GroupKey.Equals(SettingGroupKeys.ECOMMERCE_SETTINGS)).FirstOrDefault(); ViewBag.ConfirmationNumber = PayPalPurchaseOrder.Id.ToString(); ViewBag.ViewType = EcommerceSettings.GetSettingVal(ECommerceSettingKeys.CheckoutFinishedPage); return(View("FinalCheckout", String.Format("~/Templates/{0}/Views/Shared/Template.Master", Models.ChimeraTemplate.TemplateName))); } } } catch (Exception e) { CompanyCommons.Logging.WriteLog("ChimeraWebsite.Controllers.OrderController.FinalCheckout() " + e.Message); } //TODO: return 404 page instead? return(RedirectToAction("Index", "Home")); }