public bool CreatePrePayOrder(PayingOrder payingOrder) { bool returnValue = false; _daoManager.BeginTransaction(); try { if (payingOrder != null) { //日结 string dailyStatementNo = _dailyStatementDao.GetCurrentDailyStatementNo(); //更新Order if (_orderDao.UpdatePrePayOrder(payingOrder.order)) { //更新OrderDetails foreach (OrderDetails item in payingOrder.orderDetailsList) { _orderDetailsDao.UpdateOrderDetailsDiscount(item); } //插入OrderDiscount if (payingOrder.orderDiscountList != null && payingOrder.orderDiscountList.Count > 0) { foreach (OrderDiscount item in payingOrder.orderDiscountList) { item.DailyStatementNo = dailyStatementNo; _orderDiscountDao.CreateOrderDiscount(item); } } returnValue = true; } } _daoManager.CommitTransaction(); } catch (Exception exception) { LogHelper.GetInstance().Error(string.Format("[CreatePrePayOrder]参数:payingOrder_{0}", JsonConvert.SerializeObject(payingOrder)), exception); _daoManager.RollBackTransaction(); returnValue = false; } return(returnValue); }
public bool ModifyForOrder(ModifiedPaidOrder modifiedOrder) { bool returnValue = false; _daoManager.BeginTransaction(); try { if (modifiedOrder != null) { //日结 string dailyStatementNo = _dailyStatementDao.GetCurrentDailyStatementNo(); //更新Order if (_orderDao.UpdatePaidOrderPrice(modifiedOrder.order)) { //更新OrderDetails foreach (OrderDetails item in modifiedOrder.orderDetailsList) { _orderDetailsDao.UpdateOrderDetailsDiscount(item); } if (modifiedOrder.orderDiscountList != null && modifiedOrder.orderDiscountList.Count > 0) { foreach (OrderDiscount item in modifiedOrder.orderDiscountList) { //删除OrderDiscount _orderDiscountDao.DeleteOrderSingleDiscount(item.OrderDetailsID); //插入OrderDiscount item.DailyStatementNo = dailyStatementNo; _orderDiscountDao.CreateOrderDiscount(item); } } _orderPayoffDao.DeleteOrderPayoff(modifiedOrder.order.OrderID); //插入OrderPayoff foreach (OrderPayoff item in modifiedOrder.orderPayoffList) { item.DailyStatementNo = dailyStatementNo; _orderPayoffDao.CreateOrderPayoff(item); } returnValue = true; } } _daoManager.CommitTransaction(); } catch (Exception exception) { LogHelper.GetInstance().Error(string.Format("[ModifyForOrder]参数:modifiedOrder_{0}", JsonConvert.SerializeObject(modifiedOrder)), exception); _daoManager.RollBackTransaction(); returnValue = false; } return(returnValue); }
public void CreateOrderDiscount(OrderDiscount orderDiscount) { try { _daoManager.OpenConnection(); _orderDiscountDao.CreateOrderDiscount(orderDiscount); } catch (Exception exception) { LogHelper.GetInstance().Error(string.Format("[CreateOrderDiscount]参数:orderDiscount_{0}", JsonConvert.SerializeObject(orderDiscount)), exception); } finally { _daoManager.CloseConnection(); } }
public Int32 CreateSalesOrder(SalesOrder salesOrder) { Int32 tranSequence = 0; _daoManager.BeginTransaction(); try { //日结号 string dailyStatementNo = _dailyStatementDao.GetCurrentDailyStatementNo(); if (!string.IsNullOrEmpty(dailyStatementNo)) { Order order = salesOrder.order; order.DailyStatementNo = dailyStatementNo; //分单号 Int32 curSubOrderNo = _orderDao.GetCurrentSubOrderNo(order.DeskName); if (curSubOrderNo > 0) { curSubOrderNo++; } else { curSubOrderNo = 1; } order.SubOrderNo = curSubOrderNo; //流水号 order.TranSequence = tranSequence = _sysDictionary.GetCurrentTranSequence(); string orderNo = _orderDao.CreateOrder(order); order.OrderNo = orderNo; //菜单品项序号 int seqNumber = _orderDetailsDao.GetSequenceNum(order.OrderID); foreach (OrderDetails item in salesOrder.orderDetailsList) { item.DailyStatementNo = dailyStatementNo; item.OrderBy = seqNumber; _orderDetailsDao.CreateOrderDetails(item); seqNumber++; } //折扣信息 if (salesOrder.orderDiscountList != null && salesOrder.orderDiscountList.Count > 0) { foreach (OrderDiscount item in salesOrder.orderDiscountList) { item.DailyStatementNo = dailyStatementNo; _orderDiscountDao.CreateOrderDiscount(item); } } //添加打印任务 SystemConfig systemConfig = _sysConfigDao.GetSystemConfigInfo(); if (systemConfig.IncludeKitchenPrint) { IList <PrintTask> printTaskList = PrintTaskService.GetInstance().GetPrintTaskList(salesOrder, systemConfig.PrintStyle, systemConfig.FollowStyle, systemConfig.PrintType, 1, string.Empty); foreach (PrintTask printTask in printTaskList) { _printTaskDao.InsertPrintTask(printTask); } } } _daoManager.CommitTransaction(); } catch (Exception exception) { LogHelper.GetInstance().Error(string.Format("[CreateSalesOrder]参数:salesOrder_{0}", JsonConvert.SerializeObject(salesOrder)), exception); tranSequence = 0; _daoManager.RollBackTransaction(); } return(tranSequence); }