签到抽奖4

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)
        {

        }
    }
}

 

转载于:https://my.oschina.net/u/3736209/blog/1581025

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值