Example #1
0
        public ActionResult DelegationApproval(DelegationsViewModel DelegationVM, string BtnType)
        {
            Result      result  = null;
            ExpensesBLL expense = new BaseDelegationsBLL();

            expense.ApprovedBy = UserIdentity.EmployeeCodeID;
            if (BtnType == "Approve")
            {
                result = expense.Approve(DelegationVM.DelegationID);
            }
            else
            {
                result = expense.ApproveCancel(DelegationVM.DelegationID);
            }
            if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
            {
                if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfAlreadyApprove.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationDelegationAlreadyApproveText);
                }
                if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfAlreadyApproveCancel.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationDelegationAlreadyApproveCancelText);
                }
            }
            return(View());
        }
Example #2
0
        public HttpResponseMessage RemoveEmployeeFromDelegation(DelegationsViewModel DelegationVM)
        {
            List <DelegationsDetailsBLL> DelegationEmployeesList = GetDelegationDetailsFromSession();

            DelegationEmployeesList.RemoveAt(DelegationEmployeesList.FindIndex(e => e.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo.Equals(DelegationVM.DelegationDetailRequest.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo)));
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Example #3
0
        public HttpResponseMessage CreateDelegationDetailDB(DelegationsViewModel DelegationVM)
        {
            if (string.IsNullOrEmpty(DelegationVM.DelegationDetailRequest.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo))
            {
                throw new CustomException(Resources.Globalization.RequiredEmployeeCodeNoText);
            }

            Result result = new DelegationsDetailsBLL().Add(new DelegationsDetailsBLL()
            {
                LoginIdentity         = UserIdentity,
                EmployeeCareerHistory = DelegationVM.DelegationDetailRequest.EmployeeCareerHistory,
                Delegation            = new BaseDelegationsBLL()
                {
                    DelegationID        = DelegationVM.DelegationID,
                    DelegationStartDate = DelegationVM.DelegationStartDate,
                    DelegationEndDate   = DelegationVM.DelegationEndDate,
                    DelegationKind      = new DelegationsKindsBLL()
                    {
                        DelegationKindID = DelegationVM.DelegationKind.DelegationKindID
                    }
                },
                IsPassengerOrderCompensation = DelegationVM.DelegationDetailRequest.IsPassengerOrderCompensation
            });

            //result = new EmployeeDelegationBLL(StartDate, EndDate, DelegationVM.DelegationKind.DelegationKindID, new EmployeesCodesBLL() { EmployeeCodeID = DelegationVM.DelegationDetailRequest.EmployeeCode.EmployeeCodeID }).IsValid();

            //if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
            //{
            if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseAlreadyExist.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationEmployeeAlreadyExistText);
            }
            else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
            }
            Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithOverTime.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithOverTimeText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithDelegation.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithDelegationText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithInternshipScholarship.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithInternshipScholarshipText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithVacation.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithVacationText);
            //}
            // }
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Example #4
0
        public JsonResult GetDelegationByDelegationID(int DelegationID)
        {
            DelegationsViewModel vm = this.GetByDelegationID(DelegationID);

            if (vm == null)
            {
                vm = new DelegationsViewModel();
            }
            return(Json(vm, JsonRequestBehavior.AllowGet));
        }
Example #5
0
        public ActionResult Approve(DelegationsViewModel DelegationVM)
        {
            Result result = new BaseDelegationsBLL()
            {
                ApprovedBy = UserIdentity.EmployeeCodeID
            }.Approve(DelegationVM.DelegationID);

            if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
            {
                if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfAlreadyApprove.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationDelegationAlreadyApproveText);
                }
            }
            return(RedirectToAction("Index"));
        }
Example #6
0
        private DelegationsViewModel GetByDelegationID(int id)
        {
            BaseDelegationsBLL   DelegationBLL = new BaseDelegationsBLL().GetByDelegationID(id);
            DelegationsViewModel DelegationVM  = new DelegationsViewModel();

            if (DelegationBLL != null)
            {
                if (DelegationBLL.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.Internal)
                {
                    DelegationVM.KSARegion = ((InternalDelegationBLL)DelegationBLL).KSACity.KSARegion;
                    DelegationVM.KSACity   = ((InternalDelegationBLL)DelegationBLL).KSACity;
                }
                else if (DelegationBLL.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.External)
                {
                    DelegationVM.KSACity = new KSACitiesBLL();
                    DelegationVM.Country = ((ExternalDelegationBLL)DelegationBLL).Country;
                }

                DelegationVM.DelegationKind = new DelegationsKindsBLL()
                {
                    DelegationKindID = DelegationBLL.DelegationKind.DelegationKindID, DelegationKindName = DelegationBLL.DelegationKind.DelegationKindName
                };
                DelegationVM.DelegationType = new DelegationsTypesBLL()
                {
                    DelegationTypeID = DelegationBLL.DelegationType.DelegationTypeID, DelegationTypeName = DelegationBLL.DelegationType.DelegationTypeName
                };
                DelegationVM.DelegationID        = DelegationBLL.DelegationID;
                DelegationVM.DelegationStartDate = DelegationBLL.DelegationStartDate.Date;
                DelegationVM.DelegationEndDate   = DelegationBLL.DelegationEndDate;
                DelegationVM.DelegationReason    = DelegationBLL.DelegationReason;
                DelegationVM.Notes                    = DelegationBLL.Notes;
                DelegationVM.DelegationPeriod         = DelegationBLL.DelegationPeriod;
                DelegationVM.DelegationDistancePeriod = DelegationBLL.DelegationDistancePeriod;
                DelegationVM.CreatedDate              = DelegationBLL.CreatedDate;
                DelegationVM.CreatedBy                = DelegationVM.GetCreatedByDisplayed(DelegationBLL.CreatedBy);
                DelegationVM.IsApprove                = DelegationBLL.IsApproved;
            }
            return(DelegationVM);
        }
Example #7
0
        public HttpResponseMessage CreateDelegationDetail(DelegationsViewModel DelegationVM)
        {
            List <DelegationsDetailsBLL> DelegationEmployeesList = GetDelegationDetailsFromSession();

            if (string.IsNullOrEmpty(DelegationVM.DelegationDetailRequest.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo))
            {
                throw new CustomException(Resources.Globalization.RequiredEmployeeCodeNoText);
            }
            else if (DelegationEmployeesList.FindIndex(e => e.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo.Equals(DelegationVM.DelegationDetailRequest.EmployeeCareerHistory.EmployeeCode.EmployeeCodeNo)) > -1)
            {
                throw new CustomException(Resources.Globalization.ValidationEmployeeAlreadyExistText);
            }

            DateTime StartDate, EndDate;

            StartDate = DelegationVM.DelegationStartDate;
            EndDate   = DelegationVM.DelegationEndDate;

            Result result = new EmployeeDelegationBLL(StartDate, EndDate, DelegationVM.DelegationKind.DelegationKindID, new EmployeesCodesBLL()
            {
                EmployeeCodeID = DelegationVM.DelegationDetailRequest.EmployeeCareerHistory.EmployeeCode.EmployeeCodeID
            }).IsValid();

            //if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
            //{
            if (result.EnumMember == DelegationsValidationEnum.Done.ToString())
            {
                DelegationEmployeesList.Add(DelegationVM.DelegationDetailRequest);
                Session["DelegationsEmployees"] = DelegationEmployeesList;
            }
            else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfDelegationDatesMustBeInSameFinancialYear.ToString())
            {
                FinancialYearsBLL FinancialYearBLL = (FinancialYearsBLL)result.Entity;
                throw new CustomException(Resources.Globalization.ValidationDelegationDatesMustBeInSameFinancialYearText + " NewLine" +
                                          Resources.Globalization.FinancialYearInfoText + FinancialYearBLL.FinancialYear + " NewLine" +
                                          Resources.Globalization.FinancialYearStartDateText + FinancialYearBLL.FinancialYearStartDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat) + " NewLine" +
                                          Resources.Globalization.FinancialYearEndDateText + FinancialYearBLL.FinancialYearEndDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat));
            }
            else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
            }
            Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithOverTime.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithOverTimeText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithDelegation.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithDelegationText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithInternshipScholarship.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithInternshipScholarshipText);
            //}
            //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithVacation.ToString())
            //{
            //    throw new CustomException(Resources.Globalization.ValidationConflictWithVacationText);
            //}
            //}
            return(new HttpResponseMessage(HttpStatusCode.OK));
        }
Example #8
0
        public ActionResult EditDelegation(DelegationsViewModel DelegationVM)
        {
            if (DelegationVM.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.Internal)
            {
                InternalDelegationBLL Delegation = new InternalDelegationBLL();
                Delegation.DelegationID   = DelegationVM.DelegationID;
                Delegation.DelegationKind = new DelegationsKindsBLL()
                {
                    DelegationKindID = DelegationVM.DelegationKind.DelegationKindID
                };
                Delegation.DelegationType = new DelegationsTypesBLL()
                {
                    DelegationTypeID = (int)DelegationsTypesEnum.Internal
                };
                Delegation.DelegationStartDate = DelegationVM.DelegationStartDate;
                Delegation.DelegationEndDate   = DelegationVM.DelegationEndDate;
                Delegation.DelegationReason    = DelegationVM.DelegationReason;
                Delegation.Notes = DelegationVM.Notes;
                Delegation.DelegationDistancePeriod = DelegationVM.DelegationDistancePeriod;
                Delegation.LoginIdentity            = UserIdentity;
                Delegation.KSACity = new KSACitiesBLL()
                {
                    KSACityID = DelegationVM.KSACity.KSACityID
                };
                Result result = Delegation.Update();

                BaseDelegationsBLL DelegationEntity = (BaseDelegationsBLL)result.Entity;
                if (result.EnumMember == DelegationsValidationEnum.Done.ToString())
                {
                    Session["DelegationID"] = ((InternalDelegationBLL)result.Entity).DelegationID;
                    ClearDelegationDetailsFromSession();
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseEmployeeRequired.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationEmployeeRequiredText);
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfAlreadyApprove.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationDelegationAlreadyApproveText);
                }

                Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
            }
            else if (DelegationVM.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.External)
            {
                ExternalDelegationBLL Delegation = new ExternalDelegationBLL();
                Delegation.DelegationID   = DelegationVM.DelegationID;
                Delegation.DelegationKind = new DelegationsKindsBLL()
                {
                    DelegationKindID = DelegationVM.DelegationKind.DelegationKindID
                };
                Delegation.DelegationType = new DelegationsTypesBLL()
                {
                    DelegationTypeID = (int)DelegationsTypesEnum.External
                };
                Delegation.DelegationStartDate = DelegationVM.DelegationStartDate;
                Delegation.DelegationEndDate   = DelegationVM.DelegationEndDate;
                Delegation.DelegationReason    = DelegationVM.DelegationReason;
                Delegation.Notes = DelegationVM.Notes;
                Delegation.DelegationDistancePeriod = DelegationVM.DelegationDistancePeriod;
                Delegation.LoginIdentity            = UserIdentity;
                Delegation.Country = new CountriesBLL()
                {
                    CountryID = DelegationVM.Country.CountryID
                };
                Result result = Delegation.Update();
                //if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
                //{
                BaseDelegationsBLL DelegationEntity = (BaseDelegationsBLL)result.Entity;
                if (result.EnumMember == DelegationsValidationEnum.Done.ToString())
                {
                    Session["DelegationID"] = ((ExternalDelegationBLL)result.Entity).DelegationID;
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseEmployeeRequired.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationEmployeeRequiredText);
                }
                //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithOverTime.ToString())
                //{
                //    throw new CustomException(Resources.Globalization.ValidationConflictWithOverTimeText);
                //}
                //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithDelegation.ToString())
                //{
                //    throw new CustomException(Resources.Globalization.ValidationConflictWithDelegationText);
                //}
                //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithInternshipScholarship.ToString())
                //{
                //    throw new CustomException(Resources.Globalization.ValidationConflictWithInternshipScholarshipText);
                //}
                //else if (result.EnumMember == NoConflictWithOtherProcessValidationEnum.RejectedBecauseOfConflictWithVacation.ToString())
                //{
                //    throw new CustomException(Resources.Globalization.ValidationConflictWithVacationText);
                //}
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfAlreadyApprove.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationDelegationAlreadyApproveText);
                }

                Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
                //}
            }

            return(View(DelegationVM));
        }
Example #9
0
        public ActionResult Create(DelegationsViewModel DelegationVM)
        {
            if (DelegationVM.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.Internal)
            {
                InternalDelegationBLL Delegation = new InternalDelegationBLL();
                Delegation.DelegationKind = new DelegationsKindsBLL()
                {
                    DelegationKindID = DelegationVM.DelegationKind.DelegationKindID
                };
                Delegation.DelegationType = new DelegationsTypesBLL()
                {
                    DelegationTypeID = (int)DelegationsTypesEnum.Internal
                };
                Delegation.DelegationStartDate = DelegationVM.DelegationStartDate;
                Delegation.DelegationEndDate   = DelegationVM.DelegationEndDate;
                Delegation.DelegationReason    = DelegationVM.DelegationReason;
                Delegation.Notes   = DelegationVM.Notes;
                Delegation.KSACity = new KSACitiesBLL()
                {
                    KSACityID = DelegationVM.KSACity.KSACityID
                };
                Delegation.DelegationDistancePeriod = DelegationVM.DelegationDistancePeriod;
                Delegation.LoginIdentity            = UserIdentity;
                Delegation.DelegationsDetails       = GetDelegationDetailsFromSession();
                Result result = Delegation.Add();

                BaseDelegationsBLL DelegationEntity = (BaseDelegationsBLL)result.Entity;
                if (result.EnumMember == DelegationsValidationEnum.Done.ToString())
                {
                    DelegationVM.DelegationID = ((InternalDelegationBLL)result.Entity).DelegationID;
                    ClearDelegationDetailsFromSession();
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfDelegationDatesMustBeInSameFinancialYear.ToString())
                {
                    FinancialYearsBLL FinancialYearBLL = (FinancialYearsBLL)result.Entity;
                    throw new CustomException(Resources.Globalization.ValidationDelegationDatesMustBeInSameFinancialYearText + " NewLine" +
                                              Resources.Globalization.FinancialYearInfoText + FinancialYearBLL.FinancialYear + " NewLine" +
                                              Resources.Globalization.FinancialYearStartDateText + FinancialYearBLL.FinancialYearStartDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat) + " NewLine" +
                                              Resources.Globalization.FinancialYearEndDateText + FinancialYearBLL.FinancialYearEndDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat));
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseEmployeeRequired.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationEmployeeRequiredText);
                }

                Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
            }
            else if (DelegationVM.DelegationType.DelegationTypeID == (Int32)DelegationsTypesEnum.External)
            {
                ExternalDelegationBLL Delegation = new ExternalDelegationBLL();
                Delegation.DelegationKind = new DelegationsKindsBLL()
                {
                    DelegationKindID = DelegationVM.DelegationKind.DelegationKindID
                };
                Delegation.DelegationType = new DelegationsTypesBLL()
                {
                    DelegationTypeID = (int)DelegationsTypesEnum.External
                };
                Delegation.DelegationStartDate = DelegationVM.DelegationStartDate;
                Delegation.DelegationEndDate   = DelegationVM.DelegationEndDate;
                Delegation.DelegationReason    = DelegationVM.DelegationReason;
                Delegation.Notes = DelegationVM.Notes;
                Delegation.DelegationDistancePeriod = DelegationVM.DelegationDistancePeriod;
                Delegation.LoginIdentity            = UserIdentity;
                Delegation.Country = new CountriesBLL()
                {
                    CountryID = DelegationVM.Country.CountryID
                };
                Delegation.DelegationsDetails = GetDelegationDetailsFromSession();
                Result result = Delegation.Add();
                //if ((System.Type)result.EnumType == typeof(DelegationsValidationEnum))
                //{
                BaseDelegationsBLL DelegationEntity = (BaseDelegationsBLL)result.Entity;
                if (result.EnumMember == DelegationsValidationEnum.Done.ToString())
                {
                    DelegationVM.DelegationID = ((ExternalDelegationBLL)result.Entity).DelegationID;
                    ClearDelegationDetailsFromSession();
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfDelegationDatesMustBeInSameFinancialYear.ToString())
                {
                    FinancialYearsBLL FinancialYearBLL = (FinancialYearsBLL)result.Entity;
                    throw new CustomException(Resources.Globalization.ValidationDelegationDatesMustBeInSameFinancialYearText + " NewLine" +
                                              Resources.Globalization.FinancialYearInfoText + FinancialYearBLL.FinancialYear + " NewLine" +
                                              Resources.Globalization.FinancialYearStartDateText + FinancialYearBLL.FinancialYearStartDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat) + " NewLine" +
                                              Resources.Globalization.FinancialYearEndDateText + FinancialYearBLL.FinancialYearEndDate.Date.ToString(Classes.Helpers.CommonHelper.DateFormat));
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseOfMaxLimit.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationAlreadyReachTheDelegationLimitText);
                }
                else if (result.EnumMember == DelegationsValidationEnum.RejectedBecauseEmployeeRequired.ToString())
                {
                    throw new CustomException(Resources.Globalization.ValidationEmployeeRequiredText);
                }

                Classes.Helpers.CommonHelper.ConflictValidationMessage(result);
            }

            return(Json(new { DelegationID = DelegationVM.DelegationID }, JsonRequestBehavior.AllowGet));
        }