Beispiel #1
0
            public static void Initialize()
            {
                IAccountRepository accRepo = new Moq.Mock<IAccountRepository>().Object;
                ISessionRepository sessionRepo = new Moq.Mock<ISessionRepository>().Object;
                IPOSSettingRepository posSettingRepo = new Moq.Mock<IPOSSettingRepository>().Object;
                Moq.Mock<IProductRepository> productRepo = new Moq.Mock<IProductRepository>();
                product_1 = new Product(Guid.NewGuid(), "Product ABC", "001", "001", 2000);
                productRepo.Setup(i => i.GetByBarcodeOrCode("001")).Returns(product_1);

                Moq.Mock<ICompanyProfileRepository> cpRepo = new Moq.Mock<ICompanyProfileRepository>();
                cpRepo.Setup(i => i.Get()).Returns(new CompanyProfile("*****@*****.**", "123", "Toko Dny", "Diamond Palace", null));

                AutoNumber autoNumber = new AutoNumber("*****@*****.**", "123", DateTime.Now);
                Moq.Mock<IAutoNumberRepository> autoNumberRepo = new Moq.Mock<IAutoNumberRepository>();
                autoNumberRepo.Setup(i => i.Get(DateTime.Now)).Returns(autoNumber);

                var sessionHolder = new SessionHolder();
                ObjectFactory.Initialize(i =>
                {
                    i.For<IAccountRepository>().Use(accRepo);
                    i.For<ISessionRepository>().Use(sessionRepo);
                    i.For<ICompanyProfileRepository>().Use(cpRepo.Object);
                    i.For<SessionService>().Use<SessionService>();
                    i.For<ShoppingCartService>().Use<ShoppingCartService>();
                    i.ForSingletonOf<SessionHolder>().Use<SessionHolder>();
                    i.For<IProductRepository>().Use(productRepo.Object);
                    i.For<IPOSSettingRepository>().Use(posSettingRepo);
                    i.ForSingletonOf<SessionHolder>().Use(sessionHolder);
                    i.ForSingletonOf<IShoppingCartSingleton>().Use(sessionHolder);
                    i.For<IAutoNumberRepository>().Use(autoNumberRepo.Object);
                    i.For<AutoNumberGenerator>().Use<AutoNumberGenerator>();
                });
            }
Beispiel #2
0
 public void Insert(AutoNumber autoNumber)
 {
     SQLCeDb.Do("INSERT INTO tblautonumber (organizationid, clientid, date, number) VALUES (@organizationid, @clientid, @date, @number)")
         .AddParameter("organizationid", autoNumber.OrganizationId)
         .And("clientid", autoNumber.ClientId)
         .And("date", autoNumber.Date)
         .And("number", autoNumber.Number).Than.Execute();
 }
Beispiel #3
0
        public string Generate(string organizationId, string clientId, DateTime transactionDate)
        {
            lock (_synch)
            {
                AutoNumber autoNumber = autoNumberRepository.Get(transactionDate);
                if (Object.ReferenceEquals(autoNumber, null))
                {
                    autoNumber = new AutoNumber(organizationId, clientId, transactionDate);
                    autoNumberRepository.Insert(autoNumber);
                }
                autoNumber.Next();
                autoNumberRepository.Update(autoNumber);

                return autoNumber.ToString();
            }
        }
Beispiel #4
0
 public void Update(AutoNumber autoNumber)
 {
     SQLCeDb.Do("UPDATE tblautonumber SET number = @number WHERE date = @date")
         .AddParameter("number", autoNumber.Number)
         .And("date", autoNumber.Date).Than.Execute();
 }