zoukankan      html  css  js  c++  java
  • 操作日志的生成和综合搜索

    一:截图

    2014-04-07_1829072014-04-07_1829342014-04-07_183013

    二:OperationLogDAL.cs源代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using HRMSys.Model;
    using System.Data;
    using System.Data.SqlClient;
    
    namespace HRMSys.DAL
    {
        public class OperationLogDAL
        {
            /// <summary>
            /// 将数据库的格式转换为object对象的字段格式
            /// </summary>
            /// <param name="row"></param>
            /// <returns></returns>
            public OperationLog Tomodel(DataRow row)
            {
                OperationLog log=new OperationLog();
                log.Id=(Guid)row["Id"];
                log.OperatorId = (Guid)row["OperatorId"];
                log.MakeDate=(DateTime)row["MakeDate"];
                log.ActionDesc = (string)row["ActionDesc"];
                log.LoginUser = (string)sqlhelper.FromDbValue(row["LoginUser"]);
                return log;
     
            }
            /// <summary>
            /// 插入一条操作记录
            /// </summary>
            /// <param name="OperatorId"></param>
            /// <param name="ActionDesc"></param>
            
            public void InsertLog(Guid OperatorId, string loginUser, string ActionDesc)
            {
                                                             
                sqlhelper.ExecuteNon(@"insert into T_OperationLog(Id,OperatorId,MakeDate,ActionDesc,LoginUser)
                values(newid(),@OperatorId,getdate(),@ActionDesc,@LoginUser)", new SqlParameter("@ActionDesc", ActionDesc),
                                                                             new SqlParameter("@OperatorId", OperatorId),
                                                                            new SqlParameter("@LoginUser", loginUser));//这里是values,不是value
    
            }
            /// <summary>
            /// 插入一条操作记录
            /// </summary>
            /// <param name="OperatorId"></param>
            /// <param name="ActionDesc"></param>
    
            public void InsertLog(Guid OperatorId,  string ActionDesc)
            {
    
                sqlhelper.ExecuteNon(@"insert into T_OperationLog(Id,OperatorId,MakeDate,ActionDesc)
                values(newid(),@OperatorId,getdate(),@ActionDesc)", new SqlParameter("@ActionDesc", ActionDesc),
                                                                             new SqlParameter("@OperatorId", OperatorId)
                                                                          );//这里是values,不是value
    
            }
            /// <summary>
            /// 得到综合查询的OperationLog数组
            /// </summary>
            /// <param name="sql"></param>
            /// <param name="sqlparameter"></param>
            /// <returns></returns>
            public OperationLog[] Search(string sql, SqlParameter[] sqlparameters)
            {
                DataTable table = sqlhelper.datatable(sql, sqlparameters);
                //OperationLog[] log=new OperationLog[table.Rows.Count]();
                OperationLog[] log = new OperationLog[table.Rows.Count];//不需要再加小括号了
               
                for (int i = 0; i < table.Rows.Count; i++)
                {
                    log[i] =Tomodel( table.Rows[i]);
                   
                }
                return log;
            }
            
    
        }
    }

    三:OperationLog.cs源代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace HRMSys.Model
    {
        public class OperationLog
        {
            public Guid Id { get; set; }
            public Guid OperatorId { get; set; }
            public DateTime MakeDate { get; set; }
            public String ActionDesc { get; set; }
            public string LoginUser { get; set; }
        }
    }

    四:OperationLogList.cs源代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace HRMSys.Model
    {
        public class OperationLogList
        {
            public Guid Id { get; set; }
            public string OperatorName { get; set; }
            public DateTime MakeDate { get; set; }
            public String ActionDesc { get; set; }
            public string LoginUser { get; set; }
        }
    }

    五:OperationSearchLog.cs界面和源代码

    2014-04-07_183812

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using HRMSys.DAL;
    using System.Data.SqlClient;
    using HRMSys.Model;
    
    namespace HYMSys.UI.SystemMgr
    {
        public partial class OperationSearchLog : Form
        {
            public OperationSearchLog()
            {
                InitializeComponent();
            }
            /// <summary>
            /// 载入事件,给窗口填值
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void OperationSearchLog_Load(object sender, EventArgs e)
            {
                OperatorDAL dal = new OperatorDAL();
                Operator op = new Operator();
    
                cb_operator.DataSource = dal.GetListNotDelete();
                //cb_operator.SelectedValue = op.Id;
                //cb_operator.ValueMember = op.UserName;
                //cb_operator.SelectedValue = "Id";
                //cb_operator.ValueMember = "UserName";
                cb_operator.ValueMember = "Id";
                cb_operator.DisplayMember = "UserName";
    
                dtp_startdate.Value = DateTime.Today.AddDays(-5);
                dtp_enddate.Value = DateTime.Today;
               
            }
            /// <summary>
            /// 综合查询
            /// </summary>
            /// <param name="sender"></param>
            /// <param name="e"></param>
            private void btn_search_Click(object sender, EventArgs e)
            {
                List<string> whereList = new List<string>();
                List<SqlParameter> parametersList = new List<SqlParameter>();
                //if(chb_operator.CheckState==true)错误的
                if(chb_operator.Checked==true)
                {
                    whereList.Add("OperatorId=@OperatorId");
                    parametersList.Add(new SqlParameter("@OperatorId", cb_operator.SelectedValue));//不能用cb_operator.text
                }
    
                if (chb_date.Checked == true)
                {
                    whereList.Add("MakeDate>=@dtp_startdate and MakeDate<=@dtp_enddate");
                    parametersList.Add(new SqlParameter("@dtp_startdate", dtp_startdate.Value));//不能用dtp_startdate
                    parametersList.Add(new SqlParameter("@dtp_enddate", dtp_enddate.Value));
                }
                if (chb_desc.Checked == true)
                {
                    whereList.Add("ActionDesc like @ActionDesc");
                    parametersList.Add(new SqlParameter("@ActionDesc","%"+tb_desc.Text+"%"));
    
    
    
                }
                if (whereList.Count <= 0)
                {
                    MessageBox.Show("至少选择一个查询条件");//防止查询出的结果过多
                    return;
                }
                string whereSql = string.Join(" and ", whereList);
                string sql = "select * from T_OperationLog " ;
                
                if (whereSql.Length > 0)
                {
                    sql = sql + " where " + whereSql;
                }
    
                OperationLogDAL dal = new OperationLogDAL();
                dgv_logResult.DataSource = dal.Search(sql, parametersList.ToArray());
               // .DataSource = dal.Search(Sql, parameter);
            }
        }
    }
  • 相关阅读:
    LeetCode 234——回文链表
    【转】Jmeter常见问题
    【转】JMeter 聚合报告之90% Line参数说明
    【转】Jmeter + DadBoby 安装使用
    【转】JMeter远程测试
    【转】关于一个Jmeter interface testing的实例
    【转】Jmeter 代理服务器录制脚本
    【转】Jmeter和LR上传文件和下载
    【转】Jmeter JDBC请求的问题
    【转】Jmeter的正则表达式未正确提取数据
  • 原文地址:https://www.cnblogs.com/hongmaju/p/3650603.html
Copyright © 2011-2022 走看看