Exemplo n.º 1
0
        private List <VBRealizationDocumentUnitCostsItemModel> AddUnitCosts(int id, IEnumerable <VBRealizationDocumentNonPOUnitCostViewModel> unitCosts)
        {
            var models = unitCosts.Select(element =>
            {
                var result = new VBRealizationDocumentUnitCostsItemModel(id, element);

                result.FlagForCreate(_identityService.Username, UserAgent);
                return(result);
            }).ToList();

            return(models);
        }
Exemplo n.º 2
0
        private void AddDetails(int itemId, List <UnitPaymentOrderItemDto> items)
        {
            var models = items.Select(element =>
            {
                var result = new VBRealizationDocumentUnitCostsItemModel(itemId, element);
                EntityExtension.FlagForCreate(result, _identityService.Username, UserAgent);
                return(result);
            }).ToList();

            _dbContext.VBRealizationDocumentUnitCostsItems.AddRange(models);
            _dbContext.SaveChanges();
        }
 public void should_success_instantiate_with_dto()
 {
     UnitPaymentOrderItemDto element = new UnitPaymentOrderItemDto()
     {
         IncomeTax = new IncomeTaxDto()
         {
             Name = "Name",
             Rate = 1,
             Id   = 1
         },
         UseIncomeTax = true,
     };
     VBRealizationDocumentUnitCostsItemModel model = new VBRealizationDocumentUnitCostsItemModel(1, element);
 }
        public void should_success_instantiate()
        {
            VBRealizationDocumentNonPOUnitCostViewModel viewModel = new VBRealizationDocumentNonPOUnitCostViewModel()
            {
                Unit = new UnitViewModel()
                {
                    Division = new DivisionViewModel()
                    {
                        Code = "Code"
                    }
                }
            };
            VBRealizationDocumentUnitCostsItemModel model = new VBRealizationDocumentUnitCostsItemModel(1, viewModel);

            model.SetUnit(1, "newUnitName", "newUnitCode", "user", "userAgent");
            model.SetDivision(1, "newDivisionName", "newDivisionCode", "user", "userAgent");
            model.SetIsSelected(true, "user", "userAgent");
            model.SetAmount(1, "user", "userAgent");
        }
Exemplo n.º 5
0
        private void EditUnitCosts(int id, IEnumerable <VBRealizationDocumentNonPOUnitCostViewModel> formItems)
        {
            var items = _dbContext.VBRealizationDocumentUnitCostsItems.Where(s => s.VBRealizationDocumentId == id).ToList();

            foreach (var item in items)
            {
                var formItem = formItems.FirstOrDefault(s => s.Id == item.Id);
                if (formItem == null)
                {
                    item.FlagForDelete(_identityService.Username, UserAgent);
                }
                else
                {
                    item.SetAmount(formItem.Amount, _identityService.Username, UserAgent);
                    item.SetIsSelected(formItem.IsSelected, _identityService.Username, UserAgent);
                    item.SetUnit(formItem.Unit.Id, formItem.Unit.Name, formItem.Unit.Code, _identityService.Username, UserAgent);

                    if (formItem.Unit.Division == null)
                    {
                        item.SetDivision(0, null, null, _identityService.Username, UserAgent);
                    }
                    else
                    {
                        item.SetDivision(formItem.Unit.Division.Id, formItem.Unit.Division.Name, formItem.Unit.Division.Code, _identityService.Username, UserAgent);
                    }
                }
            }

            var models = formItems.Where(s => s.Id == 0).Select(element =>
            {
                var result = new VBRealizationDocumentUnitCostsItemModel(id, element);

                result.FlagForCreate(_identityService.Username, UserAgent);
                return(result);
            }).ToList();

            _dbContext.VBRealizationDocumentUnitCostsItems.AddRange(models);

            //return _dbContext.SaveChangesAsync();
        }
        public async Task Should_Success_AutoJournalVBNonPOClearence_With_ViewModel()
        {
            //Setup
            var dbContext           = GetDbContext(GetCurrentMethod());
            var serviceProviderMock = GetServiceProvider();

            serviceProviderMock.Setup(s => s.GetService(typeof(FinanceDbContext))).Returns(dbContext);
            serviceProviderMock
            .Setup(x => x.GetService(typeof(IHttpClientService)))
            .Returns(new JournalHttpClientTestService());

            Mock <IJournalTransactionService> journalTransactionServiceMock = new Mock <IJournalTransactionService>();

            serviceProviderMock
            .Setup(x => x.GetService(typeof(IJournalTransactionService)))
            .Returns(journalTransactionServiceMock.Object);

            var masterCOAServiceMock = new MasterCOAService(serviceProviderMock.Object);

            serviceProviderMock
            .Setup(x => x.GetService(typeof(IMasterCOAService)))
            .Returns(masterCOAServiceMock);


            var vBRequestDocumentService = new VBRequestDocumentService(dbContext, GetServiceProvider().Object);
            var data = await GetdataUtil(vBRequestDocumentService).GetTestData_VBRequestDocumentNonPO();

            var vBRealizationWithPOService = new VBRealizationWithPOService(dbContext, serviceProviderMock.Object);
            var vBRealizationDocumenData   = GetDataUtil(vBRealizationWithPOService).GetTestData_DenganNomorVB();

            var expeditionService = new VBRealizationDocumentExpeditionService(dbContext, GetServiceProvider().Object);
            var model             = _dataUtil(expeditionService, dbContext).GetTestData_VBRealizationDocumentExpedition();

            var realization = new Lib.ViewModels.VBRealizationDocumentNonPO.VBRealizationDocumentNonPOViewModel()
            {
                IsInklaring = true,
                Currency    = new Lib.ViewModels.VBRealizationDocumentNonPO.CurrencyViewModel()
                {
                    Code = "IDR"
                }
            };

            var expenditureitem = new Lib.ViewModels.VBRealizationDocumentNonPO.VBRealizationDocumentNonPOExpenditureItemViewModel()
            {
                PPhAmount = 1,
                PPnAmount = 1,
            };

            var unitcostitem = new Lib.ViewModels.VBRealizationDocumentNonPO.VBRealizationDocumentNonPOUnitCostViewModel()
            {
                IsSelected = true
            };

            var vbRealizations          = new VBRealizationDocumentModel(realization);
            var vbRealizationItems      = new VBRealizationDocumentExpenditureItemModel(2, expenditureitem);
            var vbRealizationsUnitItems = new VBRealizationDocumentUnitCostsItemModel(2, unitcostitem);

            dbContext.VBRealizationDocuments.Add(vbRealizations);
            dbContext.VBRealizationDocumentExpenditureItems.Add(vbRealizationItems);
            dbContext.VBRealizationDocumentUnitCostsItems.Add(vbRealizationsUnitItems);
            dbContext.SaveChanges();

            var service = new AutoJournalService(dbContext, serviceProviderMock.Object);

            AccountBankViewModel viewModel = new AccountBankViewModel()
            {
                AccountCOA    = "AccountCOA",
                AccountName   = "AccountName",
                AccountNumber = "AccountNumber",
                BankCode      = "BankCode",
                BankName      = "BankName",
                Code          = "Code",
                Currency      = new CurrencyViewModel()
                {
                    Code        = "Rp",
                    Description = "Description",
                    Rate        = 1,
                    Symbol      = "IDR"
                },
            };

            List <int> vbRealizationIds = new List <int>()
            {
                1,
                2
            };

            //Act
            var result = await service.AutoJournalVBNonPOClearence(vbRealizationIds, viewModel, null);

            //Assert
            Assert.NotEqual(0, result);
        }