public ApiPolicyCoverageDetailModel MapPolicyCoverageDetailCommonModel(PolicyCoverageDetailModel coverage) { return(new ApiPolicyCoverageDetailModel() { ID = coverage.ID, CoverageID = coverage.CoverageID, CoverageValue = coverage.CoverageValue, InsuranceID = coverage.InsuranceID, Note = coverage.Note, TotalPolicyValue = coverage.TotalPolicyValue }); }
//Record Insurance public bool Record(InsuranceModel insurance, ClientModel client, PolicyCoverageDetailModel policyCoverage, DocumentModel document, CoverageModel coverage) { InsuranceModel.InsuranceTypes type = insurance.InsuranceType; switch (type) { case InsuranceModel.InsuranceTypes.MOTOR_INSURANCE: return(RecordNewMotorInsurance(insurance, client, policyCoverage, document, coverage)); case InsuranceModel.InsuranceTypes.LIFE_INSURANCE: return(RecordNewLifeInsurance(insurance, client, policyCoverage, document, coverage)); default: return(false); } //_repository.Create(InsuranceModel insurance, ClientModel client, PolicyCoverageDetailModel policyCoverage, DocumentModel document, CoverageModel coverage); }
public HttpResponseMessage AddInsurance([FromBody] ApiInsuranceModel insurance) { //Mapping Api Models to Common Models APIModelMapper mapper = new APIModelMapper(); InsuranceModel selectedInsurance = mapper.MapInsuranceTypeModel(insurance.InsuranceType, insurance, insurance.SelectedInsurance); ClientModel client = mapper.MapClientModel(insurance.Client); PolicyCoverageDetailModel policyCoverage = mapper.MapPolicyCoverageDetailModel(insurance.PolicyDetails); DocumentModel document = mapper.MapDocumentModel(insurance.Documents); CoverageModel coverage = mapper.MapCoverage(insurance.Coverage); if (_insuranceManager.Record(selectedInsurance, client, policyCoverage, document, coverage)) { return(new HttpResponseMessage(HttpStatusCode.OK)); } return(new HttpResponseMessage(HttpStatusCode.BadRequest)); }
public ApiInsuranceModel Get(String insuranceId) { /* ApiInsuranceModel insurance = new ApiInsuranceModel * { * //ID = (int)ID, * //AgentID = 1, * //ClientID = 1, * //Joining_Date = new DateTime(2000, 02, 29), * //End_Date = new DateTime(2017, 02, 29), * //Total_Value = 1000000, * }; * * return insurance;*/ InsuranceModel selectedInsurance = _insuranceManager.Find <InsuranceModel>(e => e.ID.Equals(insuranceId)); ClientModel clientModel = _insuranceManager.Find <ClientModel>(e => e.ID.Equals(selectedInsurance.ID)); DocumentModel document = _insuranceManager.Find <DocumentModel>(e => e.InsuranceID.Equals(selectedInsurance.ID)); PolicyCoverageDetailModel pcd = _insuranceManager.Find <PolicyCoverageDetailModel>(e => e.InsuranceID.Equals(selectedInsurance.ID)); CoverageModel coverage = _insuranceManager.Find <CoverageModel>(e => e.ID.Equals(pcd.CoverageID)); CommonToApiModelMapper mapper = new CommonToApiModelMapper(); ApiInsuranceModel mapped = new ApiInsuranceModel(); if (selectedInsurance.InsuranceType.Equals(InsuranceModel.InsuranceTypes.LIFE_INSURANCE)) { LifeInsuranceModel life = _insuranceManager.Find <LifeInsuranceModel>(e => e.ClientID.Equals(selectedInsurance.ClientID)); ApiLifeInsuranceModel apiLifeInsuranceModel = mapper.MapLifeInsuranceCommonModel(life); mapped.SelectedInsurance = apiLifeInsuranceModel; } ApiClientModel apiCLient = mapper.MapClientCommonModel(clientModel); ApiDocumentModel apiDoc = mapper.MapDocumentCommonModel(document); ApiPolicyCoverageDetailModel apiPcd = mapper.MapPolicyCoverageDetailCommonModel(pcd); ApiCoverageModel apiCoverage = mapper.MapCoverageCommonModel(coverage); mapped.Client = apiCLient; mapped.Coverage = apiCoverage; mapped.Documents = apiDoc; mapped.PolicyDetails = apiPcd; return(mapped); }
//Business Logics for Motor Insurance private bool RecordNewMotorInsurance(InsuranceModel insurance, ClientModel client, PolicyCoverageDetailModel policyCoverage, DocumentModel document, CoverageModel coverage) { ValidateAddInsurance validation = new ValidateAddInsurance(); bool isCorrectAge = validation.ValidateForAge(client.Age); //_repository.Create(InsuranceModel insurance, ClientModel client, PolicyCoverageDetailModel policyCoverage, DocumentModel document, CoverageModel coverage); throw new NotImplementedException(); }
//Business Logics for Life Insurance private bool RecordNewLifeInsurance(InsuranceModel insurance, ClientModel client, PolicyCoverageDetailModel policyCoverage, DocumentModel document, CoverageModel coverage) { ValidateAddInsurance validation = new ValidateAddInsurance(); bool isCorrectAge = validation.ValidateForAge(client.Age); bool isClientAdded = _repository.Create(client); if (isClientAdded) { bool isInsuranceAdded = _repository.Create(insurance); if (isInsuranceAdded) { bool isDocumentAdded = _repository.Create(document); if (isDocumentAdded) { bool isCoverageAdded = _repository.Create(coverage); if (isCoverageAdded) { bool isPolicyCoverageAdded = _repository.Create(policyCoverage); if (isPolicyCoverageAdded) { return(_repository.Save()); } else { return(false); } } else { return(false); } } else { return(false); } } else { return(false); } } else { return(false); } }