public static Order GetOrderFromOrderGroupKey(int inOrderGroupKey, int terminalKey) { var group = DbOrderGroup.GetOrderGroup(inOrderGroupKey); var order = GetOrder(group.OrderKey); group.Order = order; if (group.GroupType == GroupType.ServingCourse) { order.ServingCourseGroups.Add(group); var items = GetItemsByGroups(order.ServingCourseGroups, GroupType.ServingCourse, terminalKey); List <int> courseGroupKeys = new List <int>(); items.ForEach(s => courseGroupKeys.Add(s.CourseKey)); order.CourseGroups = DbOrderGroup.GetOrderGroups(order, courseGroupKeys); FilterItems(order, items); } else { order.CourseGroups.Add(group); var items = GetItemsByGroups(order.ServingCourseGroups, GroupType.ServingCourse, terminalKey); List <int> sCourseGroupKeys = new List <int>(); items.ForEach(s => sCourseGroupKeys.Add(s.ServingCourseKey)); order.ServingCourseGroups = DbOrderGroup.GetOrderGroups(order, sCourseGroupKeys); FilterItems(order, items); } return(order); }
public static Order GetOrderFromOrderItemKey(int inOrderIemKey, int terminalKey) { var item = DbOrderItem.GetOrderItemFromItemKey(inOrderIemKey); var sCoursegroup = DbOrderGroup.GetOrderGroup(item.ServingCourseKey); var courseGroup = DbOrderGroup.GetOrderGroup(item.CourseKey); var order = GetOrder(sCoursegroup.OrderKey); order.ServingCourseGroups.Add(sCoursegroup); order.CourseGroups.Add(courseGroup); FilterItem(order, item); return(order); }