Exemplo n.º 1
0
        public IViewBattl GetActiveBattl(IViewBattlQueryParams queryParams)
        {
            IDataQuery query = new DataQuery();

            query.Where = string.Format("ViewBattl.active =1");
            IViewBattl         _battl = new ViewBattl();
            IList <IViewBattl> col    = _viewBattlRepository.Find(query);

            if (col.Count > 0)
            {
                _battl = col[0];

                if (BattlHasExperied(_battl))
                {
                    EndActiveBattl();

                    _battl = CreateBattl();
                }
            }
            else
            {
                _battl = CreateBattl();
            }

            return(_battl);
        }
Exemplo n.º 2
0
        public IViewBattl CreateBattl(DateTime time)
        {
            IBattl battl = GetBattlNotPlayedThisWeek();

            battl.BattlDate = time;
            battl.StartTime = new DateTime(time.Year, time.Month, time.Day, time.Hour, time.Minute, 0);
            battl.EndTime   = battl.StartTime.AddSeconds(59);

            battl = _battlRepository.Add(battl);

            IDataQuery query = new DataQuery();

            query.Where = string.Format("ViewBattl.battlId={0}", battl.BattlId);
            IViewBattl _viewBattl = new ViewBattl();

            _viewBattl = _viewBattlRepository.Find(query)[0];

            return(_viewBattl);
        }
Exemplo n.º 3
0
        public IViewBattl CreateBattl()
        {
            IDataQuery query = new DataQuery();

            query.Where = string.Format("ViewBattl.active=1");
            IViewBattl         _viewBattl = new ViewBattl();
            IList <IViewBattl> col        = _viewBattlRepository.Find(query);

            if (col.Count > 0)
            {
                _viewBattl = col[0];
            }
            else
            {
                IBattl   battl     = GetBattlNotPlayedThisWeek();
                DateTime battlTime = DateTime.Now; //GetLastBattlTime();
                battl.BattlDate = battlTime;
                battl.StartTime = new DateTime(battlTime.Year, battlTime.Month, battlTime.Day, battlTime.Hour, battlTime.Minute, 0);
                battl.EndTime   = battl.StartTime.AddSeconds(59);
                battl.Active    = true;

                using (TransactionScope scope = new TransactionScope())
                {
                    battl = _battlRepository.Add(battl);

                    query       = new DataQuery();
                    query.Where = string.Format("ViewBattl.BattlId={0} and active=1", battl.BattlId);
                    col         = _viewBattlRepository.Find(query);

                    if (col.Count > 0)
                    {
                        _viewBattl = col[0];
                    }

                    scope.Complete();
                }
            }

            return(_viewBattl);
        }