private void bbiAddNew_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            FrmOneTimeExperience form = new FrmOneTimeExperience();

            if (form.ShowDialog() == DialogResult.OK)
            {
                OneTimeExperience product    = form.Product;
                IProductMgr       productMgr = new ContainerBootstrapper().ChildContainer.Resolve <IProductMgr>();
                productMgr.Save(product);
                XtraMessageBox.Show("成功地新建了体验产品!");
                LoadProducts();
            }
        }
        private void bbiModify_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            OneTimeExperience product = gridViewProducts.GetFocusedRow() as OneTimeExperience;

            if (product == null)
            {
                XtraMessageBox.Show("请先选择待修改的产品!", "提示");
                return;
            }

            FrmOneTimeExperience form = new FrmOneTimeExperience(product);

            if (form.ShowDialog() == DialogResult.OK)
            {
                IProductMgr productMgr = new ContainerBootstrapper().ChildContainer.Resolve <IProductMgr>();
                product = form.Product;
                productMgr.Save(product);
                XtraMessageBox.Show("成功地修改了体验产品!");
            }
        }
        private void bbiDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            OneTimeExperience product = gridViewProducts.GetFocusedRow() as OneTimeExperience;

            if (product == null)
            {
                XtraMessageBox.Show("请先选择待删除的次卡产品!", "提示");
                return;
            }

            DialogResult result = XtraMessageBox.Show(string.Format("确认删除次卡[{0}]吗?", product.Name),
                                                      "询问", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (result == DialogResult.Yes)
            {
                IProductMgr productMgr = new ContainerBootstrapper().ChildContainer.Resolve <IProductMgr>();
                productMgr.Delete(product.Id);
                LoadProducts();
                XtraMessageBox.Show("删除成功!");
            }
        }
        public void AddOneTimeExperienceTest()
        {
            Guid productId            = Guid.Parse("00000000-0000-0001-0003-000000000004");
            Guid mediumId             = Guid.Parse("00000000-0000-0000-0001-000000000002");
            var  context              = new MMContext();
            var  productRepository    = new ProductRepository(context);
            var  mediumRepository     = new MediumRepository(context);
            var  medium画纸             = mediumRepository.GetByKey(mediumId);
            OneTimeExperience product = new OneTimeExperience()
            {
                Name = "一次性画布Addtest", Price = 30, Medium = medium画纸
            };

            productRepository.Add(product);
            product.ChangeCurrentIdentity(productId);
            productRepository.UnitOfWork.Commit();

            var productRepository1 = new ProductRepository(new MMContext());
            var product1           = productRepository.GetByKey(productId);

            Assert.AreEqual("一次性画布Addtest", product1.Name);
        }
        public void CreateDatas()
        {
            MMContext context = new MMContext();

            var medium画布 = new Medium()
            {
                Name = "画布"
            };

            medium画布.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0000-0001-000000000001"));
            context.Mediums.Add(medium画布);

            var medium画纸 = new Medium()
            {
                Name = "画纸"
            };

            medium画纸.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0000-0001-000000000002"));
            context.Mediums.Add(medium画纸);

            var lecture = new Lecture()
            {
                Name        = "水粉画基础",
                Price       = 998,
                Count       = 14,
                Medium      = medium画纸,
                Description = "从零开始学习水粉画的基本画法"
            };

            lecture.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0001-000000000001"));
            context.Lectures.Add(lecture);

            lecture = new Lecture()
            {
                Name        = "水粉画基础test",
                Price       = 998,
                Count       = 14,
                Medium      = medium画纸,
                Description = "从零开始学习水粉画的基本画法"
            };
            lecture.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0001-000000000002"));
            context.Lectures.Add(lecture);

            var timesCard = new TimesCard()
            {
                Name   = "500元画纸",
                Price  = 500,
                Count  = 12,
                Medium = medium画纸
            };

            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000001"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "500元画布",
                Price  = 500,
                Count  = 8,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000002"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画纸",
                Price  = 1000,
                Count  = 26,
                Medium = medium画纸
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000003"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000004"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布test",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000005"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布test",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000006"));
            context.TimesCards.Add(timesCard);

            var oneTimeExperience = new OneTimeExperience()
            {
                Name = "一次性画纸", Price = 20, Medium = medium画纸
            };

            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000001"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            oneTimeExperience = new Model.OneTimeExperience()
            {
                Name = "一次性画布", Price = 30, Medium = medium画纸
            };
            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000002"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            oneTimeExperience = new Model.OneTimeExperience()
            {
                Name = "一次性画布test", Price = 30, Medium = medium画纸
            };
            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000003"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            Tutor tutor = new Tutor()
            {
                Name      = "admin",
                IsManager = true
            };

            tutor.SetPassword("password");
            tutor.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0002-0001-000000000001"));
            context.Tutors.Add(tutor);

            SellRecord sellRecord = new SellRecord()
            {
                ProductId = Guid.Parse("00000000-0000-0001-0002-000000000001"),
                Tutor     = tutor,
                Price     = 500,
                SellDate  = DateTime.Parse("2017-3-1")
            };

            sellRecord.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0005-0001-000000000001"));
            context.SellRecords.Add(sellRecord);

            Member member = new Member()
            {
                Name = "李四", PhoneNumber = "1234567890"
            };

            member.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0003-0001-000000000001"));
            LectureMemberCard lectureMemberCard = new LectureMemberCard()
            {
                Name         = "500元画纸",
                TotalCount   = 12,
                Remainder    = 12,
                MediumName   = medium画纸.Name,
                ProductId    = Guid.Parse("00000000-0000-0001-0002-000000000001"),
                Member       = member,
                PurchaseDate = DateTime.Parse("2017-3-1"),
                SellRecord   = sellRecord
            };

            lectureMemberCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0004-0001-000000000001"));
            member.MemberCards.Add(lectureMemberCard);
            context.Members.Add(member);

            context.SaveChanges();
        }
示例#6
0
 public FrmOneTimeExperience(OneTimeExperience product)
 {
     InitializeComponent();
     _product = product;
 }
示例#7
0
 public FrmOneTimeExperience()
 {
     InitializeComponent();
     _product = new OneTimeExperience();
 }
        protected override void Seed(MMContext context)
        {
            base.Seed(context);

            var medium画布 = new Medium()
            {
                Name = "画布"
            };

            medium画布.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0000-0001-000000000001"));
            context.Mediums.Add(medium画布);

            var medium画纸 = new Medium()
            {
                Name = "画纸"
            };

            medium画纸.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0000-0001-000000000002"));
            context.Mediums.Add(medium画纸);

            var lecture = new Lecture()
            {
                Name        = "水粉画基础",
                Price       = 998,
                Count       = 14,
                Medium      = medium画纸,
                Description = "从零开始学习水粉画的基本画法"
            };

            lecture.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0001-000000000001"));
            context.Lectures.Add(lecture);

            lecture = new Lecture()
            {
                Name        = "水粉画基础test",
                Price       = 998,
                Count       = 14,
                Medium      = medium画纸,
                Description = "从零开始学习水粉画的基本画法"
            };
            lecture.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0001-000000000002"));
            context.Lectures.Add(lecture);

            var timesCard = new TimesCard()
            {
                Name   = "500元画纸",
                Price  = 500,
                Count  = 12,
                Medium = medium画纸
            };

            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000001"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "500元画布",
                Price  = 500,
                Count  = 8,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000002"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画纸",
                Price  = 1000,
                Count  = 26,
                Medium = medium画纸
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000003"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000004"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布test",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000005"));
            context.TimesCards.Add(timesCard);

            timesCard = new TimesCard()
            {
                Name   = "1000元画布test",
                Price  = 1000,
                Count  = 18,
                Medium = medium画布
            };
            timesCard.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0002-000000000006"));
            context.TimesCards.Add(timesCard);

            var oneTimeExperience = new OneTimeExperience()
            {
                Name = "一次性画纸", Price = 20, Medium = medium画纸
            };

            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000001"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            oneTimeExperience = new Model.OneTimeExperience()
            {
                Name = "一次性画布", Price = 30, Medium = medium画纸
            };
            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000002"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            oneTimeExperience = new Model.OneTimeExperience()
            {
                Name = "一次性画布test", Price = 30, Medium = medium画纸
            };
            oneTimeExperience.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0001-0003-000000000003"));
            context.OneTimeExperiences.Add(oneTimeExperience);

            Tutor tutor = new Tutor()
            {
                Name      = "admin",
                IsManager = true
            };

            tutor.SetPassword("password");
            tutor.ChangeCurrentIdentity(Guid.Parse("00000000-0000-0002-0001-000000000001"));
            context.Tutors.Add(tutor);
        }
        public void OverAllAdminFuntionTest()
        {
            //Add OneTimeExperience : Product
            var ote = new OneTimeExperience()
            {
                Name  = "testOTE",
                Price = 10.3M
            };

            ote.GenerateNewIdentity();
            _admin.AddProduct(ote);
            Assert.AreEqual(context.Products.Count(), 1);
            var result = context.Products.FirstOrDefault(x => x.Id == ote.Id);

            Assert.AreEqual(context.Products.FirstOrDefault(x => x.Id == ote.Id), ote);

            //Add Lecture : MemberProduct : Product
            var lecture = new Lecture()
            {
                Count       = 10,
                Description = "test description",
                Name        = "testLecture",
                Price       = 10.4M
            };

            lecture.GenerateNewIdentity();
            _admin.AddProduct(lecture);
            Assert.AreEqual(context.Products.Count(), 2);
            Assert.AreEqual(context.Products.FirstOrDefault(x => x.Id == lecture.Id), lecture);

            //Add Medium
            var medium = new Medium()
            {
                Name = "testMedium"
            };

            medium.GenerateNewIdentity();
            _admin.AddMedium(medium);
            Assert.AreEqual(context.Mediums.Count(), 1);
            Assert.AreEqual(context.Mediums.FirstOrDefault(x => x.Name == medium.Name).Id, medium.Id);

            //Add TimesCard : MemberProduct : Product
            var timesCard = new TimesCard()
            {
                Count  = 10,
                Medium = medium,
                Name   = "testTimesCard",
                Price  = 9.9M
            };

            timesCard.GenerateNewIdentity();
            _admin.AddProduct(timesCard);
            Assert.AreEqual(context.Products.Count(), 3);
            Assert.AreEqual(context.Products.FirstOrDefault(x => x.Id == timesCard.Id), timesCard);

            var tutor = new Tutor()
            {
                Address     = "testAddress",
                Gender      = Model.Enums.Gender.Female,
                IsManager   = true,
                Name        = "testName",
                PhoneNumber = "12345678"
            };

            _admin.AddTutor(tutor);
            Assert.AreEqual(context.Tutors.Count(), 1);
            Assert.AreEqual(context.Tutors.FirstOrDefault(x => x.Name == tutor.Name).Id, tutor.Id);

            //_admin.Sell(tutor.Id, timesCard.Id, "testMember", "testPhoneNumber");
            Assert.AreEqual(context.Purchases.Count(), 1);
            var testSell = context.Purchases.FirstOrDefault(x => x.ProductId == timesCard.Id);

            Assert.AreEqual(testSell.Product, timesCard);
            Assert.AreNotEqual(testSell.PurchaseDate, null);
            Assert.AreEqual(testSell.Tutor, tutor);
            Assert.AreEqual(context.Members.Count(), 1);
            var testMember = context.Members.FirstOrDefault();

            Assert.AreEqual(testMember.Name, "testMember");
            Assert.AreEqual(testMember.PhoneNumber, "testPhoneNumber");
            Assert.AreEqual(testMember.Address, null);
            Assert.AreEqual(testMember.Balances.Count, 1);
            Assert.AreEqual(testMember.Balances.FirstOrDefault().Product, timesCard);
            Assert.AreEqual(testMember.Gender, Model.Enums.Gender.Male);

            //var newMember = new Member()
            //{
            //    Address = "testAddress",
            //    PhoneNumber = "testPhoneNunber",
            //    Name ="testMember"
            //};
            //_admin.ModifyMember(newMember);
            //Assert.AreEqual(_context.Members.Count(), 1);
            //Assert.AreEqual(_context.Members.FirstOrDefault().Id, testMember.Id);
            //Assert.AreEqual(_context.Members.FirstOrDefault().Address, "testAddress");
        }