📄 outstorageform.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using DaFanRongMIS.ViewController.Kitchen;
using DaFanRongMIS.ViewController.Material;
using DaFanRongMIS.Model.Login;
using DaFanRongMIS.Model.OutStorage;
namespace DaFanRongMIS.ViewController.OutStorage
{
public partial class OutStorageForm : Form
{
//记录每次出库的主表编号
private string SellMainID;
LoginEntity login = new LoginEntity();
MaterialMainDAOImpl dao = new MaterialMainDAOImpl();
string nid;//记录操作者编号
#region 默认构造函数
public OutStorageForm()
{
InitializeComponent();
}
#endregion
#region 带参数构造函数
public OutStorageForm(string s)
{
InitializeComponent();
nid = s;
}
#endregion
#region 查找厨房名称
private void button2_Click(object sender, EventArgs e)
{
KitchenForm kitchen = new KitchenForm(this.txtKitchenname);
kitchen.ShowDialog();
}
#endregion
#region 窗体加载事件
private void OutStorageForm_Load(object sender, EventArgs e)
{
this.t1.Text = dao.GetShopID(login.UserID);
t2.Text = nid;
this.txtKitchenname.Enabled = false;
this.txtMaterialname.Enabled = false;
}
#endregion
#region 查找材料名称
private void button1_Click(object sender, EventArgs e)
{
MaterialForm material = new MaterialForm(this.txtMaterialname);
material.ShowDialog();
}
#endregion
#region 在listview中显示信息,同时判断库存中是否有此材料,库存数量是否够出库
private void btnshow_Click(object sender, EventArgs e)
{
if (dao.StorageYorN(this.txtMaterialname.Tag.ToString())==0)
{
MessageBox.Show("库存中无此材料,请入库","系统提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
this.txtKitchenname.Text = "";
this.txtMaterialname.Text = "";
this.txtMaterialNum.Text = "";
}
else
{
string m = dao.count(this.txtMaterialname.Tag.ToString());
if (Convert.ToDecimal(txtMaterialNum.Text) <=Convert.ToDecimal(m))
{
ListViewItem item = new ListViewItem();
item.SubItems.Add((this.LVOutStorage.Items.Count + 1).ToString());
item.SubItems.Add(this.txtMaterialname.Text);
item.SubItems.Add(this.txtMaterialNum.Text);
this.LVOutStorage.Items.Add(item);
this.txtKitchenname.Enabled = false;
this.button2.Enabled = false;
this.txtMaterialname.Text = "";
this.txtMaterialname.Focus();
this.txtMaterialNum.Text = "";
}
else
{
decimal y = Convert.ToDecimal(txtMaterialNum.Text) -Convert.ToDecimal(m);
MessageBox.Show("库存不足,缺少数量为"+y,"系统提示",MessageBoxButtons.OK,MessageBoxIcon.Error);
this.txtMaterialNum.Focus();
this.txtMaterialNum.SelectAll();
}
}
}
#endregion
#region 取消
private void btnCanel_Click(object sender, EventArgs e)
{
this.txtKitchenname.Text = "";
this.txtMaterialname.Text = "";
this.txtMaterialNum.Text = "";
}
#endregion
#region 返回
private void btnBack_Click(object sender, EventArgs e)
{
this.Close();
}
#endregion
#region 出库操作
private void btnAddMainAndDetailInWare_Click(object sender, EventArgs e)
{
//MaterialMainDAOImpl dao = new MaterialMainDAOImpl();
if (this.LVOutStorage.Items.Count > 0)
{
//创建出库主表的对象
MaterialMainEntity main = new MaterialMainEntity();
//给出库主表的属性付值
main.ID = dao.CreateMaterialMainID();
SellMainID = main.ID;
main.ShopID = t1.Text;
main.OpeRator = nid;
main.BusinessTime = t3.Text;
main.BusinessType = "出库";
main.Destination = this.txtKitchenname.Tag.ToString();
main.Memo = "nothing";
//创建出库明细对象数组,数组的个数根据ListView中的记录行数添加
MaterialDetailEntity[] details = new MaterialDetailEntity[this.LVOutStorage.Items.Count];
//循环ListView中的所有存在记录的行并将每行记录信息添加入明细对象数组中
for (int i = 0; i <LVOutStorage.Items.Count; i++)
{
//创建明细表对象
MaterialDetailEntity detail = new MaterialDetailEntity();
//给明细表对象属性付值
detail.MainID = main.ID;
detail.MaterialID = this.txtMaterialname.Tag.ToString();
detail.BusinessCount = Convert.ToDecimal(this.LVOutStorage.Items[i].SubItems[3].Text);
detail.MemberPrice = 0;
details[i] = detail;
}
//判断执行是否成功
if (dao.OutStorage(main, details) == "ok")
{
MaterialDetailEntity det = new MaterialDetailEntity();
//dao.UpdateCount(txtMaterialname.Tag.ToString(), det.BusinessCount);
MessageBox.Show("出库成功","系统提示",MessageBoxButtons.OK,MessageBoxIcon.Asterisk);
this.txtKitchenname.Text="";
this.txtMaterialname.Text="";
this.txtMaterialNum.Text = "";
this.button2.Enabled = true;
}
else
{
MessageBox.Show("出库失败!", " 系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
#endregion
#region timer控件获得当前时间
private void timer1_Tick(object sender, EventArgs e)
{
t3.Text = DateTime.Now.ToString();
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -