Example #1
0
        public void CreateDefaultWageParameter_IfInstanceOfEmployeeIsNewAndCategoryOfEmployeeIsOffice_ThenCreateManualWageParameter()
        {
            //arrange
            IWageParametersProvider    wageParametersProvider    = Substitute.For <IWageParametersProvider>();
            IWageCalculationRepository wageCalculationRepository = Substitute.For <IWageCalculationRepository>();
            var employee = new Employee {
                WageCalculationRepository = wageCalculationRepository,
                Category = EmployeeCategory.office
            };
            WageDistrictLevelRates levelRates = Substitute.For <WageDistrictLevelRates>();

            wageCalculationRepository.DefaultLevelForNewEmployees(null).ReturnsForAnyArgs(levelRates);
            IInteractiveService interactiveService = Substitute.For <IInteractiveService>();

            //act
            employee.CreateDefaultWageParameter(wageCalculationRepository, wageParametersProvider, interactiveService);

            //assert
            Assert.That(employee.ObservableWageParameters.Count(), Is.EqualTo(1));
            Assert.That(
                employee.ObservableWageParameters
                .FirstOrDefault()
                .WageParameterItem
                .WageParameterItemType,
                Is.EqualTo(WageParameterItemTypes.Manual)
                );
        }
Example #2
0
        public SalaryRatesReport(IUnitOfWorkFactory unitOfWorkFactory, IWageParametersProvider wageParametersProvider,
                                 ICommonServices commonServices)
        {
            _wageParametersProvider = wageParametersProvider ?? throw new ArgumentNullException(nameof(wageParametersProvider));
            _commonServices         = commonServices ?? throw new ArgumentNullException(nameof(commonServices));

            Build();
            UoW = unitOfWorkFactory.CreateWithoutRoot();
            SalaryRateFilterNode   salaryRateFilterNodeAlias   = null;
            WageDistrictLevelRates wageDistrictLevelRatesAlias = null;

            _salaryRateFilterNodes = new GenericObservableList <SalaryRateFilterNode>(UoW.Session
                                                                                      .QueryOver(() => wageDistrictLevelRatesAlias).Where(x => !x.IsArchive)
                                                                                      .SelectList(list => list
                                                                                                  .Select(() => wageDistrictLevelRatesAlias.Name).WithAlias(() => salaryRateFilterNodeAlias.Name)
                                                                                                  .Select(() => wageDistrictLevelRatesAlias.Id).WithAlias(() => salaryRateFilterNodeAlias.WageId))
                                                                                      .TransformUsing(Transformers.AliasToBean <SalaryRateFilterNode>()).List <SalaryRateFilterNode>());

            treeViewSalaryProperties.ColumnsConfig = FluentColumnsConfig <SalaryRateFilterNode> .Create()
                                                     .AddColumn("Название").AddTextRenderer(x => x.Name)
                                                     .AddColumn("").AddToggleRenderer(x => x.Selected)
                                                     .Finish();

            treeViewSalaryProperties.ItemsDataSource = _salaryRateFilterNodes;
        }