概述
【人参果】
技术点:充值就是更新一下表的一个字段值,没什么可说的。主要说一下思路
【山巅远眺】
设计理念:
1、判断卡号和金额是不是为空
2、判断有没有卡号,有没有上机
3、判断是不是小于最小充值金额、最小为10元(这里与基本数据没关系);金额是不是超过最大值,限定最多为1000元
4、充值:更新卡的余额信息
5、添加充值记录
6、显示充值情况在txt中
7、最重要,一定要将业务逻辑写到B层,我写到最后才意识到
【披荆斩棘】
#region 判断卡号和金额是不是为空
if (txtCardID.Text.Trim() == string.Empty || txtRechargeAmount.Text.Trim() == string.Empty)
{
MessageBox.Show("卡号和金额不能为空,请完善充值信息!");
return;
}
#endregion
Entity.CardInfo CardInfo = new Entity.CardInfo();
CardInfo.CardID = Convert.ToInt32(txtCardID.Text.Trim());
Facade.QueryFacade facadeRechargeQueryCardInfo = new Facade.QueryFacade();
Boolean flag = false;
flag = facadeRechargeQueryCardInfo.rechargeQueryCardInfo(CardInfo);
#region 判断有没有卡号,有没有上机
if (flag == true)
{
Entity.OnLineInfo OnLineInfo = new Entity.OnLineInfo();
OnLineInfo.CardID = Convert.ToInt32(txtCardID.Text.Trim());
Facade.QueryFacade facadeRechargeQueryOnLineInfo = new Facade.QueryFacade();
Boolean flagOnLine = false;
flagOnLine = facadeRechargeQueryOnLineInfo.rechargeQueryOnLineInfo(OnLineInfo);
if (flagOnLine == true)
{
MessageBox.Show("改卡正在上机,不能充值!");
}
else
{
#region 判断是不是小于最小充值金额
if (Convert.ToInt32(txtRechargeAmount.Text.Trim()) < 10)
{
MessageBox.Show("充值金额最少10元");
}
else
{
#region 金额是不是超过最大值,限定最多为1000元
List<Entity.CardInfo> CardIDList = new List<Entity.CardInfo>();
CardIDList = facadeRechargeQueryCardInfo.cardQueryInfo(CardInfo);
if (Convert.ToInt32(txtRechargeAmount.Text.Trim()) + CardIDList[0].RemainingSum > 1000)
{
MessageBox.Show("充值的钱太多了,少充点吧。");
}
else
{
int UpdateCash;
UpdateCash = Convert.ToInt32(txtRechargeAmount.Text.Trim()) + Convert.ToInt32(CardIDList[0].RemainingSum);
CardInfo.RemainingSum = Convert.ToDecimal(UpdateCash);
#region 充值:更新卡的余额信息
Facade.UpDateFacade facadeUpdateRecharge = new Facade.UpDateFacade();
bool updaetRechargeflag = false;
updaetRechargeflag = facadeUpdateRecharge.updateRecharge(CardInfo);
if (updaetRechargeflag == true)
{
MessageBox.Show("充值成功!");
}
else
{
MessageBox.Show("不明原因,请与管理员联系!");
}
#endregion
#region 添加充值记录
UI.UIFormLogin FI = new UIFormLogin();//获取当前操作员或者管理员的名字
Entity.RechargeRecordInfo RechargeRecordInfo = new Entity.RechargeRecordInfo();
RechargeRecordInfo.CardID = Convert.ToInt32(txtCardID.Text.Trim());
string UserName = FI.returnUser();
RechargeRecordInfo.Name = UserName;
RechargeRecordInfo.RechargeDate = DateTime.Now;//.ToString("yyyy-MM-dd HH:mm:ss");
RechargeRecordInfo.RechargeTime =DateTime.Now.TimeOfDay;
RechargeRecordInfo.RechargeCash = Convert.ToDecimal(txtRechargeAmount.Text.Trim());
RechargeRecordInfo.Balance = Convert.ToDecimal(UpdateCash);
Facade.AddFacade facadeInsertRechargeRecordInfo = new Facade.AddFacade();
bool InsertRechargeRecordInfoflag = false;
InsertRechargeRecordInfoflag = facadeInsertRechargeRecordInfo.insertRechargeRecordInfo(RechargeRecordInfo);
if (InsertRechargeRecordInfoflag==true )
{
#region 显示充值情况在txt中
txtInformation.Text = "充值成功:恭喜您!" + System.Environment.NewLine +
"卡号:" + txtCardID.Text.Trim()+ System.Environment.NewLine +
"管理员姓名:" +UserName+ System.Environment.NewLine +
"充值日期:" + DateTime.Now.ToString() + System.Environment.NewLine +
"充值时间:" +DateTime.Now.TimeOfDay.ToString()+ System.Environment.NewLine +
"充值金额:" +txtRechargeAmount.Text.Trim()+ System.Environment.NewLine +
"当前余额:" + UpdateCash.ToString();
#endregion
}
else
{
MessageBox.Show("不明原因,请于管理员联系!");
}
#endregion
}
#endregion
}
#endregion
}
}
else
{
MessageBox.Show("改卡号没有注册,请先注册!");
}
#endregion
【筋斗云】
最后
以上就是真实飞机为你收集整理的C#个人重构之充值的全部内容,希望文章能够帮你解决C#个人重构之充值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复