private async void SaveData() { var amt = nudAmt.Value; var eAmt = Convert.ToDecimal(tbExpectedAmt.Text); if (amt <= 0) { Commons.ShowInfoBox(this, "还款金额必须大于零"); nudAmt.Focus(); return; } var dAmt = eAmt - amt; if (dAmt < 0) { Commons.ShowInfoBox(this, "差额不能小于零"); nudAmt.Focus(); return; } var tranNo = myGridViewBinding1.GetSelectedValues <int>("tranNo").FirstOrDefault(); var tranType = myGridViewBinding1.GetSelectedValues <string>("tranType").FirstOrDefault(); var payType = rbNormal.Checked ? 1 : rbNominal.Checked ? 3 : rbReverse.Checked ? 2 : 0; var sPayType = payType == 1 ? "正常还款" : payType == 3 ? "名义借款人还款" : payType == 2 ? "保证金还款" : ""; if (Commons.ShowConfirmBox(this, string.Format( "来源:{0:N}\r\n" + "金额:{1:N}\r\n" + "差额:{2:N}\r\n" + "还款时间:{3:G}\r\n" + "期数:{4}\r\n" + "类型:{5}\r\n" + "\n发起还款么?", sPayType, nudAmt.Value, tbDiffAmt.Text, dtpDatePoint.Value, tranNo, TRAN_TYPES.FindByValue(tranType)))) { string vf = ""; var r = new Dictionary <string, object>(); r.AddVF("pid", m_pId, ref vf) .AddVF("tran-no", tranNo, ref vf) .AddVF("tran-type", tranType, ref vf) .AddVF("pay-type", payType, ref vf) .AddVF("amt", amt, ref vf) .AddVF("paid-time", dtpDatePoint.Value, ref vf) .AddVF("remark", tbComments.Text.LeftStr(2000), ref vf); r["signature"] = Verification.GetSha1(vf); var p = await Projects.SaveBonusDetail(r); if (p.IsOk) { panel1.Visible = false; UpdateTable1(); UpdateTable2(); if (dAmt > 0 && tranType == "0") { Commons.ShowWarnBox(this, "刚才发起的还息不是足额还款。如果是提前还款,请执行还息后立刻足额还本"); } var p2 = await Projects.RepayFileUploadTime(); if (!p2.IsOk) { Commons.ShowResultErrorBox(this, p2); } } else { Commons.ShowResultErrorBox(this, p); } } }
private async void UpdateTable2() { var text = tbComments.Text.LeftStr(500); if (rbNo.Checked) { if (text.Trim() == "") { Commons.ShowInfoBox(this, "审批不通过时必须输入备注"); tbComments.Focus(); return; } if (m_status == 50 || m_status == 70) { if (!Commons.ShowConfirmBox(this, "此时审批不通过会导致\"流标\"!确认吗?")) { return; } } } if (rbYes.Checked && m_status == 50) { var p = await Projects.IsExistsUncheckedTender(m_pId); if (p.IsOk) { if (p.AsInt > 0) { Commons.ShowWarnBox(this, string.Format("存在{0}个状态未知的投标,请检查投标", p.AsInt)); return; } } else { Commons.ShowResultErrorBox(this, p); } } if (m_status == 60) { var reservedAmt = Commons.ShowDecimalInputDialog(this, 0, "金额(&A)", "输入财务核收服务费", 200); if (reservedAmt == -1) { return; } var p = new Dictionary <string, object>(); p["pid"] = m_pId; p["amt"] = reservedAmt; var r = await Projects.SaveReservedAmt(p); if (!r.IsOk) { Commons.ShowResultErrorBox(this, r); } } if (m_status == 70) { if (m_statusSign == 0) { if (!Commons.ShowConfirmBox(this, "签章未完成,确认放款嘛?", "确认")) { return; } } var password = Commons.ShowInputDialog(this, "密码(&P)", "操作人员身份验证", 200, null, true).Trim(); if (password == "") { return; } else if (!(await SignIn.ValidateUser(password))) { Commons.ShowInfoBox(this, "密码错误,禁止操作!"); return; } } var isOk = rbYes.Visible ? rbYes.Checked : true; var p2 = new Dictionary <string, object>(); p2["pid"] = m_pId; p2["flag"] = isOk; p2["comments"] = text; Rpc.IResult r2; switch (m_status) { case 0: r2 = await Projects.PrjSubmit(p2); break; case 1: r2 = await Projects.PrjMgrAudit(p2); break; case 10: r2 = await Projects.PrjRiskCtrlAudit(p2); break; case 20: r2 = await Projects.PrjBusSecAudit(p2); break; case 30: r2 = await Projects.PrjBusVpAprOnline(p2); break; case 50: r2 = await Projects.PrjBusVpConfirmFull(p2); break; case 60: r2 = await Projects.PrjCheckFee(p2); break; case 70: r2 = await Projects.PrjBusVpConfirmLoan(p2); break; default: return; } if (r2.IsOk) { if (!Convert.ToBoolean(r2.AsBoolean)) { Commons.ShowInfoBox(this, "业务操作失败!"); } } else { Commons.ShowResultErrorBox(this, r2); } DialogResult = DialogResult.OK; }