using System; using System.Data; using System.Windows.Forms; using DevComponents.DotNetBar; using DevComponents.DotNetBar.Controls; namespace Cyberpipe { public partial class FrmLog : Office2007Form { private PanelEx panelEx1; private ButtonX btn_query; private Label label1; private DateTimePicker dateTimePicker_end; private DateTimePicker dateTimePicker_start; private LabelX labelX1; private Bar bar1; string macId; private int currentpage = 1; private int lastpage = 1; private LabelItem lab_page_msg; private ButtonItem btn_page_first; private ButtonItem btn_page_pre; private ComboBoxItem combo_page_num; private ButtonItem btn_page_next; private ButtonItem btn_page_last; private DataGridViewX dataGridViewX1; private DataGridViewLabelXColumn dbid; private DataGridViewLabelXColumn rowno; private DataGridViewLabelXColumn equipment; private DataGridViewLabelXColumn operate; private DataGridViewLabelXColumn operate_time; private DataGridViewLabelXColumn username; private int pagesize = 16; public FrmLog() { InitializeComponent(); } public FrmLog(string macId) { this.macId = macId; InitializeComponent(); } private void FrmLog_Load(object sender, EventArgs e) { dateTimePicker_end.Value = DateTime.Now; dateTimePicker_start.Value = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1); reloadDataGrid(currentpage); } private void reloadDataGrid(int pageIndex) { if (dateTimePicker_start.Value.CompareTo(dateTimePicker_end.Value) > 0) { MessageBox.Show("开始日期不能大于结束日期!"); return; } string sqlrows = "select * from (select rownum as rowno,dbid,equipment,operate,operate_time,username from loginfo where equipment='" + macId + "' "; string sqlcount = "select count(*) from loginfo where equipment='" + macId + "' "; if (null != dateTimePicker_start.Value) { sqlrows += "and operate_time>=to_date('" + dateTimePicker_start.Value.ToShortDateString() + "','yyyy-MM-dd') "; sqlcount += "and operate_time>=to_date('" + dateTimePicker_start.Value.ToShortDateString() + "','yyyy-MM-dd') "; } if (null != dateTimePicker_end.Value) { DateTime time = dateTimePicker_end.Value; sqlrows += "and operate_time<=to_date('" + time.AddDays(1).ToShortDateString() + "','yyyy-MM-dd') "; sqlcount += "and operate_time<=to_date('" + time.AddDays(1).ToShortDateString() + "','yyyy-MM-dd') "; } sqlrows += "and rownum<=" + (pagesize * pageIndex) + ") table_alias where table_alias.rowno>=" + ((pageIndex - 1) * pagesize + 1); sqlrows += " order by operate_time desc"; int rows = int.Parse(OracleUtils.ExecuteScalar(OracleUtils.ConnectionString, CommandType.Text, sqlcount).ToString()); int pages = 0; if (rows % pagesize == 0) { pages = rows / pagesize; } else { pages = rows / pagesize + 1; } lastpage = pages; lab_page_msg.Text = "共" + rows + "条记录,每页" + pagesize + "条,第" + pageIndex + "页,共" + pages + "页"; combo_page_num.Items.Clear(); for (int i = 1; i <= pages; i++) { combo_page_num.Items.Add(new ComboBoxItem(i.ToString(), i.ToString())); } if (lastpage == 1) { btn_page_first.Enabled = false; btn_page_pre.Enabled = false; btn_page_last.Enabled = false; btn_page_next.Enabled = false; } else if (currentpage == 1) { btn_page_first.Enabled = false; btn_page_pre.Enabled = false; btn_page_last.Enabled = true; btn_page_next.Enabled = true; } else if (currentpage == lastpage) { btn_page_first.Enabled = true; btn_page_pre.Enabled = true; btn_page_last.Enabled = false; btn_page_next.Enabled = false; } else { btn_page_first.Enabled = true; btn_page_pre.Enabled = true; btn_page_last.Enabled = true; btn_page_next.Enabled = true; } DataTable table = OracleUtils.ExecuteDataset(OracleUtils.ConnectionString, CommandType.Text, sqlrows).Tables[0]; dataGridViewX1.DataSource = table; } private void InitializeComponent() { DataGridViewCellStyle dataGridViewCellStyle34 = new DataGridViewCellStyle(); panelEx1 = new PanelEx(); btn_query = new ButtonX(); label1 = new Label(); dateTimePicker_end = new DateTimePicker(); dateTimePicker_start = new DateTimePicker(); labelX1 = new LabelX(); bar1 = new Bar(); lab_page_msg = new LabelItem(); btn_page_first = new ButtonItem(); btn_page_pre = new ButtonItem(); combo_page_num = new ComboBoxItem(); btn_page_next = new ButtonItem(); btn_page_last = new ButtonItem(); dataGridViewX1 = new DataGridViewX(); dbid = new DataGridViewLabelXColumn(); rowno = new DataGridViewLabelXColumn(); equipment = new DataGridViewLabelXColumn(); operate = new DataGridViewLabelXColumn(); operate_time = new DataGridViewLabelXColumn(); username = new DataGridViewLabelXColumn(); panelEx1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(bar1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(dataGridViewX1)).BeginInit(); SuspendLayout(); // // panelEx1 // panelEx1.CanvasColor = System.Drawing.SystemColors.Control; panelEx1.ColorSchemeStyle = eDotNetBarStyle.StyleManagerControlled; panelEx1.Controls.Add(btn_query); panelEx1.Controls.Add(label1); panelEx1.Controls.Add(dateTimePicker_end); panelEx1.Controls.Add(dateTimePicker_start); panelEx1.Controls.Add(labelX1); panelEx1.Dock = DockStyle.Top; panelEx1.Location = new System.Drawing.Point(0, 0); panelEx1.Name = "panelEx1"; panelEx1.Size = new System.Drawing.Size(634, 34); panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center; panelEx1.Style.BackColor1.ColorSchemePart = eColorSchemePart.PanelBackground; panelEx1.Style.BackColor2.ColorSchemePart = eColorSchemePart.PanelBackground2; panelEx1.Style.Border = eBorderType.SingleLine; panelEx1.Style.BorderColor.ColorSchemePart = eColorSchemePart.PanelBorder; panelEx1.Style.ForeColor.ColorSchemePart = eColorSchemePart.PanelText; panelEx1.Style.GradientAngle = 90; panelEx1.TabIndex = 2; // // btn_query // btn_query.AccessibleRole = AccessibleRole.PushButton; btn_query.ColorTable = eButtonColor.OrangeWithBackground; btn_query.Location = new System.Drawing.Point(341, 4); btn_query.Name = "btn_query"; btn_query.Size = new System.Drawing.Size(75, 23); btn_query.Style = eDotNetBarStyle.StyleManagerControlled; btn_query.TabIndex = 3; btn_query.Text = "查询"; btn_query.Click += new EventHandler(btn_query_Click); // // label1 // label1.AutoSize = true; label1.Location = new System.Drawing.Point(195, 9); label1.Name = "label1"; label1.Size = new System.Drawing.Size(11, 12); label1.TabIndex = 2; label1.Text = "-"; // // dateTimePicker_end // dateTimePicker_end.Location = new System.Drawing.Point(212, 5); dateTimePicker_end.Name = "dateTimePicker_end"; dateTimePicker_end.Size = new System.Drawing.Size(123, 21); dateTimePicker_end.TabIndex = 1; // // dateTimePicker_start // dateTimePicker_start.Location = new System.Drawing.Point(66, 5); dateTimePicker_start.Name = "dateTimePicker_start"; dateTimePicker_start.Size = new System.Drawing.Size(123, 21); dateTimePicker_start.TabIndex = 1; // // labelX1 // labelX1.AutoSize = true; // // // labelX1.BackgroundStyle.CornerType = eCornerType.Square; labelX1.Location = new System.Drawing.Point(10, 7); labelX1.Name = "labelX1"; labelX1.Size = new System.Drawing.Size(50, 16); labelX1.TabIndex = 0; labelX1.Text = "日期范围"; // // bar1 // bar1.AntiAlias = true; bar1.Dock = DockStyle.Bottom; bar1.Items.AddRange(new BaseItem[] { lab_page_msg, btn_page_first, btn_page_pre, combo_page_num, btn_page_next, btn_page_last}); bar1.Location = new System.Drawing.Point(0, 351); bar1.Name = "bar1"; bar1.Size = new System.Drawing.Size(634, 28); bar1.Stretch = true; bar1.Style = eDotNetBarStyle.StyleManagerControlled; bar1.TabIndex = 3; bar1.TabStop = false; bar1.Text = "bar1"; // // lab_page_msg // lab_page_msg.Name = "lab_page_msg"; lab_page_msg.PaddingLeft = 30; lab_page_msg.PaddingRight = 30; lab_page_msg.Text = "labelItem1"; // // btn_page_first // btn_page_first.Name = "btn_page_first"; btn_page_first.Text = "|<首页"; btn_page_first.Click += new EventHandler(btn_page_first_Click); // // btn_page_pre // btn_page_pre.Name = "btn_page_pre"; btn_page_pre.Text = "<上一页"; btn_page_pre.Click += new EventHandler(btn_page_pre_Click); // // combo_page_num // combo_page_num.DropDownHeight = 106; combo_page_num.ItemHeight = 17; combo_page_num.Name = "combo_page_num"; combo_page_num.SelectedIndexChanged += new EventHandler(combo_page_num_SelectedIndexChanged); // // btn_page_next // btn_page_next.Name = "btn_page_next"; btn_page_next.Text = "下一页>"; btn_page_next.Click += new EventHandler(btn_page_next_Click); // // btn_page_last // btn_page_last.Name = "btn_page_last"; btn_page_last.Text = "尾页>|"; btn_page_last.Click += new EventHandler(btn_page_last_Click); // // dataGridViewX1 // dataGridViewX1.AllowUserToAddRows = false; dataGridViewX1.AllowUserToDeleteRows = false; dataGridViewX1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; dataGridViewX1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize; dataGridViewX1.Columns.AddRange(new DataGridViewColumn[] { dbid, rowno, equipment, operate, operate_time, username}); dataGridViewCellStyle34.Alignment = DataGridViewContentAlignment.MiddleLeft; dataGridViewCellStyle34.BackColor = System.Drawing.SystemColors.Window; dataGridViewCellStyle34.ForeColor = System.Drawing.SystemColors.ControlText; dataGridViewCellStyle34.SelectionBackColor = System.Drawing.SystemColors.Highlight; dataGridViewCellStyle34.SelectionForeColor = System.Drawing.SystemColors.ControlText; dataGridViewCellStyle34.WrapMode = DataGridViewTriState.False; dataGridViewX1.DefaultCellStyle = dataGridViewCellStyle34; dataGridViewX1.Dock = DockStyle.Fill; dataGridViewX1.GridColor = System.Drawing.Color.FromArgb(((int)(((byte)(170)))), ((int)(((byte)(170)))), ((int)(((byte)(170))))); dataGridViewX1.Location = new System.Drawing.Point(0, 34); dataGridViewX1.Name = "dataGridViewX1"; dataGridViewX1.ReadOnly = true; dataGridViewX1.RowTemplate.Height = 23; dataGridViewX1.Size = new System.Drawing.Size(634, 317); dataGridViewX1.TabIndex = 4; // // dbid // dbid.DataPropertyName = "dbid"; dbid.HeaderText = "dbid"; dbid.Name = "dbid"; dbid.ReadOnly = true; dbid.Visible = false; // // rowno // rowno.DataPropertyName = "rowno"; rowno.HeaderText = "rowno"; rowno.Name = "rowno"; rowno.ReadOnly = true; rowno.Visible = false; // // equipment // equipment.DataPropertyName = "equipment"; equipment.HeaderText = "设备"; equipment.Name = "equipment"; equipment.ReadOnly = true; equipment.TextAlignment = System.Drawing.StringAlignment.Center; // // operate // operate.DataPropertyName = "operate"; operate.HeaderText = "操作"; operate.Name = "operate"; operate.ReadOnly = true; operate.TextAlignment = System.Drawing.StringAlignment.Center; // // operate_time // operate_time.DataPropertyName = "operate_time"; operate_time.HeaderText = "操作时间"; operate_time.Name = "operate_time"; operate_time.ReadOnly = true; operate_time.TextAlignment = System.Drawing.StringAlignment.Center; // // username // username.DataPropertyName = "username"; username.HeaderText = "操作人"; username.Name = "username"; username.ReadOnly = true; username.TextAlignment = System.Drawing.StringAlignment.Center; // // FrmLog // ClientSize = new System.Drawing.Size(634, 379); Controls.Add(dataGridViewX1); Controls.Add(bar1); Controls.Add(panelEx1); DoubleBuffered = true; Name = "FrmLog"; StartPosition = FormStartPosition.CenterScreen; Text = "设备日志查看"; Load += new EventHandler(FrmLog_Load); panelEx1.ResumeLayout(false); panelEx1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(bar1)).EndInit(); ((System.ComponentModel.ISupportInitialize)(dataGridViewX1)).EndInit(); ResumeLayout(false); } private void btn_query_Click(object sender, EventArgs e) { currentpage = 1; reloadDataGrid(currentpage); } private void btn_page_first_Click(object sender, EventArgs e) { currentpage = 1; reloadDataGrid(currentpage); } private void btn_page_pre_Click(object sender, EventArgs e) { currentpage--; if (currentpage <= 0) { currentpage = 1; } reloadDataGrid(currentpage); } private void btn_page_next_Click(object sender, EventArgs e) { currentpage++; if (currentpage > lastpage) { currentpage = lastpage; } reloadDataGrid(currentpage); } private void btn_page_last_Click(object sender, EventArgs e) { currentpage = lastpage; reloadDataGrid(currentpage); } private void combo_page_num_SelectedIndexChanged(object sender, EventArgs e) { if (!String.IsNullOrEmpty(combo_page_num.Text.Trim())) { currentpage = int.Parse(combo_page_num.Text.Trim()); reloadDataGrid(currentpage); } } } }