// GET: Withdrawal public ActionResult Index(string username) { WithdrawDetails details = new WithdrawDetails(); details.Username = username; return(View(details)); }
private bool MaximumLimitPerDayAchieved(WithdrawDetails withdrawDetails) { if (withdrawDetails.MaximumLimitAchieved == false) { return(true); } else { return(false); } }
private bool IsSufficientBalance(WithdrawDetails withdrawDetails, CardDetails user) { if (user.TotalBalance >= withdrawDetails.Amount) { return(true); } else { return(false); } }
/// <summary> /// 得到一个对象实体 /// </summary> public WithdrawDetails DataRowToModel(DataRow row) { WithdrawDetails model = new WithdrawDetails(); if (row != null) { if (row["ID"] != null) { model.ID = row["ID"].ToString(); } if (row["EMPLOYEEID"] != null) { model.EMPLOYEEID = row["EMPLOYEEID"].ToString(); } if (row["WITHDRAWAMOUNT"] != null && row["WITHDRAWAMOUNT"].ToString() != "") { model.WITHDRAWAMOUNT = decimal.Parse(row["WITHDRAWAMOUNT"].ToString()); } if (row["CREATEDATE"] != null && row["CREATEDATE"].ToString() != "") { model.CREATEDATE = DateTime.Parse(row["CREATEDATE"].ToString()); } if (row["ISCONFIRMED"] != null && row["ISCONFIRMED"].ToString() != "") { if ((row["ISCONFIRMED"].ToString() == "1") || (row["ISCONFIRMED"].ToString().ToLower() == "true")) { model.ISCONFIRMED = true; } else { model.ISCONFIRMED = false; } } if (row["OPERATEPERSON"] != null) { model.OPERATEPERSON = row["OPERATEPERSON"].ToString(); } if (row["ISDELETED"] != null && row["ISDELETED"].ToString() != "") { if ((row["ISDELETED"].ToString() == "1") || (row["ISDELETED"].ToString().ToLower() == "true")) { model.ISDELETED = true; } else { model.ISDELETED = false; } } } return(model); }
public ActionResult withdraw(WithdrawDetails details) { #region Declarations string path = Constants.path; string json = ""; IWithdraw withdraw = new Withdraw(details); CardDetails cardDetails = new CardDetails(); string output = ""; #endregion #region Read Json File using (StreamReader r = new StreamReader(path)) { json = r.ReadToEnd(); } #endregion #region Money Withdraw and JSON update cardDetails = withdraw.WithdrawAmount(json, details); if (cardDetails.IsSufficientBalance == true) { dynamic jsonObj = Newtonsoft.Json.JsonConvert.DeserializeObject(json); foreach (var j in jsonObj) { if (j["Username"] == cardDetails.Username) { j["TotalBalance"] = cardDetails.TotalBalance; } } output = Newtonsoft.Json.JsonConvert.SerializeObject(jsonObj, Newtonsoft.Json.Formatting.Indented); System.IO.File.WriteAllText(path, output); return(View(cardDetails)); } else { return(RedirectToAction("Withdrawal_Failed", "Withdrawal")); } #endregion }
public CardDetails WithdrawAmount(string json, WithdrawDetails withdrawDetails) { CardDetails user = new CardDetails(); List <CardDetails> items = JsonConvert.DeserializeObject <List <CardDetails> >(json); user = items.FirstOrDefault(x => x.Username == withdrawDetails.Username); if (IsSufficientBalance(withdrawDetails, user)) { user.TotalBalance = user.TotalBalance - withdrawDetails.Amount; user.MaximumLimit = user.MaximumLimit + withdrawDetails.Amount; user.IsSufficientBalance = true; } else { user.IsSufficientBalance = false; } return(user); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(WithdrawDetails model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update withdrawdetails set "); strSql.Append("EMPLOYEEID=@EMPLOYEEID,"); strSql.Append("WITHDRAWAMOUNT=@WITHDRAWAMOUNT,"); strSql.Append("CREATEDATE=@CREATEDATE,"); strSql.Append("ISCONFIRMED=@ISCONFIRMED,"); strSql.Append("OPERATEPERSON=@OPERATEPERSON,"); strSql.Append("ISDELETED=@ISDELETED"); strSql.Append(" where ID=@ID "); MySqlParameter[] parameters = { new MySqlParameter("@EMPLOYEEID", MySqlDbType.VarChar, 36), new MySqlParameter("@WITHDRAWAMOUNT", MySqlDbType.Decimal, 12), new MySqlParameter("@CREATEDATE", MySqlDbType.DateTime), new MySqlParameter("@ISCONFIRMED", MySqlDbType.Bit), new MySqlParameter("@OPERATEPERSON", MySqlDbType.VarChar, 36), new MySqlParameter("@ISDELETED", MySqlDbType.Bit), new MySqlParameter("@ID", MySqlDbType.VarChar, 36) }; parameters[0].Value = model.EMPLOYEEID; parameters[1].Value = model.WITHDRAWAMOUNT; parameters[2].Value = model.CREATEDATE; parameters[3].Value = model.ISCONFIRMED; parameters[4].Value = model.OPERATEPERSON; parameters[5].Value = model.ISDELETED; parameters[6].Value = model.ID; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
private string Withdraw(HttpContext context) { StringBuilder sbJsonResult = new StringBuilder(); decimal? withdrawAmount = Convert.ToDecimal(context.Request.Params["withdrawAmount"]); string employeeID = context.Request.Params["employeeID"]; WithdrawDetails withdraw = new WithdrawDetails(); withdraw.ID = Guid.NewGuid().ToString(); withdraw.EMPLOYEEID = employeeID; withdraw.WITHDRAWAMOUNT = withdrawAmount; withdraw.CREATEDATE = DateTime.Now; withdraw.ISCONFIRMED = false; if (new WithdrawDetailsBLL().Add(withdraw)) { sbJsonResult.Append("{\"result\":\"1\"}"); } else { sbJsonResult.Append("{\"result\":\"0\"}"); } return(sbJsonResult.ToString()); }
protected void gvWithdrawApprove_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "Confirm") { string[] strArgs = e.CommandArgument.ToString().Split('|'); string withdrawID = strArgs[0]; string employeeID = strArgs[1]; WithdrawDetails withdrawDetails = wBll.GetModel(withdrawID); withdrawDetails.ISCONFIRMED = true; withdrawDetails.OPERATEPERSON = UserProfile.GetInstance().ID; if (wBll.Update(withdrawDetails)) { EmployeeAccount empAcct02 = empAcctBll.GetModelList(" employeeID = '" + employeeID + "'").FirstOrDefault(); if (empAcct02 != null) { if (empAcct02.AMOUNT >= withdrawDetails.WITHDRAWAMOUNT) { // 余额减去 empAcct02.AMOUNT -= withdrawDetails.WITHDRAWAMOUNT; // 已发加上 empAcct02.PAIDAMOUNT += withdrawDetails.WITHDRAWAMOUNT; if (empAcctBll.Update(empAcct02)) { LoadWithdraw(); ClientScript.RegisterClientScriptBlock(this.GetType(), Guid.NewGuid().ToString(), "alert('操作成功!');", true); } } else { ClientScript.RegisterClientScriptBlock(this.GetType(), Guid.NewGuid().ToString(), "alert('操作失败!code: 4001');", true); } } } else { ClientScript.RegisterClientScriptBlock(this.GetType(), Guid.NewGuid().ToString(), "alert('操作失败!');", true); } } }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(WithdrawDetails model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into withdrawdetails("); strSql.Append("ID,EMPLOYEEID,WITHDRAWAMOUNT,CREATEDATE,ISCONFIRMED,OPERATEPERSON,ISDELETED)"); strSql.Append(" values ("); strSql.Append("@ID,@EMPLOYEEID,@WITHDRAWAMOUNT,@CREATEDATE,@ISCONFIRMED,@OPERATEPERSON,@ISDELETED)"); MySqlParameter[] parameters = { new MySqlParameter("@ID", MySqlDbType.VarChar, 36), new MySqlParameter("@EMPLOYEEID", MySqlDbType.VarChar, 36), new MySqlParameter("@WITHDRAWAMOUNT", MySqlDbType.Decimal, 12), new MySqlParameter("@CREATEDATE", MySqlDbType.DateTime), new MySqlParameter("@ISCONFIRMED", MySqlDbType.Bit), new MySqlParameter("@OPERATEPERSON", MySqlDbType.VarChar, 36), new MySqlParameter("@ISDELETED", MySqlDbType.Bit) }; parameters[0].Value = model.ID; parameters[1].Value = model.EMPLOYEEID; parameters[2].Value = model.WITHDRAWAMOUNT; parameters[3].Value = model.CREATEDATE; parameters[4].Value = model.ISCONFIRMED; parameters[5].Value = model.OPERATEPERSON; parameters[6].Value = model.ISDELETED; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return(true); } else { return(false); } }
/// <summary> /// 得到一个对象实体 /// </summary> public WithdrawDetails GetModel(string ID) { StringBuilder strSql = new StringBuilder(); strSql.Append("select ID,EMPLOYEEID,WITHDRAWAMOUNT,CREATEDATE,ISCONFIRMED,OPERATEPERSON,ISDELETED from withdrawdetails "); strSql.Append(" where ID=@ID "); MySqlParameter[] parameters = { new MySqlParameter("@ID", MySqlDbType.VarChar, 36) }; parameters[0].Value = ID; WithdrawDetails model = new WithdrawDetails(); DataSet ds = DbHelperMySQL.Query(strSql.ToString(), parameters); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(WithdrawDetails model) { return(dal.Update(model)); }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(WithdrawDetails model) { return(dal.Add(model)); }
public ActionResult Withdrawal_Failed(WithdrawDetails details) { return(View()); }
public Withdraw(WithdrawDetails withdraw) { //Setting MaximumLimitAchieved false as maximum limit checker functionality is not implemented yet. withdraw.MaximumLimitAchieved = false; }