private void BackUpPosition()
        {
            List <Position> positionList = _IPositionBll.GetAllPosition();

            foreach (Position position in positionList)
            {
                PositionHistory positionHistory = new PositionHistory();
                positionHistory.Operator                = _OperatorAccount;
                positionHistory.Position                = _IPositionBll.GetPositionById(position.Id, null);
                positionHistory.Position.Grade          = new PositionGrade(0, "", "");
                positionHistory.Position.Grade.Sequence = 0;
                positionHistory.OperationTime           = _DtNow;
                _DalPositionHistory.CreatePositionHistory(positionHistory);
            }
        }
        /// <summary>
        ///
        /// </summary>
        public AssessTemplatePaper GetTempletPaperAndItemById(int paperId)
        {
            AssessTemplatePaper paper = _IAssessTemplatePaper.GetTempletPaperAndItemById(paperId);

            paper.PositionList = _IAssessTemplatePaperBindPosition.GetBindPostionByPaperID(paperId);
            for (int i = 0; i < paper.PositionList.Count; i++)
            {
                Position p = _IPostionBll.GetPositionById(paper.PositionList[i].Id, null);
                if (p == null)
                {
                    paper.PositionList.RemoveAt(i);
                    i--;
                    continue;
                }
                paper.PositionList[i] = p;
            }
            return(paper);
        }
Beispiel #3
0
 private void ValideBindPosition()
 {
     if (_Paper.PositionList != null)
     {
         List <string> errorpositionList = new List <string>();
         foreach (Position position in _Paper.PositionList)
         {
             if (
                 _IAssessTemplatePaperBindPosition.GetAssessTemplatePaperBindPostionByPositionIDDiffPaperID(
                     _Paper.AssessTemplatePaperID, position.Id).Count > 0)
             {
                 errorpositionList.Add(_IPostionBll.GetPositionById(position.Id, null).Name);
             }
         }
         if (errorpositionList.Count > 0)
         {
             HrmisUtility.ThrowException(
                 string.Format("职位:{0}已被其它考评表使用", RequestUtility.GetNameListString(errorpositionList)));
         }
     }
 }
Beispiel #4
0
        ///<summary>
        ///</summary>
        ///<param name="accountID"></param>
        ///<param name="employee"></param>
        ///<param name="_IAccountBll"></param>
        ///<param name="_IDepartmentBll"></param>
        ///<param name="_IPositionBll"></param>
        ///<returns></returns>
        public static Employee SetEmployeeAccountInfo(int accountID, Employee employee, IAccountBll _IAccountBll,
                                                      IDepartmentBll _IDepartmentBll, IPositionBll _IPositionBll)
        {
            int gradeID = -1;

            if (employee.Account.Position != null && employee.Account.Position.Grade != null)
            {
                gradeID = employee.Account.Position.Grade.Id;
            }

            employee.Account = _IAccountBll.GetAccountById(accountID);
            if (employee.Account.Position != null)
            {
                employee.Account.Position = _IPositionBll.GetPositionById(employee.Account.Position.Id, null);

                employee.Account.Position.Grade =
                    _IPositionBll.GetPositionGradeById(gradeID, null);
            }
            employee.Account.Dept = _IDepartmentBll.GetDepartmentById(employee.Account.Dept.Id, null);

            return(employee);
        }