Exemplo n.º 1
0
 // kpi helper gets date of concern, user, concernid, title- think we only need id, user and event date- need a range of dates, to test
 public List<Concern> GetTestConcerns(User user, int number)
 {
     var Concerns = new List<Concern>();
     var today = DateTime.Now.Date;// by default each concern is today- move month back by 1
     for (int i = 1; i <= number; i++)
     {
         var date = DateTime.Now.AddMonths(0 - i);
         var Concern = new Concern();
         string ConcernNumber = i.ToString();
         Concern.Id = IlluminateDatabase.GenerateId<Concern>();
         Concern.EventDate = date;
         Concern.SubjectUser = new SimpleUser();
         Concern.SubjectUser.UserId = user.Id;
         Concern.SubjectUser.FullName = user.FirstName + " " + user.LastName;
         Concerns.Add(Concern);
     }
     return Concerns;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Create a new concern for a person
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public JsonResult CreateConcern(ConcernViewModel model)
        {
            //remove Id from modelstate if tehre. 
            ModelState.Remove("Id");
            ModelState.Remove("EventDate");
            ModelState.Remove("CreatedBy");

            if (ModelState.IsValid)
            {
                using (var orgSession = OrgStore.OpenSession())
                {
                    var target = orgSession.Load<User>(model.SubjectUserId);
                    var concern = new Concern
                                      {
                                          CreatedBy = OrgUser.ToSimpleUser(),
                                          EventDate = DateTime.Now,
                                          ConsolidatedCompletionDate = DateTime.Now,
                                          Comment = model.Comment,
                                          SubjectUser = target.ToSimpleUser(),
                                          Severity = model.Severity,
                                          Id = IlluminateDatabase.GenerateId<Concern>()
                                      };

                    orgSession.Store(concern);
                    orgSession.SaveChanges();

                    return JsonSuccess(concern.ToTimelineItems(), "Concern created");
                }
            }
            return JsonError("Invalid data");
        }
Exemplo n.º 3
0
        private void CreateTestConcerns(IDocumentStore store)
        {
            using (var session = store.OpenSession())
            {
                //for user 1 generate concerns that should cause inference
                var startDate = DateTime.Today.AddDays(0 - _typeConfig.PeriodDays).AddDays(1);
                for (var count = 0; count < _typeConfig.NumberInPeriod + 1; count++)
                {
                    var concern = new Concern
                                      {
                                          EventDate = startDate,
                                          Id = IlluminateDatabase.GenerateId<Concern>(),
                                          Severity = 1,
                                          SubjectUser = _user1.ToSimpleUser()
                                      };

                    session.Store(concern);
                    startDate = startDate.AddDays(1);
                }
                startDate = DateTime.Today.AddDays(0 - _typeConfig.PeriodDays).AddDays(1);

                //for user 2 add too few concerns to trigger inference
                for (var count = 0; count < _typeConfig.NumberInPeriod - 1; count++)
                {
                    var concern = new Concern
                    {
                        EventDate = startDate,
                        Id = IlluminateDatabase.GenerateId<Concern>(),
                        Severity = 1,
                        SubjectUser = _user2.ToSimpleUser()
                    };
                    session.Store(concern);
                    startDate = startDate.AddDays(1);
                }

                session.SaveChanges();
            }
        }
Exemplo n.º 4
0
        private Concern GenerateAConcern(IUser user, Random rand)
        {
            var manager = user.Relationships.FirstOrDefault(r => r.RelationshipName == "LineManager");
            if (manager == null)
            {
                return null;
            }
            var now = DateTime.UtcNow.Date;
            var date = RandomDate(rand, now.AddDays(0 - _config.DaysHistory), now);
            var concern = new Concern()
            {
                Comment =FormatComment(
                    _config.ConcernConfig.PotentialComments.ElementAt(rand.Next(0,
                                                                        _config.ConcernConfig.PotentialComments
                                                                               .Count() )),user),
                CreatedBy = manager,
                Id = IlluminateDatabase.GenerateId<Concern>(),
                Severity = rand.Next(Concern.Min, Concern.Max),
                ConsolidatedCompletionDate = date,
                EventDate = date,
                SubjectUser = user.ToSimpleUser()
            };

            return concern;
        }