/// <summary> /// delete part layout /// </summary> /// <param name="layout"></param> /// <returns></returns> public OperationResult DeletePartLayout(PartLayout layout) { var operationResult = new OperationResult(); var existingLayout = GetPartLayout(layout.PartLayoutId); if (existingLayout != null) { try { _db.PartLayout.Attach(existingLayout); _db.PartLayout.Remove(existingLayout); _db.SaveChanges(); operationResult.Success = true; } catch (Exception ex) { operationResult.Success = false; operationResult.Message = "Error"; logger.ErrorFormat("An error occurred while deleting part layout. {0}", ex.ToString()); } } else { operationResult.Success = false; operationResult.Message = "Unable to find selected part layout."; } return(operationResult); }
/// <summary> /// convert posted layout to part layout domain /// </summary> /// <param name="layout"></param> /// <returns></returns> public PartLayout ConvertToDomain(HttpPostedFileBase layout) { PartLayout partLayout = new PartLayout(); byte[] tempFile = new byte[layout.ContentLength]; var trimmedFileName = string.Empty; if (layout.FileName.EndsWith("png")) { trimmedFileName = layout.FileName.Replace(".png", ""); } else if (layout.FileName.EndsWith("jpg")) { trimmedFileName = layout.FileName.Replace(".jpg", ""); } else if (layout.FileName.EndsWith("pdf")) { trimmedFileName = layout.FileName.Replace(".pdf", ""); } partLayout.Description = trimmedFileName; partLayout.Type = layout.ContentType; partLayout.Length = layout.ContentLength; partLayout.Content = tempFile; return(partLayout); }
/// <summary> /// save part layout /// </summary> /// <param name="newPartLayout"></param> /// <returns></returns> public OperationResult SavePartLayout(PartLayout newPartLayout) { var operationResult = new OperationResult(); var existingLayout = _db.PartLayout.FirstOrDefault(x => x.Description.ToLower() == newPartLayout.Description.ToLower() && x.PartId == newPartLayout.PartId); try { if (existingLayout == null) { var insertedLayout = _db.PartLayout.Add(newPartLayout); _db.SaveChanges(); operationResult.Success = true; operationResult.Message = "Success"; operationResult.ReferenceId = insertedLayout.PartLayoutId; operationResult.Description = insertedLayout.Description; } else { operationResult.Success = false; operationResult.Message = "Duplicate Entry"; } } catch (Exception ex) { operationResult.Success = false; operationResult.Message = "Error"; logger.ErrorFormat("Error saving new part layout: {0} ", ex.ToString()); } return(operationResult); }
/// <summary> /// convert part layout to pdf /// </summary> /// <param name="layout"></param> /// <returns></returns> public LayoutPdf ConvertToPdf(PartLayout layout) { LayoutPdf model = new LayoutPdf(); model.Content = layout.Content; model.Type = layout.Type; model.Description = layout.Description; return(model); }
/// <summary> /// convert part layout to view model /// </summary> /// <param name="layout"></param> /// <returns></returns> public LayoutViewModel ConvertToView(PartLayout layout) { LayoutViewModel model = new LayoutViewModel(); model.LayoutId = layout.PartLayoutId; model.Description = (!string.IsNullOrEmpty(layout.Description)) ? layout.Description : "N/A"; model.LastDate = layout.ModifiedDate; model.IsProject = false; return(model); }
/// <summary> /// convert project part layout to part layout /// </summary> /// <param name="projectPartLayout"></param> /// <returns></returns> public PartLayout ConvertToDomain(ProjectPartLayout projectPartLayout) { PartLayout partLayout = new PartLayout(); partLayout.Description = projectPartLayout.Description; partLayout.Type = projectPartLayout.Type; partLayout.Length = projectPartLayout.Length; partLayout.Content = projectPartLayout.Content; partLayout.IsLatest = projectPartLayout.IsLatest; partLayout.IsMachined = projectPartLayout.IsMachined; partLayout.IsRaw = projectPartLayout.IsRaw; return(partLayout); }
/// <summary> /// get part layout /// </summary> /// <param name="layoutId"></param> /// <returns></returns> public PartLayout GetPartLayout(Guid layoutId) { var layout = new PartLayout(); try { layout = _db.PartLayout.Find(layoutId); } catch (Exception ex) { logger.ErrorFormat("Error getting part layout: {0} ", ex.ToString()); } return(layout); }