3cf165d7d757529175d8393069e63c7a.php 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447
  1. <?php if (!defined('THINK_PATH')) exit(); /*a:3:{s:89:"/www/wwwroot/china/layui_admin/public/../application/admin/view/aipimagesearch/index.html";i:1571725957;s:72:"/www/wwwroot/china/layui_admin/application/admin/view/public/header.html";i:1542340312;s:72:"/www/wwwroot/china/layui_admin/application/admin/view/public/footer.html";i:1572427119;}*/ ?>
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <title><?php echo config('WEB_SITE_TITLE'); ?></title>
  7. <meta name="renderer" content="webkit">
  8. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  9. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  10. <link rel="stylesheet" href="/static/admin/js/layui/css/layui.css" >
  11. <link rel="stylesheet" href="/static/admin/css/admin.css" >
  12. <link rel="stylesheet" href="/static/admin/css/plugins/viewer/viewer.css"><!--viewer图片查看器-->
  13. <link rel="stylesheet" href="/static/admin/css/font-awesome.min.css"><!--fontAwesome图标库-->
  14. <link rel="stylesheet" href="/static/admin/css/plugins/cropper/ImgCropping.css" ><!--图片裁剪组件-->
  15. <link rel="stylesheet" href="/static/admin/css/plugins/cropper/cropper.min.css" ><!--图片裁剪组件-->
  16. <!--<link rel="stylesheet" href="/static/admin/css/plugins/animate/animate.min.css" >-->
  17. <link rel="stylesheet" href="/static/admin/js/plugins/zTree/zTreeStyle.css" ><!--zTree组件-->
  18. <link rel="stylesheet" href="/static/admin/css/plugins/formSelects/formSelects-v4.css" ><!--select多选组件-->
  19. <link rel="stylesheet" href="/static/admin/js/plugins/webuploader/webuploader.css" ><!--webUploader上传组件-->
  20. <link rel="stylesheet" href="/static/admin/js/plugins/webuploader/style.css" ><!--webUploader上传组件-->
  21. <link rel="stylesheet" href="/static/admin/js/plugins/wx-audio/wx-audio.css" ><!--音频播放器组件-->
  22. <link rel="stylesheet" href="/static/admin/css/plugins/toastr/toastr.css" ><!--toastr通知组件-->
  23. <style>
  24. /*layui滚动条自适应*/
  25. /*.layui-body{overflow-y: scroll;}*/
  26. /*body{overflow-y: scroll;}*/
  27. /*灯箱图片*/
  28. /*.closeP{width:60px;height:60px;text-align: center;line-height: 70px;border-radius:30px;background:rgba(0,0,0,0.5);font-size: 25px;position: fixed;top:-23px;right:-20px;color: #ccc;cursor: pointer;}*/
  29. /*.cha{position:relative;top:1px;right:8px;}*/
  30. /*.closeP:hover{color: white}*/
  31. /*.showP{width: 100%;height: 100vh;background: rgba(0,0,0,0.5);text-align: center;position: fixed;top: 0;left: 0;z-index: 1000;}*/
  32. /*图标*/
  33. /*#chooseicon {margin:20px;}*/
  34. /*#chooseicon ul { margin:5px 0 0 0;}*/
  35. /*#chooseicon ul li{width:41px;height:41px;line-height:41px;border:1px solid #e7e7e7;padding:1px;margin:1px;text-align: center;font-size:18px;float: left;}*/
  36. /*#chooseicon ul li:hover{border:1px solid #2c3e50;cursor:pointer;}*/
  37. /* 输入框添加蓝色边框效果,阴影边框效果 */
  38. /*.layui-input:focus,*/
  39. /*.layui-textarea:focus {*/
  40. /*border-color: rgba(91, 192, 222, 0.8) !important;*/
  41. /*-webkit-box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  42. /*-moz-box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  43. /*box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  44. /*}*/
  45. /*.layui-input:hover,*/
  46. /*.layui-textarea:hover {*/
  47. /*border-color: rgba(91, 192, 222, 0.8) !important;*/
  48. /*-webkit-box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  49. /*-moz-box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  50. /*box-shadow: 0 0 5px rgba(91, 192, 222, .5);*/
  51. /*}*/
  52. /*!* 表单验证失败红色边框效果,阴影效果 *!*/
  53. /*.layui-form-danger, .layui-form-danger:focus, .layui-form-danger:hover{*/
  54. /*border-color: rgba(255,87,34, .8) !important;*/
  55. /*-webkit-box-shadow: 0 0 5px rgba(255,87,34, .5);*/
  56. /*-moz-box-shadow: 0 0 5px rgba(255,87,34, .5);*/
  57. /*box-shadow: 0 0 5px rgba(255,87,34, .5);*/
  58. /*}*/
  59. </style>
  60. </head>
  61. <style>
  62. .layui-table-view .layui-table[lay-size=lg] .layui-table-cell {height: 58px;line-height: 58px;}
  63. .wx-audio-content{padding:0px;border:0px;}
  64. .wx-audio-content .wx-audio-left .wx-audio-state{margin-bottom:15px;}
  65. .wx-audio-content .wx-audio-right .wx-audio-time{padding-top:0px;position: relative;bottom:6px;}
  66. .wx-audio-content .wx-audio-right .wx-audio-progrees{top:6px;}
  67. </style>
  68. <body>
  69. <div class="layui-fluid">
  70. <div class="layui-card">
  71. <div class="layui-form layui-card-header layuiadmin-card-header-auto">
  72. <div class="layui-form-item">
  73. <div class="layui-inline">
  74. <div class="layui-input-inline">
  75. <input type="text" name="start" class="layui-input" onclick="wk.lay_date(this);" placeholder="创建开始日期">
  76. </div>
  77. <div class="layui-form-mid">
  78. -
  79. </div>
  80. <div class="layui-input-inline">
  81. <input type="text" name="end" class="layui-input" onclick="wk.lay_date(this);" placeholder="创建结束日期">
  82. </div>
  83. </div>
  84. <div class="layui-inline">
  85. <div class="layui-input-inline">
  86. <input type="text" id="key" class="layui-input" name="product_name" placeholder="图库名称"/>
  87. </div>
  88. </div>
  89. <div class="layui-inline">
  90. <div class="layui-input-inline">
  91. <button class="layui-btn" lay-submit="" lay-filter="LAY-search">立即搜索</button>
  92. <button class="layui-btn layui-btn-normal" id="empty" lay-submit="" lay-filter="LAY-search">重置</button>
  93. </div>
  94. </div>
  95. </div>
  96. <div>
  97. <button class="layui-btn" data-type="add" onclick="wk.href('<?php echo url('add'); ?>')">
  98. <i class="fa fa-plus"></i> 添加图库
  99. </button>
  100. </div>
  101. </div>
  102. <div class="layui-card-body">
  103. <table id="LAY-table-manage" lay-filter="LAY-table-manage"></table>
  104. <!--图片模板-->
  105. <script type="text/html" id="imgTpl">
  106. <ul class="layui-cricle">
  107. <li><img src="{{d.product_image}}" class="layui-table-img layui-circle"onerror="this.src='/static/admin/images/timg.jpg'" /></li>
  108. </ul>
  109. </script>
  110. <!--图片模板-->
  111. <script type="text/html" id="imgTp2">
  112. <ul class="layui-cricle">
  113. <li><img src="{{d.product_parameter}}" class="layui-table-img layui-circle"onerror="this.src='/static/admin/images/timg.jpg'" /></li>
  114. </ul>
  115. </script>
  116. <!--操作模板-->
  117. <script type="text/html" id="opeBar">
  118. <a onclick="wk.layer_show('编辑文章','<?php echo url('edit'); ?>?id={{d.oid}}')" class="layui-btn layui-btn-xs" title="编辑"><i class="fa fa-pencil"></i></a>
  119. <a href="javascript:;" onclick="wk.confirm('{{d.oid}}','<?php echo url('del'); ?>')" class="layui-btn layui-btn-danger layui-btn-xs" title="删除"><i class="fa fa-trash-o"></i></a>
  120. </script>
  121. </div>
  122. </div>
  123. </div>
  124. <div id="headCrop" style="display:none">
  125. <div class="tailoring-content-one">
  126. <label title="选择图片" for="chooseImg" class="layui-btn">
  127. <input type="file" accept="image/jpg,image/jpeg,image/png" name="file" id="chooseImg" class="hidden" onchange="selectImg(this)"><i class="fa fa-cloud-upload"></i>
  128. 选择图片
  129. </label>
  130. </div>
  131. <div class="ibox-content">
  132. <div class="tailoring-content">
  133. <div class="tailoring-content-two">
  134. <div class="tailoring-box-parcel" style="text-align: center">
  135. <img id="tailoringImg">
  136. <span class="word" style="position:relative;top:50%;font-size:14px;color: #c2c2c2">仅支持JPG、JPEG、PNG格式的图片文件</span><br>
  137. <!--<span class="size" style="position:relative;top:50%;font-size:16px">文件不能大于2MB</span>-->
  138. </div>
  139. <div class="preview-box-parcel">
  140. <!--<p>图片预览:</p>-->
  141. <div class="square previewImg"></div>
  142. <div class="circular previewImg"></div>
  143. </div>
  144. </div>
  145. </div>
  146. </div>
  147. <div class="modal-footer">
  148. <span class="layui-btn cropper-reset-btn" style="float:left">复位</span>
  149. <span class="layui-btn zoomIn" style="float:left">放大</span>
  150. <span class="layui-btn zoomOut" style="float:left">缩小</span>
  151. <span class="layui-btn cropper-rotate-btn" style="float:left">旋转</span>
  152. <span class="layui-btn cropper-scaleX-btn" style="float:left">换向</span>
  153. <span class="layui-btn " id="sureCut"><i class="fa fa-save"></i> 保存</span>
  154. <span class="layui-btn layui-btn-primary" onclick="layer.closeAll()"><i class="fa fa-close"></i> 关闭</span>
  155. </div>
  156. </div>
  157. <script src="/static/admin/js/jquery.min.js"></script>
  158. <script src="/static/admin/js/layui/layui.js"></script>
  159. <script src="/static/admin/js/plugins/viewer/viewer.js"></script><!--viewer图片查看器-->
  160. <script src="/static/admin/js/Icon.js"></script><!--fontAwesome图标库-->
  161. <script src="/static/admin/js/wk.js"></script><!--封装方法-->
  162. <script src="/static/admin/js/common.js"></script><!--全局监听ajax-->
  163. <script src="/static/admin/js/plugins/cropper/cropper.min.js"></script><!--图片裁剪组件-->
  164. <script src="/static/admin/js/plugins/zTree/jquery.ztree.core-3.5.js"></script><!--zTree组件-->
  165. <script src="/static/admin/js/plugins/zTree/jquery.ztree.excheck-3.5.js"></script><!--zTree选择组件-->
  166. <!--<script src="/static/admin/js/plugins/zTree/jquery.ztree.exedit-3.5.js"></script>--><!--zTree编辑组件-->
  167. <script src="/static/admin/js/plugins/webuploader/webuploader.js"></script><!--webUploader上传组件-->
  168. <script src="/static/admin/js/plugins/wangEditor-3.1.1/release/wangEditor.js" ></script><!--wangEditor编辑器-->
  169. <script src="/static/admin/js/plugins/wx-audio/wx-audio.js" ></script><!--音频播放器组件-->
  170. <script src="/static/admin/js/plugins/clipboard/clipboard.js" ></script><!--粘贴板组件-->
  171. <script src="/static/admin/js/plugins/jqprint/jQuery.print.js" ></script><!--打印组件-->
  172. <script src="/static/admin/js/plugins/toastr/toastr.js" ></script><!--toastr通知组件-->
  173. <script src="/static/admin/js/plugins/ueditor/ueditor.config.js" ></script><!--百度富文本-->
  174. <script src="/static/admin/js/plugins/ueditor/ueditor.all.js" ></script><!--百度富文本-->
  175. <script>
  176. layui.config({
  177. base: '/src/' //静态资源所在路径
  178. }).extend({
  179. index: 'lib/index' //主入口模块
  180. , formSelects: 'formSelects-v4'
  181. , dropdown: 'dropdown'
  182. }).use(['index','dropdown','formSelects']),function(){
  183. var formSelects = layui.formSelects
  184. };
  185. </script>
  186. <script>
  187. toastr.options = {
  188. "newestOnTop": false, //新的toastr会显示在旧的toastr前面
  189. "preventDuplicates": false, //重复内容的提示框只出现一次
  190. "target": "body", // 默认为'body', 设置toastr的目标容器
  191. "closeButton": true,//关闭按钮
  192. "debug": false,//调试模式
  193. "progressBar": true,//进度条
  194. "closeOnHover": true,//hover关闭
  195. "positionClass": "toast-bottom-right",//toastr显示位置
  196. "showDuration": "400",//显示的时间
  197. "hideDuration": "100",//消失的时间
  198. "timeOut": "7000",//停留的时间
  199. "extendedTimeOut": "100",//控制时间
  200. "showEasing": "swing",//显示时的动画缓冲方式
  201. "hideEasing": "linear",//消失时的动画缓冲方式
  202. "showMethod": "layui-anim layui-anim-up",//显示时的动画方式
  203. "hideMethod": "layui-anim layui-anim-fadeout",//消失时的动画方式
  204. }
  205. //view初始化查看图片
  206. $(function(){
  207. $('.layui-append-img,.layui-circle').viewer({
  208. url: 'data-original',
  209. });
  210. })
  211. //关闭自动填充
  212. $('input').attr('autocomplete',"off");
  213. // //图片灯箱
  214. // function imgDisplay(obj) {
  215. // var src = $(obj).attr("src");
  216. // var imgHtml = '<div class="showP"><img src=' + src + ' style="margin-top: 120px;height:50%;margin-bottom:120px;" /><p class="closeP" onclick="closePicture(this)"><span class="cha">×</span></p></div>'
  217. // $('body').append(imgHtml);
  218. // }
  219. //
  220. // //关闭图片灯箱
  221. // function closePicture(obj) {
  222. // $(obj).parent("div").remove();
  223. // }
  224. //tips框
  225. $('#offAll').on('mouseover', function(){
  226. var that = this;
  227. layer.tips('<span style="color:#686B6D;"><i class="fa fa-info-circle"></i> 若未勾选默认禁用全部</span>', that,{tips: [2, '#F2F2F2'],time: 10000});
  228. });
  229. //tips框
  230. $('#onAll').on('mouseover', function(){
  231. var that = this;
  232. layer.tips('<span style="color:#686B6D;"><i class="fa fa-info-circle"></i> 若未勾选默认启用全部</span>', that,{tips: [2, '#F2F2F2',''],time: 10000});
  233. });
  234. //tips框
  235. $('#excel').on('mouseover', function(){
  236. var that = this;
  237. layer.tips('<span style="color:#686B6D;"><i class="fa fa-info-circle"></i> 导出筛选完成数据</span>', that,{tips: [2, '#F2F2F2',''],time: 10000});
  238. });
  239. //关闭tips框
  240. $('#offAll,#onAll,#export,#excel').on('mouseout', function(){
  241. layer.closeAll('tips');
  242. });
  243. //layui公共操作
  244. layui.use(['form','table'], function() {
  245. var form = layui.form
  246. ,table = layui.table
  247. //重置搜索框
  248. $('#empty').on('click', function () {
  249. $('.layui-input').val('');
  250. // $(".search").trigger("chosen:updated");
  251. $('select').each(function (i, j) {
  252. $(j).find("option:selected").attr("selected", false);
  253. form.render('select')
  254. })
  255. });
  256. //表格排序
  257. table.on('sort(LAY-table-manage)', function(obj){
  258. table.reload('LAY-table', {
  259. initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态
  260. ,where: { //请求参数
  261. field: obj.field //排序字段
  262. ,order: obj.type //排序方式
  263. }
  264. });
  265. });
  266. //监听搜索
  267. form.on('submit(LAY-search)', function (data) {
  268. //执行重载
  269. table.reload('LAY-table', {
  270. page: {
  271. curr: 1 //重新从第 1 页开始
  272. }
  273. ,where: data.field
  274. });
  275. });
  276. //地区三级联动
  277. form.on('select(province)', function(data){
  278. getArea("province",data.value);
  279. });
  280. form.on('select(city)', function(data){
  281. getArea("city",data.value);
  282. });
  283. function getArea(type,id){
  284. $.ajax({
  285. url:"<?php echo url('admin/Base/place'); ?>",
  286. dataType:"json",
  287. data:'id='+id,
  288. type:'post',
  289. success:function(res){
  290. var opt = null;
  291. $.each(res.msg,function(key,vo){
  292. opt = opt+"<option value="+vo.district_id+">"+vo.district+"</option>";
  293. })
  294. if(type=="province"){
  295. $("#city").empty();
  296. $("#city").append('<option value="">---- 请选择市 ----</option>');
  297. $("#district").empty();
  298. $("#district").append('<option value="">---- 请选择区 ----</option>');
  299. $("#city").append(opt);
  300. }else if(type == "city"){
  301. $("#district").empty();
  302. $("#district").append('<option value="">---- 请选择区 ----</option>');
  303. $("#district").append(opt);
  304. }
  305. form.render('select');
  306. }
  307. })
  308. }
  309. });
  310. </script>
  311. <script>
  312. var music = function(){
  313. if($('#music').length == 0){
  314. $('body').append('<div id="music"></div>');
  315. }
  316. var wxAudio = wk.lay_audio({elem:'#music',src:'/static/admin/images/default.mp3'});
  317. $('#music').hide();
  318. wxAudio.audioPlay();
  319. }
  320. layui.use(['index', 'table','util'], function () {
  321. var $ = layui.$
  322. , form = layui.form
  323. , table = layui.table
  324. table.render({
  325. elem: '#LAY-table-manage'
  326. , url: '<?php echo url("admin/Aipimagesearch/index"); ?>'
  327. ,response: {
  328. statusCode: 220 //成功的状态码,默认:0
  329. }
  330. , page: true
  331. , even: false //开启隔行背景
  332. , size: 'lg' //sm小尺寸的表格 lg大尺寸
  333. // ,width:100
  334. , cellMinWidth: 150
  335. , height: "full-220"
  336. , limits: [10, 20, 30, 40, 50]
  337. , limit: "<?php echo config('pages'); ?>"
  338. , loading: true
  339. , toolbar:'#123'
  340. , id: 'LAY-table'
  341. , cols: [[
  342. {type: 'checkbox', fixed: 'left',}
  343. , {field: 'oid', width: 60, title: 'ID', sort: true, align: 'center'}
  344. , {field: 'product_image', width: 300, title: '产品图片', align: 'center',templet: '#imgTpl'}
  345. , {field: 'pruduct_name', width: 300, title: '产品名', align: 'center'}
  346. , {field: 'product_parameter', width: 300, title: '参数图', align: 'center',templet: '#imgTp2'}
  347. , {field: 'create_time', width: 300, title: '创建时间',sort: true, align: 'center',templet:"<div>{{layui.util.toDateString(d.create_time,'yyyy年MM月dd日')}}</div>"}
  348. , {fixed: 'right', width: 300, title: '操作', align: 'center', toolbar: '#opeBar'}
  349. ]]
  350. ,done: function (res, curr, count) {
  351. $('.layui-cricle').viewer({
  352. url: 'data-original',
  353. });
  354. $.each(res.data,function(index,item) {
  355. wk.lay_audio({elem:'#music_'+item['id'],src:item['music'],width:'250px'});
  356. });
  357. }
  358. });
  359. //监听状态开关操作
  360. form.on('switch(OnOff)', function (obj) {
  361. var num = '';
  362. obj.elem.checked == true? num = 1: num = 2;
  363. //用户状态
  364. wk.status(this.value,num, '<?php echo url("user_state"); ?>',obj);
  365. });
  366. //事件
  367. var active = {
  368. getCheckData: function(){
  369. //批量删除
  370. wk.batchDel(getIds(),"<?php echo url('batchDelUser'); ?>");
  371. }
  372. ,forbiddenAll: function(){
  373. //批量禁用
  374. wk.batchForbidden(getIds(),2,"<?php echo url('forbiddenAdmin'); ?>");
  375. }
  376. ,usingAll: function(){
  377. //批量启用
  378. wk.usingAll(getIds(),1,"<?php echo url('usingAdmin'); ?>");
  379. }
  380. ,excelAll: function(){
  381. //导出Excel
  382. wk.excelAll(getIds(),$("form").serialize(),"<?php echo url('excelAdmin'); ?>");
  383. }
  384. };
  385. $('.layuiBtn').on('click', function () {
  386. var type = $(this).data('type');
  387. active[type] ? active[type].call(this) : '';
  388. });
  389. var getIds = function () {
  390. var ids = [];
  391. var checkStatus = table.checkStatus('LAY-table')
  392. ,data = checkStatus.data;
  393. $.each(data,function(index,item){
  394. ids.push(item['id'])
  395. });
  396. return ids;
  397. }
  398. //倒计时
  399. // var thisTimer, setCountdown = function(){
  400. // lay('#test3').addClass('layui-disabled').attr('disabled').text('完了');
  401. // var endTime = new Date(new Date().getFullYear(),new Date().getMonth(),new Date().getDate(),new Date().getHours(),new Date().getMinutes(),new Date().getSeconds() + 60).getTime() //结束日期
  402. // ,serverTime = new Date().getTime(); //假设为当前服务器时间,这里采用的是本地时间,实际使用一般是取服务端的
  403. // clearTimeout(thisTimer);
  404. // util.countdown(endTime, serverTime, function(date, serverTime, timer){
  405. // var str = date[3] + '秒';
  406. // if(date[3] == 0){
  407. // lay('#test3').removeClass('layui-disabled').removeAttr('disabled').text('完了');
  408. // }else{
  409. // lay('#test2').html(str);
  410. // }
  411. // thisTimer = timer;
  412. // });
  413. // };
  414. // var date = new Date();
  415. // setCountdown(date.getFullYear(),date.getMonth(),date.getDate(),date.getHours(),date.getMinutes(),date.getSeconds() + 60);
  416. });
  417. var thisTimer, setCountdown = function(){
  418. $('#test3').addClass('layui-disabled').attr('disabled','disabled');
  419. var endTime = new Date(new Date().getFullYear(),new Date().getMonth(),new Date().getDate(),new Date().getHours(),new Date().getMinutes(),new Date().getSeconds() + 60).getTime() //结束日期
  420. ,serverTime = new Date().getTime(); //假设为当前服务器时间,这里采用的是本地时间,实际使用一般是取服务端的
  421. clearTimeout(thisTimer);
  422. layui.util.countdown(endTime, serverTime, function(date, serverTime, timer){
  423. var str = date[3];
  424. if(date[3] == 0){
  425. $('#test3').removeClass('layui-disabled').removeAttr('disabled');
  426. $('#test2').html(60);
  427. }else{
  428. $('#test2').html(str);
  429. }
  430. thisTimer = timer;
  431. });
  432. };
  433. </script>
  434. </body>
  435. </html>