edit.html 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>添加员工信息</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  9. <link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
  10. <link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
  11. <link rel="stylesheet" type="text/css" href="../../layuiadmin/style/formSelects-v4.css"/>
  12. <script type="text/javascript" src="https://3gimg.qq.com/lightmap/components/geolocation/geolocation.min.js"></script>
  13. </head>
  14. <body>
  15. <div class="layui-fluid">
  16. <div class="layui-card">
  17. <div class="layui-card-body" pad15>
  18. <form class="layui-form" action="" lay-filter="component-form-element">
  19. <div class="layui-row layui-col-space10 layui-form-item">
  20. <div style="overflow-y: scroll;">
  21. <div style="width: 40%; height: 100%; float:left;">
  22. <div class="layui-form-item">
  23. <label class="layui-form-label"><font color='red' size="4">*</font>名称:</label>
  24. <div class="layui-input-block">
  25. <input type="text" name="name" lay-verify="required" placeholder="请输入名称" autocomplete="off" class="layui-input">
  26. </div>
  27. </div>
  28. <div class="layui-form-item">
  29. <label class="layui-form-label"><font color='red' size="4">*</font>地址:</label>
  30. <div class="layui-input-block">
  31. <input type="text" name="addr" placeholder="请输入地址" lay-verify="required" autocomplete="off" class="layui-input">
  32. </div>
  33. </div>
  34. <div class="layui-form-item">
  35. <label class="layui-form-label"><font color='red' size="4">*</font>电话:</label>
  36. <div class="layui-input-block">
  37. <input type="text" name="tel" placeholder="请输入电话" lay-verify="required" autocomplete="off" class="layui-input">
  38. </div>
  39. </div>
  40. <div>
  41. <label class="layui-form-label">排序:</label>
  42. <div class="layui-input-block">
  43. <input type="text" name="sort" placeholder="请输入排序" lay-verify="numberGez" autocomplete="off" class="layui-input">
  44. </div>
  45. </div>
  46. <div class="layui-form-item">
  47. <label class="layui-form-label">经度坐标:</label>
  48. <span id="show_lng"></span>
  49. </div>
  50. <div class="layui-form-item">
  51. <label class="layui-form-label">纬度坐标:</label>
  52. <span id="show_lat"></span>
  53. </div>
  54. <div class="layui-form-item">
  55. <label class="layui-form-label">在用:</label>
  56. <div class="layui-input-block">
  57. <input type="checkbox" name="enabled" lay-skin="switch" lay-text="是|否" checked="" value="1">
  58. </div>
  59. </div >
  60. <div class="layui-form-item">
  61. <label class="layui-form-label">门店展示:</label>
  62. <div class="layui-input-block">
  63. <button type="button" class="layui-btn-sm" id="test1">上传图片</button><br><br>
  64. </div>
  65. </div>
  66. <div class="layui-form-item">
  67. <img class="layui-upload-img" id="demo1" style="max-width: 70%;height: 150px;margin-left: 25%;">
  68. </div>
  69. </div>
  70. <div style="width: 55%; height: 100%; float:left; margin-left: 10px;">
  71. <div style="height: 500px;">
  72. <iframe id="markPage" frameborder="0" scrolling="no" width="100%" height="100%"></iframe>
  73. </div>
  74. </div>
  75. <button id="id_save" class="layui-btn" lay-submit lay-filter="component-form-element" style="display: none">保存</button>
  76. <button class="layui-btn" type="button" id="upload_image" style="display: none"></button>
  77. </div>
  78. </div>
  79. </form>
  80. </div>
  81. </div>
  82. </div>
  83. <script src="../../layuiadmin/layui/layui.js"></script>
  84. <script>
  85. layui.config({
  86. base: '../../../layuiadmin/' //静态资源所在路径
  87. }).extend({
  88. index: 'lib/index',
  89. formSelects: 'formSelects-v4'
  90. }).use(['index', 'form', 'utils', 'upload'], function(){
  91. var $ = layui.$
  92. ,admin = layui.admin
  93. ,upload = layui.upload
  94. ,form = layui.form;
  95. var id = layui.view.getParameterByName('id');
  96. var longitude = null;
  97. var latitude = null;
  98. window.addEventListener('message', function (e) {
  99. var loc = e.data;
  100. if (loc && loc.module == 'locationPicker') {
  101. longitude = loc.latlng.lng;
  102. latitude = loc.latlng.lat;
  103. $('#show_lng').html(longitude);
  104. $('#show_lat').html(latitude);
  105. }
  106. }, false);
  107. if(id){
  108. var editdata = JSON.parse(JSON.stringify(parent.layui.table.editdata)); // 框架有Bug所以这么转换
  109. if (editdata.longitude && editdata.latitude) {
  110. longitude = editdata.longitude;
  111. latitude = editdata.latitude;
  112. $('#show_lng').html(longitude);
  113. $('#show_lat').html(latitude);
  114. reloadMap(latitude, longitude);
  115. } else {
  116. var markurl = 'https://apis.map.qq.com/tools/locpicker?search=1&type=1&key=6NVBZ-YA43F-UHLJY-JS3WK-26HQH-7ZBLM&referer=myapp';
  117. $('#markPage').attr('src',markurl);
  118. }
  119. if(editdata.img_url){
  120. $('#demo1').attr('src', editdata.img_url);
  121. }
  122. form.val("component-form-element", editdata);
  123. }else{
  124. var markurl = 'https://apis.map.qq.com/tools/locpicker?search=1&type=1&key=6NVBZ-YA43F-UHLJY-JS3WK-26HQH-7ZBLM&referer=myapp';
  125. $('#markPage').attr('src',markurl);
  126. }
  127. function reloadMap(lat, lng) {
  128. var markurl = 'https://apis.map.qq.com/tools/locpicker?search=1&type=1&key=6NVBZ-YA43F-UHLJY-JS3WK-26HQH-7ZBLM&referer=myapp&coord=' + lat + ',' + lng;
  129. $('#markPage').attr('src',markurl);
  130. }
  131. var form_data = {field:{}};
  132. if (id){
  133. var url = '/store/'+id + '/update_shop/';
  134. }else{
  135. url = '/store/';
  136. }
  137. upload.render({
  138. elem: '#test1',
  139. url: url,
  140. auto: false,
  141. field: 'image',
  142. bindAction: '#upload_image',
  143. choose: function(obj) {
  144. obj.preview(
  145. function(index, file, result) {
  146. $('#demo1').attr('src', result);
  147. }
  148. );
  149. },
  150. data:{
  151. name: function(){return form_data.field.name;},
  152. addr: function(){return form_data.field.addr;},
  153. tel: function(){return form_data.field.tel;},
  154. latitude: function(){return form_data.field.latitude;},
  155. longitude: function(){return form_data.field.longitude;},
  156. enabled: function(){
  157. if (form_data.field.enabled){
  158. return form_data.field.enabled;
  159. }else{
  160. return '0';
  161. }
  162. }
  163. },
  164. done: function (res) {
  165. if (res.code != 0) {
  166. layer.msg(res.msg);
  167. }else {
  168. parent.layui.onSubmitChild(res.data);
  169. }
  170. },
  171. error: function () {
  172. layer.msg('保存失败');
  173. }
  174. });
  175. form.on('submit(component-form-element)', function(data){
  176. //layer.msg(JSON.stringify(data.field));
  177. if (!latitude || !longitude) {
  178. layer.msg('请选择门店位置');
  179. return false;
  180. }
  181. data.field['latitude'] = latitude;
  182. data.field['longitude'] = longitude;
  183. if (data.field.image){
  184. form_data = data;
  185. $('#upload_image').click();
  186. }else{
  187. admin.req({
  188. url: url
  189. ,data: data.field
  190. ,type: 'post'
  191. ,done: function(res){
  192. parent.layui.onSubmitChild(res.data);
  193. }
  194. });
  195. }
  196. return false;
  197. });
  198. parent.layui.submitChild = function () {
  199. $("#id_save").click();
  200. };
  201. });
  202. </script>
  203. </body>
  204. </html>