public async Task <ApiResult> Update([FromBody] APIProjectNodeViewModel p)
        {
            // 以接口的形式返回数据
            var res = new ApiResult();

            if (string.IsNullOrWhiteSpace(p.Title))
            {
                res.msg = "标题不能为空";
            }
            else
            {
                try
                {
                    ProjectNodeInfo m = PNdb.GetId(p.ID);
                    m.Title        = p.Title;
                    m.StartDate    = C.DateTimes(p.StartDate);
                    m.EndDate      = C.DateTimes(p.EndDate);
                    m.CompleteDate = C.DateTimes(p.CompleteDate);
                    m.Content      = p.Content;
                    m.State        = p.State;
                    m.IsEnable     = p.IsEnable;
                    res.success    = PNdb.Update(m) > 0;
                }
                catch (Exception ex)
                {
                    res.statusCode = (int)ApiEnum.Error;
                    res.msg        = ApiEnum.Error.GetEnumText() + ex.Message;
                }
            }
            // {"success":true,"message":null,"statusCode":200,"data":null}
            return(await Task.Run(() => res));
        }
        public ActionResult SaveData(ProjectNodeChangeViewModel projectnodes)
        {
            if (projectnodes.updated != null)
            {
                foreach (var updated in projectnodes.updated)
                {
                    _projectNodeService.Update(updated);
                }
            }
            if (projectnodes.deleted != null)
            {
                foreach (var deleted in projectnodes.deleted)
                {
                    _projectNodeService.Delete(deleted);
                }
            }
            if (projectnodes.inserted != null)
            {
                foreach (var inserted in projectnodes.inserted)
                {
                    _projectNodeService.Insert(inserted);
                }
            }
            _unitOfWork.SaveChanges();

            return(Json(new { Success = true }, JsonRequestBehavior.AllowGet));
        }