📄 financialpanel.cs
字号:
}
if (cbZKstat.Text != "")
{
if (cmdChanged)
cmd = cmd + " and 账款状态='" + cbZKstat.Text + "'";
else
{
cmd = cmd + "where 账款状态='" + cbZKstat.Text + "'";
cmdChanged = true;
}
}
//if (tbTime.Text != "")
// cmd = cmd + "and 日期='" +tbTime.Value+"' " ;
return cmd;
}
private String generateUpdateCommand()
{
String cmd = "";
String s=(Int64)dgvZK.Rows[selectedIndex].Cells["账款号码"].Value+"";
cmd = String.Format("update 账款信息 set 账款类别='{0}',账款名称='{1}',借方数目='{2}',贷方数目='{3}',", tbZKkind.Text, tbZKname.Text,tbZKhcount.Text, tbZKlcount.Text);
cmd = cmd + String.Format("总计='{0}',日期='{3}',账款状态='{1}' where 账款号码='{2}'", tbZKsum.Text, cbZKstat.Text, tbZKnum.Text,tbTime.Text);
return cmd;
}
private String generateInsertCommand()
{
String cmd = "insert into 账款信息 values(";
// Int64 id = DateTime.Now.ToBinary();
//insertDealID = id;
cmd = cmd + String.Format("'{0}','{1}','{2}','{3}','{4}',", tbZKkind.Text, tbZKname.Text, tbZKnum.Text, tbZKhcount.Text, tbZKlcount.Text);
cmd = cmd + String.Format("'{0}','{2}','{1}')", tbZKsum.Text, cbZKstat.Text,tbTime.Text);
return cmd;
}
private String generateDeleteCommand()
{
String cmd = String.Format("Delete from 账款信息 where 账款号码='{0}'", dgvZK.Rows[selectedIndex].Cells["账款号码"].Value);
return cmd;
}
public void visilize()
{
reset(); //将各个控件置为初始状态
this.Visible = true;
}
public void disVisilize()
{
this.Visible = false;
}
private void reset()
{
dealID = 0;
selectedIndex = -1;
btZKalter.Enabled = false;
btZKdel.Enabled = false;
btZKpri.Enabled = false;
tbZKkind.Text = ""; //清空TextBox及ComboBox
tbZKname.Text = "";
tbZKnum.Text = "";
tbZKhcount.Text = "";
tbZKlcount.Text = "";
tbZKsum.Text = "";
cbZKstat.Text = "";
cbZKstat.Text = "";
tbTime.Text = "";
}
private void btZKdel_Click(object sender, EventArgs e)
{
String cmd = generateDeleteCommand();
int affectRows = DBManager.Execute(cmd);
if (affectRows == -1)
{ //数据库出错
MessageBox.Show(DBManager.errorMessage);
return;
}
else if (affectRows == 0)
{
MessageBox.Show("此数据已被其他登陆用户删除");
}
if (selectedIndex == dgvZK.Rows.Count - 2)
{
dgvZK.Rows.Remove(dgvZK.Rows[selectedIndex]);
selectedIndex--;
if (selectedIndex == -1)
{//若dgvZK没有数据则重置界面
reset();
return;
}
}
else dgvZK.Rows.Remove(dgvZK.Rows[selectedIndex]);
showDetailInfo(selectedIndex);
}
private void btZKadd_Click(object sender, EventArgs e)
{
String cmd;
if (checkInput("Insert") == false) return;//用户输入错误
cmd = generateSelectCommand(); //首先查找数据库中有没有相同内容的
DataTable dataTable = DBManager.ExecuteSelectCommand(cmd);
if (dataTable == null)
{ //数据库出错
MessageBox.Show(DBManager.errorMessage);
return;
}
else if (dataTable.Rows.Count > 0)
{
MessageBox.Show("数据库中已存在相同信息");
return;
}
//将信息添加到数据库
cmd = generateInsertCommand(); //根据输入情况生成相应的命令
int affectedRows = DBManager.Execute(cmd);
if (affectedRows == -1)
{ //数据库出错
MessageBox.Show(DBManager.errorMessage);
return;
}
else if (affectedRows == 0)
{//
MessageBox.Show("插入失败");
return;
}
else
{//插入成功,
//showDetailInfo(selectedIndex);//显示插入前的一行
MessageBox.Show("添加成功!");
dgvZK.DataSource = DBManager.ExecuteSelectCommand("select * from 账款信息");
showDetailInfo(selectedIndex);//显示插入前的一行
}
}
private void btZKalter_Click(object sender, EventArgs e)
{
String cmd;
if (checkInput("Modify") == false) return; //用户输入不合法
cmd = generateUpdateCommand(); //根据输入情况生成相应的命令
int affectRows = DBManager.Execute(cmd);
if (affectRows == -1)
{ //数据库出错
MessageBox.Show(DBManager.errorMessage);
return;
}
else if (affectRows == 0)
{//没有搜索到对应信息
MessageBox.Show("修改失败");
return;
}
else
{//成功修改,更新dgvZK
DataGridViewRow row = dgvZK.Rows[selectedIndex];
row.Cells["账款类别"].Value = tbZKkind.Text;
row.Cells["账款名称"].Value = tbZKname.Text;
row.Cells["账款号码"].Value = tbZKnum.Text;
row.Cells["借方数目"].Value = tbZKhcount.Text;
row.Cells["账款状态"].Value = cbZKstat.Text;
row.Cells["日期"].Value = tbTime.Text;
MessageBox.Show("修改成功!");
dgvZK.DataSource = DBManager.ExecuteSelectCommand("select * from 账款信息");
showDetailInfo(selectedIndex);//显示修改前的一行
}
}
private void showDetailInfo(int idx)
{
if (idx < 0) return;
selectedIndex = idx;
dealID = (Int64)dgvZK.Rows[idx].Cells["账款号码"].Value;//得到用户选择的行的主键
DataTable dt = DBManager.ExecuteSelectCommand(String.Format("select * from 账款信息 where 账款号码='{0}'", dealID));
if (dt == null)
{//数据库错误
MessageBox.Show(DBManager.errorMessage);
dealID = 0;
return;
}
else if (dt.Rows.Count == 0)
{ //未找到此记录
MessageBox.Show("此记录可能已被其他用户删除");
dealID = 0;
return;
}
tbZKkind.Text = (String)dt.Rows[0]["账款类别"];
tbZKname.Text = (String)dt.Rows[0]["账款名称"];
tbZKnum.Text = (Int64)dt.Rows[0]["账款号码"] + ""; //用这种方式将数字转换成字符串
tbZKhcount.Text = (double)dt.Rows[0]["借方数目"]+"";
tbZKlcount.Text = (double)dt.Rows[0]["贷方数目"] + "";
tbZKsum.Text = (double)dt.Rows[0]["总计"] + "";
cbZKstat.Text = (String)dt.Rows[0]["账款状态"];
tbTime.Text = (DateTime)dt.Rows[0]["日期"]+"";
btZKalter.Enabled = true;//此时可以操作修改、删除数据
btZKdel.Enabled = true;
}
private void dgvZK_CellContentClick(object sender, DataGridViewCellEventArgs e)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -