C#Winform+SqlServer仓库管理系统

自己做的一个仓库管理系统,有管理员和教师两个角色。主要的模块分为登录模块、用户管理模块、货物入库模块、货物出库模块、货物管理模块
系统中还有一些小问题,目前还没有完善,有宝贵的意见欢迎指出
qq+9746821

表结构设计

管理员表
在这里插入图片描述

教师表
在这里插入图片描述
入库表
在这里插入图片描述
出库(待领货物)表
在这里插入图片描述
仓库表
在这里插入图片描述
货物品种表
在这里插入图片描述
我的(已领)货物表
在这里插入图片描述

登录模块

在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class Login : Form
    {
        public Login()
        {
            InitializeComponent();
        }
        string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";

        //登录验证
        private void Btn_login_Click(object sender, EventArgs e)
        {
            try
            {
                if (Txt_userName.Text == "" || Txt_passWord.Text == "")
                {
                    MessageBox.Show("用户名或密码不能为空,请重新输入!", "提示");
                }
                else
                {
                    SqlConnection cn = new SqlConnection(cnstr);
                    cn.Open();
                    string userName = Txt_userName.Text.Trim();
                    string passWord = Txt_passWord.Text.Trim();
                    SqlCommand cmd = new SqlCommand("", cn);
                    // 管理员登录
                    if (Radio_admin.Checked == true)
                    {
                        sql = "select count(*) from Table_admin where userName='" + userName + "' and passWord= '" + passWord + "'";
                        cmd.CommandText = sql;
                        int result = (int)cmd.ExecuteScalar();
                        if (result>0)
                        {
                            this.Visible = false;
                            Main m1 = new Main();
                            m1.toolStripStatusLabel2.Text = "管理员";
                            m1.toolStripStatusLabel3.Text = Txt_userName.Text;
                            m1.toolStripStatusLabel4.Text = DateTime.Now.ToString();
                            m1.Show();
                        }
                        else
                        {
                            MessageBox.Show("用户名或密码错误", "警告");
                        }
                    }
                    //教师登录
                    else if (Radio_teacher.Checked == true)
                    {
                        sql = "select count(*) from Table_teacher where userName='" + userName + "' and passWord= '" + passWord + "'";
                        cmd.CommandText = sql;
                        int result = (int)cmd.ExecuteScalar();
                        if (result > 0)
                        {
                            this.Visible = false;
                            Main m1 = new Main();
                            m1.toolStripStatusLabel2.Text = "教师";
                            m1.toolStripStatusLabel3.Text = Txt_userName.Text;
                            m1.toolStripStatusLabel4.Text = DateTime.Now.ToString();
                            m1.Show();
                            m1.Tag = this.FindForm();
                            m1.添加用户ToolStripMenuItem.Visible = false;
                            m1.浏览用户ToolStripMenuItem.Visible = false;
                            m1.入库管理ToolStripMenuItem.Visible = false;
                            m1.出库管理ToolStripMenuItem.Visible = false;
                            m1.库存管理ToolStripMenuItem.Visible = false;
                            
                        }
                        else
                        {
                            MessageBox.Show("用户名或密码错误", "警告");
                        }
                    }
                    cn.Dispose();
                    cmd.Dispose();
                    cn.Close();
                }
                
            }
            catch (Exception e1)
            {
                MessageBox.Show(e1.Message,"提示");
            }
            

        }
        //退出程序
        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        注册用户验证
        //public void regist()
        //{
        //    string userName = Txt_userName.Text.Trim();
        //    string passWord = Txt_passWord.Text.Trim();

        //    try
        //    {
        //        if (userName != "" && passWord != "")
        //        {
        //            SqlConnection cn = new SqlConnection(cnstr);
        //            cn.Open();

        //            string sql = "insert into Table_login values('" + userName + "','" + passWord + "')";
        //            SqlCommand cmd = new SqlCommand(sql, cn);
        //            int count = cmd.ExecuteNonQuery();
        //            if (count > 0)
        //            {
        //                MessageBox.Show("注册成功!", "提示");
        //                resetTxt();
        //            }
        //            else
        //                MessageBox.Show("注册失败", "提示");
        //            cn.Dispose();
        //        }
        //        else
        //        {
        //            MessageBox.Show("用户名不能为空,且两次密码输入必须一致!", "提示");
        //        }
        //    }
        //    catch (Exception e1)
        //    {
        //        MessageBox.Show(e1.Message, "提示");
        //    }
        //}

        注册的数据库操作
        //private void Btn_register_Click(object sender, EventArgs e)
        //{
        //    string userName = Txt_userName.Text.Trim();
        //    SqlConnection cn = new SqlConnection(cnstr);
        //    cn.Open();
        //    string sql = "select count(*) from Table_login where userName='" + userName + "'";
        //    SqlCommand cmd = new SqlCommand(sql, cn);
        //    int count = (int)cmd.ExecuteScalar();
        //    if (count > 0)
        //    {
        //        MessageBox.Show("注册失败,该用户已存在!", "提示");
        //    }
        //    else
        //    {
        //        regist();
        //    }
        //    cn.Dispose();
        //    cn.Close();
        //}

        重置用户名、密码的方法
        //public void resetTxt()
        //{
        //    this.Txt_userName.Text = "";
        //    this.Txt_passWord.Text = "";
        //}

        //登录的用户身份
        private void Radio_teacher_Click(object sender, EventArgs e)
        {
            Radio_admin.Checked = false;
            Radio_teacher.Checked = true;
        }

        private void Radio_admin_Click(object sender, EventArgs e)
        {
            Radio_admin.Checked = true;
            Radio_teacher.Checked = false;
        }

        private void Login_Load(object sender, EventArgs e)
        {
            Txt_userName.Text = "admin";
            Txt_passWord.Text = "asdf";
        }
    }
}

主界面

在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class Main : Form
    {
        public Main()
        {
            InitializeComponent();
        }
        // 添加用户
        private void 添加用户ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            AddUser addUser = new AddUser();
            addUser.MdiParent = this;
            addUser.WindowState = FormWindowState.Maximized;
            addUser.Show();
        }

        private void 浏览用户ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            BrowseUser browseUser = new BrowseUser();
            browseUser.MdiParent = this;
            browseUser.WindowState = FormWindowState.Maximized;
            browseUser.Show();
        }

        private void 修改密码ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ModifyCode modifyCode = new ModifyCode();
            modifyCode.MdiParent = this;
            modifyCode.WindowState = FormWindowState.Maximized;
            modifyCode.label5.Text = toolStripStatusLabel2.Text.Trim();
            modifyCode.Show();
        }

        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void 商品管理ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Goods goods = new Goods();
            goods.MdiParent = this;
            goods.WindowState = FormWindowState.Maximized;
            goods.Show();
        }

        private void 商品入库ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            EntryWarehouse entryWarehouse = new EntryWarehouse();
            entryWarehouse.MdiParent = this;
            entryWarehouse.WindowState = FormWindowState.Maximized;
            entryWarehouse.Show();
        }

        private void 订单出库ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OutWarehouse outWarehouse = new OutWarehouse();
            outWarehouse.MdiParent = this;
            outWarehouse.WindowState = FormWindowState.Maximized;
            outWarehouse.Show();
        }

        private void 库存管理ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            StockManage stockManage = new StockManage();
            stockManage.MdiParent = this;
            stockManage.WindowState = FormWindowState.Maximized;
            stockManage.Show();
        }

        private void 待领物资ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            DrawMaterial drawMaterial = new DrawMaterial();
            drawMaterial.MdiParent = this;
            drawMaterial.WindowState = FormWindowState.Maximized;
            drawMaterial.label11.Text = toolStripStatusLabel3.Text.Trim();
            drawMaterial.Show();
        }

        private void 我的货物ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ManageMaterials manageMaterials = new ManageMaterials();
            manageMaterials.MdiParent = this;
            manageMaterials.WindowState = FormWindowState.Maximized;
            manageMaterials.label2.Text = toolStripStatusLabel3.Text.Trim();
            manageMaterials.Show();
        }

        private void 帮助ToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            Help help = new Help();
            help.Show();
        }

    }
}

用户管理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class AddUser : Form
    {
        public AddUser()
        {
            InitializeComponent();
        }
        string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";
        // 添加用户操作
        private void Btn_add_Click(object sender, EventArgs e)
        {
            try
            {
                if (Txt_userName.Text.Trim() == "" || Txt_passWord.Text.Trim() == "" || Txt_check.Text.Trim() == "" ||
                Radio_admin.Checked == false && Radio_teacher.Checked == false)
                {
                    MessageBox.Show("请输入完整信息!", "警告");
                }
                //添加管理员
                else if (Radio_admin.Checked == true)
                {
                    if (Txt_passWord.Text.Trim() != Txt_check.Text.Trim())
                    {
                        MessageBox.Show("两次密码输入不一致!", "警告");
                    }
                    else
                    {
                        SqlConnection cn = new SqlConnection(cnstr);
                        cn.Open();
                        SqlCommand cmd = new SqlCommand("", cn);
                        sql = "select count(*) from Table_admin where userName = '" + Txt_userName.Text.Trim() + "'";
                        cmd.CommandText = sql;
                        int result = (int)cmd.ExecuteScalar();
                        if (result == 0)
                        {
                            sql = "insert into Table_admin values('" + Txt_userName.Text.Trim() + "','" + Txt_passWord.Text.Trim() + "')";
                            cmd.CommandText = sql;
                            int m = (int)cmd.ExecuteNonQuery();
                            if (m > 0)
                            {
                                MessageBox.Show("添加管理员成功!", "提示");
                                this.Close();
                                
                            }
                            else
                            {
                                MessageBox.Show("添加管理员失败!", "提示");
                            }
                        }
                        else
                        {
                            MessageBox.Show("管理员" + Txt_userName.Text.Trim() + "已经存在!", "提示");
                            Txt_check.Text = "";
                            Txt_passWord.Text = "";
                        }
                    }
                }
                //添加教师
                else if (Radio_teacher.Checked == true)
                {
                    if (Txt_passWord.Text.Trim() != Txt_check.Text.Trim())
                    {
                        MessageBox.Show("两次密码输入不一致!", "警告");
                    }
                    else
                    {
                        SqlConnection cn = new SqlConnection(cnstr);
                        cn.Open();
                        SqlCommand cmd = new SqlCommand("", cn);
                        sql = "select count(*) from Table_teacher where userName = '" + Txt_userName.Text.Trim() + "'";
                        cmd.CommandText = sql;
                        int result = (int)cmd.ExecuteScalar();
                        if (result == 0)
                        {
                            sql = "insert into Table_teacher values('" + Txt_userName.Text.Trim() + "','" + Txt_passWord.Text.Trim() + "')";
                            cmd.CommandText = sql;
                            int m = (int)cmd.ExecuteNonQuery();
                            if (m > 0)
                            {
                                MessageBox.Show("添加教师成功!", "提示");
                                Txt_userName.Text = "";
                                Txt_passWord.Text = "";
                                Txt_check.Text = "";
                            }
                            else
                            {
                                MessageBox.Show("添加教师失败!", "提示");
                            }

                        }
                        else
                        {
                            MessageBox.Show("教师" + Txt_userName.Text.Trim() + "已经存在!", "提示");
                            Txt_check.Text = "";
                            Txt_passWord.Text = "";
                        }

                    }
                }
            }
            catch (Exception e1)
            {
                MessageBox.Show(e1.Message, "提示");
            }
        }

        // 切换角色
        private void Radio_teacher_Click(object sender, EventArgs e)
        {
            Radio_admin.Checked = false;
            Radio_teacher.Checked = true;
        }

        private void Radio_admin_Click(object sender, EventArgs e)
        {
            Radio_admin.Checked = true;
            Radio_teacher.Checked = false;
        }
        // 退出添加用户窗口
        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Hide();
        }

    }
}
namespace StoreManagerSystem
{
    public partial class ModifyCode : Form
    {
        public ModifyCode()
        {
            InitializeComponent();
        }
        string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;

        private void Btn_confirm_Click(object sender, EventArgs e)
        {

                if (Txt_userName.Text.Trim() == "" || Txt_passWord.Text.Trim() == "" || Txt_newCode.Text.Trim() == "" ||
    Txt_checkCode.Text.Trim() == "")
                {
                    MessageBox.Show("请填写完整!", "提示");

                }
                else
                {
                    SqlConnection cn = new SqlConnection(cnstr);
                    SqlCommand cmd = new SqlCommand("", cn);
                    cn.Open();
                    string sql1 = "select count(*) from Table_admin where userName='" + Txt_userName.Text.Trim() + "'and passWord='" + Txt_passWord.Text.Trim() + "'";
                    string sql2 = "select count(*) from Table_teacher where userName='" + Txt_userName.Text.Trim() + "'and passWord='" + Txt_passWord.Text.Trim() + "'";
                    if(label5.Text.Trim()=="管理员"){cmd.CommandText = sql1;}
                    else if(label5.Text.Trim()=="教师"){cmd.CommandText = sql2;}
                    
                    int result = (int)cmd.ExecuteScalar();
                    if (result > 0)
                    {
                        if (Txt_newCode.Text.Trim() != Txt_checkCode.Text.Trim())
                        {
                            MessageBox.Show("两次密码输入不一致,请重新输入!", "提示");
                        }
                        else
                        {
                            sql1 = "update Table_admin set passWord='" + Txt_newCode.Text.Trim() + "' where userName='" + Txt_userName.Text.Trim() + "'";
                            sql2 = "update Table_teacher set  passWord='" + Txt_newCode.Text.Trim() + "' where userName='" + Txt_userName.Text.Trim() + "'";
                            if (label5.Text.Trim() == "管理员") cmd.CommandText = sql1;
                            else if (label5.Text.Trim() == "教师") cmd.CommandText = sql2;
                            result = (int)cmd.ExecuteNonQuery();
                            if (result > 0){
                                MessageBox.Show("修改密码成功,请重新登录!", "提示");
                                this.Close();
                                Application.Exit();
                            }
                            else
                            {
                                MessageBox.Show("修改密码失败!", "提示");
                            }
                        }
                            
                    }
                    else
                    {
                        MessageBox.Show("旧密码错误,请重新输入!", "提示");
                    }
                }
            

        }

        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

    }
}
namespace StoreManagerSystem
{
    public partial class BrowseUser : Form
    {
        public BrowseUser()
        {
            InitializeComponent();
        }
        string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";

        // 用户信息添加
        private void Btn_adminAdd_Click(object sender, EventArgs e)
        {
            AddUser addUser = new AddUser();
            addUser.Show();
            this.Close();
        }

        // 浏览用户窗体加载事件
        private void BrowseUser_Load(object sender, EventArgs e)
        {
            groupBox1.Text = comboBox1.Text.Trim()+"信息";
            Refresh();
        }

        // 用户信息删除
        private void Btn_adminDelete_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            if (dataGridView1.CurrentRow.Index >= 0 && dataGridView1.DataSource != null &&
                dataGridView1.CurrentCell != null)
            {
                cn.Open();
                if(comboBox1.SelectedIndex==0)
                    sql = "delete from Table_admin where userName='" + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim() + "'";
                else
                    sql = "delete from Table_teacher where userName='" + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim() + "'";
                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.CommandText = sql;
                int m = (int)cmd.ExecuteNonQuery();
                if (m > 0)
                {
                    MessageBox.Show("删除 '" + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim() + "' 成功", "提示");
                    Refresh();
                }
                else
                {
                    MessageBox.Show("删除失败!", "提示");
                }
                cn.Close();
            }
            else { return; }
        }

        // 更新信息
        public override void Refresh()
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            if(comboBox1.SelectedIndex==0)
                sql = "select userName as 用户名,passWord as 密码 from Table_admin";
            else
                sql = "select userName as 用户名,passWord as 密码 from Table_teacher";
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            DataSet ds = new DataSet();
            adp.Fill(ds, "Table");
            dataGridView1.DataSource = ds.Tables["Table"].DefaultView;
            cn.Close();
        }

        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            Refresh();
        }

        //退出当前窗口
        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

入库管理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class Goods : Form
    {
        public Goods()
        {
            InitializeComponent();
        }
        string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";
        DataSet ds;

        //商品窗口加载 显示商品列表
        private void Commodity_Load(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsId as 商品编号,goodsName as 商品名称,goodsTime as 商品录入时间 from Table_goods";
            SqlDataAdapter adp = new SqlDataAdapter(sql,cn);
            DataSet ds = new DataSet();
            ds.Clear();
            adp.Fill(ds,"goods");
            dataGridView1.DataSource = ds.Tables["goods"].DefaultView;
            cn.Dispose();
            ds.Dispose();
            cn.Close();
        }
        AddGoods addGoods;
        private void Btn_add_Click(object sender, EventArgs e)
        {
            addGoods = new AddGoods();
            addGoods.ShowDialog();
            Refresh();
        }

        public override void Refresh()
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsId as 商品编号,goodsName as 商品名称,goodsTime as 商品录入时间 from Table_goods";
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            ds.Clear();
            adp.Fill(ds, "goods");
            dataGridView1.DataSource = ds.Tables["goods"].DefaultView;
            cn.Close();
        }

        private void Btn_delete_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            if (dataGridView1.CurrentRow.Index >= 0 && dataGridView1.DataSource != null &&
                dataGridView1.CurrentCell != null)
            {
                cn.Open();
                sql = "delete from Table_goods where goodsId='" + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim() + "'";
                SqlCommand cmd = new SqlCommand(sql, cn);
                cmd.CommandText = sql;
                int m = (int)cmd.ExecuteNonQuery();
                if (m > 0)
                {
                    MessageBox.Show("删除 '" + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].Value.ToString().Trim() + "' 成功", "提示");
                }
                else
                {
                    MessageBox.Show("删除失败!", "提示");
                }
                cn.Close();
                Refresh();
            }
            else { return; }
        }

        private void Btn_modify_Click(object sender, EventArgs e)
        {
            try
            {
                ModifyGoods modifyGoods;
                if (dataGridView1.DataSource != null || dataGridView1.CurrentCell != null)
                {
                    modifyGoods = new ModifyGoods();
                    modifyGoods.Txt_id.Text = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString().Trim();
                    modifyGoods.Txt_name.Text = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].Value.ToString().Trim();
                    modifyGoods.Txt_time.Text = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[2].Value.ToString().Trim();
                    modifyGoods.ShowDialog();
                }
                else
                {
                    MessageBox.Show("没有指定类型信息!", "提示");
                }
            }
            catch (Exception e1)
            {
                MessageBox.Show(e1.Message);
            }
        }

        private void Btn_exit_Click_1(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
namespace StoreManagerSystem
{
    public partial class EntryWarehouse : Form
    {
        public EntryWarehouse()
        {
            InitializeComponent();
        }
        static string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        
        string sql = "";

        private void Btn_entry_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "insert into Table_EntryHouse values('"+Txt_order.Text.Trim()+"','"+Txt_time.Text.Trim()+"','"+comboBox1_goodsName.Text.Trim()
                +"','"+comboBox2_goodsHouse.Text.Trim()+"','"+Txt_price.Text.Trim()
                +"','"+Txt_num.Text.Trim()+"','"+Txt_total.Text.Trim()
                +"','"+Txt_handle.Text.Trim()+"','"+Txt_remark.Text.Trim()+"')";
            SqlCommand cmd = new SqlCommand(sql,cn);
            int result = cmd.ExecuteNonQuery();
            if (result > 0)
            {
                MessageBox.Show("添加成功", "提示");
                this.Close();
            }
            else
            {
                MessageBox.Show("添加失败", "提示");
            }
            cn.Close();
        }

        //获取商品名称、仓库名称
        private void EntryWarehouse_Load(object sender, EventArgs e)
        {
            Random r1 = new Random(100);
            Txt_order.Text = "EHDD2021" + r1.Next(2568);
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            int flag = 0;
            SqlCommand cmd = new SqlCommand("select distinct goodsName from Table_goods", cn);
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                if (++flag == 1) { comboBox1_goodsName.Text = dr["goodsName"].ToString(); }
                comboBox1_goodsName.Items.Add(dr["goodsName"].ToString());
            }
            flag = 0;
            cmd.Dispose();
            dr.Close();
            SqlCommand cmd1 = new SqlCommand("select distinct houseName from Table_warehouse", cn);
            SqlDataReader dr1 = cmd1.ExecuteReader();
            while (dr1.Read())
            {
                if (++flag == 1) { comboBox2_goodsHouse.Text = dr1["houseName"].ToString(); }
                comboBox2_goodsHouse.Items.Add(dr1["houseName"].ToString());
            }
            cmd1.Dispose();
            dr1.Close();
            cn.Close();
            
        }

        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

仓库管理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class StockManage : Form
    {
        public StockManage()
        {
            InitializeComponent();
        }
        static string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";
        static int flag = 0;
        DataSet ds;

        //库存窗体加载 显示库存列表
        private void StockManage_Load(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse";
            SqlCommand cmd = new SqlCommand(sql,cn);
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            adp.Fill(ds,"EntryHouse");
            dataGridView1.DataSource = ds.Tables["EntryHouse"].DefaultView;
            cmd.Dispose();
            cn.Close();
        }

        //根据条件查询库存
        private void Btn_query_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            string str = Txt_query.Text.Trim();
            switch (flag)
            {
                case 0: sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse where goodsOrder='" + str + "'"; break;
                case 1: sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse where goodsTime='" + str + "'"; break;
                case 2: sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse where goodsName='" + str + "'"; break;
                case 3: sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse where goodsHouse='" + str + "'"; break;
                case 4: sql = "select goodsOrder as 入库单号,goodsTime as 入库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_EntryHouse where goodsHandle='" + str + "'"; break;
            }
            SqlCommand cmd = new SqlCommand(sql,cn);
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            ds.Clear();
            adp.Fill(ds, "EntryHouse");
            dataGridView1.DataSource = ds.Tables["EntryHouse"].DefaultView;
            cmd.Dispose();
            cn.Close();
        }

        private void ComboBox_query_SelectedIndexChanged(object sender, EventArgs e)
        {
            flag = ComboBox_query.SelectedIndex;
        }

        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

namespace StoreManagerSystem
{
    public partial class DrawMaterial : Form
    {
        public DrawMaterial()
        {
            InitializeComponent();
        }
        static string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";
        static int flag = 0;
        DataSet ds,ds1;

        private void DrawMaterial_Load(object sender, EventArgs e)
        {
            Random rd = new Random();
            Txt_drawOrder.Text = "QHDH2021" + rd.Next(2651);
            Txt_drawHandle.Text = label11.Text.Trim();
            
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials";
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            adp.Fill(ds, "Table_materials");
            dataGridView1.DataSource = ds.Tables["Table_materials"].DefaultView;

            //SqlCommand cmd1 = new SqlCommand("select distinct from Table_materials",cn);
            sql = "select distinct goodsName from Table_materials";
            SqlDataAdapter adp1 = new SqlDataAdapter(sql,cn);
            ds1 = new DataSet();
            adp1.Fill(ds1);
            DataTable table1 = ds1.Tables[0];
            this.ComboBox_collect.Items.Clear();
            for (int i = 0; i < table1.Rows.Count; i++)
            {
                if (i == 0) ComboBox_collect.Text = table1.Rows[i][0].ToString().Trim();
                this.ComboBox_collect.Items.Add(table1.Rows[i][0].ToString().Trim());
            }

            sql = "select goodsNum from Table_materials where goodsName='" + ComboBox_collect.Text.Trim() + "'";
            SqlCommand cmd = new SqlCommand(sql, cn);
            int result = (int)cmd.ExecuteScalar();
            Txt_remainder.Text = result.ToString();
            cmd.Dispose();
            cn.Close();
        }

        // 根据条件查询代领物料
        private void Btn_query_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            string str = Txt_query.Text.Trim();
            switch (flag)
            {
                case 0: sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials where goodsOrder='" + str + "'"; break;
                case 1: sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials where goodsTime='" + str + "'"; break;
                case 2: sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials where goodsName='" + str + "'"; break;
                case 3: sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials where goodsHouse='" + str + "'"; break;
                case 4: sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials where goodsHandle='" + str + "'"; break;
            }
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            ds.Clear();
            adp.Fill(ds, "Materials");
            dataGridView1.DataSource = ds.Tables["Materials"].DefaultView;
            cn.Close();
        }

        private void ComboBox_query_SelectedIndexChanged(object sender, EventArgs e)
        {
            flag = ComboBox_query.SelectedIndex;
        }

        // 领取货物
        private void Btn_collect_Click(object sender, EventArgs e)
        {
            try{
                SqlConnection cn = new SqlConnection(cnstr);
                cn.Open();
                sql = "select count(*) from Table_materials where goodsName='"+ComboBox_collect.Text.Trim()+"'";
                    if (Convert.ToInt32(Txt_num.Text.Trim()) == 0 || Txt_num.Text.Trim() == "")
                    {
                        MessageBox.Show("领取的数量不能为0且不能为空!", "提示");
                    }
                    else if (Convert.ToInt32(Txt_remainder.Text.Trim()) > Convert.ToInt32(Txt_num.Text.Trim()))
                    {
                    
                    
                        sql = "insert into Table_myMaterials values('" + Txt_drawOrder.Text.Trim() + "','"+Txt_drawTime.Text.Trim()
                            +"','"+ComboBox_collect.Text.Trim()+"','"+Txt_price.Text.Trim()+"','"+Txt_num.Text.Trim()+"','"+Txt_totalPrice.Text.Trim()
                            +"','"+Txt_drawHandle.Text.Trim()+"','"+Txt_remark.Text.Trim()+"')";
                        SqlCommand cmd = new SqlCommand(sql, cn);
                        int result = (int)cmd.ExecuteNonQuery();
                        if (result > 0)
                        {
                            MessageBox.Show("领取货物成功", "提示");
                            sql = "update Table_Materials set goodsNum='" + (Convert.ToInt32(Txt_remainder.Text.Trim()) - Convert.ToInt32(Txt_num.Text.Trim())) + "'";
                            SqlCommand cmd2 = new SqlCommand(sql, cn);
                            cmd2.ExecuteScalar();
                            Refresh();
                            Random rd = new Random();
                            this.Close();
                        }
                        else
                        {
                            MessageBox.Show("领取货物失败", "提示");
                        }
                    }
                    else
                    {
                        MessageBox.Show("领取数量不能超出库存货物数量!", "提示");
                    }
                }
                catch (Exception e1)
                {
                    MessageBox.Show(e1.Message);
                }

        }

        // 退出取货
        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void Btn_exit01_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void ComboBox_collect_SelectedValueChanged(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsNum from Table_materials where goodsName='" + ComboBox_collect.Text.Trim() + "'";
            SqlCommand cmd = new SqlCommand(sql, cn);
            int result = (int)cmd.ExecuteScalar();
            Txt_remainder.Text = result.ToString();
            cmd.Dispose();
            cn.Close();
        }

        // 更新待取货物信息
        public override void Refresh()
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select goodsOrder as 出库单号,goodsTime as 出库时间,goodsName as 商品名称,goodsHouse as 仓库名称,goodsPrice as 商品价格,goodsNum as 商品数量,goodsTotal as 商品总价,goodsHandle as 经办人,goodsRemark as 备注 from Table_materials";
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            ds.Clear();
            adp.Fill(ds, "Table_materials");
            dataGridView1.DataSource = ds.Tables["Table_materials"].DefaultView;
            cn.Close();
        }
    }
}

我的(已领)货物

在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class ManageMaterials : Form
    {
        public ManageMaterials()
        {
            InitializeComponent();
        }
        static string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;
        string sql = "";
        static int flag = 0;
        DataSet ds;

        private void ManageMaterials_Load(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            sql = "select drawOrder as 取货单号,drawTime as 取货时间,goodsName as 商品名称,goodsPrice as 商品价格,drawNum as 商品数量,goodsTotal as 商品总价,drawHandle as 取货人,drawRemark as 备注 from Table_myMaterials where drawHandle='" + label2.Text.Trim() + "'";
            SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
            ds = new DataSet();
            adp.Fill(ds, "Table_myMaterials");
            dataGridView1.DataSource = ds.Tables["Table_myMaterials"].DefaultView;
            cn.Close();
        }

        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void Btn_query_Click(object sender, EventArgs e)
        {
            try
            {
                SqlConnection cn = new SqlConnection(cnstr);
                cn.Open();
                string str = Txt_query.Text.Trim();
                switch (flag)
                {
                    case 0: sql = "select drawOrder as 取货单号,drawTime as 取货时间,goodsName as 商品名称,goodsPrice as 商品价格,drawNum as 商品数量,goodsTotal as 商品总价,drawHandle as 取货人,drawRemark as 备注 from Table_myMaterials where drawOrder='" + str + "' and drawHandle='" + label2.Text.Trim() + "' "; break;
                    case 1: sql = "select drawOrder as 取货单号,drawTime as 取货时间,goodsName as 商品名称,goodsPrice as 商品价格,drawNum as 商品数量,goodsTotal as 商品总价,drawHandle as 取货人,drawRemark as 备注 from Table_myMaterials where drawTime='" + str + "' and drawHandle='" + label2.Text.Trim() + "'"; break;
                    case 2: sql = "select drawOrder as 取货单号,drawTime as 取货时间,goodsName as 商品名称,goodsPrice as 商品价格,drawNum as 商品数量,goodsTotal as 商品总价,drawHandle as 取货人,drawRemark as 备注 from Table_myMaterials where goodsName='" + str + "' and drawHandle='" + label2.Text.Trim() + "'"; break;
                    case 3: sql = "select drawOrder as 取货单号,drawTime as 取货时间,goodsName as 商品名称,,goodsPrice as 商品价格,drawNum as 商品数量,goodsTotal as 商品总价,drawHandle as 取货人,drawRemark as 备注 from Table_myMaterials where drawHandle='" + str + "' and drawHandle='" + label2.Text.Trim() + "'"; break;
                }
                SqlDataAdapter adp = new SqlDataAdapter(sql, cn);
                ds = new DataSet();
                ds.Clear();
                adp.Fill(ds, "Table_myMaterials");
                dataGridView1.DataSource = ds.Tables["Table_myMaterials"].DefaultView;
                cn.Close();
            }
            catch (Exception e1)
            {
                MessageBox.Show(e1.Message);
            }
        }

        private void ComboBox_query_SelectedIndexChanged(object sender, EventArgs e)
        {
            flag = ComboBox_query.SelectedIndex;
        }


    }
}

出库管理

在这里插入图片描述

namespace StoreManagerSystem
{
    public partial class OutWarehouse : Form
    {
        public OutWarehouse()
        {
            InitializeComponent();
        }
        static string cnstr = ConfigurationManager.ConnectionStrings["cnstr"].ConnectionString;

        string sql = "";

        private void Btn_out_Click(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            int outGoodsNum = Convert.ToInt32(Txt_num.Text.Trim());
            sql = "select AVG(goodsNum) from Table_EntryHouse where goodsName='"+comboBox1_goodsName.Text.Trim()+"'";
            SqlCommand cmd = new SqlCommand(sql, cn);
            int result = (int)cmd.ExecuteScalar();
            if (result < outGoodsNum)
            {
                MessageBox.Show("出库失败,出库货物超出库存量!", "提示");
            }
            else
            {
                SqlCommand cmd1 = new SqlCommand("insert into Table_materials values('" + Txt_order.Text.Trim() 
                    + "','"+Txt_time.Text.Trim()+"','"+comboBox1_goodsName.Text.Trim()
                    +"','"+Txt_goodsHouse.Text.Trim()+"','"+Txt_price.Text.Trim()
                    +"','"+result+"','"+Txt_total.Text.Trim()+"','"+Txt_handle.Text.Trim()
                    +"','"+Txt_remark.Text.Trim()+"')", cn);
               int m = cmd1.ExecuteNonQuery();
               if (m > 0)
               {
                   MessageBox.Show("出库成功!", "提示");
                   SqlCommand cmd2 = new SqlCommand("select AVG(goodsPrice) from Table_EntryHouse where goodsName='"+comboBox1_goodsName.Text.Trim()+"'",cn);
                   int price = (int)cmd2.ExecuteScalar();
                   SqlCommand cmd3 = new SqlCommand("update Table_EntryHouse set goodsNum='" + (result - Convert.ToInt32(Txt_num.Text.Trim())) + "', goodsTotal='" + ((result - Convert.ToInt32(Txt_num.Text.Trim()))*price) + "' where goodsName='" + comboBox1_goodsName.Text.Trim() + "'", cn);
                   cmd3.ExecuteNonQuery();
                   if ((result - Convert.ToInt32(Txt_num.Text.Trim())) == 0)
                   {
                       SqlCommand cmd4 = new SqlCommand("delete from Table_EntryHouse where goodsName='"+comboBox1_goodsName.Text.Trim()+"'", cn);
                       cmd4.ExecuteNonQuery();
                   }
                   this.Close();
               }
               else
               {
                   MessageBox.Show("出库失败!", "提示");
               }
            }
        }
        // 出库窗体加载
        private void OutWarehouse_Load(object sender, EventArgs e)
        {
            Random r1 = new Random();
            Txt_order.Text = "EHCK2021" + r1.Next(2651);
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            int flag = 0;
            SqlCommand cmd = new SqlCommand("select distinct goodsName from Table_EntryHouse", cn);
            SqlDataReader dr = cmd.ExecuteReader();
            while (dr.Read())
            {
                if (++flag == 1) { comboBox1_goodsName.Text = dr["goodsName"].ToString(); }
                comboBox1_goodsName.Items.Add(dr["goodsName"].ToString());
            }
            flag = 0;
            cmd.Dispose();
            dr.Close();
            SqlCommand cmd1 = new SqlCommand("select goodsHouse from Table_EntryHouse where goodsName='"+comboBox1_goodsName.Text.Trim()+"'", cn);
            string result = (string)cmd1.ExecuteScalar();
            Txt_goodsHouse.Text = result;
            cmd1.Dispose();
            cn.Close();
        }
        //选择商品改变对应仓库
        private void comboBox1_goodsName_SelectedValueChanged(object sender, EventArgs e)
        {
            SqlConnection cn = new SqlConnection(cnstr);
            cn.Open();
            SqlCommand cmd1 = new SqlCommand("select goodsHouse from Table_EntryHouse where goodsName='" + comboBox1_goodsName.Text.Trim() + "'", cn);
            string result = (string)cmd1.ExecuteScalar();
            Txt_goodsHouse.Text = result;
            cmd1.Dispose();
            cn.Close();
        }

        private void Btn_exit_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐