public void SetSetupModel(object param)
        {
            try
            {
                selectedTaxCalculationVm = param as TaxCalculationsViewModel;
                var calculation = taxCalculationRepository.Get(selectedTaxCalculationVm.Id);
                var completedIndicatorDbModel = VmUtils.Deserialize<CompletedIndicatorDbModel>(calculation.Content);
                List<CompletedIndicatorVm> savedEntities = completedIndicatorDbModel.CompletedIndicators;
                initialOtherData = VmUtils.Deserialize<TaxCalculationOtherData>(calculation.OtherData);

                DecimalConvertor.Instance.SetNumberOfDecimals(initialOtherData.NrOfDecimals);
                var vmList = savedEntities.ToVmList();
                //load the previous values
                vmList.ForEach(p =>
                {
                    if (p.Type == TaxIndicatorType.Numeric)
                    {
                        p.InitialValueField = p.ValueField;
                        var valueDec = DecimalConvertor.Instance.StringToDecimal(p.ValueField);
                        p.ValueField = DecimalConvertor.Instance.DecimalToString(valueDec * initialOtherData.ExchangeRate, initialOtherData.NrOfDecimals);
                    }
                });
                TaxIndicators = new ObservableCollection<TaxIndicatorViewModel>(vmList);
                ExecuteTaxCalculation(null);

            }
            catch (Exception ex)
            {
                Logger.Instance.Log.Error(ex);
                WindowHelper.OpenErrorDialog(Messages.Error_LoadingData);
            }
        }
 private static void DeleteTaxCalculation(TaxCalculationsViewModel entity)
 {
     ITaxCalculationsRepository repository = new TaxCalculationsRepository();
     repository.Delete(entity.Id);
 }
        public static TaxCalculationsViewModel ToVm(this TaxCalculations item)
        {
            TaxCalculationOtherData otherData = VmUtils.Deserialize<TaxCalculationOtherData>(item.OtherData);

            var result = new TaxCalculationsViewModel()
            {
                Id = item.Id,
                CoinType = otherData.CoinType,
                CreatedBy = otherData.CreatedBy,
                ExchangeRate = otherData.ExchangeRate,
                Month = otherData.Month,
                Name = otherData.Name,
                NrOfDecimals = otherData.NrOfDecimals,
                Rectifying = item.Rectifying,
                VerifiedBy = otherData.VerifiedBy,
                Year = otherData.Year,
                LastModifiedDate = otherData.LastModifiedDate == DateTime.MinValue ? "" : Utils.DateTimeToStringDateOnly(otherData.LastModifiedDate)
            };

            return result;
        }
 private void ChangeReportName(object parameter)
 {
     if (SelectedTaxCalculation != null)
     {
         selTaxCalc = SelectedTaxCalculation;
         Action<string> saveAsCallBackAction = new Action<string>(SaveAsCallBack);
         Mediator.Instance.SendMessage(MediatorActionType.OpenWindow, PopupType.ChooseTaxCompletionName);
         Mediator.Instance.SendMessage(MediatorActionType.SetSaveAsCallBackAction, saveAsCallBackAction);
         Mediator.Instance.SendMessage(MediatorActionType.NameChangeSetDefaultName, SelectedTaxCalculation.Name);
     }
 }
 public void SetReportData(object param)
 {
     Logger.Instance.Log.Debug("set report data");
     selectedVm = param as TaxCalculationsViewModel;
     LoadInitialData();
     LoadDataForCurrentPage();
 }