public void SetUp()
        {
            var trigger = new ProductionTrigger
            {
                PartNumber           = "SERIES K",
                Description          = "A serious product",
                Priority             = "1",
                ReqtForSalesOrdersBE = 1
            };

            this.ProductionTriggerQueryRepository.FindBy(Arg.Any <Expression <Func <ProductionTrigger, bool> > >())
            .Returns(trigger);

            var productionBackOrders = new List <ProductionBackOrder>
            {
                new ProductionBackOrder
                {
                    OrderNumber           = 300000,
                    OrderLine             = 1,
                    ArticleNumber         = "SERIES K",
                    JobId                 = 1,
                    CitCode               = "S",
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = DateTime.Now.Date,
                    BaseValue             = 100
                }
            };

            var accountingCompany = new AccountingCompany
            {
                Name               = "LINN",
                Description        = "Linn Products Ltd",
                LatestSosJobId     = 1,
                DateLatestSosJobId = DateTime.Now.Date
            };

            this.AccountingCompanyRepository.FindById(Arg.Any <string>()).Returns(accountingCompany);
            this.ProductionBackOrderQueryRepository.FilterBy(Arg.Any <Expression <Func <ProductionBackOrder, bool> > >())
            .Returns(productionBackOrders.AsQueryable());

            this.result = this.Sut.GetProductionTriggerFacts("CJCAIH", "SERIES K");
        }
示例#2
0
        public void SetUp()
        {
            var companyA = new AccountingCompany
            {
                Name = "A", Description = "description A"
            };
            var companyB = new AccountingCompany
            {
                Name = "B", Description = "description B"
            };

            this.AccountingCompaniesService.GetValid()
            .Returns(new SuccessResult <IEnumerable <AccountingCompany> >(new List <AccountingCompany> {
                companyA, companyB
            }));

            this.Response = this.Browser.Get(
                "/inventory/accounting-companies",
                with =>
            {
                with.Header("Accept", "application/json");
            }).Result;
        }
示例#3
0
        public void SetUp()
        {
            this.PtlMasterRepository.GetRecord().Returns(new PtlMaster()
            {
                LastFullRunJobref = "AAAAAA"
            });
            this.CitRepository.FindById("S").Returns(new Cit()
            {
                Code = "S", Name = "Final Assembly"
            });

            var triggers = new List <ProductionTrigger>
            {
                new ProductionTrigger
                {
                    Priority   = "1",
                    PartNumber = "530/B",
                    CanBuild   = 3,
                    ReqtForInternalAndTriggerLevelBT = 6,
                    KanbanSize = 1
                },
                new ProductionTrigger
                {
                    Priority   = "1",
                    PartNumber = "S3 301/G",
                    CanBuild   = 0,
                    ReqtForInternalAndTriggerLevelBT = 2,
                    KanbanSize = 1
                },
                new ProductionTrigger
                {
                    Priority   = "1",
                    PartNumber = "LINGO 4 PSU",
                    CanBuild   = 1,
                    ReqtForInternalAndTriggerLevelBT = 1,
                    KanbanSize = 1
                },
                new ProductionTrigger
                {
                    Priority   = "2",
                    PartNumber = "LP12B/3",
                    CanBuild   = 0,
                    ReqtForInternalAndTriggerLevelBT = 1,
                    KanbanSize = 1
                },
                new ProductionTrigger
                {
                    Priority   = "3",
                    PartNumber = "AKITO/3B",
                    CanBuild   = 2,
                    ReqtForInternalAndTriggerLevelBT = 3,
                    KanbanSize = 6
                }
            };

            this.ProductionTriggerRepository.FilterBy(Arg.Any <Expression <Func <ProductionTrigger, bool> > >())
            .Returns(triggers.AsQueryable());

            var linn = new AccountingCompany {
                Name = "Linn", LatestSosJobId = 1
            };

            this.AccountingCompanyRepository.FindById("LINN").Returns(linn);

            var backOrders = new List <ProductionBackOrder>
            {
                new ProductionBackOrder
                {
                    ArticleNumber         = "530/B",
                    OrderNumber           = 1,
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = new DateTime(2020, 1, 6)
                },
                new ProductionBackOrder
                {
                    ArticleNumber         = "530/B",
                    OrderNumber           = 2,
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = new DateTime(2019, 12, 17)
                },
                new ProductionBackOrder
                {
                    ArticleNumber         = "530/B",
                    OrderNumber           = 3,
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = new DateTime(2020, 1, 28)
                },
                new ProductionBackOrder
                {
                    ArticleNumber         = "530/B",
                    OrderNumber           = 4,
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = new DateTime(2019, 12, 19)
                },
                new ProductionBackOrder
                {
                    ArticleNumber         = "530/B",
                    OrderNumber           = 5,
                    BackOrderQty          = 1,
                    RequestedDeliveryDate = new DateTime(2020, 1, 22)
                },
            };

            this.ProductionBackOrderRepository.FilterBy(Arg.Any <Expression <Func <ProductionBackOrder, bool> > >())
            .Returns(backOrders.AsQueryable());

            var wswShortages = new List <WswShortage>
            {
                new WswShortage
                {
                    PartNumber       = "530/B", ShortPartNumber = "SPKR 090", ShortPartDescription = "19MM TWEETER",
                    ShortageCategory = "PROC", Required = 10, Stock = 33, AdjustedAvailable = 0, QtyReserved = 4, CanBuild = 0
                },
                new WswShortage
                {
                    PartNumber           = "530/B", ShortPartNumber = "530 AMP MOD",
                    ShortPartDescription = "SERIES 5 - 530 AMP MOD", ShortageCategory = "PROC", Required = 10,
                    Stock = 33, AdjustedAvailable = 0, QtyReserved = 4
                },
                new WswShortage
                {
                    PartNumber           = "S3 301/G", ShortPartNumber = "MCP 2466/2",
                    ShortPartDescription = "SERIES 3 CABINET", ShortageCategory = "PROC", Required = 5,
                    Stock = 11, AdjustedAvailable = 2, QtyReserved = 0
                },
                new WswShortage
                {
                    PartNumber           = "LP12B/3", ShortPartNumber = "T-PLATE/1",
                    ShortPartDescription = "BENT TOP PLATE", ShortageCategory = "CP", Required = 1,
                    Stock = 0, AdjustedAvailable = 0, QtyReserved = 0
                }
            };

            this.ShortageRepository.FilterBy(Arg.Any <Expression <Func <WswShortage, bool> > >())
            .Returns(wswShortages.AsQueryable());

            this.results = this.Sut.ShortageSummaryByCit("S", "AAAAAA");
        }