SCLS/SSWCS_JXDL(2019)/SystemConfig/FrmStackInfoEdit.cs
2025-05-19 09:45:29 +08:00

250 lines
8.5 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.VisualBasic;
using DBFactory;
namespace SystemConfig
{
public partial class FrmStackInfoEdit : Form
{
bool IfUpdate = false;
DBOperator dbo = CStaticClass.dbo;
private static FrmStackInfoEdit _formInstance;
public static FrmStackInfoEdit FormInstance
{
get
{
if (_formInstance == null)
{
_formInstance = new FrmStackInfoEdit();
}
return _formInstance;
}
set { _formInstance = value; }
}
public FrmStackInfoEdit()
{
InitializeComponent();
_formInstance = this;
}
private void button1_Click(object sender, EventArgs e)
{
IfUpdate = false;
}
private void btNull_Click(object sender, EventArgs e)
{
tbStackIndex.Text = "";
tbLaneNo.Text = "";
cbForkAmount.Text = "";
cbReach.Text = "";
}
private void btSave_Click(object sender, EventArgs e)
{
if (MessageBox.Show("您确认要保存堆垛机信息吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
if (Information.IsNumeric(this.tbStackIndex.Text) == false)
{
MessageBox.Show("堆垛机设备索引只能是数字类型!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
tbStackIndex.Focus();
return;
}
if (this.tbLaneNo.Text.Trim().Length == 0)
{
MessageBox.Show("巷道编号不允许输入空值!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.tbLaneNo.Focus();
return;
}
if (this.cbForkAmount.Text.Trim().Length == 0)
{
MessageBox.Show("货叉类型不允许输入空值!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.cbForkAmount.Focus();
return;
}
if (this.cbReach.Text.Trim().Length == 0)
{
MessageBox.Show("货叉进伸类型不允许输入空值!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.cbReach.Focus();
return;
}
try
{
string ln;
int si,reach, fork;
si = Convert.ToInt32(this.tbStackIndex.Text );
ln = this.tbLaneNo.Text;
//单叉
//双叉
if (this.cbForkAmount.Text == "单叉")
{
fork = 1;
}
else
{
fork = 2;
}
//单进伸
//双进伸
if (this.cbReach.Text == "单进伸")
{
reach=1;
}
else
{
reach=2;
}
string sql = "SELECT F_StackIndex AS 堆垛机设备索引,F_LaneNo AS 巷道编号,F_ForkAmount AS " +
" 货叉类型,F_Reach AS 货叉进伸类型 FROM T_Base_StackInfo where F_StackIndex=" +si;
DataSet ds = dbo.ExceSQL(sql);
if ((ds.Tables[0].DefaultView.Count > 0))
{
if (IfUpdate == false)
{
MessageBox.Show("堆垛机设备索引在数据库已经存在,请不要重复录入数据!", "误操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Warning);
this.tbStackIndex.Focus();
return;
}
}
else
{
IfUpdate = false;
}
ds.Clear();
if (IfUpdate == true)
{
sql = "UPDATE T_Base_StackInfo SET F_LaneNo ='" + ln + "', F_ForkAmount =" + fork + ",F_Reach=" + reach + " where F_StackIndex=" + si;
dbo.ExceSQL(sql);
MessageBox.Show("堆垛机设备信息修改成功!", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Information);
IfUpdate = false;
}
else
{
sql = "INSERT INTO T_Base_StackInfo(F_StackIndex, F_LaneNo, F_ForkAmount, F_Reach)VALUES" +
" (" + si+ ",'" + ln+ "'," + fork + "," + reach + ")";
dbo.ExceSQL(sql);
MessageBox.Show("堆垛机设备信息录入成功!", "操作提示:", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
sql = "SELECT F_StackIndex AS 堆垛机设备索引,F_LaneNo AS 巷道编号,F_ForkAmount AS " +
" 货叉类型,F_Reach AS 货叉进伸类型 FROM T_Base_StackInfo where F_StackIndex=" + si;
ds = dbo.ExceSQL(sql);
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
catch (Exception ex)
{
throw ex;
}
}
private void btQuery_Click(object sender, EventArgs e)
{
try
{
string df, sql;
if (this.tbContent.Text.Trim() == "") return;
if (this.cbField.Text == "堆垛机设备索引")
{
df = "F_StackIndex";
}
else//巷道编号
{
df = "F_LaneNo";
}
sql = "SELECT F_StackIndex AS 堆垛机设备索引,F_LaneNo AS 巷道编号,F_ForkAmount AS " +
" 货叉类型,F_Reach AS 货叉进伸类型 FROM T_Base_StackInfo where " +
df + "= '" + Convert.ToInt32(this.tbContent.Text)+"'";
DataSet ds = dbo.ExceSQL(sql);
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
catch (Exception ex)
{
throw ex;
}
}
private void btNullQuery_Click(object sender, EventArgs e)
{
this.cbField.Text = "";
this.tbContent.Text = "";
}
private void FrmStackInfoEdit_Load(object sender, EventArgs e)
{
}
private void tsmEdit_Click(object sender, EventArgs e)
{
if (dataGridView1.RowCount <= 0)
{
return;
}
this.tabControl1.SelectTab("tabPage1");
this.tbStackIndex.Text = this.dataGridView1.CurrentRow.Cells[0].Value.ToString() + "";
this.tbLaneNo.Text = this.dataGridView1.CurrentRow.Cells[1].Value.ToString() + "";
//单叉
//双叉
if (this.dataGridView1.CurrentRow.Cells[2].Value.ToString() + "" == "1")
{
this.cbForkAmount.Text = "单叉";
}
else
{
this.cbForkAmount.Text = "双叉";
}
//单进伸
//双进伸
if (this.dataGridView1.CurrentRow.Cells[3].Value.ToString() + "" == "1")
{
this.cbReach.Text = "单进伸";
}
else
{
this.cbReach.Text = "双进伸";
}
IfUpdate = true;
}
private void tsmDel_Click(object sender, EventArgs e)
{
if (dataGridView1.RowCount <= 0)
{
return;
}
if (MessageBox.Show("您确认要删除选中行的“堆垛机信息:" + this.dataGridView1.CurrentRow.Cells[0].Value.ToString() + "”信息吗?", "操作提示:", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) != DialogResult.OK)
{
return;
}
dbo.ExceSQL("delete from T_Base_StackInfo where F_StackIndex =" + Convert.ToInt32(this.dataGridView1.CurrentRow.Cells[0].Value));
button2_Click(sender, e);
}
private void button2_Click(object sender, EventArgs e)
{
string sql = "SELECT F_StackIndex AS 堆垛机设备索引,F_LaneNo AS 巷道编号,F_ForkAmount AS " +
" 货叉类型,F_Reach AS 货叉进伸类型 FROM T_Base_StackInfo";
DataSet ds = dbo.ExceSQL(sql);
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
}