医药销售管理系统设计说明书.doc

上传人:夺命阿水 文档编号:22683 上传时间:2022-07-16 格式:DOC 页数:43 大小:3.84MB
返回 下载 相关 举报
医药销售管理系统设计说明书.doc_第1页
第1页 / 共43页
医药销售管理系统设计说明书.doc_第2页
第2页 / 共43页
医药销售管理系统设计说明书.doc_第3页
第3页 / 共43页
医药销售管理系统设计说明书.doc_第4页
第4页 / 共43页
医药销售管理系统设计说明书.doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《医药销售管理系统设计说明书.doc》由会员分享,可在线阅读,更多相关《医药销售管理系统设计说明书.doc(43页珍藏版)》请在课桌文档上搜索。

1、医药销售管理系统摘要本系统采用Visual Studio 2005 .Net 为开发工具,开发医药销售管理系统,适用于现在的药品销售业领域。开发医药销售管理系统能够提高药品销售管理的工作效率、扩大效劳*围、增加药店收入、及时获取信息、减少决策失误、减少库存积压、提升员工的素质。能够及时提供药品根本信息、库存信息、入库信息和药品销售信息。在此根底上,通过对各种信息的综合分析,以改进药品品种、提高效劳质量、满足前来购药顾客的不同要求,使药店管理向高质量、科学化开展。对提高仓储管理的工作效率和对市场的反响能力,能高效益、低库存、保证效劳质量地满足药店药品销售日常管理的需要,使其采用现代化管理手段以适

2、应药店药品批发、零售业的开展。【关键词】:销售管理;数据库;.NETAbstractThe System adopts Visual Studio 2005 .Netas the developing instrument to develop the Medicine Sell AdministratSystem, which is suitable for the present medicines merchandising business field. Can raise the working efficiency of selling management of medicine

3、s to sell the administrative system while developing drugstore medicines, e*pand service range , increase drugstore ine , obtain information , reduce decision fault , reduce stock , promote quality of staff in time. Can offer the medicines basic information , stock information , selling operation in

4、formation and financial information of drugstore in time . On this basis, through to various information of prehensive analyses, in order to improve medicines variety , raise service quality , meet , e , purchase medicine different requirements of customer, make the drugstore managed to high quality

5、 , developed scientifically. To raising the working efficiency of management of storage and to the reaction ability of the market, it can be high to benefit , low stock , guarantee meeting the need of selling everyday control of drugstore medicines of service quality, make it adopt modernized manage

6、ment selling in batches , development of the retail business in order to adapt to drugstore medicines.【Keywords】:Sale Management ; Database ; .Net1. 引言医药是关于人类同疾病作斗争和增进安康的科学,而制药工业则负责生产药品。制药工业既是国民经济的一个部门,又是一项治病、防病、保健、方案生育的社会福利事业。随着人们生活水平以及制药水平的不断提高,人们对医药的消费和需求也越来越旺盛,世界制药工业也保持庞大的市场需求和生产规模。近年来,中国医药销售市场开

7、展迅猛。巨大的市场容量和可观的经济效益,引起各制药厂家纷纷加大投资,研究新配方,医药市场顿时烽烟四起,竞争是空前的剧烈。在如此形式下,介于生产厂家和消费者之间的医药销售企业在医药事业中发挥了至关重要的作用。1.1 系统开发的背景和意义各医药销售公司都有它们自己的管理、销售、财务等职能部门。如何管理好这些部门,使整个公司协调一致、高效率地运转,是各公司急待解决的问题。但有的业务环节仍然运用人工记账的传统方法,既容易出错又会导致账目混乱,查询和统计起来非常不方便,费时又费力,严重时会给公司造成难以挽回的损失。像这样初级的公司管理方法,已远跟不上销售政策和销售形势开展的需要。因此,如何对医药销售管理

8、提供一整套的管理方法到达提高效率和降低本钱的问题成为焦点。医药销售管理系统的提出,对医药销售公司来讲意义重大。它不但能使各业务环节协调一致,而且操作简单,账目清晰,通过账目查询,公司能在最短的时间内获得市场信息,从而制订相应的决策。1.2 系统的目标本系统是以药品根本信息为主体,以销售药品的操作人员为效劳对象,通过对各种入库和销售信息的管理操作,需要实现以下目标: 一、实现根底信息管理:药品信息管理,员工信息管理,客户信息管理,供应商信息管理; 二、实现进货管理:入库登记,入库登记查询,入库报表; 三、实现销售管理:销售登记,销售退货,销售报表,以及相应的查询;四、系统维护。2. 需求分析2.

9、1 系统需求本医药销售管理系统是一个协助医药销售商对各职能部门及业务流程进展全面管理的一个信息管理系统。首先要解决传统的管理方法容易造成档案资料的遗失,控制不集中,管理不规*等问题。因此,本管理系统在实现上应满足以下需求: 1.能到达各销售业务流程之间的无缝和数据的共享。 2.为系统提供数据支持。 3.不同类型的用户拥有相应不同的权限使用该系统,从而大大提高了系统的平安性和管理效率。 4.能保证整个系统构架的稳定性和平安性。2.2 功能需求2.2.1 功能需求分析首先是操作人员将药品信息入库,然后医药销售公司的销售人员通过与药品需求商即客户的交易活动,将相关交易信息存入数据库。公司的管理人员可

10、以查询药品销售的各种信息统计,分析销售的运转情况。由此可分析系统需要到达以下目标:1.能很好地完成药品的售前管理如药品入库时详细信息的登记。 2.能详细地记录客户与公司之间的交易过程以及相关信息。3.能及时准确地获得药品在*阶段的盈亏情况和市场的需求走势。即通过对药品销售、药品进货、药品退货等信息查询获得相应的结果,以备公司作为参考,从而制定出相应的策略。4. 能够对不同权限的用户进展合理的管理。包括添加用户,查看用户密码等等。2.2.2 功能模块划分系统主要划分为3个模块,分别为信息管理模块,进货管理模块以及销售管理模块。不同的模块划分有不同的功能,具体如功能图1-1所示:医药销售管理系统信

11、息管理模块进货管理模块销售管理模块药品信息管理员工信息管理客户信息管理供应商信息管理入库登记入库登记查询入库报表销售登记销售退货销售报表功能图1-12.2.3 用户分类及功能权限划分本医药销售管理系统把用户划分为3个角色,分别为管理员、入库操作员以及销售员。对于不用类型的用户,分别划分了不同的权限和不同的功能,保证了数据的平安,让销售能正常运转。管理员所分配的功能权限如用例图2-1图2-1 管理员用例图入库操作员所分配的功能权限如用例图2-2图2-2 入库员用例图销售员所分配的功能权限如用例图2-3图2-3 销售员用例图2.2.4 系统的大概流程在进入本医药销售管理系统之前,首先要进展员工编号

12、和密码的输入以及用户类型选择,如果输入的信息有误,则不能进展登录;只要在全部条件都满足下的情况下,用户才能成功登录;成功登录后,不用类型的用户会进入相应的管理页面,然后可以进展各自的功能操作。大概的系统工作流程如流程图3-1:流程图3-12.3 运行需求由于本系统是基于B/S构造的Web应用程序,所以对于用户电脑配置的要求不高,只要配置有IE6以上或者Netscape等浏览器,便能访问该医药销售管理系统;而效劳器方面,由于考虑到为防止由于效劳器原因造成系统无法访问,影响医药销售的正常运转,所以推荐使用IBM效劳器,能够保证系统24小时能够正常运行,不会出现异常情况。3. 概要设计3.1 数据库

13、设计3.1.1 数据库概念设计医药销售管理系统根本如E-R图如图3-1 图3-1 E-R图3.1.2 数据库逻辑设计1.员工表员工ID,员工*,员工性别,年龄,联系,密码,员工权限2.客户表 客户ID,客户名称,联系, 3.供应商表供应商ID,供应商名称,联系, 4.药品表 药品ID,药品名,价格,库存量,供应商,单位,规格5.入库登记表药品ID,入库时间,入库数量,经手人6.销售登记表订单号,药品ID,销售量,销售时间,客户ID,经手人3.1.3 数据库物理设计1. 员工表:用于存放公司员工的信息,具体表构造如表3-1表3-1 员工表字段名称字段类型备注员工IDNchar(10)员工的编号,

14、长度为10,主键员工*Nchar(10)员工的*,长度为10,可为空员工性别Nchar(10)员工的性别,长度为10,可为空年龄Nchar(10)员工的年龄,长度为10,可为空联系Nchar(10)员工的联系,长度为10,可为空密码Varchar(MA*) 员工的登录密码,不可为空员工权限Nchar(10)员工权限,admin表示管理员,saler表示销售员,addinfo表示入库员2. 客户表:用于存放购置药品的客户信息,具体表构造如表3-2表3-2 客户表字段名称字段类型备注客户IDNchar(10)客户编号,长度为10,主键客户名称Nchar(10)客户的名称,长度为10,不能为空联系N

15、char(15)客户的联系,长度为15,不能为空 Nchar(20)客户的 ,长度为20,不能为空3. 供应商表:用于存放供应商的信息,具体表构造如表3-3表3-3 供应商表字段名称字段类型备注供应商IDNchar(10)供应商的编号,长度为10,主键供应商名称Nchar(10)供应商的名称,长度为10,不能为空联系Nchar(15)供应商的联系,不能为空 Nchar(20)供应商的 ,不能为空4. 药品表:用于存放仓库内每种药品的信息,具体表构造如表3-4表3-4 药品表字段名称字段类型备注药品IDNchar(10)仓库内药品的编号,主键药品名Nchar(10)药品的名称,长度为10,不能为

16、空价格float药品的价格,浮点型,不能为空库存量Int药品的库存量,整型,不能为空供应商Nchar(10)药品的供应商,长度为10,不能为空单位Nchar(10)药品的单位,长度为10,不能为空规格Nchar(10)药品的规格,长度为10,不能为空5. 入库登记表:存放药品入库的记录,具体表构造如表3-5表3-5 入库登记表字段名称字段类型备注药品IDNchar(10)入库药品的ID,长度为10,不能为空入库时间Nvarchar(50)药品的入库时间,长度为50,不能为空入库数量Int药品的入库数量,整型,不能为空经手人Nchar(10)入库操作的经手人,可为空6. 销售登记表:存放药品销售

17、的记录,具体表构造如表3-6表3-6 销售登记表字段名称字段类型备注订单号Int交易订单号,整型,主键,自动生成药品IDNchar(10)销售药品的ID,长度为10,不能为空销售量Int药品的销售量,整型,不能为空销售时间Nvarchar(50)药品的销售时间,长度为50,不能为空客户IDNchar(10)购置该药品的客户的编号,长度为10,不能为空经手人Nchar(10)销售操作的经手人,长度为10,可为空3.2 数据字典1.外部实体条目如表3-7注:员工、客户、供应商、药品的编号各自独立表3-7名称权限类型输入数据流输出数据流管理员Admin登录信息无入库员addinfo登录信息无销售员s

18、aler登录信息无客户-客户信息无供应商-供应商信息无药品-药品信息无2.数据流条目如表3-8表3-8名称功能输入数据流输出数据流员工信息添加,查看员工信息管理员管理员客户信息添加,查看客户信息销售人员管理员,销售员销售订单添加,查看订单信息销售人员管理员,销售员药品信息添加,查看药品信息管理员管理员3.处理过程条目如表3-9表3-9名称数据流来源数据流去向添加员工管理员数据库员工表添加客户管理员数据库客户表药品入库入库员数据库药品表,入库表查看员工信息数据库管理员查看客户信息数据库销售员查看订单信息数据库管理员、销售员查看仓库库存数据库管理员、销售员、入库员查看入库记录数据库管理员,入库员4

19、. 系统核心详细设计4.1 用户登录1. 设计说明进入本医药销售管理系统,首先必须要进展用户的登录。用户登录要输入用户的ID、登录的密码任一项输入的信息与数据库中的记录不都会导致登录的失败,当输入信息都完全匹配了,通过用代码获取权限字段,通过检权限的字段跳转到相的用户界面2. 流程图图4-1 登陆流程图3. 代码实现protectedvoid Button1_Click(object sender, EventArgs e) SqlConnection conn =newSqlConnection(); conn.ConnectionString = ConfigurationManager.

20、ConnectionStringsyy*sstring.ToString(); conn.Open();Sqlmand cmd=newSqlmand(); cmd.mandTe*t=select * from yuangong where 员工ID=+Te*tBo*1.Te*t+and 密码=+Te*tBo*2.Te*t+; cmd.Connection=conn;SqlDataReader sr=cmd.E*ecuteReader();if (sr.Read() Sessionuser = this.Te*tBo*1.Te*t; Sessionpassword = this.Te*tBo*2

21、.Te*t; Sessionus = sr.GetString(1).Trim(); Sessionpower = sr.GetString(6).Trim();string power=Session power.ToString ();if (power.Equals(admin) Response.Redirect(mlogin.asp*); elseif (power.Equals(saler) Response.Redirect(slogin.asp*); else Response.Redirect(alogin.asp*); else Response.Write(alert(用

22、户名或密码不正确!); protectedvoid Button2_Click(object sender, EventArgs e) Te*tBo*1.Te*t = ; Te*tBo*2.Te*t = ; 4.2 员工添加和删除1. 设计说明本系统中,管理员有添加员工的权限。添加员工,首先要输入员工的ID号,员工的*,选择员工的工作类型,员工的联系方式及员工的性别等信息。为防止重复录入同一个员工的信息,造成数据库出错,该功能设计中最重要的一点是当管理员输入员工ID号的同时,系统会自动检测数据库中员工表中的记录,假设存在匹配的员工ID号,则不允许管理员向数据库添加该员工的信息,并提示管理员检查

23、待添加的员工的ID号。对于要删除的员工,选中所要删除的员工并确认之后,可直接删除。2. 流程图图4-2 添加员工流程图 图 4-3 删除员工流程图3. 代码实现添加员工信息,在输入员工的编号后,系统会自动检测员工是否存在:protectedvoid Button1_Click(object sender, EventArgs e) SqlConnection conn = newSqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStringsyy*sstring.ToString(); conn.Op

24、en();Sqlmand smd = newSqlmand(); smd.Connection = conn; smd.mandTe*t = select * from yuangong where 员工ID= + Te*tBo*1.Te*t.Trim() + ;SqlDataReader sd = smd.E*ecuteReader();if (!sd.HasRows) sd.Close();Sqlmand cmd = newSqlmand(); cmd.Connection = conn; cmd.mandTe*t = insert into yuangong(员工ID,员工*,员工性别,

25、年龄,联系,密码,员工权限) values( + Te*tBo*1.Te*t.Trim() + , + Te*tBo*2.Te*t.Trim() + , + Te*tBo*3.Te*t.Trim() + , + Te*tBo*4.Te*t.Trim() + , + Te*tBo*5.Te*t.Trim() + , + Te*tBo*6.Te*t.Trim() + , + Te*tBo*7.Te*t.Trim() + ); cmd.E*ecuteNonQuery(); Response.Write(alert(操作成功!); Te*tBo*1.Te*t = ; Te*tBo*2.Te*t = ;

26、 Te*tBo*3.Te*t = ; Te*tBo*4.Te*t = ; Te*tBo*5.Te*t = ; Te*tBo*6.Te*t = ; Te*tBo*7.Te*t = ; else Response.Write(alert(员工ID已存在); conn.Close(); sd.Close(); 4.3 销售登记和退货1. 设计说明对于每一次的销售交易,首先自动生成对应订单号,由销售员完成订单其他信息的输入。订单记录了交易信息,也是交易存在的证据,当然假设客户在规定的时间*围内因*些原因而需要退货,我会记交易的更新操作进展撤消,回到交易前的状态。2. 流程图图4-4 销售登记流程图 图

27、4-5 销售退货流程图3. 代码实现1. 销售登记实现代码:protectedvoid Button1_Click(object sender, EventArgs e) SqlConnection conn = newSqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStringsyy*sstring.ToString(); conn.Open();Sqlmand cmd = newSqlmand(); cmd.Connection = conn; cmd.mandTe*t = insert int

28、o *iaoshou(客户ID,药品ID,销售量,销售时间,经手人) values( + DropDownList1.Te*t + , + DropDownList2.Te*t + , + float.Parse(Te*tBo*3.Te*t) + , + DateTime.Now.ToString() + , +Session us.ToString () + ); cmd.E*ecuteNonQuery(); conn.Close(); Response.Write(alert(操作成功!); Te*tBo*3.Te*t = ; 2.销售退货的实现代码:publicpartialclass*

29、iaoshoutuihuo : System.Web.UI.Pageprotectedvoid Page_Load(object sender, EventArgs e) protectedvoid Button1_Click(object sender, EventArgs e) Button TuiHuo = (Button)sender;string dingdan= TuiHuo.mandArgument.ToString();SqlConnection conn = newSqlConnection(); conn.ConnectionString = ConfigurationMa

30、nager.ConnectionStringsyy*sstring.ToString(); conn.Open();Sqlmand cmd = newSqlmand(); cmd.Connection = conn;string sql1 = select 药品ID from *iaoshou where 订单号= + dingdan + ; cmd.mandTe*t = sql1;string YaoPinID = cmd.E*ecuteScalar().ToString();string sql2 = select 销售量 from *iaoshou where 订单号= + dingda

31、n + ; cmd.mandTe*t = sql2;int *iaoLiang = (int)cmd.E*ecuteScalar(); cmd.mandTe*t = update yaopin set 库存量=库存量+ + *iaoLiang + where 药品ID= + YaoPinID + ; cmd.E*ecuteNonQuery(); cmd.mandTe*t = delete from *iaoshou where 订单号=+dingdan+; cmd.E*ecuteNonQuery(); DataBind(); conn.Close(); 4.4 销售查询和报表1. 设计说明可以

32、对每一次的销售情况进展查询,分按具体的日期查询和按交易客户的ID查询;而报表就是显示一段时间内的销售情况。2. 流程图图4-6 销售查询流程图 图4-7 销售报表流程图3. 代码实现销售报表:publicpartialclass*iaoshoubaobiao : System.Web.UI.Pageprotectedvoid Page_Load(object sender, EventArgs e) protectedvoid Button1_Click(object sender, EventArgs e) this.Calendar1.Visible = true; protectedvo

33、id Button2_Click(object sender, EventArgs e) this.Calendar2.Visible = true; protectedvoid Calendar1_SelectionChanged(object sender, EventArgs e) this.Te*tBo*1.Te*t = this.Calendar1.SelectedDate.ToShortDateString();this.Calendar1.Visible = false; protectedvoid Calendar2_SelectionChanged(object sender

34、, EventArgs e) this.Te*tBo*2.Te*t = this.Calendar2.SelectedDate.ToShortDateString();this.Calendar2.Visible = false; protectedvoid Button3_Click1(object sender, EventArgs e) SqlConnection conn = newSqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStringsyy*sstring.ToString(); c

35、onn.Open();string str = select * from *iaoshou where 销售时间 between + Te*tBo*1.Te*t + 00:00:00 and + Te*tBo*2.Te*t + 23:59:59;SqlDataAdapter sda = newSqlDataAdapter(str, conn);DataSet ds = newDataSet(); sda.Fill(ds, *iaoshou); GridView1.DataSource = ds.Tables*iaoshou; GridView1.DataBind(); 4.5 入库登记1.

36、设计说明本系统中,入库员有对药品进展入加的权限。入库药品时,先检仓库中是否存在这种药品的ID,假设存在可直接完成入库信息后,直接入库,假设无则不允许入库操作,并提示入库员添加该药品的信息,要在添加药品信息完成之前方可完成入库操作。另外一点:和销售登记一样,药品入库同样要考虑要数据库数据操作一致性的问题。仓管人员把药品入库时,仓库中相应药品ID的药品数量就要增加相应的数目,同时入库登记表中要添加相应的药品入库的记录,否则会给公司带来灾难性的后果,造成很大的损失。2. 流程图图4-8 入库登记流程图3. 代码实现protectedvoid Page_Load(object sender, Even

37、tArgs e) protectedvoid dlQuestions_ItemDataBound (objectsender,DataListItemEventArgse)protectedvoid Button1_Click(object sender, EventArgs e) SqlConnection conn = newSqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStringsyy*sstring.ToString(); conn.Open();Sqlmand amd = newSql

38、mand(); amd.Connection = conn; amd.mandTe*t = select * from yaopin where 药品ID=+Te*tBo*1.Te*t.Trim()+;SqlDataReader sdr= amd.E*ecuteReader();if (sdr.HasRows) sdr.Close();Sqlmand cmd = newSqlmand(); cmd.Connection = conn; cmd.mandTe*t = insert into ruku(药品ID,入库数量,入库时间,经手人) values( + Te*tBo*1.Te*t.Trim

39、() + , + int.Parse(Te*tBo*2.Te*t) + , + DateTime.Now.ToString() + ,+Sessionus.ToString()+); cmd.E*ecuteNonQuery();Sqlmand tmd = newSqlmand(); tmd.Connection = conn; tmd.mandTe*t = update yaopin set 库存量=库存量+ + int.Parse(Te*tBo*2.Te*t) + where 药品ID= + Te*tBo*1.Te*t.Trim() + ; tmd.E*ecuteNonQuery(); Response.Write(alert(入库成功!);); Te*tBo*1.Te*t = ; Te*tBo*2.Te*t = ; else Response.Write(alert(不存在此药品ID!);window.location.href=AddYaoPinInfo.asp*); sdr.Close(); conn.Close(); 5. 系统运行截图图5-1 登录界面图5-2 首页图5-3 查看员工信息图5-4 添加员工信息图5-5 修改员工信息图5-6 销售登记图5-7 销售退货图5-8 销售查询图5-9 销售报表图5-10 入库登记图 5-11 药品入库查询图5-1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号