public async Task <IActionResult> PensionerValues(PensionerInput input) { if (ModelState.IsValid) { using (var client = new HttpClient()) { StringContent content = new StringContent(JsonConvert.SerializeObject(input), Encoding.UTF8, "application/json"); client.BaseAddress = new Uri("http://52.143.250.249/"); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); using (var response = await client.GetAsync("https://localhost:44317/api/CustomerCareService/" + content)) //Get Post Mai check kar lena { string apiResponse = await response.Content.ReadAsStringAsync(); pen = JsonConvert.DeserializeObject <PensionDetail>(apiResponse); } } return(RedirectToAction("PensionervaluesDisplayed")); } else { ViewBag.invalid = "Pensioner Values are Invalid"; return(View()); } }
public PensionDetail GetClientInfo(string aadhar) { //provider = new ProcessProvider(); PensionDetail proInput = provider.GetClientInfo(aadhar); return(proInput); }
public void GetClientInfo_Returns_Incorrect_PensionDetails(string aadhar) { pro.Setup(r => r.GetClientInfo(aadhar)).Returns(pensionDetail); PensionDetail detail = pro.Object.GetClientInfo(aadhar); Assert.AreNotEqual(detail, null); }
public void ProcessPension_WhenCalled_Returns_BadRequest() { ProcessPensionInput processpensioninput = new ProcessPensionInput() { AadhaarNumber = "222122223333", BankCharge = 550, PensionAmount = 25500 }; ValueforCalCulation valueforCalculation = new ValueforCalCulation() { BankType = 1, SalaryEarned = 25000, Allowances = 1000, PensionType = PensionType.Self }; PensionDetail pensionDetail = null; repo = new Mock <IProcessRepo>(); processPensionController = new ProcessPensionController(repo.Object); repo.Setup(r => r.GetClientInfo(pensionerInput.AadhaarNumber)).Returns(pensionDetail); repo.Setup(r => r.GetCalculationValues(pensionerInput.AadhaarNumber)).Returns(valueforCalculation); repo.Setup(r => r.GetDisbursementMessage(processpensioninput)).Returns(new HttpResponseMessage(HttpStatusCode.BadRequest)); repo.Setup(r => r.CalcPensionAmount(25000, 1000, 1, PensionType.Self)).Returns(21500.00); var result = processPensionController.ProcessPension(pensionerInput); Assert.That(result, Is.Not.InstanceOf <OkObjectResult>()); }
/// <summary> /// Getting the Values from Process Management Portal /// </summary> /// <param name="aadhar"></param> /// <returns></returns> public PensionDetail GetClientInfo(string aadhar) { PensionDetail res = new PensionDetail(); HttpResponseMessage response = PensionDetail(aadhar); if (response == null) { res = null; return(null); } string responseValue = response.Content.ReadAsStringAsync().Result; res = JsonConvert.DeserializeObject <PensionDetail>(responseValue); if (res == null) { return(null); } return(res); }
public void Setup() { //pro = new Mock<IProcessProvider>(); responseMessage = new HttpResponseMessage(statusCode); pensionDetail = new PensionDetail() { Name = "Ritik", Pan = "BCFPN1234F", PensionAmount = 25000, DateOfBirth = new DateTime(2000, 01, 01), PensionType = PensionType.Self, BankType = 1, AadharNumber = "111122223333", Status = 21 }; valueforCalCulation = new ValueforCalCulation() { Allowances = 1000, BankType = 1, PensionType = PensionType.Self, SalaryEarned = 25000 }; }
public void ProcessPension_WhenCalled_ReturnsPensionDetail() { ProcessPensionInput processpensioninput = new ProcessPensionInput() { AadhaarNumber = "111122223333", BankCharge = 550, PensionAmount = 25500 }; ValueforCalCulation valueforCalculation = new ValueforCalCulation() { BankType = 1, SalaryEarned = 25000, Allowances = 1000, PensionType = PensionType.Self }; PensionDetail pensionDetail = new PensionDetail() { Name = "Sahil", DateOfBirth = new DateTime(1998 - 03 - 01), Pan = "BCFPN1234F", AadharNumber = "111122223333", PensionType = PensionType.Self, PensionAmount = 35000, BankType = 1, Status = 21, }; repo = new Mock <IProcessRepo>(); processPensionController = new ProcessPensionController(repo.Object); repo.Setup(r => r.GetClientInfo(pensionerInput.AadhaarNumber)).Returns(pensionDetail); repo.Setup(r => r.GetCalculationValues(pensionerInput.AadhaarNumber)).Returns(valueforCalculation); repo.Setup(r => r.GetDisbursementMessage(processpensioninput)).Returns(new HttpResponseMessage(HttpStatusCode.OK)); repo.Setup(r => r.CalcPensionAmount(25000, 1000, 1, PensionType.Self)).Returns(21500.00); var result = processPensionController.ProcessPension(pensionerInput); Assert.That(result, Is.InstanceOf <OkObjectResult>()); }
public ActionResult PensionervaluesDisplayed(PensionDetail detail) { return(View(detail)); }
public async Task <ActionResult> PensionPortal(PensionerInput input) { if (HttpContext.Session.GetString("token") == null) { _log4net.Info("Pensioner is not logged in"); ViewBag.Message = "Please Login First"; return(View("Login")); } _log4net.Info("Processing the pension began"); string processValue = configuration.GetValue <string>("MyLinkValue:processUri"); if (ModelState.IsValid) { using (var client = new HttpClient()) { StringContent content = new StringContent(JsonConvert.SerializeObject(input), Encoding.UTF8, "application/json"); client.BaseAddress = new Uri(processValue); try { using (var response = await client.PostAsync("api/ProcessPension/ProcessPension/", content)) { var apiResponse = await response.Content.ReadAsStringAsync(); ProcessResponse res = JsonConvert.DeserializeObject <ProcessResponse>(apiResponse); penDetailObj.Status = res.Result.Status; penDetailObj.PensionAmount = res.Result.PensionAmount; ResDetails.PensionAmount = penDetailObj.PensionAmount; ResDetails.Status = penDetailObj.Status; } } catch (Exception e) { _log4net.Error("Some Microservice is Down!!"); penDetailObj = null; } } if (penDetailObj == null) { _log4net.Error("Some Microservice is Down!!"); ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.Status.Equals(21)) { _log4net.Error("Some Microservice is Down!!"); ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.Status.Equals(10)) { // Storing the Values in Database _log4net.Info("Pensioner details have been matched with the Csv and data is successfully saved in local Database!!"); repo.AddResponse(ResDetails); repo.Save(); return(RedirectToAction("PensionervaluesDisplayed", ResDetails)); } else { _log4net.Error("Persioner details does not match with the Csv!!"); ViewBag.notmatch = "Pensioner Values not match"; return(View()); } } _log4net.Warn("Proper details are not given by the Admin!!"); ViewBag.invalid = "Pensioner Values are Invalid"; return(View()); }
public PensionDetail ProcessPension(ProcessPensionInput processPensionInput) { _log4net.Info("Pensioner details invoked from Client Input"); ProcessPensionInput client = new ProcessPensionInput(); client.Name = processPensionInput.Name; client.AadharNumber = processPensionInput.AadharNumber; client.Pan = processPensionInput.Pan; client.DateOfBirth = processPensionInput.DateOfBirth; client.PensionType = processPensionInput.PensionType; PensionDetailCall pension = new PensionDetailCall(configuration); ProcessPensionInput pensionDetail = pension.GetClientInfo(client.AadharNumber); if (pensionDetail == null) { PensionDetail mvc = new PensionDetail(); mvc.Name = ""; mvc.Pan = ""; mvc.PensionAmount = 0; mvc.DateOfBirth = new DateTime(2000, 01, 01); mvc.BankType = 1; mvc.AadharNumber = "***"; mvc.Status = 20; return(mvc); } double pensionAmount; ValueforCalCulation pensionerInfo = pension.GetCalculationValues(client.AadharNumber); pensionAmount = CalculatePensionAmount(pensionerInfo.SalaryEarned, pensionerInfo.Allowances, pensionerInfo.BankType, pensionerInfo.PensionType); int statusCode; PensionDetail mvcClientOutput = new PensionDetail(); if (client.Pan.Equals(pensionDetail.Pan) && client.Name.Equals(pensionDetail.Name) && client.PensionType.Equals(pensionDetail.PensionType) && client.DateOfBirth.Equals(pensionDetail.DateOfBirth)) { mvcClientOutput.Name = pensionDetail.Name; mvcClientOutput.Pan = pensionDetail.Pan; mvcClientOutput.PensionAmount = pensionAmount; mvcClientOutput.DateOfBirth = pensionDetail.DateOfBirth.Date; mvcClientOutput.PensionType = pensionerInfo.PensionType; mvcClientOutput.BankType = pensionerInfo.BankType; mvcClientOutput.AadharNumber = pensionDetail.AadharNumber; mvcClientOutput.Status = 20; } else { mvcClientOutput.Name = ""; mvcClientOutput.Pan = ""; mvcClientOutput.PensionAmount = 0; mvcClientOutput.DateOfBirth = new DateTime(2000, 01, 01); mvcClientOutput.PensionType = pensionerInfo.PensionType; mvcClientOutput.BankType = 1; mvcClientOutput.AadharNumber = "****"; mvcClientOutput.Status = 21; return(mvcClientOutput); } string uriConn2 = configuration.GetValue <string>("MyUriLink:PensionDisbursementLink"); HttpResponseMessage response = new HttpResponseMessage(); using (var client1 = new HttpClient()) { client1.BaseAddress = new Uri(uriConn2); StringContent content = new StringContent(JsonConvert.SerializeObject(mvcClientOutput), Encoding.UTF8, "application/json"); client1.DefaultRequestHeaders.Clear(); client1.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); try { response = client1.PostAsync("api/PensionDisbursement", content).Result; } catch (Exception e) { _log4net.Error("Exception Occured" + e); response = null; } } if (response != null) { string status = response.Content.ReadAsStringAsync().Result; //statusCode = Int32.Parse(status); Result result = JsonConvert.DeserializeObject <Result>(status); statusCode = result.result; mvcClientOutput.Status = statusCode; return(mvcClientOutput); } return(mvcClientOutput); }
public IActionResult ProcessPension(PensionerInput processPensionInput) { _log4net.Info("Pensioner details invoked from Client Input"); PensionerInput client = new PensionerInput(); client.Name = processPensionInput.Name; client.AadhaarNumber = processPensionInput.AadhaarNumber; client.PAN = processPensionInput.PAN; client.DateOfBirth = processPensionInput.DateOfBirth; client.PensionType = processPensionInput.PensionType; //repo = new ProcessRepo(pro); PensionDetail pensionDetail = _repo.GetClientInfo(client.AadhaarNumber); if (pensionDetail == null) { PensionDetail mvc = new PensionDetail(); mvc.Name = ""; mvc.Pan = ""; mvc.PensionAmount = 0; mvc.DateOfBirth = new DateTime(2000, 01, 01); mvc.BankType = 1; mvc.AadharNumber = "***"; mvc.Status = 20; return(NotFound()); } double pensionAmount; ValueforCalCulation pensionerInfo = _repo.GetCalculationValues(client.AadhaarNumber); pensionAmount = CalculatePensionAmount(pensionerInfo.SalaryEarned, pensionerInfo.Allowances, pensionerInfo.BankType, pensionerInfo.PensionType); int statusCode; PensionDetail mvcClientOutput = new PensionDetail(); if (client.AadhaarNumber.Equals(pensionDetail.AadharNumber)) { mvcClientOutput.Name = pensionDetail.Name; mvcClientOutput.Pan = pensionDetail.Pan; mvcClientOutput.PensionAmount = pensionAmount; mvcClientOutput.DateOfBirth = pensionDetail.DateOfBirth.Date; mvcClientOutput.PensionType = pensionerInfo.PensionType; mvcClientOutput.BankType = pensionerInfo.BankType; mvcClientOutput.AadharNumber = pensionDetail.AadharNumber; mvcClientOutput.Status = 20; } else { mvcClientOutput.Name = ""; mvcClientOutput.Pan = ""; mvcClientOutput.PensionAmount = 0; mvcClientOutput.DateOfBirth = new DateTime(2000, 01, 01); mvcClientOutput.PensionType = pensionerInfo.PensionType; mvcClientOutput.BankType = 1; mvcClientOutput.AadharNumber = "****"; mvcClientOutput.Status = 21; //return mvcClientOutput; } ProcessPensionInput input = new ProcessPensionInput(); input.AadhaarNumber = mvcClientOutput.AadharNumber; input.PensionAmount = mvcClientOutput.PensionAmount; if (mvcClientOutput.BankType == 1) { input.BankCharge = 500; } else { input.BankCharge = 550; } HttpResponseMessage response = _repo.GetDisbursementMessage(input); if (response != null) { string status = response.Content.ReadAsStringAsync().Result; //statusCode = Int32.Parse(status); ProcessPensionResponse res = JsonConvert.DeserializeObject <ProcessPensionResponse>(status); statusCode = res.processPensionStatusCode; processResponse = new ProcessResponse() { Status = statusCode, PensionAmount = mvcClientOutput.PensionAmount }; return(Ok(processResponse)); } return(Ok(processResponse)); }
public async Task <IActionResult> PensionerValues(PensionerInput input) { // string status; if (ModelState.IsValid) { using (var client = new HttpClient()) { StringContent content = new StringContent(JsonConvert.SerializeObject(input), Encoding.UTF8, "application/json"); client.BaseAddress = new Uri("https://localhost:44394/"); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); try { using (var response = await client.PostAsync("api/ProcessPension/GetClient", content)) //Get Post Mai check kar lena { //var response = await client.GetAsync("api/ProcessPension/"); string apiResponse = await response.Content.ReadAsStringAsync(); penDetailObj = JsonConvert.DeserializeObject <PensionDetail>(apiResponse); } } catch (Exception e) { penDetailObj = null; } } //return RedirectToAction("PensionervaluesDisplayed",pen); if (penDetailObj == null) { ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.status.Equals(20)) { ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.status.Equals(10)) { // ViewBag.invalid = "Pensioner Values are Invalid"; _context.pensionDetails.Add(penDetailObj); _context.SaveChanges(); return(RedirectToAction("PensionervaluesDisplayed", penDetailObj)); } else { ViewBag.notmatch = "Pensioner Values not match"; return(View()); } } else { ViewBag.invalid = "Pensioner Values are Invalid"; return(View()); } }
public IActionResult PensionervaluesDisplayed(PensionDetail penObj) { return(View(penObj)); }
public void AddResponse(PensionDetail detail) { context.Responses.Add(detail); }
public IActionResult PensionervaluesDisplayed(PensionDetail penObj) { _log4net.Info("Pension Amount of Pensioner is Displayed!!"); return(View(penObj)); }
public async Task <IActionResult> PensionerValues(PensionerInput input) { // string status; string processValue = configuration.GetValue <string>("MyLinkValue:processUri"); if (ModelState.IsValid) { using (var client = new HttpClient()) { StringContent content = new StringContent(JsonConvert.SerializeObject(input), Encoding.UTF8, "application/json"); client.BaseAddress = new Uri(processValue); client.DefaultRequestHeaders.Clear(); client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); try { using (var response = await client.PostAsync("api/ProcessPension/ProcessPension", content)) //Get Post Mai check kar lena { string apiResponse = await response.Content.ReadAsStringAsync(); Result res = JsonConvert.DeserializeObject <Result>(apiResponse); penDetailObj = res.result; } } catch (Exception e) { _log4net.Error("Some Microservice is Down!!"); penDetailObj = null; } } if (penDetailObj == null) { _log4net.Error("Some Microservice is Down!!"); ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.Status.Equals(20)) { _log4net.Error("Some Microservice is Down!!"); ViewBag.erroroccured = "Some Error Occured"; return(View()); } if (penDetailObj.Status.Equals(10)) { // Storing the Values in Database _log4net.Info("Pensioner details have been matched with the Csv and data is successfully saved in local Database!!"); _context.pensionDetails.Add(penDetailObj); _context.SaveChanges(); return(RedirectToAction("PensionervaluesDisplayed", penDetailObj)); } else { _log4net.Error("Persioner details does not match with the Csv!!"); ViewBag.notmatch = "Pensioner Values not match"; return(View()); } } else { _log4net.Warn("Proper details are not given by the Admin!!"); ViewBag.invalid = "Pensioner Values are Invalid"; return(View()); } }