edit.html 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>编辑页面</title>
  6. </head>
  7. <body>
  8. <script type="text/html" id="form">
  9. <input type="hidden" name="id" value="{{= d.id }}" />
  10. <div class="mainBox">
  11. <div class="main-container">
  12. <div class="main-container">
  13. <div class="layui-form-item">
  14. <label class="layui-form-label" title="卡名"><text title="必填项" style="color:red;">*</text>卡名</label>
  15. <div class="layui-input-block">
  16. <input autocomplete="off" type="text" name="title" id="title" placeholder="请输入卡名" value="{{=d.title}}" class="layui-input" lay-verify="required">
  17. </div>
  18. </div>
  19. <div class="layui-form-item">
  20. <label class="layui-form-label" title="类型"><text title="必填项" style="color:red;">*</text>类型</label>
  21. <div class="layui-input-block">
  22. <input type="radio" name="type" id="type-1" value="1" lay-filter="type" title="次数卡" checked="checked" {{#if (d.type == '1'){ }}checked="checked"{{# } }} />
  23. <input type="radio" name="type" id="type-2" value="2" lay-filter="type" title="会员卡" {{#if (d.type == '2'){ }}checked="checked"{{# } }} />
  24. </div>
  25. </div>
  26. <div class="layui-form-item type1" style=" {{# if(d.type==2){ }}display:none;{{# } }} ">
  27. <label class="layui-form-label" title="次数"><text title="必填项" style="color:red;">*</text>次数</label>
  28. <div class="layui-input-block">
  29. <input autocomplete="off" type="text" name="coin" id="coin" placeholder="请输入次数" value="{{=d.coin}}" class="layui-input" lay-verify="number" lay-verify="required">
  30. </div>
  31. </div>
  32. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  33. <label class="layui-form-label" title="时长"><text title="必填项" style="color:red;">*</text>时长</label>
  34. <div class="layui-input-block">
  35. <input autocomplete="off" type="text" name="day" id="day" placeholder="请输入时长,9999代表永久会员" value="{{=d.day}}" class="layui-input" lay-verify="number" lay-verify="required">
  36. <div class="layui-form-mid layui-word-aux">单位:天;9999代表永久会员,请不要设置大于9999的数字</div>
  37. </div>
  38. </div>
  39. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  40. <label class="layui-form-label" title="套餐内容"><text title="必填项" style="color:red;">*</text>套餐内容</label>
  41. <div class="layui-input-block">
  42. <div class="layui-tab">
  43. <ul class="layui-tab-title">
  44. <li class="layui-this">GPT-3.5</li>
  45. <li>GPT-4</li>
  46. <li>SD绘画</li>
  47. <li>MJ绘画</li>
  48. </ul>
  49. <div class="layui-tab-content">
  50. <div class="layui-tab-item layui-show">
  51. <div class="layui-form-item">
  52. <label class="layui-form-label" title="限制类型"><text title="必填项" style="color:red;">*</text>限制类型</label>
  53. <div class="layui-input-block">
  54. <input type="radio" name="gpt35_type" id="gpt35_type-1" value="time" title="按天限制" checked="checked" {{#if (d.gpt35_type == 'time'){ }}checked="checked"{{# } }} />
  55. <input type="radio" name="gpt35_type" id="gpt35_type-2" value="total" title="按总数限制" {{#if (d.gpt35_type == 'total'){ }}checked="checked"{{# } }} />
  56. </div>
  57. </div>
  58. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  59. <label class="layui-form-label" title="套餐内GPT35使用次数"><text title="必填项" style="color:red;">*</text>GPT35使用次数</label>
  60. <div class="layui-input-block">
  61. <input autocomplete="off" type="text" name="gpt35_times" id="gpt35_times" placeholder="请输入套餐内GPT35使用次数" value="{{=d.gpt35_times}}" class="layui-input" lay-verify="number" lay-verify="required">
  62. <div class="layui-form-mid layui-word-aux">套餐内GPT35使用次数,-1代表无限</div>
  63. </div>
  64. </div>
  65. </div>
  66. <div class="layui-tab-item">
  67. <div class="layui-form-item">
  68. <label class="layui-form-label" title="限制类型"><text title="必填项" style="color:red;">*</text>限制类型</label>
  69. <div class="layui-input-block">
  70. <input type="radio" name="gpt4_type" id="gpt4_type-1" value="time" title="按天限制" checked="checked" {{#if (d.gpt4_type == 'time'){ }}checked="checked"{{# } }} />
  71. <input type="radio" name="gpt4_type" id="gpt4_type-2" value="total" title="按总数限制" {{#if (d.gpt4_type == 'total'){ }}checked="checked"{{# } }} />
  72. </div>
  73. </div>
  74. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  75. <label class="layui-form-label" title="套餐内GPT4使用次数"><text title="必填项" style="color:red;">*</text>GPT4使用次数</label>
  76. <div class="layui-input-block">
  77. <input autocomplete="off" type="text" name="gpt4_times" id="gpt4_times" placeholder="请输入套餐内GPT4使用次数" value="{{=d.gpt4_times}}" class="layui-input" lay-verify="number" lay-verify="required">
  78. <div class="layui-form-mid layui-word-aux">套餐内GPT4使用次数,-1代表无限</div>
  79. </div>
  80. </div>
  81. </div>
  82. <div class="layui-tab-item">
  83. <div class="layui-form-item">
  84. <label class="layui-form-label" title="限制类型"><text title="必填项" style="color:red;">*</text>限制类型</label>
  85. <div class="layui-input-block">
  86. <input type="radio" name="sd_type" id="sd_type-1" value="time" title="按天限制" checked="checked" {{#if (d.sd_type == 'time'){ }}checked="checked"{{# } }} />
  87. <input type="radio" name="sd_type" id="sd_type-2" value="total" title="按总数限制" {{#if (d.sd_type == 'total'){ }}checked="checked"{{# } }} />
  88. </div>
  89. </div>
  90. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  91. <label class="layui-form-label" title="套餐内SD绘画使用次数"><text title="必填项" style="color:red;">*</text>SD绘画使用次数</label>
  92. <div class="layui-input-block">
  93. <input autocomplete="off" type="text" name="sd_times" id="sd_times" placeholder="请输入套餐内SD绘画使用次数" value="{{=d.sd_times}}" class="layui-input" lay-verify="number" lay-verify="required">
  94. <div class="layui-form-mid layui-word-aux">套餐内SD绘画使用次数,-1代表无限</div>
  95. </div>
  96. </div>
  97. </div>
  98. <div class="layui-tab-item">
  99. <div class="layui-form-item">
  100. <label class="layui-form-label" title="限制类型"><text title="必填项" style="color:red;">*</text>限制类型</label>
  101. <div class="layui-input-block">
  102. <input type="radio" name="mj_type" id="mj_type-1" value="time" title="按天限制" checked="checked" {{#if (d.mj_type == 'time'){ }}checked="checked"{{# } }} />
  103. <input type="radio" name="mj_type" id="mj_type-2" value="total" title="按总数限制" {{#if (d.mj_type == 'total'){ }}checked="checked"{{# } }} />
  104. </div>
  105. </div>
  106. <div class="layui-form-item type2" style=" {{# if(d.type==1){ }}display:none;{{# } }} ">
  107. <label class="layui-form-label" title="套餐内MJ绘画使用次数"><text title="必填项" style="color:red;">*</text>MJ绘画使用次数</label>
  108. <div class="layui-input-block">
  109. <input autocomplete="off" type="text" name="mj_times" id="mj_times" placeholder="请输入套餐内MJ绘画使用次数" value="{{=d.mj_times}}" class="layui-input" lay-verify="number" lay-verify="required">
  110. <div class="layui-form-mid layui-word-aux">套餐内MJ绘画使用次数,-1代表无限</div>
  111. </div>
  112. </div>
  113. </div>
  114. </div>
  115. </div>
  116. </div>
  117. </div>
  118. <hr />
  119. <div class="layui-form-item">
  120. <label class="layui-form-label" title="价格"> <text title="必填项" style="color:red;">*</text> 价格</label>
  121. <div class="layui-input-block">
  122. <input autocomplete="off" type="text" name="price" id="price" placeholder="请输入价格" value="{{=d.price}}" class="layui-input" lay-verify="required">
  123. </div>
  124. </div>
  125. <div class="layui-form-item">
  126. <label class="layui-form-label" title="原价">原价</label>
  127. <div class="layui-input-block">
  128. <input autocomplete="off" type="text" name="original_price" id="original_price" placeholder="请输入原价" value="{{=d.original_price}}" class="layui-input" lay-verify="">
  129. </div>
  130. </div>
  131. <div class="layui-form-item">
  132. <label class="layui-form-label" title="状态">状态</label>
  133. <div class="layui-input-block">
  134. <input type="radio" name="status" id="status-1" value="1" title="开启" {{#if (d.status == '1'){ }}checked="checked"{{# } }} />
  135. <input type="radio" name="status" id="status-2" value="2" title="关闭" {{#if (d.status == '2'){ }}checked="checked"{{# } }} />
  136. </div>
  137. </div>
  138. <div class="layui-form-item">
  139. <label class="layui-form-label" title="排序">排序</label>
  140. <div class="layui-input-block">
  141. <input autocomplete="off" type="text" name="sort" id="sort" placeholder="请输入排序" value="{{=d.sort}}" class="layui-input" lay-verify="number">
  142. </div>
  143. </div>
  144. <div class="layui-form-item">
  145. <label class="layui-form-label" title="限时特价"> <text title="必填项" style="color:red;">*</text> 限时特价</label>
  146. <div class="layui-input-block">
  147. <input type="radio" name="is_preferential" id="is_preferential-1" value="1" title="是" {{#if (d.is_preferential == '1'){ }}checked="checked"{{# } }} />
  148. <input type="radio" name="is_preferential" id="is_preferential-2" value="2" title="否" {{#if (d.is_preferential == '2'){ }}checked="checked"{{# } }} />
  149. </div>
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. <div class="bottom">
  155. <div class="button-container">
  156. <button type="submit" class="laytp-btn laytp-btn-primary laytp-btn-sm" lay-submit="" lay-filter="laytp-form">
  157. <i class="layui-icon layui-icon-ok"></i>
  158. 提交
  159. </button>
  160. <button type="reset" class="laytp-btn laytp-btn-sm">
  161. <i class="layui-icon layui-icon-refresh"></i>
  162. 重置
  163. </button>
  164. </div>
  165. </div>
  166. </script>
  167. <form class="layui-form" lay-filter="layui-form"></form>
  168. <script>
  169. if(localStorage.getItem("staticDomain")){
  170. document.write("<link rel='stylesheet' href='" + localStorage.getItem("staticDomain") + "/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  171. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  172. document.write("<script src='" + localStorage.getItem("staticDomain") + "/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  173. }else{
  174. document.write("<link rel='stylesheet' href='/static/component/layui/css/layui.css?v=" + localStorage.getItem("version") + "'>");
  175. document.write("<script src='/static/component/layui/layui.js?v="+localStorage.getItem("version")+"'><\/script>");
  176. document.write("<script src='/static/component/laytp/layuiConfig.js?v="+localStorage.getItem("version")+"'><\/script>");
  177. }
  178. </script>
  179. <script>
  180. layui.use(['laytp'],function(){
  181. let form = layui.form;
  182. let $ = layui.jquery;
  183. //获取参数ID
  184. var id = facade.getUrlParam('id');
  185. if(!id){
  186. facade.error('参数ID不能为空');
  187. return false;
  188. }
  189. //获取数据,渲染到对应的节点上
  190. facade.ajax({
  191. route: "/admin.member/info",
  192. data: {id: id},
  193. successAlert: false,
  194. showLoading: true
  195. }).done(function(res){
  196. if(res.code === 0){
  197. layui.laytpl($("#form").html()).render(res.data,function(string){
  198. $("form").html(string);
  199. layui.laytpForm.render();
  200. form.render();
  201. });
  202. }
  203. });
  204. form.on('submit(laytp-form)', function(data){
  205. var btnAnim = layui.button.load({elem:$(this)});
  206. try{
  207. data = facade.setEditorField(data);
  208. }catch (e) {
  209. facade.error(e);
  210. return false;
  211. }
  212. facade.ajax({
  213. route:'/admin.member/edit',
  214. data:data.field
  215. }).done(function(res){
  216. if(res.code === 0){
  217. parent.layui.layer.close(parent.layui.layer.getFrameIndex(window.name));//关闭当前页
  218. parent.layui.table.reload("laytp-table");
  219. }
  220. btnAnim.stop();
  221. }).fail(function(){
  222. btnAnim.stop();
  223. });
  224. return false;
  225. });
  226. layui.form.on("radio(type)", function (data) {
  227. var val = data.value;
  228. if(val == 1){
  229. $('.type1').show()
  230. $('.type2').hide()
  231. }else {
  232. $('.type1').hide()
  233. $('.type2').show()
  234. }
  235. });
  236. })
  237. </script>
  238. </body>
  239. </html>