using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ViewController;
using DevExpress.XtraEditors;
using log4net;
using CommonHelper;
using Model;
namespace View
{
public partial class ctlQADataBase : UserControl
{
private static readonly ILog logger = LogManager.GetLogger(typeof(ctlQADataBase));
private ctlQADataBaseController cardLoad = new ctlQADataBaseController();
private DataTable g_GvLoadDataSource = null;
private DataTable g_GvDataSource = new DataTable();
public ctlQADataBase()
{
InitializeComponent();
GridViewDataInit();
}
private void GridViewDataInit()
{
g_GvDataSource.Clear();
gridViewCardInfo.Columns.Clear();
g_GvDataSource = cardLoad.QuestionInfo();
gridCtlCardInfo.DataSource = g_GvDataSource;
if(gridViewCardInfo.Columns.Count>0)
{
gridViewCardInfo.Columns[0].SummaryItem.DisplayFormat = "Total: {0}"; //设置GridView Footer的Count数
gridViewCardInfo.Columns[0].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Count; //设置GridView Footer的Count数
}
gridViewCardInfo.BestFitColumns();
}
private void barButtonItemRefresh_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
GridViewDataInit();
}
private void repositoryItemComboBoxMonth_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void barButtonItemExportDemo_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
gridViewCardInfo.Columns.Clear();
gridCtlCardInfo.DataSource = cardLoad.QuestionExport();
gridViewCardInfo.BestFitColumns();
string strSaveFileName = "";
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.DefaultExt = "Xlsx";
saveDialog.FileName += System.DateTime.Now.ToString("yyyyMMddHHMMss");
saveDialog.Filter = "Excel 文件|*.Xlsx";
if (DialogResult.OK == saveDialog.ShowDialog())
{
strSaveFileName = saveDialog.FileName;
gridViewCardInfo.ExportToXlsx(strSaveFileName);
}
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
logger.Error("[barButtonItemExportDemo_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)]: " + ex.Message + ex.StackTrace);
}
}
private void barButtonItemImport_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
string strImportFile = "";
OpenFileDialog openDialog = new OpenFileDialog();
openDialog.Filter = "Excel 文件|*.xlsx";
if (DialogResult.OK == openDialog.ShowDialog())
{
strImportFile = openDialog.FileName;
g_GvLoadDataSource = ExcelHelper.ExcelToDataTable(strImportFile, "");
if (g_GvLoadDataSource != null)
{
gridViewCardInfo.Columns.Clear();
gridCtlCardInfo.DataSource = g_GvLoadDataSource;
gridViewCardInfo.BestFitColumns();
}
else
{
XtraMessageBox.Show("数据不存在!", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
logger.Error("[barButtonItemImport_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)]: " + ex.Message + ex.StackTrace);
}
}
private void barButtonItemUpdateDB_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
if (g_GvLoadDataSource == null || g_GvLoadDataSource.Rows.Count < 1)
{
XtraMessageBox.Show("没有数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
return;
}
if (XtraMessageBox.Show("确认要批量导入到数据库里吗?", "确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
DataTable dt = g_GvLoadDataSource;
dt.TableName = "tb_question_answer";
string r=SQLiteHelper.SQLiteHelper.InsertByDataTable(dt);
barButtonItemRefresh_ItemClick(null, null);
XtraMessageBox.Show(r, "结果", MessageBoxButtons.OK, MessageBoxIcon.Information);
if(r=="success")
{
barButtonItemUpdateDB.Enabled = false;
g_GvLoadDataSource.Clear();
}
}
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void gridViewETEList_MouseUp(object sender, MouseEventArgs e)
{
DevExpress.XtraGrid.Views.Grid.ViewInfo.GridHitInfo hi = this.gridViewCardInfo.CalcHitInfo(e.Location);
if (hi.InRow && e.Button == MouseButtons.Right)
{
popupMenuGridView.ShowPopup(Control.MousePosition);
}
}
private void barSubItemCopyAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
gridViewCardInfo.SelectAll();
gridViewCardInfo.CopyToClipboard();
popupMenuGridView.HidePopup();
}
private void barStaticItemCopyAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
gridViewCardInfo.SelectAll();
gridViewCardInfo.CopyToClipboard();
popupMenuGridView.HidePopup();
}
private void barButtonItemDeleteAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
if (XtraMessageBox.Show("确认要批量删除所有数据吗?", "确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
{
if (SQLiteHelper.SQLiteHelper.ExecuteNonQuery("delete from tb_question_answer") > 0)
{
barButtonItemRefresh_ItemClick(null, null);
XtraMessageBox.Show("执行成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
XtraMessageBox.Show("执行失败!", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
catch(Exception ex)
{
XtraMessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using log4net;
using ViewController;
using DevExpress.XtraEditors;
using static System.Convert;
namespace View
{
public partial class ctlQALog : UserControl
{
private static readonly ILog logger = LogManager.GetLogger(typeof(ctlQALog));
private ctlQAlogController _ctlQAlogController = new ctlQAlogController();
public ctlQALog()
{
InitializeComponent();
}
private void ribbonStatusBar1_Click(object sender, EventArgs e)
{
}
private void groupControl1_Paint(object sender, PaintEventArgs e)
{
}
private void barButtonQuery_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
}
private void BarButtonQueryAll_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
}
private void barButtonItemToExcel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
//MessageBox.Show("请不要更改保存类型", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
SaveFileDialog savDlg = new SaveFileDialog();
savDlg.Filter= "Excel files (*.xlsx)|*.xlsx";//All files (*.*)|*.*|
savDlg.FilterIndex = 2;
if (savDlg.ShowDialog()==System.Windows.Forms.DialogResult.OK)
{
gridControlQALog.ExportToXlsx(savDlg.FileName);
}
Console.Write("pause");
}
private void barButtonItemDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
}
private void barButtonItem2_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
if (XtraMessageBox.Show("清空是一个不可逆的操作请慎重选择!\n确定要清除所有数据么?", "确认",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)==DialogResult.OK)
{
gridControlQALog.DataSource = _ctlQAlogController.QueryALogDelete();
XtraMessageBox.Show("删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
XtraMessageBox.Show("您已取消", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Console.Write("asdas");
}
private void barButtonItem4_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
gridControlQALog.DataSource = _ctlQAlogController.QueryQALogRecordEmpId(this.barEditItem1.EditValue.ToString());
gridView1.BestFitColumns();
}
private void barButtonItem5_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
gridControlQALog.DataSource = _ctlQAlogController.QueryQALogRecord();
gridView1.BestFitColumns();
}
private void gridControlQALog_Click(object sender, EventArgs e)
{
}
private void panelControl2_Paint(object sender, PaintEventArgs e)
{
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Model;
using DevExpress.XtraEditors;
using ViewController;
namespace View
{
public partial class ctlQAResult : UserControl
{
private ctlQAlogController _ctlQAlogController = new ctlQAlogController();
public ctlQAResult()
{
InitializeComponent();
}
public ctlQAResult(string userName, List<tb_question_answer> lstQa) : this()
{
try
{
DataTable dt = new DataTable();
dt.Columns.Add("序号", typeof(Int32));
dt.Columns.Add("问题", typeof(String));
dt.Columns.Add("你的回答", typeof(String));
dt.Columns.Add("正确回答", typeof(String));
for (int i = 1; i < 6; i++)
{
dt.Rows.Add();
dt.Rows[i - 1]["序号"] = (i);
dt.Rows[i - 1]["问题"] = lstQa[i].Question;
dt.Rows[i - 1]["你的回答"] = lstQa[i].UserAnswer;
dt.Rows[i - 1]["正确回答"] = lstQa[i].Answer;
InsertLog(userName, lstQa[i].UserAnswer, lstQa[i].Answer);
}
for (int i = 1; i < 6; i++)
{
if (lstQa[i].Answer == lstQa[i].UserAnswer)
{
panelControlResult.BackColor = Color.DarkGreen;
labelControlResult.ForeColor = Color.White;
labelControlResult.Text = "挑战成功";
labelControl1.Text = "恭喜您获得一次抽奖资格";
}
else
{
panelControlResult.BackColor = Color.Red;
labelControlResult.ForeColor = Color.White;
labelControlResult.Text = "挑战失败";
labelControl1.Text = "谢谢参与,请至工作人员处领取纪念品";
break;
}
}
gridControl1.DataSource = dt;
gridView1.BestFitColumns();
this.textEditreturn.Focus();
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void btnNext_Click(object sender, EventArgs e)
{
this.FindForm().DialogResult = DialogResult.OK;
}
private void gridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
{
try
{
if (gridView1.RowCount > 0)
{
if (gridView1.GetRowCellDisplayText(e.RowHandle, "你的回答") != gridView1.GetRowCellDisplayText(e.RowHandle, "正确答案"))
{
e.Appearance.ForeColor = Color.White;
e.Appearance.BackColor = Color.Red;
}
else
{
e.Appearance.ForeColor = Color.Black;
e.Appearance.BackColor = Color.White;
}
}
this.textEditreturn.Focus();
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void InsertLog(string empId, string UserAnswer, string trueAnswer)
{
try
{
string A = "N";
if (UserAnswer == trueAnswer)
A = "Y";
else
A = "N";
string sql = $"Insert into tb_QaLog (EmpId,QType,UserAnswer,TrueAnswer,ResultA,QAtime) values('{empId}','SELECT','{UserAnswer}','{trueAnswer}','{A}',datetime('now'))";
int r = SQLiteHelper.SQLiteHelper.ExecuteNonQuery(sql);
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void labelControlResult_Click(object sender, EventArgs e)
{
}
private void panelControlResult_Paint(object sender, PaintEventArgs e)
{
}
private void textEditreturn_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//tb_UserCardInfo info = _ctlSignController.QueryUserCardInfoByCard_NUM(textEditCardNum.Text.Trim());
//tb_UserCardInfo info = DicUserCardInfo[textEditreturn.Text.Trim()];
//tb_AdminInfo admininfo = DicUserAdminInfo[textEditreturn.Text.Trim()];
if (_ctlQAlogController.QueryREMARK(textEditreturn.Text.Trim()) > 0)
{
this.FindForm().DialogResult = DialogResult.OK;
}
else
{
XtraMessageBox.Show("你没有这个权限,请联系系统管理员!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
}
}
private void textEdit1_EditValueChanged(object sender, EventArgs e)
{
}
}
}