示例#1
0
        public bool SaveInstrument(IInstrument inst, int id)
        {
            var dc         = new Dal.StageplanEntities();
            var stagePlan  = dc.Stageplans.Single(a => a.Id == id);
            var instrument = new Dal.StageplanInstrument()
            {
                DataText           = inst.Text,
                DataDetail         = inst.Detail,
                X                  = inst.Left,
                Y                  = inst.Top,
                Src                = inst.Src,
                Stageplan          = stagePlan,
                BandMember         = inst.BandMemberName,
                IsFixedPosition    = inst.IsFixedPosition,
                SelectedInstrument = inst.SelectedInstrument,
                Width              = inst.Width,
                Height             = inst.Height,
                Zindex             = inst.Zindex,
                RotateAngle        = inst.RotateAngle
            };

            dc.StageplanInstruments.Add(instrument);

            return(base.SaveToDatabase(dc));
        }
示例#2
0
        public int SaveBand(string name, decimal width, decimal height, int userAccountId, string bandWebUrl, string socialMediaUrl, string genre, string country, bool willSaveForRecent)
        {
            var dc        = new Dal.StageplanEntities();
            var guid      = GetUniqueGuid();
            var stagePlan = new Dal.Stageplan()
            {
                BandName              = name,
                Token                 = guid,
                Height                = height,
                Width                 = width,
                SavedByAccountId      = userAccountId,
                CreationDate          = DateTime.Now,
                Genre                 = genre,
                SocialMedia           = WebPaths.AddMissingHttp(socialMediaUrl),
                Website               = WebPaths.AddMissingHttp(bandWebUrl),
                Country               = country,
                WillShowInRecentBands = willSaveForRecent
            };

            dc.Stageplans.Add(stagePlan);

            if (base.SaveToDatabase(dc))
            {
                return(stagePlan.Id);
            }

            return(-99);
        }
示例#3
0
        /// <summary>
        /// Gets the average score
        /// </summary>
        /// <returns></returns>
        public decimal GetScore()
        {
            var dc      = new Dal.StageplanEntities();
            var generic = dc.Generics.SingleOrDefault();

            var newScore = GetScore(generic.NumberOfVoters, generic.TotalScore);

            return(Math.Round(newScore, 2));
        }
示例#4
0
 /// <summary>
 /// DO NOT USE ANY MORE
 /// </summary>
 /// <param name="dc"></param>
 /// <returns></returns>
 protected bool SaveToDatabase(Dal.StageplanEntities dc)
 {
     try
     {
         dc.SaveChanges();
         return(true);
     }
     catch (Exception e)
     {
         return(false);
     }
 }
示例#5
0
        public void SetLatestResults()
        {
            var dc     = new Dal.StageplanEntities();
            var result = (from d in dc.Generics
                          select new {
                Score = d.TotalScore,
                Votes = d.NumberOfVoters,
                TotalPlans = d.TotalStagePlans
            }).SingleOrDefault();

            this.TotalScore        = result.Score;
            this.TotalVotes        = result.Votes;
            this.StagePlansCreated = result.TotalPlans;
        }
示例#6
0
        ///// <summary>
        ///// Returns the current score
        ///// </summary>
        ///// <returns></returns>
        //public decimal GetScore()
        //{
        //    var dc = new Dal.StageplanEntities();
        //    decimal dbScore = dc.Generics.Select(a => a.TotalScore).SingleOrDefault();
        //    return dbScore;
        //}


        public bool SaveRating(int newScore)
        {
            var dc     = new Dal.StageplanEntities();
            var rating = dc.Generics.SingleOrDefault();

            if (rating == null)
            {
                rating = new Dal.Generic();
                dc.Generics.Add(rating);
            }
            rating.TotalScore += newScore;
            rating.NumberOfVoters++;

            return(base.SaveToDatabase(dc));
        }
示例#7
0
        //[TestMethod]
        //public void SaveBandByName()
        //{
        //    Bll.Save save = new Bll.Save();
        //    var id = save.SaveBand(this._bandName);

        //    Assert.IsTrue(id > 0);

        //    var dc = new Dal.StageplanEntities();
        //    var b = (from d in dc.Stageplans
        //             where d.Id == id
        //             select d).SingleOrDefault();


        //    Assert.IsTrue(b != null);

        //    DeleteBandById(id);
        //}

        private void DeleteBandById(int id)
        {
            var dc = new Dal.StageplanEntities();
            var r  = (from d in dc.Stageplans
                      where d.Id == id
                      select d).SingleOrDefault();

            if (r == null)
            {
                return;
            }

            dc.Stageplans.Remove(r);
            dc.SaveChanges();
        }
示例#8
0
        private string GetUniqueGuid()
        {
            var    dc   = new Dal.StageplanEntities();
            string guid = String.Empty;
            int    i    = 0;

            while (i < 100)
            {
                guid = Guid.NewGuid().ToString();
                if (!dc.Stageplans.Any(a => a.Token == guid))
                {
                    return(guid);
                }
            }

            return(guid);
        }
示例#9
0
        private bool Delete(Bll.SubscriptionPreferences email)
        {
            Dal.StageplanEntities dc = new Dal.StageplanEntities();
            var ml = dc.MailingLists.Where(a => a.EmailAddress == email.EmailAddress).SingleOrDefault();

            if (ml != null)
            {
                try
                {
                    dc.MailingLists.Remove(ml);
                    dc.SaveChanges();
                    return(true);
                }
                catch (Exception)
                {
                    throw new Exception();
                }
            }
            return(false);
        }
示例#10
0
        /// <summary>
        /// Gets the instruments based upon the token
        /// </summary>
        /// <param name="token"></param>
        /// <returns></returns>
        public Instruments GetInstruments(string token)
        {
            var dc   = new Dal.StageplanEntities();
            var plan = dc.Stageplans.Where(a => a.Token == token).SingleOrDefault();

            if (plan == null)
            {
                return(null);
            }

            var result = new Instruments();

            result.BandName       = plan.BandName;
            result.Height         = plan.Height;
            result.Width          = plan.Width;
            result.AllInstruments = new List <Instrument>();

            foreach (var item in plan.StageplanInstruments)
            {
                var detail = String.IsNullOrEmpty(item.DataDetail) ? " " : HttpContext.Current.Server.UrlDecode(item.DataDetail);

                result.AllInstruments.Add(new Instrument()
                {
                    Detail             = detail,
                    Left               = item.X,
                    Src                = item.Src,
                    Text               = String.IsNullOrEmpty(item.DataText) ? " " : item.DataText,
                    Top                = item.Y,
                    BandMemberName     = item.BandMember,
                    IsFixedPosition    = item.IsFixedPosition,
                    Width              = item.Width.HasValue ? (int)item.Width : 75,
                    Height             = item.Height.HasValue ? (int)item.Height : 75,
                    Zindex             = item.Zindex,
                    SelectedInstrument = item.SelectedInstrument,
                    RotateAngle        = item.RotateAngle
                });
            }

            return(result);
        }
示例#11
0
 public DataAccess()
 {
     this.DataContext = new Dal.StageplanEntities();
 }
示例#12
0
 public SubscriptionPreferences()
 {
     this._dc     = new Dal.StageplanEntities();
     this.IsOptIn = true;
 }
示例#13
0
 public RecentBands()
 {
     this._dc = new Dal.StageplanEntities();
 }