private void specialVotePostProcess(CongressVoting voting)
        {
            switch (voting.GetVotingType())
            {
            case VotingTypeEnum.CreateNationalCompany:
                reservedEntityNameRepository.Add(voting.Argument1);
                ReserveMoneyForVoting(voting, GetMoneyForCreatingCountryCompany());
                break;

            case VotingTypeEnum.TransferCashToCompany:
                ReserveMoneyForVoting(voting, getMoneyForTrasnferingCashToCompany(voting));
                break;

            case VotingTypeEnum.PrintMoney:
                var money = getMoneyForPrintingMoney(voting);
                ReserveMoneyForVoting(voting, money);
                double amount = (double)money.Amount;
                voting.Argument2 = amount.ToString();
                break;

            case VotingTypeEnum.RemoveNationalCompany:
                var companyID = int.Parse(voting.Argument1);
                var name      = companyRepository.Where(c => c.ID == companyID).Select(c => c.Entity.Name).First();
                voting.Argument2 = name;
                break;

            case VotingTypeEnum.BuildDefenseSystem:
                ReserveMoneyForVoting(voting, getMoneyForCreatingDefenseSystem(int.Parse(voting.Argument3)));
                break;

            default:
                return;
            }
        }
        public void RejectVoting(CongressVoting voting, CongressVotingRejectionReasonEnum reason)
        {
            voting.VotingStatusID    = (int)VotingStatusEnum.Rejected;
            voting.RejectionReasonID = (int)reason;

            switch (voting.GetVotingType())
            {
            case VotingTypeEnum.CreateNationalCompany:
                UnreserveMoneyForVoting(voting);
                reservedEntityNameRepository.Remove(voting.Argument1);
                break;

            case VotingTypeEnum.TransferCashToCompany:
                UnreserveMoneyForVoting(voting);
                break;

            default:
                break;
            }

            countryEventService.AddVotingEvent(voting, VotingStatusEnum.Rejected);
        }