Ejemplo n.º 1
0
        private void ScatterSSC(String strFilePath)
        {
            StreamReader sr = File.OpenText(strFilePath);

            lstSSCPeriods.Clear();
            lstPeriodsDateFrom.Clear();
            lstPeriodsDateTo.Clear();
            lstPeriodsNoFrom.Clear();
            lstPeriodsNoTo.Clear();
            int    i   = 0;
            String str = "";

            while ((str = sr.ReadLine()) != null)
            {
                i++;
                ModelSSCPeriods period = new ModelSSCPeriods();
                period.PeriodDate    = str.Substring(0, 8);
                period.PeriodNo      = str.Substring(9, 3);
                period.Period        = period.PeriodDate + period.PeriodNo; //有20开头
                period.No5           = int.Parse(str.Substring(13, 1));
                period.No4           = int.Parse(str.Substring(14, 1));
                period.No3           = int.Parse(str.Substring(15, 1));
                period.No2           = int.Parse(str.Substring(16, 1));
                period.No1           = int.Parse(str.Substring(17, 1)); //第二个参数 和java 的substring 不一样
                period.DrawingNumber = str.Substring(13, 5);
                lstSSCPeriods.Add(period);
            }
            lstSSCPeriods.Reverse();
            lstPeriodsDateFrom = lstSSCPeriods.Select(x => x.PeriodDate).Distinct().ToList();
            lstPeriodsDateTo   = lstSSCPeriods.Select(x => x.PeriodDate).Distinct().ToList();
            lstPeriodsNoFrom   = lstSSCPeriods.Select(x => x.PeriodNo).Distinct().ToList();
            lstPeriodsNoTo     = lstSSCPeriods.Select(x => x.PeriodNo).Distinct().ToList();
            sr.Close();
            CbbPeriodDateFrom.DataSource = lstPeriodsDateFrom;
            CbbPeriodDateTo.DataSource   = lstPeriodsDateTo;
            CbbPeriodNoFrom.DataSource   = lstPeriodsNoFrom;
            CbbPeriodNoTo.DataSource     = lstPeriodsNoTo;
            LblStatus.Text = "Success";
        }
Ejemplo n.º 2
0
        private void AddPeriod(ModelCurrentBetState modelCurrentBetState, ModelCurrentBetState modelNextBetState,
                               ModelSSCPeriods modelSSCPeriods, List <ModelSSCPeriods> lstTempmodelSSCPeriods, int iPeriodIndex)
        {
            //+1
            //Bet0PlanID
            //Bet0PeriodID
            //modelCurrentBetState.Bet0PeriodID += 1;
            //modelCurrentBetState.Bet1PeriodID += 1;
            //modelCurrentBetState.Bet2PeriodID += 1;
            //modelCurrentBetState.Bet3PeriodID += 1;
            //modelCurrentBetState.Bet4PeriodID += 1;
            //modelCurrentBetState.Bet5PeriodID += 1;
            //modelCurrentBetState.Bet6PeriodID += 1;
            //modelCurrentBetState.Bet7PeriodID += 1;
            //modelCurrentBetState.Bet8PeriodID += 1;
            //modelCurrentBetState.Bet9PeriodID += 1;
            bool bReset = false;

            if (iPeriodIndex == lstTempmodelSSCPeriods.Count - 1)
            {
                bReset = false;
            }
            else
            {
                if (RdbNoReset.Checked == true)
                {
                    bReset = false;
                }
                else if (RdbResetByDay.Checked == true)
                {
                    //20170101
                    if (lstTempmodelSSCPeriods[iPeriodIndex].PeriodDate.Substring(6, 2) != lstTempmodelSSCPeriods[iPeriodIndex + 1].PeriodDate.Substring(6, 2))
                    {
                        bReset = true;
                    }
                }
                else if (RdbResetByMonth.Checked == true)
                {
                    if (lstTempmodelSSCPeriods[iPeriodIndex].PeriodDate.Substring(4, 2) != lstTempmodelSSCPeriods[iPeriodIndex + 1].PeriodDate.Substring(4, 2))
                    {
                        bReset = true;
                    }
                }
                else if (RdbResetByYear.Checked == true)
                {
                    if (lstTempmodelSSCPeriods[iPeriodIndex].PeriodDate.Substring(0, 4) != lstTempmodelSSCPeriods[iPeriodIndex + 1].PeriodDate.Substring(0, 4))
                    {
                        bReset = true;
                    }
                }
            }

            List <ModelBet> lsttempCurrentModelBet;
            List <ModelBet> lsttempNextModelBet;

            Type tcurrent = modelCurrentBetState.GetType();
            Type tnext    = modelNextBetState.GetType();

            //0  -- 9
            for (int i = 0; i < 10; i++)
            {
                System.Reflection.PropertyInfo propertyInfoPlan   = tcurrent.GetProperty("Bet" + i + "PlanID");
                System.Reflection.PropertyInfo propertyInfoPeriod = tcurrent.GetProperty("Bet" + i + "PeriodID");
                System.Reflection.PropertyInfo propertyInfoAmount = tcurrent.GetProperty("Bet" + i + "Amount");

                System.Reflection.PropertyInfo propertyInfoNextPlan   = tnext.GetProperty("Bet" + i + "PlanID");
                System.Reflection.PropertyInfo propertyInfoNextPeriod = tnext.GetProperty("Bet" + i + "PeriodID");
                System.Reflection.PropertyInfo propertyInfoNextAmount = tnext.GetProperty("Bet" + i + "Amount");

                int icurrentplan   = (int)propertyInfoPlan.GetValue(modelCurrentBetState);
                int icurrentperiod = (int)propertyInfoPeriod.GetValue(modelCurrentBetState);
                //plan
                if (icurrentplan == 1)
                {
                    lsttempCurrentModelBet = lstBet1;
                    lsttempNextModelBet    = lstBet2;
                }
                else if (icurrentplan == 2)
                {
                    lsttempCurrentModelBet = lstBet2;
                    lsttempNextModelBet    = lstBet3;
                }
                else if (icurrentplan == 3)
                {
                    lsttempCurrentModelBet = lstBet3;
                    lsttempNextModelBet    = lstBet4;
                }
                else if (icurrentplan == 4)
                {
                    lsttempCurrentModelBet = lstBet4;
                    lsttempNextModelBet    = lstBet5;
                }
                else if (icurrentplan == 5)
                {
                    lsttempCurrentModelBet = lstBet5;
                    lsttempNextModelBet    = lstBet6;
                }
                else if (icurrentplan == 6)
                {
                    lsttempCurrentModelBet = lstBet6;
                    lsttempNextModelBet    = lstBet1;
                }
                else
                {
                    lsttempCurrentModelBet = new List <ModelBet>();
                    lsttempNextModelBet    = new List <ModelBet>();
                }

                if (modelSSCPeriods.No5 == i)//中
                {
                    if ((int)propertyInfoPeriod.GetValue(modelCurrentBetState) == 0)
                    {                                            //
                        if (icurrentplan == iMaxSetupPlanNo + 1) //最后一个,重来
                        {
                            propertyInfoNextPlan.SetValue(modelNextBetState, 1);
                            propertyInfoNextPeriod.SetValue(modelNextBetState, 1);

                            LblMaxReset.Text = LblMaxReset.Text + modelSSCPeriods.Period + ",";
                        }
                        else
                        {
                            propertyInfoNextPlan.SetValue(modelNextBetState, icurrentplan + 1); //+1
                            propertyInfoNextPeriod.SetValue(modelNextBetState, 1);
                        }
                    }
                    else
                    {
                        propertyInfoNextPlan.SetValue(modelNextBetState, 1);
                        propertyInfoNextPeriod.SetValue(modelNextBetState, 1);
                    }
                }
                else
                {
                    if (icurrentperiod == 0)
                    {
                        propertyInfoNextPlan.SetValue(modelNextBetState, icurrentplan);
                        propertyInfoNextPeriod.SetValue(modelNextBetState, 0);
                    }
                    else if (icurrentperiod == lsttempCurrentModelBet.Count)
                    {
                        propertyInfoNextPlan.SetValue(modelNextBetState, icurrentplan);
                        propertyInfoNextPeriod.SetValue(modelNextBetState, 0);
                    }
                    else
                    {
                        propertyInfoNextPlan.SetValue(modelNextBetState, icurrentplan);
                        propertyInfoNextPeriod.SetValue(modelNextBetState, icurrentperiod + 1);
                    }
                }

                if (bReset)
                {
                    propertyInfoNextPlan.SetValue(modelNextBetState, 1);
                    propertyInfoNextPeriod.SetValue(modelNextBetState, 1);
                }

                //if (cbbPlan.Items.Count == 0 && cbbPeriod.Items.Count == 0)
                //{
                //    return;
                //}

                ////没有bContinue正常增加
                ////bContinue    cbbPeriod.Parent.ForeColor == System.Drawing.Color.Red  暂停投注 --》 plan ++
                ////            cbbPeriod.Parent.ForeColor == System.Drawing.Color.Red  不是暂停投注  --》 reset
                //if (!bContinue)
                //{
                //    if (cbbPeriod.Items.Count == cbbPeriod.SelectedIndex + 1)
                //    {
                //        if (cbbPlan.Items.Count == cbbPlan.SelectedIndex + 1)//最大方案
                //        {
                //            return;
                //        }
                //        else if (cbbPlan.Items.Count > cbbPlan.SelectedIndex + 1)//
                //        {
                //            cbbPlan.SelectedIndex++;
                //        }
                //    }
                //    else
                //    {
                //        cbbPeriod.SelectedIndex++;
                //    }
                //    return;
                //}


                //if (cbbPeriod.Items.Count == cbbPeriod.SelectedIndex + 1)//最大期数
                //{
                //    //不中 ,
                //    if (cbbPeriod.Parent.ForeColor != System.Drawing.Color.Red)
                //    {
                //        return;
                //    }

                //    //中
                //    if (cbbPlan.Items.Count == cbbPlan.SelectedIndex + 1)//最大方案
                //    {

                //        BtnResetClick(cbbPlan, cbbPeriod);
                //        return;
                //    }
                //    else if (cbbPlan.Items.Count > cbbPlan.SelectedIndex + 1)//
                //    {
                //        cbbPlan.SelectedIndex++;
                //    }
                //    else
                //    {
                //        throw new Exception("出错 Plan");
                //    }
                //}
                //else if (cbbPeriod.Items.Count > cbbPeriod.SelectedIndex + 1)
                //{
                //    //不中 ,
                //    if (cbbPeriod.Parent.ForeColor != System.Drawing.Color.Red)
                //    {
                //        cbbPeriod.SelectedIndex++;
                //        return;
                //    }
                //    //中
                //    BtnResetClick(cbbPlan, cbbPeriod);
                //    return;
                //}
                //else
                //{
                //    throw new Exception("出错 Period");
                //}
            }
        }