예제 #1
0
        //构造函数
        public ComboForm(BathDBDataContext dc, Combo combo)
        {
            db = dc;
            if (combo != null)
            {
                newCombo = false;
                m_Combo = combo;
            }

            InitializeComponent();
        }
예제 #2
0
        //获取套餐所对应的菜式
        public static List<int> disAssembleCombo(Combo combo)
        {
            List<int> menuIdList = new List<int>();

            if (combo.menuIds == null)
                return menuIdList;

            string[] menuIds = combo.menuIds.Split(';');
            foreach (string menuId in menuIds)
            {
                if (menuId == "")
                    continue;
                menuIdList.Add(Convert.ToInt32(menuId));
            }

            return menuIdList;
        }
예제 #3
0
 partial void DeleteCombo(Combo instance);
예제 #4
0
 partial void UpdateCombo(Combo instance);
예제 #5
0
 partial void InsertCombo(Combo instance);
예제 #6
0
        public static double get_combo_price(BathDBDataContext db, Combo combo)
        {
            double combo_price = 0;
            if (combo.priceType == "免项目" || combo.priceType == "消费满免项目")
            {
                var freeIds = disAssemble(combo.freeMenuIds);
                var freeMenus = db.Menu.Where(x => freeIds.Contains(x.id));
                var freeMoney = freeMenus.Sum(x => x.price);
                combo_price = freeMoney;
            }
            else if (combo.priceType == "减金额")
                combo_price = combo.originPrice - Convert.ToDouble(combo.price);

            return combo_price;
        }
예제 #7
0
        /// <summary>
        /// 主要用于消费满,获取手牌消费
        /// </summary>
        /// <param name="db"></param>
        /// <param name="combo"></param>
        /// <param name="systemId"></param>
        /// <returns></returns>
        private static double get_seat_expense_for_combo(BathDBDataContext db, Combo combo, string systemId)
        {
            IQueryable<string> menus = null;
            if (combo.menuIds != null)
            {
                var menuIds = disAssemble(combo.menuIds);
                menus = db.Menu.Where(x => menuIds.Contains(x.id)).Select(x => x.name);
            }

            var orders = db.Orders.Where(x => x.systemId == systemId && x.deleteEmployee == null && !x.paid);

            double money = 0;
            DateTime now = DateTime.Now;
            foreach (var order in orders)
            {
                if (menus != null && menus.Contains(order.menu))
                    continue;

                if (order.priceType == null || order.priceType == "停止消费")
                {
                    var order_menu = db.Menu.FirstOrDefault(x => x.name == order.menu);
                    if (order_menu == null)
                        money += order.money;
                    else
                        money += order_menu.price * order.number;
                }
                else
                    money += order.money * Math.Ceiling((DateTime.Now - order.inputTime).TotalHours);
            }

            return Math.Round(money, 0);
        }