index.php 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300
  1. {extend name="public/container" /}
  2. {block name="title"}基本设置{/block}
  3. {block name="head"}
  4. <style>
  5. #label .layui-btn {
  6. cursor: auto;
  7. }
  8. #label .layui-icon {
  9. cursor: pointer;
  10. visibility: hidden;
  11. }
  12. #label .layui-btn:hover .layui-icon {
  13. visibility: visible;
  14. }
  15. </style>
  16. {/block}
  17. {block name="content"}
  18. <div class="layui-fluid">
  19. <div class="layui-card">
  20. <div class="layui-card-body">
  21. <form class="layui-form" lay-filter="form" action="">
  22. <div class="layui-tab layui-tab-brief" lay-filter="tab">
  23. <ul class="layui-tab-title">
  24. <li class="layui-this">基本设置</li>
  25. <li>介绍设置</li>
  26. <li>分成介绍</li>
  27. </ul>
  28. <div class="layui-tab-content">
  29. <div class="layui-tab-item layui-show">
  30. <div class="layui-form-item">
  31. <label class="layui-form-label required">姓名:</label>
  32. <div class="layui-input-block">
  33. <input type="text" name="mer_name" required lay-verify="required" placeholder="请输入姓名" autocomplete="off" class="layui-input">
  34. </div>
  35. </div>
  36. <div class="layui-form-item">
  37. <label class="layui-form-label required">手机号码:</label>
  38. <div class="layui-input-block">
  39. <input type="text" name="mer_phone" required lay-verify="required|phone" placeholder="请输入电话" autocomplete="off" class="layui-input">
  40. </div>
  41. </div>
  42. <div class="layui-form-item">
  43. <label class="layui-form-label">电子邮箱:</label>
  44. <div class="layui-input-block">
  45. <input type="text" name="mer_email" placeholder="请输入邮箱" autocomplete="off" class="layui-input">
  46. </div>
  47. </div>
  48. <div class="layui-form-item">
  49. <label class="layui-form-label required">头像:</label>
  50. <div class="layui-input-block">
  51. <button type="button" id="avatar" class="layui-btn layui-btn-primary" style="width: 100px;height: 100px;padding: 0;line-height: 30px;"></button>
  52. </div>
  53. </div>
  54. <div class="layui-form-item">
  55. <label class="layui-form-label required">领域:</label>
  56. <div class="layui-input-inline" style="width: auto;">
  57. <div class="layui-btn-container" id="label"></div>
  58. </div>
  59. <div class="layui-input-inline" style="width: 8em;">
  60. <input type="text" name="label" placeholder="添加领域" autocomplete="off" maxlength="6" class="layui-input" style="height: 30px;">
  61. </div>
  62. <div class="layui-form-mid layui-word-aux" style="padding: 5px 0 !important;">每个领域1-6个字,最多添加2个领域</div>
  63. </div>
  64. <div class="layui-form-item">
  65. <label class="layui-form-label required">地址:</label>
  66. <div class="layui-input-block">
  67. <input type="text" name="mer_address" required lay-verify="required" placeholder="请输入地址" autocomplete="off" class="layui-input">
  68. </div>
  69. </div>
  70. <div class="layui-form-item">
  71. <label class="layui-form-label required">简介:</label>
  72. <div class="layui-input-block">
  73. <input type="text" name="explain" required lay-verify="required" maxlength="20" placeholder="最多20个字" autocomplete="off" class="layui-input">
  74. </div>
  75. </div>
  76. <div class="layui-form-item">
  77. <label class="layui-form-label">银行卡号:</label>
  78. <div class="layui-input-block">
  79. <input type="text" name="bank_number" placeholder="请输入银行卡号" autocomplete="off" class="layui-input">
  80. </div>
  81. </div>
  82. <div class="layui-form-item">
  83. <label class="layui-form-label">持卡人姓名:</label>
  84. <div class="layui-input-block">
  85. <input type="text" name="bank_name" placeholder="请输入持卡人姓名" autocomplete="off" class="layui-input">
  86. </div>
  87. </div>
  88. <div class="layui-form-item">
  89. <label class="layui-form-label">开户银行:</label>
  90. <div class="layui-input-block">
  91. <input type="text" name="bank" placeholder="请输入开户银行" autocomplete="off" class="layui-input">
  92. </div>
  93. </div>
  94. <div class="layui-form-item">
  95. <label class="layui-form-label">银行地址:</label>
  96. <div class="layui-input-block">
  97. <input type="text" name="bank_address" placeholder="请输入银行地址" autocomplete="off" class="layui-input">
  98. </div>
  99. </div>
  100. <div class="layui-form-item">
  101. <label class="layui-form-label">状态:</label>
  102. <div class="layui-input-block">
  103. <input type="checkbox" name="estate" lay-skin="switch" lay-text="开启|关闭" value="1">
  104. </div>
  105. </div>
  106. </div>
  107. <div class="layui-tab-item">
  108. <div class="layui-form-item">
  109. <label class="layui-form-label required">介绍:</label>
  110. <div class="layui-input-block">
  111. <script id="editor" name="mer_info" type="text/plain"></script>
  112. </div>
  113. </div>
  114. </div>
  115. <div class="layui-tab-item">
  116. <table class="layui-table">
  117. <thead>
  118. <tr>
  119. <th>类型</th>
  120. <th>分成(%)</th>
  121. </tr>
  122. </thead>
  123. <tbody id="divide"></tbody>
  124. </table>
  125. </div>
  126. </div>
  127. </div>
  128. <div class="layui-form-item">
  129. <div class="layui-input-block">
  130. <button type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="*">提交</button>
  131. </div>
  132. </div>
  133. </form>
  134. </div>
  135. </div>
  136. </div>
  137. <script id="avatarTpl" type="text/html">
  138. {{# if (d.mer_avatar) { }}
  139. <img src="{{ d.mer_avatar }}" style="width: 100%;height: 100%;">
  140. {{# } else { }}
  141. <i class="layui-icon layui-icon-addition" style="font-size: 20px;"></i>
  142. <p>上传图片</p>
  143. {{# } }}
  144. </script>
  145. <script id="labelTpl" type="text/html">
  146. {{# layui.each(d.label, function (index, item) { }}
  147. <button type="button" class="layui-btn layui-btn-normal layui-btn-sm" style="padding: 0 0 0 18px;">{{ item }}<i class="layui-icon layui-icon-close" style="margin-left: 3px;"></i></button>
  148. {{# }); }}
  149. </script>
  150. <script id="divideTpl" type="text/html">
  151. <tr>
  152. <td>专题</td>
  153. <td>{{ d.mer_special_divide }}</td>
  154. </tr>
  155. <tr>
  156. <td>商品</td>
  157. <td>{{ d.mer_store_divide }} + 运费</td>
  158. </tr>
  159. <tr>
  160. <td>活动</td>
  161. <td>{{ d.mer_event_divide }}</td>
  162. </tr>
  163. <tr>
  164. <td>资料</td>
  165. <td>{{ d.mer_data_divide }}</td>
  166. </tr>
  167. <tr>
  168. <td>试卷</td>
  169. <td>{{ d.mer_test_divide }}</td>
  170. </tr>
  171. <tr>
  172. <td>直播</td>
  173. <td>{{ d.gold_divide }}</td>
  174. </tr>
  175. </script>
  176. {/block}
  177. {block name="foot"}
  178. <script src="{__ADMIN_PATH}plug/ueditor/ueditor.config.js"></script>
  179. <script src="{__ADMIN_PATH}plug/ueditor/ueditor.all.min.js"></script>
  180. <script>
  181. require(['{__ADMIN_PATH}plug/ueditor/third-party/zeroclipboard/ZeroClipboard.js', 'request', 'OssUpload'], function (ZeroClipboard) {
  182. var merchat = {$merchat},
  183. lecturer = {$lecturer},
  184. form = layui.form,
  185. layer = layui.layer,
  186. laytpl = layui.laytpl,
  187. element = layui.element;
  188. lecturer.label = lecturer.label ? JSON.parse(lecturer.label) : [];
  189. window['ZeroClipboard'] = ZeroClipboard;
  190. window['insertEditor'] = function (list) {
  191. ue.execCommand('insertimage', list);
  192. };
  193. function renderTpl(id, data) {
  194. laytpl(document.getElementById(id + 'Tpl').innerHTML).render(data, function (html) {
  195. document.getElementById(id).innerHTML = html;
  196. });
  197. }
  198. this.changeIMG = function (name, image) {
  199. merchat[name] = image;
  200. renderTpl('avatar', merchat);
  201. }
  202. merchat.explain = lecturer.explain;
  203. renderTpl('avatar', merchat);
  204. renderTpl('label', lecturer);
  205. renderTpl('divide', merchat);
  206. if (lecturer.label && lecturer.label.length === 3) {
  207. $('#label').parent().next().hide();
  208. }
  209. UE.registerUI('选择图片', function (editor, uiName) {
  210. return new UE.ui.Button({
  211. name: uiName,
  212. title: uiName,
  213. cssRules: 'background-position: -380px 0;',
  214. onclick: function () {
  215. ossUpload.createFrame(uiName, { fodder: editor.key }, { w: 800, h: 550 });
  216. }
  217. });
  218. });
  219. var ue = UE.getEditor('editor');
  220. ue.ready(function () {
  221. ue.setContent(lecturer.introduction);
  222. });
  223. form.val('form', merchat);
  224. form.on('submit(*)', function (data) {
  225. for (var key in lecturer) {
  226. if (Object.hasOwnProperty.call(lecturer, key)) {
  227. data.field[key] = lecturer[key];
  228. }
  229. }
  230. data.field.mer_avatar = merchat.mer_avatar;
  231. if (!data.field.mer_info) {
  232. return layer.msg('介绍不能为空', { icon: 5 });
  233. }
  234. $.post("{:url('edit_merchant')}", data.field, function (data) {
  235. layer.msg(data.msg, {
  236. icon: data.code === 200 ? 1 : 5,
  237. time: 2000
  238. })
  239. }, 'json');
  240. return false;
  241. });
  242. // 点击头像
  243. $('#avatar').on('click', function (event) {
  244. ossUpload.createFrame('请选择图片', {
  245. fodder: 'mer_avatar',
  246. max_count: 0
  247. }, {
  248. w: 800,
  249. h: 550
  250. });
  251. });
  252. $('[name="label"]').on('blur', function (event) {
  253. var value = $.trim($(this).val());
  254. for (var index = 0; index < lecturer.label.length; index++) {
  255. if (lecturer.label[index] === value) {
  256. return layer.msg('请勿重复添加', {
  257. icon: 5,
  258. time: 2000
  259. });
  260. }
  261. }
  262. $(this).val('');
  263. if (value) {
  264. lecturer.label.push(value);
  265. if (lecturer.label.length === 3) {
  266. $(this).parent().hide();
  267. }
  268. renderTpl('label', lecturer);
  269. }
  270. });
  271. $('#label').on('click', '.layui-icon', function (event) {
  272. lecturer.label.splice($('#label .layui-icon').index($(this)), 1);
  273. $(this).parents('.layui-input-inline').next().show();
  274. renderTpl('label', lecturer);
  275. });
  276. // 选项卡
  277. element.on('tab(tab)', function (data) {
  278. if (data.index === 2) {
  279. $('[lay-submit]').parents('.layui-form-item').hide();
  280. } else {
  281. $('[lay-submit]').parents('.layui-form-item').show();
  282. }
  283. });
  284. });
  285. </script>
  286. {/block}