版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、进销存管理系统,教学阶段二(任务1:销售员和商品管理),回顾,项目背景 需求描述 需求分析 模块划分 概要设计 开发环境 多层架构搭建,目标,实现销售员和商品管理功能 完成程序框架搭建 编写通用sql语句执行类 完成销售员添加和删除功能 完成商品添加和删除功能,进度控制,本任务4课时 理论2课时 实践4课时,任务需求-销售员,可以添加、修改和删除销售员,销售员与客户之间存在交易记录时不允许删除 销售员的信息包括: 销售员工的编号(必添,1-8字符) 中文姓名(必添,=5个中文字符) 英文姓名(=60位字符) 电话(=20位字符) 移动电话(=20位字符) 联络地址(=25位字符) 电子邮件 (
2、验证格式,=30位字符),任务需求-商品,可以添加、删除商品,如果商品存在采购或销售记录不允许删除 商品的信息包括: 商品编号 (必添,1-8字符) 商品名称 (必添,=15位字符) 安全存量 (只能输入整数和小数) 建议采购价 (只能输入整数和小数) 建议销售价 (只能输入整数和小数) 最后一次进货日期 (添加商品时不出现) 最后一次销售日期 (添加商品时不出现) 实际库存数量 (添加商品时不出现),业务流程图-销售员,销售员业务流程图,商品业务流程图,业务流程图-商品,输入输出设计-销售员,输入输出设计-商品,数据库设计1,新建数据库PSS 新建销售人员表SalesMan,设置为主键,数据
3、库设计2,新建产品表Product,设为主键,设置默认值,界面设计-程序主界面,菜单栏,窗体背景,界面设计-销售员窗体,销售员资料窗体,添加销售员资料窗体,界面设计-商品窗体,商品资料窗体,添加商品资料窗体,思路,销售员类关系图,商品类关系图,代码实现-通用SQL语句执行类,通用数据访问类,为数据访问层提供与数据库交互的方法,负责执行数据访问层传递的SQL语句或存储过程。,数据访问层,传递SQL语句,通用数据访问类执行SQL语句,代码实现-通用SQL语句执行类,ExecuteNonQuery 方法负责执行SQL语句并返回受影响的行数 ExecuteDataTable 方法负责执行SQL语句并返
4、回DataTable对象 ExecuteDataReader 方法负责执行SQL语句并返回DataReader对象 ExecuteScalar 方法负责执行SQL语句并返回T类型对象,代码实现-通用SQL语句执行类,通用数据访问类提供了对事务的支持 事务(Transaction)是并发控制的基本单位。所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位 例如:银行转帐工作:从一个帐号扣款并使另一个帐号增款,这两个操作要么都执行,要么都不执行,代码实现-通用SQL语句执行类,在.net中使用如下代码实现事务:,/事务处理对象 private SqlTransa
5、ction sqlTransaction = null; /开始事务 sqlTransaction = conn.BeginTransaction(); /提交事务 sqlTransaction.Commit(); /回滚事务 sqlTransaction.Rollback();,代码实现-销售员实体类,编写销售员数据实体类,public class SalesMan private string _salesmanid; / / 销售员编号 / public string SalesManID set _salesmanid = value; get return _salesmanid;
6、,代码实现-商品实体类,编写商品数据实体类,public class Product /最后进货日期 private DateTime? _lastpurchasedate; / / 最后进货日期 / public DateTime? LastPurchaseDate set _lastpurchasedate = value; get return _lastpurchasedate; ,可为空的值类型,代码实现-销售员数据访问类,using System.Data.SqlClient; using PSS.Module; public class SalesManDA SqlDataHel
7、per dataHelper = null; public SalesManDA() dataHelper = new SqlDataHelper(); public int Add(SalesMan salesMan) /声明参数数组 SqlParameter parames = new SqlParameter7; /为每个参数赋值 parames0 = new SqlParameter(salesmanId, SqlDbType.VarChar); parames0.Value = salesMan.SalesManID; /调用通用数据库访问类方法执行sql语句 dataHelper.
8、ExecuteNonQuery(sql, CommandType.Text, parames); ,引用命名空间,实例化通用数据访问对象,代码实现-商品数据访问类,/删除商品 public int Delete(string productID) try dataHelper.ExecuteNonQuery(sql,CommandType.Text, parames); catch (SqlException err) /首先进行业务验证,被交易过的记录不允许被删除 if (err.Number = 547) flag = 1; else throw new Exception(“”) ,检查
9、商品是否存在交易记录中,代码实现-表示层代码,验证电子邮件,/验证用户输入 private bool ValidateInput() /验证邮箱的格式 Regex rx = new Regex(w+(-+.w+)*w+(-.w+)*.w+(-.w+)*); if (rx.IsMatch(emailTxt.Text) return true; else return false; ,使用正则表达式验证电子邮件格式,代码实现-表示层代码,调用数据访问层方法保存数据,/ / 给salesManDataGridView加载数据 / private void LoadData() /实例化销售员数据访问
10、类 SalesManDA salesManDA = new SalesManDA(); /调用数据访问对象方法获取数据 salesmanBindingSource.DataSource = salesManDA.GetInfo(); /绑定数据 salesManDataGridView.DataSource = salesmanBindingSource; ,代码实现-运行效果1,阶段运行效果,销售员添加,销售员删除,代码实现-运行效果1,阶段运行效果,商品添加,商品列表,任务总结,编写通用SQL语句执行类 使用ADO.NET与数据库进行数据交互 对用户输入的数据进行合法性验证 程序的结构和各个层次之间的调用关系,FAQ,1. Visual Studio 2008是否兼容.net framework 2.0? 答:使用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 检验结果异常复核处置|检验技师实操教案
- 2026年二级注册结构全套梁柱砌体专项题库含答案及解析
- 2026年营口市鲅鱼圈区中小学编制教师招聘考试模拟试题及答案详解
- 2026年厦门市湖里区中小学编制教师招聘笔试参考试题及答案详解
- 2026年安徽省淮南市中小学编制教师招聘笔试参考题库及答案详解
- 2026年福建省漳州市中小学编制教师招聘考试备考试题及答案详解
- 2026年四川省达州市事业编单位人员招聘笔试备考试题及答案详解
- 2026年河南省周口市中小学编制教师招聘考试参考题库及答案详解
- 2026年朔州市平鲁区中小学编制教师招聘考试参考题库及答案详解
- 2026年乐山市市中区中小学编制教师招聘考试备考试题及答案详解
- 2026湖南衡阳市衡东县卫健系统招聘专业技术人员46人模拟试卷完整附答案详解
- 24J113-1 内隔墙-轻质条板(一)
- 花瓶墩专项施工方案
- 萃取在冶金中的应用课件
- 年产5万吨甲酸钾项目环评报告书
- 安徽光智科技有限公司红外光学与辐射探测产业化项目环境影响报告书
- 2022-2023年粤教版(2019)新教材高中物理必修2 第1章抛体运动第2节运动的合成与分解课件
- GH/T 1070-2011茶叶包装通则
- GB/T 3003-2017耐火纤维及制品
- GB/T 30008-2013节能型船舶能效设计指数基准线值
- GB/T 20303.1-2016起重机司机室和控制站第1部分:总则
评论
0/150
提交评论