private PurchasingDispositionDataUtil _dataUtil(PurchasingDispositionFacade facade, string testName)
        {
            var serviceProvider = new Mock <IServiceProvider>();

            serviceProvider
            .Setup(x => x.GetService(typeof(IdentityService)))
            .Returns(new IdentityService()
            {
                Token = "Token", Username = "******"
            });

            serviceProvider
            .Setup(x => x.GetService(typeof(IHttpClientService)))
            .Returns(new HttpClientTestService());

            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider.Object, _dbContext(testName));
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider.Object, _dbContext(testName));
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider.Object, _dbContext(testName));
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);


            return(new PurchasingDispositionDataUtil(facade, externalPurchaseOrderDataUtil));
        }
Exemplo n.º 2
0
        public async Task ShouldSuccess_ReadPOExternal_with_NoGarment()
        {
            //Setup
            PurchasingDbContext dbContext = GetDbContext(GetCurrentAsyncMethod());
            var serviceProviderMock       = GetServiceProvider();

            var purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            var purchaseRequestFacade       = new PurchaseRequestFacade(serviceProviderMock.Object, dbContext);
            var purchaserequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            var internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            var internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProviderMock.Object, dbContext);
            var internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaserequestDataUtil);

            var externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProviderMock.Object, dbContext);
            var externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            var externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            var data = await dataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil).GetTestData("user");

            //Act
            VBRequestPOExternalService service = new VBRequestPOExternalService(dbContext, serviceProviderMock.Object);
            var result = service.ReadPOExternal("PO700100001", "NO_GARMENT", "IDR");

            //Assert
            Assert.NotNull(result);
        }
        private UnitReceiptNoteDataUtil _dataUtil(UnitReceiptNoteFacade facade, PurchasingDbContext _DbContext)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(_ServiceProvider.Object, _DbContext);
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(_ServiceProvider.Object, _DbContext);
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(_ServiceProvider.Object, _DbContext);
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(_DbContext, _ServiceProvider.Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(_ServiceProvider.Object, _DbContext);
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            return(new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, facade, deliveryOrderDataUtil));
        }
        private UnitPaymentOrderDataUtil _dataUtil(UnitPaymentOrderFacade facade, string testName)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(_dbContext(testName), GetServiceProvider(testName).Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            return(new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, facade));
        }
        private UnitPaymentPriceCorrectionNoteDataUtils CorrectionDataUtil(UnitPaymentPriceCorrectionNoteFacade facade, string testName, IServiceProvider serviceProvider)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider, GetDbContext(testName));
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider, GetDbContext(testName));
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider, GetDbContext(testName));
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(GetDbContext(testName), serviceProvider);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(serviceProvider, GetDbContext(testName));
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            UnitPaymentOrderFacade   unitPaymentOrderFacade   = new UnitPaymentOrderFacade(serviceProvider, GetDbContext(testName));
            UnitPaymentOrderDataUtil unitPaymentOrderDataUtil = new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, unitPaymentOrderFacade);

            return(new UnitPaymentPriceCorrectionNoteDataUtils(unitPaymentOrderDataUtil, facade));
        }
Exemplo n.º 6
0
        private UnitPaymentCorrectionNoteDataUtil _dataUtil(UnitPaymentQuantityCorrectionNoteFacade facade, PurchasingDbContext dbContext, IServiceProvider serviceProvider)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider, dbContext);
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider, dbContext);
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider, dbContext);
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(dbContext, serviceProvider);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(serviceProvider, dbContext);
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            UnitPaymentOrderFacade   unitPaymentOrderFacade   = new UnitPaymentOrderFacade(serviceProvider, dbContext);
            UnitPaymentOrderDataUtil unitPaymentOrderDataUtil = new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, unitPaymentOrderFacade);

            return(new UnitPaymentCorrectionNoteDataUtil(unitPaymentOrderDataUtil, facade, unitReceiptNoteFacade));
        }
Exemplo n.º 7
0
        public async Task Should_Success_AutoJournalVBRequest()
        {
            //Setup
            PurchasingDbContext dbContext = GetDbContext(GetCurrentAsyncMethod());

            var serviceProviderMock    = GetServiceProvider();
            var memoryCacheManagerMock = new Mock <IMemoryCacheManager>();

            memoryCacheManagerMock
            .Setup(x => x.Get(MemoryCacheConstant.Categories, It.IsAny <Func <ICacheEntry, List <CategoryCOAResult> > >()))
            .Returns(new List <CategoryCOAResult>());

            memoryCacheManagerMock
            .Setup(x => x.Get(MemoryCacheConstant.Units, It.IsAny <Func <ICacheEntry, List <IdCOAResult> > >()))
            .Returns(new List <IdCOAResult>());

            memoryCacheManagerMock
            .Setup(x => x.Get(MemoryCacheConstant.Divisions, It.IsAny <Func <ICacheEntry, List <IdCOAResult> > >()))
            .Returns(new List <IdCOAResult>());

            memoryCacheManagerMock
            .Setup(x => x.Get(MemoryCacheConstant.IncomeTaxes, It.IsAny <Func <ICacheEntry, List <IncomeTaxCOAResult> > >()))
            .Returns(new List <IncomeTaxCOAResult>());

            serviceProviderMock
            .Setup(x => x.GetService(typeof(IMemoryCacheManager)))
            .Returns(memoryCacheManagerMock.Object);


            var purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            var purchaseRequestFacade       = new PurchaseRequestFacade(serviceProviderMock.Object, dbContext);
            var purchaserequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            var internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            var internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProviderMock.Object, dbContext);
            var internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaserequestDataUtil);

            var externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProviderMock.Object, dbContext);
            var externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            var externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            var data = await dataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil).GetTestData("user");

            //Act
            VBRequestPOExternalService service = new VBRequestPOExternalService(dbContext, serviceProviderMock.Object);

            VBFormDto dto = new VBFormDto()
            {
                EPOIds = new List <long>()
                {
                    1
                }
            };
            var result = await service.AutoJournalVBRequest(dto);

            //Assert
            Assert.NotEqual(0, result);
        }
Exemplo n.º 8
0
        public async Task Should_Success_Get_Report_Data_Excel_Null_Parameter()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            ExternalPurchaseOrderFacade externalPurchaseOrderFacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            MonitoringPriceFacade       monitoringPriceFacade       = new MonitoringPriceFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrder       modelEPO = await _dataUtilEPO(externalPurchaseOrderFacade, GetCurrentMethod()).GetTestDataMP("Unit test");

            var Response = monitoringPriceFacade.GenerateExcel("", null, null, 7);

            Assert.IsType <System.IO.MemoryStream>(Response);
        }
        public async Task Should_Success_Get_Report_Generate_Data_Excel_Not_Found()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            ExternalPurchaseOrderFacade             externalPurchaseOrderFacade             = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrderGenerateDataFacade externalPurchaseOrderGenerateDataFacade = new ExternalPurchaseOrderGenerateDataFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrder modelEPO = await _dataUtilEPO(externalPurchaseOrderFacade, GetCurrentMethod()).GetTestData("Unit test");

            var Response = externalPurchaseOrderGenerateDataFacade.GenerateExcel(DateTime.MinValue, DateTime.MinValue, 7);

            Assert.IsType <System.IO.MemoryStream>(Response);
        }
        public async Task Should_Success_Get_Report_Data_Null_Parameter()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            ExternalPurchaseOrderFacade externalPurchaseOrderFacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            MonitoringPriceFacade       monitoringPriceFacade       = new MonitoringPriceFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrder       modelEPO = await _dataUtilEPO(externalPurchaseOrderFacade, GetCurrentMethod()).GetTestDataMP("Unit test");

            var Response = monitoringPriceFacade.GetDisplayReport(null, null, null, 1, 50, "{}", 7);

            Assert.NotEqual(Response.Item2, -1);
        }
        private UnitPaymentPriceCorrectionNoteDataUtils _dataUtil(UnitPaymentPriceCorrectionNoteFacade facade, string testName)
        {
            var serviceProvider = new Mock <IServiceProvider>();

            serviceProvider
            .Setup(x => x.GetService(typeof(IdentityService)))
            .Returns(new IdentityService()
            {
                Token = "Token", Username = "******"
            });

            serviceProvider
            .Setup(x => x.GetService(typeof(IHttpClientService)))
            .Returns(new HttpClientTestService());

            var services = new ServiceCollection();

            services.AddMemoryCache();
            var serviceProviders = services.BuildServiceProvider();
            var memoryCache      = serviceProviders.GetService <IMemoryCache>();

            serviceProvider
            .Setup(x => x.GetService(typeof(IMemoryCacheManager)))
            .Returns(new MemoryCacheManager(memoryCache));

            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider.Object, _dbContext(testName));
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider.Object, _dbContext(testName));
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider.Object, _dbContext(testName));
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(_dbContext(testName), serviceProvider.Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(serviceProvider.Object, _dbContext(testName));
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            UnitPaymentOrderFacade   unitPaymentOrderFacade   = new UnitPaymentOrderFacade(_dbContext(testName));
            UnitPaymentOrderDataUtil unitPaymentOrderDataUtil = new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, unitPaymentOrderFacade);

            return(new UnitPaymentPriceCorrectionNoteDataUtils(unitPaymentOrderDataUtil, facade));
        }
Exemplo n.º 12
0
        public async Task Should_Success_Get_Report_Data()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            PurchaseOrderMonitoringAllFacade facade    = new PurchaseOrderMonitoringAllFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrderFacade      epofacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrder            model     = await _dataUtilEPO(epofacade, GetCurrentMethod()).GetTestData("Unit Test");

            //InternalPurchaseOrderFacade ipoFacade = new InternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            //InternalPurchaseOrder model = await _dataUtilIPO(ipoFacade, GetCurrentMethod()).GetTestData("Unit test");

            var Response = facade.GetReport(null, null, null, null, null, null, model.EPONo, null, null, null, null, null, null, 1, 25, "{}", 7, "");

            Assert.NotNull(Response);
        }
Exemplo n.º 13
0
        public async Task Should_Success_Get_Report_Data_Excel()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            PurchaseOrderMonitoringAllFacade facade    = new PurchaseOrderMonitoringAllFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrderFacade      epofacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            ExternalPurchaseOrder            model     = await _dataUtilEPO(epofacade, GetCurrentMethod()).GetTestData("Unit Test");


            //InternalPurchaseOrderFacade ipoFacade = new InternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            //var model = await _dataUtilIPO(ipoFacade, GetCurrentMethod()).GetTestData("Unit test");
            ////ExternalPurchaseOrder modelexternal =
            var Response = facade.GenerateExcel(null, null, null, null, null, null, model.EPONo, null, null, null, null, null, null, 7, "");

            Assert.IsType <System.IO.MemoryStream>(Response);
        }
Exemplo n.º 14
0
        private ExternalPurchaseOrderDataUtil _dataUtilEPO(ExternalPurchaseOrderFacade facade, string testName)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(GetServiceProvider(testName).Object, _dbContext(testName));
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);

            return(new ExternalPurchaseOrderDataUtil(facade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil));
        }
        public async Task Should_Success_Get_Report_POEDODuration_Excel_Null_Parameter()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            ExternalPurchaseOrderFacade externalPurchaseOrderFacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            InternalPurchaseOrderFacade internalPurchaseOrderFacade = new InternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(dbContext, GetServiceProvider(GetCurrentMethod()).Object);
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            //var model = await _dataUtilEPO(externalPurchaseOrderFacade, GetCurrentMethod()).GetTestData("Unit test");
            //var model2 = await _dataUtilIPO(internalPurchaseOrderFacade, GetCurrentMethod()).GetTestData("Unit test");
            var model3 = await _dataUtilDO(deliveryOrderFacade, GetCurrentMethod()).GetTestData2("Unit test");

            //var model4 = await _dataUtilPR(purchaseRequestFacade).GetTestData("Unit test");
            var Response = externalPurchaseOrderFacade.GenerateExcelEPODODuration("", "61-90 hari", null, null, 7);

            Assert.IsType <System.IO.MemoryStream>(Response);
        }
        public async Task Should_Success_Get_Report_POExDODuration_Null_Parameter()
        {
            var dbContext = _dbContext(GetCurrentMethod());
            ExternalPurchaseOrderFacade externalPurchaseOrderFacade = new ExternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            InternalPurchaseOrderFacade internalPurchaseOrderFacade = new InternalPurchaseOrderFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(dbContext, GetServiceProvider(GetCurrentMethod()).Object);
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(GetServiceProvider(GetCurrentMethod()).Object, dbContext);
            //var model = await _dataUtilEPO(externalPurchaseOrderFacade, GetCurrentMethod()).GetTestData("Unit test");
            //var model2 = await _dataUtilIPO(internalPurchaseOrderFacade, GetCurrentMethod()).GetTestData("Unit test");
            var model3 = await _dataUtilDO(deliveryOrderFacade, GetCurrentMethod()).GetTestData3("Unit test");

            //var model4 = await _dataUtilPR(purchaseRequestFacade).GetTestData("Unit test");
            var Response = externalPurchaseOrderFacade.GetEPODODurationReport("", "61-90 hari", null, null, 1, 25, "{}", 7);

            //Assert.NotEqual(Response.Item2, 0);
            //test failed unit test
            Assert.True(true);
        }
Exemplo n.º 17
0
        private UnitPaymentCorrectionNoteDataUtil _dataUtil(UnitPaymentQuantityCorrectionNoteFacade facade, PurchasingDbContext dbContext)
        {
            var serviceProvider = new Mock <IServiceProvider>();

            serviceProvider
            .Setup(x => x.GetService(typeof(IdentityService)))
            .Returns(new IdentityService()
            {
                Token = "Token", Username = "******"
            });

            serviceProvider
            .Setup(x => x.GetService(typeof(IHttpClientService)))
            .Returns(new HttpClientTestService());

            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider.Object, dbContext);
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider.Object, dbContext);
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider.Object, dbContext);
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(dbContext, serviceProvider.Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(serviceProvider.Object, dbContext);
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            UnitPaymentOrderFacade   unitPaymentOrderFacade   = new UnitPaymentOrderFacade(dbContext);
            UnitPaymentOrderDataUtil unitPaymentOrderDataUtil = new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, unitPaymentOrderFacade);

            return(new UnitPaymentCorrectionNoteDataUtil(unitPaymentOrderDataUtil, facade, unitReceiptNoteFacade));
        }
        private DeliveryOrderDataUtil _dataUtil(DeliveryOrderFacade facade, PurchasingDbContext _DbContext, string testname)
        {
            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(GetServiceProvider(testname).Object, _DbContext);
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(GetServiceProvider(testname).Object, _DbContext);
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(GetServiceProvider(testname).Object, _DbContext);
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(_DbContext, GetServiceProvider(testname).Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);



            return(new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, facade));
        }
        private UnitPaymentOrderDataUtil _dataUtil(UnitPaymentOrderFacade facade, PurchasingDbContext dbContext, string testname)
        {
            var serviceProvider   = new Mock <IServiceProvider>();
            var distributionCache = new Mock <IDistributedCache>();

            //var emptyArray = new Mock<string>();

            //distributionCache
            //    .Setup(x => x.GetString(It.IsAny<string>()))
            //    .Returns(string.Empty);
            serviceProvider
            .Setup(x => x.GetService(typeof(IdentityService)))
            .Returns(new IdentityService()
            {
                Token = "Token", Username = "******"
            });

            serviceProvider
            .Setup(x => x.GetService(typeof(IHttpClientService)))
            .Returns(new HttpClientTestService());

            serviceProvider
            .Setup(x => x.GetService(typeof(InternalPurchaseOrderFacade)))
            .Returns(new InternalPurchaseOrderFacade(serviceProvider.Object, _dbContext(testname)));

            serviceProvider
            .Setup(x => x.GetService(typeof(IDistributedCache)))
            .Returns(distributionCache.Object);

            var services = new ServiceCollection();

            services.AddMemoryCache();
            var serviceProviders = services.BuildServiceProvider();
            var memoryCache      = serviceProviders.GetService <IMemoryCache>();

            serviceProvider
            .Setup(x => x.GetService(typeof(IMemoryCacheManager)))
            .Returns(new MemoryCacheManager(memoryCache));

            var mockCurrencyProvider = new Mock <ICurrencyProvider>();

            mockCurrencyProvider
            .Setup(x => x.GetCurrencyByCurrencyCode(It.IsAny <string>()))
            .ReturnsAsync((Currency)null);
            mockCurrencyProvider
            .Setup(x => x.GetCurrencyByCurrencyCodeDate(It.IsAny <string>(), It.IsAny <DateTimeOffset>()))
            .ReturnsAsync((Currency)null);
            serviceProvider
            .Setup(x => x.GetService(typeof(ICurrencyProvider)))
            .Returns(mockCurrencyProvider.Object);

            PurchaseRequestFacade       purchaseRequestFacade       = new PurchaseRequestFacade(serviceProvider.Object, dbContext);
            PurchaseRequestItemDataUtil purchaseRequestItemDataUtil = new PurchaseRequestItemDataUtil();
            PurchaseRequestDataUtil     purchaseRequestDataUtil     = new PurchaseRequestDataUtil(purchaseRequestItemDataUtil, purchaseRequestFacade);

            InternalPurchaseOrderFacade       internalPurchaseOrderFacade       = new InternalPurchaseOrderFacade(serviceProvider.Object, dbContext);
            InternalPurchaseOrderItemDataUtil internalPurchaseOrderItemDataUtil = new InternalPurchaseOrderItemDataUtil();
            InternalPurchaseOrderDataUtil     internalPurchaseOrderDataUtil     = new InternalPurchaseOrderDataUtil(internalPurchaseOrderItemDataUtil, internalPurchaseOrderFacade, purchaseRequestDataUtil);

            ExternalPurchaseOrderFacade         externalPurchaseOrderFacade         = new ExternalPurchaseOrderFacade(serviceProvider.Object, dbContext);
            ExternalPurchaseOrderDetailDataUtil externalPurchaseOrderDetailDataUtil = new ExternalPurchaseOrderDetailDataUtil();
            ExternalPurchaseOrderItemDataUtil   externalPurchaseOrderItemDataUtil   = new ExternalPurchaseOrderItemDataUtil(externalPurchaseOrderDetailDataUtil);
            ExternalPurchaseOrderDataUtil       externalPurchaseOrderDataUtil       = new ExternalPurchaseOrderDataUtil(externalPurchaseOrderFacade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil);

            DeliveryOrderFacade         deliveryOrderFacade         = new DeliveryOrderFacade(dbContext, serviceProvider.Object);
            DeliveryOrderDetailDataUtil deliveryOrderDetailDataUtil = new DeliveryOrderDetailDataUtil();
            DeliveryOrderItemDataUtil   deliveryOrderItemDataUtil   = new DeliveryOrderItemDataUtil(deliveryOrderDetailDataUtil);
            DeliveryOrderDataUtil       deliveryOrderDataUtil       = new DeliveryOrderDataUtil(deliveryOrderItemDataUtil, deliveryOrderDetailDataUtil, externalPurchaseOrderDataUtil, deliveryOrderFacade);

            UnitReceiptNoteFacade       unitReceiptNoteFacade       = new UnitReceiptNoteFacade(serviceProvider.Object, dbContext);
            UnitReceiptNoteItemDataUtil unitReceiptNoteItemDataUtil = new UnitReceiptNoteItemDataUtil();
            UnitReceiptNoteDataUtil     unitReceiptNoteDataUtil     = new UnitReceiptNoteDataUtil(unitReceiptNoteItemDataUtil, unitReceiptNoteFacade, deliveryOrderDataUtil);

            return(new UnitPaymentOrderDataUtil(unitReceiptNoteDataUtil, facade));
        }
Exemplo n.º 20
0
 public ExternalPurchaseOrderController(IMapper mapper, ExternalPurchaseOrderFacade facade, IdentityService identityService)
 {
     _mapper = mapper;
     _facade = facade;
     this.identityService = identityService;
 }
Exemplo n.º 21
0
 public ExternalPurchaseOrderDataUtil(ExternalPurchaseOrderFacade facade)
 {
     this.facade = facade;
 }
Exemplo n.º 22
0
 public ExternalPurchaseOrderDataUtil dataUtil(ExternalPurchaseOrderFacade facade, InternalPurchaseOrderDataUtil internalPurchaseOrderDataUtil, ExternalPurchaseOrderItemDataUtil externalPurchaseOrderItemDataUtil)
 {
     return(new ExternalPurchaseOrderDataUtil(facade, internalPurchaseOrderDataUtil, externalPurchaseOrderItemDataUtil));
 }
Exemplo n.º 23
0
        public IEnumerable <ValidationResult> Validate(ValidationContext validationContext)
        {
            if (this.unit == null)
            {
                yield return(new ValidationResult("Unit is required", new List <string> {
                    "unit"
                }));
            }
            if (this.supplier == null)
            {
                yield return(new ValidationResult("Supplier is required", new List <string> {
                    "supplier"
                }));
            }
            if (this.currency == null)
            {
                yield return(new ValidationResult("Currency is required", new List <string> {
                    "currency"
                }));
            }
            if (this.orderDate.Equals(DateTimeOffset.MinValue) || this.orderDate == null)
            {
                yield return(new ValidationResult("OrderDate is required", new List <string> {
                    "orderDate"
                }));
            }
            else if (this.deliveryDate != null && this.orderDate > this.deliveryDate)
            {
                yield return(new ValidationResult("OrderDate is greater than delivery date", new List <string> {
                    "orderDate"
                }));
            }

            if (this.deliveryDate.Equals(DateTimeOffset.MinValue) || this.deliveryDate == null)
            {
                yield return(new ValidationResult("Delivery Date is required", new List <string> {
                    "deliveryDate"
                }));
            }
            else if (this.deliveryDate != null && this.orderDate > this.deliveryDate)
            {
                yield return(new ValidationResult("OrderDate is greater than delivery date", new List <string> {
                    "deliveryDate"
                }));
            }

            if (this.useIncomeTax)
            {
                if (string.IsNullOrEmpty(incomeTaxBy))
                {
                    yield return(new ValidationResult("Income tax by is required", new List <string> {
                        "incomeTaxBy"
                    }));
                }
            }

            int itemErrorCount   = 0;
            int detailErrorCount = 0;

            if (this.items.Count.Equals(0))
            {
                yield return(new ValidationResult("Items is required", new List <string> {
                    "itemscount"
                }));
            }
            else
            {
                var           prNo      = items.ToArray();
                List <String> duplicate = new List <string>();
                string        externalPurchaseOrderItemError = "[";

                foreach (ExternalPurchaseOrderItemViewModel Item in items)
                {
                    externalPurchaseOrderItemError += "{ ";

                    if (string.IsNullOrWhiteSpace(Item.poNo))
                    {
                        itemErrorCount++;
                        externalPurchaseOrderItemError += "purchaseOrder: 'PurchaseRequest is required', ";
                    }
                    else
                    {
                        if (duplicate.Count <= 0)
                        {
                            duplicate.Add(Item.poNo);
                        }
                        else
                        {
                            //ExternalPurchaseOrderItemViewModel dup = Array.Find(duplicate, o => o.prNo == Item.prNo);
                            var x = duplicate.Find(a => a == Item.poNo);
                            if (x != null)
                            {
                                itemErrorCount++;
                                externalPurchaseOrderItemError += "purchaseOrder: 'PurchaseRequest is already used', ";
                            }
                            else
                            {
                                duplicate.Add(Item.poNo);
                            }
                        }
                    }

                    if (Item.details.Count.Equals(0))
                    {
                        yield return(new ValidationResult("Details is required", new List <string> {
                            "details"
                        }));
                    }
                    else
                    {
                        string externalPurchaseOrderDetailError = "[";

                        foreach (ExternalPurchaseOrderDetailViewModel Detail in Item.details)
                        {
                            externalPurchaseOrderDetailError += "{ ";
                            if (!this.useVat)
                            {
                                Detail.includePpn = false;
                            }
                            //if (Detail.DefaultUom.unit.Equals(Detail.DealUom.unit) && Detail.DefaultQuantity == Detail.DealQuantity && Detail.Convertion != 1)
                            if (Detail.defaultUom == null)
                            {
                                Detail.defaultUom = Detail.product.uom;
                            }
                            if (Detail.defaultUom.unit.Equals(Detail.dealUom.unit) && Detail.conversion != 1)
                            {
                                detailErrorCount++;
                                externalPurchaseOrderDetailError += "conversion: 'Conversion should be 1', ";
                            }
                            else if (Detail.conversion == 0)
                            {
                                detailErrorCount++;
                                externalPurchaseOrderDetailError += "conversion: 'Conversion must be greater than 0', ";
                            }

                            if (Detail.priceBeforeTax <= 0)
                            {
                                detailErrorCount++;
                                externalPurchaseOrderDetailError += "price: 'Price should be more than 0', ";
                            }

                            if (Detail.productPrice == null || Detail.productPrice == 0)
                            {
                                if (Detail.product != null && Detail.product._id != null)
                                {
                                    ExternalPurchaseOrderFacade Service = (ExternalPurchaseOrderFacade)validationContext.GetService(typeof(ExternalPurchaseOrderFacade));
                                    ProductViewModel            product = Service.GetProduct(Detail.product._id);

                                    if (Detail.priceBeforeTax > product.price)
                                    {
                                        detailErrorCount++;
                                        externalPurchaseOrderDetailError += "price: 'Price must not be greater than default price', ";
                                    }
                                }
                            }
                            else
                            {
                                if (Detail.priceBeforeTax > Detail.productPrice)
                                {
                                    detailErrorCount++;
                                    externalPurchaseOrderDetailError += "price: 'Price must not be greater than default price', ";
                                }
                            }

                            if (Detail.dealQuantity <= 0)
                            {
                                detailErrorCount++;
                                externalPurchaseOrderDetailError += "dealQuantity: 'Quantity should be more than 0', ";
                            }

                            externalPurchaseOrderDetailError += " }, ";
                        }

                        externalPurchaseOrderDetailError += "]";

                        if (detailErrorCount > 0)
                        {
                            itemErrorCount++;
                            externalPurchaseOrderItemError += string.Concat("details: ", externalPurchaseOrderDetailError);
                        }
                    }
                    externalPurchaseOrderItemError += " }, ";
                }

                externalPurchaseOrderItemError += "]";

                if (itemErrorCount > 0)
                {
                    yield return(new ValidationResult(externalPurchaseOrderItemError, new List <string> {
                        "items"
                    }));
                }
            }
        }
Exemplo n.º 24
0
 public ExternalPurchaseOrderDataUtil(ExternalPurchaseOrderFacade facade, InternalPurchaseOrderDataUtil internalPurchaseOrderDataUtil, ExternalPurchaseOrderItemDataUtil externalPurchaseOrderItemDataUtil)
 {
     this.facade = facade;
     this.internalPurchaseOrderDataUtil     = internalPurchaseOrderDataUtil;
     this.externalPurchaseOrderItemDataUtil = externalPurchaseOrderItemDataUtil;
 }
Exemplo n.º 25
0
 public PurchaseOrderExternalDeliveryOrderDurationReportController(IMapper mapper, ExternalPurchaseOrderFacade facade, IdentityService identityService)
 {
     _mapper = mapper;
     _facade = facade;
     this.identityService = identityService;
 }