using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace OAM { public partial class frmLTView : Form { public frmLTView() { InitializeComponent(); } public long ID; private void timer1_Tick(object sender, EventArgs e) { timer1.Enabled = false; timer1.Interval = 60000; Display(); } private void button1_Click(object sender, EventArgs e) { SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); if (txtoperator.Text == DBUtility.ClsPub.CurUserName) { DialogResult dr = MessageBox.Show("确定要删除此单据吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); if (dr == DialogResult.Yes) { if (!DBUtility.ClsPub.Security_Log("OA_Manager", 1, true, DBUtility.ClsPub.CurUserName)) { return; } oCn.RunProc("delete from oa_ltsub where Mainid=" + ID); oCn.RunProc("delete from oa_ltmain where id=" + ID); MessageBox.Show("删除成功!"); this.Close(); } else { } } else { MessageBox.Show("对不起!只有发帖人才能删除!"); } } public void Display() { SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); DataSet Ds; DataSet Ds2; Ds = oCn.RunProcReturn("Select * from oa_ltmain where id=" + ID, "oa_ltmain", ref DBUtility.ClsPub.sExeReturnInfo); if (Ds == null) { MessageBox.Show("显示失败!原因:" + DBUtility.ClsPub.sExeReturnInfo); return; } txtContext.Text = Ds.Tables[0].Rows[0]["context"].ToString(); txtDesc.Text = Ds.Tables[0].Rows[0]["Description"].ToString(); txtoperator.Text = Ds.Tables[0].Rows[0]["operator"].ToString(); txtFDate.Text = Ds.Tables[0].Rows[0]["opdate"].ToString(); Ds2 = oCn.RunProcReturn("select case when row_number()OVER(ORDER BY id,lev )%2=1 then '楼层' else '用户' end HType,case when row_number()OVER(ORDER BY id,lev )%2=1 then " + " case when row_number()OVER(ORDER BY id,lev )=1 then '1楼(沙发)'"+ " else case when row_number()OVER(ORDER BY id,lev )=3 then '2楼(板凳)'"+ " else case when row_number()OVER(ORDER BY id,lev )=5 then '3楼(地板)'"+ " else convert(varchar(50), row_number()OVER(ORDER BY id,lev )/2+1)+'楼' end end end"+ " else operator end 用户,opdate from("+ " Select 1 lev,id,'' operator,convert(varchar(100),opdate,20) opdate from oa_ltsub where mainid="+ID+" and id>=0"+ " union all"+ " Select 2,id,operator,context from oa_ltsub where mainid="+ID+" and id>=0)as a "+ " order by id,lev", "oa_ltsub", ref DBUtility.ClsPub.sExeReturnInfo); if (Ds2 == null) { MessageBox.Show("显示失败!原因:" + DBUtility.ClsPub.sExeReturnInfo); return; } grdMain.DataSource = Ds2.Tables[0].DefaultView; grdMain.ColumnHeadersVisible = false; grdMain.Columns[0].Visible = false; //grdMain.Columns[0].Width = 100; //grdMain.Columns[1].Width = 1000; DBUtility.ClsPub.GetGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath); } private void cmdSend_Click(object sender, EventArgs e) { DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath); SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); if (txtContext_New.Text == "") { MessageBox.Show("请填写回复内容!"); } string Context = txtContext_New.Text.Replace("'", "‘"); int Rows = grdMain.Rows.Count + 1; oCn.RunProc("Insert into oa_ltsub(mainid,id,context,operator,opdate) values(" + ID + "," + Rows + ",'" + Context + "','" + DBUtility.ClsPub.CurUserName + "',getdate())"); Display(); } private void frmLTView_Load(object sender, EventArgs e) { //DBUtility.Xt_BaseBillFun.initGridList(grdMain, this.Name); } private void cmdCancel_Click(object sender, EventArgs e) { DBUtility.ClsPub.SaveGridView(grdMain, this.Name, DBUtility.ClsPub.AppPath); this.Close(); } private void grdMain_DoubleClick(object sender, EventArgs e) { frmUserset ofrmUserset = new frmUserset(); string sType = ""; string sName = ""; if (grdMain.CurrentRow == null) return; sType = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("HType")].Value); if (sType == "楼层") { return; } sName = DBUtility.ClsPub.isStrNull(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("用户")].Value); if (sName == "") return; ofrmUserset.UserName = sName; ofrmUserset.cmdOK.Enabled = false; timer1.Enabled = false; ofrmUserset.ShowDialog(); timer1.Enabled = true; } private Int32 Fun_GetCol(string sCol) { return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); } private void grdMain_Scroll(object sender, ScrollEventArgs e) { grdMain.RowsDefaultCellStyle.WrapMode = DataGridViewTriState.True; } } }