Пример #1
0
        /// <summary>
        /// 生成TsCode
        /// </summary>
        public TsResultModel GetTsResultModel(ActionModel action)
        {
            TsResultModel result = new TsResultModel()
            {
                Id      = action.Id,
                Summary = action.Summary
            };

            result.Name = (string.IsNullOrEmpty(action.AreaName) ? "" : $"{action.AreaName}/")
                          + $"{action.ControllerName}/{action.ActionName}";
            result.TsModelList = new List <TsModel>();

            #region 处理输入输出参数
            if (action.InputParameters != null && action.InputParameters.Count > 0)
            {
                for (int i = 0; i < action.InputParameters.Count; i++)
                {
                    if (action.InputParameters[i].PType.PiList != null && action.InputParameters[i].PType.PiList.Count > 0)
                    {
                        FillTsModelList(result.TsModelList, action.InputParameters[i].PType);
                    }
                }
            }
            if (action.ReturnParameter.PType.PiList != null && action.ReturnParameter.PType.PiList.Count > 0)
            {
                FillTsModelList(result.TsModelList, action.ReturnParameter.PType);
            }
            #endregion

            result.TsService = GetTsServiceModel(action);

            return(result);
        }
Пример #2
0
        /// <summary>
        /// 生成TsCode
        /// </summary>
        public TsResultModel GetTsResultModel(string itemId, string itemType = "")
        {
            TsResultModel result = null;

            if (itemType.ToLower() == TsCreateType.Controller.ToString().ToLower())
            {
                ControllerModel controller = JcApiHelper.GetController(itemId);
                if (controller == null)
                {
                    throw new Exception("无效的ItemId.");
                }
                result = GetTsResultModel(controller);
            }
            else if (itemType.ToLower() == TsCreateType.Action.ToString().ToLower())
            {
                ActionModel action = JcApiHelper.GetAction(itemId);
                if (action == null)
                {
                    throw new Exception("无效的ItemId.");
                }
                result = GetTsResultModel(action);
            }
            else
            {
                PTypeModel ptype = JcApiHelper.GetPTypeModel(itemId);
                if (ptype == null)
                {
                    throw new Exception("无效的ItemId.");
                }
                result = GetTsResultModel(ptype);
            }
            return(result);
        }
Пример #3
0
        /// <summary>
        /// 生成TsCode
        /// </summary>
        public TsResultModel GetTsResultModel(ControllerModel controller)
        {
            TsResultModel result = new TsResultModel()
            {
                Id      = controller.Id,
                Summary = controller.Summary
            };

            result.Name = (string.IsNullOrEmpty(controller.AreaName) ? "" : $"{controller.AreaName}/")
                          + controller.ControllerName;

            result.TsModelList = new List <TsModel>();
            for (int i = 0; i < controller.ActionList.Count; i++)
            {
                ActionModel action = controller.ActionList[i];
                #region 处理输入输出参数
                if (action.InputParameters != null && action.InputParameters.Count > 0)
                {
                    for (int j = 0; j < action.InputParameters.Count; j++)
                    {
                        if (action.InputParameters[j].PType.PiList != null && action.InputParameters[j].PType.PiList.Count > 0)
                        {
                            FillTsModelList(result.TsModelList, action.InputParameters[j].PType);
                        }
                    }
                }
                if (action.ReturnParameter.PType.PiList != null && action.ReturnParameter.PType.PiList.Count > 0)
                {
                    FillTsModelList(result.TsModelList, action.ReturnParameter.PType);
                }
                #endregion
            }
            result.TsService = GetTsServiceModel(controller);
            return(result);
        }
Пример #4
0
        /// <summary>
        /// 生成TsCode
        /// </summary>
        public TsResultModel GetTsResultModel(PTypeModel ptype)
        {
            TsResultModel result = new TsResultModel()
            {
                Id      = ptype.Id,
                Name    = ptype.TypeName,
                Summary = ptype.Summary
            };

            result.TsModelList = new List <TsModel>();
            FillTsModelList(result.TsModelList, ptype);
            return(result);
        }
Пример #5
0
        public IActionResult GetTsModel([FromForm] string itemId, [FromForm] string itemType)
        {
            Robj <TsResultModel> robj = new Robj <TsResultModel>();

            try
            {
                if (string.IsNullOrEmpty(itemId))
                {
                    throw new Exception("参数typeId不能为空");
                }
                if (string.IsNullOrEmpty(itemType))
                {
                    throw new Exception("参数itemType不能为空");
                }
                TsCreator     creator  = new TsCreator();
                TsResultModel tsResult = creator.GetTsResultModel(itemId, itemType);
                robj.Result = tsResult;
            }
            catch (Exception ex)
            {
                robj.Error(ex.Message);
            }
            return(new JsonResult(robj));
        }