Exemplo n.º 1
0
 public async Task <ActionResult> OpenMeetingForBuilding(CancellationToken cancellationToken,
                                                         [FromRoute] Guid buildingId,
                                                         [FromBody] CreateMeetingBinding binding,
                                                         [FromServices] MeetingManager manager)
 {
     return(Ok(await manager.OpenForBuilding(binding.Name, binding.OwnerId, buildingId, cancellationToken)));
 }
Exemplo n.º 2
0
        public ActionResult Answer_Questions(int id, Meeting meeting)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            var sprint = SprintManager.GetSprintFromID(id);

            if (sprint == null)
            {
                return(RedirectToAction("Home", "Project"));
            }

            ViewBag.Error    = MeetingManager.AddMeetingQuestions(id, meeting);
            ViewBag.Meetings = (MeetingManager.GetMeetingsByEmail(user.Email, id)).OrderBy(m => m.Time).ToList();
            return(PartialView("ModalView"));
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            Console.WriteLine(Constants.GreetingMessage);

            MeetingManager meetingManager = new MeetingManager();

            meetingManager.Reminder.Notify += Reminder_Notify;

            var commandFactory = new CommandFactory();

            commandFactory
            .AddCommand(Constants.AddCommandName, new AddCommand())
            .AddCommand(Constants.DeleteCommandName, new DeleteCommand())
            .AddCommand(Constants.EditDurationCommandName, new EditDurationCommand())
            .AddCommand(Constants.EditNotificationCommandName, new EditNotificationCommand())
            .AddCommand(Constants.EditStartTimeCommandName, new EditStartTimeCommand())
            .AddCommand(Constants.ExportCommandName, new ExportCommand())
            .AddCommand(Constants.PrintCommandName, new PrintCommand());

            while (true)
            {
                string userInput   = Console.ReadLine();
                var    values      = userInput.Split(" ");
                string commandName = values.First();
                commandFactory.GetCommand(commandName).Execute(meetingManager, values);
            }
        }
Exemplo n.º 4
0
        public async Task <ActionResult> CloseMeetingForBuilding(CancellationToken cancellationToken,
                                                                 [FromRoute] Guid meetingId,
                                                                 [FromServices] MeetingManager manager)
        {
            await manager.Close(meetingId, cancellationToken);

            return(Ok());
        }
Exemplo n.º 5
0
        static void Main(string[] args)
        {
            PopulateMockData();

            Console.WriteLine(HelpText);

            string command = Console.ReadLine();

            if (command.ToLower().StartsWith("ss"))
            {
                string[] commandParts = command.Split(new char[] { ' ' });
                if (commandParts.Length < 2)
                {
                    Console.WriteLine(inCorrectcommand);
                    return;
                }

                MeetingManager  meetings   = new MeetingManager();
                List <iMeeting> myMeetings = meetings.GetScheduleForMember(commandParts[1]);
                if (myMeetings.Count == 0)
                {
                    Console.WriteLine("No Meetings found for user");
                    return;
                }
                myMeetings.ForEach(m => Console.WriteLine($@"MeetingDetails {Environment.NewLine} Start Time: {m.StartingTime}{Environment.NewLine}"));
            }
            else if (command.ToLower().StartsWith("es"))
            {
                string[] commandParts = command.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                if (commandParts.Length < 2)
                {
                    Console.WriteLine(inCorrectcommand);
                    return;
                }

                DateTime proposedDate = new DateTime();
                bool     success      = DateTime.TryParseExact(commandParts[1], "dd-MM-yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out proposedDate);
                if (!success)
                {
                    Console.WriteLine("Incorrect Date.");
                    return;
                }
                List <string> potentialAttendees = new List <string>();
                for (int c = 2; c < commandParts.Length; c++)
                {
                    potentialAttendees.Add(commandParts[c]);
                }
                MeetingManager  meetings       = new MeetingManager();
                List <DateTime> availableTimes = meetings.GetSuggestedTimes(potentialAttendees, proposedDate);
                if (availableTimes.Count == 0)
                {
                    Console.WriteLine("No available slots found");
                    return;
                }
                availableTimes.ForEach(at => Console.WriteLine(at.ToShortTimeString() + Environment.NewLine));
            }
            Console.ReadLine();
        }
Exemplo n.º 6
0
        public ActionResult Create_Meeting(int id, Meeting meeting)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            var sprint = SprintManager.GetSprintFromID(id);

            if (sprint == null)
            {
                return(RedirectToAction("Home", "Project"));
            }

            ViewBag.Type        = user.Role;
            ViewBag.Short       = false;
            ViewBag.Meetings    = (MeetingManager.GetMeetingsByEmail(user.Email, id)).OrderBy(m => m.Time).ToList();
            ViewBag.Members     = SharedManager.SplitString(proj.DevTeam);
            ViewBag.ScrumMaster = proj.ScrumMaster;

            if (!ModelState.IsValid)
            {
                return(PartialView("MeetingList"));
            }

            if (meeting.Time.Date > sprint.FinishDate)
            {
                ViewBag.Error = "Meeting date after sprint finish date";
                return(PartialView("MeetingList"));
            }

            meeting.ProjectID = proj.ProjectID;
            if (meeting.Developer == "*****@*****.**")
            {
                meeting.Developer = "," + proj.DevTeam + ",";
                ViewBag.Error     = MeetingManager.AddMeeting(meeting, id);
            }
            else
            {
                ViewBag.Error = MeetingManager.AddMeeting(meeting, id);
            }

            var meetings = (MeetingManager.GetMeetingsByEmail(user.Email, id)).OrderBy(m => m.Time).ToList();

            Session["Meetings"] = meetings;
            ViewBag.Meetings    = meetings;
            Session["Project"]  = ProjectManager.GetProjectByID(proj.ProjectID, user.Email);
            return(PartialView("MeetingList"));
        }
 public MeetingInfoController(
     UserManager <User> userManager,
     MeetingManager meetingManager,
     MeetingQuery meetingQuery,
     LocationQuery locationQuery
     )
 {
     _meetingManager = meetingManager;
     _userManager    = userManager;
     _meetingQuery   = meetingQuery;
     _locationQuery  = locationQuery;
 }
 public MeetingManageController(
     UserManager <User> userManager,
     MeetingManager meetingManager,
     MeetingQuery meetingQuery,
     LocationQuery locationQuery,
     FileService fileService
     )
 {
     _userManager    = userManager;
     _meetingManager = meetingManager;
     _meetingQuery   = meetingQuery;
     _locationQuery  = locationQuery;
     _fileService    = fileService;
 }
Exemplo n.º 9
0
        public ActionResult Remove_Meeting(int id, Meeting meeting)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            var sprint = SprintManager.GetSprintFromID(id);

            if (sprint == null)
            {
                return(RedirectToAction("Home", "Project"));
            }

            ViewBag.Type        = user.Role;
            ViewBag.Short       = false;
            ViewBag.Meetings    = (MeetingManager.GetMeetingsByEmail(user.Email, id)).OrderBy(m => m.Time).ToList();
            ViewBag.Members     = SharedManager.SplitString(proj.DevTeam);
            ViewBag.ScrumMaster = proj.ScrumMaster;

            meeting.ProjectID = proj.ProjectID;

            ViewBag.Error = MeetingManager.RemoveMeeting(meeting);


            var meetings = (MeetingManager.GetMeetingsByEmail(user.Email, id)).OrderBy(m => m.Time).ToList();

            Session["Meetings"] = meetings;
            ViewBag.Meetings    = meetings;
            Session["Project"]  = ProjectManager.GetProjectByID(proj.ProjectID, user.Email);

            return(PartialView("MeetingList"));
        }
        //Constructor
        public MeetingAssistViewModel()
        {
            _userObj          = new User();
            _selectedAttendee = new User();
            _meetings         = new ObservableCollection <Meeting>();

            _meetingManager = new MeetingManager();

            _addAttendeeCommand = new RelayCommand(AddAttendee, CanAddAttendee);
            _addMeetingCommand  = new RelayCommand(AddMeeting, CanAddMeeting);
            _closeWindowCommand = new RelayCommand(CloseWindow, null);

            _attendees = new ObservableCollection <User>();

            //Populate all Combos, set all controls to default values
            PopulateMeetingRooms();
            PopulateStartTimeList();
            PopulateDuration();
            PopulateUsers();
            PopulateMeetings();
            PopulateDefaultDescriptionAndAgenda();
        }
Exemplo n.º 11
0
        public ActionResult Home(string projectName)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            proj = ProjectManager.GetProjectByID(proj.ProjectID, user.Email);

            //ViewBag.Project = proj;
            ViewBag.Sprints = ProjectManager.GetSprintFromProject(proj.Sprints).OrderByDescending(m => m.FinishDate)
                              .ThenBy(x => x.StartDate).ToList();
            var dict = new Dictionary <Sprint, List <Item> >();

            foreach (var sprint in ((List <Sprint>)ViewBag.Sprints).OrderBy(m => m.FinishDate))
            {
                dict.Add(sprint, SprintManager.GetItemsFromSprint(sprint.Items));
            }
            ViewBag.ItemsSprints = dict;
            ViewBag.ProjectName  = proj.Name;
            var memberList = SharedManager.SplitString(proj.DevTeam);

            memberList.Insert(0, proj.ScrumMaster);
            ViewBag.MemberList  = memberList;
            Session["Project"]  = proj;
            Session["Meetings"] = MeetingManager.GetMeetingsByEmail(user.Email, -1, proj.ProjectID);
            return(View());
        }
Exemplo n.º 12
0
        public ActionResult Meetings(int id)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            proj = ProjectManager.GetProjectByID(proj.ProjectID, user.Email);

            var sprints = ProjectManager.GetSprintFromProject(proj.Sprints);

            if (sprints == null || sprints.Count(m => m.SprintID == id) == 0)
            {
                ViewBag.Error = "Sprint not found";
                return(RedirectToAction("Home", "Project"));
            }
            var sprint = sprints.First(m => m.SprintID == id);

            SharedManager.DailyScrumMeeting(proj, sprint, false);

            ViewBag.Short       = false;
            ViewBag.Meetings    = MeetingManager.GetMeetingsByEmail(user.Email, sprint.SprintID).OrderBy(m => m.Time).ToList();
            ViewBag.ScrumMaster = proj.ScrumMaster;
            ViewBag.Type        = user.Role;
            ViewBag.Error       = null;
            ViewBag.Members     = SharedManager.SplitString(proj.DevTeam);
            return(View());
        }
Exemplo n.º 13
0
        public ActionResult ViewLead(string sessionid, string Leadid)
        {
            MeetingManager  objMeetingManager = new MeetingManager();
            TaskManager     objTaskManager    = new TaskManager();
            DocumentManager objDocManager     = new DocumentManager();
            NoteManager     objNoteManager    = new NoteManager();
            EventManager    objEventManager   = new EventManager();
            objResponse     Response          = new objResponse();

            session = new SessionHelper();
            List <TextValue> source = new List <TextValue>();

            source = objSetingManager.GetDropDownListing("Lead", "Source", Convert.ToInt64(session.UserSession.PIN));

            List <SelectListItem> list = new List <SelectListItem>();

            list.Add(new SelectListItem {
                Value = "0", Text = "Choose a Source"
            });

            foreach (var cat in source)
            {
                list.Add(new SelectListItem {
                    Value = cat.Value, Text = cat.Text
                });
            }

            UserManager  objUserManager = new UserManager();
            List <Users> UserList       = new List <Users>();

            UserList = objUserManager.GetUsers(session.UserSession.PIN);


            LeadsModel objLeadModel = new LeadsModel();

            try
            {
                Response = objLeadsManager.ViewLeads(Leadid);

                if (Response.ErrorCode == 0)
                {
                    objLeadModel.Lead_ID         = Convert.ToInt64(Leadid);
                    objLeadModel.Date            = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["Date"]);
                    objLeadModel.FollowUpDate    = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["FutureFollowUp"]);
                    objLeadModel.Name            = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["Name"]);
                    objLeadModel.CompanyName     = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["CompanyName"]);
                    objLeadModel.Email           = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["Email"]);
                    objLeadModel.ContactNo       = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["ContactNo"]);
                    objLeadModel.SkypeNo         = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["SkypeNo"]);
                    objLeadModel.Status          = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["Status"]);
                    objLeadModel.Source          = Convert.ToString(Response.ResponseData.Tables[0].Rows[0]["Source"]);
                    objLeadModel.AddressLine1    = Response.ResponseData.Tables[0].Rows[0]["AddressLine1"].ToString();
                    objLeadModel.AddressLine2    = Response.ResponseData.Tables[0].Rows[0]["AddressLine2"].ToString();
                    objLeadModel.City            = Response.ResponseData.Tables[0].Rows[0]["City"].ToString();;
                    objLeadModel.State           = Response.ResponseData.Tables[0].Rows[0]["State"].ToString();
                    objLeadModel.Country         = Response.ResponseData.Tables[0].Rows[0]["Country"].ToString();
                    objLeadModel.ZipCode         = Response.ResponseData.Tables[0].Rows[0]["Zipcode"].ToString();
                    objLeadModel.JobDescription  = Response.ResponseData.Tables[0].Rows[0]["JobDescription"].ToString();
                    objLeadModel.Alternate_Email = Response.ResponseData.Tables[0].Rows[0]["Alternate_Email"].ToString();
                    objLeadModel.CreatedBy       = Response.ResponseData.Tables[0].Rows[0]["Owner"].ToString();

                    //  objLeadModel.Events = objMeetingManager.getMeetingsByRelateToID(Convert.ToInt64(session.UserSession.PIN), Convert.ToInt64(Leadid), session.UserSession.UserId);
                    objLeadModel.Events   = objEventManager.getEventsByRelateToID(Convert.ToInt64(session.UserSession.PIN), session.UserSession.UserId, Convert.ToInt64(Leadid), "LEAD");
                    objLeadModel.Activity = UtilityManager.getActivityByRelateToID(Convert.ToInt64(session.UserSession.PIN), Convert.ToInt64(Leadid), "LEAD");
                    objLeadModel.Task     = objTaskManager.getTasksByRelateToID(Convert.ToInt64(session.UserSession.PIN), Convert.ToInt64(Leadid), session.UserSession.UserId, "LEAD");
                    objLeadModel.Doc      = objDocManager.getDocsRelatedToID(Convert.ToInt64(session.UserSession.PIN), Convert.ToInt64(Leadid), "LEAD", session.UserSession.UserId);
                    objLeadModel.Notes    = objNoteManager.getNotesByRelateToID(Convert.ToInt64(session.UserSession.PIN), Convert.ToInt64(Leadid), session.UserSession.UserId, "LEAD");
                    ViewBag.Source_List   = list;
                    ViewBag.Users         = UserList;
                    return(View(objLeadModel));
                }
                else
                {
                    ViewBag.Source_List = list;
                    ViewBag.Users       = UserList;
                    ViewBag.Error_Msg   = "There is error in Fetching Lead Details";
                    return(View(objLeadModel));
                }
            }
            catch (Exception ex)
            {
                ViewBag.Source_List = list;
                ViewBag.Users       = UserList;
                ViewBag.Error_Msg   = ex.Message.ToString();;
                BAL.Common.LogManager.LogError("ViewLead Contro", 1, Convert.ToString(ex.Source), Convert.ToString(ex.Message), Convert.ToString(ex.StackTrace));
                return(View(objLeadModel));
            }
        }
Exemplo n.º 14
0
        static void PopulateMockData()
        {
            Console.WriteLine("Following is the mock data");
            MemberManager members = new MemberManager();

            members.Add("Madeleine Ross", "*****@*****.**");
            members.Add("Sally Greene", "*****@*****.**");
            members.Add("Natalie Ellison", "*****@*****.**");
            members.Add("Brandon Oliver", "*****@*****.**");
            members.Add("Jack Hudson", "*****@*****.**");
            members.Add("Stewart Wallace", "*****@*****.**");
            members.Add("Ian Coleman", "*****@*****.**");
            members.Add("Peter MacLeod", "*****@*****.**");
            members.Add("Keith Vance", "*****@*****.**");
            members.Add("Steven James", "*****@*****.**");
            members.Add("Nicola May", "*****@*****.**");
            members.Add("Melanie Murray", " [email protected]");
            members.Add("Olivia Bond", "*****@*****.**");
            members.Add("Anna Bower", "*****@*****.**");
            members.Add("Trevor Wright", "*****@*****.**");
            members.Add("Benjamin Davidson", "*****@*****.**");
            members.Add("Nicola Skinner", "*****@*****.**");
            members.Add("Wendy North", "*****@*****.**");
            members.Add("Molly Peake", "*****@*****.**");
            members.Add("Audrey Manning", "*****@*****.**");
            members.Add("Christian Smith", "*****@*****.**");
            members.Add("Gavin Morgan", "*****@*****.**");
            members.Add("Amanda Avery", "*****@*****.**");
            members.Add("Abigail Coleman", "*****@*****.**");
            members.Add("Penelope Clarkson", "*****@*****.**");

            string[] MemberMails = new string[]
            {
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "nicola.may @testscheduler.com",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
                "*****@*****.**",
            };

            MeetingManager meetings = new MeetingManager();

            for (int i = 0; i < 20; i++)
            {
                int    RandomDay, RandomHour, NumberofParticipants;
                Random random = new Random();

                RandomDay            = random.Next(0, 7);
                RandomHour           = random.Next(8, 18);
                NumberofParticipants = random.Next(2, 5);


                DateTime      NextMeetingDate   = DateTime.Now.AddDays(RandomDay).AddHours(-DateTime.Now.Hour).AddHours(RandomHour).AddMinutes(-DateTime.Now.Minute).AddSeconds(-DateTime.Now.Second);
                List <string> participantEmails = new List <string>();
                List <int>    randomMembers     = new List <int>();
                randomMembers.AddRange(Enumerable.Range(0, 24).OrderBy(y => random.Next()).Take(NumberofParticipants));
                for (int j = 0; j < NumberofParticipants; j++)
                {
                    participantEmails.Add(MemberMails[randomMembers[j]]);
                    Console.Write(MemberMails[randomMembers[j]] + " ");
                }
                Console.WriteLine("Meeting date and time: " + NextMeetingDate.ToString());
                meetings.CreateMeeting(participantEmails, NextMeetingDate);
                Thread.Sleep(50);
            }
        }
Exemplo n.º 15
0
 public MeetingHub(MeetingManager meetingManager)
 {
     _meetingManager = meetingManager;
 }
Exemplo n.º 16
0
 public IndexModel(MeetingManager meetingMgr)
 {
     this._meetingMgr = meetingMgr;
 }
Exemplo n.º 17
0
        public ActionResult Home(int id)
        {
            var user = (User)Session["UserInfo"];

            if (user == null)
            {
                return(RedirectToAction("Login", "Login"));
            }
            var proj = (Project)Session["Project"];

            ViewBag.Link = "Project";
            if (proj == null)
            {
                return(RedirectToAction("Dashboard", "Dashboard"));
            }
            var sprints = ProjectManager.GetSprintFromProject(proj.Sprints);

            if (sprints == null || sprints.Count(m => m.SprintID == id) == 0)
            {
                ViewBag.Error = "Sprint not found";
                return(RedirectToAction("Home", "Project"));
            }
            var sprint = sprints.First(m => m.SprintID == id);


            var DailyTime = "08:00:00";
            var timeParts = DailyTime.Split(new char[1] {
                ':'
            });

            var dateNow = DateTime.Now;
            var date    = new DateTime(dateNow.Year, dateNow.Month, dateNow.Day,
                                       int.Parse(timeParts[0]), int.Parse(timeParts[1]), int.Parse(timeParts[2]));
            TimeSpan ts;

            if (date > dateNow)
            {
                ts = date - dateNow;
            }
            else
            {
                date = date.AddDays(1);
                ts   = date - dateNow;
            }

            SharedManager.DailyScrumMeeting(proj, sprint, false);
            var meetings = MeetingManager.GetMeetingsByEmail(user.Email, sprint.SprintID);

            //waits certan time and run the code
            Task.Delay(ts).ContinueWith((x) => SharedManager.DailyScrumMeeting(proj, sprint));

            ViewBag.Items       = SprintManager.GetItemsFromSprint(sprint.Items);
            ViewBag.Sprint      = sprint;
            ViewBag.Short       = true;
            ViewBag.Meetings    = meetings.Where(m => m.Time > DateTime.Now).Take(5).OrderBy(m => m.Time).ToList();
            ViewBag.ScrumMaster = proj.ScrumMaster;
            ViewBag.Type        = user.Role;
            ViewBag.Members     = SharedManager.SplitString(proj.DevTeam);
            ViewBag.Email       = user.Email;
            return(View());
        }