Пример #1
0
        private static Dictionary <string, string> GetCharacterTypeEnumDataSource()
        {
            Dictionary <string, string> characterType = new Dictionary <string, string>();

            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.Annual);
            return(characterType);
        }
Пример #2
0
        private MailBody CreateMailBody()
        {
            MailBody mailBody = new MailBody();

            mailBody.Subject = "您的【" +
                               AssessActivityUtility.GetCharacterNameByType(_AssessActivity.AssessCharacterType) + " " +
                               _AssessActivity.ScopeFrom.ToShortDateString() + "至" +
                               _AssessActivity.ScopeTo.ToShortDateString() + "】已经结束,请登录系统查看评估表。";

            StringBuilder sbMailBody = new StringBuilder(mailBody.Subject);

            mailBody.Body = sbMailBody.ToString();

            Account        account  = BllInstance.AccountBllInstance.GetAccountById(_AssessActivity.ItsEmployee.Account.Id);
            List <Account> accounts = new List <Account>();

            accounts.Add(account);
            List <List <string> > emails;

            emails = BllUtility.GetEmailsByAccountIds(accounts);

            mailBody.MailTo = emails[0];
            mailBody.MailCc = emails[1];

            return(mailBody);
        }
Пример #3
0
 public void InitBaseView(IApplyAssessConditionView view, bool isPageValid)
 {
     view.Message      = string.Empty;
     view.ApplyDateMsg = string.Empty;
     view.ScopeMsg     = string.Empty;
     if (!isPageValid)
     {
         view.AssessCharacterTypes = AssessActivityUtility.GetCharacterTypeEnum();
     }
 }
        public override void Initialize(bool isPostBack)
        {
            //_View.Message = string.Empty;
            if (!isPostBack)
            {
                _View.CharacterTypeSource = AssessActivityUtility.GetAllCharacterTypeEnum();

                _View.StatusTypeSource = AssessActivityUtility.GetAllAssessStatusTypeEnum();
                _View.DepartmentSource = _IDepartmentBll.GetAllDepartment();
                BindAssessActivity(null, null);
            }
        }
Пример #5
0
        private List <Model.AssessActivity> GetActivitysByStatusAndOperAccountId(int accountId, AssessStatus status)
        {
            List <Model.AssessActivity> retVal = new List <Model.AssessActivity>();

            List <Model.AssessActivity> employeeAssessActivitys = AssessActivityLogic.GetAssessActivityByEmployeeStatus(-1, status);

            foreach (Model.AssessActivity item in employeeAssessActivitys)
            {
                Account operAccount =
                    GetDiyStepAccount(item.ItsEmployee.Account.Id, item.DiyProcess.DiySteps[item.NextStepIndex]);
                if (operAccount == null)
                {
                    //mail通知人事
                    List <Account> accounts = new GetDiyProcess().GetHRPrincipalByAccountID(item.ItsEmployee.Account.Id);
                    if (accounts != null && accounts.Count > 0)
                    {
                        List <List <string> > mails = BllUtility.GetEmailsByAccountIds(accounts);
                        MailBody mailBody           = new MailBody();
                        mailBody.Subject = "绩效考核流程中断";

                        StringBuilder sbMailBody = new StringBuilder(item.ItsEmployee.Account.Name);
                        sbMailBody.Append("的");
                        sbMailBody.Append(
                            AssessActivityUtility.GetCharacterNameByType(item.AssessCharacterType));
                        sbMailBody.Append("未能找到下一步处理人,被系统自动中断!");
                        mailBody.Body = sbMailBody.ToString();
                        if (mails[0].Count > 0)
                        {
                            mailBody.MailTo = mails[0];
                        }
                        if (mails[1].Count > 0)
                        {
                            mailBody.MailCc = mails[1];
                        }
                        if (mails[0].Count > 0 || mails[1].Count > 0)
                        {
                            BllInstance.MailGateWayBllInstance.Send(mailBody);
                        }
                    }

                    new InterruptActivity(item.AssessActivityID).Excute();
                    continue;
                }
                if (operAccount.Id == accountId)
                {
                    retVal.Add(item);
                }
            }
            return(retVal);
        }
        private static Dictionary <string, string> GetCharacterTypeEnumDataSource()
        {
            Dictionary <string, string> characterType = new Dictionary <string, string>();

            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.All);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType,
                                                                         AssessCharacterType.NormalForContract);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.Normal);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.ProbationI);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.ProbationII);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.PracticeI);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.PracticeII);
            AssessActivityUtility.AddCharacterValueAndNameIntoDictionary(characterType, AssessCharacterType.Abnormal);

            return(characterType);
        }
Пример #7
0
        protected override void ValidateSelf()
        {
            Model.AssessActivity assessActivity = _IAssessActivity.GetAssessActivityById(_ActivityId);
            if (assessActivity != null)
            {
                string intention = assessActivity.Intention;

                if (_IfSubmit && !AssessActivityUtility.ValidateIntention(intention, _Intention))
                {
                    BllUtility.ThrowException(BllExceptionConst._InvalidIntention);
                }
            }
            if (_ItsAssessActivity.ItsAssessStatus != AssessStatus.PersonalFilling)
            {
                BllUtility.ThrowException(BllExceptionConst._InvalidStatus);
            }
        }
        public override void Initialize(bool isPostBack)
        {
            _View.Message = string.Empty;

            if (_AssessActivityID == 0)
            {
                _View.Message = "绩效考核活动信息输入有误";
                return;
            }
            if (!isPostBack)
            {
                _View.AssessCharacterTypes   = AssessActivityUtility.GetCharacterTypeEnum();
                _View.ddlCharacterEnabled    = false;
                _View.AssessActivityToManual = InstanceFactory.AssessActivityFacade().GetAssessActivityByAssessActivityID(_AssessActivityID);
                _View.FormReadonly           = true;
            }
        }
Пример #9
0
        private static string WriteEmailContent(Model.AssessActivity assessActivityItem, Contract contract)
        {
            StringBuilder emailContentBuilder = new StringBuilder();

            emailContentBuilder.Append("根据");
            emailContentBuilder.Append("第");
            emailContentBuilder.Append(contract.ContractID);
            emailContentBuilder.Append("号合同——");
            emailContentBuilder.Append(contract.ContractType.ContractTypeName);
            emailContentBuilder.Append(contract.StartDate.ToShortDateString());
            emailContentBuilder.Append("---");
            emailContentBuilder.Append(contract.EndDate.ToShortDateString());
            emailContentBuilder.Append(",系统自动为 ");
            emailContentBuilder.Append(assessActivityItem.ItsEmployee.Account.Name);
            emailContentBuilder.Append(" 发起一次");
            emailContentBuilder.Append(AssessActivityUtility.GetCharacterNameByType(assessActivityItem.AssessCharacterType));
            emailContentBuilder.Append("; ");
            return(emailContentBuilder.ToString());
        }
Пример #10
0
        public override void Initialize(bool isPostBack)
        {
            _View.Message = string.Empty;

            int employeeID;

            if (!int.TryParse(_StrEmployeeId, out employeeID))
            {
                _View.Message = "员工信息传入错误";
                return;
            }

            _View.Employee = InstanceFactory.CreateEmployeeFacade().GetEmployeeByAccountID(employeeID);

            if (!isPostBack)
            {
                _View.txtEmployeeNameReadOnly = true;
                _View.AssessCharacterTypes    = AssessActivityUtility.GetCharacterTypeEnum();
            }
        }
Пример #11
0
        private MailBody CreateAssessMailBody()
        {
            MailBody mailBody = null;

            switch (_AssessStatus)
            {
            case (AssessStatus.HRComfirming):
            {
                mailBody         = new MailBody();
                mailBody.Subject = "待确认绩效考核";

                StringBuilder sbMailBody = new StringBuilder(_AssessActivity.AssessProposerName);
                sbMailBody.Append("为");
                sbMailBody.Append(_AssessActivity.ItsEmployee.Account.Name);
                sbMailBody.Append("发起一次");
                sbMailBody.Append(
                    AssessActivityUtility.GetCharacterNameByType(_AssessActivity.AssessCharacterType));
                mailBody.Body = sbMailBody.ToString();

                GetMailToCc(mailBody);
            }
            break;

            case AssessStatus.HRFilling:
            {
                mailBody         = new MailBody();
                mailBody.Subject = "待人力资源评定";
                mailBody.Body    = "您有一个待评定的绩效考核流程";

                GetMailToCc(mailBody);
            }
            break;

            case (AssessStatus.PersonalFilling):
            {
                mailBody         = new MailBody();
                mailBody.Subject = "待自我评定";

                StringBuilder sbMailBody = new StringBuilder("您有一个待自我评定的绩效考核流程,请在");
                sbMailBody.Append(_AssessActivity.PersonalExpectedFinish.ToShortDateString());
                sbMailBody.Append("日之前填写完毕");
                mailBody.Body = sbMailBody.ToString();

                GetMailToCc(mailBody);
            }
            break;

            case (AssessStatus.ManagerFilling):
            {
                mailBody         = new MailBody();
                mailBody.Subject = "待主管评定";

                StringBuilder sbMailBody = new StringBuilder("您有一个待填写的绩效考核流程,请在");
                sbMailBody.Append(_AssessActivity.ManagerExpectedFinish.ToShortDateString());
                sbMailBody.Append("日之前填写完毕");
                mailBody.Body = sbMailBody.ToString();

                GetMailToCc(mailBody);
            }
            break;

            case (AssessStatus.ApproveFilling):
            {
                mailBody         = new MailBody();
                mailBody.Subject = "待审批绩效考核流程";
                mailBody.Body    = "您有一个待审批的绩效考核流程";

                GetMailToCc(mailBody);
            }
            break;

            case (AssessStatus.Finish):
            {
                mailBody         = new MailBody();
                mailBody.Subject = "一个绩效考核流程结束";

                StringBuilder sbMailBody = new StringBuilder("员工");
                sbMailBody.Append(_AssessActivity.ItsEmployee.Account.Name);
                sbMailBody.Append("的绩效考核流程结束了");
                mailBody.Body = sbMailBody.ToString();

                GetMailToCc(mailBody);
            }
            break;

            default:
                break;
            }

            return(mailBody);
        }