Beispiel #1
0
// Method for accepting a request.

    //public bool AcceptRequest(Guid id)
    //{
    //    using (SwapEntities ent = new SwapEntities())
    //    {
    //        var getRequest = (from tbl in ent.RequestEvents
    //                          where tbl.Id == id
    //                          select tbl).SingleOrDefault();

    //        if (getRequest != null)
    //        {
    //            getRequest.DateAccepted = DateTime.Now;
    //            getRequest.Accept = true;
    //            ent.SaveChanges();
    //            return true;
    //        }
    //        else
    //        {
    //            return false;
    //        }
    //    }
    //}
// Method for submitting a swap rating.

    public bool SubmitNewRating(Guid swapIdGuid, string userTo, DateTime dtFrom, DateTime dtTo, byte rating, string comment)
    {
        using (SwapEntities ent = new SwapEntities())
        {
            var acceptRequest = (from tbl in ent.RequestEvents
                                 where tbl.RequestTo == PublicUserName & tbl.DateFrom == dtFrom &
                                 tbl.DateTo == dtTo
                                 select tbl).SingleOrDefault();

            if (acceptRequest != null && acceptRequest.Accept == null && acceptRequest.DateAccepted == null)
            {
                acceptRequest.DateAccepted = DateTime.Now;
                acceptRequest.Accept       = true;
            }

            var check = (from tbl in ent.SwapRatings
                         where tbl.UserName == userTo & tbl.DateFrom == dtFrom &
                         tbl.DateTo == dtTo
                         select tbl).SingleOrDefault();

            if (check == null)
            {
                Guid newGuid     = Guid.NewGuid();
                var  rateRequest = new SwapRating();
                rateRequest.Id         = newGuid;
                rateRequest.SwapId     = swapIdGuid;
                rateRequest.Date       = DateTime.Now;
                rateRequest.DateFrom   = dtFrom;
                rateRequest.DateTo     = dtTo;
                rateRequest.TradedWith = PublicUserName;
                rateRequest.UserName   = userTo;
                rateRequest.Rating     = rating;
                rateRequest.Comment    = comment;
                ent.AddToSwapRatings(rateRequest);
                ent.SaveChanges();

                var isNowRated = (from tbl in ent.ScheduledSwaps
                                  where tbl.Id == swapIdGuid
                                  select tbl).SingleOrDefault();

                if (isNowRated != null)
                {
                    if (isNowRated.UserMain == PublicUserName)
                    {
                        isNowRated.MainRated = true;
                    }
                    else
                    {
                        isNowRated.OtherRated = true;
                    }
                    ent.SaveChanges();
                }

                string strMsg = PublicFirstName + " has given you a rating of " + rating + ". If this rating seems unfair " +
                                "or disagreeable to you, please let us know and we will take a look. Thanks!";
                MessageClass msg = new MessageClass();
                msg.SendMsg(PublicUserName, userTo, strMsg, "QM");

                return(true);
            }
            else
            {
                return(false);
            }
        }
    }