예제 #1
0
        private void GetConductedbyData(Event eventData)
        {
            var eventStaffAssignementRepository = IoC.Resolve <IEventStaffAssignmentRepository>();
            var eventStaffCollection            = eventStaffAssignementRepository.GetForEvent(EventId);

            ClientScript.RegisterStartupScript(Page.GetType(), "js_DefaultStaff", "var defaultStaffCollection = null; ", true);
            if (eventStaffCollection != null && eventStaffCollection.Count() > 0)
            {
                var rolesRepository = IoC.Resolve <IEventRoleRepository>();
                var staffRoles      = rolesRepository.GetByIds(eventStaffCollection.Select(s => s.StaffEventRoleId).ToArray());

                var orderedPairCollection = new List <OrderedPair <long, long> >();
                foreach (var staffEventRole in staffRoles)
                {
                    var eventStaffMember =
                        eventStaffCollection.Where(st => st.StaffEventRoleId == staffEventRole.Id).First();

                    foreach (var allowedTestId in staffEventRole.AllowedTestIds)
                    {
                        if (orderedPairCollection.Where(op => op.FirstValue == allowedTestId).Count() > 0)
                        {
                            continue;
                        }
                        orderedPairCollection.Add(new OrderedPair <long, long>(allowedTestId, eventStaffMember.ActualStaffOrgRoleUserId ?? eventStaffMember.ScheduledStaffOrgRoleUserId));
                    }
                }

                if (orderedPairCollection.Count > 0)
                {
                    ClientScript.RegisterStartupScript(Page.GetType(), "js_DefaultStaff_1", "defaultStaffCollection = " + new JavaScriptSerializer().Serialize(orderedPairCollection) + "; ", true);
                }

                var orgRoleUserRepository = IoC.Resolve <IOrganizationRoleUserRepository>();
                var nameIdPairs           = orgRoleUserRepository.GetNameIdPairofUsersByEventDate(eventStaffCollection.Select(s => (s.ActualStaffOrgRoleUserId ?? s.ScheduledStaffOrgRoleUserId)).ToArray(), eventData.EventDate);

                Conductedby.DataTextField  = "SecondValue";
                Conductedby.DataValueField = "FirstValue";
                Conductedby.DataSource     = nameIdPairs;
                Conductedby.DataBind();

                Conductedby.Items.Insert(0, new ListItem("--Conducted By--", "-1"));
            }
        }
예제 #2
0
        private void GetConductedbyData()
        {
            var eventStaffAssignementRepository = IoC.Resolve <IEventStaffAssignmentRepository>();
            var staff = eventStaffAssignementRepository.GetForEvent(EventId);

            if (staff != null && staff.Count() > 0)
            {
                var orgRoleUserRepository = IoC.Resolve <IOrganizationRoleUserRepository>();
                var nameIdPairs           = orgRoleUserRepository.GetNameIdPairofUsers(
                    staff.Select(s => (s.ActualStaffOrgRoleUserId ?? s.ScheduledStaffOrgRoleUserId)).ToArray());

                Conductedby.DataTextField  = "SecondValue";
                Conductedby.DataValueField = "FirstValue";
                Conductedby.DataSource     = nameIdPairs;
                Conductedby.DataBind();

                Conductedby.Items.Insert(0, new ListItem("--Conducted By--", "0"));
            }
        }