⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 productoperform.cs

📁 一个超市管理系统,没有错误,非常好,里面什么都有!很使用,很有用
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
//导入产品实体类所在命名空间
using DaFanRongMIS.Model.Product;
using DaFanRongMIS.Model.Unit;
using DaFanRongMIS.Model.CateGory;
using System.IO;
namespace DaFanRongMIS.ViewController.Product
{
    public partial class ProductOperForm : Form
    {
        public ProductOperForm()
        {
            InitializeComponent();
        }
        #region 带参构造方法,标示增加、修改状态,并回添ListView
        public ProductOperForm(string str, ListView LV)
        {
            InitializeComponent();
            flag = str;
            ProductLV = LV;
        }
        #endregion
        //定义产品实体类对象
        ProductEntity product = new ProductEntity();

        //定义产品操作类对象
        ProductDAOImpl productdao = new ProductDAOImpl();

        //使用此变量接收状态值
        string flag = "";

        //定义ListView类型变量
        ListView ProductLV = null;
        #region 自动生成指定类别的产品编号
        private void AutoID()
        {
            //获取此类材料个数
            string i = productdao.SelectProductMaxID(cboCateName.Tag.ToString());
            //判定有没有产品
            if (i != "-1") //无异常
            {
                if (i == "")  //没有
                    txtID.Text = cboCateName.Tag.ToString() + "001";
                else      //有
                {
                    txtID.Text = cboCateName.Tag.ToString()+ (Convert.ToInt32(i) + 1).ToString("000");
                    //string j = (i + 1).ToString();
                    ////生成三位编号
                    //if (j.ToString().Length == 1)
                    //    txtID.Text = cboCateName.Tag.ToString() + "00" + j.ToString();
                    //else if (j.ToString().Length == 2)
                    //    txtID.Text = cboCateName.Tag.ToString() + "0" + j.ToString();
                    //else if (j.ToString().Length == 3)
                    //    txtID.Text = cboCateName.Tag.ToString() + j.ToString();
                }
            }
        }
        #endregion

        #region 图片框单击事件
        OpenFileDialog OFD = new OpenFileDialog();
        string s = "";//存储图片的名字
        private void picPhoto_Click(object sender, EventArgs e)
        {
            OFD.Filter = "JPG文件(*.jpg)|*.jpg|BMP文件(*.bmp)|*.bmp|ICO文件(*.ico)|*.ico|所以文件(*.*)|*.*";
            if (OFD.ShowDialog() == DialogResult.OK)
            {
                txtPhotoPath.Text = OFD.FileName;
                //从图片路径中获取图片的名字
                FileInfo f = new FileInfo(OFD.FileName);
                s = f.Name;


                picPhoto.Image = Image.FromFile(OFD.FileName, true);
            }
        }
        #endregion

        #region 填充ListView方法
        private void FillLV()
        {
            //通过方法传递饭店名称和厨房名称参数

            //声明数据表对象接收查询结果
            DataTable dt = productdao.SelectProduct("", "", "", "");

            //判断是否有返回记录
            if (dt != null)
            {
                //清除ListView上的所有项
                ProductLV.Items.Clear();

                //有返回值,将其填充到ListView中
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    //定义ListView项
                    ListViewItem item = new ListViewItem(dt.Rows[i][6].ToString());     //产品编号
                    //定义ListView子项
                    item.SubItems.Add(dt.Rows[i][7].ToString());            //计量单位编号
                    item.SubItems.Add(dt.Rows[i][8].ToString());            //类别编号
                    item.SubItems.Add((i + 1).ToString());                  //序号
                    item.SubItems.Add(dt.Rows[i][0].ToString());            //产品名称
                    item.SubItems.Add(dt.Rows[i][1].ToString());            //拼音码
                    item.SubItems.Add(dt.Rows[i][2].ToString());               //图片
                    item.SubItems.Add(dt.Rows[i][3].ToString());            //价格
                    item.SubItems.Add(dt.Rows[i][4].ToString());            //计量单位名
                    item.SubItems.Add(dt.Rows[i][5].ToString());            //类别名
                    item.SubItems.Add(dt.Rows[i][9].ToString());            //备注
                    //将此项添加到ListView中

                    ProductLV.Items.Add(item);

                }
            }

        }//end method FillLV
         #endregion

        #region 获取计量单位名称的方法
        private void FillCboUnit()
        {
            //定义计量单位操作类对象
            UnitDAOImpl unitdao = new UnitDAOImpl();


            //定义数据表对象,用于接收查询结果
            DataTable dt = unitdao.SelectUnit();
            //判断是非为空
            if (dt != null)
            {
                //循环添加计量单位名称和编号
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    cboUnitName.Items.Add(dt.Rows[i][0].ToString());
                }

            }
        }

         #endregion

        #region 获取商品类别名称的方法
        private void FillCboCateGory()
        {

            //定义商品类别实体类对象
            CateGoryEntity cate = new CateGoryEntity();
            //定义商品类别操作类对象
            CateGoryDAOImpl catedao = new CateGoryDAOImpl();


            //定义数据表对象,用于接收查询结果
            DataTable dt = catedao.SelectCategory();

            //判断是非为空
            if (dt != null && dt.Rows.Count > 0)
            {
                //循环添加商品类别名称和编号
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    cboCateName.Items.Add(dt.Rows[i][0].ToString());
                }

                //默认选中第一个类别
                cboCateName.Text = dt.Rows[0][0].ToString();

                //选中编号
                GetCateID();

            }
        }

        #endregion

        #region 按类别名称得到类别编号
        private void GetCateID()
        {
            //定义商品类别操作类对象
            CateGoryDAOImpl catedao = new CateGoryDAOImpl();

            //定义数据表对象,用于接收查询结果
            DataTable dt = catedao.SelectCategorybyName(cboCateName.Text);

            //判断是非为空
            if (dt.Rows.Count > 0)
            {
                if (dt.Rows.Count == 1)
                    cboCateName.Tag = dt.Rows[0][1].ToString();
                //else
                //    new TempForm(dt, cboCateName).ShowDialog();

                //自动生成编号
                AutoID();
            }
        }
         #endregion

        #region 窗体加载事件
        private void ProductOperForm_Load(object sender, EventArgs e)
        {
            //判断当前状态是添加还是修改
            if (flag == "Add")  //添加状态
            {
                //标明进入添加状态
                GB.Text = "添加操作";

                //填充计量单位名称
                FillCboUnit();

                //填充商品类别名称
                FillCboCateGory();

                //调用清空文本框方法
                txtCls();

                //编号文本框得到焦点
                txtName.Focus();

            }
            else if (flag == "Update")  //修改状态
            {
                if (ProductLV.SelectedItems.Count > 0)  //判断是否选中要修改的记录
                {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -