public ActionResult CreateSave(PensionType model, string returnUrl = "Index") { ViewBag.Path1 = "参数设置"; if (ModelState.IsValid) { try { db.PensionType.Add(model); db.PPSave(); Common.RMOk(this, "记录:'" + model.Name + "'新建成功!"); return(Redirect(Url.Content(returnUrl))); } catch (Exception e) { if (e.InnerException.Message.Contains("Cannot insert duplicate key row")) { ModelState.AddModelError(string.Empty, "相同名称的记录已存在,保存失败!"); } } } // 如果我们进行到这一步时某个地方出错,则重新显示表单 ViewBag.ReturnUrl = returnUrl; return(View("Create", model)); }
public ActionResult EditSave(PensionType model, string returnUrl = "Index") { ViewBag.Path1 = "参数设置"; //检查记录在权限范围内 var result = Common.GetPensionTypeQuery(db).Where(a => a.Id == model.Id).SingleOrDefault(); if (result == null) { Common.RMError(this); return(Redirect(Url.Content(returnUrl))); } //end if (ModelState.IsValid) { try { result.Name = model.Name; db.PPSave(); Common.RMOk(this, "记录:" + model + "保存成功!"); return(Redirect(Url.Content(returnUrl))); } catch (Exception e) { if (e.InnerException.Message.Contains("Cannot insert duplicate key row")) { ModelState.AddModelError(string.Empty, "相同名称的记录已存在,保存失败!"); } } } ViewBag.ReturnUrl = returnUrl; return(View("Edit", model)); }
public ActionResult RestoreSave(PensionType record, string returnUrl = "Index") { ViewBag.Path1 = "参数设置"; //检查记录在权限范围内 var result = Common.GetPensionTypeQuery(db, true).Where(a => a.IsDeleted == true).Where(a => a.Id == record.Id).SingleOrDefault(); if (result == null) { Common.RMError(this); return(Redirect(Url.Content(returnUrl))); } //end try { result.IsDeleted = false; db.PPSave(); Common.RMOk(this, "记录:" + result + "恢复成功!"); return(Redirect(Url.Content(returnUrl))); } catch (Exception e) { Common.RMOk(this, "记录" + result + "恢复失败!" + e.ToString()); } return(Redirect(Url.Content(returnUrl))); }
public double CalcPensionAmount(int salary, int allowances, int bankType, PensionType pensionType) { double pensionAmt; //provider = new ProcessProvider(); pensionAmt = provider.CalcPensionAmount(salary, allowances, bankType, pensionType); return(pensionAmt); }
public double CalcPensionAmount(int salary, int allowances, int bankType, PensionType pensionType) { double pensionAmount; if (pensionType == PensionType.Self) { pensionAmount = (0.8 * salary) + allowances; } else { pensionAmount = (0.5 * salary) + allowances; } if (bankType == 1) { pensionAmount = pensionAmount + 500; } else { pensionAmount = pensionAmount + 550; } return(pensionAmount); }
/// <summary> /// Validating the Pension Amount /// </summary> /// <param name="salaryEarned"></param> /// <param name="allowances"></param> /// <param name="charge"></param> /// <param name="type"></param> /// <returns>validated pension amount</returns> private double CalculatePensionLogic(int salaryEarned, int allowances, int charge, PensionType type) { if (type == PensionType.Self) { return((salaryEarned * 0.8) + allowances + charge); } else { return((salaryEarned * 0.5) + allowances + charge); } }
private double CalculatePensionAmount(int salary, int allowances, int bankType, PensionType pensionType) { double pensionAmount; //repo = new ProcessRepo(pro); pensionAmount = _repo.CalcPensionAmount(salary, allowances, bankType, pensionType); return(pensionAmount); }
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); } int bankType = pension.GetCalculationValues(client.AadharNumber).BankType; PensionType pensionType = pension.GetCalculationValues(client.AadharNumber).PensionType; double pensionAmount; double salary = pension.GetCalculationValues(client.AadharNumber).SalaryEarned; double allowances = pension.GetCalculationValues(client.AadharNumber).Allowances; if (pensionType == PensionType.Self) { pensionAmount = (0.8 * salary) + allowances; } else { pensionAmount = (0.5 * salary) + allowances; } if (pension.GetCalculationValues(client.AadharNumber).BankType == 1) { pensionAmount = pensionAmount + 500; } else { pensionAmount = pensionAmount + 550; } 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 = pension.GetCalculationValues(client.AadharNumber).PensionType; mvcClientOutput.bankType = 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 = pension.GetCalculationValues(client.AadharNumber).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 void CalculatePensionAmount_Returns_IncorrectValue(int salary, int allowances, int bankType, PensionType pensionType) { pro.Setup(r => r.CalcPensionAmount(salary, allowances, bankType, pensionType)).Returns(21500.00); double amount = pro.Object.CalcPensionAmount(salary, allowances, bankType, pensionType); Assert.AreNotEqual(21000.00, amount); }