public void ConfirmCollection_ThrowsError()
        {
            // Arrange
            disbursementRepository.Save(new Disbursement()
            {
                DisbursementId  = "COLLECTIONTEST",
                CreatedDateTime = DateTime.Now,
                Status          = new StatusService(context).FindStatusByStatusId(10),
            });

            // Act
            disbursementService.ConfirmCollection("COLLECTIONTEST");

            // Assert
        }
 public void TestInitialize()
 {
     var requisition = requisitionRepository.Save(new Requisition()
     {
         RequisitionId      = "DAPICONTROLTEST",
         CollectionPoint    = departmentRepository.FindById("ENGL").CollectionPoint,
         Department         = departmentRepository.FindById("ENGL"),
         CreatedDateTime    = DateTime.Now,
         Status             = new StatusRepository(context).FindById(7),
         RequisitionDetails = new List <RequisitionDetail>()
         {
             new RequisitionDetail()
             {
                 RequisitionId = "DAPICONTROLTEST",
                 ItemCode      = "E030",
                 Item          = new ItemService(context).FindItemByItemCode("E030"),
                 Quantity      = 30,
                 Status        = new StatusRepository(context).FindById(7),
             }
         }
     });
     var retrieval = retrievalRepository.Save(new Retrieval()
     {
         RetrievalId  = "DAPICONTROLTEST",
         Requisitions = new List <Requisition>()
         {
             requisition
         },
         CreatedDateTime = DateTime.Now,
     });
     var disbursement = disbursementRepository.Save(new Disbursement()
     {
         DisbursementId      = "DAPICONTROLTEST",
         Department          = departmentRepository.FindById("ENGL"),
         DisbursementDetails = new List <DisbursementDetail>()
         {
             new DisbursementDetail()
             {
                 DisbursementId = "DAPICONTROLTEST",
                 ItemCode       = "E030",
                 ActualQuantity = 1,
             }
         },
         Retrieval       = retrieval,
         Status          = new StatusService(context).FindStatusByStatusId(1),
         CreatedDateTime = DateTime.Now,
     });
 }
예제 #3
0
        public void SaveRetrieval(StationeryRetrievalJSONViewModel json)
        {
            List <Disbursement>       disbList = disbursementService.FindDisbursementsByRetrievalId(json.RetrievalID);
            List <DisbursementDetail> ddList   = disbList.SelectMany(x => x.DisbursementDetails).ToList();

            foreach (var row in json.Data)
            {
                if (row.RetrievedStatus == "Picked")
                {
                    ddList
                    .Where(x => x.ItemCode == row.ProductID)
                    .ToList()
                    .ForEach(x => x.ActualQuantity = x.PlanQuantity);
                }
                else if (row.RetrievedStatus == "Awaiting Picking")
                {
                    ddList
                    .Where(x => x.ItemCode == row.ProductID)
                    .ToList()
                    .ForEach(x => x.ActualQuantity = 0);
                }
            }
            foreach (Disbursement d in disbList)
            {
                disbursementRepository.Save(d);
            }
        }
        public void RetrieveItem_Valid()
        {
            // Arrange
            var requisitionRepository = new RequisitionRepository(context);
            var departmentRepository  = new DepartmentRepository(context);

            var requisition = requisitionRepository.Save(new Requisition()
            {
                RequisitionId   = "RSERVICETEST",
                CollectionPoint = departmentRepository.FindById("ENGL").CollectionPoint,
                Department      = departmentRepository.FindById("ENGL"),
                CreatedDateTime = DateTime.Now,
            });
            var retrieval = retrievalRepository.Save(new Retrieval()
            {
                RetrievalId  = "RSERVICETEST",
                Requisitions = new List <Requisition>()
                {
                    requisition
                },
                CreatedDateTime = DateTime.Now,
            });
            var disbursement = disbursementRepository.Save(new Disbursement()
            {
                DisbursementId      = "RSERVICETEST",
                Department          = departmentRepository.FindById("ENGL"),
                DisbursementDetails = new List <DisbursementDetail>()
                {
                    new DisbursementDetail()
                    {
                        DisbursementId = "RSERVICETEST",
                        Item           = new ItemService(context).FindItemByItemCode("E030"),
                        ItemCode       = "E030",
                        ActualQuantity = 1,
                        Status         = new StatusService(context).FindStatusByStatusId(17),
                    }
                },
                Retrieval       = retrieval,
                Status          = new StatusService(context).FindStatusByStatusId(1),
                CreatedDateTime = DateTime.Now,
            });
            var expected = new StatusService(context).FindStatusByStatusId(18);

            // Act
            new RetrievalService(context).RetrieveItem(retrieval.RetrievalId, "*****@*****.**", "E030");

            // Assert
            Assert.AreEqual(expected.StatusId, new DisbursementDetailRepository(context).FindById(disbursement.DisbursementId, "E030").Status.StatusId);
        }
        public void TestInitialize()
        {
            context = new ApplicationDbContext();

            retrievalService    = new RetrievalService(context);
            itemService         = new ItemService(context);
            disbursementService = new DisbursementService(context);

            retrievalRepository          = new RetrievalRepository(context);
            disbursementRepository       = new DisbursementRepository(context);
            disbursementdetailRepository = new DisbursementDetailRepository(context);
            stockmovementRepository      = new StockMovementRepository(context);
            statusRepository             = new StatusRepository(context);

            Retrieval retrieval = new Retrieval();

            if (retrievalRepository.FindById("TEST") == null)
            {
                //save retrieval object into db

                retrieval.RetrievalId     = "TEST";
                retrieval.CreatedDateTime = DateTime.Now;
                retrievalRepository.Save(retrieval);
                retrieval.Status = statusRepository.FindById(19);
            }
            else
            {
                retrieval = retrievalRepository.FindById("TEST");
            }

            Disbursement disbursement = new Disbursement();

            if (disbursementRepository.FindById("TEST") == null)
            {
                disbursement.DisbursementId  = "TEST";
                disbursement.CreatedDateTime = DateTime.Now;
                disbursement.Retrieval       = retrieval;
            }
            else
            {
                disbursement = disbursementRepository.FindById("TEST");
            }

            disbursementRepository.Save(disbursement);

            //save disbursement detail object into db
            DisbursementDetail detail = new DisbursementDetail()
            {
                Disbursement   = disbursement,
                Item           = context.Item.Where(x => x.ItemCode == "C003").First(),
                PlanQuantity   = 5,
                ActualQuantity = 5
            };

            disbursementdetailRepository.Save(detail);
        }
예제 #6
0
        public void FindByIdTestNotNull()
        {
            // Arrange
            var expected = new DisbursementDetail()
            {
                DisbursementId = "DDREPOTEST",
                ItemCode       = "E030",
            };

            disbursementRepository.Save(new Disbursement()
            {
                DisbursementId  = "DDREPOTEST",
                CreatedDateTime = DateTime.Now,
            });
            disbursementDetailRepository.Save(expected);

            // Act
            var result = disbursementDetailRepository.FindById("DDREPOTEST", "E030");

            // Assert
            Assert.IsInstanceOfType(result, typeof(DisbursementDetail));
        }
예제 #7
0
        public void FindByIdTestNotNull()
        {
            // Arrange
            disbursementRepository.Save(new Disbursement()
            {
                DisbursementId  = "DOREPOTEST",
                CreatedDateTime = DateTime.Now,
            });

            // Act
            var result = disbursementRepository.FindById("DOREPOTEST");

            // Assert
            Assert.IsInstanceOfType(result, typeof(Disbursement));
        }
        public void TestInitialize()
        {
            context = new ApplicationDbContext();
            notificationRepository = new NotificationRepository(context);
            notificationService    = new NotificationService(context);

            disbursementRepository = new DisbursementRepository(context);
            saRepository           = new StockAdjustmentRepository(context);
            requisitionRepository  = new RequisitionRepository(context);

            var retrieval = new RetrievalRepository(context).Save(new Retrieval()
            {
                RetrievalId     = "NOTIFICATIONTEST",
                CreatedDateTime = DateTime.Now,
            });

            //save new disbursement object into db
            Disbursement disbursement = new Disbursement();

            if (disbursementRepository.FindById("TEST") == null)
            {
                disbursement.Department          = new DepartmentRepository(context).FindById("ENGL");
                disbursement.DisbursementId      = "TEST";
                disbursement.CreatedDateTime     = DateTime.Now;
                disbursement.Retrieval           = retrieval;
                disbursement.DisbursementDetails = new List <DisbursementDetail>()
                {
                    new DisbursementDetail()
                    {
                        DisbursementId = "TEST",
                        Item           = new ItemService(context).FindItemByItemCode("E030"),
                        ActualQuantity = 20,
                    }
                };
            }
            else
            {
                disbursement = disbursementRepository.FindById("TEST");
            }
            disbursementRepository.Save(disbursement);

            //save new requisition object into db
            Requisition requisition = new Requisition();

            if (requisitionRepository.FindById("TEST") == null)
            {
                requisition.Department         = new DepartmentRepository(context).FindById("ENGL");
                requisition.RequisitionId      = "TEST";
                requisition.CreatedDateTime    = DateTime.Now;
                requisition.Retrieval          = retrieval;
                requisition.RequisitionDetails = new List <RequisitionDetail>()
                {
                    new RequisitionDetail()
                    {
                        RequisitionId = "TEST",
                        Item          = new ItemService(context).FindItemByItemCode("E030"),
                        Status        = new StatusService(context).FindStatusByStatusId(8),
                    }
                };
            }
            else
            {
                requisition = requisitionRepository.FindById("TEST");
            }
            requisitionRepository.Save(requisition);

            //create new SA object and save into db
            StockAdjustment SA = new StockAdjustment();

            if (saRepository.FindById("TEST") == null)
            {
                SA.StockAdjustmentId = "TEST";
                SA.CreatedDateTime   = DateTime.Now;
            }
            else
            {
                SA = saRepository.FindById("TEST");
            }
            saRepository.Save(SA);
        }
예제 #9
0
        public void UpdateRetrievalFormTest()
        {
            // ARRANGE
            RetrievalAPIController retrievalAPIController = new RetrievalAPIController()
            {
                Request       = new HttpRequestMessage(),
                Configuration = new HttpConfiguration(),
                Context       = context,
            };

            string retId    = "RETRIEVAL";
            string deptId   = "COMM";
            string itemCode = "C001";
            string disbId   = "DISBURSEMENT";
            int    actual   = 99;

            Retrieval r = new Retrieval
            {
                RetrievalId     = retId,
                CreatedDateTime = DateTime.Now
            };
            Disbursement d = new Disbursement
            {
                DisbursementId      = disbId,
                Department          = departmentService.FindDepartmentByDepartmentCode(deptId),
                Retrieval           = r,
                CreatedDateTime     = DateTime.Now,
                DisbursementDetails = new List <DisbursementDetail>
                {
                    new DisbursementDetail
                    {
                        Item           = ItemRepository.FindById(itemCode),
                        PlanQuantity   = 99,
                        ActualQuantity = 0
                    }
                }
            };

            retrievalRepository.Save(r);
            disbursementRepository.Save(d);

            try
            {
                SaveJson json = new SaveJson
                {
                    ItemCode = itemCode,
                    RetId    = retId,
                    List     = new List <BreakdownByDepartment>
                    {
                        new BreakdownByDepartment
                        {
                            DeptId = deptId,
                            Actual = actual
                        }
                    }
                };

                // ACT
                retrievalAPIController.UpdateRetrievalForm(json);


                // ASSERT
                int expected = 99;

                DisbursementDetail dd;
                //using (context = new ApplicationDbContext())
                //{
                disbursementRepository = new DisbursementRepository(context);
                dd = disbursementRepository
                     .FindById(disbId)
                     .DisbursementDetails
                     .Where(x => x.ItemCode == itemCode).First();
                //}

                Assert.AreEqual(expected, dd.ActualQuantity);
            }
            finally
            {
                //using (context = new ApplicationDbContext())
                //{
                Disbursement deleteD = context.Disbursement.Where(x => x.DisbursementId == disbId).First();
                context.Disbursement.Remove(deleteD);

                Retrieval deleteR = context.Retrieval.Where(x => x.RetrievalId == retId).First();
                context.Retrieval.Remove(deleteR);
                context.SaveChanges();
                //}
            }
        }
예제 #10
0
 public Disbursement Save(Disbursement disbursement)
 {
     //Edit Disbursement and confirmDeliveryStatus and also delete
     return(disbursementRepository.Save(disbursement));
 }
        public void TestInitialize()
        {
            context = new ApplicationDbContext();

            stockmovementService = new StockMovementService(context);
            itemService          = new ItemService(context);

            stockmovementRepository = new StockMovementRepository(context);

            ddRepository           = new DisbursementDetailRepository(context);
            sadRepository          = new StockAdjustmentDetailRepository(context);
            dodRepository          = new DeliveryOrderDetailRepository(context);
            disbursementRepository = new DisbursementRepository(context);
            doRepository           = new DeliveryOrderRepository(context);
            saRepository           = new StockAdjustmentRepository(context);

            //create new test object and save into db
            StockMovement sm = new StockMovement()
            {
                StockMovementId   = IdService.GetNewStockMovementId(context),
                DisbursementId    = "TEST",
                StockAdjustmentId = "TEST",
                DeliveryOrderNo   = "TEST",
                Item             = context.Item.Where(x => x.ItemCode == "C003").First(),
                CreatedDateTime  = DateTime.Now,
                OriginalQuantity = 1,
                AfterQuantity    = 2
            };

            stockmovementRepository.Save(sm);

            //create new disbursement object and save into db
            Disbursement disbursement = new Disbursement();

            if (disbursementRepository.FindById("TEST") == null)
            {
                disbursement.DisbursementId  = "TEST";
                disbursement.CreatedDateTime = DateTime.Now;
            }
            else
            {
                disbursement = disbursementRepository.FindById("TEST");
            }
            disbursementRepository.Save(disbursement);

            //create new DisbursementDetail object and save into db
            DisbursementDetail detail = new DisbursementDetail()
            {
                DisbursementId = "TEST",
                Item           = context.Item.First(),
                PlanQuantity   = 3,
                ActualQuantity = 3
            };

            ddRepository.Save(detail);

            //create new DO object and save into db
            DeliveryOrder d = new DeliveryOrder();

            if (doRepository.FindById("TEST") == null)
            {
                d.DeliveryOrderNo = "TEST";
                d.CreatedDateTime = DateTime.Now;
            }
            else
            {
                d = doRepository.FindById("TEST");
            }
            doRepository.Save(d);

            //create new DO detail object and save into db
            DeliveryOrderDetail dod = new DeliveryOrderDetail()
            {
                DeliveryOrder  = d,
                Item           = context.Item.First(),
                PlanQuantity   = 4,
                ActualQuantity = 4
            };

            dodRepository.Save(dod);

            //create new SA object and save into db
            StockAdjustment SA = new StockAdjustment();

            if (saRepository.FindById("TEST") == null)
            {
                SA.StockAdjustmentId = "TEST";
                SA.CreatedDateTime   = DateTime.Now;
            }
            else
            {
                SA = saRepository.FindById("TEST");
            }
            saRepository.Save(SA);

            //create new SA detail object and save into db
            StockAdjustmentDetail SADetail = new StockAdjustmentDetail()
            {
                StockAdjustment  = SA,
                Item             = context.Item.First(),
                OriginalQuantity = 2,
                AfterQuantity    = 4
            };

            sadRepository.Save(SADetail);
        }
        public void TestInitialize()
        {
            context = new ApplicationDbContext();
            disbursementRepository       = new DisbursementRepository(context);
            disbursementdetailRepository = new DisbursementDetailRepository(context);
            disbursementService          = new DisbursementService(context);
            itemRepository              = new ItemRepository(context);
            retrievalRepository         = new RetrievalRepository(context);
            requisitionRepository       = new RequisitionRepository(context);
            requisitiondetailRepository = new RequisitionDetailRepository(context);
            departmentRepository        = new DepartmentRepository(context);

            Retrieval retrieval = new Retrieval();

            if (retrievalRepository.FindById("TEST") == null)
            {
                //save retrieval object into db

                retrieval.RetrievalId     = "TEST";
                retrieval.CreatedDateTime = DateTime.Now;
                retrievalRepository.Save(retrieval);
            }
            else
            {
                retrieval = retrievalRepository.FindById("TEST");
            }

            //save disbursement object into db

            Disbursement disbursement = new Disbursement();

            if (disbursementRepository.FindById("TEST") == null)
            {
                disbursement.DisbursementId  = "TEST";
                disbursement.CreatedDateTime = DateTime.Now;
                disbursement.Retrieval       = retrieval;
            }
            else
            {
                disbursement = disbursementRepository.FindById("TEST");
            }

            disbursementRepository.Save(disbursement);

            //save disbursement detail object into db
            DisbursementDetail detail = new DisbursementDetail()
            {
                Disbursement   = disbursement,
                Item           = context.Item.First(),
                PlanQuantity   = 20,
                ActualQuantity = 20
            };

            disbursementdetailRepository.Save(detail);

            Requisition requisition = new Requisition()
            {
                RequisitionId   = "TEST",
                Retrieval       = retrieval,
                CreatedDateTime = DateTime.Now,
                Status          = new StatusService(context).FindStatusByStatusId(8)
            };

            requisitionRepository.Save(requisition);
        }