C#个人重构之注册、退卡

【人参果】

技术点:
1、添加一条数据,当时并不太清楚D层代码该如何写。

【山巅远眺】
设计理念:
1、因为卡表和学生表是两张表,所以在注册的时候要先看卡和学生存不存在,不在才能注册。
2、学号和卡号要相等,同时初始密码是学号。
3、退卡的时候,两张表里的数据也要都删除,同时获得卡的余额。更新退卡表。

【披荆斩棘】
注册:
U层:
#region 注册:添加卡信息

                    CardInfo.CardID = Convert.ToInt32(txtCardID.Text.Trim());
                    CardInfo.StudentID = Convert.ToInt32(txtCardID.Text.Trim());
                    CardInfo.RemainingSum = Convert.ToDecimal(txtRechargeAmount.Text.Trim());
                    CardInfo.State = "未使用";
                    CardInfo.Register = FI.returnUser();//returnLevel();//这里获得的事用户名,而不是用户级别
                    CardInfo.IsCheck = "否";

                    bool flagSaveCardInfo = false;
                    Facade.UpDateFacade facadeSaveCardInfo = new Facade.UpDateFacade();
                    flagSaveCardInfo = facadeSaveCardInfo.upDateRegisterSaveCardInfo(CardInfo);

                    #endregion

                    #region 注册:添加学生信息
                    StudentInfo.StudentID = Convert.ToInt32(txtCardID.Text.Trim());
                    StudentInfo.PassWord = Convert.ToInt32(txtCardID.Text.Trim());
                    StudentInfo.Name = txtName.Text.Trim();
                    StudentInfo.Sex = cmbSex.Text.Trim();
                    StudentInfo.Major = txtMajor.Text.Trim();
                    StudentInfo.Grade = txtGrade.Text.Trim();
                    StudentInfo.StuClass = txtClass.Text.Trim();
                    bool flagSaveStudentInfo = false;
                    Facade.UpDateFacade facadeSaveStudentInfo = new Facade.UpDateFacade();
                    flagSaveStudentInfo = facadeSaveStudentInfo.upDateRegisterSaveStudentInfo(StudentInfo);
                    #endregion
D层:
       #region 注册:添加卡信息
        public bool upDateRegisterSaveCardInfo(Entity.CardInfo CardInfo)
        {
            bool result = false;
            SqlHelper.SqlHelperAll sqlHelperUpDateRegisterSaveCardInfo = new SqlHelper.SqlHelperAll();
            string sql = "Insert into Card_Info values(@CardID,@StudentID,@RemainingSum,@State,@Register,@IsCheck)";
            SqlParameter[] sqlParams = { new SqlParameter("@CardID", CardInfo.CardID), new SqlParameter("@StudentID", CardInfo.StudentID), new SqlParameter("@RemainingSum", CardInfo.RemainingSum), new SqlParameter("@State", CardInfo.State), new SqlParameter("@Register", CardInfo.Register), new SqlParameter("@IsCheck", CardInfo.IsCheck) };
            int res = sqlHelperUpDateRegisterSaveCardInfo.ExecuteNonQuery(sql,CommandType.Text,sqlParams);
            if (res > 0)
            {
                result = true;
            }
            return result;
        }
        #endregion

        #region 注册:添加学生信息
        public bool upDateRegisterSaveStudentInfo(Entity.StudentInfo StudentInfo)
        {
            bool result = false;
            SqlHelper.SqlHelperAll sqlHelperUpDateRegisterSaveStudentInfo = new SqlHelper.SqlHelperAll();
            string sql = "Insert into Student_Info values(@StudentID,@PassWord,@Name,@Sex,@Major,@Grade,@StuClass)";
            SqlParameter[] sqlParams = { new SqlParameter("@StudentID", StudentInfo.StudentID), new SqlParameter("@PassWord", StudentInfo.PassWord), new SqlParameter("@Name", StudentInfo.Name), new SqlParameter("@Sex", StudentInfo.Sex), new SqlParameter("@Major", StudentInfo.Major), new SqlParameter("@Grade", StudentInfo.Grade), new SqlParameter("@StuClass", StudentInfo.StuClass) };
            int res = sqlHelperUpDateRegisterSaveStudentInfo.ExecuteNonQuery(sql, CommandType.Text, sqlParams);
            if (res > 0)
            {
                result = true;
            }
            return result;
        }
        #endregion
退卡:
U层:
                       #region 获取卡的余额
                        List<Entity.CardInfo> list = new List<Entity.CardInfo>();
                        list = facadeCancleCardQueryCardInfo.registerShowCardInfo(CardInfo);

                        #endregion

                        #region 更新退卡表
                        Entity.CancleCardInfo CancleCardInfo = new Entity.CancleCardInfo();
                        CancleCardInfo.CardID = Convert.ToInt32(txtCardID.Text.Trim());
                        CancleCardInfo.UserName = FI.returnUser();
                        CancleCardInfo.CancleCardTime = DateTime.Now;
                        CancleCardInfo.CancleCash = list[0].RemainingSum;
                        Facade.AddFacade facadeInsertCancleCardInfo = new Facade.AddFacade();
                        facadeInsertCancleCardInfo.insertCancleCardInfo(CancleCardInfo);
                        #endregion

                        #region 删除学生表,卡表数据
                        Facade.DeleteFacade facadeDeleteCardInfo = new Facade.DeleteFacade();
                        facadeDeleteCardInfo.deleteCardInfo(CardInfo);
                        Facade.DeleteFacade facadeDeleteStudentInfo = new Facade.DeleteFacade();
                        Entity.StudentInfo StudentInfo = new Entity.StudentInfo();
                        StudentInfo.StudentID = CardInfo.CardID;
                        facadeDeleteStudentInfo.deleteStudentInfo(StudentInfo);
                        #endregion

                        #region 显示充值情况在txt中
                        txtInformation.Text = "退卡成功:恭喜您!" + System.Environment.NewLine +
                            "卡号:" + txtCardID.Text.Trim() + System.Environment.NewLine +
                            "管理员姓名:" + FI.returnUser() + System.Environment.NewLine +
                            "退卡日期:" + DateTime.Now.ToString() + System.Environment.NewLine +
                            "退卡金额:" + CancleCardInfo.CancleCash.ToString();

                        lblCancelCardCashtxt.Text = CancleCardInfo.CancleCash.ToString();
                        #endregion
       
D层:
      #region 删除卡数据
        public bool deleteCardInfo(Entity.CardInfo CardInfo)
        {
            bool flag = false;
            SqlHelper.SqlHelperAll sqlHeleperDeleteCardInfo = new SqlHelper.SqlHelperAll();
            string sql = "delete from Card_Info where CardID = @CardID ";
            SqlParameter[] sqlParams = { new SqlParameter("@CardID", CardInfo.CardID) };
            int res = sqlHeleperDeleteCardInfo.ExecuteNonQuery(sql, CommandType.Text, sqlParams);
            if (res == 0)
            {
                flag = false;
            }
            else
            {
                flag = true;
            }
            return flag;
 
        }
        #endregion

        #region 删除学生数据
        public bool deleteStudentInfo(Entity.StudentInfo StudentInfo)
        {
            bool flag = false;
            SqlHelper.SqlHelperAll sqlHeleperDeleteStudentInfo = new SqlHelper.SqlHelperAll();
            string sql = "delete from Student_Info where StudentID = @StudentID ";
            SqlParameter[] sqlParams = { new SqlParameter("@StudentID", StudentInfo.StudentID) };
            int res = sqlHeleperDeleteStudentInfo.ExecuteNonQuery(sql, CommandType.Text, sqlParams);
            if (res == 0)
            {
                flag = false;
            }
            else
            {
                flag = true;
            }
            return flag;
        }
        #endregion
【仙人指路】

太上老君:W3school
原始天尊:菜鸟教程
通天教主:小杨老师,重构的时候每天回去看小杨老师的C#视频,之前很多都不懂,现在都懂了。很有感觉!

【筋斗云】
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值