Esempio n. 1
0
        private EVacationsRequestsViewModel GetByEServiceRequestID(int id)
        {
            EVacationsRequestsViewModel EVacationRequestVM  = new EVacationsRequestsViewModel();
            EVacationsRequestsBLL       EVacationRequestBLL = new EVacationsRequestsBLL().GetEVacationsRequestsByEVacationRequestID(id);

            if (EVacationRequestBLL != null)
            {
                EVacationRequestVM.EVacationRequestID         = EVacationRequestBLL.EVacationRequestID;
                EVacationRequestVM.EmployeeNameAr             = EVacationRequestBLL.EmployeeCareerHistory.EmployeeCode.Employee.EmployeeNameAr;
                EVacationRequestVM.EmployeeCodeID             = EVacationRequestBLL.EmployeeCareerHistory.EmployeeCode.EmployeeCodeID;
                EVacationRequestVM.EmployeeCodeNo             = EVacationRequestBLL.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo;
                EVacationRequestVM.OrganizationID             = EVacationRequestBLL.ActualEmployeeOrganization.OrganizationID;
                EVacationRequestVM.OrganizationName           = EVacationRequestBLL.ActualEmployeeOrganization.OrganizationName;
                EVacationRequestVM.EVacationRequestNo         = EVacationRequestBLL.EVacationRequestNo;
                EVacationRequestVM.EVacationRequestStatusName = EVacationRequestBLL.EVacationRequestStatus.EVacationRequestStatusName;
                EVacationRequestVM.EVacationRequestStatusEnum = (EVacationRequestStatusEnum)EVacationRequestBLL.EVacationRequestStatus.EVacationRequestStatusID;
                EVacationRequestVM.VacationStartDate          = EVacationRequestBLL.VacationStartDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat);
                EVacationRequestVM.VacationEndDate            = EVacationRequestBLL.VacationEndDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat);
                EVacationRequestVM.VacationPeriod             = EVacationRequestBLL.VacationPeriod;
                EVacationRequestVM.WorkDate                         = EVacationRequestBLL.WorkDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat);
                EVacationRequestVM.VacationType                     = EVacationRequestBLL.VacationType.VacationTypeName;
                EVacationRequestVM.CreatorNotes                     = !string.IsNullOrEmpty(EVacationRequestBLL.CreatorNotes) ? EVacationRequestBLL.CreatorNotes : Resources.Globalization.NoNotesText;
                EVacationRequestVM.CreatedDate                      = EVacationRequestBLL.CreatedDate;
                EVacationRequestVM.AuthorizedPersonCodeNo           = EVacationRequestBLL.ApprovedBy?.EmployeeCodeNo;
                EVacationRequestVM.AuthorizedPersonNameAr           = EVacationRequestBLL.ApprovedBy?.Employee?.EmployeeNameAr;
                EVacationRequestVM.AuthorizedPersonDecision         = EVacationRequestBLL.EVacationRequestStatus?.EVacationRequestStatusName;
                EVacationRequestVM.AuthorizedPersonDecisionDateTime = EVacationRequestBLL.ApprovalDateTime.HasValue ? EVacationRequestBLL.ApprovalDateTime.Value : (DateTime?)null;
                EVacationRequestVM.AuthorizedPersonNotes            = EVacationRequestBLL.ApproverNotes;
                EVacationRequestVM.CancellationReasonByHR           = EVacationRequestBLL.CancellationReasonByHR;
                EVacationRequestVM.LastUpdatedDate                  = EVacationRequestBLL.LastUpdatedDate.HasValue ? EVacationRequestBLL.LastUpdatedDate.Value : (DateTime?)null;
                EVacationRequestVM.LastUpdatedBy                    = EVacationRequestBLL.LastUpdatedBy?.EmployeeCodeNo + " - " + EVacationRequestBLL.LastUpdatedBy?.Employee?.EmployeeNameAr;
            }

            return(EVacationRequestVM);
        }
Esempio n. 2
0
        public ActionResult CancelByEmployee(EVacationsRequestsViewModel EVacationRequestVM)
        {
            Result result = new EVacationsRequestsBLL().CancelEVacationRequest(EVacationRequestVM.EVacationRequestID, EVacationRequestStatusEnum.CancelledByCreator);

            if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfEVacationRequestStatusNotPending.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationEVacationRequestStatusNotPendingText);
            }

            return(RedirectToAction("GetMyEVacationsRequests"));
        }
Esempio n. 3
0
        public JsonResult GetAllEVacationsRequests()
        {
            // List<EVacationsRequestsBLL> EVacationsRequestsBLLList = new EVacationsRequestsBLL().GetAllEVacationsRequests();
            var data = new EVacationsRequestsBLL().GetAllEVacationsRequests().Select(x => new
            {
                EmployeeCodeNo         = x.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo,
                EmployeeNameAr         = x.EmployeeCareerHistory.EmployeeCode.Employee.EmployeeNameAr,
                OrganizationName       = x.ActualEmployeeOrganization != null ? x.ActualEmployeeOrganization.GetOrganizationNameTillLastParentExceptPresident(x.ActualEmployeeOrganization.OrganizationID) : string.Empty,
                EVacationRequestID     = x.EVacationRequestID,
                EVacationRequestNo     = x.EVacationRequestNo,
                VacationType           = x.VacationType.VacationTypeName,
                VacationStartDate      = x.VacationStartDate,
                VacationPeriod         = x.VacationPeriod,
                VacationEndDate        = x.VacationEndDate,
                WorkDate               = x.WorkDate,
                EVacationRequestStatus = x.EVacationRequestStatus.EVacationRequestStatusName,
                CreatedDate            = x.CreatedDate
            });

            return(new Classes.Helpers.CommonHelper().SetJsonResultWithMaxJsonLength(data));
        }
Esempio n. 4
0
        public ActionResult Cancel(EVacationsRequestsViewModel EVacationRequestVM)
        {
            if (string.IsNullOrEmpty(EVacationRequestVM.CancellationReasonByHR?.Trim()))
            {
                throw new CustomException(Resources.Globalization.RequiredEVacationRequestCancellationText);
            }

            Result result = new EVacationsRequestsBLL()
            {
                LoginIdentity = new EmployeesCodesBLL()
                {
                    EmployeeCodeID = int.Parse(Session["EmployeeCodeID"].ToString())
                }
            }.CancelEVacationRequest(EVacationRequestVM.EVacationRequestID, EVacationRequestStatusEnum.CancelledByHR, EVacationRequestVM.CancellationReasonByHR);

            if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfEVacationRequestStatusNotPending.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationEVacationRequestStatusNotPendingText);
            }

            return(RedirectToAction("Index"));
        }
Esempio n. 5
0
        public ActionResult AuthorizedPersonDecision(EVacationsRequestsViewModel EVacationRequestVM)
        {
            Session["UserID"] = 1;
            EVacationsRequestsBLL EVacationRequestBLL = new EVacationsRequestsBLL()
            {
                EVacationRequestID = EVacationRequestVM.EVacationRequestID,
                ApprovedBy         = new EmployeesCodesBLL()
                {
                    EmployeeCodeNo = WindowsUserIdentity
                },
                ApproverNotes = EVacationRequestVM.AuthorizedPersonNotes,
            };

            if (Request.Form["btnApprove"] != null)
            {
                EVacationRequestVM.EVacationRequestStatusEnum = EVacationRequestStatusEnum.Approved;
            }

            if (Request.Form["btnRefuse"] != null)
            {
                EVacationRequestVM.EVacationRequestStatusEnum = EVacationRequestStatusEnum.Refused;
            }

            //EVacationRequestVM.EVacationRequestStatusEnum = (EVacationRequestStatusEnum)EVacationRequestVM.EVacationRequestStatus.EVacationRequestStatusID;

            Result result = EVacationRequestBLL.MakeDecisionOfEVacationRequest(EVacationRequestBLL, EVacationRequestVM.EVacationRequestStatusEnum);

            if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfBeforeHiringDate.ToString())
            {
                throw new CustomException(string.Format(Resources.Globalization.ValidationVacationBeforeHiringText, ((EmployeesCareersHistoryBLL)result.Entity).JoinDate.ToString(Classes.Helpers.CommonHelper.DateFormat)));
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfDuringProbation.ToString())
            {
                throw new CustomException(string.Format(Resources.Globalization.ValidationVacationDuringProbationText, ((EmployeesCareersHistoryBLL)result.Entity).ProbationEndDate.ToString(Classes.Helpers.CommonHelper.DateFormat)));
            }

            else if (result.EnumMember == VacationsValidationEnum.SportsSeasonDoesNotExist.ToString())
            {
                throw new CustomException(Resources.Globalization.SportsSeasonDoesNotExistText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfInvalidDates.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationInvalidDateText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfInvalidSportsDates.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationInvalidSportsDateText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfNoBalance.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheVacationLimitText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfInvalidStartDate.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationInvalidVacationStartDateText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfConsumedMaxLimit.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheNormalVacationLimitText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfNormalVacationBalanceExists.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfNormalVacationBalanceExistsText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfNormalVacationReachedToMaxLimitOfSeparatedDays.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfNormalVacationReachedToMaxLimitOfSeparatedDaysText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfVacationNotAllowedBetween1437and1438.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfVacationNotAllowedBetween1437and1438Text);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfVacationOutOfRange.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfVacationOutOfRangeText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseSickExceptionalVacationDatesOutOfRange.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfSickExceptionalVacationDatesOutOfRangeText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfErrorInTimeAttendanceApp.ToString())
            {
                throw new CustomException(Resources.Globalization.ErrorInTimeAttendanceAppText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfMarriageVacationAcceptedOneTime.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfMarriageVacationAcceptedOneTimeText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfEVacationRequestStatusNotPending.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationBecauseOfEVacationRequestStatusNotPendingText);
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBecauseOfEVacationRequestPendingExist.ToString())
            {
                throw new CustomException(string.Format(Resources.Globalization.ValidationBecauseOfEVacationRequestPendingExistText, ((BaseVacationsBLL)result.Entity).EVacationsRequest.EVacationRequestNo));
            }

            else if (result.EnumMember == VacationsValidationEnum.RejectedBeacuseOfApproverIsNotAuthorizedPerson.ToString())
            {
                throw new CustomException(string.Format(Resources.Globalization.ValidationBecauseOfApproverIsNotAuthorizedPersonText, ((EmployeesCodesBLL)result.Entity).EmployeeCodeNo, ((EmployeesCodesBLL)result.Entity).Employee.EmployeeNameAr));
            }

            Classes.Helpers.CommonHelper.ConflictValidationMessage(result);

            return(RedirectToAction("RequestsUnderAuthorizedPerson"));
        }