• C#三层ATM-8.存款、取款功能设计


    存款取款功能

    1.DAL--transInfo增加add方法--增加交易记录

    /// <summary>

    /// 增加一条数据

    /// </summary>

    public bool Add(Model.transInfo model)

    {

    StringBuilder strSql=new StringBuilder();

    StringBuilder strSql1=new StringBuilder();

    StringBuilder strSql2=new StringBuilder();

    if (model.transDate != null)

    {

    strSql1.Append("transDate,");

    strSql2.Append("'"+model.transDate+"',");

    }

    if (model.cardID != null)

    {

    strSql1.Append("cardID,");

    strSql2.Append("'"+model.cardID+"',");

    }

    if (model.transType != null)

    {

    strSql1.Append("transType,");

    strSql2.Append("'"+model.transType+"',");

    }

    if (model.transMoney != null)

    {

    strSql1.Append("transMoney,");

    strSql2.Append(""+model.transMoney+",");

    }

    if (model.remark != null)

    {

    strSql1.Append("remark,");

    strSql2.Append("'"+model.remark+"',");

    }

    strSql.Append("insert into transInfo(");

    strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1));

    strSql.Append(")");

    strSql.Append(" values (");

    strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1));

    strSql.Append(")");

    int rows=DbHelperSQL.ExecuteSql(strSql.ToString());

    if (rows > 0)

    {

    return true;

    }

    else

    {

    return false;

    }

    }

    2.DAL--cardinfo增加UpdateBalance方法--更新账户余额

    public bool UpdateBalance(string CardID, decimal MoneyNum,string remark)

            {

    //增加交易记录

                Model.transInfo t = new Model.transInfo();

                t.cardID = CardID;

                t.transDate = DateTime.Now;

                t.transMoney = Math.Abs(MoneyNum);

                t.transType = "存入";

                t.remark = remark;

    string sql = "update  cardinfo set balance=balance+" + MoneyNum + " where cardID='" + CardID + "' and IsReportLoss=0";

    if (MoneyNum < 0)

                {

    //先判断余额是否足

                    Model.cardinfo c  = GetModel(CardID);

    if (c != null)

                    {

    if(c.balance<Math.Abs( MoneyNum))

                        { return false; }

                    }

    else

                    {

    return false;

                    }

                    t.transType = "支取";

                }

    if (DbHelperSQL.ExecuteSql(sql) >= 1)//存取款成功 则增加交易记录

                {

                    DAL.transInfo dalt = new DAL.transInfo();

                    dalt.Add(t);

    return true;

                }

    return false;

            }

    3.BLL--cardinfo增加UpdateBalance方法

    /// <summary>

    /// 存取款

    /// <param name = "CardID" ></ param >

    /// < param name="MoneyNum">负数为取款</param>

    /// <returns></returns>

    /// </summary>

    public bool UpdateBalance(string CardID, decimal MoneyNum,string remark)

            {

    return dal.UpdateBalance(CardID, MoneyNum,remark);

            }

    4.WinF--getMoney窗体

    1)为窗体类增加卡号字段

    2)编写取款按钮单击方法

    代码如下:

    wpsAD08.tmp

    5.WinF--SetMoney窗体

    1)为窗体类增加卡号字段

    2)编写存款按钮单击方法

    代码如下:

    wpsAD28.tmp

    6.WinF--main窗体---编写存款、取款菜单项代码

    wpsAD29.tmp

  • 相关阅读:
    Python Cookbook(第3版)中文版:15.20 处理C语言中的可迭代对象
    Python Cookbook(第3版)中文版:15.21 诊断分段错误
    Theano环境搭建/安装
    Keras官方中文文档:keras后端Backend
    Keras官方中文文档:函数式模型API
    Keras官方中文文档:序贯模型API
    Keras官方中文文档:关于Keras模型
    Keras官方中文文档:序贯模型
    web服务器原理
    静态网页与动态网页区别
  • 原文地址:https://www.cnblogs.com/lingr/p/5563567.html
Copyright © 2020-2023  润新知