/// <summary> /// 日结操作 /// </summary> /// <param name="dailyStatement">日结号</param> /// <param name="unCheckDeviceNo">未结账的设备号</param> /// <returns></returns> public int UpdateDailyStatement(DailyStatement dailyStatement, out string unCheckDeviceNo) { unCheckDeviceNo = string.Empty; Hashtable htParam = new Hashtable(); htParam["DailyStatementNo"] = dailyStatement.DailyStatementNo; htParam["DeviceNo"] = dailyStatement.DeviceNo; htParam["BelongToDate"] = dailyStatement.BelongToDate; htParam["Weather"] = dailyStatement.Weather; htParam["EmployeeID"] = dailyStatement.EmployeeID; htParam["ReturnValue"] = 0; object objValue = ExecuteQueryForObject("UpdateDailyStatement", htParam); if (objValue != null) { unCheckDeviceNo = Convert.ToString(objValue).Trim(); if (unCheckDeviceNo.Length > 1) { unCheckDeviceNo = unCheckDeviceNo.Substring(1); } } return (int)htParam["ReturnValue"]; }
public Int32 CreateDailyBalance(DailyBalance dailyBalance, out string unCheckDeviceNo) { unCheckDeviceNo = string.Empty; int returnValue; //日结失败 _daoManager.BeginTransaction(); try { //日结号 string dailyStatementNo = _dailyStatementDao.GetCurrentDailyStatementNo(); //更新日结信息 DailyStatement dailyStatement = dailyBalance.dailyStatement; dailyStatement.DailyStatementNo = dailyStatementNo; returnValue = _dailyStatementDao.UpdateDailyStatement(dailyStatement, out unCheckDeviceNo); if (returnValue == 1) { //插入日结金额 DailyTurnover dailyTurnover = dailyBalance.dailyTurnover; dailyTurnover.DailyStatementNo = dailyStatementNo; _dailyTurnoverDao.CreateDailyTurnover(dailyTurnover); //创建新的日结 DailyStatement item = new DailyStatement(); item.DailyStatementID = Guid.NewGuid(); item.DailyStatementNo = DateTime.Now.ToString("yyMMddHHmmssff"); _dailyStatementDao.CreateDailyStatement(item); } _daoManager.CommitTransaction(); } catch(Exception exception) { _daoManager.RollBackTransaction(); returnValue = 0; LogHelper.GetInstance().Error(string.Format("[CreateDailyBalance]参数:dailyBalance_{0}", JsonConvert.SerializeObject(dailyBalance)), exception); } return returnValue; }
public void CreateDailyStatement(DailyStatement dailyStatement) { ExecuteInsert("InsertDailyStatement", dailyStatement); }
private void btnSalesReport_Click(object sender, EventArgs e) { if (bizReport != null && bizReport.BillTotalQty > 0) { if (m_ModelType == 1) { //判断是否存在退款失败的账单 CardRefundPayService refundPayService = new CardRefundPayService(); List<CardRefundPay> cardRefundPayList = refundPayService.GetCardRefundPayList(); if (cardRefundPayList != null && cardRefundPayList.Count > 0) { FormVIPCardRefundPay refundPayForm = new FormVIPCardRefundPay(cardRefundPayList); refundPayForm.ShowDialog(); } Guid handoverRecordId = Guid.NewGuid(); HandoverRecord handoverRecord = new HandoverRecord(); handoverRecord.HandoverRecordID = handoverRecordId; handoverRecord.DeviceNo = ConstantValuePool.BizSettingConfig.DeviceNo; handoverRecord.EmployeeID = ConstantValuePool.CurrentEmployee.EmployeeID; IList<HandoverTurnover> handoverTurnoverList = new List<HandoverTurnover>(); foreach (OrderPayoffSum item in bizReport.orderPayoffSumList) { HandoverTurnover handoverTurnover = new HandoverTurnover(); handoverTurnover.HandoverRecordID = handoverRecordId; handoverTurnover.PayoffID = item.PayoffID; handoverTurnover.SalesTurnover = item.PayoffMoney; handoverTurnoverList.Add(handoverTurnover); } HandoverInfo handover = new HandoverInfo(); handover.handoverRecord = handoverRecord; handover.handoverTurnoverList = handoverTurnoverList; bool result = HandoverService.GetInstance().CreateHandover(handover); if (result) { MessageBox.Show("交班成功!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); m_HandleSuccess = true; this.Close(); } else { MessageBox.Show("出现异常错误,请重新交班!"); } } else if (m_ModelType == 2) { //判断是否存在退款失败的账单 CardRefundPayService refundPayService = new CardRefundPayService(); List<CardRefundPay> cardRefundPayList = refundPayService.GetCardRefundPayList(); if (cardRefundPayList != null && cardRefundPayList.Count > 0) { FormVIPCardRefundPay refundPayForm = new FormVIPCardRefundPay(cardRefundPayList); refundPayForm.ShowDialog(); } FormChooseDate form = new FormChooseDate(bizReport.LastDailyStatementTime); form.ShowDialog(); if (form.DailyStatementDate != null) { string weather = this.cmbWeather.Text; if (string.IsNullOrEmpty(weather)) { MessageBox.Show("请先选择当天天气情况!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } DateTime belongToDate = (DateTime)form.DailyStatementDate; DailyStatement dailyStatement = new DailyStatement(); dailyStatement.DeviceNo = ConstantValuePool.BizSettingConfig.DeviceNo; dailyStatement.BelongToDate = belongToDate; dailyStatement.Weather = weather; dailyStatement.EmployeeID = ConstantValuePool.CurrentEmployee.EmployeeID; DailyTurnover dailyTurnover = new DailyTurnover(); dailyTurnover.TotalRevenue = bizReport.TotalRevenue; dailyTurnover.CutOffTotalPrice = bizReport.CutOffTotalPrice; dailyTurnover.DiscountTotalPrice = bizReport.DiscountTotalPrice; dailyTurnover.ActualTotalIncome = bizReport.ActualTotalIncome; dailyTurnover.TotalServiceFee = bizReport.TotalServiceFee; dailyTurnover.StoredTotalPrice = 0; DailyBalance dailyBalance = new DailyBalance(); dailyBalance.dailyStatement = dailyStatement; dailyBalance.dailyTurnover = dailyTurnover; string unCheckDeviceNo; //未结账的设备号 int result = DailyBalanceService.GetInstance().CreateDailyBalance(dailyBalance, out unCheckDeviceNo); if (result == 1) { MessageBox.Show("日结成功!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information); m_HandleSuccess = true; this.Close(); } else if (result == 2) { MessageBox.Show("存在未结账单据,请先结完账!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } else if (result == 3) { if (string.IsNullOrEmpty(unCheckDeviceNo)) { MessageBox.Show("存在未交班的POS,请先交班!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { if (unCheckDeviceNo.IndexOf(',') == -1 && unCheckDeviceNo.IndexOf(ConstantValuePool.BizSettingConfig.DeviceNo) >= 0) { MessageBox.Show("当前设备未交班,请交班后进行日结!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { MessageBox.Show(string.Format("设备【{0}】未交班,请先交班!",unCheckDeviceNo), "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else { MessageBox.Show("出现异常错误,请重新日结!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } } }