edit.html 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <meta http-equiv="pragma" content="no-cache"/>
  7. <meta http-equiv="cache-control" content="no-cache,must-revalidate"/>
  8. <meta http-equiv="expires" content="0"/>
  9. <meta name="renderer" content="webkit">
  10. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  11. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  12. <link href="{{yzypt}}/static/favicon.ico" type="image/x-icon" rel="shortcut icon">
  13. {% include '/common/layui_css.html' %}
  14. <style>
  15. body {
  16. background-color: #ffffff;
  17. }
  18. </style>
  19. </head>
  20. <body>
  21. <div class="layuimini-container">
  22. <div class="layuimini-main">
  23. <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
  24. <ul class="layui-tab-title">
  25. <li class="layui-this">基本信息</li>
  26. <li>平台参数</li>
  27. <li>数据处理</li>
  28. </ul>
  29. <div class="layui-tab-content">
  30. <div class="layui-tab-item layui-show" style="line-height:40px;">
  31. <form class="layui-form layuimini-form" action="">
  32. <input name="id" value="{{info.id}}" type="hidden"/>
  33. <div class="layui-form-item">
  34. <label class="layui-form-label required">接口名称:</label>
  35. <div class="layui-input-block">
  36. <input type="text" name="name" placeholder="请填写" class="layui-input" lay-verify="required" value="{{info.name}}" />
  37. </div>
  38. </div>
  39. <div class="layui-form-item" pane="">
  40. <label class="layui-form-label">是否启用</label>
  41. <div class="layui-input-block">
  42. <input type="checkbox" {% if info.state == 1 %}checked=""{% endif%} value="1" name="state" lay-skin="switch" lay-filter="switchTest" lay-text="启用|禁用">
  43. </div>
  44. </div>
  45. <div class="layui-form-item">
  46. <label class="layui-form-label">所在平台:</label>
  47. <div class="layui-input-inline">
  48. <select name="type" lay-verify="required">
  49. <option value=""></option>
  50. {% for pt in ptxx_list %}
  51. <option value="{{pt.id}}" {% if pt.id == info.type %}selected{% endif %}>{{pt.name}}</option>
  52. {% endfor %}
  53. </select>
  54. </div>
  55. </div>
  56. <div class="layui-form-item">
  57. <label class="layui-form-label required">排序:</label>
  58. <div class="layui-input-inline">
  59. <input type="text" name="rank" placeholder="" class="layui-input" lay-verify="required" value="{{info.rank}}" />
  60. </div>
  61. </div>
  62. <div class="layui-form-item">
  63. <div class="layui-input-block">
  64. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="saveBtn">保存</button>
  65. </div>
  66. </div>
  67. </form>
  68. </div>
  69. <div class="layui-tab-item">
  70. <form class="layui-form layuimini-form" action="">
  71. <input name="id" value="{{ztn_data_info.id}}" type="hidden"/>
  72. <input name="type" value="{{info.type}}" type="hidden"/>
  73. <div class="layui-form-item">
  74. <label class="layui-form-label required">app_id:</label>
  75. <div class="layui-input-block">
  76. <input type="text" name="app_id" placeholder="" class="layui-input" lay-verify="required" value="{{ztn_data_info.app_id}}" />
  77. </div>
  78. </div>
  79. <div class="layui-form-item">
  80. <label class="layui-form-label required">app_secret</label>
  81. <div class="layui-input-block">
  82. <input type="text" name="app_secret" placeholder="" class="layui-input" lay-verify="required" value="{{ztn_data_info.app_secret}}" />
  83. </div>
  84. </div>
  85. <div class="layui-form-item">
  86. <label class="layui-form-label required">passid:</label>
  87. <div class="layui-input-block">
  88. <input type="text" name="passid" placeholder="" class="layui-input" lay-verify="required" value="{{ztn_data_info.passid}}" />
  89. </div>
  90. </div>
  91. <div class="layui-form-item">
  92. <label class="layui-form-label required">passtoken:</label>
  93. <div class="layui-input-block">
  94. <input type="text" name="passtoken" placeholder="" class="layui-input" lay-verify="required" value="{{ztn_data_info.passtoken}}" />
  95. </div>
  96. </div>
  97. <div class="layui-form-item">
  98. <label class="layui-form-label required">service_id:</label>
  99. <div class="layui-input-block">
  100. <input type="text" name="service_id" placeholder="" class="layui-input" lay-verify="required" value="{{ztn_data_info.service_id}}" />
  101. </div>
  102. </div>
  103. <div class="layui-form-item">
  104. <div class="layui-input-block">
  105. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="saveBtn2">保存</button>
  106. </div>
  107. </div>
  108. </form>
  109. </div>
  110. <div class="layui-tab-item">
  111. <form class="layui-form layuimini-form" action="">
  112. <input id="id" name="id" value="{{info.id}}" type="hidden"/>
  113. <div style="margin-bottom: 20px;">
  114. <div class="x-ce-xace-container" id="jscript-editor" style="height: 540px;width:100%;"></div>
  115. </div>
  116. <div style="text-align: center;">
  117. <div class="layui-input-block" style="margin-left:0;">
  118. <button class="layui-btn layui-btn-normal" lay-submit="" lay-filter="saveBtn3">保存</button>
  119. <button class="layui-btn" id="testBtn">测试</button>
  120. </div>
  121. </div>
  122. </form>
  123. </div>
  124. </div>
  125. </div>
  126. </div>
  127. </div>
  128. {% include '/common/layui_js.html' %}
  129. <script>
  130. var post_url = "{{post_url}}";
  131. var id = "{{info.id}}";
  132. var editor;
  133. layui.use(['form', 'layer', 'element', 'xAce'], function () {
  134. var $ = layui.jquery,
  135. form = layui.form,
  136. xAce = layui.xAce,
  137. layer = layui.layer;
  138. $.get("api_jscript.json?id="+id+"&rnd="+new Date(), function(data, status) {
  139. xAce.render({
  140. id: "jscript-editor",
  141. theme: 'eclipse',
  142. lang: "javascript",
  143. initValue: data,
  144. readOnly: false
  145. }).then(res => {
  146. editor = res;
  147. });
  148. });
  149. layui.$('#testBtn').on('click', function() {
  150. var id = $('#id').val();
  151. var params = editor.getValue();
  152. var data = JSON.stringify({"id": id, "params": params});
  153. var loading = layer.load(1, {time: 300*1000});
  154. $.post("test.html", data, function(r) {
  155. layer.close(loading);
  156. if(r.ret == 0) {
  157. layer.alert(r.msg, {icon:1});
  158. }
  159. else {
  160. layer.alert(r.msg, { icon: 2 });
  161. }
  162. });
  163. return false;
  164. });
  165. layui.$('#exitBtn').on('click', function() {
  166. var iframeIndex = parent.layer.getFrameIndex(window.name);
  167. parent.layer.close(iframeIndex);
  168. return false;
  169. });
  170. form.on('submit(saveBtn)', function (data) {
  171. var data = JSON.stringify(data.field);
  172. $.post("edit.html?page=1", data, function(r) {
  173. if(r.ret == 0) {
  174. layer.msg(r.msg, {icon:1});
  175. }
  176. else {
  177. layer.alert(r.msg, { icon: 2 });
  178. }
  179. });
  180. return false;
  181. });
  182. form.on('submit(saveBtn2)', function (data) {
  183. var data = JSON.stringify(data.field);
  184. $.post("edit.html?page=2", data, function(r) {
  185. if(r.ret == 0) {
  186. layer.msg(r.msg, {icon:1});
  187. }
  188. else {
  189. layer.alert(r.msg, { icon: 2 });
  190. }
  191. });
  192. return false;
  193. });
  194. form.on('submit(saveBtn3)', function (data) {
  195. var data = data.field;
  196. data['params'] = editor.getValue();
  197. var data = JSON.stringify(data);
  198. $.post("edit.html?page=3", data, function(r) {
  199. if(r.ret == 0) {
  200. layer.msg(r.msg, {icon:1});
  201. }
  202. else {
  203. layer.alert(r.msg, { icon: 2 });
  204. }
  205. });
  206. return false;
  207. });
  208. });
  209. </script>
  210. </body>
  211. </html>