public void BindData(IWorkforcePlanningPosition position)
        {
            try
            {
                this.panelMainInner.Visible = true;
                this.EditPositionID         = position.WFPPositionID;

                OrganizationCode orgCode = new OrganizationCode(position.OrganizationCodeID);

                if (orgCode.ReportingOrganizationCode == -1)
                {
                    customErrorMessage.ErrorMessage = string.Format(GetLocalResourceObject("NullReportingOrganizationCode").ToString(), orgCode.OrganizationName, orgCode.OrganizationCodeValue);
                }

                loadMultiUseResources();
                bindOrgPositionTypes();
                bindParentPositions(position.WFPPositionID);
                bindPositionBoxPlacement();
                bindPositionBoxLocationGroupTypes();

                loadData(position);
            }
            catch (Exception ex)
            {
                base.HandleException(ex);
            }
        }
Exemplo n.º 2
0
        private void loadData(IWorkforcePlanningPosition position, int rootStartingPositionID, bool isChartPosition)
        {
            this.literalOrgCode.Text       = string.Format("{0} | {1}", HttpUtility.HtmlEncode(position.OrganizationCode), HttpUtility.HtmlEncode(position.OrganizationName)).Trim();
            this.literalPositionTitle.Text = HttpUtility.HtmlEncode(position.PositionTitle);

            if (position.PositionStatusHistory.HasValue && position.PositionStatusHistory.Value == (int)enumOrgPositionStatusHistoryType.ActiveVacant)
            {
                this.literalPositionStatus.Text = GetLocalResourceObject("PositionStatusHistoryVacantMessage").ToString();;
                this.rowFullName.Visible        = false;
            }
            else
            {
                this.literalPositionStatus.Text = GetLocalResourceObject("PositionStatusHistoryEncumberedMessage").ToString();
                setCleanLine(this.literalFullName, position.FullName);
            }

            // rules for employment status
            if (position.eWorkScheduleType == enumWorkScheduleType.F_FULL_TIME && position.eAppointmentType == enumAppointmentType.CAREER_COMP_SVC_PERM)
            {
                rowEmploymentStatus.Visible = false;
            }
            else
            {
                setCleanLine(this.literalEmploymentStatus, position.EmploymentStatus);
            }

            string baseSuffixLine = string.Empty;

            if (string.IsNullOrWhiteSpace(position.PositionNumberBase) && string.IsNullOrWhiteSpace(position.PositionNumberSuffix))
            {
                baseSuffixLine = _NotApplicableLine;
            }
            else
            {
                baseSuffixLine = string.Format(_PositionNumberBaseSuffixFormatString, position.PositionNumberBase, position.PositionNumberSuffix);
            }

            setCleanLine(this.literalPNBPNS, baseSuffixLine);
            setCleanLine(this.literalPayPlan, position.PayPlanAbbreviation);
            setCleanLine(this.literalSeries, string.Format(_SeriesLineItem, position.SeriesName, position.PaddedSeriesID));
            setCleanLine(this.literalFPLGrade, (position.FPLGrade == -1 ? string.Empty : position.FPLGrade.ToString()));
            setCleanLine(this.literalCurrentGrade, (position.Grade == -1 ? string.Empty : position.Grade.ToString()));
            setCleanLine(this.literalDutyStationCountry, position.DutyStationCountryName);

            this.rowDutyStationState.Visible = (position.DutyStationCountryID == (int)enumCountries.UnitedStates);
            setCleanLine(this.literalDutyStationState, position.DutyStationStateName);
            setCleanLine(this.literalDutyStationCity, position.DutyStationDescription);

            setCleanLine(this.literalPositionTypesSupervisoryStatus, position.SupervisorStatusTitle);
            setCleanLine(this.literalOrganizationPositionType, position.OrgPositionType);
            setCleanLine(this.literalCurrentlyReportsToName, position.ReportsToFullNameReverse);
        }
 public void BindData(IWorkforcePlanningPosition position)
 {
     try
     {
         _NotSpecifiedLine = GetLocalResourceObject("DataNotSpecified").ToString();
         bool isChartPosition = position is OrganizationChartPosition;
         loadData(position, isChartPosition);
     }
     catch (Exception ex)
     {
         base.HandleException(ex);
     }
 }
Exemplo n.º 4
0
        public void BindData(IWorkforcePlanningPosition position, int rootStartingPositionID)
        {
            try
            {
                loadResources();

                bool isChartPosition = position is OrganizationChartPosition;
                loadData(position, rootStartingPositionID, isChartPosition);
            }
            catch (Exception ex)
            {
                base.HandleException(ex);
            }
        }
        private void loadData(IWorkforcePlanningPosition position, bool isChartPosition)
        {
            this.literalOrgCode.Text       = string.Format("{0} | {1}", HttpUtility.HtmlEncode(position.OrganizationCode), HttpUtility.HtmlEncode(position.OrganizationName)).Trim();
            this.literalPositionTitle.Text = HttpUtility.HtmlEncode(position.PositionTitle);

            if (position.PositionStatusHistory.HasValue && position.PositionStatusHistory.Value == (int)enumOrgPositionStatusHistoryType.ActiveEmployee)
            {
                this.literalPositionStatus.Text = GetLocalResourceObject("PositionStatusHistoryEncumberedMessage").ToString();
                setCleanLine(this.literalFullName, position.FullName);
            }
            else
            {
                this.literalPositionStatus.Text = GetLocalResourceObject("PositionStatusHistoryVacantMessage").ToString();;
                this.rowFullName.Visible        = false;
            }

            // rules for employment status
            if (position.eWorkScheduleType == enumWorkScheduleType.F_FULL_TIME && position.eAppointmentType == enumAppointmentType.CAREER_COMP_SVC_PERM)
            {
                rowEmploymentStatus.Visible = false;
            }
            else
            {
                setCleanLine(this.literalEmploymentStatus, position.EmploymentStatus);
            }

            setCleanLine(this.literalPayPlan, position.PayPlanAbbreviation);
            setCleanLine(this.literalSeries, position.PaddedSeriesID);
            setCleanLine(this.literalFPLGrade, (position.FPLGrade == -1 ? string.Empty : position.FPLGrade.ToString()));
            setCleanLine(this.literalCurrentGrade, (position.Grade == -1 ? string.Empty : position.Grade.ToString()));
            setCleanLine(this.literalDutyStationCountry, position.DutyStationCountryName);

            this.rowDutyStationState.Visible = (position.DutyStationCountryID == (int)enumCountries.UnitedStates);
            setCleanLine(this.literalDutyStationState, position.DutyStationStateName);
            setCleanLine(this.literalDutyStationCity, position.DutyStationDescription);

            setCleanLine(this.literalPositionTypesSupervisoryStatus, position.SupervisorStatusTitle);
            setCleanLine(this.literalOrganizationPositionType, position.OrgPositionType);
        }
        private void loadData(IWorkforcePlanningPosition position)
        {
            base.RefreshOrgChartDataOnly();
            OrganizationChart chart  = base.CurrentOrgChart;
            bool tempIsChartPosition = position is OrganizationChartPosition;

            this.IsChartPosition = tempIsChartPosition;
            this.customOrgChartDetails.BindData(chart);
            this.customOrgChartDetails.RedirectSuffix = tempIsChartPosition ? "pos" : "newfpps";
            this.customFPPSPositionInformation.BindData(position, chart.StartPointWFPPositionID);

            if (position.PositionStatusHistory.HasValue && position.PositionStatusHistory.Value == (int)enumOrgPositionStatusHistoryType.ActiveEmployee)
            {
                base.SetPageTitle(string.Format(GetLocalResourceObject("PageTitle").ToString(), position.PositionLineItemFullName));
            }
            else
            {
                base.SetPageTitle(string.Format(GetLocalResourceObject("PageTitle").ToString(),
                                                string.Format("{0} {1}", position.PositionTitle, GetLocalResourceObject("VacantWordPhrase").ToString())));
            }

            // This is a nested control and as such, the use is a little different from the other user controls -- we need to check read/write permission here
            // This is because we load this control by an explicit Bind -- not in page load
            this.OriginalReportsToID = position.ReportsToID;
            this.AccessOK            = (base.CurrentOrgChartNavMode == enumNavigationMode.Insert || base.CurrentOrgChartNavMode == enumNavigationMode.Edit);
            bool actionsOK = this.AccessOK &&
                             (chart.OrgWorkflowStatusID == enumOrgWorkflowStatus.Draft || chart.OrgWorkflowStatusID == enumOrgWorkflowStatus.Review);
            bool isRoot           = (position.WFPPositionID == base.CurrentOrgChart.StartPointWFPPositionID);
            bool isTopLevelEditOk = (base.HasHRGroupPermission || base.IsAdmin) || !isRoot;

            this.TopLevelEditOK = isTopLevelEditOk;

            this.buttonIncludePosition.Visible = actionsOK && !tempIsChartPosition;
            this.buttonUpdatePosition.Visible  = actionsOK && tempIsChartPosition;

            this.rowReportsToPositionRoot.Visible   = !isTopLevelEditOk;
            this.rowReportsToPositionUpdate.Visible = isTopLevelEditOk;
            this.requiredParentPosition.Enabled     = !isRoot;  // parent position is required for all positions except the root node
            this.spanPositionRequired.Visible       = !isRoot;  // hide the required asterisk "*"

            this.rowLocationGroupType.Visible = !isRoot;
            this.rowPlacementType.Visible     = !isRoot;

            this.dropDownOrganizationPositionTypes.SelectedValue = ((int)position.eOrgPositionType).ToString();

            if (isTopLevelEditOk)
            {
                if (position.ReportsToID != -1)
                {
                    this.dropDownParentPositions.SelectedValue = position.ReportsToID.ToString();
                }
            }
            else
            {
                literalReportsToPosition.Text = position.ReportsToFullNameReverse;
            }

            if (tempIsChartPosition && !isRoot)
            {
                // only set if this is a chart position AND it is not the root node position
                OrganizationChartPosition chartPosition = position as OrganizationChartPosition;

                this.dropDownPositionPlacements.SelectedValue         = ((int)chartPosition.PositionPlacementType).ToString();
                this.dropDownPositionLocationGroupTypes.SelectedValue = ((int)chartPosition.PositionGroupType).ToString();
            }
        }