예제 #1
0
        public void GetArrivedGoodsUseCaseEqualTest()
        {
            GetArrivedGoodsRequest getArrivedGoodsRequest = new GetArrivedGoodsRequest(new Department {
                Id = 1
            });

            IRepositoryFactory      repositoryFactory       = new RepositoryFactory(new DBContext());
            IActivityFactory        activityFactory         = new ActivityFactory(repositoryFactory, new ValidationRuleFactory());
            IUseCaseFactory         useCaseFactory          = new UseCaseFactory(activityFactory);
            GetArrivedGoodsResponse getArrivedGoodsResponse = useCaseFactory.Create <IUseCase <GetArrivedGoodsRequest, GetArrivedGoodsResponse> >().Execute(getArrivedGoodsRequest);

            Assert.IsTrue(getArrivedGoodsResponse.ArrivedGoods.Count > 0);
        }
예제 #2
0
        public async Task <OperationStatusInfo> ShowArrivedGoods(Department department)
        {
            return(await Task.Run(() =>
            {
                OperationStatusInfo operationStatusInfo = new OperationStatusInfo(operationStatus: OperationStatus.Done);
                GetArrivedGoodsRequest getArrivedGoodsRequest = new GetArrivedGoodsRequest(department);

                try
                {
                    GetArrivedGoodsResponse getArrivedGoodsResponse = hubEnvironment.UseCaseFactory
                                                                      .Create <IUseCase <GetArrivedGoodsRequest, GetArrivedGoodsResponse> >()
                                                                      .Execute(getArrivedGoodsRequest);
                    operationStatusInfo.AttachedObject = getArrivedGoodsResponse.ArrivedGoods;
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    operationStatusInfo.OperationStatus = OperationStatus.Cancelled;
                    operationStatusInfo.AttachedInfo = ex.Message;
                }

                return operationStatusInfo;
            }));
        }