using System;
|
using System.Collections.Generic;
|
using System.ComponentModel;
|
using System.Data;
|
using System.Drawing;
|
using System.Text;
|
using System.Windows.Forms;
|
using gregn6Lib;
|
|
namespace BaseSet
|
{
|
public partial class K3_Mould : Form
|
{
|
private int HItemIDCol = 0;
|
private int HNumberCol = 0;
|
public DBUtility.frm_B_BillQueryCondition_New frmCondition;
|
const string ViewName = "h_v_K3_MouldList";
|
const string ModName = "模具";
|
const string BillName = "h_v_K3_Mould";
|
public DBUtility.ClsPub.Enum_InputMode InputMode; //录入状态标志(0-非录入状态 1-增加 2-修改)
|
public long HItemID;//项目ID
|
public string sCondition; //过滤条件
|
//
|
public string sHMaterNumber;
|
public string sHMaterName;
|
public string sHMaterModel;
|
public string sHBarCode;
|
//
|
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
|
DAL.ClsK3_Mould_Ctl oMater = new DAL.ClsK3_Mould_Ctl();
|
DAL.ClsK3_Mould_View oMaterHlp = new DAL.ClsK3_Mould_View();
|
TreeNode CurNode = new TreeNode();
|
public K3_Mould()
|
{
|
InitializeComponent();
|
}
|
//以下代码基本不需要修改
|
#region 固定代码
|
//保存GRID列宽
|
private void K3_Mould_FormClosing(object sender, FormClosingEventArgs e)
|
{
|
DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
}
|
//窗体加载
|
private void K3_Mould_Load(object sender, EventArgs e)
|
{
|
frmCondition = new DBUtility.frm_B_BillQueryCondition_New();
|
LoadTree();
|
initGrid();
|
InputMode = DBUtility.ClsPub.Enum_InputMode.InputMode_View;
|
RefreshTool();
|
}
|
private void LoadAllNodes(TreeNode sNode) //Lock
|
{
|
DBUtility.Gy_BaseFun.LoadAllNodes(sNode, BillName);
|
}
|
private void LoadTree()//Lock
|
{
|
DBUtility.Gy_BaseFun.LoadTree(tv, imageList1, this.Text, BillName);
|
}
|
|
|
//退出模块
|
private void tc_Click(object sender, EventArgs e)
|
{
|
this.Close();
|
}
|
//刷新
|
private void xs_Click(object sender, EventArgs e)
|
{
|
Display();
|
}
|
//查询
|
private void cx_Click(object sender, EventArgs e)
|
{
|
frmCondition = new DBUtility.frm_B_BillQueryCondition_New();
|
DBUtility.Gy_BaseFun.SetCondition(frmCondition, ViewName, this.Name);
|
frmCondition.ShowDialog();
|
if (frmCondition.Tag.ToString() == "OK")
|
{
|
Display();
|
}
|
}
|
private Int32 Fun_GetCol(string sCol)//Lock
|
{
|
return DBUtility.Gy_BaseFun.Fun_GetCol(sCol, grdMain);
|
}
|
//刷新TOOLBAR
|
private void RefreshTool()//Lock
|
{
|
if (InputMode == DBUtility.ClsPub.Enum_InputMode.InputMode_View)
|
{
|
stTab.SelectedIndex = 0;
|
stTab.TabPages.Remove(this.tabPage2);
|
stTab.TabPages.Remove(this.tabPage1);
|
stTab.TabPages.Add(this.tabPage1);
|
grdMain.Enabled = true;
|
tc.Enabled = true;
|
yl.Enabled = true;
|
xg.Enabled = true;
|
sc.Enabled = true;
|
xs.Enabled = true;
|
cx.Enabled = true;
|
}
|
else
|
{
|
stTab.SelectedIndex = 1;
|
stTab.TabPages.Remove(this.tabPage1);
|
stTab.TabPages.Remove(this.tabPage2);
|
stTab.TabPages.Add(this.tabPage2);
|
stTab.TabPages[0].Hide();
|
grdMain.Enabled = false;
|
tc.Enabled = true;
|
yl.Enabled = false;
|
xg.Enabled = false;
|
sc.Enabled = false;
|
xs.Enabled = false;
|
cx.Enabled = false;
|
}
|
}
|
//删除项目
|
public void Delete()
|
{
|
if (DBUtility.Gy_BaseFun.AllowRow(grdMain))
|
{
|
if (MessageBox.Show("确定要删除当前项目?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
|
{
|
//得到HITEMID
|
long sItemID;
|
sItemID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[HItemIDCol].Value);
|
//判断存在性
|
if (oMaterHlp.GetInfoByID(sItemID))
|
{
|
if (oMater.DeleteByID(sItemID))
|
{
|
//更新上级为 末级
|
MessageBox.Show("删除项目成功!", "提示");
|
Display();
|
}
|
else
|
MessageBox.Show("删除项目失败!" + DBUtility.ClsPub.sExeReturnInfo, "提示");
|
}
|
}
|
|
}
|
}
|
//取消按钮
|
private void cmdCancel_Click(object sender, EventArgs e)
|
{
|
InputMode = DBUtility.ClsPub.Enum_InputMode.InputMode_View;
|
RefreshTool();
|
}
|
//保存按钮
|
private void cmdOK_Click(object sender, EventArgs e)
|
{
|
if (!WriteClass())
|
return;
|
if (Save())
|
{
|
MessageBox.Show("保存完毕!", "提示");
|
}
|
else
|
{
|
MessageBox.Show("保存失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示");
|
}
|
if (InputMode == DBUtility.ClsPub.Enum_InputMode.InputMode_Modify)
|
{
|
InputMode = DBUtility.ClsPub.Enum_InputMode.InputMode_View;
|
RefreshTool();
|
}
|
}
|
//树型 单击
|
private void tv_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
|
{
|
CurNode = e.Node;
|
if (CurNode != null)
|
{
|
if (CurNode.Nodes.Count == 0)
|
LoadAllNodes(CurNode);
|
//找到选中结点
|
FindRow(CurNode.Text);
|
}
|
}
|
//过滤资料
|
private void FindRow(string sCode)//Lock
|
{
|
DBUtility.Gy_BaseFun.FindRow(sCode, ModName, ref sCondition);
|
Display();
|
}
|
//删除
|
private void sc_Click(object sender, EventArgs e)
|
{
|
Delete();
|
}
|
//修改
|
private void Modify()
|
{
|
if (DBUtility.Gy_BaseFun.AllowRow(grdMain))
|
{
|
InputMode = DBUtility.ClsPub.Enum_InputMode.InputMode_Modify;
|
RefreshTool();
|
Init();
|
}
|
}
|
//修改按钮
|
private void xg_Click(object sender, EventArgs e)
|
{
|
Modify();
|
}
|
|
|
//初始化界面
|
private bool Init()
|
{
|
long sItemID;
|
if (InputMode == DBUtility.ClsPub.Enum_InputMode.InputMode_AddNew)
|
{
|
Sub_Clear();
|
RefreshTool();
|
return true;
|
}
|
else
|
{
|
//得到HITEMID
|
sItemID = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[HItemIDCol].Value);
|
//检查是否存在
|
if (oMaterHlp.GetInfoByID(sItemID))
|
{
|
ShowData(sItemID);
|
return true;
|
}
|
else
|
{
|
MessageBox.Show("您选择的项目已经不存在!" + DBUtility.ClsPub.sExeReturnInfo, "提示");
|
return false;
|
}
|
}
|
}
|
//保存
|
private bool Save()
|
{
|
if (oMater.AddNew())
|
{
|
Init();
|
}
|
else
|
{
|
return false;
|
}
|
Display();
|
return true;
|
}
|
|
//保存列宽
|
private void bclk_Click(object sender, EventArgs e)
|
{
|
DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
}
|
//默认列宽
|
private void mrlk_Click(object sender, EventArgs e)//Lock
|
{
|
DBUtility.ClsPub.DefaultGridView(grdMain);
|
//参数解释 开始列 ,结束列,是否以最大列宽为准,最小列宽
|
DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath);
|
}
|
//时间控件
|
private void timer1_Tick(object sender, EventArgs e)
|
{
|
timer1.Enabled = false;
|
Display();
|
}
|
//双击GRID
|
private void grdMain_DblClick(object sender, EventArgs e)
|
{
|
Modify();
|
}
|
//初始化GRID
|
private void initGrid()
|
{
|
DBUtility.Gy_BaseFun.initGrid(grdMain);
|
}
|
//显示列表
|
private void Display() // 幻心
|
{
|
SQLHelper.ClsCN SubCn = new SQLHelper.ClsCN();
|
DataSet DSet;
|
string sSql = "";
|
string sWhere = "";
|
//刷新树形
|
//LoadTree();
|
//过滤条件
|
if (DBUtility.ClsPub.isStrNull(sCondition) == "" && frmCondition.SqlStr.Trim().Length != 0)
|
{
|
sSql = frmCondition.SqlStr + sWhere + " order by HItemID";
|
}
|
else if (DBUtility.ClsPub.isStrNull(sCondition) != "")
|
{
|
sSql = "Select * from " + ViewName + sCondition + sWhere + " order by HItemID";
|
}
|
else
|
{
|
sSql = "Select * from " + ViewName + " order by HItemID";
|
}
|
//执行SQL
|
DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo);
|
//
|
if (DSet == null)
|
{
|
MessageBox.Show("显示失败!原因:" + DBUtility.ClsPub.sExeReturnInfo);
|
return;
|
}
|
grdMain.DataSource = DSet.Tables[0].DefaultView;
|
//加载列宽
|
DBUtility.Gy_BaseFun.DisplayGrid(grdMain, this.Name);
|
//
|
HItemIDCol = Fun_GetCol("HItemID");
|
HNumberCol = Fun_GetCol(ModName + "代码");
|
sCondition = "";
|
}
|
//新增时清空信息
|
private void Sub_Clear() //
|
{
|
DBUtility.Gy_BaseFun.Sub_Clear(tabPage2, ref HItemID, txtHNumber);
|
}
|
|
private void grdMain_DoubleClick(object sender, EventArgs e)
|
{
|
Modify();
|
}
|
|
private void cmdLoadTree_Click(object sender, EventArgs e)
|
{
|
LoadTree();
|
}
|
|
#endregion
|
|
#region 类的读写
|
|
private bool AllowSave()
|
{
|
//是否重复代码
|
if (oMater.HavSameNumber(HItemID, txtHNumber.Text.Trim()))
|
{
|
MessageBox.Show("代码重复!", "提示");
|
return false;
|
}
|
return true;
|
}
|
|
//读取类 到 控件
|
private void ShowData(long sItemID)
|
{
|
DAL.ClsGy_Process_View oProc = new DAL.ClsGy_Process_View();
|
if (oMaterHlp.GetInfoByID(sItemID))
|
{
|
txtHNumber.Text = oMaterHlp.omodel.HNumber.ToString();
|
txtHName.Text = oMaterHlp.omodel.HName.ToString();
|
txtHhgNumber.Text = oMaterHlp.omodel.HhgNumber.ToString();
|
txtHBarCode.Text = oMaterHlp.omodel.HBarCode.ToString();
|
txtHProcID.Tag = DBUtility.ClsPub.isLong(oMaterHlp.omodel.HProcID.ToString());
|
if (oProc.GetInfoByID(oMaterHlp.omodel.HProcID))
|
{
|
txtHProcID.Text = oProc.omodel.HName;
|
txtHProcID.Tag = oProc.omodel.HItemID.ToString();
|
}
|
else
|
{
|
txtHProcID.Text = "";
|
}
|
txtHRemark.Text = oMaterHlp.omodel.HRemark;
|
if (oMaterHlp.omodel.HPhaseFlag)
|
chkHPhaseFlag.Checked = true;
|
else
|
chkHPhaseFlag.Checked = false;
|
HItemID = oMaterHlp.omodel.HItemID;
|
}
|
}
|
//写入类 从控件
|
private bool WriteClass()
|
{
|
//判断是否允许 保存
|
if (!AllowSave())
|
{
|
return false;
|
}
|
//写入信息
|
oMater.oModel.HItemID = HItemID;
|
oMater.oModel.HNumber = txtHNumber.Text.Trim();
|
oMater.oModel.HName = txtHName.Text.Trim();
|
oMater.oModel.HBarCode = txtHBarCode.Text.Trim();
|
oMater.oModel.HhgNumber = txtHhgNumber.Text.Trim();
|
oMater.oModel.HPhaseFlag = chkHPhaseFlag.Checked;
|
oMater.oModel.HProcID = DBUtility.ClsPub.isLong(txtHProcID.Tag.ToString());
|
return true;
|
}
|
#endregion
|
|
#region 界面控件处理
|
|
private void tm_Click(object sender, EventArgs e)
|
{
|
//DataSet Ds = new DataSet();
|
//long HMaxNum = 0;
|
//string HMater = "";
|
//sHBarCode = "";
|
//sHMaterNumber = "";
|
//sHMaterName = "";
|
//sHMaterModel = "";
|
//if (DBUtility.Gy_BaseFun.AllowRow(grdMain))
|
//{
|
// HMater = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hitemid")].Value);
|
// sHMaterNumber = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("物料代码")].Value);
|
// sHMaterName = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("物料名称")].Value);
|
// sHMaterModel = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("规格型号")].Value);
|
|
// Ds = oCn.RunProcReturn("exec h_p_Gy_GetBarCode_Print '" + HMater + "',0,0,0", "Gy_czygl");
|
// if (Ds == null || Ds.Tables[0].Rows.Count == 0)
|
// {
|
// return;
|
// }
|
// sHBarCode = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0][0]);
|
|
// //打印条码
|
// Sub_SetReport("barcode");
|
// Report.PrintPreview(false);
|
|
//}
|
}
|
private void cmdHProcID_Click(object sender, EventArgs e)
|
{
|
DAL.ClsGy_Process_View oProc = new DAL.ClsGy_Process_View();
|
if (oProc.RefreshView())
|
{
|
this.txtHProcID.Text = oProc.oModel.HName;
|
this.txtHProcID.Tag = oProc.oModel.HItemID.ToString();
|
}
|
else
|
{
|
this.txtHProcID.Text = "";
|
}
|
}
|
|
private void txtHProcID_TextChanged(object sender, EventArgs e)
|
{
|
if (txtHProcID.Text.Length == 0)
|
{
|
txtHProcID.Tag = "0";
|
}
|
}
|
|
|
#endregion
|
|
#region //打印设置
|
|
GridppReport Report;
|
|
//找到对应打印模块
|
private void Sub_SetReport(string sOpenTmp)
|
{
|
//
|
Report = new GridppReport();
|
Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf"); //here .
|
Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecord);
|
Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable);
|
}
|
//赋值表头
|
private void ReportBeforePostRecord()//
|
{
|
try
|
{
|
Report.FieldByName("物料代码").AsString = sHMaterNumber;
|
Report.FieldByName("物料名称").AsString = sHMaterName;
|
Report.FieldByName("规格型号").AsString = sHMaterModel;
|
Report.FieldByName("条码").AsString = sHBarCode;
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("打印失败!表头:" + e.Message);
|
}
|
}
|
//赋值表体
|
private void ReportFetchRecordByDataTable()
|
{
|
try
|
{
|
BLL.Utility.FillRecordToReport(Report, grdMain, grdPrint, 0);
|
}
|
catch (Exception e)
|
{
|
MessageBox.Show("打印失败!表体:" + e.Message);
|
}
|
}
|
|
#endregion
|
|
|
|
|
|
|
}
|
}
|