예제 #1
0
        public ActionResult EditHolidayAttendance(HolidaysAttendanceViewModel HolidayAttendanceVM)
        {
            HolidaysAttendanceBLL HolidayAttendance = new HolidaysAttendanceBLL();

            HolidayAttendance.HolidayAttendanceID = HolidayAttendanceVM.HolidayAttendanceID;
            HolidayAttendance.HolidaySetting      = new HolidaysSettingsBLL()
            {
                HolidaySettingID = HolidayAttendanceVM.HolidaySetting.HolidaySettingID
            };
            HolidayAttendance.Organization = new OrganizationsStructuresBLL()
            {
                OrganizationID = HolidayAttendanceVM.OrganizationID
            };
            HolidayAttendance.LoginIdentity = UserIdentity;
            Result result = HolidayAttendance.Update();

            HolidaysAttendanceBLL HolidayAttendanceEntity = (HolidaysAttendanceBLL)result.Entity;

            if (result.EnumMember == HolidayAttendanceValidationEnum.Done.ToString())
            {
                Session["HolidayAttendanceID"] = ((HolidaysAttendanceBLL)result.Entity).HolidayAttendanceID;
                ClearHolidayAttendanceDetailsFromSession();
            }
            else if (result.EnumMember == HolidayAttendanceValidationEnum.RejectedBecauseOfEmployeeStatus.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationEmployeeRequiredText);
            }
            if (result.EnumMember == HolidayAttendanceValidationEnum.RejectedBecauseEmployeeAlreadyExistOnAnotherRecord.ToString())
            {
                throw new CustomException(Resources.Globalization.ValidationEmployeeAlreadyExistText +
                                          "NewLine" + Resources.Globalization.EmployeeCodeNoText + " : " + ((EmployeesCareersHistoryBLL)result.Entity).EmployeeCode.EmployeeCodeNo +
                                          "NewLine" + Resources.Globalization.EmployeeNameArText + " : " + ((EmployeesCareersHistoryBLL)result.Entity).EmployeeCode.Employee.EmployeeNameAr);
            }

            return(View(this.GetByHolidayAttendanceID(HolidayAttendanceVM.HolidayAttendanceID)));
        }