收藏 分销(赏)

企业物资管理系统.doc

上传人:快乐****生活 文档编号:1677733 上传时间:2024-05-07 格式:DOC 页数:28 大小:2.92MB 下载积分:10 金币
下载 相关 举报
企业物资管理系统.doc_第1页
第1页 / 共28页
企业物资管理系统.doc_第2页
第2页 / 共28页


点击查看更多>>
资源描述
. 设计题目: 企业物资管理系统 一、开发平台:C#+ SQL SERVER 2005 二、功能要求: 1、设计内容 设计一个企业物资管理系统,该系统的用户由一般用户和管理员组成,不同的用户拥有不同的权限,各自完成各自的管理功能。首先是欢迎界面,然后选择登录,登录的时候首先要判断用户的身份,合法的用户然后进入到系统主界面中,不同的用户看到不同的系统功能。用SQL SERVER 2005创建后台数据库,然后利用程序设计语言(C#)编写程序实现对数据库的操作,按照要求完成所有的功能和模块。 2、企业物资管理系统主要功能 它包括编制采购计划、物资入库管理、物资出库管理、物资采购管理、清点库存、物资信息统计等功能。 (1)登录界面、用户注册界面。 (2)用户管理:物资入库界面(增)、物资出库界面(增)、物资信息查询界面、本用户密码的修改界面、部门信息查询界面 (3)管理员管理:计划管理界面(包含物资需求、库存、采购的增、删、改、查询)、物资管理界面(包含出库和入库的增、删、改、查询)、参数维护界面(对物资和部门的种类增、删、改、查询)、用户信息管理界面 3、物资管理信息系统数据库表单(表单和字段可以按照需求增、删、改) (1)用户信息表单,主要字段有:用户名、密码、用户身份(管理员和普通用户) (2)物资需求表单,主要字段:部门编号(外码)、物资编号(外码)、需求数量 (3)物资库存表单,主要字段:物资编号(主码,外码)、物资名称、规格号、库存数量、仓库 (4)采购计划表单,主要字段有:物资编号(主码,外码)、采购日期、采购数量 (5)物资表单,主要字段有:物资编号、名称、单价、单位、供应商 (6)部门信息表单,主要字段有:部门编号、部门名称、备注 (7)物资入库表单,主要字段有:物资编号(主码,外码)、物资名称、入库数量、入库时间、经办人、仓库 (8)物资出库表单,主要字段有:物资编号(外码)、部门编号(外码)、物资名称、出库数量、出库时间、经办人 三、课程设计报告主要内容: 1 企业物资管理系统需求分析(给出系统的功能模块图,对各功能作出详细介绍) 2 企业物资管理系统界面设计(给出界面截图及其主要控件的属性设置表格) 3 企业物资管理系统数据库设计(给出数据库各个表单中数据的字段名,数据类型及其相应的说明) 4 企业物资管理系统程序设计(功能模块给出详细的代码,重点语句的注释) 目录 1. 企业物资管理系统需求分析 1 1.1欢迎界面 2 1.2用户管理界面 2 1.2.1物资入库界面 2 1.2.2物资出库界面 2 1.2.3物资信息查询界面 2 1.2.4部门信息查询界面 2 1.2.5本用户密码修改界面 2 1.3管理员管理界面 3 1.3.1物资需求界面 3 1.3.2库存界面 3 1.3.3采购界面 3 1.3.4出库界面 3 1.3.5入库界面 3 1.3.6物资界面 3 1.3.7部门界面 4 1.3.8用户界面 4 2.企业物资管理系统界面设计 4 2.1欢迎界面 4 2.2用户管理界面 6 2.3管理员管理界面 8 2.4界面主要空间属性 12 3.企业物资管理系统数据库设计 12 4.企业物资管理系统程序设计(部分代码) 14 4.1欢迎界面 15 4.2用户管理界面程序设计 16 4.3管理员管理界面 19 小 结 24 参考文献 25 精选范本 1. 企业物资管理系统需求分析 欢迎界面 用户登录进入用户管理界面 管理员登录进入管理员管理界面 用户注册 物资入库 物资出库 物资信息查询 部门信息查询 本用户密码修改 物资需求增删查改 库存增删查改 采购增删查改 出库增删查改 入库增删查改 物资增删查改 部门增删查改 用户信息查询 图1.1企业物资管理系统功能模块图 1.1欢迎界面 选中欢迎界面中管理员登录按钮便以管理员身份登录 ,选中用户登录按钮便以用户身份登录,选中用户注册按钮便可以注册,然后再进行用户登录。 1.2用户管理界面 以用户身份登陆后就可以进入用户管理界面。用户可以进行物资入库、物资出库、物资信息查询、部门信息查询、本用户密码修改等操作。 1.2.1物资入库界面 用户可以对要入库的物资进行增加操作。 1.2.2物资出库界面 用户可以对要出库的物资进行增加操作。 1.2.3物资信息查询界面 用户可以通过对物资名称的模糊查询和物资编号的查询进行对物资信息的查询操作。 1.2.4部门信息查询界面 用户可以通过对部门名称的模糊查询和部门编号的查询进行对物资信息的查询操作。 1.2.5本用户密码修改界面 本用户密码修改分别由账户、密码、新密码、确认新密码等组成。用户首先要输入自己的账号和密码,然后进行密码修改。如果账户和密码不正确,其文本框会自动清空,并提示错误。若新密码和确认新密码不相同,其文本框也会清空,系统会报出错误要求重新输入。 1.3管理员管理界面 进行管理员登陆正确后便可以进入管理员管理界面。在这个界面中,管理员可以进行物资需求、库存、采购、出库、入库、物资和部门的增、删、查、改等操作以及用户界面的查询操作。 1.3.1物资需求界面 管理员可以通过对物资需求信息的增、删、查、改来管理企业的物资需求。 1.3.2库存界面 管理员可以通过对库存信息的增、删、查、改来管理企业的库存。 1.3.3采购界面 管理员可以通过对采购信息的增、删、查、改来管理企业的采购。 1.3.4出库界面 管理员可以通过对出库信息的增、删、查、改来管理企业的出库。 1.3.5入库界面 管理员可以通过对入库信息的增、删、查、改来管理企业的入库。 1.3.6物资界面 管理员可以通过对物资信息的增、删、查、改来管理企业的物资。 1.3.7部门界面 管理员可以通过对部门信息的增、删、查、改来管理企业的部门。 1.3.8用户界面 管理员可以通过对用户信息的查询来查看企业的用户情况。 2.企业物资管理系统界面设计 2.1欢迎界面 图2.1.1 欢迎界面 图2.1.2 管理员登录界面 图2.1.3 用户登录界面 图2.1.4 用户注册界面 2.2用户管理界面 图2.2.1 用户管理界面 图2.2.2 物资入库界面 图2.2.3 物资出库界 图2.2.4 物资信息查询界面 图2.2.5部门信息查询界面 图2.2.6 本用户密码修改界面 2.3管理员管理界面 图2.3.1 管理员管理界面 图2.3.1 物资需求管理界面 图2.3.2 库存信息管理界面 图2.3.3 采购信息管理界面 图2.3.4 管理员管理界面 图2.3.5 入库信息管理界面 图2.3.6 物资信息管理界面 图2.3.7 部门信息管理界面 图2.3.8 用户信息管理界面 2.4界面主要空间属性 表2.1 登陆界面主要控件属性表 对象 属性名 属性值 Label1 Text 账户 Label2 Text 密码 Button1 Text 确定 Button2 Text 退出 表2.2增删改查管理页面属性 Name 属性 设置值 Label1 Text **信息管理 DataGridView1 Text 从数据库导入表 Button1 Text 增 Button2 Text 删 Button3 Text 改 Button4 Text 查 Button5 Text 退出 表2.3本用户密码修改界面页面属性 Name 属性 设置值 Label1 Text 账户 Label2 Text 密码 Label3 Text 新密码 Label4 Text 确认新密码 Button1 Text 确认 Button2 Text 退出 3.企业物资管理系统数据库设计 企业物资管理系统总共涉及8张表,分别是用户信息表单、物资需求表单、物资库存表单、采购计划表单、物资表单、物资表单、物资入库表单、物资出库表单。 表3.1用户信息表单 字段名称 字符类型 长度 是否为空 完整性 用户名 nchar 10 否 <pk> 密码 nchar 10 否 非空 身份 nchar 10 否 非空 表3.2物资需求表单 字段名称 字符类型 长度 是否为空 完整性 部门编号 nchar 10 否 <fk> 物资编号 nchar 10 否 <fk> 需求数量 int 否 非空 表3.3物资库存表单 字段名称 字符类型 长度 是否为空 完整性 物资编号 char 10 否 <pk><fk> 物资名称 varchar 12 否 非空 规格号 char 10 否 非空 库存数量 int 否 非空 仓库 varchar 30 否 非空 表3.4采购计划表单 字段名称 字符类型 长度 是否为空 完整性 物资编号 nchar 10 否 <pk><fk> 采购时期 datetime 否 非空 采购数量 int 否 非空 表3.5物资表单 字段名称 字符类型 长度 是否为空 完整性 物资编号 nchar 10 否 非空 名称 nchar 10 否 非空 单位 nchar 10 否 非空 单价 nchar 10 否 非空 供应商 nchar 10 否 非空 表3.6部门信息表单 字段名称 字符类型 长度 是否为空 完整性 部门编号 nchar 10 否 非空 部门名称 nchar 10 否 非空 备注 nchar 10 是 表3.7物资入库表单 字段名称 字符类型 长度 是否为空 完整性 物资编号 nchar 10 否 <pk><fk> 物资名称 nchar 10 否 非空 入库数量 int 否 非空 入库时间 datetime 否 非空 经办人 nchar 10 否 非空 仓库 nchar 10 否 非空 表3.8物资出库表单 字段名称 字符类型 长度 是否为空 完整性 物资编号 nchar 10 否 <fk> 部门编号 nchar 10 否 <fk> 物资名称 nchar 10 否 非空 出库数量 nchar 10 否 非空 出库时间 nchar 10 否 非空 经办人 nchar 10 否 非空 4.企业物资管理系统程序设计(部分代码) 因为界面中的代码有很多都是相同的代码,所需实现的功能也相同,所以在写界面代码之前首先要定义一个类,把相同的代码写入,以便写界面代码时的调用。通用代码及注释如下: class DBOperation { SqlConnection conn = null; SqlCommand cmd = null; DataSet ds = new DataSet(); SqlDataAdapter sda = null; public DBOperation()//打开数据库 { string url = @"server=.\sql2005;database=qiyemanagement;uid=sa;pwd=whkjdx"; try { conn = new SqlConnection(url); conn.Open(); } catch { Console.WriteLine("数据库打开失败,请检查连接字符串 !"); } } public void Close()//关闭数据库 { if (conn.State != ConnectionState.Closed) { conn.Close(); } } public object getSingle(String sql) //验证登陆是否成功 { cmd = new SqlCommand(sql, conn); object o = cmd.ExecuteScalar(); return o; } public DataTable query(string sql) //用于查询填充 { sda = new SqlDataAdapter(sql, conn); sda.Fill(ds); return ds.Tables[0]; } public bool update(string sql) //验证增加、删除、修改等操作是否成功 { cmd = new SqlCommand(sql, conn); int n = cmd.ExecuteNonQuery(); return n >0; } } 4.1欢迎界面 进入欢迎界面后,用户可以选择用户登录按钮进入用户管理界面,没有账户和密码的用户可以选择用户注册按钮,注册成功后直接进入用户登录界面进行用户登录,进而进入用户管理界面。管理员要选择管理员登录按钮,输入账号和密码正确后才能进入管理员管理界面。 重要代码及注释如下: private void button1_Click(object sender, EventArgs e) { string name = textBox1.Text.Trim(); string pwd = textBox2.Text.Trim(); string idetity = "普通用户"; //在数据库中验证身份 string sql = "select count(*) from 用户信息表单 where 用户名='" + name + "' and 密码='" + pwd + "' and 用户身份='" + idetity + "'"; DBOperation dbcon = new DBOperation(); int n = Convert.ToInt32(dbcon.getSingle(sql)); if (n >= 1) { MessageBox.Show("登录成功!"); Frmusermanagement g = new Frmusermanagement(); g.Show(); this.Close(); } else { MessageBox.Show("登录失败!"); txtUserName.Clear(); txtPwd.Clear(); } dbcon.Close(); } 4.2用户管理界面程序设计 原理:用户管理界面可以进行物资入库、物资出库、物资信息查询、部门信息查询和本用户密码修改等操作。选择不同的按钮进入不同界面以实现不同的模块功能,进行操作后可以点击每个界面的退出按钮退出当前界面以进行其他界面操作。 重要代码及注释如下: 1、物资入库 private void btnoutput_Click(object sender, EventArgs e) { Try//排错 { string wuzibianhao = textBox1.Text.Trim(); string wuzimingcheng = textBox2.Text.Trim(); int rukushuliang = Convert.ToInt32(textBox3.Text.Trim()); string rukushijian = dateTimePicker1.Value.ToString(); string jingbanren = textBox5.Text.Trim(); string cangku = textBox6.Text.Trim(); //将输入的数据添加到表单中 string sql = "insert into 物资入库表单 values('" + wuzibianhao + "','" + wuzimingcheng + "'," + rukushuliang + ",'" + rukushijian + "','" + jingbanren + "','" + cangku + "')"; DBOperation dbcon = new DBOperation(); if (dbcon.update(sql)) { MessageBox.Show("添加物资成功!"); this.Close(); } else { MessageBox.Show("添加物资失败!"); } dbcon.Close(); } catch { MessageBox.Show("输入不能为空,且物资编号不能重复,请重新输入!"); } } 2、物资出库 private void btninput_Click(object sender, EventArgs e) { try { string wuzibianhao = textBox1.Text.Trim(); string bumenbianhao = textBox2.Text.Trim(); string wuzimingcheng = textBox3.Text.Trim(); int chukushuliang = Convert.ToInt32(textBox4.Text.Trim()); string chukushijian = dateTimePicker1.Value.ToString(); string jingbanren = textBox6.Text.Trim(); string sql = "insert into 物资出库表单 values('" + wuzibianhao + "','" + bumenbianhao + "','" + wuzimingcheng + "'," + chukushuliang + ",'" + chukushijian + "','" + jingbanren + "')"; DBOperation dbcon = new DBOperation(); if (dbcon.update(sql)) { MessageBox.Show("添加物资成功!"); this.Close(); } else { MessageBox.Show("添加物资失败!"); } dbcon.Close(); } catch { MessageBox.Show("输入不能为空,且物资编号不能重复,请重新输入!"); } } 3、物资信息查询 private void btnquerry_Click_1(object sender, EventArgs e) { string wuzimingcheng = textBox1.Text.Trim(); //按文本框中输入的文字在数据库中模糊查询 string sql = "select * from 物资表单 where 名称 like '%" + wuzimingcheng + "%'"; DBOperation dbcon = new DBOperation(); dataGridView1.DataSource = dbcon.query(sql); dbcon.Close(); } private void btnnumquerry_Click(object sender, EventArgs e) { string wuzibianhao = textBox3.Text.Trim(); //按文本框中输入的编号在数据库中查询 string sql = "select * from 物资表单 where 物资编号='" + wuzibianhao + "'"; DBOperation dbcon = new DBOperation(); dataGridView1.DataSource = dbcon.query(sql); dbcon.Close(); } private void FrmMaterialInfo_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“qiyemanagementDataSet19.物资表单”中。 this.物资表单TableAdapter.Fill(this.qiyemanagementDataSet19.物资表单); } 4、本用户密码修改 private void btnUserModify_Click(object sender, EventArgs e) { string name = txtUserName.Text.Trim(); string pwd = txtPwd.Text.Trim(); //验证输入的账户和密码是否正确 string sql = @"select count(*) from 用户信息表单 where 用户名='" + name + "' and 密码='" + pwd + "'"; DBOperation dbcon = new DBOperation(); int n = Convert.ToInt32(dbcon.getSingle(sql)); if (n <1) { MessageBox.Show("账户或密码不正确,请重新输入!"); txtUserName.Clear(); txtPwd.Clear(); return; } //验证新密码与却确认新密码是否相同 string pwd1 = txtNewPwd.Text.Trim(); string pwd2 = txtNewPwdDefault.Text.Trim(); if(pwd1!=pwd2 ) { MessageBox.Show("密码确认失败,请重新输入!"); txtNewPwd.Clear(); txtNewPwdDefault.Clear(); return; } string sql1 = "update 用户信息表单 set 密码='" + pwd1 + "' where 用户名='" + name + "'"; if (dbcon.update(sql1)) { MessageBox.Show("密码更改成功!"); this.Close(); } else { MessageBox.Show("密码更改失败!"); } dbcon.Close(); } 4.3管理员管理界面 原理:用户管理界面可以进行物资需求、库存、采购、出库、入库的增、删、改、查询和物资、部门的种类增、删、改、查询以及用户信息查询等操作。选择不同的按钮进入不同界面以实现不同的模块功能,进行操作后可以点击每个界面的退出按钮退出当前界面以进行其他界面操作。 管理员管理界面的代码主要实现的就是增删查改等功能,下面举例物资库存的增删查改,代码及注释如下: 1、 物资库存主界面代码 //将数据加载到数据库的“物资库存表单”中。 private void FrmRestore_Load(object sender, EventArgs e) { this.物资库存表单TableAdapter1.Fill(this.qiyemanagementDataSet7.物资库存表单); } //表中数据刷新 private void bindDGV() { DBOperation dbcon = new DBOperation(); string sql1 = "select * from 物资库存表单"; //绑定数据到表格 dataGridView1.DataSource = dbcon.query(sql1); dbcon.Close(); } //点击“增”按钮显示物资库存增加界面 private void btnadd_Click(object sender, EventArgs e) { FrmRestore1 a = new FrmRestore1(); a.ShowDialog(); bindDGV(); } //下面是在表中选中要删除的行数据的代码 private void btndelete_Click(object sender, EventArgs e) { DBOperation dbcon = new DBOperation(); string wuzibianhao = dataGridView1.SelectedRows[0].Cells[0].Value.ToString(); string sql = "delete from 物资库存表单 where 物资编号='" + wuzibianhao + "'"; if (dbcon.update(sql)) { MessageBox.Show("删除成功!"); bindDGV(); } else { MessageBox.Show("删除失败!"); } } //将选中行的数据传到物资修改界面进行修改,点击“改”按钮显示物资库存修改界面 private void btnupdate_Click(object sender, EventArgs e) { string wuzibianhao = dataGridView1.SelectedRows[0].Cells[0].Value.ToString(); string wuzimingcheng = dataGridView1.SelectedRows[0].Cells[1].Value.ToString(); string guigehao = dataGridView1.SelectedRows[0].Cells[2].Value.ToString(); int kucunshuliang = Convert.ToInt32(dataGridView1.SelectedRows[0].Cells[3].Value); string cangku = dataGridView1.SelectedRows[0].Cells[2].Value.ToString(); FrmRestore2 f = new FrmRestore2(wuzibianhao, wuzimingcheng, guigehao, kucunshuliang, cangku); f.ShowDialog(); bindDGV(); } //点击“查”按钮显示物资库存信息查询界面 private void btnselect_Click(object sender, EventArgs e) { FrmRestore3 g = new FrmRestore3(); g.ShowDialog(); bindDGV(); } //点击退出按钮,退出当前界面 private void btncancel_Click(object sender, EventArgs e) { this.Close(); } 2、物资库存增加界面代码 private void button2_Click(object sender, EventArgs e) { Try//排错 { string bumenbianhao = textBox9.Text.Trim(); string wuzibianhao = textBox10.Text.Trim(); string guigehao = textBox11.Text.Trim(); int xuqioushuliang = Convert.ToInt32(textBox12.Text.Trim()); string cangku = textBox13.Text.Trim(); string sql = "insert into 物资库存表单 values('" + bumenbianhao + "','" + wuzibianhao + "','" + guigehao + "'," + xuqioushuliang + ",'" + cangku + "')"; DBOperation dbcon = new DBOperation(); if (dbcon.update(sql)) { MessageBox.Show("添加成功!"); this.Close(); } else { MessageBox.Show("添加失败!"); } dbcon.Close(); } catch { MessageBox.Show("输入不能为空,且物资编号不能重复,请重新输入!"); } } //点击退出按钮,退出当前界面 private void button1_Click(object sender, EventArgs e) { this.Close(); } 3、物资库存修改界面代码 public FrmRestore2(string wuzibianhao, string wuzimingcheng,string guigehao, int kucunshuliang, string cangku) { InitializeComponent(); textBox1.Text = wuzibianhao; textBox2.Text = wuzimingcheng; textBox3.Text = guigehao; textBox4.Text = kucunshuliang.ToString(); textBox5.Text = cangku; } private void btnoutput_Click(object sender, EventArgs e) { string wuzibianhao = textBox1.Text; string wuzimingcheng = textBox2.Text; string guigehao = textBox3.Text; int kucunshuliang = int.Parse(textBox4.Text.ToString()); string cangku = textBox5.Text; string sql = "update 物资库存表单 set 物资名称='" + wuzimingcheng + "',规格号='" + guigehao + "',库存数量=" + kucunshuliang + ",仓库='" + cangku + "' where 物资编号='" + wuzibianhao + "'"; DBOperation dbcon = new DBOperation(); if (dbcon.update(sql)) { MessageBox.Show("修改成功!"); this.Close(); } else { MessageBox.Show("修改失败!"); } dbcon.Close(); } 3、物资库存查询界面代码 private void FrmRestore3_Load(object sender, EventArgs e) { // TODO: 这行代码将数据加载到表“qiyemanagementDataSet6.物资库存表单”中。 this.物资库存表单TableAdapter1.Fill(this.qiyemanagementDataSet6.物资库存表单); } private void btnquerry1_Click(object sender, EventArgs e) { string bumenbianhao = textBox1.Text.Trim(); string sql = "select * from 物资库存表单 where 物资编号='" + bumenbianhao + "'"; DBOperation dbcon = new DBOperation(); dataGridView1.DataSource = dbcon.query(sql); dbcon.Close(); } private void btnquerry_Click(object sender, EventArgs e) { string bumenmingcheng = textBox2.Text.Trim(); strin
展开阅读全文

开通  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 

客服