private void RefreshMenuCodes() { var reorderdate = txtMenuReorderDate.Text; var menuCreatedDate = Convert.ToDateTime(reorderdate); //get menu Id var menudata = _menuManagement.GetMenuByCreatedDate(menuCreatedDate); foreach (var menuId in menudata) { _menuProcessor.UpdateLotNoChiliVariable(menuId); } }
public void btnReOrder_Click(object sender, EventArgs e) { try { var orderName = txOrderName.Text; if (string.IsNullOrEmpty(orderName)) { return; } var hiddenfieldOption = hfchangeoption.Value; if (hiddenfieldOption == "1")//straight reprint { var currOrderId = lblCurrOrderId.Text; var newliveorderdetails = _orderManagement.CreateReorderFromLiveOrder(Convert.ToInt64(currOrderId)); if (newliveorderdetails != null) { // calculate quantity for the new live order var value = ddlWeekAndDates.SelectedValue; var weekPart = value.Split(new char[] { '(' }); var dates = weekPart[1].Trim().Replace(")", ""); var datePart = dates.Split(new char[] { '-' }); _menuProcessor.CalculateQuantity(newliveorderdetails.LiveOrderId, Convert.ToDateTime(datePart[0]), Convert.ToDateTime(datePart[1])); // set the is converted to order column to true in live orders table _orderManagement.CreateReOrderNow(Convert.ToInt64(newliveorderdetails.LiveOrderId), Convert.ToDateTime(datePart[0]), Convert.ToDateTime(datePart[1]), orderName); //update reordercount List <string> reorderedMenuIds = new List <string>(); var liveOrderDetails = _orderManagement.GetLiveOrderDetails(newliveorderdetails.LiveOrderId); foreach (var data in liveOrderDetails) { var menuid = Convert.ToString(data.MenuId); //TODO: upadte the LOT NUM variable _menuProcessor.UpdateLotNoChiliVariable(Convert.ToInt64(menuid)); if (!reorderedMenuIds.Contains(menuid)) { reorderedMenuIds.Add(menuid); } } _orderManagement.UpdateReOrderCount(reorderedMenuIds); } divProcessdone.Visible = true; divReorderOptions.Visible = false; ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgMovedToOrder", "MsgMovedToOrder();", true); var userId = Convert.ToInt32(Session["USERID"]); var user = _accountManagement.GetUserById(userId); var reorderMessage = EmailHelper.ReorderOption1EmailTemplate; EmailHelper.SendMail(user.Username, "*****@*****.**", "EMMA- Re-Order - Straight Reprint", reorderMessage); string notificationEmails = (System.Configuration.ConfigurationManager.AppSettings["NotificationEmails"]); var emails = notificationEmails.Split(new char[] { ';' }); foreach (var email in emails) { if (!string.IsNullOrEmpty(email)) { EmailHelper.SendMail(email, "*****@*****.**", "EMMA- Re-Order- Straight Reprint", reorderMessage); } } //ScriptManager.RegisterStartupScript(this, this.GetType(), "KEY", "CloseAndRebind();", true); } else if (hiddenfieldOption == "2")//schedule update { // see if there is a current live order var currLiveorder = _orderManagement.GetLiveOrder(); if (currLiveorder != null) { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgHasLiveOrders", "MsgHasLiveOrders();", true); } else { var currOrderId = lblCurrOrderId.Text; var newliveorderdetails = _orderManagement.CreateReorderFromLiveOrder(Convert.ToInt64(currOrderId)); if (newliveorderdetails != null) { //update reordercount List <string> reorderedMenuIds = new List <string>(); var liveOrderDetails = _orderManagement.GetLiveOrderDetails(newliveorderdetails.LiveOrderId); foreach (var data in liveOrderDetails) { var menuid = Convert.ToString(data.MenuId); //TODO: upadte the LOT NUM variable _menuProcessor.UpdateLotNoChiliVariable(Convert.ToInt64(menuid)); if (!reorderedMenuIds.Contains(menuid)) { reorderedMenuIds.Add(menuid); } } _orderManagement.UpdateReOrderCount(reorderedMenuIds); divProcessdone.Visible = true; divReorderOptions.Visible = false; ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgMovedToLiveOrder", "MsgMovedToLiveOrder();", true); //send email var userId = Convert.ToInt32(Session["USERID"]); var user = _accountManagement.GetUserById(userId); var reorderMessage = EmailHelper.ReorderOption2EmailTemplate; EmailHelper.SendMail(user.Username, "*****@*****.**", "EMMA- Re-Order with schedule update", reorderMessage); string notificationEmails = (System.Configuration.ConfigurationManager.AppSettings["NotificationEmails"]); var emails = notificationEmails.Split(new char[] { ';' }); foreach (var email in emails) { if (!string.IsNullOrEmpty(email)) { EmailHelper.SendMail(email, "*****@*****.**", "EMMA- Re-Order with schedule update", reorderMessage); } } } else { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgMoveFailed", "MsgMoveFailed();", true); } } //ScriptManager.RegisterStartupScript(this, this.GetType(), "KEY", "CloseAndRebind();", true); } else if (hiddenfieldOption == "3")//Menu Update { var currLiveorder = _orderManagement.GetLiveOrder(); if (currLiveorder != null) { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgHasLiveOrders", "MsgHasLiveOrders();", true); } else { Thread newThread = new Thread(new ThreadStart(ReorderAllMenuWithMenuUpdate)); newThread.Start(); btnReOrder.Enabled = false; ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgMenuUpdate", "MsgMenuUpdate();", true); } //ScriptManager.RegisterStartupScript(this, this.GetType(), "KEY", "CloseAndRebind();", true); } else if (hiddenfieldOption == "0")// select option message { ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MsgSelectOption", "MsgSelectOption();", true); } } catch (Exception ex) { //write to Elma ErrorSignal.FromCurrentContext().Raise(ex); } }