ELT.Gateway/ELT.Client/Managers/Insurance/PreRequestManager.cs
2021-02-25 12:29:02 +03:00

60 lines
1.8 KiB
C#

using System.Linq;
using ELT.Client.Models.Insurance;
using ELTKasko;
namespace ELT.Client.Managers.Insurance
{
public class PreRequestManager
{
private readonly EltSoap _eltKaskoSoap;
public PreRequestManager()
{
_eltKaskoSoap = new EltSoapClient();
}
public ELTPreData GetPreRequestData(Preparams preparams)
{
var eltPreData = new ELTPreData();
//KLADR
var kladr = "0";
var eltRegions = _eltKaskoSoap.GetRegionsExt(new GetRegionsExtRequest());
var eltRegion = eltRegions.GetRegionsExtResult.FirstOrDefault(x =>
x.Name.Contains(preparams.RegionName.Split(" ")[0])
);
if (eltRegion != null)
{
if (eltRegion.Kladr != null)
{
kladr = eltRegion.Kladr;
}
else
{
if (eltRegion.Id != null)
{
var eltCities = _eltKaskoSoap.GetCitiesExt(new GetCitiesExtRequest {RegionId = eltRegion.Id});
var eltCity = eltCities.GetCitiesExtResult.FirstOrDefault(x =>
x.Name.Contains(preparams.CityName.Split(" ")[0]));
if (eltCity != null) kladr = eltCity.Kladr;
}
}
}
eltPreData.Kladr = kladr;
//KLADR
//CAR
var mappedCars = _eltKaskoSoap.MappedCars(new MappedCarsRequest
{
Marka = preparams.BrandId,
Model = preparams.ModelId
});
eltPreData.Brand = mappedCars.Mark;
eltPreData.Model = mappedCars.Model;
//CAR
return eltPreData;
}
}
}