private void MemberOperationForm_Load(object sender, EventArgs e) { FillMemberLevel(); FillMemberSataus(); if (memberVo == null) { this.textMId.Text = GenrateIDUtil.GenerateMemberID(); } else { this.textMId.Text = memberVo.MId; this.textMId.Enabled = false; this.textBalance.Text = memberVo.MBalance.ToString(); this.textBalance.Enabled = false; } }
private void BtnQuery_Click(object sender, EventArgs e) { OrderInfoVo vo = new OrderInfoVo(); vo.OrderID = GenrateIDUtil.GenerateOrderID(); vo.Price = Convert.ToDouble(this.textPrice.Text); vo.Tax = Convert.ToDouble(this.textGst.Text); vo.TotalPrice = Convert.ToDouble(this.textTotal.Text); vo.PriceType = this.comboType.Text; vo.EndTime = DateTime.Now; vo.CompanyId = SystemConst.companyId; if (TransactionDao.DealOrder(vo, selectedVoList, this.comboType.Text)) { //删除临时订单 foreach (TempOrderVo tempVo in selectedVoList) { DeleteDao.DeleteByID(tempVo.Id, typeof(TempOrderVo)); } //会员消费记录 if (!string.IsNullOrWhiteSpace(this.textMemberId.Text)) { MemberConsumeVo consumeVo = new MemberConsumeVo(); string consumeId = GenrateIDUtil.GenerateConsumeID(); consumeVo.Id = consumeId; consumeVo.MId = this.textMemberId.Text; consumeVo.MName = SelectDao.GetMemberNameByID(this.textMemberId.Text); consumeVo.Amount = double.Parse(this.textTotal.Text); consumeVo.ConsumeTime = DateTime.Now; consumeVo.CompanyId = SystemConst.companyId; InsertDao.InsertData(consumeVo); } XtraMessageBox.Show("买单成功!"); EventBus.PublishEvent("StaffWorkStatusChange"); } else { XtraMessageBox.Show("买单失败!"); } }
/// <summary> /// 处理订单 /// </summary> /// <param name="orderVo"></param> /// <param name="tempOrderList"></param> /// <param name="priceType"></param> /// <returns></returns> public static bool DealOrder(OrderInfoVo orderVo, List <TempOrderVo> tempOrderList, string priceType) { if (mySqlclient == null) { mySqlclient = MySqlClient.GetMySqlClient(); } MySqlCommand command = new MySqlCommand(); MySqlConnection connection = mySqlclient.GetConnect(); connection.Open(); MySqlTransaction transaction = connection.BeginTransaction(); command.Connection = connection; command.Transaction = transaction; //订单 string sql = mySqlclient.GenerateInsertSql(orderVo); try { command.CommandText = sql; command.ExecuteNonQuery(); } catch (Exception ex) { transaction.Rollback(); return(false); } //详细订单 foreach (TempOrderVo tempVo in tempOrderList) { DetailedOrderVo detVo = new DetailedOrderVo(); detVo.DetailID = GenrateIDUtil.GenerateDetailOrderID(); detVo.OrderID = orderVo.OrderID; detVo.SkillId = tempVo.SkillId; detVo.Price = SelectDao.GetSkillPriceDetail(tempVo.SkillName, tempVo.WorkType, priceType); double gstPrice = (detVo.Price * 6) / 106; detVo.Tax = Math.Round(gstPrice, 2, MidpointRounding.AwayFromZero); detVo.TotalPrice = detVo.Price + detVo.Tax; detVo.StartTime = tempVo.StartTime; detVo.EndTime = tempVo.EndTime; detVo.CompanyId = SystemConst.companyId; sql = mySqlclient.GenerateInsertSql(detVo); try { command.CommandText = sql; command.ExecuteNonQuery(); } catch (Exception ex) { transaction.Rollback(); return(false); } } //员工工作状态 foreach (TempOrderVo tempVo in tempOrderList) { sql = @"update StaffWork set StaffStatus='空闲',RoomId=null,RoomName='' where StaffID='" + tempVo.StaffID + "'" + ANDCOMPANYID; try { command.CommandText = sql; command.ExecuteNonQuery(); } catch (Exception) { transaction.Rollback(); return(false); } } //员工做工记录 foreach (TempOrderVo tempVo in tempOrderList) { StaffWorkRecordVo recordVo = new StaffWorkRecordVo(); recordVo.ID = GenrateIDUtil.GenerateWorkRecordID(); recordVo.StaffId = tempVo.StaffID; recordVo.StaffName = SelectDao.SelectStaffNameByID(tempVo.StaffID); recordVo.OrderID = orderVo.OrderID; recordVo.Amount = orderVo.TotalPrice; recordVo.WorkTime = DateTime.Now; recordVo.CompanyId = SystemConst.companyId; sql = mySqlclient.GenerateInsertSql(recordVo); try { command.CommandText = sql; command.ExecuteNonQuery(); } catch (Exception) { transaction.Rollback(); return(false); } } //房间状态 foreach (TempOrderVo tempVo in tempOrderList) { sql = @"update Room set roomStatus='空闲' where RoomId=" + tempVo.RoomID + ANDCOMPANYID; try { command.CommandText = sql; command.ExecuteNonQuery(); } catch (Exception) { transaction.Rollback(); return(false); } } transaction.Commit(); connection.Close(); return(true); }