Managers: fix OSAGO manager CarInfo

This commit is contained in:
Chika 2021-11-23 11:00:15 +03:00
parent 6ca98b1ea1
commit eef3213518

View File

@ -11,6 +11,7 @@ namespace ELT.Client.Managers.Insurance
public class OsagoManager : InsuranceManager<CalculateOsagoRequest, OSAGOFullCalculationResponse> public class OsagoManager : InsuranceManager<CalculateOsagoRequest, OSAGOFullCalculationResponse>
{ {
private readonly EltSoap _eltOsagoSoap; private readonly EltSoap _eltOsagoSoap;
public OsagoManager() public OsagoManager()
{ {
_eltOsagoSoap = new EltSoapClient(); _eltOsagoSoap = new EltSoapClient();
@ -23,8 +24,12 @@ namespace ELT.Client.Managers.Insurance
var osagoParams = calculateOsagoRequest.ELTParams; var osagoParams = calculateOsagoRequest.ELTParams;
osagoParams.UsagePlace = preRequestData.Kladr; osagoParams.UsagePlace = preRequestData.Kladr;
osagoParams.CarInfo.Mark = preRequestData.Brand; osagoParams.CarInfo = new OSAGOFullCalculationCarInfo()
osagoParams.CarInfo.Model = preRequestData.Model; {
Mark = preRequestData.Brand,
Model = preRequestData.Model
};
osagoParams.AuthInfo = new ELTOsago.AuthInfo osagoParams.AuthInfo = new ELTOsago.AuthInfo
{ {
Login = AuthInfo.Login, Login = AuthInfo.Login,
@ -32,19 +37,18 @@ namespace ELT.Client.Managers.Insurance
}; };
var tasks = calculateOsagoRequest.CompanyIds.Distinct().Select(companyId => new Task(() => var tasks = calculateOsagoRequest.CompanyIds.Distinct().Select(companyId => new Task(() =>
{ {
try try
{ {
osagoParams.InsuranceCompany = companyId; osagoParams.InsuranceCompany = companyId;
var res = _eltOsagoSoap.OSAGOFullCalculation(osagoParams); var res = _eltOsagoSoap.OSAGOFullCalculation(osagoParams);
if (string.IsNullOrEmpty(res.Error)) if (string.IsNullOrEmpty(res.Error))
result.Add(companyId, res); result.Add(companyId, res);
} }
catch (Exception) catch (Exception)
{ {
}
} }));
}));
var tasksArray = tasks as Task[] ?? tasks.ToArray(); var tasksArray = tasks as Task[] ?? tasks.ToArray();
Parallel.ForEach(tasksArray, (t) => t.Start()); Parallel.ForEach(tasksArray, (t) => t.Start());