using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using gregn6Lib; using System.Threading; namespace BaseSet { public partial class K3_Employee : Form { private int HItemIDCol = 0; private int HNumberCol = 0; public DBUtility.frm_B_BillQueryCondition_New frmCondition; const string ViewName = "h_v_IF_EmployeeList"; const string ModName = "职员"; const string BillName = "h_v_IF_Emp"; public DBUtility.ClsPub.Enum_InputMode InputMode; //录入状态标志(0-非录入状态 1-增加 2-修改) public long HItemID;//项目ID public string sCondition; //过滤条件 SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); DAL.ClsK3_Employee_Ctl oEmp = new DAL.ClsK3_Employee_Ctl(); DAL.ClsK3_Employee_View oEmpHlp = new DAL.ClsK3_Employee_View(); TreeNode CurNode = new TreeNode(); public K3_Employee() { InitializeComponent(); } //以下代码基本不需要修改 #region 固定代码 //保存GRID列宽 private void K3_Employee_FormClosing(object sender, FormClosingEventArgs e) { DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath); } //窗体加载 private void K3_Employee_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 (oEmpHlp.GetInfoByID(sItemID)) { if (oEmp.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 (oEmpHlp.GetInfoByID(sItemID)) { ShowData(sItemID); return true; } else { MessageBox.Show("您选择的项目已经不存在!" + DBUtility.ClsPub.sExeReturnInfo, "提示"); return false; } } } //保存 private bool Save() { if (oEmp.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 (oEmp.HavSameNumber(HItemID, txtHNumber.Text.Trim())) //{ // MessageBox.Show("代码重复!", "提示"); // return false; //} return true; } //读取类 到 控件 private void ShowData(long sItemID) { DAL.ClsGy_Group_View oGroup = new DAL.ClsGy_Group_View(); DAL.ClsGy_Post_View oPost = new DAL.ClsGy_Post_View(); DAL.ClsGy_Department_View oDept = new DAL.ClsGy_Department_View(); DAL.ClsGy_WorkType_View oWorkType = new DAL.ClsGy_WorkType_View(); DAL.ClsGy_Dorm_View oDorm = new DAL.ClsGy_Dorm_View(); DAL.ClsGy_Duty_View oDuty = new DAL.ClsGy_Duty_View(); DAL.ClsGy_ClassTimePrjGroup_View oCTPrjID = new DAL.ClsGy_ClassTimePrjGroup_View(); DAL.ClsGy_Department_View oBstDept = new DAL.ClsGy_Department_View(); if (oEmpHlp.GetInfoByID(sItemID)) { HItemID = oEmpHlp.omodel.HItemID; txtHNumber.Text = oEmpHlp.omodel.HNumber; txtHName.Text = oEmpHlp.omodel.HName; txtHEmpRate.Text = oEmpHlp.omodel.HEmpRate.ToString(); txtHGroupID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HGroupID); if (oGroup.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HGroupID))) { txtHGroupID.Text = oGroup.omodel.HName; } else { txtHGroupID.Text = ""; } txtHDeptID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HDeptID); if (oDept.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HDeptID))) { txtHDeptID.Text = oDept.omodel.HName; } else { txtHDeptID.Text = ""; } // txtHPostID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HPostID); if (oPost.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HPostID))) { txtHPostID.Text = oPost.omodel.HName; } else { txtHPostID.Text = ""; } // txtHCTPrjID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HCTPrjID); if (oCTPrjID.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HCTPrjID))) { txtHCTPrjID.Text = oCTPrjID.omodel.HName; } else { txtHCTPrjID.Text = ""; } // txtHWorkTypeID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HWorkTypeID); if (oWorkType.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HWorkTypeID))) { txtHWorkTypeID.Text = oWorkType.omodel.HName; } else { txtHWorkTypeID.Text = ""; } // // txtHDormID.Tag = DBUtility.ClsPub.isLong(oEmpHlp.omodel.HDormID); if (oDorm.GetInfoByID(DBUtility.ClsPub.isLong(oEmpHlp.omodel.HDormID))) { txtHDormID.Text = oDorm.omodel.HName; } else { txtHDormID.Text = ""; } // if (oEmpHlp.omodel.HStopflag) chkHStopflag.Checked = true; else chkHStopflag.Checked = false; // if (oEmpHlp.omodel.HOverType) chkHOverType.Checked = true; else chkHOverType.Checked = false; // if (oEmpHlp.omodel.HNoBrushFlag) chkHNoBrushFlag.Checked = true; else chkHNoBrushFlag.Checked = false; // if (oEmpHlp.omodel.HShiftFlag) chkHShiftFlag.Checked = true; else chkHShiftFlag.Checked = false; // if (oEmpHlp.omodel.HStopwagesFlag) chkHStopwagesFlag.Checked = true; else chkHStopwagesFlag.Checked = false; // // this.dtpHBirthDay.Value = oEmpHlp.omodel.HBirthDay; this.dtpHContractBDate.Value = oEmpHlp.omodel.HContractBDate; this.dtpHContractEDate.Value = oEmpHlp.omodel.HContractEDate; this.dtpHJobCardEDate.Value = oEmpHlp.omodel.HJobCardEDate; this.dtpHCheckCardEDate.Value = oEmpHlp.omodel.HCheckCardEDate; this.dtpHHealthCardEDate.Value = oEmpHlp.omodel.HHealthCardEDate; // if (oEmpHlp.omodel.HDimissionDate >= Convert.ToDateTime("2030-01-01") || oEmpHlp.omodel.HDimissionDate <= Convert.ToDateTime("1960-01-01")) { this.txtHDimissionDate.Text = ""; } else { this.txtHDimissionDate.Text = oEmpHlp.omodel.HDimissionDate.ToString(); } if (oEmpHlp.omodel.HInsuranceDate.ToString() == "1900-01-01 0:00:00") { this.txtHInsuranceDate.Text = ""; } else { this.txtHInsuranceDate.Text = oEmpHlp.omodel.HInsuranceDate.ToString(); } // this.txtHContractYear.Text = oEmpHlp.omodel.HContractYear; this.cmbHInsuranceStatus.Text = oEmpHlp.omodel.HInsuranceStatus; // // if (oEmpHlp.omodel.HSignStatus == true) { cmbHSignStatus.SelectedIndex = 0; } else { cmbHSignStatus.SelectedIndex = 1; } // this.txtHDimissionReason.Text = oEmpHlp.omodel.HDimissionReason; this.cmbHMarr.Text = oEmpHlp.omodel.HMarr; this.txtHNowAdd.Text = oEmpHlp.omodel.HNowAdd; this.txtHHomeAdd.Text = oEmpHlp.omodel.HHomeAdd; this.txtHOldCompany.Text = oEmpHlp.omodel.HOldCompany; this.txtHInsuranceNo.Text = oEmpHlp.omodel.HInsuranceNo; this.txtHJobCardNo.Text = oEmpHlp.omodel.HJobCardNo; this.txtHArchivesNo.Text = oEmpHlp.omodel.HArchivesNo; this.cmbHWorkType.Text = oEmpHlp.omodel.HWorkType; txtHBasePay.Text = oEmpHlp.omodel.HBasePay.ToString(); txtHLinkPhone.Text = oEmpHlp.omodel.HLinkPhone; txtHMobilePhone.Text = oEmpHlp.omodel.HMobilePhone; txtHFax.Text = oEmpHlp.omodel.HFax; txtHPostalCode.Text = oEmpHlp.omodel.HPostalCode; txtHBank.Text = oEmpHlp.omodel.HBank; txtHBankAccount.Text = oEmpHlp.omodel.HBankAccount; txtHIDCard.Text = oEmpHlp.omodel.HIDCard; dtpHInComDate.Value = oEmpHlp.omodel.HInComDate; cmbHSex.Text = oEmpHlp.omodel.HSex; cmbHEmpType.Text = oEmpHlp.omodel.HEmpType; cmbHPayType.Text = oEmpHlp.omodel.HPayType; txtHInsurance.Text = oEmpHlp.omodel.HInsurance.ToString(); txtHDrydock.Text = oEmpHlp.omodel.HDrydock.ToString(); txtHOtherDeduct3.Text = oEmpHlp.omodel.HOtherDeduct3.ToString(); txtHMedicare.Text = oEmpHlp.omodel.HMedicare.ToString(); } } //写入类 从控件 private bool WriteClass() { DAL.ClsGy_Employee_Ctl oEmpess = new DAL.ClsGy_Employee_Ctl(); DAL.ClsGy_Employee_View oEmpHlp = new DAL.ClsGy_Employee_View(); //判断是否允许 保存 if (!AllowSave()) { return false; } //写入信息 if (this.txtHInsuranceDate.Text != "") { if (DBUtility.ClsPub.isStrNull(DBUtility.ClsPub.isDate(this.txtHInsuranceDate.Text)) == "1900-01-01 0:00:00") { MessageBox.Show("参保日期格式不对!", "提示"); return false; } } if (this.txtHDimissionDate.Text != "") { if (DBUtility.ClsPub.isStrNull(DBUtility.ClsPub.isDate(this.txtHDimissionDate.Text)) == "1900-01-01 0:00:00") { MessageBox.Show("离职日期格式不对!", "提示"); return false; } } //审核代码是否合理 if (!DBUtility.ClsPub.AllowNumber(txtHNumber.Text.Trim())) { MessageBox.Show("代码中不能出现连续‘.’并且首位末位不能为‘.’!", "提示"); return false; } //得到短代码 string sShortNumber; sShortNumber = DBUtility.ClsPub.GetShortNumber(txtHNumber.Text.Trim()); if (sShortNumber.Trim() == "") { return false; } //检查父级是否存在 string sParent; sParent = DBUtility.ClsPub.GetParentCode(txtHNumber.Text.Trim()); if (sParent.Trim() == "") { oEmp.oModel.HParentID = 0; } else { if (oEmp.HavParentCode(sParent.Trim(), HItemID)) { oEmp.oModel.HParentID = oEmp.oModel.HItemID; } else { MessageBox.Show("上级代码不存在或被禁用!", "提示"); return false; } } //是否重复代码 if (oEmpess.HavSameNumber(HItemID, txtHNumber.Text.Trim())) { MessageBox.Show("代码重复!", "提示"); return false; } oEmp.oModel.HItemID = HItemID; oEmp.oModel.HBirthDay = this.dtpHBirthDay.Value; oEmp.oModel.HInsuranceDate = DBUtility.ClsPub.isDate(this.txtHInsuranceDate.Text); oEmp.oModel.HContractBDate = this.dtpHContractBDate.Value; oEmp.oModel.HContractEDate = this.dtpHContractEDate.Value; oEmp.oModel.HJobCardEDate = this.dtpHJobCardEDate.Value; oEmp.oModel.HCheckCardEDate = this.dtpHCheckCardEDate.Value; oEmp.oModel.HHealthCardEDate = this.dtpHHealthCardEDate.Value; oEmp.oModel.HInComDate = this.dtpHInComDate.Value; oEmp.oModel.HDimissionDate = DBUtility.ClsPub.isDate(this.txtHDimissionDate.Text); if (oEmp.oModel.HDimissionDate < Convert.ToDateTime("1950-01-01")) { oEmp.oModel.HDimissionDate = Convert.ToDateTime("2050-01-01"); } oEmp.oModel.HSignDate = this.dtpHSignDate.Value; // oEmp.oModel.HGroupID = DBUtility.ClsPub.isLong(txtHGroupID.Tag.ToString().Trim()); oEmp.oModel.HPostID = DBUtility.ClsPub.isLong(txtHPostID.Tag.ToString().Trim()); oEmp.oModel.HDeptID = DBUtility.ClsPub.isLong(txtHDeptID.Tag.ToString().Trim()); oEmp.oModel.HCTPrjID = DBUtility.ClsPub.isLong(txtHCTPrjID.Tag.ToString()); oEmp.oModel.HWorkTypeID = DBUtility.ClsPub.isLong(txtHWorkTypeID.Tag.ToString()); oEmp.oModel.HCTPrjID = DBUtility.ClsPub.isLong(txtHCTPrjID.Tag.ToString()); oEmp.oModel.HWorkTypeID = DBUtility.ClsPub.isLong(txtHWorkTypeID.Tag.ToString()); oEmp.oModel.HDormID = DBUtility.ClsPub.isLong(this.txtHDormID.Tag.ToString()); oEmp.oModel.HContractYear = this.txtHContractYear.Text.Trim(); oEmp.oModel.HEmpRate = DBUtility.ClsPub.isSingle(txtHEmpRate.Text); oEmp.oModel.HBasePay = DBUtility.ClsPub.isSingle(txtHBasePay.Text); oEmp.oModel.HInsurance = DBUtility.ClsPub.isSingle(txtHInsurance.Text); oEmp.oModel.HMedicare = DBUtility.ClsPub.isSingle(txtHMedicare.Text); oEmp.oModel.HDrydock = DBUtility.ClsPub.isSingle(txtHDrydock.Text); oEmp.oModel.HOtherDeduct3 = DBUtility.ClsPub.isSingle(txtHOtherDeduct3.Text); // if (this.cmbHSignStatus.Text == "是") { oEmp.oModel.HSignStatus = true; } else { oEmp.oModel.HSignStatus = false; } oEmp.oModel.HInsuranceStatus = this.cmbHInsuranceStatus.Text.Trim(); // oEmp.oModel.HName = this.txtHName.Text.Trim(); oEmp.oModel.HSex = this.cmbHSex.Text.Trim(); oEmp.oModel.HMarr = this.cmbHMarr.Text.Trim(); oEmp.oModel.HNowAdd = this.txtHNowAdd.Text.Trim(); oEmp.oModel.HHomeAdd = this.txtHHomeAdd.Text.Trim(); oEmp.oModel.HIDCard = this.txtHIDCard.Text.Trim(); oEmp.oModel.HPostalCode = this.txtHPostalCode.Text.Trim(); oEmp.oModel.HLinkPhone = this.txtHLinkPhone.Text.Trim(); oEmp.oModel.HMobilePhone = this.txtHMobilePhone.Text.Trim(); oEmp.oModel.HFax = txtHFax.Text.Trim(); oEmp.oModel.HOldCompany = this.txtHOldCompany.Text.Trim(); oEmp.oModel.HInsuranceNo = this.txtHInsuranceNo.Text.Trim(); oEmp.oModel.HJobCardNo = this.txtHJobCardNo.Text.Trim(); oEmp.oModel.HWorkType = this.cmbHWorkType.Text.Trim(); oEmp.oModel.HArchivesNo = this.txtHArchivesNo.Text.Trim(); oEmp.oModel.HDimissionReason = this.txtHDimissionReason.Text.Trim(); // oEmp.oModel.HStopflag = chkHStopflag.Checked; oEmp.oModel.HNoBrushFlag = chkHNoBrushFlag.Checked; oEmp.oModel.HOverType = chkHOverType.Checked; oEmp.oModel.HShiftFlag = chkHShiftFlag.Checked; oEmp.oModel.HStopwagesFlag = chkHStopwagesFlag.Checked; // oEmp.oModel.HShortNumber = sShortNumber; oEmp.oModel.HNumber = txtHNumber.Text.Trim(); oEmp.oModel.HLevel = DBUtility.ClsPub.GetLevel(txtHNumber.Text.Trim()); oEmp.oModel.HBank = txtHBank.Text.Trim(); oEmp.oModel.HBankAccount = txtHBankAccount.Text.Trim(); oEmp.oModel.HPostalCode = txtHPostalCode.Text.Trim(); oEmp.oModel.HEmpType = cmbHEmpType.Text.Trim(); oEmp.oModel.HPayType = cmbHPayType.Text.Trim(); return true; } #endregion #region 界面控件处理 private void cmdHDeptID_Click(object sender, EventArgs e) { DAL.ClsGy_Department_View oDept = new DAL.ClsGy_Department_View(); if (oDept.RefreshView()) { txtHDeptID.Text = oDept.oModel.HName; txtHDeptID.Tag = oDept.oModel.HItemID.ToString(); } else { txtHDeptID.Text = ""; } oDept = null; } private void txtHDeptID_TextChanged_1(object sender, EventArgs e) { if (txtHDeptID.Text.Trim() == "") { txtHDeptID.Tag = "0"; } } private void cmdHPostID_Click(object sender, EventArgs e) { DAL.ClsGy_Post_View opost = new DAL.ClsGy_Post_View(); if (opost.RefreshView()) { txtHPostID.Text = opost.oModel.HName; txtHPostID.Tag = opost.oModel.HItemID.ToString(); } else { txtHPostID.Text = ""; } } private void txtHPostID_TextChanged_1(object sender, EventArgs e) { if (txtHPostID.Text.Trim() == "") { txtHPostID.Tag = "0"; } } private void cmdHGroupID_Click(object sender, EventArgs e) { DAL.ClsGy_Group_View oGroup = new DAL.ClsGy_Group_View(); if (oGroup.RefreshView()) { txtHGroupID.Text = oGroup.oModel.HName; txtHGroupID.Tag = oGroup.oModel.HItemID.ToString(); } else { txtHGroupID.Text = ""; } oGroup = null; } private void txtHGroupID_TextChanged_1(object sender, EventArgs e) { if (txtHGroupID.Text.Trim() == "") { txtHGroupID.Tag = "0"; } } private void cmdHCTPrjID_Click(object sender, EventArgs e) { DAL.ClsGy_ClassTimePrjGroup_View oCTPrj = new DAL.ClsGy_ClassTimePrjGroup_View(); if (oCTPrj.RefreshView()) { txtHCTPrjID.Text = oCTPrj.oModel.HName; txtHCTPrjID.Tag = oCTPrj.oModel.HItemID.ToString(); } else { txtHCTPrjID.Text = ""; } } private void txtHCTPrjID_TextChanged_1(object sender, EventArgs e) { if (txtHCTPrjID.Text.Trim() == "") { txtHCTPrjID.Tag = "0"; } } private void cmdHWorkTypeID_Click(object sender, EventArgs e) { DAL.ClsGy_WorkType_View oWorkType = new DAL.ClsGy_WorkType_View(); if (oWorkType.RefreshView()) { txtHWorkTypeID.Text = oWorkType.oModel.HName; txtHWorkTypeID.Tag = oWorkType.oModel.HItemID.ToString(); } else { txtHWorkTypeID.Text = ""; } } private void txtHWorkTypeID_TextChanged_1(object sender, EventArgs e) { if (txtHWorkTypeID.Text.Trim() == "") { txtHWorkTypeID.Tag = "0"; } } private void cmdHDormID_Click(object sender, EventArgs e) { DAL.ClsGy_Dorm_View oDorm = new DAL.ClsGy_Dorm_View(); if (oDorm.RefreshView()) { txtHDormID.Text = oDorm.oModel.HName; txtHDormID.Tag = oDorm.oModel.HItemID.ToString(); } else { txtHDormID.Text = ""; } oDorm = null; } private void txtHDormID_TextChanged(object sender, EventArgs e) { if (txtHDormID.Text.Trim() == "") { txtHDormID.Tag = "0"; } } #endregion #region //打印设置 GridppReport Report; //预览 int CurRows = 0; private void yl_Click(object sender, EventArgs e) { //选择打印模板 BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); oFrm.sBillName = ModName; oFrm.sBillModel = ModName; oFrm.ShowDialog(); if (oFrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) { CurRows = grdMain.CurrentRow.Index; Sub_SetReport(oFrm.sOpenTmp); Report.PrintPreview(true); Thread.Sleep(1000); } } 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()//your report?kao { try { Report.FieldByName("职员代码").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("职员代码")].Value.ToString(); Report.FieldByName("职员名称").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("职员名称")].Value.ToString(); Report.FieldByName("车间名称").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("车间名称")].Value.ToString(); Report.FieldByName("班组名称").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("班组名称")].Value.ToString(); Report.FieldByName("条码编号").AsString = grdMain.Rows[CurRows].Cells[Fun_GetCol("HItemID")].Value.ToString(); } catch (Exception e) { MessageBox.Show("打印失败!表头:" + e.Message); } } private void ReportFetchRecordByDataTable() { try { DataTable ds = new DataTable(); BLL.Utility.FillRecordToReport_FstRow(Report, grdMain, ds, Fun_GetCol("HItemID")); } catch (Exception e) { MessageBox.Show("打印失败!" + e.Message); } } private void dy_Click(object sender, EventArgs e) { //选择打印模板 BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); oFrm.sBillName = ModName; oFrm.sBillModel = ModName; oFrm.ShowDialog(); if (oFrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) { // for (int i = 0; i <= grdMain.SelectedRows.Count - 1; i++) { CurRows = grdMain.SelectedRows[i].Index; Sub_SetReport(oFrm.sOpenTmp); Report.Print(false); Thread.Sleep(1000); } } } #endregion } }