//Create public PublicHolidayPolicy CreatePublicHolidayPolicy(int organisationId, PublicHolidayPolicy publicHolidayPolicy) { using (var context = _databaseFactory.Create(organisationId)) { publicHolidayPolicy = context.PublicHolidayPolicies.Add(publicHolidayPolicy); context.SaveChanges(); return(publicHolidayPolicy); } }
//Clone public PublicHolidayPolicy ClonePublicHolidayPolicy(int organisationId, int publicHolidayPolicyId) { var publicHolidayPolicy = RetrievePublicHolidayPolicy(organisationId, publicHolidayPolicyId); var clonedPublicHolidayPolicy = new PublicHolidayPolicy { Name = string.Format("{0} {1}", publicHolidayPolicy.Name, DateTime.UtcNow.ToString("HH:mm:ss")), }; var result = CreatePublicHolidayPolicy(organisationId, clonedPublicHolidayPolicy); if (result.Succeeded) { var publicHolidays = _hrDataService.RetrievePublicHolidays(organisationId, publicHolidayPolicyId, p => true).Items.ToList(); publicHolidays.ForEach(p => p.PublicHolidayPolicyId = result.Entity.PublicHolidayPolicyId); _hrDataService.CreatePublicHolidays(organisationId, publicHolidays); } return(result.Entity); }
public ActionResult Edit(PublicHolidayPolicy publicHolidayPolicy) { if (ModelState.IsValid) { var result = HRBusinessService.UpdatePublicHolidayPolicy(UserOrganisationId, publicHolidayPolicy); if (result.Succeeded) { return(RedirectToAction("Index")); } foreach (var error in result.Errors) { ModelState.AddModelError("", error); } } var viewModel = new PublicHolidayPolicyViewModel { PublicHolidayPolicy = publicHolidayPolicy }; return(View(viewModel)); }
public ValidationResult <PublicHolidayPolicy> UpdatePublicHolidayPolicy(int organisationId, PublicHolidayPolicy publicHolidayPolicy) { var validationResult = PublicHolidayPolicyAlreadyExists(organisationId, publicHolidayPolicy.PublicHolidayPolicyId, publicHolidayPolicy.Name); if (!validationResult.Succeeded) { return(validationResult); } try { validationResult.Entity = _hrDataService.UpdateOrganisationEntityEntry(organisationId, publicHolidayPolicy); } catch (Exception ex) { validationResult.Succeeded = false; validationResult.Errors = new List <string> { ex.InnerMessage() }; validationResult.Exception = ex; } return(validationResult); }