コード例 #1
0
        /// <summary>
        /// update project part layout
        /// </summary>
        /// <param name="layout"></param>
        /// <returns></returns>
        public OperationResult UpdateProjectPartLayout(ProjectPartLayout layout)
        {
            var operationResult = new OperationResult();

            var existingProjectPartLayout = GetProjectPartLayout(layout.ProjectPartLayoutId);

            if (existingProjectPartLayout != null)
            {
                try
                {
                    _db.ProjectPartLayout.Attach(existingProjectPartLayout);

                    _db.Entry(existingProjectPartLayout).CurrentValues.SetValues(layout);

                    _db.SaveChanges();

                    operationResult.Success = true;
                    operationResult.Message = "Update Success!";
                }
                catch (Exception ex)
                {
                    operationResult.Success = false;
                    operationResult.Message = "Error";
                    logger.ErrorFormat("An error occurred while updating project part layout. {0}", ex.ToString());
                }
            }
            else
            {
                operationResult.Success = false;
                operationResult.Message = "Unable to find project part layout to update";
            }

            return(operationResult);
        }
コード例 #2
0
        /// <summary>
        /// save project part layout
        /// </summary>
        /// <param name="newProjectPartLayout"></param>
        /// <returns></returns>
        public OperationResult SaveProjectPartLayout(ProjectPartLayout newProjectPartLayout)
        {
            var operationResult = new OperationResult();

            try
            {
                var existingProjectPartLayout = _db.ProjectPartLayout.FirstOrDefault(x => x.Description.ToLower() == newProjectPartLayout.Description.ToLower() && x.ProjectPartId == newProjectPartLayout.ProjectPartId);

                if (existingProjectPartLayout == null)
                {
                    var insertedLayout = _db.ProjectPartLayout.Add(newProjectPartLayout);

                    _db.SaveChanges();

                    operationResult.Success     = true;
                    operationResult.Message     = "Success";
                    operationResult.ReferenceId = insertedLayout.ProjectPartLayoutId;
                    operationResult.Description = insertedLayout.Description;
                }
                else
                {
                    operationResult.Success = false;
                    operationResult.Message = "Duplicate Entry";
                }
            }
            catch (Exception ex)
            {
                operationResult.Success = false;
                operationResult.Message = "Error";
                logger.ErrorFormat("An error occurred while saving new project part layout. {0}", ex.ToString());
            }

            return(operationResult);
        }
コード例 #3
0
        /// <summary>
        /// convert posted layout to project part layout
        /// </summary>
        /// <param name="layout"></param>
        /// <returns></returns>
        public ProjectPartLayout ConvertToDomain(HttpPostedFileBase layout)
        {
            ProjectPartLayout projectPartLayout = new ProjectPartLayout();

            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", "");
            }

            projectPartLayout.Description = trimmedFileName;
            projectPartLayout.Type        = layout.ContentType;
            projectPartLayout.Length      = layout.ContentLength;
            projectPartLayout.Content     = tempFile;

            return(projectPartLayout);
        }
コード例 #4
0
        /// <summary>
        /// convert project part layout to pdf
        /// </summary>
        /// <param name="layout"></param>
        /// <returns></returns>
        public LayoutPdf ConvertToPdf(ProjectPartLayout layout)
        {
            LayoutPdf model = new LayoutPdf();

            model.Content     = layout.Content;
            model.Type        = layout.Type;
            model.Description = layout.Description;

            return(model);
        }
コード例 #5
0
        /// <summary>
        /// convert project part layout to view model
        /// </summary>
        /// <param name="layout"></param>
        /// <returns></returns>
        public LayoutViewModel ConvertToView(ProjectPartLayout layout)
        {
            LayoutViewModel model = new LayoutViewModel();

            model.LayoutId    = layout.ProjectPartLayoutId;
            model.Description = (!string.IsNullOrEmpty(layout.Description)) ? layout.Description : "N/A";
            model.LastDate    = layout.ModifiedDate;
            model.IsProject   = true;

            return(model);
        }
コード例 #6
0
        /// <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);
        }
コード例 #7
0
        /// <summary>
        /// get project part layout
        /// </summary>
        /// <param name="layoutId"></param>
        /// <returns></returns>
        public ProjectPartLayout GetProjectPartLayout(Guid layoutId)
        {
            var partLayout = new ProjectPartLayout();

            try
            {
                partLayout = _db.ProjectPartLayout.FirstOrDefault(x => x.ProjectPartLayoutId == layoutId);
            }
            catch (Exception ex)
            {
                logger.ErrorFormat("An error occurred while getting project part layout. {0}", ex.ToString());
            }

            return(partLayout);
        }