public IArticleResult AddIncomeTaxGeneralValue(WorkTaxingTerms summarize, Byte statement, Byte residency,
                                                       TAmountDec general, TAmountDec lolevel, TAmountDec agrtask, TAmountDec partner, TAmountDec exclude)
        {
            IArticleResultValues value = new IncomeTaxGeneralValue(summarize, statement, residency, general, lolevel, agrtask, partner, exclude);

            ResultValues = ResultValues.Concat(value);

            return(this);
        }
 public DeclarationTaxingValue(Byte statement, WorkTaxingTerms summarize, Byte declaracy, Byte residency, TAmountDec healthSum, TAmountDec socialSum) : base((ResultCode)ArticleResultCode.RESULT_VALUE_DECLARATION_TAXING)
 {
     this.StatementType = statement;
     this.SummarizeType = summarize;
     this.DeclaracyType = declaracy;
     this.ResidencyType = residency;
     this.HealthAnnuity = healthSum;
     this.SocialAnnuity = socialSum;
 }
示例#3
0
 public TaxDeclarationSource(Byte statementType, WorkTaxingTerms summarizeType, Byte declaracyType, Byte residencyType, TAmountDec healthAnnuity, TAmountDec socialAnnuity)
 {
     StatementType = statementType;
     SummarizeType = summarizeType;
     DeclaracyType = declaracyType;
     ResidencyType = residencyType;
     HealthAnnuity = healthAnnuity;
     SocialAnnuity = socialAnnuity;
 }
示例#4
0
        public IncomeTaxGeneralValue(WorkTaxingTerms summarize, Byte statement, Byte residency,
                                     TAmountDec general, TAmountDec exclude, TAmountDec lolevel, TAmountDec agrtask, TAmountDec partner) : base((ResultCode)ArticleResultCode.RESULT_VALUE_INCOME_SUM_TAXING)
        {
            this.SummarizeType = summarize;
            this.StatementType = statement;
            this.ResidencyType = residency;

            this.IncomeGeneral = general;
            this.IncomeExclude = exclude;
            this.IncomeLolevel = lolevel;
            this.IncomeTaskAgr = agrtask;
            this.IncomePartner = partner;
        }
示例#5
0
        public TAmountDec TaxableGeneralIncomes(Period evalPeriod, WorkTaxingTerms summarize,
                                                Byte statement, Byte declaracy, Byte residency,
                                                TAmountDec taxableIncome, TAmountDec partnerIncome, TAmountDec excludeIncome)
        {
            TAmountDec totalIncome = decimal.Zero;

            if (statement == TaxStatement.TAXABLE)
            {
                if (declaracy == TaxDeclaracy.SIGNED)
                {
                    totalIncome = decimal.Add(totalIncome, taxableIncome);
                    totalIncome = decimal.Add(totalIncome, partnerIncome);
                }
            }
            return(totalIncome);
        }
示例#6
0
        public TAmountDec TaxablePartnerIncomes(Period evalPeriod, WorkTaxingTerms summarize,
                                                Byte statement, Byte declaracy, Byte residency,
                                                TAmountDec taxableIncome, TAmountDec partnerIncome, TAmountDec excludeIncome)
        {
            TAmountDec totalIncome = decimal.Zero;

            if (statement == TaxStatement.TAXABLE)
            {
                if (InternalGuides.TaxPartnerIncomeWithhold() == TaxingPartnerIncome.TAXING_WITHHOLD)
                {
                    switch (summarize)
                    {
                    case WorkTaxingTerms.TAXING_TERM_EMPLOYMENT_POLICY:
                    case WorkTaxingTerms.TAXING_TERM_FOR_TASK_AGREEMENT:
                        totalIncome = decimal.Add(totalIncome, partnerIncome);
                        break;

                    case WorkTaxingTerms.TAXING_TERM_STATUTORY_PARTNER:
                        totalIncome = decimal.Add(totalIncome, taxableIncome);
                        totalIncome = decimal.Add(totalIncome, partnerIncome);
                        break;
                    }
                }
                else if (InternalGuides.TaxPartnerIncomeWithhold() == TaxingPartnerIncome.NONSIGNED_WITHHOLD)
                {
                    if (declaracy == TaxDeclaracy.NONSIGNED)
                    {
                        switch (summarize)
                        {
                        case WorkTaxingTerms.TAXING_TERM_EMPLOYMENT_POLICY:
                        case WorkTaxingTerms.TAXING_TERM_FOR_TASK_AGREEMENT:
                            totalIncome = decimal.Add(totalIncome, partnerIncome);
                            break;

                        case WorkTaxingTerms.TAXING_TERM_STATUTORY_PARTNER:
                            totalIncome = decimal.Add(totalIncome, taxableIncome);
                            totalIncome = decimal.Add(totalIncome, partnerIncome);
                            break;
                        }
                    }
                }
            }
            return(totalIncome);
        }