/// <summary>
        /// 实现IAddSystemSetCondition,将信息填充到conditions中
        /// </summary>
        /// <param name="conditions"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="employeeComeDate"></param>
        public void AddSystemSetCondition(List <ApplyAssessCondition> conditions, DateTime startTime, DateTime endTime, DateTime employeeComeDate)
        {
            if ((endTime - startTime).Days > 366)
            {
                //试用II
                ApplyAssessCondition conditionItemProbationII = new ApplyAssessCondition(0);
                conditionItemProbationII.ApplyDate = startTime.AddDays(AAUtility._CheckProbationII_Days);
                conditionItemProbationII.ApplyAssessCharacterType = AssessCharacterType.ProbationII;
                conditionItemProbationII.AssessScopeFrom          = startTime;
                conditionItemProbationII.AssessScopeTo            = startTime.AddMonths(6).AddDays(-1);
                conditions.Add(conditionItemProbationII);

                AddConditionForNormalLabour(conditions, startTime, endTime);
            }
            else
            {
                //试用II
                ApplyAssessCondition conditionItemProbationII = new ApplyAssessCondition(0);
                conditionItemProbationII.ApplyDate = startTime.AddDays(AAUtility._CheckProbationIIOneYear_Days);
                conditionItemProbationII.ApplyAssessCharacterType = AssessCharacterType.ProbationII;
                conditionItemProbationII.AssessScopeFrom          = startTime;
                conditionItemProbationII.AssessScopeTo            = startTime.AddMonths(2).AddDays(-1);
                conditions.Add(conditionItemProbationII);

                AddConditionForNormalLabour(conditions, startTime, endTime);
            }
            //生成年终考核
            ApplyAssessConditionUtility.CreateAnnualConditions(conditions, startTime, endTime, employeeComeDate);
        }
Exemple #2
0
        /// <summary>
        /// 实现IAddSystemSetCondition,将信息填充到conditions中
        /// </summary>
        /// <param name="conditions"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="employeeComeDate"></param>
        public void AddSystemSetCondition(List <ApplyAssessCondition> conditions, DateTime startTime, DateTime endTime, DateTime employeeComeDate)
        {
            //合同周期
            DateTime dtStartTime;
            //for (int i = 1; DateTime.Compare(endTime, startTime.AddYears(i)) >= 0; i++)
            //{
            //    ApplyAssessCondition conditionItemNormal = new ApplyAssessCondition(0);
            //    dtStartTime = startTime.AddYears(i);
            //    conditionItemNormal.ApplyDate = dtStartTime.AddDays(-(AAUtility._CheckNormal_Days + 1));
            //    conditionItemNormal.ApplyAssessCharacterType = AssessCharacterType.Normal;
            //    conditionItemNormal.AssessScopeFrom = dtStartTime.AddYears(-1);
            //    conditionItemNormal.AssessScopeTo = dtStartTime.AddDays(-1);
            //    conditions.Add(conditionItemNormal);
            //}
            //合同期满
            ApplyAssessCondition conditionItemNormalForContract = new ApplyAssessCondition(0);

            conditionItemNormalForContract.ApplyDate = endTime.AddDays(-AAUtility._CheckNormal_Days);
            conditionItemNormalForContract.ApplyAssessCharacterType = AssessCharacterType.NormalForContract;
            conditionItemNormalForContract.AssessScopeFrom          = startTime;
            conditionItemNormalForContract.AssessScopeTo            = endTime;
            conditions.Add(conditionItemNormalForContract);
            //生成年终考核
            ApplyAssessConditionUtility.CreateAnnualConditions(conditions, startTime, endTime, employeeComeDate);
        }
Exemple #3
0
 private void ShowWindowForDetail(ApplyAssessCondition applyAssessCondition)
 {
     Operation.Value = "detail";
     applyAssessConditionDetailPresenter.InitView(applyAssessCondition, false);
     UpdatePanelWork.Update();
     mpeAssessCondition.Show();
 }
Exemple #4
0
 private void ShowWindowForModify(ApplyAssessCondition applyAssessCondition)
 {
     Operation.Value = "update";
     applyAssessConditionUpdatePresenter.InitView(applyAssessCondition, false);
     UpdatePanelWork.Update();
     mpeAssessCondition.Show();
 }
        public void AddApplyAssessCondition(List <ApplyAssessCondition> applyAssessConditions,
                                            ApplyAssessCondition applyAssessCondition)
        {
            AddApplyAssessCondition AddApplyAssessCondition =
                new AddApplyAssessCondition(applyAssessConditions, applyAssessCondition);

            AddApplyAssessCondition.Excute();
        }
        public void UpdateApplyAssessCondition(List <ApplyAssessCondition> applyAssessConditions,
                                               ApplyAssessCondition applyAssessCondition)
        {
            UpdateApplyAssessCondition UpdateApplyAssessCondition =
                new UpdateApplyAssessCondition(applyAssessConditions, applyAssessCondition);

            UpdateApplyAssessCondition.Excute();
        }
 public void InitView(ApplyAssessCondition applyAssessCondition, bool isPageValid)
 {
     InitBaseView(_View, isPageValid);
     _View.Title        = "系统自动发起绩效考核条件详情";
     _View.FormReadonly = true;
     if (!isPageValid)
     {
         _View.ApplyAssessCondition = applyAssessCondition;
     }
 }
Exemple #8
0
 public void InitView(ApplyAssessCondition applyAssessCondition, bool isPageValid)
 {
     InitBaseView(_View, isPageValid);
     _View.Title        = "添加系统自动发起绩效考核条件";
     _View.FormReadonly = false;
     if (!isPageValid)
     {
         _View.ApplyAssessCondition   = applyAssessCondition;
         _View.ApplyAssessConditionID = applyAssessCondition.ConditionID.ToString();
     }
 }
Exemple #9
0
        public int InsertApplyAssessCondition(ApplyAssessCondition conditioin)
        {
            int        pkid;
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ConditionID, SqlDbType.Int).Direction          = ParameterDirection.Output;
            cmd.Parameters.Add(_EmployeeContractID, SqlDbType.Int).Value       = conditioin.EmployeeContractID;
            cmd.Parameters.Add(_ApplyDate, SqlDbType.DateTime).Value           = conditioin.ApplyDate;
            cmd.Parameters.Add(_AssessScopeFrom, SqlDbType.DateTime).Value     = conditioin.AssessScopeFrom;
            cmd.Parameters.Add(_AssessScopeTo, SqlDbType.DateTime).Value       = conditioin.AssessScopeTo;
            cmd.Parameters.Add(_ApplyAssessCharacterType, SqlDbType.Int).Value = Convert.ToInt32(conditioin.ApplyAssessCharacterType);

            SqlHelper.ExecuteNonQueryReturnPKID("ApplyAssessConditionInsert", cmd, out pkid);
            return(pkid);
        }
Exemple #10
0
 public void btnOKClick(object sender, EventArgs e)
 {
     if (Validation(_View))
     {
         try
         {
             ApplyAssessCondition applyAssessCondition = _View.ApplyAssessCondition;
             applyAssessCondition.ConditionID = Convert.ToInt32(_View.ApplyAssessConditionID);
             _GVUpdateApplyAssessCondition(applyAssessCondition);
         }
         catch (ApplicationException ex)
         {
             _View.Message = ex.Message;
         }
     }
 }
Exemple #11
0
 public bool CheckValidListData(ApplyAssessCondition condition, List <ApplyAssessCondition> conditions)
 {
     conditions = _View.ConditionSource;
     for (int i = 0; i < conditions.Count; i++)
     {
         if (conditions[i].ApplyDate == condition.ApplyDate &&
             conditions[i].AssessScopeFrom == condition.AssessScopeFrom &&
             conditions[i].AssessScopeTo == condition.AssessScopeTo &&
             conditions[i].ApplyAssessCharacterType == condition.ApplyAssessCharacterType &&
             conditions[i].ConditionID != condition.ConditionID)
         {
             _ApplyAssessConditionView.Message = "已存在相同的设置";
             return(false);
         }
     }
     return(true);
 }
Exemple #12
0
        public void AddApplyAssessConditionInContractView(ApplyAssessCondition condition)
        {
            if (condition == null)
            {
                _View.ResultMessage = "<span class='fontred'>" + "系统设置信息获取失败" + "</span>";
                return;
            }
            condition.ConditionID = -1;
            List <ApplyAssessCondition> applyAssessConditions = _View.ConditionSource;

            if (!CheckValidListData(condition, applyAssessConditions))
            {
                return;
            }
            _IApplyAssessConditionFacade.AddApplyAssessCondition(applyAssessConditions, condition);
            _View.ConditionSource = applyAssessConditions;
        }
Exemple #13
0
        /// <summary>
        /// 实现IAddSystemSetCondition,将信息填充到conditions中
        /// </summary>
        /// <param name="conditions"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="employeeComeDate"></param>
        public void AddSystemSetCondition(List <ApplyAssessCondition> conditions, DateTime startTime, DateTime endTime, DateTime employeeComeDate)
        {
            //三方协议
            DateTime?dtRealPracticeI = null;
            DateTime dtForPracticeI  =
                Convert.ToDateTime(startTime.Year + "-" + AAUtility._CheckPracticeI_Month + "-" +
                                   AAUtility._CheckPracticeI_Day);

            if (DateTime.Compare(endTime, dtForPracticeI) > 0 && DateTime.Compare(dtForPracticeI, startTime) > 0)
            {
                dtRealPracticeI = dtForPracticeI;
            }
            else
            {
                dtForPracticeI =
                    Convert.ToDateTime(startTime.Year + 1 + "-" + AAUtility._CheckPracticeI_Month + "-" +
                                       AAUtility._CheckPracticeI_Day);
                if (DateTime.Compare(endTime, dtForPracticeI) > 0 && DateTime.Compare(dtForPracticeI, startTime) > 0)
                {
                    dtRealPracticeI = dtForPracticeI;
                }
            }
            if (dtRealPracticeI != null)
            {
                ApplyAssessCondition conditionItemPracticeI = new ApplyAssessCondition(0);
                conditionItemPracticeI.ApplyDate = dtForPracticeI;
                conditionItemPracticeI.ApplyAssessCharacterType = AssessCharacterType.PracticeI;
                conditionItemPracticeI.AssessScopeFrom          = startTime;
                conditionItemPracticeI.AssessScopeTo            = dtForPracticeI.AddDays(26);
                conditions.Add(conditionItemPracticeI);
            }

            //实习期到期
            ApplyAssessCondition conditionItemPracticeII = new ApplyAssessCondition(0);

            conditionItemPracticeII.ApplyDate = endTime.AddDays(-AAUtility._CheckPracticeII_Day);
            conditionItemPracticeII.ApplyAssessCharacterType = AssessCharacterType.PracticeII;
            conditionItemPracticeII.AssessScopeFrom          = startTime;
            conditionItemPracticeII.AssessScopeTo            = endTime;
            conditions.Add(conditionItemPracticeII);
            //生成年终考核
            ApplyAssessConditionUtility.CreateAnnualConditions(conditions, startTime, endTime, employeeComeDate);
        }
Exemple #14
0
        public ApplyAssessCondition GetApplyAssessConditionByPKID(int pkid)
        {
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_ConditionID, SqlDbType.Int).Value = pkid;
            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetApplyAssessConditionByPKID", cmd))
            {
                while (sdr.Read())
                {
                    ApplyAssessCondition condition = new ApplyAssessCondition((Int32)sdr[_DBConditionID]);
                    condition.EmployeeContractID       = (Int32)sdr[_DBEmployeeContractID];
                    condition.ApplyDate                = (DateTime)sdr[_DBApplyDate];
                    condition.AssessScopeFrom          = (DateTime)sdr[_DBAssessScopeFrom];
                    condition.AssessScopeTo            = (DateTime)sdr[_DBAssessScopeTo];
                    condition.ApplyAssessCharacterType = (AssessCharacterType)sdr[_DBApplyAssessCharacterType];
                    return(condition);
                }
            }
            return(null);
        }
Exemple #15
0
        public List <ApplyAssessCondition> GetApplyAssessConditionByCurrDate(DateTime currentDate)
        {
            List <ApplyAssessCondition> conditionList = new List <ApplyAssessCondition>();
            SqlCommand cmd = new SqlCommand();

            cmd.Parameters.Add(_CurrentTime, SqlDbType.DateTime).Value = currentDate;
            using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetApplyAssessConditionByCurrDate", cmd))
            {
                while (sdr.Read())
                {
                    ApplyAssessCondition condition = new ApplyAssessCondition((Int32)sdr[_DBConditionID]);
                    condition.EmployeeContractID       = (Int32)sdr[_DBEmployeeContractID];
                    condition.ApplyDate                = (DateTime)sdr[_DBApplyDate];
                    condition.AssessScopeFrom          = (DateTime)sdr[_DBAssessScopeFrom];
                    condition.AssessScopeTo            = (DateTime)sdr[_DBAssessScopeTo];
                    condition.ApplyAssessCharacterType = (AssessCharacterType)sdr[_DBApplyAssessCharacterType];
                    conditionList.Add(condition);
                }
            }
            return(conditionList);
        }
        /// <summary>
        /// 生成年终考核
        /// </summary>
        /// <param name="conditions"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="employeeComeDate"></param>
        public static void CreateAnnualConditions(List <ApplyAssessCondition> conditions, DateTime startTime, DateTime endTime, DateTime employeeComeDate)
        {
            if (conditions == null)
            {
                conditions = new List <ApplyAssessCondition>();
            }
            DateTime dtStartTime = new DateTime(startTime.Year, 1, 1);

            for (int i = 1; DateTime.Compare(endTime, dtStartTime.AddYears(1).AddDays(-1)) >= 0; i++)
            {
                ApplyAssessCondition conditionItemAnnual = new ApplyAssessCondition(0);
                conditionItemAnnual.ApplyAssessCharacterType = AssessCharacterType.Annual;
                conditionItemAnnual.ApplyDate =
                    new DateTime(dtStartTime.Year, AAUtility._AnnualApplyMonth, AAUtility._AnnualApplyDay);
                conditionItemAnnual.AssessScopeFrom = DateTime.Compare(employeeComeDate, dtStartTime) > 0
                                                          ? employeeComeDate
                                                          : dtStartTime;
                conditionItemAnnual.AssessScopeTo = dtStartTime.AddYears(1).AddDays(-1);
                conditions.Add(conditionItemAnnual);
                dtStartTime = dtStartTime.AddYears(1);
            }
        }
 /// <summary>
 /// 将conditions进行排序,根据发起时间排序
 /// </summary>
 /// <param name="conditions"></param>
 public static void GenerateConditions(List <ApplyAssessCondition> conditions)
 {
     if (conditions.Count == 0)
     {
         return;
     }
     for (int i = 0; i < conditions.Count - 1; i++)
     {
         conditions[i].ConditionID = i;
         for (int j = i + 1; j < conditions.Count; j++)
         {
             if (DateTime.Compare(conditions[j].ApplyDate, conditions[i].ApplyDate) < 0)
             {
                 conditions[j].ConditionID = conditions[i].ConditionID;
                 ApplyAssessCondition conditionTmp = conditions[i];
                 conditions[i] = conditions[j];
                 conditions[j] = conditionTmp;
             }
         }
     }
     conditions[conditions.Count - 1].ConditionID = conditions.Count - 1;
 }
        private static void AddConditionForNormalLabour(List <ApplyAssessCondition> conditions, DateTime startTime, DateTime endTime)
        {
            //合同周期
            //DateTime dtStartTime;
            //for (int i = 1; DateTime.Compare(endTime, startTime.AddYears(i)) >= 0; i++)
            //{
            //    ApplyAssessCondition conditionItemNormal = new ApplyAssessCondition(0);
            //    dtStartTime = startTime.AddYears(i);
            //    conditionItemNormal.ApplyDate = dtStartTime.AddDays(-(AAUtility._CheckNormal_Days + 1));
            //    conditionItemNormal.ApplyAssessCharacterType = AssessCharacterType.Normal;
            //    conditionItemNormal.AssessScopeFrom = dtStartTime.AddYears(-1);
            //    conditionItemNormal.AssessScopeTo = dtStartTime.AddDays(-1);
            //    conditions.Add(conditionItemNormal);
            //}
            //合同期满
            ApplyAssessCondition conditionItemNormalForContract = new ApplyAssessCondition(0);

            conditionItemNormalForContract.ApplyDate = endTime.AddDays(-AAUtility._CheckNormal_Days);
            conditionItemNormalForContract.ApplyAssessCharacterType = AssessCharacterType.NormalForContract;
            conditionItemNormalForContract.AssessScopeFrom          = startTime;
            conditionItemNormalForContract.AssessScopeTo            = endTime;
            conditions.Add(conditionItemNormalForContract);
        }
Exemple #19
0
 public void GVUpdateApplyAssessCondition(ApplyAssessCondition applyAssessCondition)
 {
     applyAssessConditionListInContractPresenter.UpdateApplyAssessConditionInContractView(applyAssessCondition);
 }
Exemple #20
0
 /// <summary>
 /// 更新考核条件构造函数
 /// </summary>
 /// <param name="applyAssessConditions"></param>
 /// <param name="applyAssessCondition"></param>
 public UpdateApplyAssessCondition(List <ApplyAssessCondition> applyAssessConditions,
                                   ApplyAssessCondition applyAssessCondition)
 {
     _ApplyAssessConditions = applyAssessConditions;
     _ApplyAssessCondition  = applyAssessCondition;
 }