public static void Fill(Models.LibraryFolder entity, ViewModels.LibraryFolderDto jobgroup) { entity.Id = jobgroup.Id; entity.ParentId = jobgroup.ParentId; entity.Title = jobgroup.Title; entity.Remark = jobgroup.Remark; }
public static void FillDto(Models.LibraryFolder entity, ViewModels.LibraryFolderDto jobgroup) { jobgroup.Id = entity.Id; jobgroup.ParentId = entity.ParentId; jobgroup.Title = entity.Title; jobgroup.Remark = entity.Remark; }
public virtual CustomActionResult Validate(ViewModels.LibraryFolderDto dto) { var title = dto.Title.ToLower(); var name = this.context.LibraryFolders.FirstOrDefault(q => q.Id != dto.Id && q.ParentId == dto.ParentId && q.Title.ToLower() == title); if (name != null) { return(Exceptions.getDuplicateException("Folder-01", "Title")); } return(new CustomActionResult(HttpStatusCode.OK, "")); }
public async Task <IHttpActionResult> PostLibraryFolder(ViewModels.LibraryFolderDto dto) { // return Ok(client); if (dto == null) { return(Exceptions.getNullException(ModelState)); } if (!ModelState.IsValid) { // return BadRequest(ModelState); return(Exceptions.getModelValidationException(ModelState)); } var validate = unitOfWork.LibraryFolderRepository.Validate(dto); if (validate.Code != HttpStatusCode.OK) { return(validate); } LibraryFolder entity = null; if (dto.Id == -1) { entity = new LibraryFolder(); unitOfWork.LibraryFolderRepository.Insert(entity); } else { entity = await unitOfWork.LibraryFolderRepository.GetByID(dto.Id); } if (entity == null) { return(Exceptions.getNotFoundException()); } //ViewModels.Location.Fill(entity, dto); ViewModels.LibraryFolderDto.Fill(entity, dto); LibraryFolder parent = null; if (entity.ParentId != null) { parent = await unitOfWork.LibraryFolderRepository.GetByID(entity.ParentId); } var saveResult = await unitOfWork.SaveAsync(); if (saveResult.Code != HttpStatusCode.OK) { return(saveResult); } dto.Id = entity.Id; if (parent == null) { entity.FullCode = entity.Id.ToString(); } else { entity.FullCode = parent.FullCode + "-" + entity.Id.ToString(); } saveResult = await unitOfWork.SaveAsync(); if (saveResult.Code != HttpStatusCode.OK) { return(saveResult); } var view = unitOfWork.LibraryFolderRepository.GetViewLibraryFolder().FirstOrDefault(q => q.Id == entity.Id); return(Ok(view)); }