Beispiel #1
0
        private StudyFundAccount CreateAccount(String userId, Mimshak item, Mutzar product, HeshbonOPolisa policy)
        {
            StudyFundAccount account;

            try
            {
                var employeerId      = policy.PirteiTaktziv.PirteiOved.MprMaasikBeYatzran;
                var employerIdentity = product.NetuneiMutzar.YeshutMaasik.Where(ym => ym.MprMaasikBeYatzran.Equals(employeerId)).FirstOrDefault();

                account = new StudyFundAccount
                {
                    UserId         = userId,
                    ProviderName   = item.YeshutYatzran?.ShemYatzran,
                    EmployerName   = employerIdentity.ShemMaasik,
                    PlanName       = policy.ShemTohnit,
                    PolicyId       = policy.MisparPolisaOheshbon,
                    PolicyStatus   = policy.StatusPolisaOcheshbon == 1 ? PolicyStatus.Active : PolicyStatus.Inactive,
                    TotalSavings   = policy.PirteiTaktziv.BlockItrot.Yitrot.YitrotShonot.YitratKaspeyTagmulim.GetValueOrDefault(),
                    WithdrawalDate = Reader.ConvertStringToDate(policy.PirteiTaktziv.BlockItrot.Yitrot.YitrotShonot.MoedNezilutTagmulim),
                    DepositFee     = policy.PirteiTaktziv.PerutHotzaot.HotzaotBafoalLehodeshDivoach.TotalDmeiNihulHafkada
                                     .GetValueOrDefault(),
                    SavingFee         = policy.PirteiTaktziv.PerutHotzaot.MivneDmeiNihul.PerutMivneDmeiNihul.FirstOrDefault(dn => dn.SugHotzaa == 1)?.SheurDmeiNihul.GetValueOrDefault(),
                    YearRevenue       = policy.Tsua.SheurTsuaNeto.GetValueOrDefault(),
                    SaverDeposit      = policy.PirteiTaktziv.PerutHafrashotLePolisa.FirstOrDefault(phlp => phlp?.SugHafrasha.Value == 8)?.SchumHafrasha.GetValueOrDefault(),
                    EmployerDeposit   = policy.PirteiTaktziv.PerutHafrashotLePolisa.FirstOrDefault(phlp => phlp?.SugHafrasha.Value == 9)?.SchumHafrasha.GetValueOrDefault(),
                    PolicyOpeningDate = Reader.ConvertStringToDate(policy.TaarichHitztarfutMutzar),
                    ValidationDate    = Reader.ConvertStringToDate(policy.TaarichNechonut)
                };
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }

            return(account);
        }