/// <summary> /// Add / Update WorkPlaceType /// </summary> public WorkPlaceType AddUpdateWorkPlaceType(WorkPlaceType workPlaceType) { WorkPlaceType dbVersion = workplaceTypeRepository.Find(workPlaceType.WorkPlaceTypeId); if (!workplaceTypeRepository.IsWorkPlaceTypeCodeExists(workPlaceType)) { if (dbVersion != null) { dbVersion.RecLastUpdatedBy = workplaceTypeRepository.LoggedInUserIdentity; dbVersion.RecLastUpdatedDt = DateTime.Now; dbVersion.RowVersion = dbVersion.RowVersion + 1; dbVersion.WorkPlaceTypeCode = workPlaceType.WorkPlaceTypeCode; dbVersion.WorkPlaceTypeName = workPlaceType.WorkPlaceTypeName; dbVersion.WorkPlaceTypeDescription = workPlaceType.WorkPlaceTypeDescription; dbVersion.WorkPlaceNature = workPlaceType.WorkPlaceNature; workplaceTypeRepository.Update(dbVersion); } else { workPlaceType.RecCreatedBy = workPlaceType.RecLastUpdatedBy = workplaceTypeRepository.LoggedInUserIdentity; workPlaceType.RecCreatedDt = workPlaceType.RecLastUpdatedDt = DateTime.Now; workPlaceType.RowVersion = 0; workPlaceType.UserDomainKey = workplaceTypeRepository.UserDomainKey; workplaceTypeRepository.Add(workPlaceType); } workplaceTypeRepository.SaveChanges(); // To Load the proprties return(workplaceTypeRepository.Find(workPlaceType.WorkPlaceTypeId)); } throw new CaresException(Resources.Organization.WorkPlaceType.WorkPlaceTypeCodeAlreadyExistsError); }
/// <summary> /// Mapper from web model to domain /// </summary> public static Cares.Models.DomainModels.WorkPlaceType CreateFrom(this WorkPlaceType source) { return(new Cares.Models.DomainModels.WorkPlaceType { WorkPlaceTypeId = source.WorkPlaceTypeId, WorkPlaceTypeCode = source.WorkPlaceTypeCode, WorkPlaceTypeName = source.WorkPlaceTypeName, WorkPlaceTypeDescription = source.WorkPlaceTypeDescription, WorkPlaceNature = source.WorkPlaceNature }); }
/// <summary> /// Delete Workplace Type /// </summary> public void DeleteWorkPlaceType(long workPlaceTypeId) { WorkPlaceType dbversion = workplaceTypeRepository.Find(workPlaceTypeId); if (dbversion == null) { throw new InvalidOperationException(string.Format(CultureInfo.InvariantCulture, "Workplace Type with Id {0} not found!", workPlaceTypeId)); } workplaceTypeRepository.Delete(dbversion); workplaceTypeRepository.SaveChanges(); }
public IHttpActionResult CreateWorkPlaceType(WorkPlaceTypeDto workPlaceTypeDto) { if (!ModelState.IsValid) { return(BadRequest()); } var newWorkPlaceType = new WorkPlaceType() { Id = (byte)workPlaceTypeDto.Id, Name = workPlaceTypeDto.Name }; _context.WorkPlaceTypes.Add(newWorkPlaceType); _context.SaveChanges(); workPlaceTypeDto.Id = newWorkPlaceType.Id; return(Created(new Uri(Request.RequestUri + "/" + newWorkPlaceType.Id), workPlaceTypeDto)); }