예제 #1
0
        public async Task <Guid> Save([FromBody] XDesign_Design designData)
        {
            var userId = HttpContext.GetUserId();
            var result = await m_designWebService.SaveDesignAsync(userId, designData);

            return(result);
        }
예제 #2
0
        public static MDesign_DesignSpecification Create_MDesign_DesignSpecification(XDesign_Design xDesign)
        {
            var design = CreateDesign(xDesign);

            var designSpecification = new MDesign_DesignSpecification()
            {
                ArtifactValue = design.JsonSave().ToString()
            };

            return(designSpecification);
        }
예제 #3
0
            public static XDesign_Design XDesign_Design(Design.Core.Design design)
            {
                var result = new XDesign_Design()
                {
                    designId   = "",
                    designName = "New",
                    width      = design.Width.ToString(),
                    height     = design.Height.ToString(),
                    layout     = XDesign_DesignLayout(design.LayoutComponent),
                    blocks     = XDesign_DesignBlocks(design.LayoutComponent.Children)
                };

                return(result);
            }
예제 #4
0
            public static XDesign_Design XDesign_Design(MDesign_Design mDesign)
            {
                var design = new Design.Core.Design(JToken.Parse(mDesign.DesignArtifactValue));

                var result = new XDesign_Design()
                {
                    designId   = mDesign.DesignId.ToString(),
                    designName = mDesign.Name,
                    width      = design.Width.ToString(),
                    height     = design.Height.ToString(),
                    layout     = XDesign_DesignLayout(design.LayoutComponent),
                    blocks     = XDesign_DesignBlocks(design.LayoutComponent.Children)
                };

                return(result);
            }
예제 #5
0
        public static Design.Core.Design CreateDesign(XDesign_Design xDesign)
        {
            var result = new Design.Core.Design()
            {
                Width  = Dimension.ParseNullable(xDesign.width),
                Height = Dimension.ParseNullable(xDesign.height)
            };

            var layoutComponent = xDesign.layout != null
                ? CreateLayoutComponent(xDesign.layout)
                : null;

            result.LayoutComponent = layoutComponent;
            result.LayoutComponent.Children.AddRange(CreateBlockComponentList(xDesign.blocks ?? XDesign_DesignBlock.EmptyArray));

            return(result);
        }
예제 #6
0
        public async Task <XDesign_DesignInfo> GetDesignInfo(XDesign_Design design, int designSize, int layoutSize, int blockSize)
        {
            using var log = BeginFunction(nameof(DesignAjaxService), nameof(GetDesignInfo), design);
            try
            {
                await Task.CompletedTask.ConfigureAwait(false);

                var projectObject = BusinessDataFactory.CreateDesign(design);

                var result = Create.XDesign_DesignInfo(projectObject, designSize, layoutSize, blockSize);

                log.Result(result);
                return(result);
            }
            catch (Exception ex)
            {
                log.Exception(ex);
                throw;
            }
        }
예제 #7
0
        public async Task <Guid> SaveDesignAsync(string userId, XDesign_Design design)
        {
            using var log = BeginFunction(nameof(DesignAjaxService), nameof(SaveDesignAsync), userId, design);
            try
            {
                var ownerReference = CreateOwnerReference.FromUserId(userId);
                var ownerId        = await DesignMicroService.AllocateOwnerAsync(ownerReference).ConfigureAwait(false);

                var result = string.IsNullOrEmpty(design.designId)
                    ? await DesignMicroService.CreateDesignAsync(ownerId, design.designName, BusinessDataFactory.Create_MDesign_DesignSpecification(design), GetUtcNow()).ConfigureAwait(false)
                    : await DesignMicroService.UpdateDesignAsync(Guid.Parse(design.designId), BusinessDataFactory.Create_MDesign_DesignSpecification(design), GetUtcNow()).ConfigureAwait(false);

                log.Result(result);
                return(result);
            }
            catch (Exception ex)
            {
                log.Exception(ex);
                throw;
            }
        }
예제 #8
0
        public async Task <XDesign_DesignInfo> GetDesignInfo([FromBody] XDesign_Design designData, int designSize, int layoutSize, int blockSize)
        {
            var result = await m_designWebService.GetDesignInfo(designData, designSize, layoutSize, blockSize);

            return(result);
        }