public async Task <ApiResult> PlanItemCha(int id, APIProjectPlanViewmodel p)
        {
            // 以接口的形式返回数据
            var res = new ApiResult();

            try
            {
                ProjectPlanInfo m = plandb.GetId(id);
                //m.ProjectID = p.ProjectID;
                //m.ProjectNodeID = p.ProjectNodeID;
                m.Principal       = p.Principal;
                m.ProjectModifyID = p.ProjectModifyID;
                m.BeginDate       = C.DateTimes(p.BeginDate);
                m.EndDate         = C.DateTimes(p.EndDate);
                m.CompleteDate    = C.DateTimes(p.CompleteDate);
                m.IsComplete      = p.IsComplete;
                m.IsEnable        = p.IsEnable;
                m.Sorting         = p.Sorting;
                m.Contents        = p.Contents;
                res.success       = plandb.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 async Task <ApiResult> PlanItemCha(APIProjectPlanViewmodel p)
        {
            // 以接口的形式返回数据
            var res = new ApiResult();

            try
            {
                ProjectPlanInfo m = new ProjectPlanInfo()
                {
                    ProjectID       = p.ProjectID,
                    ProjectNodeID   = p.ProjectNodeID,
                    Principal       = p.Principal,
                    UserID          = p.Principal,
                    ProjectModifyID = p.ProjectModifyID,
                    BeginDate       = C.DateTimes(p.BeginDate),
                    EndDate         = C.DateTimes(p.EndDate),
                    CompleteDate    = C.DateTimes(p.CompleteDate),
                    Sorting         = p.Sorting,
                    IsComplete      = p.IsComplete,
                    Contents        = p.Contents,
                    AddDate         = DateTime.Now,
                    IsEnable        = p.IsEnable
                };
                res.success = plandb.Add(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));
        }