📄 frmhistorydata.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using DataAccessLayer;
namespace cpzh
{
public partial class frmHistoryData : Form
{
private HistoryData awardData; //中奖数据
private OLEDBAccessObj dbObj;
private HistoryAnalyse historyAnalyse;
public frmHistoryData()
{
awardData = new HistoryData();
this.dbObj = new OLEDBAccessObj();
this.dbObj.ConnectDB();
this.historyAnalyse = new HistoryAnalyse(this.dbObj);
InitializeComponent();
}
private void mtbBoxNo_KeyDown(object sender, KeyEventArgs e)
{
if (mtbBoxNo.Text.Trim().Length>0 && e.KeyValue ==13)
{
lbInfo.Text = "";
SendKeys.Send("{TAB}");
}
}
private void mtbAwardDate_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyValue == 13)
{
SendKeys.Send("{TAB}");
}
}
private void mtbAwardNo_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyValue == 13)
{
SendKeys.Send("{TAB}");
}
}
private void mtbFirstAward_KeyDown(object sender, KeyEventArgs e)
{
if (mtbFirstAward.Text.Trim().Length > 0 && e.KeyValue ==13)
{
SendKeys.Send("{TAB}");
}
}
private void mtbSecondAward_KeyDown(object sender, KeyEventArgs e)
{
if (mtbSecondAward.Text.Trim().Length > 0 && e.KeyValue ==13)
{
SendKeys.Send("{TAB}");
}
}
private void btnAddData_Click(object sender, EventArgs e)
{
lbInfo.Text = "";
if (mtbBoxNo.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的奖球盒号!");
mtbBoxNo.Focus();
return;
}
if (mtbAwardDateNo.Text.Trim().Length != 7)
{
MessageBox.Show("请输入有效的开奖期号!");
mtbAwardDateNo.Focus();
return;
}
if (mtbAwardNo.Text.Trim().Length != 20)
{
MessageBox.Show("请输入有效的开奖号!");
mtbAwardNo.Focus();
return;
}
if (mtbFirstAward.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的一等奖注数!");
mtbFirstAward.Focus();
return;
}
if (mtbSecondAward.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的二等奖注数!");
mtbSecondAward.Focus();
return;
}
if (this.historyAnalyse.Add(awardData))
{
lbInfo.Text = "添加成功!";
}
else
{
lbInfo.Text = "添加失败!";
return;
}
InitMtb();
mtbBoxNo.SelectAll() ;
mtbBoxNo.Focus();
btnAddData.Enabled = false;
}
/// <summary>
/// 初始化输入框
/// </summary>
private void InitMtb()
{
mtbBoxNo.Text = "0";
mtbAwardNo.Text = "";
mtbAwardDate.Text = "2007";
mtbFirstAward.Text = "0";
mtbSecondAward.Text = "0";
}
/// <summary>
/// 显示录入信息
/// </summary>
/// <param name="awardData"></param>
private void ShowInfo(HistoryData awardData)
{
tbBoxNo.Text =awardData .BoxNo .ToString ();
tbAwardBall.Text = awardData.DataNo.ToString();
//tbAwardNo.Text =awardData .AwardNo .ToString ();
tbAwardNo.Text = "";
for (int i = 0; i < awardData.AwardNo.Length; i++)
{
if (i == awardData.AwardNo.Length - 1)
{
tbAwardNo.Text += awardData.AwardNo[i].ToString();
}
else
{
tbAwardNo.Text += awardData.AwardNo[i].ToString() +"-";
}
}
tbEvenOdd.Text =awardData .EvenNum .ToString() +":"+awardData .OddNum .ToString ();
tbBigSmall.Text =awardData .BigNum .ToString () +":"+awardData .SmallNum .ToString ();
tbThree.Text =awardData .FirstNum .ToString ()+":"+awardData .SecondNum .ToString ()+
":"+ awardData .ThirdNum .ToString ();
tbSum.Text =awardData .Sum .ToString ();
tbJoinGroup.Text =awardData .JoinGroupNum .ToString ();
tbMantissaGroup.Text =awardData .MantissaGroupNum .ToString ();
tbSameness.Text =awardData .SamenessNum .ToString ();
tbFirstAward.Text =awardData .Firstaward .ToString ();
tbSecondAward.Text =awardData .Secondaward .ToString ();
}
/// <summary>
/// 根据中奖号计算结果
/// </summary>
private void Calculate()
{
Boolean bTemp;
string[] temp;
string[] previousData;
string sTemp;
int iTemp;
int even, odd;
int big, small;
int first, second, third;
int iSum;
ArrayList tempList,tempAwardNo;
int join;
int samenessNum;
iTemp = 0;
sTemp = "";
even = 0;
odd = 0;
big = 0;
small = 0;
first = 0;
second = 0;
third = 0;
iSum = 0;
join = 0;
samenessNum = 0;
previousData = new string[7];
temp=new string [7];
tempAwardNo = new ArrayList();
tempList =new ArrayList();
awardData.BoxNo = int.Parse(mtbBoxNo.Text.ToString());
awardData.DataNo = int.Parse(mtbAwardDate.Text.ToString());
awardData.Firstaward = int.Parse(mtbFirstAward.Text.ToString());
awardData.Secondaward = int.Parse(mtbSecondAward.Text.ToString());
//如果他是001期
if (mtbAwardDate.Text.Trim().ToString().Substring(mtbAwardDate.Text.Trim().Length - 2) == "001")
{
//sTemp =Convert .ToString(int.Parse ( mtbAwardDate.Text.Trim().Substring(1, mtbAwardDate.Text.Trim().Length - 3))-1) + ;
//previousData = "0";
previousData =new string []{"0","0","0","0","0","0","0"};
}
else
{
previousData = historyAnalyse.GetAwardNo(awardData .DataNo -1).Split ('-');
}
temp = mtbAwardNo.Text.Split('-');
for (int i = 0; i < temp.Length; i++)
{
iTemp =int.Parse(temp[i].ToString());
if (i < temp.Length - 1)
{
//计算重复数据
for (int m = 0; m < previousData.Length - 1; m++)
{
if (temp[i].ToString() == previousData[m].ToString())
{
samenessNum += 1;
}
}
//计算和值
iSum += iTemp;
//临时中奖号
tempAwardNo.Add(iTemp);
//计算奇偶
if ((iTemp % 2) > 0)
{
even += 1;
}
else
{
odd += 1;
}
//统计大小数
if (iTemp > 16)
{
big += 1;
}
else
{
small += 1;
}
//统计三区数
if (iTemp < 12)
{
first +=1;
}
else if(iTemp >22)
{
third +=1;
}
else
{
second +=1;
}
//计算同尾数
bTemp = false;
sTemp = temp[i].Substring(temp[i].Length - 1);
for (int k = i+1; k < temp.Length; k++)
{
if (temp[k].Substring(temp[i].Length - 1) == sTemp)
{
bTemp = true;
for (int j = 0; j < tempList.Count; j++)
{
if (tempList[j].ToString() == sTemp)
{
bTemp = false;
// tempList.Add(sTemp);
}
}
if (bTemp == true)
{
tempList.Add(sTemp);
}
if (tempList.Count == 0)
{
tempList.Add(sTemp);
}
}
}
//if (bTemp == true )
//{
// for (int j = 0; j < tempList.Count; j++)
// {
// if (tempList[j].ToString() == sTemp)
// {
// tempList.Add(sTemp);
// }
// }
// if (tempList.Count == 0)
// {
// tempList.Add(sTemp);
// }
//}
}
//添加中奖号
awardData.AwardNo[i]=iTemp;
}
awardData.EvenNum = even;
awardData.OddNum = odd;
awardData.BigNum = big;
awardData.SmallNum = small;
awardData.FirstNum = first;
awardData.SecondNum = second;
awardData.ThirdNum = third;
awardData.Sum = iSum;
awardData.MantissaGroupNum = tempList.Count;
awardData.SamenessNum = samenessNum;
//计算连号组数
tempAwardNo.Sort();
bTemp = false;
for (int i = 0; i < tempAwardNo.Count-1; i++)
{
if (int.Parse(tempAwardNo[i].ToString()) + 1 == int.Parse(tempAwardNo[i + 1].ToString()) && bTemp !=true)
{
bTemp = true;
join += 1;
}
else
{
bTemp = false;
}
}
awardData.JoinGroupNum = join;
}
private void mtbSecondAward_PreviewKeyDown(object sender, PreviewKeyDownEventArgs e)
{
if (mtbSecondAward.Text.Trim().Length > 0 && e.KeyValue == 13)
{
//ShowInfo(awardData);
btnAddData.Enabled = true;
Calculate();
ShowInfo(awardData);
}
}
private void frmHistoryData_Load(object sender, EventArgs e)
{
}
private void mtbSecondAward_MaskInputRejected(object sender, MaskInputRejectedEventArgs e)
{
}
private void mtbBoxNo_MaskInputRejected(object sender, MaskInputRejectedEventArgs e)
{
}
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnQuery_Click(object sender, EventArgs e)
{
string str;
str=mtbAwardDateNo.Text.Trim().ToString ();
if (str.Length < 7)
{
MessageBox.Show("请输入完整开奖期号!");
return;
}
awardData=historyAnalyse.GetAwardData(int.Parse ( str));
ShowInfo(awardData);
}
private void btnModife_Click(object sender, EventArgs e)
{
if (mtbBoxNo.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的奖球盒号!");
mtbBoxNo.Focus();
return;
}
if (mtbAwardDateNo.Text.Trim().Length != 7)
{
MessageBox.Show("请输入有效的开奖期号!");
mtbAwardDateNo.Focus();
return;
}
if (mtbAwardNo.Text.Trim().Length != 20)
{
MessageBox.Show("请输入有效的开奖号!");
mtbAwardNo.Focus();
return;
}
if (mtbFirstAward.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的一等奖注数!");
mtbFirstAward.Focus();
return;
}
if (mtbSecondAward.Text.Trim().Length < 1)
{
MessageBox.Show("请输入有效的二等奖注数!");
mtbSecondAward.Focus();
return;
}
Calculate();
ShowInfo(awardData);
if (this.historyAnalyse.Modify (awardData))
{
lbInfo.Text = "修改成功!";
}
else
{
lbInfo.Text = "修改失败!";
return;
}
InitMtb();
mtbBoxNo.SelectAll();
mtbBoxNo.Focus();
}
private void mtbAwardNo_MaskInputRejected(object sender, MaskInputRejectedEventArgs e)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -