apiList.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. $(function(){
  2. //queryAllChannelApiContor()
  3. queryAllApiModule();
  4. Commonjs.getJscrollpane.destroy();
  5. //showApiDetailDialog();
  6. });
  7. function queryAllApiModule(){
  8. var param = {};
  9. param.Api = "queryAllApiSys";
  10. param.Params = '';
  11. var d = Commonjs.ajax('./apiConfig_queryAllApiSys.do',param,false);
  12. if(d.RespCode != 10000){
  13. Commonjs.alert(d.RespMessage);
  14. $(window).html('');
  15. }else{
  16. $('#treeUL').empty().append(initListHtml(d.Data));
  17. }
  18. }
  19. function initListHtml(dataList){
  20. var html = '';
  21. $.each(dataList,function(i,it){
  22. html += '<li onclick="showApiModule(\''+it.sysEn+'\',\''+it.sysName+'\');">'+it.sysEn+'('+it.sysName+')<li>';
  23. });
  24. return html;
  25. }
  26. function showApiModule(apiSysEn,apiSysName){
  27. $("#divApiModuleTitle").html("API 文档: "+apiSysEn+"("+apiSysName+")");
  28. queryApiModuelList(apiSysEn,apiSysName);
  29. }
  30. function queryApiModuelList(_apiSysEn,_apiSysName){
  31. var Service = {};
  32. var code = 9999;
  33. Service.apiSysEn = _apiSysEn;
  34. Service.apiSysName = _apiSysName;
  35. var params =Commonjs.getParams(code,Service);
  36. var param = {};
  37. param.Api = "queryApiModuelBySys";
  38. param.Params = Commonjs.jsonToString(params);;
  39. $("#tbdApiList").empty();
  40. var d = Commonjs.ajax('./apiConfig_queryApiModuelBySys.do',param,false);
  41. if(d.RespCode != 10000){
  42. Commonjs.alert(d.RespMessage);
  43. $(window).html('');
  44. }else{
  45. crateTabApiModuleList(d.Data);
  46. }
  47. }
  48. var apiMap = {};
  49. function crateTabApiModuleList(data){
  50. var tempModuleName;
  51. var html;
  52. if(data!=null){
  53. //如果是数组
  54. if(data.length>0){
  55. $.each(data,function(index,element){
  56. apiMap[element.api+''] = element;
  57. if( index == 0 ){
  58. tempModuleName = element.moduleName;
  59. html = "<tr><td colspan='2' style='text-align: left;font-weight: bold;'>"+element.moduleName+"</td></tr>";
  60. }
  61. if( tempModuleName == element.moduleName ){
  62. html +="<tr ><td style='text-align: left;'>"+ element.apiName+"</td>"+
  63. "<td style='text-align: left;'><a href = 'javascript:void(0);' onclick=\"showApiDetailDialog(\'"+element.api+"\');\">"+ element.api+"</a></td>"+
  64. "<td style='text-align: right;'><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+element.api+"\',\'trParam\',\'"+0+"\');\">参数管理</a><br/><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+element.api+"\',\'trParam\',\'"+1+"\');\">返回值管理</a></td>"+
  65. "</tr>";
  66. }else{
  67. html += "<tr><td colspan='2' style='text-align: left;font-weight: bold;'>"+element.moduleName+"</td></tr>";
  68. html +="<tr ><td style='text-align: left;'>"+ element.apiName+"</td>"+
  69. "<td style='text-align: left;'><a href = 'javascript:void(0);' onclick=\"showApiDetailDialog(\'"+element.api+"\');\">"+ element.api+"</a></td>"+
  70. "<td style='text-align: right;'><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+element.api+"\',\'trParam\',\'"+0+"\');\">参数管理</a><br/><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+element.api+"\',\'trParam\',\'"+1+"\');\">返回值管理</a></td>"+
  71. "</tr>";
  72. tempModuleName = element.moduleName;
  73. }
  74. });
  75. $("#tbdApiList").html(html);
  76. }else{
  77. apiMap[data.api+''] = data;
  78. html = "<tr><td colspan='2' style='text-align: left;font-weight: bold;'>"+data.moduleName+"</td></tr>";
  79. html +="<tr>" +
  80. "<td style='text-align: left;'>"+data.apiName+"</td>"+
  81. "<td style='text-align: left;'><a href = 'javascript:void(0);' onclick=\"showApiDetailDialog(\'"+data.api+"\');\">"+data.api+"</a></td>"+
  82. "<td style='text-align: right;'><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+data.api+"\',\'trParam\',\'"+0+"\');\">参数管理</a><br/><a href = 'javascript:void(0);' onclick=\"showParamManageDialog(\'"+element.api+"\',\'trParam\',\'"+1+"\');\">返回值管理</a></td>"+
  83. "</tr>";
  84. $("#tbdApiList").html(html);
  85. }
  86. }
  87. }
  88. function showApiDetailDialog(api){
  89. var apiModel = apiMap[api];
  90. $("#divApiName").html(apiModel.apiName);
  91. $("#labApi").html(apiModel.api);
  92. $("#labDesc").html("");
  93. $("#labRetDataType").html(apiModel.retDataType);
  94. $("#labCreateTime").html(apiModel.createTime);
  95. $("#trInParamNeed").empty();
  96. $("#trOutParam").empty();
  97. $("#trInParamNoNeed").empty();
  98. var Service = {};
  99. var code = 9999;
  100. Service.api = api;
  101. var params =Commonjs.getParams(code,Service);
  102. var param = {};
  103. param.Api = "queryApiMethodParam";
  104. param.Params = Commonjs.jsonToString(params);
  105. //$("#tbdApiList").empty();
  106. var d = Commonjs.ajax('./apiConfig_queryApiMethodParam.do',param,false);
  107. if(d.RespCode != 10000){
  108. Commonjs.alert(d.RespMessage);
  109. $(window).html('');
  110. }else{
  111. createMethodParam(d.Data);
  112. var contents=$('#divApiDetail').get(0);
  113. var artBox=art.dialog({
  114. lock: true,
  115. artIcon:'add',
  116. opacity:0.4,
  117. width: 800,
  118. height:300,
  119. padding:'0px 0px',
  120. title:'Api文档明细',
  121. header:false,
  122. content: contents
  123. });
  124. }
  125. }
  126. var ParamManageBox;
  127. function showParamManageDialog(api,trid,isValid){
  128. $("#api").val(api);
  129. $("#isValid").val(isValid);
  130. var Service = {};
  131. var code = 9999;
  132. Service.api = api;
  133. Service.isValid = isValid;
  134. var params =Commonjs.getParams(code,Service);
  135. var param = {};
  136. param.Api = "queryApiMethodParam";
  137. param.Params = Commonjs.jsonToString(params);
  138. //$("#tbdApiList").empty();
  139. var d = Commonjs.ajax('./apiConfig_queryApiMethodParam.do',param,false);
  140. if(d.RespCode != 10000){
  141. Commonjs.alert(d.RespMessage);
  142. $(window).html('');
  143. }else{
  144. createMethodParamTab(d.Data,trid,isValid);
  145. var contents=$('#ParamManage').get(0);
  146. ParamManageBox=art.dialog({
  147. lock: true,
  148. artIcon:'',
  149. opacity:0.4,
  150. width: 800,
  151. height:300,
  152. padding:'0px 0px',
  153. title:'参数管理',
  154. header:false,
  155. content: contents
  156. });
  157. }
  158. }
  159. function showUpdateParamDialog(paramid,paramName,paramType,paramMeaning,isNede,remark){
  160. var contents=$('#UpdateParam').get(0);
  161. var api = $("#api").val();
  162. var isValid = $("#isValid").val();
  163. $("#paramName").val(paramName);
  164. $("#paramMeaning").val(paramMeaning);
  165. $("#remark").val(remark);
  166. $('#paramType option').each(function(){
  167. if($(this).val()==paramType){
  168. $(this).attr("selected","selected");
  169. }
  170. });
  171. $('#isNeed option').each(function(){
  172. if($(this).val()==isNede){
  173. $(this).attr("selected","selected");
  174. }
  175. });
  176. var artBox=art.dialog({
  177. lock: true,
  178. artIcon:'',
  179. opacity:0.4,
  180. width: 550,
  181. height:300,
  182. padding:'0px 0px',
  183. title:'参数',
  184. header:false,
  185. content: contents,
  186. ok: function () {
  187. var Service = {};
  188. var page = {};
  189. var code = 91012;
  190. Service.paramid = paramid;
  191. Service.api = api;
  192. Service.isValid = isValid;
  193. Service.paramName = $("#paramName").val();
  194. Service.paramMeaning = $("#paramMeaning").val();
  195. Service.isNede = $('#isNeed option:selected').val();
  196. Service.paramType = $('#paramType option:selected').val();
  197. Service.remark = $('#remark').val();
  198. var param = {};
  199. var params = Commonjs.getParams(code,Service);//获取参数
  200. param.Api = "updateApiMethodParam";
  201. param.Params = Commonjs.jsonToString(params);
  202. var d = Commonjs.ajax('./apiConfig_callSysApiManagerApi.do',param,false);
  203. ParamManageBox.close();
  204. showParamManageDialog(api,"trParam",isValid);
  205. //异常提示
  206. Commonjs.alert(d.RespMessage);
  207. $('#UpdateParam').hide();
  208. },
  209. cancel: function(){
  210. $('#UpdateParam').hide();
  211. }
  212. });
  213. }
  214. function createMethodParam(dataList){
  215. var html ;
  216. if(dataList!=null){
  217. //如果是数组
  218. if(dataList.length>0){
  219. $.each(dataList,function(index,element){
  220. if( element.isValid == 0 ){
  221. //入参
  222. if( element.isNede == 1 ){
  223. //必要参数
  224. createTableTRHtml('trInParamNeed',element);
  225. }else{
  226. //不必要
  227. createTableTRHtml('trInParamNoNeed',element);
  228. }
  229. }else if( element.isValid == 1 ){
  230. //出参
  231. createTableTRHtml('trOutParam',element);
  232. }
  233. });
  234. }else{
  235. //如果只返回一个值
  236. if( dataList.isValid == 0 ){
  237. //入参
  238. if( dataList.isNede == 1 ){
  239. //必要参数
  240. createTableTRHtml('trInParamNeed',dataList);
  241. }else{
  242. //不必要
  243. createTableTRHtml('trInParamNoNeed',dataList);
  244. }
  245. }else if( dataList.isValid == 1 ){
  246. //出参
  247. createTableTRHtml('trOutParam',dataList);
  248. }
  249. }
  250. }
  251. }
  252. function createMethodParamTab(dataList,trid,isValid){
  253. $("#"+trid).html('');
  254. if(dataList!=null){
  255. //如果是数组
  256. if(dataList.length>0){
  257. $.each(dataList,function(index,element){
  258. if( element.isValid == isValid ){
  259. createParamTableTRHtml(trid,element);
  260. }
  261. });
  262. }else{
  263. //如果只返回一个值
  264. if( dataList.isValid == isValid ){
  265. createParamTableTRHtml(trid,dataList);
  266. }
  267. }
  268. }
  269. }
  270. function createParamTableTRHtml(trid,model){
  271. var trHtml;
  272. var isNede;
  273. console.info(model);
  274. if(model.isNede==0){
  275. isNede = "非必填";
  276. }else{
  277. isNede = "必填";
  278. }
  279. trHtml = "<tr><td>"+model.paramName+"</td><td>"+model.paramType+"</td><td>"+model.paramMeaning+"</td>"+
  280. "<td>"+isNede+"</td><td>"+model.remark+"</td>"+
  281. "<td align='center'>" +
  282. "<ul class=\"i-btn-list\"><li><a href = 'javascript:void(0);' onclick=\"showUpdateParamDialog(\'"+model.paramid+"\',\'"+model.paramName+"\',\'"+model.paramType+"\',\'"+model.paramMeaning+"\',\'"+model.isNede+"\',\'"+model.remark+"\');\" class=\"i-btn\"><i class=\"i-edit\"></i>修改</a></li>"+
  283. "<li><a href = 'javascript:void(0);' onclick=\"DeleteParam(\'"+model.paramid+"\',\'"+model.api+"\',\'"+model.isValid+"\');\" class=\"i-btn\"><i class=\"i-del\"></i>删除</a></li></ul>"+
  284. "</td>"+
  285. "</tr>";
  286. $("#"+trid).append(trHtml);
  287. }
  288. function DeleteParam(paramid,api,isValid){
  289. var Service = {};
  290. var page = {};
  291. var code = 91013;
  292. Service.paramid = paramid;
  293. var param = {};
  294. var params = Commonjs.getParams(code,Service);//获取参数
  295. param.Api = "deleteApiMethodParam";
  296. param.Params = Commonjs.jsonToString(params);
  297. var d = Commonjs.ajax('./apiConfig_callSysApiManagerApi.do',param,false);
  298. ParamManageBox.close();
  299. showParamManageDialog(api,"trParam",isValid);
  300. Commonjs.alert(d.RespMessage);
  301. }
  302. function createTableTRHtml(trid,model){
  303. var trHtml;
  304. trHtml = "<tr><td>"+model.paramName+"</td><td>"+model.paramType+"</td>"+
  305. "<td>"+model.paramMeaning+"</td><td>"+model.remark+"</td>"+
  306. "</tr>";
  307. $("#"+trid).append(trHtml);
  308. }