コード例 #1
0
        /// <summary>
        /// 通过Id取考评表以及考评项
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public AssessTemplatePaper GetTempletPaperAndItemById(int id)
        {
            List <AssessTemplateItem> items         = new List <AssessTemplateItem>();
            AssessTemplatePaper       templatePaper = GetAssessTempletPaperById(id);

            if (templatePaper != null)
            {
                SqlCommand cmd = new SqlCommand();
                cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Value = id;
                using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetTemplateItemIdInPaperByPaperId", cmd))
                {
                    while (sdr.Read())
                    {
                        AssessTemplateItem item =
                            new AssessTemplateItem(Convert.ToInt32(sdr[_DbItemID]), sdr[_DbQuestion].ToString(),
                                                   (OperateType)Convert.ToInt32(sdr[_DbOperateType]));
                        item.Classfication          = (ItemClassficationEmnu)sdr[_DbItemClassfication];
                        item.Option                 = sdr[_DbItemOption].ToString();
                        item.Description            = sdr[_DbItemDescription].ToString();
                        item.AssessTemplateItemType = (AssessTemplateItemType)sdr[_DbAssessTemplateItemType];
                        item.Weight                 = Convert.ToDecimal(sdr[_DbWeight]);
                        items.Add(item);
                    }
                    templatePaper.ItsAssessTemplateItems = items;
                }
            }
            return(templatePaper);
        }
コード例 #2
0
        private void AddEvent()
        {
            if (!Validation())
                return;

            try
            {
                List<AssessTemplateItem> items = new List<AssessTemplateItem>();
                for (int i = 0; i < _ITemplatePaperView.AssessItemList.Count; i++)
                {
                    if (_ITemplatePaperView.AssessItemList[i].AssessTemplateItemID != -1)
                    {
                        _ITemplatePaperView.AssessItemList[i].Weight =
                           Convert.ToDecimal(_ITemplatePaperView.AssessItemList[i].WeightString);
                        items.Add(_ITemplatePaperView.AssessItemList[i]);
                    }
                }
                AssessTemplatePaper _Paper = new AssessTemplatePaper(-1, _ITemplatePaperView.TemplatePaperName, items);
                _IAssessManagementFacade.AddAssessTemplatePaper(_Paper);
                _ITemplatePaperView.ActionSuccess = true;
                ToAccountSetListPage();
            }
            catch (Exception ex)
            {
                _ITemplatePaperView.ResultMessage = "<span class='fontred'>" + ex.Message + "</span>";
            }
        }
コード例 #3
0
        public override void Initialize(bool isPostBack)
        {
            _ITemplatePaperView.ResultMessage     = string.Empty;
            _ITemplatePaperView.ValidatePaperName = string.Empty;
            _ITemplatePaperView.AssessItems       = _IAssessManagementFacade.GetAllTemplateItems();

            _ITemplatePaperView.ActionButtonEvent += UpdateEvent;

            TemplageItemEditor itemEditor = new TemplageItemEditor(_ITemplatePaperView);

            _ITemplatePaperView.btnCopyEvent      += itemEditor.btnCopyEvent;
            _ITemplatePaperView.btnPasteEvent     += itemEditor.btnPasteEvent;
            _ITemplatePaperView.CancelButtonEvent += CancelEvent;
            _ITemplatePaperView.ddlAssessItemChangedForAddEvent    += itemEditor.ddlChangedForAddEvent;
            _ITemplatePaperView.ddlAssessItemChangedForUpdateEvent += itemEditor.ddlChangedForUpdateEvent;
            _ITemplatePaperView.ddlAssessItemChangedForDeleteEvent += itemEditor.ddlChangedForDeleteEvent;
            _ITemplatePaperView.ddlAssessItemChangedForAddAtEvent  += itemEditor.ddlAssessItemChangedForAddAtEvent;
            _ITemplatePaperView.ddlAssessItemChangedForUpEvent     += itemEditor.ddlAssessItemChangedForUpEvent;
            _ITemplatePaperView.ddlAssessItemChangedForDownEvent   += itemEditor.ddlAssessItemChangedForDownEvent;

            if (!isPostBack)
            {
                _ITemplatePaperView.OperationInfo = "修改绩效考核表";
                _ITemplatePaperView.OperationType = "Update";

                AssessTemplatePaper paper = _IAssessManagementFacade.GetTempletPaperAndItemById(_TemplatePaperId);
                _ITemplatePaperView.PositionList      = paper.PositionList;
                _ITemplatePaperView.TemplatePaperName = paper.PaperName;
                paper.ItsAssessTemplateItems.Add(new AssessTemplateItem(-1, "", OperateType.NotHR));
                _ITemplatePaperView.AssessItemList = paper.ItsAssessTemplateItems;
            }

            _ITemplatePaperView.SetbtnPasteVisible = _ITemplatePaperView.SessionCopyPaper != null;
        }
コード例 #4
0
        /// <summary>
        /// 判断template表是否是一个完美的模板(包括item的数量必须满足一定条件)
        /// </summary>
        private bool CheckTemplatePapaer()
        {
            try
            {
                _ItsAssessTemplatePaper = _IAssessTemplatePaper.GetTempletPaperAndItemById(_AssessTempletPaperId);
            }
            catch
            {
                BllUtility.ThrowException(BllExceptionConst._DbError);
            }
            if (_ItsAssessTemplatePaper == null)
            {
                BllUtility.ThrowException(BllExceptionConst._InvalidTemplateId);
            }
            if (_ItsAssessTemplatePaper.ItsAssessTemplateItems == null)
            {
                BllUtility.ThrowException(BllExceptionConst._AssessTemplateItem_Not_Exist);
            }
            if (_ItsAssessTemplatePaper.ItsAssessTemplateItems.Count == AAUtility._ItemsNotNull)
            {
                return(false);
            }

            return(true);
        }
コード例 #5
0
        public override void Initialize(bool isPostBack)
        {
            _ITemplatePaperView.ResultMessage     = string.Empty;
            _ITemplatePaperView.ValidatePaperName = string.Empty;
            _ITemplatePaperView.AssessItems       = _IAssessManagementFacade.GetAllTemplateItems();

            _ITemplatePaperView.ActionButtonEvent += CancelEvent;
            _ITemplatePaperView.CancelButtonEvent += CancelEvent;

            TemplageItemEditor itemEditor = new TemplageItemEditor(_ITemplatePaperView);

            _ITemplatePaperView.btnCopyEvent += itemEditor.btnCopyEvent;

            if (!isPostBack)
            {
                _ITemplatePaperView.OperationInfo = "²é¿´¼¨Ð§¿¼ºË±í";
                _ITemplatePaperView.OperationType = "Detail";

                AssessTemplatePaper paper = _IAssessManagementFacade.GetTempletPaperAndItemById(_TemplatePaperId);
                _ITemplatePaperView.TemplatePaperName = paper.PaperName;
                _ITemplatePaperView.PositionList      = paper.PositionList;
                _ITemplatePaperView.AssessItemList    = paper.ItsAssessTemplateItems;
                _ITemplatePaperView.SetFormReadOnly   = true;
            }
        }
コード例 #6
0
 /// <summary>
 /// test
 /// </summary>
 public UpdateAssessPaper(IAssessTemplatePaper iAssessTemplatePaper,
                          IAssessTemplatePaperBindPosition iAssessTemplatePaperBindPosition,
                          IPositionBll ipositionbll, AssessTemplatePaper paper) : this(paper)
 {
     _IAssessTemplatePaper             = iAssessTemplatePaper;
     _IAssessTemplatePaperBindPosition = iAssessTemplatePaperBindPosition;
     _IPostionBll = ipositionbll;
 }
コード例 #7
0
 ///<summary>
 ///</summary>
 public InsertAssessPaper(IAssessTemplatePaper iAssessTemplatePaper,
                          IAssessTemplatePaperBindPosition iAssessTemplatePaperBindPosition,
                          IPositionBll iPositionBll, AssessTemplatePaper paper) : this(paper)
 {
     _IAssessTemplatePaper             = iAssessTemplatePaper;
     _IAssessTemplatePaperBindPosition = iAssessTemplatePaperBindPosition;
     _IPostionBll = iPositionBll;
 }
コード例 #8
0
        /// <summary>
        /// 更新考评表
        /// </summary>
        /// <param name="assessTemplatePaper"></param>
        /// <returns></returns>
        public int UpdateTemplatePaper(AssessTemplatePaper assessTemplatePaper)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmCount, SqlDbType.Int).Direction          = ParameterDirection.Output;
            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Value               = assessTemplatePaper.AssessTemplatePaperID;
            cmd.Parameters.Add(_ParmPaperName, SqlDbType.NVarChar, 50).Value = assessTemplatePaper.PaperName;
            return(SqlHelper.ExecuteNonQuery("AssessTemplatePaperUpdate", cmd));
        }
コード例 #9
0
        /// <summary>
        /// 插入考评表
        /// </summary>
        /// <param name="assessTemplatePaper"></param>
        /// <returns></returns>
        public int InsertAssessTemplatePaper(AssessTemplatePaper assessTemplatePaper)
        {
            int        pkid;
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmPaperName, SqlDbType.NVarChar, 50).Value = assessTemplatePaper.PaperName;
            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Direction           = ParameterDirection.Output;
            SqlHelper.ExecuteNonQueryReturnPKID("AssessTemplatePaperInsert", cmd, out pkid);
            return(pkid);
        }
コード例 #10
0
        /// <summary>
        /// 更新员工的帐套
        /// </summary>
        /// <param name="ds"></param>
        private void InsertTemplatePaper(DataSet ds)
        {
            List <AssessTemplatePaper> papers = new List <AssessTemplatePaper>();

            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                AssessTemplatePaper paper =
                    AssessTemplatePaper.FindByName(ds.Tables[0].Rows[i]["考核表名"].ToString(), papers);
                if (paper == null)
                {
                    paper =
                        new AssessTemplatePaper(0, ds.Tables[0].Rows[i]["考核表名"].ToString(),
                                                new List <AssessTemplateItem>());
                    paper.PositionList = new List <Position>();
                    if (!string.IsNullOrEmpty(paper.PaperName))
                    {
                        papers.Add(paper);
                    }
                }
                string[] positions = ds.Tables[0].Rows[i]["岗位"].ToString().Split(',');
                foreach (string s in positions)
                {
                    if (string.IsNullOrEmpty(s.Trim()))
                    {
                        continue;
                    }
                    Position position = AssessTemplatePaper.FindPositionByPositionName(s.Trim(), papers);
                    if (position == null)
                    {
                        position      = new Position();
                        position.Name = s.Trim();
                        if (!string.IsNullOrEmpty(position.Name))
                        {
                            paper.PositionList.Add(position);
                        }
                    }
                }
                AssessTemplateItem item =
                    AssessTemplatePaper.FindItemByItemName(ds.Tables[0].Rows[i]["绩效指标"].ToString(), papers);
                if (item == null)
                {
                    item = new AssessTemplateItem(0, ds.Tables[0].Rows[i]["绩效指标"].ToString(), new OperateType());
                    if (!string.IsNullOrEmpty(item.Question))
                    {
                        paper.ItsAssessTemplateItems.Add(item);
                    }
                }
                decimal d_try;
                decimal.TryParse(ds.Tables[0].Rows[i]["权重"].ToString(), out d_try);
                item.Weight      = d_try;
                item.Description = ds.Tables[0].Rows[i]["绩效指标的相关说明"].ToString();
            }
            ToImportIntoDB(papers);
        }
コード例 #11
0
        /// <summary>
        /// 得到所有的考评表
        /// </summary>
        /// <returns></returns>
        public List <AssessTemplatePaper> GetAllTemplatePaper()
        {
            List <AssessTemplatePaper> papers = new List <AssessTemplatePaper>();
            SqlCommand cmd = new SqlCommand();

            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetAllAssessTemplatePaper", cmd))
            {
                while (sdr.Read())
                {
                    AssessTemplatePaper paper =
                        new AssessTemplatePaper(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbPaperName].ToString(),
                                                new List <AssessTemplateItem>());
                    papers.Add(paper);
                }
                return(papers);
            }
        }
コード例 #12
0
        /// <summary>
        /// 根据名称查找考评表
        /// </summary>
        /// <param name="paperName"></param>
        /// <returns></returns>
        public AssessTemplatePaper GetTemplatePapersExactlyByPaperName(string paperName)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmPaperName, SqlDbType.NVarChar, 50).Value = paperName;
            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetTemplatePapersExactlyByPaperName", cmd))
            {
                while (sdr.Read())
                {
                    AssessTemplatePaper paper =
                        new AssessTemplatePaper(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbPaperName].ToString(),
                                                new List <AssessTemplateItem>());
                    return(paper);
                }
                return(null);
            }
        }
コード例 #13
0
        /// <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);
        }
コード例 #14
0
        /// <summary>
        /// 通过Id取考评表
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public AssessTemplatePaper GetAssessTempletPaperById(int id)
        {
            AssessTemplatePaper templatePaper = null;
            SqlCommand          cmd           = new SqlCommand();

            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Value = id;

            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetAssessTemplatePaperByPKID", cmd))
            {
                while (sdr.Read())
                {
                    templatePaper =
                        new AssessTemplatePaper(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbPaperName].ToString(),
                                                new List <AssessTemplateItem>());
                }
                return(templatePaper);
            }
        }
コード例 #15
0
        private void TransferAssessTemplatePaperToAssessActivityPaper(AssessTemplatePaper assessTemplatePaper)
        {
            _ItsAssessActivity.ItsAssessActivityPaper.PaperName = assessTemplatePaper.PaperName;
            _ItsAssessActivity.ItsAssessActivityPaper.ItsAssessActivityItems = new List <AssessActivityItem>();

            foreach (AssessTemplateItem item in assessTemplatePaper.ItsAssessTemplateItems)
            {
                switch (item.ItsOperateType)
                {
                case OperateType.HR:
                    HRItem hrItem =
                        new HRItem(item.Question, item.Option, item.Classfication, item.Description);
                    hrItem.Grade = 0;
                    hrItem.Note  = "";
                    hrItem.AssessTemplateItemType = item.AssessTemplateItemType;
                    hrItem.Weight = item.Weight;
                    _ItsAssessActivity.ItsAssessActivityPaper.ItsAssessActivityItems.Add(hrItem);
                    break;

                case OperateType.NotHR:
                    PersonalItem personalItem =
                        new PersonalItem(item.Question, item.Option, item.Classfication, item.Description);
                    personalItem.Grade = 0;
                    personalItem.Note  = "";
                    personalItem.AssessTemplateItemType = item.AssessTemplateItemType;
                    personalItem.Weight = item.Weight;
                    _ItsAssessActivity.ItsAssessActivityPaper.ItsAssessActivityItems.Add(personalItem);
                    ManagerItem managerItem =
                        new ManagerItem(item.Question, item.Option, item.Classfication, item.Description);
                    managerItem.Grade = 0;
                    managerItem.Note  = "";
                    managerItem.AssessTemplateItemType = item.AssessTemplateItemType;
                    managerItem.Weight = item.Weight;
                    _ItsAssessActivity.ItsAssessActivityPaper.ItsAssessActivityItems.Add(managerItem);
                    break;

                default:
                    break;
                }
            }
        }
コード例 #16
0
        private bool HandleAssessTemplate()
        {
            bool retVal = true;

            try
            {
                if (_TheEmployeeToShow.Account.Position != null)
                {
                    int paperid = _IAssessManagementFacade.GetTempletPaperIDByEmployeePositionID(
                        _TheEmployeeToShow.Account.Position.Id);
                    AssessTemplatePaper paper = _IAssessManagementFacade.GetTempletPaperAndItemById(paperid);
                    if (paper != null && paper.ItsAssessTemplateItems != null)
                    {
                        _ItsView.AssessActivityItemList = paper.ItsAssessTemplateItems;
                    }
                }
            }
            catch
            {
                retVal &= false;
            }
            return(retVal);
        }
コード例 #17
0
        public void UpdateAssessTemplatePaper(AssessTemplatePaper assessTemplatePaper)
        {
            UpdateAssessPaper updateAssessPaper = new UpdateAssessPaper(assessTemplatePaper);

            updateAssessPaper.Excute();
        }
コード例 #18
0
 /// <summary>
 /// 该事务执行后,会增加一张没有考评项的考评表
 /// 异常情况:
 /// 1.Title不可与已有Paper的Title重复,否则给出提示,事务中断
 /// 业务流程:
 /// 1.有效性判断
 /// 2.如果通过有效性判断,则调用IDal层方法进行考评表新增
 /// </summary>
 public InsertAssessPaper(AssessTemplatePaper paper)
 {
     _Paper = paper;
 }
コード例 #19
0
        /// <summary>
        /// 复制事件
        /// </summary>
        public void btnCopyEvent()
        {
            AssessTemplatePaper paper = new AssessTemplatePaper(0, _ITemplatePaperView.TemplatePaperName, _ITemplatePaperView.AssessItemList);

            _ITemplatePaperView.SessionCopyPaper = paper;
        }
コード例 #20
0
 /// <summary>
 /// 该事务执行后,会修改考评表的基本信息
 /// 异常情况:
 /// 1.当前要修改的考评表是否存在,如果不在则给出提示,事务中断
 /// 2.PaperName不可与已有Paper的PaperName重复,否则给出提示,事务中断
 /// 业务流程:
 /// 1.有效性判断
 /// 2.如果通过有效性判断,则调用IDal层方法进行考评表修改
 /// </summary>
 public UpdateAssessPaper(AssessTemplatePaper paper)
 {
     _Paper = paper;
 }
コード例 #21
0
 /// <summary>
 ///
 /// </summary>
 public MakeAssessPaper(AssessTemplatePaper assessTemplatePaper, Model.AssessActivity assessActivity)
 {
     _AssessTemplatePaper = assessTemplatePaper;
     _AssessActivity      = assessActivity;
 }
コード例 #22
0
        public void AddAssessTemplatePaper(AssessTemplatePaper assessTemplatePaper)
        {
            InsertAssessPaper addAssessPaper = new InsertAssessPaper(assessTemplatePaper);

            addAssessPaper.Excute();
        }