コード例 #1
0
        public ActionResult Create(int?contactid, int?projectid)
        {
            if (projectid.HasValue)
            {
                BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Owners   = new SelectList(siteUsers, "SiteUserID", "UserDisplayName", siteuserid);
            ViewBag.Jobs     = new SelectList(db.GetJobsByContactID_WithLockFalse(contactid), "ViewID", "Project", projectid);
            ViewBag.Status   = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");
            ViewBag.Invitees = new SelectList(GetUsersForEventInvitation(siteusercompanyid), "Item1", "Item2");

            ViewBag.SelectedContactID = contactid;
            ViewBag.IsFieldsReadOnly  = false;

            var model = new Models.EventModels.NewEvent();

            model.InviteeIds = new List <string>()
            {
                "U" + siteuserid.ToString()
            };
            if (contactid.HasValue)
            {
                model.InviteeIds.Add("C" + contactid.Value.ToString());
            }

            return(View(model));
        }
        public ActionResult AddPunchListComment(int PunchListID, string Comment)
        {
            var  repo = new BOL.Repository.CommonRepository();
            bool res  = repo.AddPunchListComment(PunchListID, siteuserid, Comment);

            return(Json(new { result = res }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult Create(int?contactid, int?projectid)
        {
            if (projectid.HasValue)
            {
                BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }

            ViewBag.Jobs       = new SelectList(db.GetJobsByContactID_WithLockFalse(contactid), "ViewID", "Project", projectid);
            ViewBag.CaseTypes  = new SelectList(repo.GetCaseTypesBySiteCoID(siteusercompanyid), "CaseTypeID", "CaseType");
            ViewBag.Priorities = new SelectList(repo.GetPrioritiesList(), "Item2", "Item2");
            ViewBag.Status     = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Resource = new SelectList(siteUsers, "SiteUserID", "UserDisplayName");
            ViewBag.Creator  = new SelectList(siteUsers, "SiteUserID", "UserDisplayName", siteuserid);

            ViewBag.SelectedContactID = contactid;
            ViewBag.IsFieldsReadOnly  = false;

            var model = new Models.CaseModels.NewCase();

            return(View(model));
        }
        private int SaveNote(NoteModels.NewNote Model)
        {
            int siteCoID = siteusercompanyid;

            ActivitiesNotes newNote = new ActivitiesNotes()
            {
                SiteCoID    = siteusercompanyid,
                SiteUserID  = Model.CreatorID ?? siteuserid,
                ProjectID   = Model.JobID ?? 0,
                Subject     = Model.Subject,
                ContactID   = Model.ContactID,
                Notes       = Model.Notes,
                NoteID      = Model.NoteID ?? 0,
                DateCreated = Model.Date ?? DateTime.Now
            };

            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();

            int noteID = repo.SaveNote(newNote);

            if (noteID > 0)
            {
                return(noteID);
            }
            else
            {
                return(0);
            }
        }
コード例 #5
0
        public ActionResult UpdateCallNotes(int CallID, string Note)
        {
            var  repo = new BOL.Repository.CommonRepository();
            bool res  = repo.UpdateCallNotes(CallID, siteusercompanyid, Note);

            return(Json(new { result = res }, JsonRequestBehavior.AllowGet));
        }
        private int SaveCase(CaseModels.NewCase Model)
        {
            int siteCoID = siteusercompanyid;

            ProjectCases newCase = new ProjectCases()
            {
                CaseID          = Model.CaseID ?? 0,
                SiteCoID        = siteusercompanyid,
                CreatedByUserID = Model.CreatorID,
                ProjectID       = Model.JobID,
                SiteUserID      = Model.ResourceID ?? siteuserid,
                Subject         = Model.Concern,
                StatusID        = Model.StatusID,
                DueDate         = Model.Due,
                Notes           = Model.Notes,
                Priority        = Model.Priority,
                DateCreated     = Model.Created ?? DateTime.Now,
                CaseTypeID      = Model.TypeID
            };

            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();

            int caseID = repo.SaveCase(newCase);

            if (caseID > 0)
            {
                return(caseID);
            }
            else
            {
                return(0);
            }
        }
        public ActionResult AddCaseComment(int CaseID, int ResourceID, string Comment)
        {
            var  repo = new BOL.Repository.CommonRepository();
            bool res  = repo.AddCaseComment(CaseID, ResourceID, Comment);

            return(Json(new { result = res, date = DateTime.Now.ToCustomDateTimeString() }, JsonRequestBehavior.AllowGet));
        }
        public ActionResult AddCaseComment(int CaseID, string Comment)
        {
            var    repo     = new BOL.Repository.CommonRepository();
            bool   res      = repo.AddCaseComment(CaseID, siteuserid, Comment);
            string userName = repo.GetUserDisplayName(siteuserid);

            return(Json(new { result = res, name = userName, date = DateTime.Now.ToCustomDateTimeString() }, JsonRequestBehavior.AllowGet));
        }
コード例 #9
0
        public ActionResult UpdateProjectItems(int ProjectID, List <int> AreaIDs, int DivisionID, int Quantity, List <int> Items, List <int> ReplaceItems)
        {
            var res = new BOL.Repository.CommonRepository().AddProjectItems(siteusercompanyid, ProjectID, AreaIDs, DivisionID, Quantity, Items);

            if (res == true && ReplaceItems != null && ReplaceItems.Any())
            {
                new BOL.Repository.CommonRepository().DeleteProjectItems(ProjectID, ReplaceItems);
            }
            return(Json(new { status = res }));
        }
コード例 #10
0
        private int SaveEvent(EventModels.NewEvent Model)
        {
            int siteCoID = siteusercompanyid;

            var isNewEvent            = (Model.EventID ?? 0) == 0;
            ActivitiesEvents newEvent = new ActivitiesEvents()
            {
                EventID        = Model.EventID ?? 0,
                SiteCoID       = siteusercompanyid,
                SiteUserID     = Model.OwnerID ?? siteuserid,
                EventName      = Model.Event ?? "",
                ProjectID      = Model.JobID ?? 0,
                StatusID       = Model.StatusID,
                EventDate      = Model.Date,
                EventTime      = Model.Date.HasValue ? Model.Date.Value.TimeOfDay : new TimeSpan(),
                EventHours     = Model.Duration ?? 1,
                AllDay         = Model.Duration >= 24,
                Notes          = Model.Notes ?? "",
                AcctTaskID     = "",
                RecurrenceRule = ""
            };

            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();

            int eventID = Model.EventID ?? 0;

            using (TransactionScope scope = new TransactionScope())
            {
                eventID = repo.SaveEvent(newEvent);

                if (isNewEvent)
                {
                    repo.AddEventInvitees(eventID, ExtractInviteeIdsData(Model.InviteeIds));
                }
                else
                {
                    repo.UpdateEventInvitees(eventID, ExtractInviteeIdsData(Model.InviteeIds));
                }

                scope.Complete();
            }

            if (eventID > 0)
            {
                return(eventID);
            }
            else
            {
                return(0);
            }
        }
        public ActionResult Edit(int?id, int?contactid, int?projectid)
        {
            ProjectPunchLists _punchList = db.ProjectPunchLists.Where(p => p.ProjectPunchListID == (id ?? 0)).FirstOrDefault();

            if (_punchList == null)
            {
                return(HttpNotFound());
            }

            if (!contactid.HasValue && projectid.HasValue)
            {
                contactid = new BOL.Repository.CommonRepository().GetContactIdByProjectID(projectid.Value);
            }

            var jobs = db.GetJobsByContactID_WithLockFalse(contactid).ToList();

            ViewBag.Jobs = new SelectList(jobs, "ViewID", "Project", _punchList.ProjectID);

            ViewBag.Types       = new SelectList(repo.GetPunchListTypesBySiteCoID(siteusercompanyid), "PunchListTypeID", "PunchListType");
            ViewBag.Departments = new SelectList(repo.GetPunchListDepartmentsBySiteCoID(siteusercompanyid), "PunchItemDepartmentID", "ItemDepartment");
            ViewBag.Priorities  = new SelectList(repo.GetPrioritiesList(), "Item1", "Item2");
            ViewBag.Status      = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");

            ViewBag.Divisions = new SelectList(repo.GetDivisionsByProjectID(_punchList.ProjectID ?? 0), "ProjectDivisionID", "DivisionName");
            ViewBag.Areas     = new SelectList(repo.GetAreasByProjectID(_punchList.ProjectID ?? 0), "ProjectAreaID", "AreaName");

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Creator = new SelectList(siteUsers, "SiteUserID", "UserDisplayName", siteuserid);

            PunchListModels.NewPunchList model = new PunchListModels.NewPunchList();

            model = new PunchListModels.NewPunchList()
            {
                PunchListID  = _punchList.ProjectPunchListID,
                AreaID       = _punchList.AreaID,
                CreatorID    = _punchList.CreatedByUserID,
                DepartmentID = _punchList.DepartmentID,
                Description  = _punchList.Subject,
                DivisionID   = _punchList.DivisionID,
                Due          = _punchList.DueDate,
                Hours        = _punchList.EstHrs,
                JobID        = _punchList.PriorityID,
                Notes        = _punchList.Note,
                PriorityID   = _punchList.PriorityID,
                StatusID     = _punchList.StatusID,
                TypeID       = _punchList.TypeID
            };

            return(View("_Edit", model));
        }
        public ActionResult Edit(int?id, int?contactid, int?projectid)
        {
            ProjectCases _case = db.ProjectCases.Where(p => p.CaseID == (id ?? 0)).FirstOrDefault();

            if (_case == null)
            {
                return(HttpNotFound());
            }

            if (projectid.HasValue)
            {
                BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }


            ViewBag.Jobs       = new SelectList(db.GetJobsByContactID_WithLockFalse(contactid).ToList(), "ViewID", "Project", _case.ProjectID);
            ViewBag.CaseTypes  = new SelectList(repo.GetCaseTypesBySiteCoID(siteusercompanyid), "CaseTypeID", "CaseType", _case.CaseTypeID);
            ViewBag.Priorities = new SelectList(repo.GetPrioritiesList(), "Item2", "Item2", _case.Priority);
            ViewBag.Status     = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName", _case.StatusID);

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Resource         = new SelectList(siteUsers, "SiteUserID", "UserDisplayName");
            ViewBag.Creator          = new SelectList(siteUsers, "SiteUserID", "UserDisplayName", siteuserid);
            ViewBag.IsFieldsReadOnly = true;

            CaseModels.NewCase model = new CaseModels.NewCase();

            model = new CaseModels.NewCase()
            {
                CaseID     = _case.CaseID,
                CreatorID  = _case.CreatedByUserID,
                ResourceID = _case.SiteUserID,
                JobID      = _case.ProjectID,
                Concern    = _case.Subject,
                StatusID   = _case.StatusID,
                Due        = _case.DueDate,
                Notes      = _case.Notes,
                Priority   = _case.Priority,
                Created    = _case.DateCreated
            };

            ViewBag.SelectedContactID = contactid;
            return(View("_Edit", model));
        }
コード例 #13
0
        public ActionResult Edit(int?id, int?contactid, int?projectid)
        {
            if (projectid.HasValue)
            {
                BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Owners           = new SelectList(siteUsers, "SiteUserID", "UserDisplayName", siteuserid);
            ViewBag.Jobs             = new SelectList(db.GetJobsByContactID_WithLockFalse(contactid), "ViewID", "Project");
            ViewBag.Status           = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");
            ViewBag.IsFieldsReadOnly = true;

            var invitees = GetEventInvitees(id ?? 0);

            ViewBag.Invitees = new MultiSelectList(GetUsersForEventInvitation(siteusercompanyid), "Item1", "Item2", invitees);

            EventModels.NewEvent model  = new EventModels.NewEvent();
            ActivitiesEvents     _event = db.ActivitiesEvents.Where(p => p.EventID == (id ?? 0)).FirstOrDefault();

            if (_event != null)
            {
                model = new EventModels.NewEvent()
                {
                    EventID    = _event.EventID,
                    Date       = _event.EventDate.HasValue ? _event.EventDate.Value.Add(_event.EventTime ?? new TimeSpan()) : new Nullable <DateTime>(),
                    Duration   = _event.EventHours,
                    Event      = _event.EventName ?? "",
                    JobID      = _event.ProjectID,
                    Notes      = _event.Notes,
                    OwnerID    = _event.SiteUserID,
                    StatusID   = _event.StatusID,
                    InviteeIds = invitees
                };
            }

            ViewBag.SelectedContactID = contactid;
            return(View("_Edit", model));
        }
コード例 #14
0
        public ActionResult Edit(int?id, int?contactid, int?projectid)
        {
            if (!contactid.HasValue && projectid.HasValue)
            {
                contactid = new BOL.Repository.CommonRepository().GetContactIdByProjectID(projectid.Value);
            }

            ViewBag.Jobs = new SelectList(db.GetJobsByContactID_WithLockFalse(contactid), "ViewID", "Project");

            var siteUsers = db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName);

            ViewBag.Resource = new SelectList(siteUsers, "SiteUserID", "UserDisplayName");

            TimeItModels.NewTimeIt model  = new TimeItModels.NewTimeIt();
            ProjectTimeIts         timeIt = db.ProjectTimeIts.Where(p => p.TimeItID == (id ?? 0)).FirstOrDefault();

            if (timeIt != null)
            {
                model = new TimeItModels.NewTimeIt()
                {
                    TimeItID   = timeIt.TimeItID,
                    Date       = timeIt.TimeItDate.HasValue ? timeIt.TimeItDate.Value.Add(timeIt.TimeItTime ?? new TimeSpan()) : timeIt.TimeItDate,
                    Hours      = timeIt.Hours,
                    Notes      = timeIt.Notes,
                    PaytypeID  = timeIt.ProjectPayTypeID,
                    ProjectID  = timeIt.ProjectID,
                    ResourceID = timeIt.SiteUserID,
                    StageID    = timeIt.ProjectStageID,
                    Task       = timeIt.Subject
                };
            }

            var projectData = FetchProjectData(timeIt.ProjectID ?? 0);

            ViewBag.Stages   = new SelectList(projectData.Item1.Select(p => new { p.ProjectStageID, p.StageName }), "ProjectStageID", "StageName", model.StageID);
            ViewBag.PayTypes = new SelectList(projectData.Item2.Select(p => new { p.ViewID, p.Pay_Type }), "ViewID", "Pay_Type", model.PaytypeID);

            return(View("_Edit", model));
        }
コード例 #15
0
        public ActionResult Edit(int?id)
        {
            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();

            ViewBag.Contacts  = new SelectList(db.GetContactsBySiteCoID(siteusercompanyid), "ViewID", "Customer");
            ViewBag.Purpose   = new SelectList(db.CoCallPurposes.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.CallPurposeOrder), "CallPurposeID", "PurposeName");
            ViewBag.Resources = new SelectList(db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName), "SiteUserID", "UserDisplayName");
            ViewBag.Status    = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");

            CallModels.NewCall model = new CallModels.NewCall();
            ActivitiesCalls    call  = db.ActivitiesCalls.Where(p => p.CallID == (id ?? 0)).FirstOrDefault();

            if (call != null)
            {
                model = new CallModels.NewCall()
                {
                    CallID     = call.CallID,
                    ContactID  = call.ContactID,
                    Date       = call.CallDate.HasValue ? call.CallDate.Value.Add(call.CallTime ?? new TimeSpan()) : call.CallDate,
                    Duration   = call.CallDuration,
                    JobID      = call.ProjectID,
                    Notes      = call.Notes,
                    PurposeID  = call.CallPurposeID,
                    ResourceID = call.SiteUserID,
                    Subject    = call.Subject,
                    StatusID   = call.StatusID
                };
            }

            var contactData = FetchContactData(call.ContactID ?? 0);

            model.Phone  = contactData.Item1;
            model.Mobile = contactData.Item2;
            ViewBag.Jobs = new SelectList(contactData.Item3.Select(p => new { p.ViewID, p.Project }), "ViewID", "Project", model.JobID);

            return(View("_Edit", model));
        }
コード例 #16
0
        private int SaveCall(CallModels.NewCall Model)
        {
            int siteCoID = siteusercompanyid;

            ActivitiesCalls newCall = new ActivitiesCalls()
            {
                CallDate      = Model.Date,
                CallTime      = Model.Date.HasValue ? Model.Date.Value.TimeOfDay : new TimeSpan(),
                CallDuration  = Model.Duration,
                CallPurposeID = Model.PurposeID,
                SiteCoID      = siteusercompanyid,
                SiteUserID    = Model.ResourceID ?? siteuserid,
                ProjectID     = Model.JobID ?? 0,
                Subject       = Model.Subject,
                ContactID     = Model.ContactID,
                Notes         = Model.Notes,
                CallID        = Model.CallID ?? 0,
                StatusID      = Model.StatusID
            };

            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();

            int callID = repo.SaveCall(newCall);

            repo.UpdatePhone(Model.ContactID ?? 0, (int)EnumWrapper.PhoneTypes.Mobile, Model.Mobile, true);
            repo.UpdatePhone(Model.ContactID ?? 0, (int)EnumWrapper.PhoneTypes.Phone, Model.Phone, true);

            if (callID > 0)
            {
                return(callID);
            }
            else
            {
                return(0);
            }
        }
コード例 #17
0
        // GET: Common/Calls/Create
        public ActionResult Create(int?contactid, int?projectid)
        {
            BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
            if (projectid.HasValue)
            {
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }

            ViewBag.Contacts  = new SelectList(db.GetContactsBySiteCoID(siteusercompanyid), "ViewID", "Customer", contactid);
            ViewBag.Purpose   = new SelectList(db.CoCallPurposes.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.CallPurposeOrder), "CallPurposeID", "PurposeName");
            ViewBag.Resources = new SelectList(db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName), "SiteUserID", "UserDisplayName", siteuserid);
            ViewBag.Status    = new SelectList(repo.GetActivityStatus(siteusercompanyid), "StatusID", "StatusName");

            var model = new Models.CallModels.NewCall();

            var contactData = FetchContactData(contactid ?? 0);

            model.Phone  = contactData.Item1;
            model.Mobile = contactData.Item2;
            ViewBag.Jobs = new SelectList(contactData.Item3.Select(p => new { p.ViewID, p.Project }), "ViewID", "Project", projectid);
            ViewBag.SelectedContactID = contactid;

            return(View(model));
        }
        public ActionResult Create(int?contactid, int?projectid)
        {
            if (projectid.HasValue)
            {
                BOL.Repository.CommonRepository repo = new BOL.Repository.CommonRepository();
                contactid = repo.GetContactIdByProjectID(projectid.Value);
            }

            ViewBag.Contacts         = new SelectList(db.GetContactsBySiteCoID(siteusercompanyid), "ViewID", "Customer", contactid);
            ViewBag.Creator          = new SelectList(db.SiteUsers.Where(p => p.SiteCoID == siteusercompanyid).OrderBy(p => p.UserDisplayName), "SiteUserID", "UserDisplayName", siteuserid);
            ViewBag.IsFieldsReadOnly = false;

            var model = new Models.NoteModels.NewNote()
            {
                Date = DateTime.Now
            };

            var contactData = FetchContactData(contactid ?? 0);

            ViewBag.Jobs = new SelectList(contactData.Item1.Select(p => new { p.ViewID, p.Project }), "ViewID", "Project", projectid);
            ViewBag.SelectedContactID = contactid;

            return(View(model));
        }
コード例 #19
0
        public ActionResult RemoveItems(int CorID, int ProjectID, List <int> Items)
        {
            var res = new BOL.Repository.CommonRepository().RemoveCorItems(siteusercompanyid, CorID, ProjectID, Items);

            return(Json(new { status = (res ? "success" : "error") }));
        }
        public ActionResult AddItems(int SOID, int ProjectID, int Quantity, List <int> Items)
        {
            var res = new BOL.Repository.CommonRepository().AddSOItems(siteusercompanyid, SOID, ProjectID, Quantity, Items);

            return(Json(new { status = (res ? "success" : "error") }));
        }