基本信息
源码名称:C# 小型超市管理系统源码下载
源码大小:4.85M
文件格式:.rar
开发语言:C#
更新时间:2018-01-07
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559

本次赞助数额为: 2 元 
   源码介绍

winform程序,数据库为sqlserver 2008 r2,小型超市管理系统,具有购物,商品结算,查看购物车,商品管理,雇员管理,供应商管理,商品进货、销售统计等功能

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Collections;
using System.IO;

namespace Shop
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }
        SqlHelp sqlh = new SqlHelp();
        DataSet ds = null;
        string[,] goodsinfo = new string[1,2];
        ArrayList cart = new ArrayList();//存放商品
        int record = 0;//记录商品序列
        int detail_record = 0;//用于记录详细商品时的序列号
        int[] need_minus_record =new int[6];//记录1-6商品的序列
        int rowsCount = 0;
        int showdetail_record = 0;
        AutoSizeFormClass asc = new AutoSizeFormClass();
        private void MainForm_Load(object sender, EventArgs e)
        {
            string sql = "select * from goodsinfo where IsSoling='1'";
            ds = new DataSet();
            ds = sqlh.GetDataSet(sql, "goods");
            showgoods();
        }

        private void btn_find_Click(object sender, EventArgs e)
        {
            string textmess = tb_find.Text;
            string sql = "select * from goodsinfo where GoodsName like '%" textmess "%'";
            ds = new DataSet();
            ds = sqlh.GetDataSet(sql,"goods");
            showgoods();
        }

        public void showgoods()//加载商品信息
        {
            
            rowsCount = ds.Tables["goods"].Rows.Count;
            if (rowsCount==0)
            {
                MessageBox.Show("查不到此商品哟!","友情提示");
                return;
            }
            if (record <rowsCount)
            {
                lb_goods_1.Text =Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_1.Image = Image.FromStream(ms, true);
                need_minus_record[0] = record;
                record ;
                record = record % rowsCount;

            }
            if (record < rowsCount)
            {
                lb_goods_2.Text = Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_2.Image = Image.FromStream(ms, true);
                need_minus_record[1] = record;
                record ;
                record = record % rowsCount;
            }
            if (record < rowsCount)
            {
                lb_goods_3.Text = Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_3.Image = Image.FromStream(ms, true);
                need_minus_record[2] = record;
                record ;
                record = record % rowsCount;
            }
            if (record < rowsCount)
            {
                lb_goods_4.Text = Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_4.Image = Image.FromStream(ms, true);
                need_minus_record[3] = record;
                record ;
                record = record % rowsCount;
            }
            if (record < rowsCount)
            {
                lb_goods_5.Text = Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_5.Image = Image.FromStream(ms, true);
                need_minus_record[4] = record;
                record ;
                record = record % rowsCount;
            }
            if (record < rowsCount)
            {
                lb_goods_6.Text = Convert.ToString(ds.Tables["goods"].Rows[record].ItemArray[2]);
                MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[record].ItemArray[8]);
                pic_6.Image = Image.FromStream(ms, true);
                need_minus_record[5] = record;
                record ;
                record = record % rowsCount;
            }
        }

        public void showDetailsgoods(int place)//显示详细信息
        {
            this.panel1.Visible = true;
            lb_detail_goodsID.Text= ds.Tables["goods"].Rows[place].ItemArray[1].ToString();
            lb_detail_goodsName.Text = ds.Tables["goods"].Rows[place].ItemArray[2].ToString();
            lb_detail_goodsdetail.Text = ds.Tables["goods"].Rows[place].ItemArray[3].ToString();
            lb_detail_manufacturer.Text = ds.Tables["goods"].Rows[place].ItemArray[4].ToString();
            lb_detail_num.Text= ds.Tables["goods"].Rows[place].ItemArray[5].ToString();
            lb_detail_price.Text = ds.Tables["goods"].Rows[place].ItemArray[6].ToString();
            MemoryStream ms = new MemoryStream((byte[])ds.Tables["goods"].Rows[place].ItemArray[8]);
            pic_show.Image = Image.FromStream(ms, true);
        }

        public bool jionInScart(Label goodsname)//加入购物车
        {
            SqlHelp.ispaid = 0;
            goodsinfo = new string[1, 2];
            int i = 0;
            bool flag = false;
            foreach (string[,] details in cart)
            {
                if (details[0,0]==goodsname.Text)
                {
                    details[0,1] = Convert.ToString(Convert.ToInt32(details[0,1]) 1);
                    cart.RemoveAt(i);
                    cart.Insert(i, details);
                    flag = true;
                    break;
                }
                i ;
            }
            if (flag)
            {
                return true;
            }
            goodsinfo[0,0]= goodsname.Text;
            goodsinfo[0,1] ="1";
            cart.Add(goodsinfo);
            tssl_num.Text = cart.Count.ToString();
            return true;
        }

        private void btn_back_Click(object sender, EventArgs e)//返回
        {
            this.panel1.Visible = false;
        }

        private void btn_jion_Click(object sender, EventArgs e)//按钮-加入购物车
        {
            if (jionInScart(lb_detail_goodsName))
            {
                MessageBox.Show("加入成功!");
            }
            else {
                MessageBox.Show("加入成功!");
            }
        }

        /// <summary>
        /// 点击显示详细信息
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        #region

        private void lb_goods_1_Click(object sender, EventArgs e)
        {
           detail_record= need_minus_record[0];
            showDetailsgoods(detail_record);
        }

        private void pic_1_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[0];
            showDetailsgoods(detail_record);
        }

        private void lb_goods_2_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[1];
            showDetailsgoods(detail_record);
        }

        private void pic_2_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[1];
            showDetailsgoods(detail_record);
        }

        private void lb_goods_3_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[2];
            showDetailsgoods(detail_record);
        }

        private void pic_3_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[2];
            showDetailsgoods(detail_record);
        }

        private void lb_goods_4_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[3];
            showDetailsgoods(detail_record);
        }

        private void pic_4_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[3];
            showDetailsgoods(detail_record);
        }

        private void lb_goods_5_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[4];
            showDetailsgoods(detail_record);
        }

        private void pic_5_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[4];
            showDetailsgoods(detail_record);
        }

        private void lb_goods_6_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[5];
            showDetailsgoods(detail_record);
        }

        private void pic_6_Click(object sender, EventArgs e)
        {
            detail_record = need_minus_record[5];
            showDetailsgoods(detail_record);
        }

        #endregion

        /// <summary>
        /// 点击加入购物车
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        #region

        private void pic_add_1_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_1))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }

        private void pic_add_2_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_2))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }

        private void pic_add_3_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_3))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }

        private void pic_add_4_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_4))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }

        private void pic_add_5_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_5))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }

        private void pic_add_6_Click(object sender, EventArgs e)
        {
            if (jionInScart(lb_goods_6))
            {
                MessageBox.Show("加入成功!");
            }
            else
            {
                MessageBox.Show("加入成功!");
            }
        }


        #endregion

        private void btn_showcart_Click(object sender, EventArgs e)//查看购物车
        {
            if (SqlHelp.username == "")
            {
                LoginForm logform = new LoginForm();
                logform.ShowDialog();
            }
            else
            {
                int i = 0;
                string sql = "";
                sql = "delete cart where CustoName='" tssl_username.Text "'";
                sqlh.Getsqlcom(sql);
                foreach (string[,] detail in cart)
                {
                    
                    string name = detail[i,0].ToString();
                    string num = detail[i,1].ToString();
                    string price = "";
                    sql = "select * from goodsinfo where GoodsName='" name "'";
                    SqlDataReader reader = sqlh.GetComRead(sql);
                    if (reader.Read())
                    {
                        price = reader["GoodsPrice"].ToString();
                    }
                    reader.Close();

                    
                    string total = Convert.ToString(Convert.ToDouble(price) * Convert.ToDouble(num));

                    sql = "insert into cart(CustoName,GoodsName,GoodsPrice,GoodsNum,TotalMoney,CreatingTime) ";
                    sql = "values('" tssl_username.Text "','" name "','" price "','" num "','" total "','" System.DateTime.Now "')";
                    sqlh.Getsqlcom(sql);

                }


                cartForm cartform = new cartForm();
                cartform.Show();
            }
        }

        private void btn_balance_Click(object sender, EventArgs e)//结算
        {
            if (SqlHelp.username == "")
            {
                LoginForm logform = new LoginForm();
                logform.ShowDialog();
            }
            else
            {
                string sql = "";
                SqlDataReader reader = null;
                int i = 0;
                sql = "delete cart where CustoName='" tssl_username.Text "'";
                sqlh.Getsqlcom(sql);
                foreach (string[,] detail in cart)
                {

                    string name = detail[i, 0].ToString();
                    string num = detail[i, 1].ToString();
                    string price = "";
                    sql = "select * from goodsinfo where GoodsName='" name "'";
                    reader = sqlh.GetComRead(sql);
                    if (reader.Read())
                    {
                        price = reader["GoodsPrice"].ToString();
                    }
                    reader.Close();

                    

                    string total = Convert.ToString(Convert.ToDouble(price) * Convert.ToDouble(num));

                    sql = "insert into cart(CustoName,GoodsName,GoodsPrice,GoodsNum,TotalMoney,CreatingTime) ";
                    sql = "values('" tssl_username.Text "','" name "','" price "','" num "','" total "','" System.DateTime.Now "')";
                    sqlh.Getsqlcom(sql);

                }

                sql = " select SUM(cast(TotalMoney as float)) from cart where CustoName = '" tssl_username.Text "'";
                reader = sqlh.GetComRead(sql);
                if (reader.Read())
                {
                    SqlHelp.needPay = reader[0].ToString();
                }
                reader.Close();
                PayForm payform = new PayForm();
                payform.ShowDialog();

            }

        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (SqlHelp.username!="")
            {
                tssl_username.Text = SqlHelp.username;
                // MessageBox.Show("欢迎" tssl_username.Text "的到来!");
                //timer1.Enabled = false;
                menuStrip1.Enabled = false;
            }
            if (SqlHelp.power!=""&&SqlHelp.power!="2")
            {
                this.Hide();
            }
            if (cart.Count > 0)
            {

                string[,] show_detail = (string[,])cart[(showdetail_record % cart.Count)];
                tssl_detail_show.Text = show_detail[0, 0] " " show_detail[0, 1];
                showdetail_record ;
            }
            else
            {
                tssl_num.Text = "0";
                tssl_detail_show.Text = "无"  ;
            }
            if (SqlHelp.ispaid==1)//已支付完成
            {
                cart.Clear();
            }
        }

        #region//从购物车里减去
        private void pic_minus_1_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_1))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }

        private void pic_minus_2_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_2))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }

        private void pic_minus_3_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_3))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }

        private void pic_minus_4_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_4))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }

        private void pic_minus_5_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_5))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }

        private void pic_minus_6_Click(object sender, EventArgs e)
        {
            if (outcart(lb_goods_6))
            {
                MessageBox.Show("操作成功!");
            }
            else
            {
                MessageBox.Show("购物车里无此商品!");
            }
        }
        public bool outcart(Label goodsname)//从购物车里减去
        {
            goodsinfo = new string[1, 2];
            int i = 0;
            bool flag = false;
            foreach (string[,] details in cart)
            {
                if (details[0, 0] == goodsname.Text)
                {
                    details[0, 1] = Convert.ToString(Convert.ToInt32(details[0, 1]) - 1);
                    if (details[0, 1] == "0")
                    {
                        cart.RemoveAt(i);
                        flag = true;
                        break;
                    }
                    else
                    {
                        cart.RemoveAt(i);
                        cart.Insert(i, details);
                        flag = true;
                        break;
                    }

                }
                i ;
            }
            if (flag)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        #endregion

        private void 登录ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            LoginForm loginform = new LoginForm();
            loginform.ShowDialog();
        }

        private void 注册ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            RegisterForm reg = new RegisterForm();
            reg.Show();
        }

        private void pic_pro_Click(object sender, EventArgs e)//主页面-上一页
        {
            record = record - 12;
            if (record<0)
            {
                record = 0;
            }
            showgoods();
        }

        private void pic_next_Click(object sender, EventArgs e)//主页面-下一页
        {
            showgoods();
        }

        private void pic_detail_pro_Click(object sender, EventArgs e)//详细页面-上一个
        {
            detail_record--;
            if (detail_record<0)
            {
                detail_record = 0;
            }
            showDetailsgoods(detail_record);
        }

        private void pic_detail_next_Click(object sender, EventArgs e)//详细页面-下一个
        {
            detail_record ;
            detail_record = detail_record % rowsCount;
            showDetailsgoods(detail_record);
        }

        private void MainForm_SizeChanged(object sender, EventArgs e)
        {
            asc.controlAutoSize(this);
        }
    }
}