/// <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
        public override void Initialize(bool isPostBack)
        {
            _ITemplatePaperView.ResultMessage = string.Empty;
            _ITemplatePaperView.ValidatePaperName = string.Empty;
            _ITemplatePaperView.AssessItems = _IAssessManagementFacade.GetAllTemplateItems();

            _ITemplatePaperView.ActionButtonEvent += AddEvent;

            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 = "Add";
                _ITemplatePaperView.TemplatePaperName = string.Empty;

                List<AssessTemplateItem> items = new List<AssessTemplateItem>();
                AssessTemplateItem empty = new AssessTemplateItem(-1, "", OperateType.NotHR);
                empty.Weight = 0;
                items.Add(empty);
                _ITemplatePaperView.AssessItemList = items;
            }
            _ITemplatePaperView.SetbtnPasteVisible = _ITemplatePaperView.SessionCopyPaper != null;
        }
Пример #3
0
        public List <AssessTemplateItem> GetTemplateItemsByConditon(string question, OperateType type, ItemClassficationEmnu classfication, AssessTemplateItemType itemtype)
        {
            List <AssessTemplateItem> assesstemplateItems = new List <AssessTemplateItem>();
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmQuestion, SqlDbType.NVarChar, 100).Value     = question;
            cmd.Parameters.Add(_ParmItsOperateType, SqlDbType.Int, 4).Value      = (int)type;
            cmd.Parameters.Add(_ParmItemClassfication, SqlDbType.Int, 4).Value   = classfication;
            cmd.Parameters.Add(_ParmAssessTemplateItemType, SqlDbType.Int).Value = itemtype;
            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetTemplateItemsByConditon", cmd))
            {
                while (sdr.Read())
                {
                    AssessTemplateItem assesstemplateItem =
                        new AssessTemplateItem(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbQuestion].ToString(),
                                               (OperateType)sdr[_DbOperateType]);
                    assesstemplateItem.AssessTemplateItemType = (AssessTemplateItemType)sdr[_DbAssessTemplateItemType];
                    assesstemplateItem.Classfication          = (ItemClassficationEmnu)sdr[_DbItemClassfication];
                    assesstemplateItem.Option      = sdr[_DbItemOption].ToString();
                    assesstemplateItem.Description = sdr[_DbItemDescription].ToString();
                    assesstemplateItems.Add(assesstemplateItem);
                }
                return(assesstemplateItems);
            }
        }
        public void ExectEvent(object sender, EventArgs e)
        {
            if (TemplatePaperUtility.Validate(_View))
            {
                try
                {
                    _assessTemplateItem =
                        new AssessTemplateItem(TemplateItemId, _View.Question, _View.ItemOperateType);

                    _assessTemplateItem.AssessTemplateItemType =
                        (AssessTemplateItemType)_View.AssessTemplateItemType;


                    _assessTemplateItem.Classfication =
                        TemplatePaperUtility.GetChoosedItemClassfication(_View.ClassficationId);
                    TemplatePaperUtility.InitOperation(_View, _assessTemplateItem);
                    _assessTemplateItem.Description = _View.Description;

                    _IAssessManagementFacade.AddAssessTemplateItem(_assessTemplateItem);
                    _View.Message = "添加绩效考核项成功";
                    ToTemlateItemListPageEvent(this, null);
                }
                catch (Exception ex)
                {
                    _View.Message = "<span class='fontred'>" + ex.Message + "</span>";
                }
            }
        }
Пример #5
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);
        }
Пример #6
0
        private List <AssessTemplateItem> UpdateRowPara(string rowIndex, string itemId)
        {
            AssessTemplateItem item =
                _IAssessManagementFacade.GetTemplateItemById(Convert.ToInt32(itemId));

            if (item == null)
            {
                return(_ITemplatePaperView.AssessItemList);
            }
            List <AssessTemplateItem> items = _ITemplatePaperView.AssessItemList;

            items[Convert.ToInt32(rowIndex)] = item;
            return(items);
        }
Пример #7
0
        public void InitView(bool ispostback, string itemId)
        {
            _View.Message            = "";
            _View.ItemMessage5       = "";
            _View.ItemMessage4       = "";
            _View.ItemMessage3       = "";
            _View.ItemMessage2       = "";
            _View.ItemMessage1       = "";
            _View.QestionNullMessage = "";
            _View.RangeError         = "";
            _View.FormulaError       = "";
            _View.PageTitle          = "绩效考核项详情";
            if (!int.TryParse(itemId, out _TemplateItemID))
            {
                _View.Message = "<span class='fontred'>初始错误</span>";
                return;
            }
            _View.ReadOnly = true;
            if (!ispostback)
            {
                _View.ClassficationSource = AssessUtility.GetItemClassfication();
                AssessTemplateItem item = _IAssessManagementFacade.GetTemplateItemById(_TemplateItemID);
                _View.AssessTemplateItemType = (int)item.AssessTemplateItemType;
                _View.ItemOperateType        = item.ItsOperateType;
                _View.Question        = item.Question;
                _View.ClassficationId = item.Classfication.ToString();
                _View.Description     = item.Description;
                string[] options = item.Option.Split('/');
                switch (_View.AssessTemplateItemType)
                {
                case 0:
                    _View.Option5 = options[0];
                    _View.Option4 = options[1];
                    _View.Option3 = options[2];
                    _View.Option2 = options[3];
                    _View.Option1 = options[4];
                    break;

                case 2:
                    _View.MinRange = options[0];
                    _View.MaxRange = options[1];
                    break;

                case 3:
                    _View.Formula = item.Option;
                    break;
                }
                _View.Description = item.Description;
            }
        }
Пример #8
0
        /// <summary>
        /// 插入考评项
        /// </summary>
        /// <param name="assessTemplateItem"></param>
        /// <returns></returns>
        public int InsertTemplateItem(AssessTemplateItem assessTemplateItem)
        {
            int        pkid;
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmQuestion, SqlDbType.NVarChar, 100).Value     = assessTemplateItem.Question;
            cmd.Parameters.Add(_ParmAssessTemplateItemType, SqlDbType.Int).Value = assessTemplateItem.AssessTemplateItemType;
            cmd.Parameters.Add(_ParmItsOperateType, SqlDbType.Int).Value         = assessTemplateItem.ItsOperateType;
            cmd.Parameters.Add(_ParmItemClassfication, SqlDbType.Int).Value      = assessTemplateItem.Classfication;
            cmd.Parameters.Add(_ParmItemOption, SqlDbType.NVarChar, 1000).Value  = assessTemplateItem.Option;
            cmd.Parameters.Add(_ParmItemDescription, SqlDbType.Text).Value       = assessTemplateItem.Description;
            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Direction = ParameterDirection.Output;
            SqlHelper.ExecuteNonQueryReturnPKID("AssessTemplateItemInsert", cmd, out pkid);
            return(pkid);
        }
Пример #9
0
        /// <summary>
        /// 补充更新考评项
        /// </summary>
        /// <param name="assessTemplateItem"></param>
        /// <returns></returns>
        public int UpdateTemplateItem(AssessTemplateItem assessTemplateItem)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmCount, SqlDbType.Int).Direction              = ParameterDirection.Output;
            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Value                   = assessTemplateItem.AssessTemplateItemID;
            cmd.Parameters.Add(_ParmQuestion, SqlDbType.NVarChar, 100).Value     = assessTemplateItem.Question;
            cmd.Parameters.Add(_ParmItsOperateType, SqlDbType.Int).Value         = assessTemplateItem.ItsOperateType;
            cmd.Parameters.Add(_ParmAssessTemplateItemType, SqlDbType.Int).Value =
                assessTemplateItem.AssessTemplateItemType;
            cmd.Parameters.Add(_ParmItemClassfication, SqlDbType.Int).Value     = assessTemplateItem.Classfication;
            cmd.Parameters.Add(_ParmItemOption, SqlDbType.NVarChar, 1000).Value = assessTemplateItem.Option;
            cmd.Parameters.Add(_ParmItemDescription, SqlDbType.Text).Value      = assessTemplateItem.Description;
            return(SqlHelper.ExecuteNonQuery("AssessTemplateItemUpdate", cmd));
        }
Пример #10
0
        /// <summary>
        /// 交换第id行<==>第id-1行
        /// </summary>
        /// <param name="id"></param>
        public void ddlAssessItemChangedForUpEvent(string id)
        {
            List <AssessTemplateItem> items = _ITemplatePaperView.AssessItemList;
            int currRow = Convert.ToInt32(id);

            if (currRow == 0)
            {
                return;
            }
            AssessTemplateItem tempItem = items[currRow - 1];

            items[currRow - 1] = items[currRow];
            items[currRow]     = tempItem;
            _ITemplatePaperView.AssessItemList = items;
        }
Пример #11
0
        public AssessTemplateItem GetTemplateItemById(int id)
        {
            AssessTemplateItem assessTemplateItem = null;
            SqlCommand         cmd = new SqlCommand();

            cmd.Parameters.Add(_ParmPKID, SqlDbType.Int).Value = id;
            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetAssessTemplateItemByPKID", cmd))
            {
                while (sdr.Read())
                {
                    assessTemplateItem =
                        new AssessTemplateItem(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbQuestion].ToString(),
                                               (OperateType)sdr[_DbOperateType]);
                    assessTemplateItem.AssessTemplateItemType = (AssessTemplateItemType)sdr[_DbAssessTemplateItemType];
                    assessTemplateItem.Classfication          = (ItemClassficationEmnu)sdr[_DbItemClassfication];
                    assessTemplateItem.Option      = sdr[_DbItemOption].ToString();
                    assessTemplateItem.Description = sdr[_DbItemDescription].ToString();
                }
                return(assessTemplateItem);
            }
        }
Пример #12
0
        public static void InitOperation(IAddTemplateItemView view, AssessTemplateItem item)
        {
            switch (view.AssessTemplateItemType)
            {
            case 0:
                item.Option = Option(view);
                break;

            case 2:
                item.Option = ScoreRange(view);
                break;

            case 3:
                item.Option = view.Formula;
                break;

            default:
                item.Option = string.Empty;
                break;
            }
        }
Пример #13
0
        public List <AssessTemplateItem> GetAllTemplateItems()
        {
            List <AssessTemplateItem> assesstemplateItems = new List <AssessTemplateItem>();
            SqlCommand cmd = new SqlCommand();

            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetAllTemplateItems", cmd))
            {
                while (sdr.Read())
                {
                    AssessTemplateItem assesstemplateItem =
                        new AssessTemplateItem(Convert.ToInt32(sdr[_DbPKID]), sdr[_DbQuestion].ToString(),
                                               (OperateType)sdr[_DbOperateType]);
                    assesstemplateItem.AssessTemplateItemType = (AssessTemplateItemType)sdr[_DbAssessTemplateItemType];
                    assesstemplateItem.Classfication          = (ItemClassficationEmnu)sdr[_DbItemClassfication];
                    assesstemplateItem.Option      = sdr[_DbItemOption].ToString();
                    assesstemplateItem.Description = sdr[_DbItemDescription].ToString();
                    assesstemplateItems.Add(assesstemplateItem);
                }
                return(assesstemplateItems);
            }
        }
        public void AddAssessTemplateItem(AssessTemplateItem assessTemplateItem)
        {
            InsertAssessItem addAssessItem = new InsertAssessItem(assessTemplateItem);

            addAssessItem.Excute();
        }
        public void UpdateAssessTemplateItem(AssessTemplateItem assessTemplateItem)
        {
            UpdateAssessItem updateAssessItem = new UpdateAssessItem(assessTemplateItem);

            updateAssessItem.Excute();
        }
Пример #16
0
 /// <summary>
 /// 测试执行的构造函数
 /// </summary>
 /// <param name="iAssessTemplateItem"></param>
 /// <param name="item"></param>
 public InsertAssessItem(IAssessTemplateItem iAssessTemplateItem, AssessTemplateItem item)
 {
     _IAssessTemplateItem = iAssessTemplateItem;
     _Item = item;
 }
Пример #17
0
 public UpdateAssessItem(IAssessTemplateItem iAssessTemplateItem, AssessTemplateItem item)
 {
     _IAssessTemplateItem = iAssessTemplateItem;
     _Item = item;
 }
Пример #18
0
 /// <summary>
 /// 执行该事务时,会新增考评项
 /// 异常情况:
 /// 1.Title不可与已有Item的Title重复,否则给出提示,事务中断
 /// 业务流程:
 /// 1.有效性判断
 /// 2.如果通过有效性判断,则调用IDal层方法进行考评项新增
 /// </summary>
 public InsertAssessItem(AssessTemplateItem item)
 {
     _Item = item;
 }
Пример #19
0
        /// <summary>
        /// 该事务执行后,会修改考评表的基本信息
        /// 异常情况:
        /// 1.当前要修改的考评项是否存在,如果不在则给出提示,事务中断
        /// 2.Question不可与已有Item的Question重复,否则给出提示,事务中断
        /// 业务流程:
        /// 1.有效性判断
        /// 2.如果通过有效性判断,则调用IDal层方法进行考评表修改
        /// </summary>

        public UpdateAssessItem(AssessTemplateItem item)
        {
            _Item = item;
        }