frmwarehouse.cs

来自「关于医院进销存的系统」· CS 代码 · 共 418 行 · 第 1/2 页

CS
418
字号
                medicine_bind.Position -= 1;
                e.Handled = true;
            }
            if (e.KeyCode == Keys.Down && dataGridView1.Visible)
            {
                medicine_bind.Position += 1;
                e.Handled = true;
            }
            if (e.KeyCode == Keys.PageDown && dataGridView1.Visible)
            {
                medicine_dv.RowFilter = "供贷商编号=" + tbGongYingShangId.Text;
                medicine_bind.DataSource = medicine_dv;
            }
        }

        private void tbYaoName_Leave(object sender, EventArgs e)
        {
            dataGridView1.Visible = false;
        }

        private void tbShuLiang_KeyPress(object sender, KeyPressEventArgs e)
        {
            try
            {
                if ((Keys)e.KeyChar == Keys.Enter)
                {
                    if (medicine_bind.Count > 0 && tbYaoName.Text.Trim() != "")
                    {
                        if (tbShuLiang.Text.Trim() == "" || tbShuLiang.Text.Trim() == "0")
                        {
                            MessageBox.Show("请输入数量!", "信息提示");
                            tbShuLiang.Focus();
                            e.Handled = true;
                            return;
                        }
                        for (int i = 0; i < listView1.Items.Count; i++)
                        {
                            if (listView1.Items[i].SubItems[2].Text == medicine_dv[medicine_bind.Position]["药品编号"].ToString())
                            {
                                MessageBox.Show("上面已经有该药品的记录,不能再次添加!", "信息提示");
                                tbYaoName.Clear();
                                tbYaoName.Focus();
                                e.Handled = true;
                                return;
                            }
                        }
                        ListViewItem newItem = new ListViewItem((listView1.Items.Count + 1).ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["药品名称"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["药品编号"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["批号"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["规格"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["产地"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["单位"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["进贷价"].ToString());
                        newItem.SubItems.Add(tbShuLiang.Text);
                        int shuliang=int.Parse(tbShuLiang.Text);
                        string hjmoney = (float.Parse(medicine_dv[medicine_bind.Position]["进贷价"].ToString()) * shuliang).ToString();
                        newItem.SubItems.Add(hjmoney);
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["批发价"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["零售价"].ToString());
                        DateTime yx = DateTime.Now;
                        if (medicine_dv[medicine_bind.Position]["生产日期"].ToString() != "")
                        {
                            yx = (DateTime)(medicine_dv[medicine_bind.Position]["生产日期"]);
                        }
                        switch (medicine_dv[medicine_bind.Position]["有效期"].ToString())
                        {
                            case "半年":
                                newItem.SubItems.Add(yx.AddDays(182).ToShortDateString());
                                break;
                            case "一年":
                                newItem.SubItems.Add(yx.AddDays(365).ToShortDateString());
                                break;
                            case "一年半":
                                newItem.SubItems.Add(yx.AddDays(545).ToShortDateString());
                                break;
                            case "二年":
                                newItem.SubItems.Add(yx.AddDays(730).ToShortDateString());
                                break;
                            case "二年半":
                                newItem.SubItems.Add(yx.AddDays(912).ToShortDateString());
                                break;
                            case "三年":
                                newItem.SubItems.Add(yx.AddDays(1095).ToShortDateString());
                                break;
                            case "三年半":
                                newItem.SubItems.Add(yx.AddDays(1460).ToShortDateString());
                                break;
                            default:
                                newItem.SubItems.Add("不清楚");
                                break;
                        }
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["通用名"].ToString());
                        newItem.SubItems.Add(medicine_dv[medicine_bind.Position]["拼音码"].ToString());
                        listView1.Items.Add(newItem);
                        tbShuLiang.Clear();
                        tbYaoName.Clear();
                        tbYaoName.Focus();
                        tbRuKuPinZhong.Text = listView1.Items.Count.ToString();
                        tbHeJiShuLiang.Text = (int.Parse(tbHeJiShuLiang.Text) + shuliang).ToString();
                        tbHeJiMoney.Text = (float.Parse(tbHeJiMoney.Text) + float.Parse(hjmoney)).ToString();
                    }
                    else
                    {
                        MessageBox.Show("没有找到该药品!", "信息提示");
                        tbYaoName.Clear();
                        tbYaoName.Focus();
                        e.Handled = true;
                    }
                    e.Handled = true;
                    return;
                }
                if ((Keys)e.KeyChar == Keys.Back) return;
                int.Parse(e.KeyChar.ToString());
            }
            catch { e.Handled = true; }
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (tbJingShouRen.Text.Trim() == "")
            {
                MessageBox.Show("请输入经手人名称!", "信息提示");
                tbJingShouRen.Focus();
                return;
            }
            if (listView1.Items.Count < 1)
            {
                MessageBox.Show("没有任何销售药品可以保存!", "信息提示");
                tbYaoName.Clear();
                tbYaoName.Focus();
                return;
            }
            try
            {
                SqlConnection Conn = new SqlConnection("server=" + CLoad.ReadServer() + ";pwd=" + CLoad.ReadPwd() + ";uid=sa;database=YYJXC");
                SqlDataAdapter stock_da = new SqlDataAdapter("select * from tb_stock", Conn);
                SqlCommandBuilder stock_cb = new SqlCommandBuilder(stock_da);
                DataSet myds = new DataSet();
                stock_da.Fill(myds, "tb_stock");
                DataView stock_dv = new DataView(myds.Tables["tb_stock"]);
                for (int i = 0; i < listView1.Items.Count; i++)
                {
                    stock_dv.RowFilter = "药品编号='" + listView1.Items[i].SubItems[2].Text + "'";
                    if (stock_dv.Count > 0)
                    {
                        stock_dv[0][9] = int.Parse(stock_dv[0][9].ToString()) + int.Parse(listView1.Items[i].SubItems[8].Text);
                    }
                    else
                    {
                        DataRow newRow = myds.Tables["tb_stock"].NewRow();
                        newRow["药品编号"] = listView1.Items[i].SubItems[2].Text;
                        newRow["药品名称"] = listView1.Items[i].SubItems[1].Text;
                        newRow["通用名"] = listView1.Items[i].SubItems[13].Text;
                        newRow["拼音码"] = listView1.Items[i].SubItems[14].Text;
                        newRow["单位"] = listView1.Items[i].SubItems[6].Text;
                        newRow["规格"] = listView1.Items[i].SubItems[4].Text;
                        newRow["产地"] = listView1.Items[i].SubItems[5].Text;
                        newRow["批号"] = listView1.Items[i].SubItems[3].Text;
                        newRow["有效期至"] = listView1.Items[i].SubItems[12].Text;
                        newRow["库存数量"] = listView1.Items[i].SubItems[8].Text;
                        newRow["进贷价"] = listView1.Items[i].SubItems[7].Text;
                        newRow["批发价"] = listView1.Items[i].SubItems[10].Text;
                        newRow["零售价"] = listView1.Items[i].SubItems[11].Text;
                        myds.Tables["tb_stock"].Rows.Add(newRow);
                    }
                    DataRow newRow1 = ds.Tables["tb_warehouse_dateiled"].NewRow();
                    newRow1["药品编号"] = listView1.Items[i].SubItems[2].Text;
                    newRow1["药品名称"] = listView1.Items[i].SubItems[1].Text;
                    newRow1["单位"] = listView1.Items[i].SubItems[6].Text;
                    newRow1["规格"] = listView1.Items[i].SubItems[4].Text;
                    newRow1["产地"] = listView1.Items[i].SubItems[5].Text;
                    newRow1["批号"] = listView1.Items[i].SubItems[3].Text;
                    newRow1["有效期至"] = listView1.Items[i].SubItems[12].Text;
                    newRow1["数量"] = listView1.Items[i].SubItems[8].Text;
                    newRow1["进贷价"] = listView1.Items[i].SubItems[7].Text;
                    newRow1["批发价"] = listView1.Items[i].SubItems[10].Text;
                    newRow1["零售价"] = listView1.Items[i].SubItems[11].Text;
                    newRow1["金额"] = listView1.Items[i].SubItems[9].Text;
                    newRow1["供应商编号"] = tbGongYingShangId.Text;
                    newRow1["供应商名称"] = tbGongYingShang.Text;
                    newRow1["进贷日期"] = tbLuDanTime.Text;
                    newRow1["进贷单据号"] = tbRuKuDanHao.Text;
                    ds.Tables["tb_warehouse_dateiled"].Rows.Add(newRow1);
                }
                stock_da.Update(myds.Tables["tb_stock"]);
                myds.Tables["tb_stock"].AcceptChanges();
                warehouse_da.Update(ds.Tables["tb_warehouse_dateiled"]);
                ds.Tables["tb_warehouse_dateiled"].AcceptChanges();
            }
            catch (Exception err)
            {
                MessageBox.Show("操作出现错误:" + err.Message, "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            init();
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("您确认要取消以上所有操作吗?", "信息提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                init();
        }

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

⌨️ 快捷键说明

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