Example #1
0
        public IHttpActionResult Create(Journey journey)
        {
            Trace.WriteLine("Receive create journey: " + JsonConvert.SerializeObject(journey));
            Reply  reply = new Reply();
            String json  = "";

            if (ModelState.IsValid)
            {
                journey.Status = "Started";
                var userID = User.Identity.GetUserId();

                journey.UserProfileId = userID;
                journey.StartTime     = DateTime.Now;
                journey.EndTime       = null;
                Trace.WriteLine("Write to database: " + JsonConvert.SerializeObject(journey));
                journey = db.Journey.Add(journey);
                Trace.WriteLine("Add finish, journey ID: " + journey.JourneyId);
                //Create Templink;
                string checkcode = this.generateTempLink();

                //if the checkcode already exist in database, re-generate one if exist
                while (db.TempLink.Find(checkcode) != null)
                {
                    checkcode = this.generateTempLink();
                }

                List <TempLink> availiableLinks = db.TempLink.Where(s => s.UserProfileId == userID).ToList();
                foreach (TempLink tempLink in availiableLinks)
                {
                    db.TempLink.Remove(tempLink);
                }

                TempLink theTemp = new TempLink();
                theTemp.TempLinkId       = checkcode;
                theTemp.JourneyJourneyId = journey.JourneyId;;
                theTemp.UserProfileId    = journey.UserProfileId;
                db.TempLink.Add(theTemp);

                JTracking newTrack = new JTracking();
                newTrack.JourneyJourneyId = journey.JourneyId;
                newTrack.Time             = DateTime.Now;
                newTrack.CoordLat         = journey.SCoordLat;
                newTrack.CoordLog         = journey.SCoordLog;
                db.JTracking.Add(newTrack);

                UsefulFunction.dbSave(db);

                JourneyCreateReplyData data = new JourneyCreateReplyData();
                data.journeyID  = journey.JourneyId;
                data.TempLinkId = theTemp.TempLinkId;
                reply.result    = "success";
                reply.data      = JsonConvert.SerializeObject(data);
                json            = JsonConvert.SerializeObject(reply);
                return(Ok(json));
            }
            reply.result = "failed";
            reply.errors = "data not match";
            json         = JsonConvert.SerializeObject(reply);
            return(BadRequest(json));
        }
 public IHttpActionResult Create(TempLink tempLink)
 {
     if (ModelState.IsValid)
     {
         db.TempLink.Add(tempLink);
         db.SaveChanges();
         return(Ok("Index"));
     }
     //ViewBag.JourneyJourneyId = new SelectList(db.Journey, "JourneyId", "EndTime", tempLink.JourneyJourneyId);
     //ViewBag.UserProfileId = new SelectList(db.UserProfile, "Id", "Address", tempLink.UserProfileId);
     return(Ok(tempLink));
 }
        public IHttpActionResult DeleteConfirmed(TempLinkDelete theTempLink)
        {
            Reply  reply = new Reply();
            String json  = "";

            TempLink tempLink = db.TempLink.Find(theTempLink.TempLinkId);

            if (tempLink == null)
            {
                reply.result = "failed";
                reply.errors = "NotFound";
                json         = JsonConvert.SerializeObject(reply);
                return(BadRequest(json));
            }

            db.TempLink.Remove(tempLink);
            db.SaveChanges();
            reply.result = "success";
            json         = JsonConvert.SerializeObject(reply);
            return(Ok(json));
        }
Example #4
0
 public DrawTempLinkState(BlackboardBehaviour blackboard, Pin pin) : base(blackboard)
 {
     Pin   = pin;
     _link = new TempLink((Editor.Blackboard)blackboard.Blackboard, pin.Color, pin.X, pin.Y);
     blackboard.Blackboard.AddElement(_link);
 }