edituser.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>编辑客服</title>
  7. <link rel="shortcut icon" href="favicon.ico">
  8. <link href="__CSS__/bootstrap.min.css?v=3.3.6" rel="stylesheet">
  9. <link href="__CSS__/font-awesome.min.css?v=4.4.0" rel="stylesheet">
  10. <link href="__CSS__/animate.min.css" rel="stylesheet">
  11. <link href="__JS__/layui/css/layui.css" rel="stylesheet">
  12. <link href="__CSS__/style.min.css?v=4.1.0" rel="stylesheet">
  13. </head>
  14. <body class="gray-bg">
  15. <div class="layui-layer-shade" id="all_blank" style="display: none"></div>
  16. <div class="layui-layer layui-layer-dialog" id="check_img" style="display: none">
  17. <div class="layui-layer-title" style="cursor: move;">请选择图片</div>
  18. <div id="imgs" padding="0" class="layui-layer-content layui-layer-padding" style="height: 70vh;">
  19. {volist name="material" id="vo"}
  20. <div style="width: 21.5%;height:100px;float: left;text-align: center;background-color: #DCDCDC;margin: 1%;position: relative;">
  21. <div style="height:23px;line-height: 23px;width:80%;margin: 0 auto;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: 11px;">{$vo.name}</div>
  22. <img onclick="onCheckImg(`{$vo.url}`)" src="{$vo.url}" style="margin-top: 0px;height: 70px;">
  23. </div>
  24. {/volist}
  25. </div>
  26. <span class="layui-layer-setwin"></span>
  27. <div class="layui-layer-btn layui-layer-btn-">
  28. <a class="layui-layer-btn0" onclick="closeCheckImg()">取消</a>
  29. </div>
  30. <span class="layui-layer-resize"></span>
  31. </div>
  32. <div class="wrapper wrapper-content animated fadeInRight">
  33. <div class="row">
  34. <div class="col-sm-8">
  35. <div class="ibox float-e-margins">
  36. <div class="ibox-title">
  37. <h5>编辑客服</h5>
  38. </div>
  39. <div class="ibox-content">
  40. <form class="form-horizontal m-t layui-form" id="commentForm" method="post" action="{:url('users/edituser')}">
  41. <input type="hidden" value="{$info['id']}" name="id"/>
  42. <div class="form-group layui-form-item form-inline" style="height: 60px;">
  43. <input type="hidden" name="user_avatar" id="user_avatar"/>
  44. <label class="col-sm-3 control-label">客服头像:</label>
  45. <div class="input-group col-sm-1">
  46. <button type="button" class="layui-btn layui-btn-small" id="up-avatar">
  47. <i class="layui-icon"></i>上传图片</button>
  48. </div>
  49. <span>建议上传180px*180px</span>
  50. <button type="button" class="layui-btn layui-btn-small" id="" onclick="checkImg()">选择图片</button>
  51. <div class="input-group col-sm-3" id="avatar">
  52. <img src="{$info['user_avatar']}" id="onChoiceImg" height="40px"/>
  53. </div>
  54. </div>
  55. <div class="form-group">
  56. <label class="col-sm-3 control-label">客服账号:</label>
  57. <div class="input-group col-sm-4">
  58. <input id="user_account" type="text" class="form-control" name="user_account" required="" aria-required="true" value="{$info['user_account']}" disabled="disabled">
  59. </div>
  60. </div>
  61. <div class="form-group">
  62. <label class="col-sm-3 control-label">客服昵称 <span style="color: red;">*</span>:</label>
  63. <div class="input-group col-sm-4">
  64. <input id="user_name" type="text" class="form-control" name="user_name" required="" aria-required="true" value="{$info['user_name']}">
  65. </div>
  66. </div>
  67. <div class="form-group">
  68. <label class="col-sm-3 control-label">客服工号 <span style="color: red;">*</span>:</label>
  69. <div class="input-group col-sm-4">
  70. <input id="user_job_number" type="text" class="form-control" name="user_job_number" required="" aria-required="true" value="{$info['user_job_number']}">
  71. </div>
  72. </div>
  73. <div class="form-group">
  74. <label class="col-sm-3 control-label">登录密码:</label>
  75. <div class="input-group col-sm-4">
  76. <input id="password" type="text" class="form-control" name="user_pwd" aria-required="true" placeholder="重新输入则为修改">
  77. </div>
  78. </div>
  79. <div class="form-group">
  80. <label class="col-sm-3 control-label">客服邮箱:</label>
  81. <div class="input-group col-sm-4">
  82. <input id="user_email" type="text" class="form-control" name="user_email" aria-required="true" value="{$info['user_email']}">
  83. </div>
  84. </div>
  85. <div class="form-group">
  86. <label class="col-sm-3 control-label">客服电话:</label>
  87. <div class="input-group col-sm-4">
  88. <input id="phone" type="text" class="form-control" name="phone" aria-required="true" value="{$info['phone']}">
  89. </div>
  90. </div>
  91. <div class="form-group">
  92. <label class="col-sm-3 control-label">真实姓名:</label>
  93. <div class="input-group col-sm-4">
  94. <input id="fullname" type="text" class="form-control" name="fullname" aria-required="true" value="{$info['fullname']}">
  95. </div>
  96. </div>
  97. <div class="form-group">
  98. <label class="col-sm-3 control-label">个性签名:</label>
  99. <div class="input-group col-sm-4">
  100. <input id="signature" type="text" class="form-control" name="signature" aria-required="true" value="{$info['signature']}">
  101. </div>
  102. </div>
  103. <div class="form-group">
  104. <label class="col-sm-3 control-label">选择分组:</label>
  105. <input type="hidden" id="group_id" name="group_id" value="{$info['group_id']}"/>
  106. <div class="input-group col-sm-4 layui-form">
  107. <select lay-verify="required" lay-filter="group">
  108. <option value="">请选择分组</option>
  109. {if !empty($groups)}
  110. {foreach name="groups" item="vo"}
  111. <option value="{$vo['id']}" {if $vo['id'] eq $info['group_id']}selected{/if}>{$vo['name']}</option>
  112. {/foreach}
  113. {/if}
  114. </select>
  115. </div>
  116. </div>
  117. <div class="form-group layui-form-item">
  118. <label class="col-sm-3 control-label">是否启用:</label>
  119. <div class="input-group col-sm-6">
  120. {if !empty($status)}
  121. {foreach name="status" item="vo" key="key"}
  122. <input type="radio" name="status" value="{$key}" title="{$vo}" {if $key eq $info['status']}checked{/if}>
  123. {/foreach}
  124. {/if}
  125. </div>
  126. </div>
  127. <div class="form-group">
  128. <div class="col-sm-4 col-sm-offset-6">
  129. <!--<a class="layui-btn layui-btn-sm lay-btn-diy" href="javascript:history.go(-1)" style="background-color:#1E9FFF;margin-bottom: 5px;height: 35px;line-height: 35px;">返回</a>-->
  130. <button class="btn btn-primary btn-sm" type="submit">提交</button>
  131. </div>
  132. </div>
  133. </form>
  134. </div>
  135. </div>
  136. </div>
  137. </div>
  138. </div>
  139. <script src="__JS__/jquery.min.js?v=2.1.4"></script>
  140. <script src="__JS__/bootstrap.min.js?v=3.3.6"></script>
  141. <script src="__JS__/content.min.js?v=1.0.0"></script>
  142. <script src="__JS__/plugins/validate/jquery.validate.min.js"></script>
  143. <script src="__JS__/plugins/validate/messages_zh.min.js"></script>
  144. <script src="__JS__/plugins/layer/layer.min.js"></script>
  145. <script src="__JS__/layui/layui.js"></script>
  146. <script src="__JS__/jquery.form.js"></script>
  147. <script>
  148. function checkImg() {
  149. $("#all_blank").css({"z-index": "19991015", "background-color": "rgb(0, 0, 0)", "opacity": "0.3", "display": "block"});
  150. $("#check_img").css({"z-index": "19991016", "top": "40px", "left": "170px", "width": "70vw", "display": "block"});
  151. }
  152. function closeCheckImg() {
  153. $("#all_blank").css({"display": "none"});
  154. $("#check_img").css({"display": "none"});
  155. }
  156. function onCheckImg(path) {
  157. $("#all_blank").css({"display": "none"});
  158. $("#check_img").css({"display": "none"});
  159. $("#onChoiceImg").attr('src',path);
  160. $("#user_avatar").val(path);
  161. }
  162. </script>
  163. <script type="text/javascript">
  164. layui.use(['form', 'upload'], function(){
  165. var form = layui.form;
  166. var upload = layui.upload;
  167. //执行实例
  168. var uploadInst = upload.render({
  169. elem: '#up-avatar' //绑定元素
  170. ,url: "{:url('users/upAvatar')}" //上传接口
  171. ,exts: 'png|jpg|jpeg|gif'
  172. ,done: function(res){
  173. //上传完毕回调
  174. if(0 == res.code){
  175. $("#avatar").html('<img src="' + res.data.src + '" id="onChoiceImg" height="40px">');
  176. $("#user_avatar").val(res.data.src);
  177. }else{
  178. layer.msg(res.msg);
  179. }
  180. }
  181. ,error: function(){
  182. //请求异常回调
  183. }
  184. });
  185. form.on('select(group)', function(value){
  186. $("#group_id").val(value.value);
  187. });
  188. });
  189. var index = '';
  190. function showStart(){
  191. index = layer.load(0, {shade: false});
  192. return true;
  193. }
  194. function showSuccess(res){
  195. layer.ready(function(){
  196. layer.close(index);
  197. if(1 == res.code){
  198. layer.alert(res.msg, {title: '友情提示', icon: 1, closeBtn: 0}, function(){
  199. window.location.href = '/admin/users/index.html';
  200. });
  201. }else if(111 == res.code){
  202. window.location.reload();
  203. }else{
  204. layer.msg(res.msg, {anim: 6});
  205. }
  206. });
  207. }
  208. $(document).ready(function(){
  209. // 添加管理员
  210. var options = {
  211. beforeSubmit:showStart,
  212. success:showSuccess
  213. };
  214. $('#commentForm').submit(function(){
  215. $(this).ajaxSubmit(options);
  216. return false;
  217. });
  218. });
  219. // 表单验证
  220. $.validator.setDefaults({
  221. highlight: function(e) {
  222. $(e).closest(".form-group").removeClass("has-success").addClass("has-error")
  223. },
  224. success: function(e) {
  225. e.closest(".form-group").removeClass("has-error").addClass("has-success")
  226. },
  227. errorElement: "span",
  228. errorPlacement: function(e, r) {
  229. e.appendTo(r.is(":radio") || r.is(":checkbox") ? r.parent().parent().parent() : r.parent())
  230. },
  231. errorClass: "help-block m-b-none",
  232. validClass: "help-block m-b-none"
  233. });
  234. </script>
  235. </body>
  236. </html>