/// <summary> /// 销售会员产品 /// </summary> /// <param name="tutorName">教师姓名</param> /// <param name="productId">产品Id</param> /// <param name="customerName">顾客姓名</param> /// <param name="phoneNumber">顾客手机号码</param> public void Sell(string tutorName, Guid productId, string customerName, string phoneNumber) { var tutor = _tutorMgr.GetByName(tutorName); var product = _productMgr.GetById(productId); //if (product is OneTimeExperience) // throw new using (TransactionScope scope = new TransactionScope()) { bool isNewMember = false; SellRecord sellRecord; Member member = null; if (product is MemberProduct) { member = _memberMgr.GetByPhoneNumber(phoneNumber); if (member == null) { member = new Member() { Name = customerName, PhoneNumber = phoneNumber }; isNewMember = true; } sellRecord = ((MemberProduct)product).Sell(tutor, member); _sellRecordMgr.Save(sellRecord); _memberMgr.Save(member); } scope.Complete(); } }
private void btnConsume_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(txtPhoneNumber.Text)) { XtraMessageBox.Show("请先输入顾客的手机号码!"); txtPhoneNumber.Focus(); return; } string phoneNumber = txtPhoneNumber.Text.Trim(); Member member = _memberMgr.GetByPhoneNumber(phoneNumber); if (member == null) { XtraMessageBox.Show(string.Format("系统中不存在手机号码为“{0}”的顾客!", phoneNumber), "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } else { bindingSourceMemberCard.DataSource = member.MemberCards.OfType <TimesCardMemberCard>(); } }