收藏 分销(赏)

医药销售管理系统样本.doc

上传人:a199****6536 文档编号:3915389 上传时间:2024-07-23 格式:DOC 页数:37 大小:3.87MB 下载积分:12 金币
下载 相关
医药销售管理系统样本.doc_第1页
第1页 / 共37页
医药销售管理系统样本.doc_第2页
第2页 / 共37页


点击查看更多>>
资源描述
XXXXXX学 XXXXX 数据库课程设计说明书 医药销售管理系统 班级:XXXX 组员:XXXXXXX 摘要 本系统采取Visual Studio .Net 为开发工具,开发医药销售管理系统,适适用于现在药品销售业领域。开发医药销售管理系统能够提升药品销售管理工作效率、扩大服务范围、增加药店收入、立即获取信息、降低决议失误、降低库存积压、提升职员素质。能够立即提供药品基础信息、库存信息、入库信息和药品销售信息。在此基础上,经过对多种信息综合分析,以改善药品品种、提升服务质量、满足前来购药用户不一样要求,使药店管理向高质量、科学化发展。对提升仓储管理工作效率和对市场反应能力,能高效益、低库存、确保服务质量地满足药店药品销售日常管理需要,使其采取现代化管理手段以适应药店药品批发、零售业发展。 【关键词】:销售管理;数据库;.NET Abstract The System adopts Visual Studio .Net as the developing instrument to develop the Medicine Sell Administrat System, which is suitable for the present medicines merchandising business field. Can raise the working efficiency of selling management of medicines to sell the administrative system while developing drugstore medicines, expand service range , increase drugstore income , obtain information , reduce decision fault , reduce stock , promote quality of staff in time. Can offer the medicines basic information , stock information , selling operation information and financial information of drugstore in time . On this basis, through to various information of comprehensive analyses, in order to improve medicines variety , raise service quality , meet , come , purchase medicine different requirements of customer, make the drugstore managed to high quality , 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 management selling in batches , development of the retail business in order to adapt to drugstore medicines. 【Keywords】:Sale Management ; Database ; .Net 1. 引言 医药是相关人类同疾病作斗争和促进健康科学,而制药工业则负责生产药品。制药工业既是国民经济一个部门,又是一项治病、防病、保健、计划生育社会福利事业。伴随大家生活水平和制药水平不停提升,大家对医药消费和需求也越来越旺盛,世界制药工业也保持庞大市场需求和生产规模。多年来,中国医药销售市场发展迅猛。巨大市场容量和可观经济效益,引发各制药厂家纷纷加大投资,研究新配方,医药市场立即烽烟四起,竞争是空前猛烈。在如此形式下,介于生产厂家和消费者之间医药销售企业在医药事业中发挥了至关关键作用。 1.1 系统开发背景和意义 各医药销售企业全部有它们自己管理、销售、财务等职能部门。怎样管理好这些部门,使整个企业协调一致、高效率地运转,是各企业急待处理问题。但有业务步骤仍然利用人工记账传统措施,既轻易犯错又会造成账目混乱,查询和统计起来很不方便,费时又费力,严重时会给企业造成难以挽回损失。像这么初级企业管理方法,已远跟不上销售政策和销售形势发展需要。所以,怎样对医药销售管理提供一整套管理方法达成提升效率和降低成本问题成为焦点。医药销售管理系统提出,对医药销售企业来讲意义重大。它不仅能使各业务步骤协调一致,而且操作简单,账目清楚,经过账目查询,企业能在最短时间内取得市场信息,从而制订对应决议。 1.2 系统目标 本系统是以药品基础信息为主体,以销售药品操作人员为服务对象,经过对多种入库和销售信息管理操作,需要实现以下目标: 一、实现基础信息管理:药品信息管理,职员信息管理,用户信息管理,供给商信息管理; 二、实现进货管理:入库登记,入库登记查询,入库报表; 三、实现销售管理:销售登记,销售退货,销售报表,和对应查询; 四、系统维护。 2. 需求分析 2.1 系统需求 本医药销售管理系统是一个帮助医药销售商对各职能部门及业务步骤进行全方面管理一个信息管理系统。首先要处理传统管理方法轻易造成档案资料遗失,控制不集中,管理不规范等问题。所以,本管理系统在实现上应满足以下需求: 1.能达成各销售业务步骤之间无缝链接和数据共享。 2.为系统提供数据支持。 3.不一样类型用户拥有对应不一样权限使用该系统,从而大大提升了系统安全性和管理效率。 4.能确保整个系统构架稳定性和安全性。 2.2 功效需求 2.2.1 功效需求分析 首先是操作人员将药品信息入库,然后医药销售企业销售人员经过和药品需求商(即用户)交易活动,将相关交易信息存入数据库。企业管理人员能够查询药品销售多种信息统计,分析销售运转情况。由此可分析系统需要达成以下目标: 1. 能很好地完成药品售前管理如药品入库时具体信息登记。 2. 能具体地统计用户和企业之间交易过程和相关信息。 3. 能立即正确地取得药品在某阶段盈亏情况和市场需求走势。即经过对药品销售、药品进货、药品退货等信息查询取得对应结果,以备企业作为参考,从而制订出对应策略。 4. 能够对不一样权限用户进行合理管理。包含添加用户,查看用户密码等等。 2.2.2 功效模块划分 系统关键划分为3个模块,分别为信息管理模块,进货管理模块和销售管理模块。不一样模块划分有不一样功效,具体如功效图1-1所表示: 医药销售管理系统 信息管理模块 进货管理模块 销售管理模块 药品信息管理 职员信息管理 用户信息管理 供给商信息管理 入库登记 入库登记查询 入库报表 销售登记 销售退货 销售报表 功效图1-1 2.2.3 用户分类及功效权限划分 本医药销售管理系统把用户划分为3个角色,分别为管理员、入库操作员和销售员。对于不用类型用户,分别划分了不一样权限和不一样功效,确保了数据安全,让销售能正常运转。 管理员所分配功效权限如用例图2-1 图2-1 管理员用例图 入库操作员所分配功效权限如用例图2-2 图2-2 入库员用例图 销售员所分配功效权限如用例图2-3 图2-3 销售员用例图 2.2.4 系统大约步骤 在进入本医药销售管理系统之前,首先要进行职员编号和密码输入 和用户类型选择,假如输入信息有误,则不能进行登录;只要在全部条件全部满足下情况下,用户才能成功登录;成功登录后,不用类型用户会进入对应管理页面,然后能够进行各自功效操作。大约系统工作步骤如步骤图3-1: 步骤图3-1 2.3 运行需求 因为本系统是基于B/S结构Web应用程序,所以对于用户电脑配置要求不高,只要配置有IE6以上或Netscape等浏览器,便能访问该医药销售管理系统;而服务器方面,因为考虑到为避免因为服务器原因造成系统无法访问,影响医药销售正常运转,所以推荐使用IBM服务器,能够确保系统二十四小时能够正常运行,不会出现异常情况。 3. 概要设计 3.1 数据库设计 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 职员表 字段名称 字段类型 备注 职员ID Nchar(10) 职员编号,长度为10,主键 职员姓名 Nchar(10) 职员姓名,长度为10,可为空 职员性别 Nchar(10) 职员性别,长度为10,可为空 年纪 Nchar(10) 职员年纪,长度为10,可为空 联络电话 Nchar(10) 职员联络电话,长度为10,可为空 密码 Varchar(MAX) 职员登录密码,不可为空 职员权限 Nchar(10) 职员权限,admin表示管理员,saler表示销售员,addinfo表示入库员 2. 用户表:用于存放购置药品用户信息,具体表结构如表3-2 表3-2 用户表 字段名称 字段类型 备注 用户ID Nchar(10) 用户编号,长度为10,主键 用户名称 Nchar(10) 用户名称,长度为10,不能为空 联络电话 Nchar(15) 用户联络电话,长度为15,不能为空 联络地址 Nchar(20) 用户联络地址,长度为20,不能为空 3. 供给商表:用于存放供给商信息,具体表结构如表3-3 表3-3 供给商表 字段名称 字段类型 备注 供给商ID Nchar(10) 供给商编号,长度为10,主键 供给商名称 Nchar(10) 供给商名称,长度为10,不能为空 联络电话 Nchar(15) 供给商联络电话,不能为空 联络地址 Nchar(20) 供给商联络地址,不能为空 4. 药品表:用于存放仓库内每种药品信息,具体表结构如表3-4 表3-4 药品表 字段名称 字段类型 备注 药品ID Nchar(10) 仓库内药品编号,主键 药品名 Nchar(10) 药品名称,长度为10,不能为空 价格 float 药品价格,浮点型,不能为空 库存量 Int 药品库存量,整型,不能为空 供给商 Nchar(10) 药品供给商,长度为10,不能为空 单位 Nchar(10) 药品单位,长度为10,不能为空 规格 Nchar(10) 药品规格,长度为10,不能为空 5. 入库记录表:存放药品入库统计,具体表结构如表3-5 表3-5 入库记录表 字段名称 字段类型 备注 药品ID Nchar(10) 入库药品ID,长度为10,不能为空 入库时间 Nvarchar(50) 药品入库时间,长度为50,不能为空 入库数量 Int 药品入库数量,整型,不能为空 经手人 Nchar(10) 入库操作经手人,可为空 6. 销售记录表:存放药品销售统计,具体表结构如表3-6 表3-6 销售记录表 字段名称 字段类型 备注 订单号 Int 交易订单号,整型,主键,自动生成 药品ID Nchar(10) 销售药品ID,长度为10,不能为空 销售量 Int 药品销售量,整型,不能为空 销售时间 Nvarchar(50) 药品销售时间,长度为50,不能为空 用户ID Nchar(10) 购置该药品用户编号,长度为10,不能为空 经手人 Nchar(10) 销售操作经手人,长度为10,可为空 3.2 数据字典 1.外部实体条目如表3-7(注:职员、用户、供给商、药品编号各自独立) 表3-7 名称 权限类型 输入数据流 输出数据流 管理员 Admin 登录信息 无 入库员 addinfo 登录信息 无 销售员 saler 登录信息 无 用户 - 用户信息 无 供给商 - 供给商信息 无 药品 - 药品信息 无 2.数据流条目如表3-8 表3-8 名称 功效 输入数据流 输出数据流 职员信息 添加,查看职员信息 管理员 管理员 用户信息 添加,查看用户信息 销售人员 管理员,销售员 销售订单 添加,查看订单信息 销售人员 管理员,销售员 药品信息 添加,查看药品信息 管理员 管理员 3.处理过程条目如表3-9 表3-9 名称 数据流起源 数据流去向 添加职员 管理员 数据库职员表 添加用户 管理员 数据库用户表 药品入库 入库员 数据库药品表,入库表 查看职员信息 数据库 管理员 查看用户信息 数据库 销售员 查看订单信息 数据库 管理员、销售员 查看仓库库存 数据库 管理员、销售员、入库员 查看入库统计 数据库 管理员,入库员 4. 系统关键具体设计 4.1 用户登录 1. 设计说明 进入本医药销售管理系统,首先必需要进行用户登录。用户登录要输入用户ID、登录密码任一项输入信息和数据库中统计不全部会造成登录失败,当输入信息全部完全匹配了,经过用代码获取权限字段,经过检权限字段跳转到相用户界面 2. 步骤图 图4-1 登陆步骤图 3. 代码实现 protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn =new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); SqlCommand cmd=new SqlCommand(); cmd.CommandText="select * from [yuangong] where 职员ID='"+TextBox1.Text+"'and 密码='"+TextBox2.Text+"'"; cmd.Connection=conn; SqlDataReader sr=cmd.ExecuteReader(); if (sr.Read()) { Session["user"] = this.TextBox1.Text; Session["password"] = this.TextBox2.Text; Session["us"] = sr.GetString(1).Trim(); Session["power"] = sr.GetString(6).Trim(); string power=Session ["power"].ToString (); if (power.Equals("admin")) { Response.Redirect("mlogin.aspx"); } else if (power.Equals("saler")) { Response.Redirect("slogin.aspx"); } else { Response.Redirect("alogin.aspx"); } } else { Response.Write("<Script language='javascript'>alert('用户名或密码不正确!')</script>"); } } protected void Button2_Click(object sender, EventArgs e) { TextBox1.Text = ""; TextBox2.Text = ""; } } 4.2 职员添加和删除 1. 设计说明 本系统中,管理员有添加职员权限。添加职员,首先要输入职员ID号,职员姓名,选择职员工作类型,职员联络方法及职员性别等信息。为避免反复录入同一个职员信息,造成数据库犯错,该功效设计中最关键一点是当管理员输入职员ID号同时,系统会自动检测数据库中职员表中统计,若存在匹配职员ID号,则不许可管理员向数据库添加该职员信息,并提醒管理员检验待添加职员ID号。对于要删除职员,选中所要删除职员并确定以后,可直接删除。 2. 步骤图 图4-2 添加职员步骤图 图 4-3 删除职员步骤图 3. 代码实现 添加职员信息,在输入职员编号后,系统会自动检测职员是否存在: protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); SqlCommand smd = new SqlCommand(); smd.Connection = conn; smd.CommandText = "select * from yuangong where 职员ID='" + TextBox1.Text.Trim() + "'"; SqlDataReader sd = smd.ExecuteReader(); if (!sd.HasRows) { sd.Close(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "insert into yuangong(职员ID,职员姓名,职员性别,年纪,联络电话,密码,职员权限) values('" + TextBox1.Text.Trim() + "','" + TextBox2.Text.Trim() + "','" + TextBox3.Text.Trim() + "','" + TextBox4.Text.Trim() + "','" + TextBox5.Text.Trim() + "','" + TextBox6.Text.Trim() + "','" + TextBox7.Text.Trim() + "')"; cmd.ExecuteNonQuery(); Response.Write("<script>alert('操作成功!')</script>"); TextBox1.Text = ""; TextBox2.Text = ""; TextBox3.Text = ""; TextBox4.Text = ""; TextBox5.Text = ""; TextBox6.Text = ""; TextBox7.Text = ""; } else { Response.Write("<script>alert('职员ID已存在')</script>"); } conn.Close(); sd.Close(); } 4.3 销售登记和退货 1. 设计说明 对于每一次销售交易,首先自动生成对应订单号,由销售员完成订单其它信息输入。订单统计了交易信息,也是交易存在证据,当然若用户在要求时间范围内因一些原所以需要退货,我会记交易更新操作进行撤消,回到交易前状态。 2. 步骤图 图4-4 销售登记步骤图 图4-5 销售退货步骤图 3. 代码实现 1. 销售登记实现代码: protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "insert into xiaoshou(用户ID,药品ID,销售量,销售时间,经手人) values('" + DropDownList1.Text + "','" + DropDownList2.Text + "'," + float.Parse(TextBox3.Text) + ",'" + DateTime.Now.ToString() + "','" +Session ["us"].ToString () + "')"; cmd.ExecuteNonQuery(); conn.Close(); Response.Write("<script>alert('操作成功!')</script>"); TextBox3.Text = ""; } 2.销售退货实现代码: public partial class xiaoshoutuihuo : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { Button TuiHuo = (Button)sender; string dingdan= TuiHuo.CommandArgument.ToString(); SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; string sql1 = "select 药品ID from xiaoshou where 订单号='" + dingdan + "'"; cmd.CommandText = sql1; string YaoPinID = cmd.ExecuteScalar().ToString(); string sql2 = "select 销售量 from xiaoshou where 订单号='" + dingdan + "'"; cmd.CommandText = sql2; int XiaoLiang = (int)cmd.ExecuteScalar(); cmd.CommandText = "update yaopin set 库存量=库存量+" + XiaoLiang + "where 药品ID='" + YaoPinID + "'"; cmd.ExecuteNonQuery(); cmd.CommandText = "delete from xiaoshou where 订单号='"+dingdan+"'"; cmd.ExecuteNonQuery(); DataBind(); conn.Close(); } } 4.4 销售查询和报表 1. 设计说明 能够对每一次销售情况进行查询,分按具体日期查询和按交易用户ID查询;而报表就是显示一段时间内销售情况。 2. 步骤图 图4-6 销售查询步骤图 图4-7 销售报表步骤图 3. 代码实现 销售报表: public partial class xiaoshoubaobiao : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { this.Calendar1.Visible = true; } protected void Button2_Click(object sender, EventArgs e) { this.Calendar2.Visible = true; } protected void Calendar1_SelectionChanged(object sender, EventArgs e) { this.TextBox1.Text = this.Calendar1.SelectedDate.ToShortDateString(); this.Calendar1.Visible = false; } protected void Calendar2_SelectionChanged(object sender, EventArgs e) { this.TextBox2.Text = this.Calendar2.SelectedDate.ToShortDateString(); this.Calendar2.Visible = false; } protected void Button3_Click1(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); string str = "select * from xiaoshou where 销售时间 between '" + TextBox1.Text + " 00:00:00' and '" + TextBox2.Text + " 23:59:59'"; SqlDataAdapter sda = new SqlDataAdapter(str, conn); DataSet ds = new DataSet(); sda.Fill(ds, "xiaoshou"); GridView1.DataSource = ds.Tables["xiaoshou"]; GridView1.DataBind(); } } 4.5 入库登记 1. 设计说明 本系统中,入库员有对药品进行入加权限。入库药品时,先检仓库中是否存在这种药品ID,若存在可直接完成入库信息后,直接入库,若无则不许可入库操作,并提醒入库员添加该药品信息,要在添加药品信息完成以后方可完成入库操作。另外一点:和销售登记一样,药品入库一样要考虑要数据库数据操作一致性问题。仓管人员把药品入库时,仓库中对应药品ID药品数量就要增加对应数目,同时入库记录表中要添加对应药品入库统计,不然会给企业带来灾难性后果,造成很大损失。 2. 步骤图 图4-8 入库登记步骤图 3. 代码实现 protected void Page_Load(object sender, EventArgs e) { } protected void dlQuestions_ItemDataBound (objectsender,DataListItemEventArgse){ protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["yyxsstring"].ToString(); conn.Open(); SqlCommand amd = new SqlCommand(); amd.Connection = conn; amd.CommandText = "select * from yaopin where 药品ID='"+TextBox1.Text.Trim()+"'"; SqlDataReader sdr= amd.ExecuteReader(); if (sdr.HasRows) { sdr.Close(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "insert into ruku(药品ID,入库数量,入库时间,经手人) values('" + TextBox1.Text.Trim() + "'," + int.Parse(TextBox2.Text) + ",'" + DateTime.Now.ToString() + "','"+Session["us"].ToString()+"')"; cmd.ExecuteNonQuery(); SqlCommand tmd = new SqlCommand(); tmd.Connection = conn; tmd.CommandText = "update yaopin set 库存
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服