예제 #1
0
        /// <summary>
        /// 打开积分兑换窗体
        /// </summary>
        /// <param name="call"></param>
        public static void ShowPointsExchange(Action <bool> call)
        {
            var window = new PointsExchangeWindow {
                Owner = Application.Current.MainWindow
            };

            window.ShowDialog();

            if (call == null)
            {
                return;
            }
            var vm = window.DataContext as PointsExchangeViewModel;

            call(vm != null && vm.IsExchangeSuccess);
        }
예제 #2
0
        private void print(object sender)
        {
            //打印
            Guid mid = Guid.Parse((sender as Button).Tag.ToString());

            DXInfo.Models.Bills bill = Uow.Bills.GetById(g => g.Id == mid);
            if (bill != null)
            {
                List <DXInfo.Models.BillInvLists>       lBillInvList       = Uow.BillInvLists.GetAll().Where(w => w.Bill == bill.Id).ToList();
                List <DXInfo.Models.BillDonateInvLists> lBillDonateInvList = Uow.BillDonateInvLists.GetAll().Where(w => w.Bill == bill.Id).ToList();


                ObservableCollection <DXInfo.Models.InventoryEx> oiex = new ObservableCollection <DXInfo.Models.InventoryEx>();
                foreach (DXInfo.Models.BillInvLists billInvList in lBillInvList)
                {
                    DXInfo.Models.InventoryEx iex = Mapper.Map <DXInfo.Models.InventoryEx>(billInvList);
                    iex.CupType           = new DXInfo.Models.MyEnum();
                    iex.CupType.Name      = billInvList.CupType;
                    iex.lTasteEx          = new DXInfo.Models.TasteExList();
                    iex.IsInvDynamicPrice = this.IsInvDynamicPrice;
                    if (!string.IsNullOrEmpty(billInvList.Tastes))
                    {
                        string[] strTastes = billInvList.Tastes.Split(',');
                        foreach (string taste in strTastes)
                        {
                            if (!string.IsNullOrEmpty(taste))
                            {
                                DXInfo.Models.TasteEx tex = new DXInfo.Models.TasteEx();
                                tex.IsSelected = true;
                                tex.Name       = taste;
                                iex.lTasteEx.Add(tex);
                            }
                        }
                    }
                    oiex.Add(iex);
                }
                List <DXInfo.Models.CardDonateInventoryEx> lcdi = new List <DXInfo.Models.CardDonateInventoryEx>();
                foreach (DXInfo.Models.BillDonateInvLists billInvList in lBillDonateInvList)
                {
                    DXInfo.Models.CardDonateInventoryEx cdi = Mapper.Map <DXInfo.Models.CardDonateInventoryEx>(billInvList);
                    lcdi.Add(cdi);
                }
                DateTime dCreateDate = bill.CreateDate.Value;
                decimal  dSum        = bill.Sum.HasValue ? bill.Sum.Value : 0;
                decimal  dQuantity   = oiex.Sum(s => s.Quantity);
                string   title       = "";
                decimal  dBalance    = bill.Balance.HasValue ? bill.Balance.Value : 0;
                decimal  dDiscount   = bill.Discount.HasValue ? bill.Discount.Value : 0;
                decimal  dAmount     = bill.Amount.HasValue ? bill.Amount.Value : 0;
                decimal  dVoucher    = bill.Voucher.HasValue ? bill.Voucher.Value : 0;
                DeskNo = bill.DeskNo;
                List <string> lFullName    = new List <string>();
                string[]      strFullNames = bill.FullName.Split(',');
                foreach (string strFullName in strFullNames)
                {
                    lFullName.Add(strFullName);
                }
                if (lFullName.Count == 1)
                {
                    lFullName.Add(strFullNames[0]);
                }
                string  userName     = lFullName[0];
                string  operName     = lFullName[1];
                string  deptName     = bill.DeptName;
                decimal dLastBalance = bill.LastBalance.HasValue ? bill.LastBalance.Value : 0;
                decimal dDonate      = bill.Donate.HasValue ? bill.Donate.Value : 0;
                string  payTypeName  = bill.PayTypeName;
                string  cardNo       = bill.CardNo;
                string  memberName   = bill.MemberName;
                decimal dCash        = bill.Cash;
                decimal dChange      = bill.Change;
                switch (bill.BillType)
                {
                case "CardConsumeWindow":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfCold);
                    if (this.IsTicket1)
                    {
                        MemberConsumePrintObject po = new MemberConsumePrintObject(oiex, lcdi, DeskNo, deptName, dCreateDate, dSum, dQuantity, this.IsCupType);
                        ;
                        po.Print();
                    }
                    if (this.IsTicket2)
                    {
                        MemberConsumePrintObject2 po2 = new MemberConsumePrintObject2(title, oiex, lcdi, cardNo, memberName, dLastBalance,
                                                                                      dBalance, dSum, dDiscount, dAmount, dVoucher, DeskNo,
                                                                                      operName, userName, deptName, dCreateDate, this.IsCupType);
                        po2.Print();
                    }
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.SaleThreePrintMemmber);    //@"Report1.rdlc";
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue?bill.PeopleCount.Value:0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Sale);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;

                        threePrintObject.CardNo      = cardNo;
                        threePrintObject.MemberName  = memberName;
                        threePrintObject.Discount    = dDiscount;
                        threePrintObject.Balance     = dBalance;
                        threePrintObject.LastBalance = dLastBalance;

                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        DataTable dt3 = lCardDonateInventoryEx.ToDataTable <DXInfo.Models.CardDonateInventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet3", dt3)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    break;

                case "CardInMoneyWindow":
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.ThreePrintInMoney);
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitleOfMember);
                        threePrintObject.CardNo      = cardNo;
                        threePrintObject.MemberName  = memberName;
                        threePrintObject.LastBalance = dLastBalance;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.Donate      = dDonate;
                        threePrintObject.PayTypeName = payTypeName;
                        threePrintObject.Balance     = dBalance;
                        threePrintObject.FullName    = operName;
                        threePrintObject.UserName    = userName;
                        threePrintObject.DeptName    = deptName;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.ButtomTitle = ClientCommon.PrintTicketButtomTitle(DXInfo.Models.NameCodeType.ThreeButtomTitleInMoney);
                        DataTable dt = threePrintObject.ToDataTable();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    else
                    {
                        title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitleOfMember);
                        InMoneyPrintObject ipo = new InMoneyPrintObject(title, cardNo,
                                                                        memberName, dLastBalance, dBalance, dAmount, dDonate, payTypeName
                                                                        , operName, userName, deptName, dCreateDate);
                        ipo.Print();
                    }
                    break;

                case "NoMemberConsumeWindow":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfCold);
                    if (this.IsTicket1)
                    {
                        NoMemberConsumePrintObject npo = new NoMemberConsumePrintObject(oiex, DeskNo, deptName, dCreateDate, dSum, dQuantity, this.IsCupType);
                        ;
                        npo.Print();
                    }
                    if (this.IsTicket3)
                    {
                        NoMemberConsumePrintObject2 npo2 = new NoMemberConsumePrintObject2(title, oiex, dSum, dAmount, dVoucher, dCash, dChange, payTypeName, DeskNo,
                                                                                           operName, userName, deptName, dCreateDate, this.IsCupType);
                        npo2.Print();
                    }
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.SaleThreePrintNoMemmber);    //@"Report1.rdlc";
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue ? bill.PeopleCount.Value : 0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.Change      = dChange;
                        threePrintObject.Cash        = dCash;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Sale);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;
                        threePrintObject.Discount    = dDiscount;
                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    break;

                case "PointsExchangeWindow":
                    var bl1 = (from d in lBillInvList select new { d.Amount, d.Bill, d.CupType, d.Id, d.Name, d.Quantity, d.SalePrice, d.Tastes, EnglishName = d.CupType, Price = d.SalePrice }).ToList();
                    var bd  = Uow.BillDonateInvLists.GetAll().Where(w => w.Bill == bill.Id).Select(s => new { Name = s.InvName }).ToList();
                    var p   = new
                    {
                        bill.Amount,
                        bill.Balance,
                        bill.CardNo,
                        bill.DeptName,
                        bill.Donate,
                        bill.FullName,
                        bill.LastBalance,
                        bill.Sum,
                        bill.Voucher,
                        bill.Discount,
                        bill.MemberName,
                        bill.CreateDate,
                        lSelInv = bl1,
                        bill.PayTypeName,
                        bill.Change,
                        bill.Cash,
                        bill.DeskNo,
                        CardDonateInventory = bd
                    };
                    PointsExchangeWindow cw3 = new PointsExchangeWindow(Uow, p);
                    cw3.IsPrint = true;
                    cw3.ShowDialog();
                    break;

                case "WRCardConsumeWindow":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfWR);
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.ThreePrintMemmber);    //@"Report1.rdlc";
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue ? bill.PeopleCount.Value : 0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Shop);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;

                        threePrintObject.CardNo      = cardNo;
                        threePrintObject.MemberName  = memberName;
                        threePrintObject.Discount    = dDiscount;
                        threePrintObject.Balance     = dBalance;
                        threePrintObject.LastBalance = dLastBalance;

                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        DataTable dt3 = lCardDonateInventoryEx.ToDataTable <DXInfo.Models.CardDonateInventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet3", dt3)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    else
                    {
                        WRMemberConsumePrintObject2 wpo2 = new WRMemberConsumePrintObject2(title, oiex, lcdi, cardNo, memberName, dLastBalance,
                                                                                           dBalance, dSum, dDiscount, dAmount, dVoucher, DeskNo,
                                                                                           operName, userName, deptName, dCreateDate, this.Dept.Comment);
                        wpo2.Print();
                    }
                    break;

                case "WRNoMemberConsumeWindow":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfWR);
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.ThreePrintNoMemmber);    //@"Report1.rdlc";
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue ? bill.PeopleCount.Value : 0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.Change      = dChange;
                        threePrintObject.Cash        = dCash;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Shop);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;

                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    else
                    {
                        WRNoMemberConsumePrintObject2 wnpo2 = new WRNoMemberConsumePrintObject2(title, oiex, dSum, dAmount, dVoucher, dCash, dChange, payTypeName, DeskNo,
                                                                                                operName, userName, deptName, dCreateDate, this.Dept.Comment);
                        wnpo2.Print();
                    }
                    break;

                case "WRCardConsume3Window":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfWR);
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.ThreePrintMemmberNoMoney);
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue ? bill.PeopleCount.Value : 0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.Change      = dChange;
                        threePrintObject.Cash        = dCash;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Shop);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;

                        threePrintObject.CardNo     = cardNo;
                        threePrintObject.MemberName = memberName;
                        threePrintObject.Discount   = dDiscount;

                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        DataTable dt3 = lCardDonateInventoryEx.ToDataTable <DXInfo.Models.CardDonateInventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet3", dt3)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    else
                    {
                        WRMemberConsumePrintObject3 wpo3 = new WRMemberConsumePrintObject3(title, oiex, lcdi, cardNo, memberName, dCash,
                                                                                           dChange, dSum, dDiscount, dAmount, dVoucher, payTypeName, DeskNo,
                                                                                           operName, userName, deptName, dCreateDate, this.Dept.Comment);
                        wpo3.Print();
                    }
                    break;

                case "CardConsume3Window":
                    title = ClientCommon.PrintTicketTitle(DXInfo.Models.NameCodeType.PrintTicketTitle1OfCold);
                    if (this.IsTicket1)
                    {
                        MemberConsumePrintObject mpo = new MemberConsumePrintObject(oiex, lcdi, DeskNo, deptName, dCreateDate, dSum, dQuantity, this.IsCupType);
                        ;
                        mpo.Print();
                    }
                    if (this.IsTicket2)
                    {
                        MemberConsumePrintObject3 mpo3 = new MemberConsumePrintObject3(title, oiex, lcdi, cardNo, memberName, dCash,
                                                                                       dChange, dSum, dDiscount, dAmount, dVoucher, payTypeName, DeskNo,
                                                                                       operName, userName, deptName, dCreateDate, this.IsCupType);
                        mpo3.Print();
                    }
                    if (this.IsThree)
                    {
                        LocalReport report = new LocalReport();
                        report.ReportPath = GetThreePrintFile(DXInfo.Models.NameCodeType.SaleThreePrintMemmberNoMoney);
                        NoMemberThreePrintObject threePrintObject = new NoMemberThreePrintObject();
                        threePrintObject.Title       = title;
                        threePrintObject.DeskNo      = DeskNo;
                        threePrintObject.PeopleCount = bill.PeopleCount.HasValue ? bill.PeopleCount.Value : 0;
                        threePrintObject.Amount      = dAmount;
                        threePrintObject.CreateDate  = dCreateDate;
                        threePrintObject.Change      = dChange;
                        threePrintObject.Cash        = dCash;
                        threePrintObject.ButtomTitle = GetButtomTitle(DXInfo.Models.DeptType.Sale);
                        threePrintObject.Sum         = dSum;
                        threePrintObject.DeptName    = Dept.DeptName;
                        threePrintObject.Voucher     = dVoucher;
                        threePrintObject.FullName    = Oper.FullName;
                        threePrintObject.UserName    = User.UserName;
                        threePrintObject.PayTypeName = payTypeName;

                        threePrintObject.CardNo     = cardNo;
                        threePrintObject.MemberName = memberName;
                        threePrintObject.Discount   = dDiscount;

                        DataTable dt  = threePrintObject.ToDataTable();
                        DataTable dt2 = oiex.ToDataTable <DXInfo.Models.InventoryEx>();
                        DataTable dt3 = lCardDonateInventoryEx.ToDataTable <DXInfo.Models.CardDonateInventoryEx>();
                        report.DataSources.Add(
                            new ReportDataSource("DataSet1", dt)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet2", dt2)
                            );
                        report.DataSources.Add(
                            new ReportDataSource("DataSet3", dt3)
                            );
                        PrintRDLC printRDLC = new PrintRDLC();
                        printRDLC.Run(report);
                    }
                    break;

                case "Sticker":
                    //MyBusiness mb = new MyBusiness(Uow,this.Oper.UserId,this.Dept.DeptId,this.Dept.OrganizationId);
                    int count = Convert.ToInt32(dSum);
                    DXInfo.Models.InventoryEx iex = oiex[0];
                    int idx = Convert.ToInt32(iex.Quantity);
                    StickerPrintObject opo = new StickerPrintObject(payTypeName, iex, DeskNo,
                                                                    deptName, dCreateDate, idx, count, iex.Name, iex.SalePrice.ToString(), iex.CupType.Name);
                    opo.Print();
                    break;
                }
            }
        }
예제 #3
0
 private void checkOut()
 {
     //结账
     if (this.Card == null)
     {
         MessageBox.Show("请刷卡");
         return;
     }
     if (this.OCInventoryEx == null || this.OCInventoryEx.Count == 0)
     {
         MessageBox.Show("请选择商品");
         return;
     }
     if (this.OCInventoryEx != null && this.OCInventoryEx.Count > 0)
     {
         ObservableCollection <InventoryEx> lsi = this.OCInventoryEx;
         decimal dAmount = lsi.Sum(s => s.CurrentPoint);
         if (dAmount > this.Points)
         {
             MessageBox.Show("积分不足");
             return;
         }
         var lselInv = lsi.Select(s => new
         {
             s.Id,
             s.Code,
             s.Name,
             s.SalePoint,
             s.Quantity,
             s.Amount,
             CupType = s.CupType.Name,//Id == -1 ? "标准杯" : s.CupType == 0 ? "大杯" : s.CupType == 1 ? "中杯" : "小杯",
             Cup     = s.CupType.Id,
             lTastes = s.lTasteEx.Where(w => w.IsSelected).ToList(),
             Tastes  = s.lTasteEx.Where(w => w.IsSelected == true).Count() == 0 ? "" : s.lTasteEx.Where(w => w.IsSelected == true).Select(l => l.Name).Aggregate((total, next) => (total + "," + next))
             ,
             ConsumeTastes = s.lTasteEx.Where(w => w.IsSelected == true)
         });
         var ctx = new
         {
             Id          = this.Card.Id,
             CardNo      = this.Card.CardNo,
             MemberName  = this.Member.MemberName,
             UserId      = this.Oper.UserId,
             FullName    = this.Oper.FullName,
             DeptId      = this.Oper.DeptId.Value,
             DeptName    = this.Dept.DeptName,
             Amount      = dAmount,
             LastBalance = this.Points,
             Balance     = this.Points - dAmount,
             CreateDate  = DateTime.Now,
             lSelInv     = lselInv
         };
         PointsExchangeWindow cw = new PointsExchangeWindow(Uow, ctx);
         if (cw.ShowDialog().GetValueOrDefault())
         {
             MessageBox.Show("会员积分兑换成功");
             this.OCInventoryEx       = new ObservableCollection <InventoryEx>();
             this.Card                = null;
             this.Member              = null;
             this.SelectedInventoryEx = null;
             this.Points              = 0;
             this.CardBalance         = 0;
             this.CardLevel           = null;
             this.CardType            = null;
         }
     }
 }