protected override void Validation() { if (_IEmployee.CountEmployeeByNationalityID(_NationalityID) > 0) { HrmisUtility.ThrowException(HrmisUtility._Nationality_HasBeenUsed); } }
protected override void ExcuteSelf() { IContract iContract = new ContractDal(); GetEmployee getEmployee = new GetEmployee(); List<Employee> employeeList = new List<Employee>(); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.NormalEmployee, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.ProbationEmployee, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.BorrowedEmployee, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.PartTimeEmployee, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.PracticeEmployee, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.Retirement, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.RetirementHire, -1, _DepartmentID, true,-1)); employeeList.AddRange( getEmployee.GetEmployeeBasicInfoByBasicCondition(_EmployeeName, EmployeeTypeEnum.WorkEmployee, -1, _DepartmentID, true,-1)); employeeList = HrmisUtility.RemoteUnAuthEmployee(employeeList, AuthType.HRMIS, _Account, _Powers); foreach (Employee employee in employeeList) { string description = string.Empty; Contract contract = iContract.GetLastContractInAllTypeByAccountID(employee.Account.Id, _CurrentDate); if (contract == null) { description = string.Format("{0}目前没有合同信息", employee.Account.Name); } if (string.IsNullOrEmpty(description)) { continue; } SystemError error = new SystemError(description, ErrorType.EmployeeContractError, employee.Account.Id); error.ErrorEmployee = employee; error.EditUrl = string.Format("{0}employeeID={1}", ErrorType.EmployeeContractError.EditPageUrl, SecurityUtil.DECEncrypt(employee.Account.Id.ToString())); _SystemErrorList.Add(error); } }
protected override void Validation() { if (_LeaveRequestTypeDal.GetLeaveRequestTypeByName(_LeaveRequestType.Name) != null) { HrmisUtility.ThrowException(HrmisUtility._LeaveRequestType_Name_Repeat); } }
protected override void ExcuteSelf() { try { _OverWork.DiyProcess = _OverWorkDiyProcessUtility.GetOverWorkDiyProcessByAccountID(_OverWork.Account.Id); using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required)) { int _CurrentId = _OverWorkDal.InsertOverWork(_OverWork); _OverWork.PKID = _CurrentId; if (_OverWork.Item != null) { foreach (OverWorkItem item in _OverWork.Item) { item.AdjustHour = new UpdateAdjustRestByOverWork(item, _OverWork.Account.Id).GetItemAdjustHour(); int itemid = _OverWorkDal.InsertOverWorkItem(_CurrentId, item); if (item.Status == RequestStatus.Submit) { OverWorkFlow flow = new OverWorkFlow(0, _OverWork.Account, _OverWork.SubmitDate, _OverWork.Reason, item.Status, 1); _OverWorkDal.InsertOverWorkFlow(itemid, flow); } } } ts.Complete(); } } catch { HrmisUtility.ThrowException(HrmisUtility._DbError); } new OverWorkMailAndPhoneDelegate().SubmitOperation(_OverWork.PKID, _CCList); }
protected override void Validation() { if (_EmployeeAdjustRuleDal.CountAdjustRuleUsedByAdjustRuleID(_AdjustRuleID) > 0) { HrmisUtility.ThrowException(HrmisUtility._AdjustRule_Used); } }
/// <summary> /// /// </summary> protected override void Validation() { _LeaveRequest = _DalLeaveRequest.GetLeaveRequestByPKID(_LeaveRequestID); //判断请假信息是否为空 if (_LeaveRequest == null) { HrmisUtility.ThrowException(HrmisUtility._LeaveRequest_Not_Exist); } //判断该账号是否有请假流程 _LeaveRequest.DiyProcess = _DalEmployeeDiyProcess.GetDiyProcessByProcessTypeAndAccountID(ProcessType.LeaveRequest, _LeaveRequest.Account.Id); if (_LeaveRequest.DiyProcess == null) { HrmisUtility.ThrowException(HrmisUtility._No_LeaveRequest_DiyProcess); } _LeaveRequestItem = _DalLeaveRequest.GetLeaveRequestItemByPKID(_LeaveRequestItemID); if (_LeaveRequestItem == null) { HrmisUtility.ThrowException(HrmisUtility._LeaveRequest_Not_Exist); } //如果请假信息状态不是取消或提交状态,不能取消 if (!RequestStatus.CanCancelStatus(_LeaveRequestItem.Status)) { HrmisUtility.ThrowException(HrmisUtility._LeaveRequest_Partial_CanNot_BeCancled); } }
protected override void Validation() { if (_IEmployeeDiyProcessDal.CountAccountByDiyProcessID(_DiyProcessID) > 0) { HrmisUtility.ThrowException(HrmisUtility._DiyProcess_Used); } }
protected override void Validation() { if (_AdjustRuleDal.CountAdjustRuleByNameDiffPKID(_AdjustRule.AdjustRuleName, 0) > 0) { HrmisUtility.ThrowException(HrmisUtility._AdjustRule_Name_Repeat); } }
private void Validation() { if (_VacationList == null || _VacationList.Count <= 0) { HrmisUtility.ThrowException("没有年假"); } }
/// <summary> /// </summary> protected override void ExcuteSelf() { try { List <Account> nextOperators = new List <Account>(); foreach (OutApplicationItem item in _OutApplication.Item) { Account nextOperator; bool ans = ApproveOutApplicationItem.ApproveOneItem(item, _IsAgree, _Account, _OutApplication, _Remark, _DalOutApplication, _OutDiyProcess, item.Adjust, false, item.AdjustHour, out nextOperator); if (ans) { new OutMailAndPhoneDelegate().ConfirmOperation(_OutApplication.PKID, item.ItemID, nextOperator, _Account); if (!RequestUtility.ContinsAccount(nextOperators, nextOperator)) { nextOperators.Add(nextOperator); } } } foreach (Account account in nextOperators) { new OutMailAndPhoneDelegate().ConfirmOperationMail(_OutApplication.PKID, account, _Account); } } catch { HrmisUtility.ThrowException(HrmisUtility._DbError); } }
/// <summary> /// 根据员工ID和时间获取员工工资历史 /// </summary> /// <param name="employeeID"></param> /// <param name="dt"></param> /// <returns></returns> public EmployeeSalaryHistory GetEmployeeSalaryHistoryByEmployeeIdAndDateTime(int employeeID, DateTime dt) { //DateTime temp = Convert.ToDateTime(dt.Year + "-" + dt.Month); DateTime temp = new HrmisUtility().StartMonthByYearMonth(dt); return(_DalEmployeeSalary.GetEmployeeSalaryHistoryByEmployeeIdAndDateTime(employeeID, temp)); }
/// <summary> /// /// </summary> protected override void Validation() { _PositionApplication = _PositionApplicationDal.GetPositionApplicationByPKID(_PositionApplicationID); //判断信息是否为空 if (_PositionApplication == null) { HrmisUtility.ThrowException(HrmisUtility._PositionApplication_Not_Exit); } else { //判断该账号是否有流程 _PositionApplication.DiyProcess = _DalEmployeeDiyProcess.GetDiyProcessByProcessTypeAndAccountID(ProcessType.PositionApp, _PositionApplication.Account.Id); if (_PositionApplication.DiyProcess == null) { HrmisUtility.ThrowException(HrmisUtility._No_PositionApplication_DiyProcess); } //如果信息状态不是取消或提交状态,不能取消 if (!RequestStatus.CanCancelStatus(_PositionApplication.Status)) { HrmisUtility.ThrowException(HrmisUtility._PositionApplication_CanNot_BeCancled); } } }
protected override void Validation() { if (_OldOutApplication == null) { HrmisUtility.ThrowException(HrmisUtility._OutApplication_Not_Exit); } if (_OutApplication.OutType.ID == OutType.OutCity.ID) { if (new GetEmployeeAdjustRule().GetAdjustRuleByAccountID(_OutApplication.Account.Id) == null) { HrmisUtility.ThrowException(HrmisUtility._Employee_NotHave_AdjustRule); } } _OutApplication.DiyProcess = _OutDiyProcessUtility.GetOutDiyProcessByAccountID(_OutApplication.Account.Id); if (_OutApplication.DiyProcess == null) { HrmisUtility.ThrowException(HrmisUtility._No_OutApplication_DiyProcess); } foreach (OutApplicationItem item in _OutApplication.Item) { if (item.CostTime == 0) { HrmisUtility.ThrowException(HrmisUtility._OutApplicationItem_CanNot_Zero); } } new ValidateRequestItemRepeat(_OutApplication, false).Excute(); }
/// <summary> /// 统计某个时间段内的某个部门以及其所有子部门的员工的报销统计情况 /// </summary> /// <param name="startDt">统计的开始时间</param> /// <param name="endDt">统计的结束时间</param> /// <param name="departmentID">统计的部门编号</param> /// <returns></returns> /// <param name="companyID"></param> /// <param name="employeeName"></param> /// <param name="loginUser"></param> public List <EmployeeReimburseStatistics> EmployeeStatistics(DateTime startDt, DateTime endDt, int departmentID, int companyID, string employeeName, Account loginUser) { List <EmployeeReimburseStatistics> iRet = new List <EmployeeReimburseStatistics>(); List <Employee> EmployeeList = new GetEmployee().GetEmployeeByConditionForReimburseStatistics (employeeName, companyID, -1, departmentID, true); if (departmentID == -1) //如果查全部员工需去掉没有查询权限的员工 { EmployeeList = HrmisUtility.RemoteUnAuthEmployee(EmployeeList, AuthType.HRMIS, loginUser, HrmisPowers.A903); } //构建返回的List foreach (Employee employee in EmployeeList) { EmployeeReimburseStatistics employeeReimburseStatistics = new EmployeeReimburseStatistics(); employeeReimburseStatistics.Employee = employee; CalculateEmployeeReimburse(employeeReimburseStatistics, employee.Account.Id, startDt, endDt); iRet.Add(employeeReimburseStatistics); } iRet = AddTotleItem(iRet); CaculateSumEmployeeReimburseStatistics(iRet); return(iRet); }
protected override void Validation() { if (_IParameter.CountNationalityByName(_Nationality.Name) > 0) { HrmisUtility.ThrowException(HrmisUtility._Nationality_Name_Repeat); } }
protected override void Validation() { if (_IDiyProcessDal.CountDiyProcessByNameDiffPKID(_DiyProcess.ID, _DiyProcess.Name) > 0) { HrmisUtility.ThrowException(HrmisUtility._DiyProcess_Name_Repeat); } }
private void Import(DataTable dt) { List <EmployeeWelfare> employeeWelfarelist = new List <EmployeeWelfare>(); List <Employee> employeeList = new GetEmployee().GetEmployeeBasicInfoByBasicCondition("", EmployeeTypeEnum.All, -1, -1, true, -1); employeeList = HrmisUtility.RemoteUnAuthEmployee(employeeList, AuthType.HRMIS, _Operator, HrmisPowers.A605); if (employeeList != null) { foreach (Employee employee in employeeList) { EmployeeWelfare welfare = _DalEmployeeWelfare.GetEmployeeWelfareByAccountID(employee.Account.Id); if (welfare == null) { welfare = EmployeeWelfare.EmptyWelfare(); } welfare.Owner = employee.Account; employeeWelfarelist.Add(welfare); } } ValueItemsAndSave(employeeWelfarelist, dt); }
private void GetAttendanceInfo(Employee employee, MailBody mailBody) { try { string resultmonth = string.Empty; DateTime startdate = new HrmisUtility().StartMonthByYearMonth(_CurrDate); DateTime enddate = new HrmisUtility().EndMonthByYearMonth(_CurrDate); Employee emp = new GetEmployeeAttendanceStatistics().GetAllEmployeeAttendanceByCondition(employee.Account.Id, startdate, enddate); string color; for (int i = 0; startdate.Date.AddDays(i) <= enddate.Date; i++) { string retstring = emp.EmployeeAttendance.SetDefaultWeek(emp, "", startdate.Date.AddDays(i), "#000000", out color); if (retstring.Contains("数据有误")) { resultmonth += "<br />" + startdate.Date.AddDays(i) + "考勤异常:" + retstring; } } mailBody.Body += resultmonth; } catch { } }
protected override void Validation() { if (_AdjustRule == null) { HrmisUtility.ThrowException(HrmisUtility._Employee_NotHave_AdjustRule); } }
///<summary> ///</summary> ///<param name="TraineeApplicationID"></param> ///<returns></returns> public TraineeApplication GetTraineeApplicationByTraineeApplicationID(int TraineeApplicationID) { TraineeApplication app = new TraineeApplication(); SqlCommand cmd = new SqlCommand(); cmd.Parameters.Add(_PKID, SqlDbType.Int).Value = TraineeApplicationID; using (SqlDataReader sdr = SqlHelper.ExecuteReader("GetTrainApplicationByPKID", cmd)) { while (sdr.Read()) { app.PKID = TraineeApplicationID; app.CourseName = (sdr[_DBCourseName]).ToString(); app.Applicant = new Account(); app.Applicant.Id = Convert.ToInt32(sdr[_DBApplicationId]); app.TrainType = TrainScopeType.GetById(Convert.ToInt32(sdr[_DBTrainType])); app.Trainer = (sdr[_DBTrainer]).ToString(); app.Skills = (sdr[_DBSkills]).ToString(); app.StratTime = Convert.ToDateTime(sdr[_DBStratTime]); app.EndTime = Convert.ToDateTime(sdr[_DBEndTime]); app.TrainPlace = (sdr[_DBTrianPlace]).ToString(); app.TrainOrgnatiaon = (sdr[_DBTrainOrgnatiaon]).ToString(); app.TrainHour = Convert.ToInt32(sdr[_DBTrainHour]); app.TrainCost = Convert.ToInt32(sdr[_DBTrainCost]); app.EduSpuCost = HrmisUtility.ConvertToDecimal(sdr[_DbEduSpuCost]); app.HasCertifacation = (Convert.ToInt32(sdr[_DBHasCertification])).Equals(1); app.NextStep = new DiyStep(Convert.ToInt32(sdr[_DBNextStepIndex])); app.TraineeApplicationStatuss = TraineeApplicationStatus.FindTraineeApplicationStatus(Convert.ToInt32(sdr[_DBApplicationStatus])); app.TraineeApplicationDiyProcess = DiyProcessDal.ConvertToObject(sdr[_DbDiyProcess].ToString()); app.StudentList = GetAppTrainee(TraineeApplicationID); app.TraineeApplicationFlowList = GetApplicationFlows(TraineeApplicationID); } return(app); } }
protected override void ExcuteSelf() { try { bool sendmail = false; foreach (OutApplicationItem item in _OutApplication.Item) { bool valide = CancelOutApplicationItem.CancelOneItem(item, _OutApplication.Account, _Remark, _DalOutApplication, _OutDiyProcessUtility, _OutApplication); if (valide) { new OutMailAndPhoneDelegate().CancelOperation(_OutApplication.PKID, item.ItemID); sendmail = true; } } if (sendmail) { new OutMailAndPhoneDelegate().CancelOperationMail(_OutApplication.PKID); } } catch { HrmisUtility.ThrowException(HrmisUtility._DbError); } }
protected override void Validation() { _OutApplication = _DalOutApplication.GetOutApplicationByOutApplicationID(_OutApplicationID); if (_OutApplication == null) { HrmisUtility.ThrowException(HrmisUtility._OutApplication_Not_Exit); } }
protected override void Validation() { _OverWorkItem = _OverWorkDal.GetOverWorkItemByItemID(_ItemID); if (_OverWorkItem == null) { HrmisUtility.ThrowException(HrmisUtility._OverWorkItem_Not_Exit); } }
protected override void Validation() { _OverWork = new GetOverWork().GetOverWorkByOverWorkID(_OverWorkID); if (_OverWork == null) { HrmisUtility.ThrowException(HrmisUtility._OverWork_Not_Exit); } }
/// <summary> /// /// </summary> protected override void Validation() { _PositionApplication = _PositionApplicationDal.GetPositionApplicationByPKID(_PositionApplicationID); if (_PositionApplication == null) { HrmisUtility.ThrowException(HrmisUtility._PositionApplication_Not_Exit); } }
/// <summary> /// 查询 /// </summary> public void ExecutEvent(string letter) { if (!ValidateFrom() || !ValidateTo()) { } else { try { _View.ErrorMessage = string.Empty; EmployeeTypeEnum employeetype = EmployeeTypeUtility.GetEmployeeTypeByID(Convert.ToInt32(_View.EmployeeType)); //_EmployeeList = // _IEmployeeFacade.GetEmployeeByBasicConditionAndFirstLetter(_View.EmployeeName, employeetype, // _View.PositionId, _View.DepartmentId, // _View.RecursionDepartment, // letter); //20090807 修改查询条件 by liudan _EmployeeList = _IEmployeeFacade.GetEmployeeByBasicConditionWithFirstLetterAndCompanyAge(_View.EmployeeName, employeetype, _View.PositionId, _View.DepartmentId, _View.RecursionDepartment, letter, AgeFrom, AgeTo, Convert.ToInt32(_View.EmployeeStatusId)); _EmployeeList = HrmisUtility.RemoteUnAuthEmployee(_EmployeeList, AuthType.HRMIS, _Operator, HrmisPowers.A401); List <Employee> emplyees = new List <Employee>(); foreach (Employee emplyee in _EmployeeList) { //根据所属公司id,得到所属公司名称 Employee temp = emplyee; if (temp.EmployeeDetails == null || temp.EmployeeDetails.Work == null || temp.EmployeeDetails.Work.Company == null) { } else { //todo noted by wsl transfer waiting for modify temp.EmployeeDetails.Work.Company = _IDepartmentBll.GetDepartmentById( temp.EmployeeDetails.Work.Company.Id, new Account()); } temp.EmployeeDetails = temp.EmployeeDetails ?? new EmployeeDetails(); temp.EmployeeDetails.Work = temp.EmployeeDetails.Work ?? new Work(); temp.EmployeeDetails.Work.Company = temp.EmployeeDetails.Work.Company ?? new Department(); emplyees.Add(temp); } _CardView.Employees = emplyees; _View.ErrorMessage = "<span class='font14b'>共查到 </span>" + "<span class='fontred'>" + _EmployeeList.Count + "</span>" + "<span class='font14b'> 条信息</span>"; } catch (Exception ex) { _View.ErrorMessage = "<span class='fontred'>" + ex.Message + "</span>"; } } }
/// <summary> /// /// </summary> protected override void Validation() { _LeaveRequest = _DalLeaveRequest.GetLeaveRequestByPKID(_LeaveRequestID); //判断请假信息是否为空 if (_LeaveRequest == null) { HrmisUtility.ThrowException(HrmisUtility._LeaveRequest_Not_Exist); } }
/// <summary> /// /// </summary> private void SendCancelToMail() { Account mailToAccount = new MailAndPhoneUtility().GetMailToAccount(_PositionApplication, _NextStep); MailBody mailBody = new MailBody(); BuildSubmitMailBody(mailBody, mailToAccount); mailBody.MailTo = HrmisUtility.GetMail(mailToAccount); _MailGateWay.Send(mailBody); }
protected override void ExcuteSelf() { DateTime endMonthDate = new HrmisUtility().EndMonthByYearMonth(_CurrDate); if (DateTime.Compare(_CurrDate.Date, endMonthDate.Date) == 0) { string employeeNameFailEmail = ""; List <Employee> employees = _GetEmployee.GetAllEmployeeBasicInfo(); foreach (Employee employee in employees) { if (employee.EmployeeType == EmployeeTypeEnum.BorrowedEmployee) { continue; } if (employee.EmployeeType == EmployeeTypeEnum.DimissionEmployee) { employee.EmployeeDetails = _GetEmployee.GetEmployeeByAccountID(employee.Account.Id).EmployeeDetails; if ( DateTime.Compare(employee.EmployeeDetails.Work.DimissionInfo.DimissionDate, _CurrDate.AddDays(1 - _CurrDate.Date.Day)) < 0) { continue; } } //没有排版表的人不需要提醒 List <PlanDutyDetail> planDutyDetailList = _IPlanDutyDal.GetPlanDutyDetailByAccount(employee.Account.Id, _CurrDate.AddDays(1).AddMonths(-1), _CurrDate); if (planDutyDetailList.Count == 0) { continue; } try { SendEmailToEmployee(employee); } catch { if (string.IsNullOrEmpty(employeeNameFailEmail)) { employeeNameFailEmail = employee.Account.Name; } else { employeeNameFailEmail += "," + employee.Account.Name; } } employee.EmployeeDetails = null; } if (!string.IsNullOrEmpty(employeeNameFailEmail)) { throw new Exception("发送邮件失败。以下" + employeeNameFailEmail.Split(',').Length + "位员工没有获得系统提醒:" + employeeNameFailEmail); } } }
protected override void ExcuteSelf() { try { int cancelCount = 0; DiyStep currentStep = _LeaveRequest.DiyProcess.FindCancelStep(); DiyStep nextStep = _LeaveRequest.DiyProcess.FindCancelNextStep(); List <DiyStep> diysteplist = new List <DiyStep>(); List <List <Account> > mailAccountlist = new List <List <Account> >(); //如果请假信息状态不是取消或提交状态,不能取消 foreach (LeaveRequestItem item in _LeaveRequest.LeaveRequestItems) { using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required)) { if (RequestStatus.CanCancelStatus(item.Status)) { _DalLeaveRequest.UpdateLeaveRequestItemStatusByLeaveRequestItemID(item.LeaveRequestItemID, _RequestStatus, nextStep.DiyStepID); _DalLeaveRequestFlow.InsertLeaveRequestFlow( PrepareLeaveRequestFlow(item.LeaveRequestItemID)); ts.Complete(); cancelCount++; } } new LeaveRequestMailAndPhoneDelegate().CancelOperation(_LeaveRequest.PKID, item, currentStep.MailAccount, nextStep); if (!DiyStep.Contains(diysteplist, nextStep)) { diysteplist.Add(nextStep); mailAccountlist.Add(currentStep.MailAccount); } } for (int i = 0; i < diysteplist.Count; i++) { new LeaveRequestMailAndPhoneDelegate().CancelMail(_LeaveRequest.PKID, mailAccountlist[i], diysteplist[i]); } if (cancelCount == _LeaveRequest.LeaveRequestItems.Count) { ResultMessage = string.Empty; } else if (cancelCount == 0) { ResultMessage = HrmisUtility._LeaveRequest_CanNot_BeCancled; } else if (cancelCount > 0) { ResultMessage = HrmisUtility._LeaveRequest_Partial_CanNot_BeCancled; } } catch { HrmisUtility.ThrowException(HrmisUtility._DbError); } }