using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using SQLHelper; namespace DBUtility { public partial class Xt_CheckFlowList : Form { public Xt_CheckFlowList() { InitializeComponent(); } public frmBillQueryCondition_New frmCondition; const string ViewName = "h_v_Xt_CheckFlowList"; const string ModCaption = "审批流单查询"; public string sDlgWhere = ""; //外窗体递入 ClsXt_CheckFlowMain oBill = new ClsXt_CheckFlowMain(); public Xt_CheckFlow oFrm; Pub_Class.ClsGridListSum oSumGrid = new Pub_Class.ClsGridListSum(); // private void initGrid() { DBUtility.Xt_BaseBillFun.initGridList(grdMain, this.Name); } // private void Display() { ClsCN SubCn = new ClsCN(); DataSet DSet; string sSql = ""; string sWhere = ""; DBUtility.Xt_BaseBillFun.Sub_SQLWhere(ref sWhere); if (sDlgWhere == "") { //过滤条件 if (frmCondition.SqlStr.Trim().Length == 0) return; sSql = frmCondition.SqlStr + sWhere + " order by 流程名称 "; } else { sSql = "Select * from " + ViewName + " Where 1=1 " + sWhere + sDlgWhere + " order by 流程名称 "; } // DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo); //生成首行标题 if (DSet == null) { MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + DBUtility.ClsPub.sExeReturnInfo); return; } //释放冻结 DBUtility.Xt_BaseBillFun.CancelFrozenCol(grdMain); //绑定 grdMain.DataSource = DSet.Tables[0].DefaultView; //设置合计列 string sTotalCol = ""; sTotalCol = DBUtility.Gy_BaseFun.GetTotalCols(DSet); string[] sT; sT = sTotalCol.Split(Convert.ToChar(",")); oSumGrid.BuildTotalCols(sT); // //冻结 int FrCol = DBUtility.ClsPub.isInt(frmCondition.txtFrozenCol.Text); string s = frmCondition.cmbHComplete.Text; DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, s, FrCol); //画线 GraphLine(); // Total(); } private void timer1_Tick(object sender, EventArgs e) { timer1.Enabled=false; initGrid(); Display(); } private void tc_Click(object sender, EventArgs e) { this.Close(); } private void sx_Click(object sender, EventArgs e) { timer1.Enabled = true; } private void dj_Click(object sender, EventArgs e) { Sub_ShowBill(); } private void Sub_ShowBill() { Int64 lngBillKey = 0; if (grdMain.CurrentRow == null) return; lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); if (lngBillKey == 0) return; ClsXt_CheckFlowMain oBill = new ClsXt_CheckFlowMain(); if (oBill.ShowBill(lngBillKey, ref ClsPub.sExeReturnInfo)) { oFrm = new Xt_CheckFlow(); oFrm.BillStatus = Pub_Class.ClsPub.Enum_BillStatus.BillStatus_View; oFrm.BillOld = oBill; oFrm.ShowDialog(); if (oFrm.BillChange) { if (MessageBox.Show("单据列表已经发生变化,是否刷新", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) { timer1.Enabled = true; } } } else { MessageBox.Show("单据未找到", "提示"); } oBill = null; } private Int32 Fun_GetCol(string sCol) { return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); } private void Xt_CheckFlowList_Load(object sender, EventArgs e) { // frmCondition = new DBUtility.frmBillQueryCondition_New(); this.Text = ModCaption; lblCaption.Text = ModCaption; oSumGrid.ogrdMain = grdMain; //初始化 new oSumGrid.oGridsum = grdSum; initGrid(); } private void grdMain_DblClick(object sender, EventArgs e) { Sub_ShowBill(); } private void cx_Click(object sender, EventArgs e) { frmCondition = new frmBillQueryCondition_New(); frmCondition.Tag = ""; frmCondition.ViewName = ViewName; frmCondition.ModName = this.Name; frmCondition.ShowDialog(); if (frmCondition.Tag.ToString() == "OK") { Display(); } } private void xz_Click(object sender, EventArgs e) { // oFrm = new Xt_CheckFlow(); oFrm.ShowDialog(); } private void sc_Click(object sender, EventArgs e) { Sub_DeleteBill(); } //删除 private void Sub_DeleteBill() { Int64 lngBillKey = 0; if (grdMain.CurrentRow == null) return; lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); if (lngBillKey == 0) return; ClsXt_CheckFlowMain oBill = new ClsXt_CheckFlowMain(); if (oBill.ShowBill(lngBillKey, ref ClsPub.sExeReturnInfo)) { if (MessageBox.Show("确定要删除当前单据?", "提示", MessageBoxButtons.OKCancel)==DialogResult.OK) { if (!oBill.DeleteBill(oBill.HInterID, ref ClsPub.sExeReturnInfo)) { MessageBox.Show(ClsPub.sExeReturnInfo, "提示"); return; } else { Display(); } } } else { MessageBox.Show("单据未找到", "提示"); } } private void timer2_Tick(object sender, EventArgs e) { timer2.Enabled = false; frmCondition = new frmBillQueryCondition_New(); frmCondition.Tag = ""; frmCondition.ViewName = ViewName; frmCondition.ModName = this.Name; frmCondition.ShowDialog(); if (frmCondition.Tag.ToString() == "OK") { timer1.Enabled = true; } } private void yl_Click(object sender, EventArgs e) { } private void bclk_Click(object sender, EventArgs e) { //保存列宽 DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name); } private void mrlk_Click(object sender, EventArgs e) { DBUtility.Xt_BaseBillFun.DefaultGridView(grdMain, this.Name); } private void GraphLine() { int MainIDCol = Fun_GetCol("hmainid"); int SubIDCol = Fun_GetCol("hsubid"); string s = frmCondition.cmbHComplete.Text; long n = 0; DBUtility.Xt_BaseBillFun.GraphLine(grdMain, MainIDCol, SubIDCol, s, ref n); //显示 //lbldj.Text = "查询出 " + n.ToString() + " 张单据"; //lbljl.Text = "共有 " + grdMain.RowCount.ToString() + " 条记录"; } //合计 new private void Total() { if (grdMain.Rows.Count > 0 && grdMain.ColumnCount > 0) { oSumGrid.SetGridsum(); oSumGrid.Total(); } } private void grdMain_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e) { Total(); } private void grdMain_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e) { Total(); } private void grdMain_DoubleClick(object sender, EventArgs e) { Sub_ShowBill(); } private void GraphicsGrid() { DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); } private void grdMain_Paint(object sender, PaintEventArgs e) { GraphicsGrid(); } } }