public IActionResult CreateAnnotation([FromBody] AnnotationDTO annotation)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var userId = _userService.GetUserFromUsername(User.FindFirstValue(JwtRegisteredClaimNames.Sub)).ID;

            annotation.UserID = userId;
            _annotationService.InsertAnnotation(annotation);

            return(Created("controller", annotation));
        }
Пример #2
0
        public static string SetAnnotationAndComment(string jsonString, bool isAnnotation, bool isCAD = false)
        {
            JavaScriptSerializer        serializer = new JavaScriptSerializer();
            Dictionary <string, object> data       = (Dictionary <string, object>)serializer.DeserializeObject(jsonString);

            string   fileID   = Convert.ToString(data["DocumentID"]);
            string   fileText = GetFileByID(fileID);
            string   str      = "";
            ImageDTO text     = JsonHelper.ToObject <ImageDTO>(fileText);

            if (text != null)
            {
                string versionID = Convert.ToString(data["VersionID"]);
                foreach (var item in text.Versions)
                {
                    if (item.ID == versionID)
                    {
                        if (isAnnotation)
                        {
                            AnnotationDTO annotation = new AnnotationDTO();
                            annotation.ID        = FormulaHelper.CreateGuid();
                            annotation.UserID    = Convert.ToString(data["UserID"]);
                            annotation.PID       = "";
                            annotation.Content   = Convert.ToString(data["Content"]);
                            annotation.Time      = DateTime.Now;
                            annotation.LayerID   = Convert.ToString(data["LayerID"]);
                            annotation.LayerType = Convert.ToString(data["LayerType"]);
                            annotation.GraphData = JsonHelper.ToObject <GraphDataDTO>(Convert.ToString(data["GraphData"]));
                            item.Annotations.Add(annotation);
                            str = JsonHelper.ToJson(item.Annotations);
                        }
                        else
                        {
                            CommentDTO comment = new CommentDTO();
                            comment.ID      = FormulaHelper.CreateGuid();
                            comment.UserID  = Convert.ToString(data["UserID"]);
                            comment.PID     = Convert.ToString(data["PID"]);
                            comment.Content = Convert.ToString(data["Content"]);
                            comment.Time    = DateTime.Now;
                            item.Comments.Add(comment);
                            str = JsonHelper.ToJson(item.Comments);
                        }
                    }
                }
            }

            WriteJsonFile(text);
            return(str);
        }