示例#1
0
        public async Task <string> GetTruDatPremium(PremiumSprocParameters psp)
        {
            string ret = string.Empty;

            try
            {
                var returnPost = await asyncRestClientQALib.PostAsync <string, PremiumSprocParameters>($"/TruDatCalculate/TruDatCalculates/TruDatPremium", psp).ConfigureAwait(false);

                ret = returnPost?.Value;
            }
            catch (Exception ex)
            {
                BillingTestCommon.log.Fatal(ex);
            }
            return(ret);
        }
示例#2
0
        public async Task <decimal> GetPremium(EnrollmentParameters iep)
        {
            decimal ret = 0;
            PremiumSprocParameters psp  = new PremiumSprocParameters();
            List <PetParameters>   pets = (List <PetParameters>)iep.Pets;

            try
            {
                psp.AgeId           = (int)pets[0].AgeId;
                psp.BreedId         = pets[0].BreedId;
                psp.ClinicId        = pets[0].HospitalId == null ? 0 : (int)pets[0].HospitalId;
                psp.CountryId       = 0;
                psp.Deductible      = pets[0].Deductible;
                psp.Gender          = pets[0].Gender == LegacyPlatform.Constants.Gender.Male ? 'M' : 'F';
                psp.IsRenewal       = false;
                psp.PetFoodId       = 0;
                psp.PolicyVersionId = int.Parse(await GetPolicyVersionForState(iep.StateId));
                psp.PromoCode       = pets[0].PromoCode;
                if (pets[0].Riders?.Count > 0)
                {
                    foreach (SelectedPolicyOption r in pets[0].Riders)
                    {
                        psp.SelectedPolicyOptions += $"{r.Name} ";
                        ret += r.Cost;
                    }
                }
                psp.SpayedNeuteredStatus = pets[0].SpayedNeutered ? 1 : 0;
                psp.SpecieId             = (int)pets[0].Species;
                psp.UserId      = 0;
                psp.VersionId   = int.Parse(await new QALibRestClient().GetEnginVersionForState(iep.StateId));
                psp.WorkingPets = (pets[0].IsWorkingPet ? 1 : 0).ToString();
                psp.Zipcode     = iep.PostalCode;

                var dec = await GetTruDatPremium(psp);

                ret += System.Math.Round(decimal.Parse(dec), 2);
            }
            catch (Exception ex)
            {
                BillingTestCommon.log.Fatal(ex);
                ret = 0;
            }
            return(ret);
        }