using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using DevExpress.XtraEditors;
using ProjectBase.Data.BaseDAL;
using SIMDP.BLL;
using ProjectBase.Data.Logs;
using SIMDP.Model;
using SIMDP.Util;
namespace SIMDP
{
public partial class FormLogOperationSetting : DevExpress.XtraEditors.XtraForm
{
string condition = null;
public FormLogOperationSetting()
{
InitializeComponent();
}
private void FormLogOperationSetting_Load(object sender, EventArgs e)
{
InitControl();
InitGrid();
}
///
/// 初始化控件
///
private void InitControl()
{
List tableList = BLLFactory.Instance.GetTableNames();
tableList.Insert(0,"全部表");
this.lookUp_TableName.Properties.DataSource = tableList;
this.lookUp_TableName.Properties.NullText = null;
this.lookUp_TableName.EditValue = tableList[0];
}
///
/// 初始化表格控件
///
private void InitGrid()
{
//entity
this.winGridViewPager1.OnPageChanged += new EventHandler(winGridViewPager1_OnPageChanged);
this.winGridViewPager1.OnStartExport += new EventHandler(winGridViewPager1_OnStartExport);
this.winGridViewPager1.OnRefresh += new EventHandler(winGridViewPager1_OnRefresh);
this.winGridViewPager1.OnEditSelected += new EventHandler(winGridViewPager1_OnEditSelected);
this.winGridViewPager1.OnAddNew += new EventHandler(winGridViewPager1_OnAddNew);
this.winGridViewPager1.OnDeleteSelected += new EventHandler(winGridViewPager1_OnDeleteSelected);
this.winGridViewPager1.gridView1.CustomColumnDisplayText += new DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventHandler(gridView1_CustomColumnDisplayText);
this.winGridViewPager1.ShowLineNumber = true;
this.winGridViewPager1.BestFitColumnWith = true;
this.winGridViewPager1.DisplayColumns = "TableName,Forbid,InsertLog,DeleteLog,UpdateLog,CreatorName,CreateTime,EditorName,EditTime";
#region 添加别名解析
this.winGridViewPager1.AddColumnAlias("ID", "");
this.winGridViewPager1.AddColumnAlias("TableName", "数据库表名称");
this.winGridViewPager1.AddColumnAlias("Forbid", "是否禁用");
this.winGridViewPager1.AddColumnAlias("InsertLog", "记录插入日志");
this.winGridViewPager1.AddColumnAlias("DeleteLog", "记录删除日志");
this.winGridViewPager1.AddColumnAlias("UpdateLog", "记录更新日志");
this.winGridViewPager1.AddColumnAlias("CreatorAccount", "");
this.winGridViewPager1.AddColumnAlias("CreatorName", "创建人");
this.winGridViewPager1.AddColumnAlias("CreateTime", "创建时间");
this.winGridViewPager1.AddColumnAlias("EditorAccount", "");
this.winGridViewPager1.AddColumnAlias("EditorName", "编辑人名称");
this.winGridViewPager1.AddColumnAlias("EditTime", "编辑时间");
#endregion
this.winGridViewPager1.PrintTitle = "用户操作日志数据库表配置表";
this.winGridViewPager1.gridView1.Appearance.HeaderPanel.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
BindData(" 1=1");
condition = " 1=1";
}
///
/// 绑定数据源
///
///
private void BindData(string condition)
{
this.winGridViewPager1.DataSource = BLLFactory.Instance.FindWithPager(condition, this.winGridViewPager1.PagerInfo);
for (int i = 0; i < this.winGridViewPager1.gridView1.Columns.Count; i++) //设置每列内容居中显示
{
this.winGridViewPager1.gridView1.Columns[i].AppearanceCell.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
}
}
///
/// 分页控件翻页的操作
///
private void winGridViewPager1_OnPageChanged(object sender, EventArgs e)
{
BindData(condition);
}
///
/// 分页控件全部导出操作前的操作
///
private void winGridViewPager1_OnStartExport(object sender, EventArgs e)
{
this.winGridViewPager1.AllToExport = BLLFactory.Instance.Find(condition);
}
///
/// 分页控件刷新操作
///
private void winGridViewPager1_OnRefresh(object sender, EventArgs e)
{
BindData(condition);
}
///
/// 分页控件编辑项操作
///
private void winGridViewPager1_OnEditSelected(object sender, EventArgs e)
{
MoLogOperationSetting selectRow = this.winGridViewPager1.gridView1.GetFocusedRow() as MoLogOperationSetting;
}
///
/// 分页控件新增操作
///
private void winGridViewPager1_OnAddNew(object sender, EventArgs e)
{
}
///
/// 分页控件删除操作
///
private void winGridViewPager1_OnDeleteSelected(object sender, EventArgs e)
{
try
{
if (DevExpress.XtraEditors.XtraMessageBox.Show("您确定删除选定的记录么?", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.No)
{
return;
}
MoLogOperationSetting selectRow = this.winGridViewPager1.gridView1.GetFocusedRow() as MoLogOperationSetting;
int id = Convert.ToInt32(selectRow.ID);
bool flag = BLLFactory.Instance.Delete(id, SysEnvironment.CurrentLoginID);
if (flag)
{
DevExpress.XtraEditors.XtraMessageBox.Show("删除成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
BindData(condition);
}
}
catch (Exception ex)
{
DevExpress.XtraEditors.XtraMessageBox.Show("删除失败。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
LogHelper.log.Error(string.Format("删除数据库log_operationSetting出现错误:{0}", ex));
}
}
void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e)
{
if (e.Column.ColumnType == typeof(DateTime))
{
string columnName = e.Column.FieldName;
if (e.Value != null)
{
if (Convert.ToDateTime(e.Value) <= Convert.ToDateTime("1900-1-1"))
{
e.DisplayText = "";
}
else
{
e.DisplayText = Convert.ToDateTime(e.Value).ToString("yyyy-MM-dd HH:mm");//yyyy-MM-dd
}
}
}
}
private void btn_Query_Click(object sender, EventArgs e)
{
if (lookUp_TableName.Text == "全部表" && check_Forbid.CheckState != CheckState.Checked)
{
BindData(" 1=1");
condition = " 1=1";
return;
}
string sql = " 1=1";
if (lookUp_TableName.Text != "全部表")
{
sql += string.Format(" AND setting_tableName = '{0}'",lookUp_TableName.Text);
}
if (check_Forbid.CheckState == CheckState.Checked)
{
sql += string.Format(" AND setting_forBid = {0}" ,1);
}
BindData(sql);
condition = sql;
}
private void btn_Add_Click(object sender, EventArgs e)
{
winGridViewPager1_OnAddNew(sender, e);
}
}
}