📄 frmplatfdeptinfo.cs
字号:
this.tbrDept.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.tbrDept_ButtonClick);
//
// toolBarButton8
//
this.toolBarButton8.Enabled = false;
this.toolBarButton8.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
//
// tbrButtonSave
//
this.tbrButtonSave.ImageIndex = 1;
this.tbrButtonSave.Text = "保存";
this.tbrButtonSave.ToolTipText = "保存";
//
// tbrButtonExit
//
this.tbrButtonExit.ImageIndex = 6;
this.tbrButtonExit.Text = "退出";
this.tbrButtonExit.ToolTipText = "退出";
//
// CfrmPlatFDeptInfo
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(536, 287);
this.Controls.Add(this.tbrDept);
this.Controls.Add(this.gbDept);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "CfrmPlatFDeptInfo";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "部门详细信息";
this.Load += new System.EventHandler(this.CfrmPlatFDeptInfo_Load);
this.gbDept.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
/***************************************************************************************************************
* 功能:信息的新增操作
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void btnAdd_Click(object sender, System.EventArgs e)
{
}
/***************************************************************************************************************
* 功能:信息的修改操作
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void btnEdit_Click(object sender, System.EventArgs e)
{
}
/***************************************************************************************************************
* 功能:信息的保存操作
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void btnSave_Click(object sender, System.EventArgs e)
{
if (labId.Text.Trim()==Convert.ToString(txtOwnerDeptName.Tag).Trim())
{
MessageBox.Show("上级部门不能为本部门!");
return;
}
//添加存储过程输入参数
OracleParameter[] inParam = {new OracleParameter(), new OracleParameter(),new OracleParameter(),new OracleParameter(),
new OracleParameter(),new OracleParameter(),new OracleParameter()};
inParam[0].ParameterName = "p_DeptID";
inParam[0].OracleType = OracleType.Int32;
inParam[0].Value = 0;
inParam[1].ParameterName = "p_DeptName";
inParam[1].OracleType = OracleType.VarChar;
inParam[1].Value = txtDeptName.Text.ToString().Trim();
//当对存储过程输入参数可能为空时,必须指定size,否则存储过程调用错误
inParam[2].ParameterName = "p_DeptNumber";
inParam[2].OracleType = OracleType.VarChar;
inParam[2].Size = 8;
inParam[2].Value = txtDeptNumber.Text.ToString().Trim();
inParam[3].ParameterName = "p_IsStudent";
inParam[3].OracleType = OracleType.Int32;
if (cbbIsStud.SelectedIndex == 0)
{
inParam[3].Value = 1;
}
else
{
inParam[3].Value = 0;
}
inParam[4].ParameterName = "p_IsTeacher";
inParam[4].OracleType = OracleType.Int32;
if (cbbIsTeach.SelectedIndex == 0)
{
inParam[4].Value = 1;
}
else
{
inParam[4].Value = 0;
}
inParam[5].ParameterName = "p_DeptDesc";
inParam[5].OracleType = OracleType.VarChar;
inParam[5].Size = 200;
inParam[5].Value = txtDeptDesc.Text.ToString().Trim();
inParam[6].ParameterName = "p_OwnerDeptID";
inParam[6].OracleType = OracleType.Int32;
inParam[6].Value = txtOwnerDeptName.Tag;
//添加存储过程输出参数
OracleParameter[] outParam = {new OracleParameter(),new OracleParameter()};
outParam[0].ParameterName = "p_Result";
outParam[0].OracleType = OracleType.Int32;
outParam[0].Direction = ParameterDirection.Output;
outParam[1].ParameterName = "p_OutDeptID";
outParam[1].OracleType = OracleType.Int32;
outParam[1].Direction = ParameterDirection.Output;
//保存存储过程的调用
int retErrorVal = GlobleHelper.ExecStoredProc("SP_charge_SETDEPT", inParam, ref outParam);
if(retErrorVal == 7)//唯一键错误
{
MessageBox.Show("该部门在已有部门记录中已存在,\r\n操作已被取消,请核对!","消息:",MessageBoxButtons.OK,MessageBoxIcon.Warning);
return;
}
//MessageBox.Show(Convert.ToString(outParam[0].Value)); //显示错误码
if (Convert.ToInt32(outParam[0].Value) == 0) //保存成功
{
if (labId.Text.ToString().Trim()=="") //新增保存情况下
{
labId.Text= Convert.ToString(outParam[1].Value);
ListViewItem cmicItem=new ListViewItem();
//将第一个id字段以结构的形式赋给viewitem的tag属性
lvTagTemp TagTemp= new lvTagTemp();
TagTemp.temp_id = labId.Text.ToString().Trim();
cmicItem.Tag = TagTemp;
//(cmicItem.Tag as lvTagTemp).temp_id ; //tag属性的使用方法
//将第二个字段赋给viewitem的第一列
cmicItem.Text= txtDeptName.Text.ToString().Trim();
cmicItem.SubItems.Add(txtOwnerDeptName.Text.ToString().Trim());
cmicItem.SubItems.Add(txtDeptNumber.Text.ToString().Trim());
cmicItem.SubItems.Add(txtDeptDesc.Text.ToString().Trim());
tp_lvDept.Items.Add(cmicItem);
for(int i=0;i<tp_lvDept.Items.Count-1;i++)
{
tp_lvDept.Items[i].Selected = false;
}
tp_lvDept.Items[tp_lvDept.Items.Count-1].Selected = true;
}
MessageBox.Show("保存成功!");
tbrButtonSave.Enabled = false;
//groupbox设置
txtDeptName.ReadOnly = true;
txtDeptDesc.ReadOnly = true;
txtDeptNumber.ReadOnly =true;
cbbIsStud.Enabled =false;
cbbIsTeach.Enabled =false;
txtOwnerDeptName.ReadOnly = true;
}
else
{
if (Convert.ToInt32(outParam[0].Value) == -1) //-1是oracle错误码,表示保存违反唯一码约束
{
MessageBox.Show("部门名称已存在,请重新输入并保存!");
txtDeptName.Focus();
}
else
{
if (Convert.ToInt32(outParam[0].Value) == -1401) //-1401是oracle错误码,表示插入的值对于列过大
{
MessageBox.Show("某项内容输入过多,请检查并减少输入内容!");
}
else
{
MessageBox.Show("未知数据库操作错误,请重新打开窗体!");
}
}
}
}
/***************************************************************************************************************
* 功能:窗体退出操作
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void btnExit_Click(object sender, System.EventArgs e)
{
this.Close();
}
/***************************************************************************************************************
* 功能:信息的删除操作
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void btnDel_Click(object sender, System.EventArgs e)
{
}
/***************************************************************************************************************
* 功能:当输入部门名称的文本框内有内容的话,保存按钮可用,否则不可用
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private void txtDeptName_TextChanged(object sender, System.EventArgs e)
{
if(ValidateParam())
{
//btnSave.Enabled = true;
tbrButtonSave.Enabled =true;
}
else
{
//btnSave.Enabled = false;
tbrButtonSave.Enabled =false;
}
}
/***************************************************************************************************************
* 功能:检验部门名称的文本框内是否有字符输入
*
* 输入参数:无
* 输出参数:无
*
* 最后修改时间:04-08-13 by cellz
* ************************************************************************************************************/
private bool ValidateParam()
{
//检查数据的合法性。注意,这里只是简单地检查是否有字符输入。
if(txtDeptName.Text.Trim().Length == 0)
return false;
return true;
}
/***************************************************************************************************************
* 功能:当对toolbar单击时的处理操作,有新增、保存、修改、删除、退出按钮
*
* 输入参数:1、sender
* 2、e
* 输出参数:无
*
* 最后修改时间:04-08-12 by cellz
* ************************************************************************************************************/
private void tbrDept_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
{
switch(tbrDept.Buttons.IndexOf(e.Button))
{
case 1:
this.btnSave_Click(sender,e); //保存
break;
case 2:
this.btnExit_Click(sender,e); //退出
break;
}
}
private void CfrmPlatFDeptInfo_Load(object sender, System.EventArgs e)
{
}
private void btnDeptSel_Click(object sender, System.EventArgs e)
{
CfrmDeptTree frmDeptTree = new CfrmDeptTree (txtOwnerDeptName,3,9); //显示所有部门 没有无用节点
frmDeptTree.ShowDialog ();
}
private void txtOwnerDeptName_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
{
/*
if(e.KeyCode == Keys.Enter && tbrButtonEdit.Enabled == false)
{
btnDeptSel_Click(sender,e);
}
*/
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -